YoshiRulz
3afcf416e8
Follow attribute class best practices, cleanup docs on attributes
2020-02-19 03:54:50 +10:00
adelikat
27352a6f8e
add Get/SetCpuFlagsAndRegisters to Z80, and remove all the boilerplate from related cores
2020-02-16 17:55:40 -06:00
adelikat
fb37ebc71e
fix ti-83 savestates
2020-02-16 13:33:47 -06:00
adelikat
027dc01c8b
create StateSerializer as a base implementation of IStatable ( #1850 )
...
* create StateSerializer, an ITextStatable implementation using the Serializer class, and wire it up to the TI83 core
* wire StateSerializer to A2600 core
* wire up StateSerializer to AmstradCPC, C64, and ZXS
* wire up StateSerializer to MSX, A27800, and Coleco
* wire up state serializer to ChannelF, Vectrex, Intellivision
* fix GambatteLink to implement ITextStatable, implement TextSerializer in O2
* StateSerializer - wire up a loadstate callback and implement StateSerializer for NesHawk, a bit of rework to subNesHawk as a result
* fix subneshawk text savestates
* StateSerializer - implement byte[] buffer storing (optionally), wire up to PCE
* implement StateSerializer to SMS, tweak GGLink accordingly
* implement StateSerializer in GBHawk, fix link cores accordingly
* StateSerializer - use Serializer static methods to create serializers
2020-02-16 12:05:57 -06:00
adelikat
4b7a7dd293
Make Binary states default and Textstates opt-in for cores ( #1848 )
...
* Rewind & State config - remove the default option
* remove the savestate type of default, not that this is a breaking config change for anyone that had specifically set savestates to text
* remove BinaryStatesPreferred from IStatable and use config setting when starting movies from "Now" in record movie dialog
* remove BinaryStatesPreferred from cores
* make text savestates an extension method off of IStatable and an inteface ITextStatable it uses if the core implements it. This will allow cores to opt in to text states if desired
* make cores with actual text savestate impleemntations get ITextStatable, remove text state logic from cores that just have a binary as as text implementation
2020-02-15 10:22:26 -06:00
YoshiRulz
bfde89b9f3
Enable SA1139 and fix noncompliance
...
"Use literal suffix notation instead of casting"
2020-01-25 07:55:48 +10:00
adelikat
f83261c116
misc cleanups in emulator core service logic
2020-01-11 13:19:51 -06:00
adelikat
fef746dffa
properly dispose of IDisposables in core savestate code, and a few other places
2019-12-06 17:33:17 -06:00
J.D. Purcell
fec63fb66a
Spaces -> tabs, fix mixed newlines.
2019-11-03 20:58:36 -05:00
James Groom
4e91f88af3
Use nameof in cores
2019-03-28 14:18:58 +11:00
alyosha-tas
c19c7cd5c3
SubNESHawk
...
also Input register shift fix
# Conflicts:
# BizHawk.Client.EmuHawk/MainForm.Designer.cs
# BizHawk.Client.EmuHawk/MainForm.Events.cs
# BizHawk.Emulation.Cores/Computers/AmstradCPC/AmstradCPC.IEmulator.cs
# BizHawk.Emulation.Cores/Computers/SinclairSpectrum/ZXSpectrum.IEmulator.cs
# BizHawk.Emulation.Cores/Consoles/Nintendo/NES/PPU.run.cs
2019-01-10 18:25:59 +03:00
nattthebear
e8145af463
i hope this breaks something
2018-05-12 12:55:42 -04:00
alyosha-tas
b2ed6eb737
Always initialize independent instances of IController in cores to NullController
...
- Fixes #1168
2018-03-31 11:23:55 -04:00
alyosha-tas
81e80acf86
z80: make TotalExecutedCycles long and change related variables accordingly
2018-03-18 09:55:56 -04:00
alyosha-tas
f1fee7dc6e
TI832: fix port accesses
2017-12-01 08:51:18 -05:00
adelikat
ebcd237858
Merge branch 'master' into domainedmemoryhooks
2017-10-29 12:38:29 -05:00
alyosha-tas
22337474db
Update TI83.cs
2017-10-25 19:16:05 -04:00
alyosha-tas
3c6dcf1dc3
TI-83 Upgrade
...
- Fix power on Behaviour
- Fix cycle timing
- Fix timer interrupt frequency
- NOTE: 'ON' buton on virtual calculator doesn't work since it's only a 'click', need to use shortcut key to turn the calculator on
2017-10-20 10:32:22 -04:00
alyosha-tas
8b2b796b53
Add files via upload
2017-10-13 17:59:14 -04:00
alyosha-tas
946c025cd6
Add files via upload
2017-10-13 16:26:32 -04:00
adelikat
04ce66c397
phase 1 of changing memory callback api to specify domain - require cores to specify which domains are available and have the domain passed in when creating callbacks. Still todo - cores need to pass in domain name on CallReads/Writes/Executes methods
2017-08-01 22:05:17 -05:00
adelikat
c6e0e9fa57
Rename CoreAttributes to CoreAttribute as to not be a bad person
2017-07-12 14:10:55 -05:00
adelikat
1dae91e6a8
clean up core constructors - consistent parameter casing, and put them at the top of the class
2017-05-05 19:05:36 -05:00
adelikat
59139ab266
Spell out Numerator and Denominator
2017-05-05 11:25:38 -05:00
adelikat
62a13d961d
Move VsyncNum and VsyncDen out of CoreComm and into IVideoProvider
2017-05-05 11:21:37 -05:00
adelikat
1f014daaa0
Fix merge error
2017-05-02 07:26:48 -05:00
adelikat
69d056e990
TI83 core cleanups
2017-05-02 07:24:22 -05:00
adelikat
698c6741ae
Refactor IEmulator and remove the IController property, instead pass it as a paramter to the FrameAdvance() method
2017-05-01 20:09:11 -05:00
adelikat
ded1c2d7b7
Break off BoardName from IEmulator into a separate IBoardInfo service
2017-04-30 21:01:54 -05:00
adelikat
3192cc70ae
slight refactor to IEmulator - make the IController property set only to more clearly express the client -> core relationship
2017-04-26 19:09:00 -05:00
adelikat
2de20e956b
use Dictionary initializers instead of object initializers for various GetCpuFlagsAndRegisters() methods
2017-04-25 08:28:06 -05:00
adelikat
94f152d1d1
misc cleanups in Emulation.Cores
2017-04-17 15:23:31 -05:00
adelikat
ab1a22bf31
add TotalExecutedCycles as an IDebuggable property, and implement it in cores with the information readily available (and throw NotImplementedExecptions in the remaining). wire the property up to lua with emu.totalexecutedcycles(). Stil todo - wire it up to the Debugger gui
2017-01-09 19:23:05 -06:00
adelikat
2b4267d2c9
nitpicky code refactorings on unimportant files, nothing to see here
2016-12-16 15:47:28 -06:00
adelikat
b73a500d6b
Major sound provider refactor. Create a unified interface ISoundProvider, that is an IEmulator service and break it off of IEmulator. IAsyncSoundProvider was kept as a shim for now, for legacy cores that were inherintly async.
2016-12-11 11:15:00 -06:00
adelikat
b697110098
Rename ISoundProvider to IAsyncSoundProvider to more accurately describe what the service does
2016-12-09 10:24:43 -06:00
adelikat
4de6628071
Fix TI-83 memory domains
2016-08-22 15:07:56 -04:00
nattthebear
111648cf98
Break a bunch of memory domain stuff with pointless refactoring
2016-04-13 19:50:06 -04:00
adelikat
f6a8ade98b
TI-83 - implement trace logger (lol)
2016-02-28 08:07:22 -05:00
adelikat
fcf20ac646
Ti-83 - IDriveLight is not applicable
2016-02-21 11:45:12 -05:00
scrimpeh
e4a1a517cd
IInputPollable - Now with tabs instead of spaces.
2016-01-26 11:46:52 +01:00
scrimpeh
ef1bc65ce6
IInputPollable - Make IsLagFrame settable
2016-01-26 11:34:42 +01:00
adelikat
ba21484ddd
add IRegionable as an emulator service to indicate NTSC vs PAL, etc. Refactor cores that conveyed this information to use this service, fixed cheaty reflection to grab this info to use the service instead, marked some cores as region not applicable where it made sense to me (I'm sure I'm wrong in some cases)
2015-08-05 20:12:09 -04:00
adelikat
3541c9e975
Make the lag counter settable, and expose this functionality in lua
2015-07-09 13:05:30 -04:00
adelikat
5bcdfb5991
IInputPollable - remove the set on LagCount as it is not needed
2015-06-11 01:23:14 +00:00
adelikat
00fb58bea5
more TI83 cleanup, nothing worth looking at here
2015-02-07 15:02:52 +00:00
adelikat
95d9f250ee
TI83 - nitpick refactor, nothing useful to see here
2015-02-07 14:46:02 +00:00
adelikat
63a3c56441
TI-83 - some code refactor
2015-02-07 14:38:29 +00:00
adelikat
8c12c5cbff
do read/writes in the z80 core itself, refactor sms and ti83 to not use them on their end of the callback, fixes sms only having read/write callbacks on a few mappers
2015-01-24 20:57:37 +00:00
adelikat
cdd0716420
wire up memory execute callbacks to SMS and TI83
2015-01-24 20:36:36 +00:00