adelikat
7ac1da8c96
Set the right order of buttons, and good defaults for controllers and joypads for all consoles
2013-07-29 02:11:00 +00:00
goyuken
e88691152d
NES: remove vs system cruft that never worked and i never followed up on
2013-07-18 14:15:46 +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
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
1c33b92bf1
NES - separate first/last scanline settings for NTSC vs PAL (default of 8,231 NTSC and 0,239 for PAL)
2013-03-25 01:59:34 +00:00
goyuken
70cc20175c
NES: Test out some savestates, and get more crashes... the problem is that a number of mappers use some state variable names that are identical to APU variable names. Fixed by enclosing entire mapper in a section every time. This particular discovery though, suggests to me that 1.3.0 release NES savestates are possibly much more broken than originally suspected, if mapper IRQ information is being stomped out by APU IRQ information.
2012-12-19 15:46:37 +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
210d415e3d
Add Blargg's "blip_buf" as an unmanaged dll. license is LGPL; if I like the way it works, I'll rewrite it with MIT code. Implement it as the new resampling output track for NES. Small (~3%)? speedup. Should sound better, especially when the emulator can't quite keep speed.
2012-12-09 03:13:47 +00:00
goyuken
8de879f132
nes: boring stuff
2012-12-03 15:40:20 +00:00
goyuken
32a1ac645e
fix controller bug? more information about electrical configuration of $4016/$4017 is needed. this is not a good commit.
2012-11-28 21:34:29 +00:00
goyuken
91a71febe5
FDS: connect drive LED front end feature. also fix a bitsy savestate&saveram issue
2012-11-26 21:27:54 +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
1d3de04364
nes: PAL mode functions properly with audio throttle. a proper SyncSoundProvider for NES is still todo
2012-11-16 17:15:55 +00:00
goyuken
ec82f11884
nes: reset board state with hard reset
2012-11-06 03:05:43 +00:00
adelikat
5764b222ab
NES Core - implement Hard Reset, currently crashes though
2012-11-06 00:40:51 +00:00
zeromus
aa161d8910
proper Peek support in NES and 6502X
2012-11-02 19:28:00 +00:00
goyuken
5cbd11c850
NES: add some vs system stuff. not done yet
2012-10-31 21:15:44 +00:00
goyuken
8a67af227e
NES: MMC5: add "ExRAM" as memory domain, for debugging purposes
2012-10-29 17:11:19 +00:00
goyuken
afaa256e37
FDS: SaveRam support. The "saveram" actually stored is a simple collection of (originalside ^ side), more or less. Like any wip beta, don't get too attached to your saves yet. Also misc cleanup.
2012-10-27 14:01:55 +00:00
goyuken
06d131b777
NES: add FDS "currently loaded disk side" as a memorydomain. very rudimentary; for deblugging purposes only.
...
FDS: add disk writing. nothing's saved anywhere at end of session, so not at all permanent. seems to work though.
2012-10-26 21:25:20 +00:00
goyuken
e6058e6bd8
break some stuff. FDS can eject and insert disk sides now
2012-10-26 18:51:08 +00:00
goyuken
57349cdbcb
NES: fix crash when loading UNIF with incomplete gamedb entry
2012-10-24 23:30:46 +00:00
goyuken
cda9a49d5f
FDS : get a little farther before erroring out. still work to do
2012-10-21 19:22:22 +00:00
goyuken
7568ff9437
add FDS skeleton. set up your fds bios with pathconfig, then try to load any file with extension ".fds"
2012-10-21 15:58:24 +00:00
goyuken
58dacf9bcc
NES: add line to rom status log for SHA1 hash when loading UNIF
2012-10-17 00:59:22 +00:00
zeromus
4e079389da
nes-re-sort board list continually with the most recently used one at the top of the list
2012-10-17 00:38:28 +00:00
zeromus
31c7edf8dd
nes-unif support. we will need to explicitly add every UNIF board we support to their respective mappers, because
...
[1] each unif board name carries with it its own unique assumptions about which chips are present.
[2] the unif board names may not be matching bootgod's, which we accept as canonical;
also fix a small memory leak due to nes boards not being disposed during scan process.
2012-10-16 22:27:48 +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
9be282789b
add DisplayType to NES. fixed to NTSC as that's all that our NES core supports at the moment
2012-10-06 16:56:46 +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
adelikat
f8c508b1a3
Add a CpuTracingAvailable flag to CoreOutputComm and set to true for NES, set the Trace Logger menu item to be enabled/disabled based on this flag
2012-09-30 02:07:14 +00:00
zeromus
0b03e6edc8
nes-big improvements to sound, hopefully. fix regressions from last night which killed a lot of music.
2012-09-29 22:19:49 +00:00
zeromus
3898733e8e
nes-fix dmc sfx bug in bt&dd making nonexistent sfx; add emulation of empty databus (to extra joystick bits and reads of nonexistent EXP and WRAM memory ranges.. need to scan other emulator source codes for places to check for use of empty databus); fixes freeze bug in bt&dd. also break savestates, but add a crude version system so we at least have a way to avoid it in the future.
...
bt&dd has a glitch that reads from $6000 when there is no ram installed, and crashes if something too large is returned. I think this chooses a frame for abobo, and you can actually see abobo's sprites glitch for one frame right when the wall finishes getting busted down (the same place where bizhawk was freezing)
2012-09-29 08:39:59 +00:00
goyuken
1301344d71
neshawk: fix: when paused, toggling "clip left and right 8" in nes graphics config caused garbage to show on screen.
2012-09-20 00:53:21 +00:00
zeromus
1760e9593f
nes-probably need to handle the left clipping case too
2012-09-20 00:24:46 +00:00
zeromus
e8487b77d8
change lua drawing to use an offset specified by the emulator core, so that drawing in the nes core can have nes-relative coords instead of multiclient-display-relative coords
2012-09-20 00:22:24 +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
adelikat
35ec42073f
NES - implement address poking on the system bus domain. Anything in the EXP, WRAM, PRG regions is done via the built in cheat system due to being handled by the mappers. This may not be the ideal way to do this but it seems to work well, and I don't know of a more logical way to handle this.
2012-09-01 18:34:31 +00:00
adelikat
9b7404b059
NES - Round 1 of Hook up NES cheats for system bus (i.e. game genie codes now work)
2012-09-01 14:13:36 +00:00
adelikat
70929679d5
NES - don't recalculated the framebuffer constantly, instead only do it once per frame. ~1fps speed up
2012-08-19 20:01:17 +00:00
adelikat
493cff72c4
NES - tiny speedup
2012-08-19 19:21:35 +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
zeromus
ecd58fc96e
nes-protect from syncstates which dont call base.SyncState
2012-07-16 22:06:55 +00:00
zeromus
1d254c3705
nes-fiddle around with board irq signal tracking system. break every NES savestate. fix a desync bug in a bunch of mappers
2012-06-25 06:32:54 +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
zeromus
50d4564e0e
nes-support mapper 116
2012-06-23 08:52:12 +00:00
zeromus
c5a2d0f8f0
nes-fix bug in base board class wram functionality (forgot to add masking to wram size configured in the Cart struct by the derived board Configure method)
2012-05-27 07:42:13 +00:00
zeromus
73fba31c34
nes-add mapper012 (mmc3 variant, for dragon ball z 5). add concept of mmc3 chip revision variants to mmc3 code and game database, and add proper emulation thereof. pass a bunch of mmc3 tests. simplify (to almost nothing) iNES board detection to correspond to new paradigms of virtual board types. your savestates for mmc3 games are invalidated.
2012-04-14 08:28:42 +00:00