Commit Graph

116 Commits

Author SHA1 Message Date
adelikat 325551ecd0 consistently check if callbacks exist before calling memory callbacks, across all cores 2020-04-21 16:42:57 -05:00
adelikat 79aec475a9 refactor CoreComm usage in sega cores 2020-03-15 09:42:48 -05:00
adelikat 46d05de51f nothing to see here 2020-02-28 12:52:48 -06: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 27352a6f8e add Get/SetCpuFlagsAndRegisters to Z80, and remove all the boilerplate from related cores 2020-02-16 17:55:40 -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 e6e1962b54
Convert SMS settings to use GenericCoreConfig (#1816)
* refactor Sms settings including naming conventions and fix a typo, breaks configs with SMS settings already saved

* convert SMS controller type setting to an enum

* convert SMS Region setting to an enum

* Move SMS display type setting to an enum

* convert sms settings to properties

* SMS - wire up generic core config to a settings menu item

* remove some SMS menu items that are redundant to generic settings config

* remove more SMS menu items that are now redundant to generic core config

* remove more redundant SMS settinsg including SMSGraphicsConfig dialog, add descriptions and display names to SMS settings objects
2020-01-26 12:56:54 -06:00
YoshiRulz b1e02fbdce
Enable SA1106 and fix noncompliance
"Code should not contain empty statements"
i.e. don't put a semicolon there
2020-01-25 18:06:34 +10:00
YoshiRulz 6f3f01125c
Enable SA1504 and fix noncompliance
"All accessors should be single-line or multi-line"
i.e. no block form on one line
2020-01-25 14:56:56 +10:00
YoshiRulz a8170ca183
Fix mismatching namespaces 2020-01-13 07:19:06 +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
alyosha-tas be0f5f81cc GG: Link support initial capability 2019-05-08 17:39:15 -04:00
alyosha-tas 9f75222284 SMS: Refactor sound to not use AsyncSound 2019-02-23 11:31:09 -06:00
alyosha-tas dc94825891 various code cleanup 2019-02-09 16:46:36 -06:00
alyosha-tas ea92bdcc66 GGHawkLink: tracelogger 2019-02-09 15:19:18 -06:00
alyosha-tas f08a521900 GGHawkLink:
-Seperate controller input
-Fix lag indicator
-Correct frame execution
2019-02-09 11:45:29 -06:00
alyosha-tas 4f17934d6c GGHawkLink: Initial Commit
- Make necessary access changes in SMS
- Implmement multi-disk bundler support
- Initial Video and sound support
2019-02-09 09:55:45 -06:00
Brian Armstrong a8f293eec8 Call mem callbacks with addr, value 2019-01-24 03:23:21 -08:00
Asnivor b747ac22d7 SMS/GG: PowerOn Z80 SP init - stops some games from crashing/note loading 2018-09-25 09:25:54 +01:00
alyosha-tas ac95d9eb72 SMS: Remove unnecessary SP hack. 2018-06-13 08:50:44 -04:00
alyosha-tas fe3e7c3dd2 SMS: Set stack pointer to RAM for Aerial Assult (W) 2018-06-10 18:30:12 -04:00
alyosha-tas 942454e327 SMS/GG: Implement SMS compatibility mode for some games
(Technically the screen is supposed to be modified too but not implementing yet)
2018-05-11 20:08: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 1c40bbd49b SMSHawK: Add Port5 variable (link cable)
-Fixes Pac Attack
2018-03-26 14:34:47 -04:00
alyosha-tas 58f6e624ff SMS add Korea to region selection options 2018-02-08 09:26:22 -05:00
alyosha-tas 353fec4f00 SMS: Add Korea BIOS support 2018-01-01 12:04:07 -05:00
Tastyfish 480f3b73f9 Keyboard support for SG-1000/Mark III 2017-11-25 01:23:12 -05:00
Tastyfish d0bdfd3d68 Fixes disassembler for SMS 2017-11-24 02:56:21 -05:00
adelikat ebcd237858 Merge branch 'master' into domainedmemoryhooks 2017-10-29 12:38:29 -05:00
Tastyfish 9693d812d2 Adds SEGA Sports Pad for SMS support, also make controller syncsetting 2017-10-27 20:34:12 -04:00
alyosha-tas 8e7d8fbff5 Update SMS.cs 2017-10-25 19:18:45 -04:00
Tastyfish 5e87b45df0 EEPROM (93c46) support for SMS 2017-10-23 14:17:51 -04:00
alyosha-tas 09ce28d2bd Add files via upload 2017-10-13 18:01:14 -04:00
alyosha-tas fc0a251040 Add files via upload 2017-10-12 20:21:32 -04:00
Tastyfish d0fdc75a1e SMS Light Phaser support 2017-09-01 22:39:01 -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
alyosha-tas 23345eb7d3 SMS: Require BIOS to load ROMs
Requires BIOS to be present and enables it by default.
2017-06-22 16:40:18 -04:00
adelikat b6fc3006e9 Cleanup SMS.IEmulator.cs 2017-05-08 11:42:22 -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 44064d86d2 sms - nitpick code cleanup 2017-04-23 13:28:15 -05:00
adelikat aaed8e67d5 NullController - remove a bunch of methods that were originally part of IController but no longer are, and clean up the code a bit 2016-12-14 09:16:54 -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
Ben Eirich 7f23cd80f1 SMS overscan display
Conflicts:
	BizHawk.Client.EmuHawk/MainForm.Designer.cs
2016-08-18 18:14:58 +03:00
adelikat 5cd11d0bb4 Move Sound component objects from Emulation.Common to Emulation.Cores so they live in the same assembly as the calling cores 2016-03-04 08:37:09 -05:00