Commit Graph

231 Commits

Author SHA1 Message Date
alyosha-tas 6b18b3cb57
Update Atari2600.IEmulator.cs
Fix broken build
2017-11-08 18:22:53 -05:00
alyosha-tas e35b225fb0
Update Atari2600.IEmulator.cs
Add a frame termination condition so the core doesn't silently crash.
2017-11-08 14:11:13 -05:00
alyosha-tas 7a799583e9
Update Atari2600.cs
Kangaroo [!].a26 has banks swapped similar to a few other games, add it to the internal list.
2017-11-08 13:52:39 -05:00
adelikat ebcd237858 Merge branch 'master' into domainedmemoryhooks 2017-10-29 12:38:29 -05:00
alyosha-tas 32797eea46 Atari 2600
-Recast to run single cycle
-Remove frame buffer from state
-Always end frames on vsync boundary
2017-09-20 10:33:14 -04:00
alyosha-tas 30f1d61f7f Atari 2600
-Recast to run single cycle
-Remove frame buffer from state
-Always end frames on vsync boundary
2017-09-20 10:27:27 -04:00
alyosha-tas 0574013bd0 Atari 2600
-Recast to run single cycle
-Remove frame buffer from state
-Always end frames on vsync boundary
2017-09-20 10:26:33 -04: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 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
alyosha-tas 773a70c125 A2600: Fix bitmap demo atext.bin
Gotta stay on par with Stella!
2017-07-26 09:17:08 -04:00
alyosha-tas d1a78f4fcb Update Atari2600ControllerDeck.cs
- Repair controller image appearing in config -> controllers
2017-07-24 17:38:46 -04:00
adelikat c6e0e9fa57 Rename CoreAttributes to CoreAttribute as to not be a bad person 2017-07-12 14:10:55 -05:00
alyosha-tas a4360b9c36 A2600: Adjust range on float controls
Scale them in read function instead .

NOTE: still needs some play testing from someone familiar with how the paddle controls to see if it feels right.
2017-06-29 11:02:55 -04:00
adelikat f5cb35a862 Atari 2600 - vritual pad and mnemonics for paddles 2017-06-28 14:27:15 -05:00
alyosha-tas 82d03dc3e9 A2600: implement paddle support
Warning: Deadzone in float controls should be set to zero. I don't know where to look to do this by default though
2017-06-28 10:58:40 -04:00
alyosha-tas 2f6d05512f A2600 TIA: Hook up Paddle logic 2017-06-28 10:57:07 -04:00
adelikat c3b890c60c Atari 2600 - stub out the paddle controller 2017-06-27 17:22:45 -05:00
adelikat 74dd25e831 Start Atari 2600 peripheral support - currently ability to pick joystick or unplugged for port 1 and port 2. Virtualpads are not addressed with this commit 2017-06-27 15:14:41 -05:00
alyosha-tas a2dfb639d4 Update Atari2600.Core.cs
Fix #838
2017-05-14 19:29:53 -04:00
adelikat 7b29970ef9 atari 2600 cleanup 2017-05-05 13:49:36 -05:00
adelikat d467a1427d Atari 2600 - cleanups, de-expose some fields 2017-05-05 12:26:15 -05:00
adelikat daf3b2539b Atari 2600 - add alyosha as an author, break up IEmulator code to its own file, some misc cleanup 2017-05-05 11:56:28 -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 e5f82bf329 CoreComm - make vsync fields into properties 2017-05-02 07:56:34 -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 b4de14657a get rid of a warning 2017-04-24 12:54:43 -05:00
adelikat 2964585401 misc code cleanups in Atari 2600 2017-04-24 10:09:31 -05:00
J.D. Purcell b53502eed8 Spaces -> tabs. 2017-04-15 16:37:30 -04:00
adelikat 37c989c661 more misc code cleanups, with some C#6isms 2017-04-10 11:24:53 -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 54eb678387 create an ICreateGameDBEntires specialized service and have Atari2600 implement it. Use this in the log window instead of sneaky reflection to access the method 2016-12-15 10:45:20 -06: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
adelikat 5b31b33713 Remove a now unused MaxVolume property from some sound provider classes 2016-12-08 20:06:25 -06:00
adelikat c61fd757f2 Atari 2600 - put difficulty toggle variables into savestates 2016-11-26 16:10:27 -06:00
adelikat e72ce6d9cb Atari 2600 - show the Needs Reboot icon when changing sync settings 2016-11-11 15:33:29 -06:00
adelikat 333e17a054 Atari 2600 - add console buttons for toggling Difficulty switches. Note that this commit may or may not break both movie and savestate backwards compatibility 2016-11-11 15:28:21 -06:00
adelikat 7a6d2bce41 Dipose of a bytebuffer in a mapper in Atari 2600 2016-11-09 18:23:54 -06:00
adelikat ccc2ee1ba9 Fix coleco memory domains similarly to previous commit, also clean up previous commit 2016-08-22 13:14:47 -04:00
adelikat 4d03651526 Fix A2600 memory domains similarly to the PCE fix in 4b165089fd 2016-08-22 12:56:12 -04:00
alyosha-tas 74e64fda03 fixes poly9 sound
This actually affected several other sound channels as well since the old code put the other poly counters into degenerate states at times
2016-06-06 11:11:42 -04:00
alyosha-tas 41fd36a3c3 Fixed high pitch bug
finally found this bug, fixes several games where sounds were higher pitch then supposed to be (notably Combat)
2016-06-05 17:38:33 -04:00
alyosha-tas ae39f13d5a Update for new sound routines
Catches cases where sound is not processed.
2016-06-04 18:33:41 -04:00
alyosha-tas d7436554b8 Rewrite audio routines
Now samples sound explicitly at proper points each scanline.
Sounds the same (i.e. sometimes wrong) as before, so other bugs exist.
WIP
2016-06-04 18:32:26 -04:00
alyosha-tas f60dde19f5 Fixes compumate mapper
Still WIP
needs keyboard to test
2016-05-31 09:24:09 -04:00