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
adelikat
c577eb4854
Atari 2600 - DPC Mapper - add in clock cycle counting and some fixes, but still doesn't work, don't know why at this point
2013-04-20 22:09:19 +00:00
adelikat
462e861072
last round of pointless code cleanup
2013-04-16 00:42:57 +00:00
adelikat
be2937fdec
Code refactoring of Tools files - no functional changes other than some very tiny speedups and null checks
2013-04-14 23:56:45 +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
adelikat
3e639d65ab
Atari 2600 - implement TIA, PIA, and System Bus domains (note that there is no poke ability on the system bus domain at this time)
2013-03-11 01:46:12 +00:00
adelikat
84bc032656
Some warning cleanup
2013-02-24 20:17:12 +00:00
goyuken
03f5b3ae96
serializer: add another duplicate check (this time on section names within a single section), and fix 2600 savestates
2012-12-18 20:37:31 +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
goyuken
cb4288ada4
rearrange the api of DCFilter a bit to make it less dumb. nothing of real importance
2012-12-09 15:58:55 +00:00
goyuken
b7c66cf3c2
Util.Serializer: Consume no data past the end of the last proper section. As a result, when using Util.Serializer in text mode, you MUST enclose your entire savestate in a single section (named to your liking). Fixes input log save\load issues. All old A2600 savestates broken.
2012-11-28 18:27:14 +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
goyuken
6ffd71973a
6502: improve tracelog to only disassemble actual opcodes, and also enable it on 2600
2012-11-02 22:27:22 +00:00
zeromus
24d3bb76e2
fix 2600 Peek support, as best I can tell how.
2012-11-02 19:35:13 +00:00
zeromus
aa161d8910
proper Peek support in NES and 6502X
2012-11-02 19:28:00 +00:00
adelikat
6e214a6059
Atari 2600 - fix mapper E7
2012-11-01 03:26:24 +00:00
adelikat
ae7bb1b590
Atari - progress on DPC mapper, still doesn't work
2012-11-01 01:54:33 +00:00
pjgat09
2d2e0c7e31
A2600: Resetting players before hsyncCnt 76 has apparently has strange results. I borrowed these changes from EMU7800. This seems to fix glitches with Frostbite.
2012-10-31 23:42:18 +00:00
pjgat09
a5d4cd155d
A2600: Fixed problem with missile-to-player reset. Reset should only occur on the first drawing of the player.
2012-10-31 20:09:14 +00:00
adelikat
4ed68e0c9a
oops
2012-10-30 23:42:42 +00:00
adelikat
1d4a8fd3ba
Atari 2600 - add a Playfield toggle
2012-10-30 23:38:53 +00:00
adelikat
a4a53342d1
Atari - Checkin DPC Mapper file
2012-10-30 23:13:49 +00:00
pjgat09
c1c85dba56
A2600: Implemented atari graphics toggles except for playfield
2012-10-30 23:12:09 +00:00
goyuken
27bcfcff55
oops
2012-10-30 22:41:56 +00:00
goyuken
acc9806d55
2600: add fake mDPC.cs to fix compile.
2012-10-30 22:14:31 +00:00
adelikat
ca86a8dff3
Atari - start DPC mapper (Pitfall 2) - only does the basic bankswitching right now, still needs the 2k display bank and DPC sound chip
2012-10-30 01:33:56 +00:00
pjgat09
dfb45aa99c
A2600: Fixed graphics on games including Enduro and Activision Boxing
2012-10-26 03:44:13 +00:00
pjgat09
bff6ac53d7
A2600: Fixed issue with vsync which caused flashing in Pleaides and Enduro
2012-10-26 01:50:08 +00:00
pjgat09
ce930374de
A2600: Added very basic paddle support. Changing a hard coded value while debugging the emulator allows you to move the paddle.
2012-10-24 03:30:02 +00:00
adelikat
9a1cbbb34c
Atari - attempt the 3E mapper, seems broken
2012-10-20 01:51:38 +00:00
adelikat
4f045eb20d
Atari - a stab at implementing mapper m4A50, don't work, oh well, the mapper is garbage and overly complicated, and can't really exist
2012-10-20 00:14:28 +00:00
adelikat
90a288afeb
Implement X07 mapper
2012-10-19 23:31:42 +00:00
adelikat
162932797b
Atari - make 4Pak use the F6 mapper (header wants 4IN1 which I couldn't find any info on). F6 makes it playable it seems.
2012-10-19 21:33:23 +00:00
adelikat
563065d054
AtariHawk - fixes to the E7 mapper, still broken, don't know why, tired of looking at it
2012-10-19 00:13:39 +00:00
adelikat
00934939b0
AtariHawk - implement mapper 3F (including support of 512kb for homebrew)
2012-10-18 22:22:09 +00:00
adelikat
826419a0a3
AtariHawk - don't flag a frame as lag if the control switches are being read
2012-10-18 19:45:44 +00:00
goyuken
556d428406
atari: fix mapper F0 (megaboy). game appears to be playable
2012-10-15 15:17:20 +00:00
goyuken
591857ad0f
atari2600: show what mapper is in use in romstatusdetails
2012-10-15 15:13:32 +00:00
adelikat
f7c6659b76
Atari - Mapper E7 - small fix, the games still don't work but it may or may not be this mapper, need to look into it more
2012-10-15 14:29:13 +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
19e5325afa
DCFilter: allow variable filterwidth. 2600 tia: use a rather aggressive (~172hz cutoff) dc filter. this coefficient is reasonably close to actual hardware behavior.
2012-10-10 00:56:48 +00:00
goyuken
ac86041b94
2600 tia: octave up
2012-10-10 00:24:15 +00:00
goyuken
494f1bdbb5
diced up TIA audio into tiny bits. GHOSTBUSTERS!!!! also, i have no idea what i'm doing
2012-10-10 00:16:38 +00:00
goyuken
8cb8879212
implement some more audio stuff in 2600 tia. many things still undone
2012-10-08 23:30:17 +00:00
goyuken
b545d79fb6
lua: add emu.on_snoop()
2012-10-06 13:34:04 +00:00
goyuken
35013f07e8
2600: stop emulator from hanging, consuming all ram, and then crashing in some situations
2012-09-22 19:47: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