adelikat
325551ecd0
consistently check if callbacks exist before calling memory callbacks, across all cores
2020-04-21 16:42:57 -05:00
adelikat
dfe7f8e3ab
refactor core preferences to be a dictionary<string, string> to be stored in config, and consolidate subnes and subgb into just another core selection
2020-04-18 09:55:57 -05:00
adelikat
028bc83c88
refactor CoreComm usage in some Gameboy cores
2020-03-15 09:28:27 -05:00
adelikat
a884282fa4
remove CoreComm NominalX/Y, those values never different from buffer w/h for cores that set them which were only the gb/gba platforms and the original dualGb. The result defaulted to a very random 640x480. Instead just use the buffer w/h, which is a very reasonable video default
2020-03-14 17:06:42 -05:00
YoshiRulz
3afcf416e8
Follow attribute class best practices, cleanup docs on attributes
2020-02-19 03:54:50 +10:00
adelikat
54ba1e12eb
set get only properties in Emulation.Cores, and a few other simplfiications
2020-02-18 11:11:59 -06:00
adelikat
606c3bf1c2
use more advanced language features in Emulation.Cores ( #1852 )
...
* Use expression bodies in Emulation.Cores, and a few other misc cleanups
* remove unused usings in Emulation.Common
* cleanups in Tables_Direct.cs
* some cleanups in nes boards - redundant code
* remove some redundant array initializers in Emulation.Cores
* cleanup AmstradCPC.Controllers
* use object initializers in a lot of places
* nes mappers - remove disch's notes comments in favor of the nesdev wiki link
* cleanup CdtConverter.cs, mostly use of object initializers
* remove redundant .ToString() calls in Emulation.Cores
* using var in Emulation.Cores
* AmstradCPC/ZXSpectrum - simplify some linq, tabs instead of spaces, a few other misc cleanups
* Use null-propagation in Emulation.Cores
2020-02-17 16:54:51 -06:00
YoshiRulz
4dd40305bc
Merge branch 'master' into interp_cores
2019-06-15 02:11:24 +10:00
Brian Armstrong
2c6ecb68bd
Merge branch 'master' into brian/mem_callback_addr_value
2019-06-06 02:11:04 -07:00
Brian Armstrong
d41bd867b8
flags
2019-06-06 02:04:47 -07:00
YoshiRulz
9af93be0d3
Use string interpolation
2019-04-04 02:41:18 +10:00
James Groom
4e91f88af3
Use nameof in cores
2019-03-28 14:18:58 +11:00
Brian Armstrong
a8f293eec8
Call mem callbacks with addr, value
2019-01-24 03:23:21 -08: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
adelikat
cd289c474e
memorycallbacks with domains - Phase 2 - change api to Call methods and refactor accordingly, everything should behave as it was before the refactor at this point. No cores have yet to be implemented with domains other than the default bus they already had
2017-08-03 18:08:07 -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
62a13d961d
Move VsyncNum and VsyncDen out of CoreComm and into IVideoProvider
2017-05-05 11:21:37 -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
010c04f421
bleh, forgot to check this in
2017-04-25 11:17:35 -05:00
nattthebear
432cbc54d7
it annoyed me
2017-04-23 13:25:29 -04:00
adelikat
72a59087b5
Use the IController indexing property less in preparation for removing it from the interface. Replaced with its more explicity counter-part .IsPressed()
2016-12-14 12:42:15 -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
feos
76eaea3619
tracer unification for cores: spacing, headers, etc
2016-08-16 01:39:26 +03:00
feos
888d7fed6a
tracer: set some padding
2016-08-14 22:59:07 +03:00
adelikat
f5e679fa0d
Refactor ITraceable to work on TraceInfo objects that separate Disassembly and Register information. Make Tracelogger two columns.
2016-02-21 17:34:42 -05: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
goyuken
6d5d720d55
mgba: input support
2015-06-04 23:30:24 +00:00
adelikat
ede452700c
VBANext - separate into separate files
2015-01-17 20:48:31 +00:00
goyuken
82fcd0bc5e
refactor IVideoProvider into a service. uses in mainform and friends are still hacky
2015-01-14 22:37:37 +00:00
adelikat
fbdb29b64c
refactor IMemorydomains to be a domain list instead of having a domain property, refactor cores to register an IMemoryDomains instead of being one
2015-01-14 21:55:48 +00:00
adelikat
d62ba4e2b4
Change IMemoryDomains to have an IMemoryDomainList instead of a MemoryDomainList, this is an incremental step into eventually having IMemoryDomains take over the properties of IMemoryDomainList, still todo: reduce the amount of needed functionality in IMemoryDomainList from old and not good code
2015-01-13 22:18:07 +00:00
adelikat
17b4782474
Change "BUS" to "System Bus" in both GBA cores, and the bsnes core, don't account for "BUS" in the CheatDomain property
2015-01-13 00:01:25 +00:00
adelikat
0f2197cec1
Break off ITracer from IDebuggable, rename to ITraceable and make it an IEmulatorService, refactor things accordingly
2014-12-23 01:58:12 +00:00
adelikat
ffdeb618f7
IDebugable - add a CanStep() method, and implement it in all IDebuggable implementations
2014-12-20 13:29:57 +00:00
adelikat
a8116297a0
Rename Register to RegisterValue
2014-12-20 13:16:15 +00:00
adelikat
7bebb66589
IDebuggable - refactor GetCpuFlagsAndRegisters to be IDictionary<string, Register> where Register is a value and a bitsize
2014-12-20 03:19:33 +00:00
adelikat
d08fb39cb8
Refactor IDebuggable StepInto/Over/Out methods into void Step(StepType type);
2014-12-15 22:19:10 +00:00
adelikat
725a8fb092
Add StepInto(), StepOver(), StepOut() to IDebuggable, have all cores implement it with unimplemented dummy functions
2014-12-14 18:58:16 +00:00
goyuken
c6ed49c067
some disassembler stuff
2014-12-13 21:49:15 +00:00
adelikat
9fc46f6764
mark cores that would not ever use IDriveLight, a bit silly, but it keeps the feature list clean and that's currently my only source of sanity with keeping up with what needs to be done
2014-12-12 01:58:12 +00:00
adelikat
2d1a43dc65
MemoryCallbackSystem - simplify by having a single Add method with a MemoryCallbackType parameter, and some simplifying of client code as a result
2014-12-07 18:53:56 +00:00
goyuken
1f9b4d23fe
lets try something that compiles
2014-12-05 02:39:42 +00:00
goyuken
a7ad7e20e9
clean up vbanext core
2014-12-05 02:27:39 +00:00
adelikat
0b84beec88
Move MemoryCallbackSystem from CoreComm to IDebuggable and refactor accordingly, Lua - tell the user when memory callbacks are not available for a given core
2014-12-05 01:56:45 +00:00