Commit Graph

44 Commits

Author SHA1 Message Date
goyuken 7b7b95e95d add a new field to IEmulator: bool BinarySaveStatesPreferred { get; }. a core should set it to true to indicate that it would prefer to save and load binary savestates (but both types must be supported). set to true on 7800, gb, dgb, gba, n64, snes, saturn cores, as they all create text savestates that are simply dumps of the binary savestate. for the moment, frontend does nothing with this new information. 2013-05-06 20:51:28 +00:00
adelikat cff1ff2940 Removing unused directives from a bunch of files because I was playing around with resharper, but that got boring so not every file 2013-04-14 20:39:19 +00:00
zeromus a4b442abda unify coreinputcomm and coreoutputcomm. there is a slight chance your console will be messed up until i fix a teeny tiny something, since i didnt test them all, since with more recent cores i dunno what roms are working anyway. let me know if i broke anything. 2012-12-10 00:43:43 +00:00
beirich 0bb30d4918 Coleco: implement TMS mode 3, clean up some debug code 2012-11-26 01:44:17 +00:00
goyuken 0094562d2a per previous discussion, IEmulator.ResetFrameCounter() should reset lag frame related stuff as well 2012-11-25 15:41:40 +00:00
beirich b1ab7bd9f1 coleco: fix issue where sprite priority prevented sprite collision from firing 2012-11-25 02:25:20 +00:00
beirich 0762e235d5 Coleco: fix magnified-sprite render bug 2012-11-25 01:51:42 +00:00
adelikat f7032a1c33 Coleco - some minor refactoring 2012-11-24 14:17:56 +00:00
beirich 2382781627 coleco 'noskip' checkin... tested through M's so far 2012-11-23 05:51:16 +00:00
beirich f23a86b20c coleco: fix several games with broken input, support controller 2 2012-11-23 04:09:01 +00:00
beirich 1a653190b7 coleco: fix a VDP I/O bug
fix typo in 'skip bios intro' option
2012-11-23 03:10:01 +00:00
beirich 84a4a8544b probably fix TMS9918A alpha channel screenshot thing 2012-11-23 00:36:41 +00:00
adelikat 950d5bce4d ColecoHawk - oops - implemented binary savestates for VDP 2012-11-22 17:00:37 +00:00
adelikat f26c72df86 Colecohawk - option to skip bios, setting is also saved into movies 2012-11-22 02:01:15 +00:00
adelikat 77f9ef269b Colecohawk - binary savestates implemented (rewind now works) 2012-11-22 00:57:26 +00:00
adelikat 139bbd7ab8 Colecohawk - savestates - oops - text savestates should be working now 2012-11-22 00:49:10 +00:00
adelikat 3e496ae069 ColecoHawk - preliminary text savestates, not complete! still some things in VDP to add in 2012-11-20 01:01:51 +00:00
adelikat 5fda8801f4 ColecoHawk - implement memory domains 2012-11-20 00:35:22 +00:00
adelikat b7f9a99250 ColecoHawk - hook up frame and lag counters 2012-11-18 05:22:13 +00:00
adelikat 94475aa9a7 ColecoHawk - hook up virtualpads 2012-11-18 05:19:05 +00:00
beirich b679e3d53d oops 2012-11-18 02:34:16 +00:00
beirich 57abaad07e Coleco: improve VDP interrupt handling, implement sprite collision status bits
Fixes Frenzy and Carnival at least
2012-11-18 02:32:07 +00:00
beirich 7948905a6d Colecovision input works 2012-11-18 00:40:22 +00:00
adelikat 7a9b121798 Coleco has a button 0 2012-11-17 21:38:21 +00:00
adelikat 5a2b79f33e Cool up coleco to controller config (only controller 1 for now, no autofire) 2012-11-17 21:28:09 +00:00
adelikat 3595516ae5 Hook up Coleco folders to path config, Change coleco system ID to "Coleco" 2012-11-17 21:12:51 +00:00
beirich 4c83970b2b initial ColecoVision commit. Needs BIOS ROM & input wired up to client (plus more emulation work) 2012-11-17 17:39:33 +00:00
adelikat 6fedb67949 Fix the Write callback for the MemoryCallBackSystem and refactor the object more appropriately 2012-10-14 14:08:25 +00:00
adelikat 98ae0abe28 Lua - Implement onmemoryread() and onmemorywrite() to the remaining C# cores except Genesis 2012-10-13 20:15:28 +00:00
goyuken b40897bb77 sound api changes. added a new ISyncSoundProvider, which works similarly to ISoundProvider except the source (not the sink) determines the number of samples to process. Added facilities to metaspu, dcfilter, speexresampler to work with ISyncSoundProvider. Add ISyncSoundProvider to IEmulator. All IEmulators must provide sync sound, but they need not provide async sound. When async is needed and an IEmulator doesn't provide it, the frontend will wrap it in a vecna metaspu. SNES, GB changed to provide sync sound only. All other emulator cores mostly unchanged; they just provide stub fakesync alongside async, for now. For the moment, the only use of the sync sound is for realtime audio throttling, where it works and sounds quite nice. In the future, sync sound will be supported for AV dumping as well. 2012-10-11 00:44:59 +00:00
goyuken b545d79fb6 lua: add emu.on_snoop() 2012-10-06 13:34:04 +00:00
goyuken 98d9f13600 change IEmulator.DeterministicEmulation to get-only; the old interface implies that a core should be able to take a change to the property at any time, which isn't feasable. most existing cores changed to return true all the time. SNES now takes determinism parameter in Load() 2012-10-03 15:31:04 +00:00
goyuken 51fc8e695c add 'bool rendersound' to IEmualtor.FrameAdvance()
if false, the emulator is free to gain whatever speedup it can by not doing audio processing (shouldn't change anything sync related, though)
the core should still always call SoundProvider.GetSamples() after each FrameAdvance(), else DRAGONS
at the moment, only test-implemented in gambattehawk
2012-09-20 19:52:47 +00:00
goyuken 83e145c36f change the IEmulator saveram interface.
i don't like doing this, but there were already two emus with special bandaid logic in MainForm.cs
i hope this doesn't break something, but if it does i'll fix it
2012-09-14 22:28:38 +00:00
zeromus f5c0965045 snes-support save ram 2012-09-04 07:09:00 +00:00
andres.delikat a34bf45610 Add islag to savestates (now lagframe alert status updates when loading a state) 2012-07-30 14:42:52 +00:00
beirich b599c69c18 Add VirtualWidth to IVideoProvider and the (numerous) implementations. This is just phase 1, client needs to be updated to utilize this information, and some cores (especially PCE) should be updated in a more involved way to provide better TV emulation. 2012-06-25 02:50:34 +00:00
adelikat abba87738f Fix input config for Gameboy, some small random work on ColecoHawk 2012-05-18 22:57:05 +00:00
adelikat 02bad39a88 Some Coleco docs 2012-05-06 23:16:50 +00:00
adelikat 5fa0a681e1 Colecohawk - start VDP (ripped from the SMS core) 2012-05-06 02:48:39 +00:00
adelikat 3b7c23817a Coleco - some hacks and fixes to make a coleco rom open without crashing (draw a black screen instead) 2012-05-06 01:15:02 +00:00
adelikat 059aebec8e ColecoHawk - set up ROM loading (bind .col to Coleco), set up preliminary controller garbage in 85 places for coleco 2012-05-06 00:54:13 +00:00
adelikat 81f0f031f3 Coleco - very minor mostly useless changes 2012-03-25 17:39:50 +00:00
adelikat 6b9024dd5c Start colecohawk (skeleton) 2012-03-25 01:33:05 +00:00