Commit Graph

120 Commits

Author SHA1 Message Date
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 2441acd38b PCE-CD: hook up client drive LED api 2012-11-26 02:15:21 +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 8cebe897cb PCE: fix dumb error in display-off background color calculation, fixes soldier blade flashing wrong color 2012-11-11 05:04:29 +00:00
adelikat 58bee3b594 PCE - fix typo in memory domain - "Arcade Card RAM" not "Aracde" 2012-10-28 16:29:47 +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 557fb150c3 Lua - implement onmemoryread and onmemorywrite for the NES and PCE cores 2012-10-13 18:59:09 +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 3832352dbe add default RomStatusDetails (name, sha1, md5). add pcecd specific RomStatusDetails generated from the Disc 2012-10-08 20:37:41 +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
beirich ea6e170703 support Trace Logging in PCE 2012-10-01 00:21:25 +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
beirich b04189b6b1 gen: rewind is working, savestates are not working [yet]. will fix more tomorrow 2012-09-17 05:48:24 +00:00
zeromus b33fc4982c remove derelict CoreVersion/Introspection stuff 2012-09-16 20:08:36 +00:00
goyuken 16e831a84c fix BRAM == null case in PCE 2012-09-14 23:18:16 +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
beirich adee5befa5 Genesis ROM header parsing
and other stuff thats only committed because svn isn't decentralized!
2012-09-13 04:13:49 +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
beirich fe369e0455 pce: alter handling of reading $1FF402 irq status port, fixes Aldynes intro freeze 2012-06-03 20:09:09 +00:00
beirich 2dd91c4079 pce-cd: fix CD Set Audio End Position command Mode 2 bug - not ending audio playback! 2012-06-03 02:03:31 +00:00
beirich df59686cbb Fix crash in PCE Coryoon when attempting to access disabled TurboCD ports 2012-05-26 20:21:00 +00:00
beirich ca47082737 fix some PCE savestate desyncs 2012-03-12 00:14:44 +00:00
adelikat 643c742266 PCE Core - fix SystemBus memory domain size 2012-03-11 19:16:04 +00:00
taotao54321 575c44f470 Now setrenderplanes() works also for SuperGrafx. 2012-03-11 09:51:23 +00:00
taotao54321 30b0dc6780 PCE: added settings to show/hide BG/OBJ for TurboGrafx (not for SuperGrafx)
Now setrenderplanes() works for TurboGrafx (not for SuperGrafx)
2012-03-11 06:50:46 +00:00
beirich a76ea9c520 pce: fix a crash when a HuCard accessing invalid addresses would venture into TurboCD ports (namely, Rastan Saga) 2012-03-04 19:37:00 +00:00
brandman211 79d12b9181 -Refactored NES and PCE button orders.
-Realized that FixMnemonic is useless as GetControllersAsMnemonic() + WriteMovie() = Fixed.
-Finished the NES / PCE importers, now without string builders (Thanks zeromus)!
-Converted ImportMMV to this same method.

TODO:
-Decide how's the best way to handle the mnemonic header and implement it. Apparently, anything other than a predefined header and a | is considered as a comment, so I might do something like:

comment Mnemonic format:
[0|UDLRsSBA]
2012-02-19 07:09:24 +00:00
andres.delikat f1da3bfa08 Play Movie dialog - Match Game Name option, checked by default. 2011-12-27 00:15:48 +00:00
beirich cf8216ac46 pce-cd: basically working pretty okay! (fixed bug causing issues with extended ADPCM playback sequences) 2011-09-28 05:03:22 +00:00
beirich f3dc6068ce delete extra/external 68k core 2011-09-27 02:46:23 +00:00
beirich e5f1c142f8 pce-cd: fix Snatcher, Madou Monogatari, Tangai Makyo, ValisIII playable now 2011-09-25 23:34:53 +00:00
andres.delikat 6bbab41b0c PCE - Implement PCECD system id in core and in game info. Also set cancel property of LogWindow winform 2011-09-24 17:05:34 +00:00
beirich f9d7ff62f4 pce-cd: support arcade card, fix cd-audio playback bug
add new emulation options to gui for SMS and PCE/CD
2011-09-19 00:39:28 +00:00
beirich 5781d0b4cd pce-cd gamedb and compatibility updates 2011-09-17 21:34:02 +00:00
beirich 82cf9486f3 about halfway through pce-cd compat test and gamedb updating, plus commit some bugfixes 2011-09-17 05:35:41 +00:00
beirich 7eb2eb0071 PCE-CD states are now stable 2011-09-16 23:59:03 +00:00
beirich 9aa70c4fa9 Much improved pce-cd savestateyfulness
Cleanup and stateyness of SCSI bus still in progress; states not done yet
2011-09-16 04:59:59 +00:00
beirich 7a272192fb Add version IDs to the other working cores
Add toggle for saving screenshot with savestate. Update loadstate code to not die when encountering a state without a screenshot
2011-09-15 23:32:21 +00:00
beirich f7109d5f17 fix a stupid bug in pce-cd causing irqs to not be released 2011-09-15 05:10:23 +00:00
beirich e8c3da9c1f [pce] Improve ADPCM flags and interrupt handling 2011-09-09 03:40:58 +00:00
beirich 41de458ec6 [pce] Fix ADPCM more and code cleanup 2011-09-07 03:31:32 +00:00
beirich a8aaaef45e [PCE] ADPCM playback more or less working correctly now
plus some cleanup
2011-09-05 17:45:01 +00:00
beirich e67ff446da Fix new GameInfo to not default to in-database, special handling for 'null' games 2011-09-05 01:21:59 +00:00
beirich 620437c10d pce, dispose disc when core is disposed 2011-09-04 06:28:55 +00:00
beirich 647cae698e Max volume is settable per sound source to enable mixing many sound sources without clipping. Potentially can be used to disable individual sound sources. 2011-09-04 04:38:11 +00:00
beirich e13af4064b [pce] very preliminary ADPCM playback, added a bunch more MemoryDomains 2011-09-03 20:32:18 +00:00
beirich 9f4ffde86f [pce-cd] somewhat improve save-statey-ness. still not solid but good enough to work a lot of the time 2011-09-01 01:14:40 +00:00