Commit Graph

60 Commits

Author SHA1 Message Date
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 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 b545d79fb6 lua: add emu.on_snoop() 2012-10-06 13:34:04 +00:00
zeromus ddac7fcefd nes-dont generate a framebuffer before the ppu runs. generate it after! 2012-10-04 21:51:34 +00:00
adelikat e964dfb1df Trace Logging hooked up for NES core, trace logger tool doesn't display rows for some reason 2012-09-30 02:37:00 +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 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
zeromus 4018452f21 add CoreInputComm.CpuTraceEnable and CoreInputComm.CpuTraceStream, and use it in NES; set those appropriately from a gui component and you can effect user-controlled cpu tracing, if its been setup in the core he's interested in. CoreInputComm doesnt reconstruct between emulator instances, so this may not be the best way of hooking it up, but its serviceable. 2012-09-16 19:38:08 +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 959e56b71a NES - small (probably unnoticeable) speedup to WriteMemory() 2012-08-19 21:09:48 +00:00
adelikat 6473321100 NES - some optimizations to ReadMemory(), ~1fps speed up 2012-08-19 20:38:20 +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 b10769ab4a NES - dsiable NESWatch checks in ReadMemory since this feature is not yet used for anything 2012-08-04 01:54:19 +00:00
adelikat fba6e64c58 NES - some small speed optimizations 2012-08-04 01:47:54 +00:00
andres.delikat 8aea375f9f Mapper 230 - fix mirroring and some prg mapping 2012-07-17 23:05:58 +00:00
andres.delikat d939e66867 NES - Implement a SoftReset function into the board base, Mapper 230 - implement mode switching via soft reset, implement prg mode 0, game select screen now playable, games are not 2012-07-17 15:24:36 +00:00
andres.delikat 0834c63a43 NES - sound config dialog for toggling sound channels 2012-07-12 23:13:22 +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
adelikat 836415455a NES - start an APU softreset function, and clear sequencer_irq, and 0x4015. Still a lot of work to be done for this, but passes nes apu reset tests: 4015_cleared, irq_flag_cleared 2012-04-14 13:51:26 +00:00
zeromus d3321f552f nes accuracy fixes
- pass more apu_test 4-jitter and 6-irq_flag_timing (necessary for timing on other tests)
- pass all cpu interrupt tests
- pass all sprite hit tests
2012-03-25 09:25:27 +00:00
zeromus 0cf6b0bcb7 switch atari 2600 to new 6502 core 2012-03-24 03:45:47 +00:00
zeromus 471b3ffb98 nes-fix soft reset functionality which had got broken when i upgraded the cpu core 2012-03-18 03:46:06 +00:00
zeromus 2b21ca7127 add new, more detailed 6502X cpu core, use it in the nes core as experiment. win almost all the speed back, pass some more tests. 2012-03-15 21:28:37 +00:00
zeromus e973533b48 nes-change oam dma cycles to 513 2012-03-08 04:49:19 +00:00
zeromus ed9de010c0 nes-add some crappy mmc3 multicart mappers 2012-03-06 09:42:11 +00:00
andres.delikat 9dd24ebe3e better NESHawk version number 2011-09-24 17:07:48 +00:00
zeromus e5d46e1adc add vrc6 and reorg sunsoft-2 stuff a bit (its too nonsensical to give name a file after) 2011-09-21 05:11:38 +00:00
andres.delikat 942a9e086a Add a SoundOn flag to the nes core and hook to the sound on/off in sound config. the flag bypasses the apu.run function. the apu read/writes are still going, and seems to be TAS safe to do this 2011-08-27 15:49:16 +00:00
beirich 6f379cee76 remove freeze system; replacement incoming 2011-08-03 02:13:42 +00:00
zeromus 0f2b81796f demo altered freeze system for nes 2011-08-03 01:42:51 +00:00
zeromus f356d5b354 add core scanning system 2011-07-31 19:46:42 +00:00
zeromus dc7f00b862 kill some warnings and add handy util methods 2011-06-20 09:07:38 +00:00
zeromus d1212176a0 [NES] core work for player2 pad 2011-06-18 21:47:20 +00:00
zeromus 368c5266e5 [NES] add loader for FCEUX format palettes and an example of how to set it 2011-06-10 05:31:46 +00:00
zeromus 72100bd304 [NES] ELROM emulation (cv3 and laser invasion tested) and core savestate logic brought up to date. savestates for newer mappers still need reworking. 2011-06-09 19:45:07 +00:00
zeromus 0015cada91 [NES] fix bug in deemph palette that made airwolf invisible and add better tracking and reporting of bad roms (there are bad dumps of airwolf in addition to the game itself being bad) 2011-06-08 06:53:11 +00:00
zeromus d05b81238e [NES] general ppu timing, mmc3, and nt view fixups. 2011-06-07 07:14:34 +00:00
zeromus e6afb2359b [nes] timing and accuracy work. 2011-06-06 10:27:42 +00:00
zeromus 95b5a5d749 [NES] the other 50% of mmc3. now things will mostly work 2011-05-20 18:55:01 +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 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
zeromus d6bf47c4d4 [NES] fix wai xing ding dong 2011-04-19 01:58:12 +00:00
zeromus b89f576fae change some NES savestates to use cleaner code. rename some PRAM and CRAM to WRAM and VRAM. fix multiple save/load hotkey triggerings. dynamically drive file menu shortcut key labels instead of having hardcoded shortcut keys. this needs to be done to the other menus as well, where hardcoded shortcut keys exist. 2011-03-21 06:03:58 +00:00
zeromus 1c52444e04 [NES] here, have a cup of speedup 2011-03-21 01:49:20 +00:00
zeromus 82ad219461 [NES] some little speedups, just to prove that it can be done 2011-03-20 20:42:12 +00:00