goyuken
0803adc32a
add a "BoardName" to IEmulator that an emulation core can use to return useful information about how the rom is being emulated. meant to be mostly for informative purposes; shouldn't rely on it for too much. implemented in GB and NES cores
2013-08-24 16:54:22 +00:00
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
goyuken
5986d779e7
SMS: increase size of buffer for public byte[] SaveStateBinary() by 1 byte. also throw an exception if the savestate is smaller than expected.
2012-12-14 16:59:23 +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
adelikat
6660ac3e8e
SMS - slight fix to how islag is saved into savestates
2012-11-24 14:19:59 +00:00
beirich
84a4a8544b
probably fix TMS9918A alpha channel screenshot thing
2012-11-23 00:36:41 +00:00
adelikat
1cf2529512
SMS/GG/SG-1000 - put islag variable into savestates
2012-11-22 01:01:39 +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
6fedb67949
Fix the Write callback for the MemoryCallBackSystem and refactor the object more appropriately
2012-10-14 14:08:25 +00:00
adelikat
3f961647a8
SMS - oops broke stuff on last commit!
2012-10-13 20:39:13 +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
beirich
6d4af4968d
SMS: support cpu trace logging
2012-10-06 18:09:41 +00:00
goyuken
b545d79fb6
lua: add emu.on_snoop()
2012-10-06 13:34:04 +00:00
beirich
af9390f569
oops
2012-10-05 03:53:30 +00:00
beirich
3547b9bad8
GG: Add option to highlight the active display region
2012-10-05 03:42:19 +00:00
beirich
3d36887d60
GG: Add emulator support for showing clipped regions of GG games
...
Note, not yet hooked up to UI.
2012-10-05 03:12:42 +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
zeromus
b33fc4982c
remove derelict CoreVersion/Introspection stuff
2012-09-16 20:08:36 +00:00
goyuken
feaa652986
fix SMS SaveRAM == null in SMS
2012-09-14 23:31:10 +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
beirich
c9b3f7bedf
gen fixes: HINTs shouldnt fire during vblank, some DMA fixes, fix a render priority issue (albeit not the ideal fix), substantial rom compatibility testing
2012-09-03 16:01:56 +00:00
beirich
d24d3ae932
fix a dumb PAL bug. possibly for the second time.
2012-07-15 07:15:31 +00:00
goyuken
fd7a0b2fe7
change CoreOutputComm to use exact integers to specify VsyncRate. Helps for AV dumping with formats that require exact integer rates (AVI), and for emulators that aren't exactly 50hz/60hz (none yet).
2012-07-11 21:37:35 +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
taotao54321
2f9a5212bc
Added BG/OBJ display settings for SMS (not accessible yet)
2012-03-11 16:15:20 +00:00
beirich
dcc0a34d93
Add NBA Jam [Proto] SMS to gamedb
2011-10-03 13:01:27 +00:00
beirich
c282308071
[SMS] correct sprite flicker appearance. year-2000-me was a jackass, sprites are not drawn back-to-front.
2011-09-19 04:17:16 +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
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
a8aaaef45e
[PCE] ADPCM playback more or less working correctly now
...
plus some cleanup
2011-09-05 17:45:01 +00:00
beirich
b27673f26c
M-M-M-MONSTER COMMIT! change Game-load api stuff
2011-08-04 03:20:54 +00:00
andres.delikat
2e68314e01
Movies that start from savestate now supported. Record Movie dialog "Record from Now" option implemented. ResetFrameCounter() added to IEmulator and implemented in all existing cores
2011-07-30 20:49:36 +00:00
andres.delikat
52215061aa
some implementations necessary for the gameboy controller
2011-06-27 01:24:26 +00:00
andres.delikat
8096316981
Make GB debugger not load by default when a gb game is loaded, misc cleanups gb related
2011-06-27 00:15:47 +00:00
zeromus
c0988feaa3
add CoreInputComm/CoreOutputComm, remove Query system, hook up nes video config options
2011-06-11 22:15:08 +00:00
beirich
9283a9f37d
IEmulator now implements IDisposable; client now disposes cores
2011-06-02 02:59:18 +00:00
beirich
33c300ff7b
good news: movies work! bad news: 1) movies don't work for TI83 yet 2) I broke some NES things, to be fixed in a later commit
2011-05-08 00:06:43 +00:00
andres.delikat
f440f843dd
Add IsLagFrame bool to IEmulator and implement in all platforms. Make an alert font in Render panel and make input display use it when a frame is a lag frame
2011-05-01 16:04:53 +00:00
andres.delikat
3efd98e887
SMS - implement lag counter & add to savestates
2011-05-01 14:15:49 +00:00
andres.delikat
bf93a936df
Change unimplemented lag counters to return -1 instead of 0 since that is more obviously not implemented. Make null emulator return 0 since by definition it would never lag.
2011-05-01 13:05:16 +00:00
andres.delikat
6732cd50ff
Make LagCount get/set in IEmulator and refactored emulators. Implemented the Lag counter in the NES core.
2011-05-01 12:59:26 +00:00
andres.delikat
2fa3561c45
Add LagCounter int to IEmulator, returns 0 on every emulator at the moment. Hook up RenderPanel's LagCounter display
2011-05-01 00:20:39 +00:00
andres.delikat
d7ba739b30
Some fix ups to input recording, and setting up the ability to test recording & playback
2011-02-28 01:26:38 +00:00
andres.delikat
423e9c8783
Add SetControllersAsMnemonic() to IEmulator and implement it in the SMS core. Very crude playback now works.
2011-02-27 22:33:25 +00:00
andres.delikat
04b6b2baa0
Fix typo!
2011-02-26 22:08:55 +00:00