Commit Graph

538 Commits

Author SHA1 Message Date
goyuken 402508e4e5 mapper218: force vram_size to 0 (ignore whatever is in the broken header) 2012-10-13 16:19:08 +00:00
goyuken db0783f606 support mapper218: Magic Floor (Homebrew) 2012-10-13 15:25:23 +00:00
goyuken 4a87b8462d coontiue mapper 18 implementation. magic john appears to be playable now 2012-10-13 13:40:05 +00:00
goyuken 4510712ada AGCI-50282 \ MAPPER144: Death Race (Unl) (U). this game is a piece of shit 2012-10-13 01:29:59 +00:00
goyuken c1b9293c09 TQROM: writes to chrrom are ignored, instead of attempting to write to incorrect chrram addresses 2012-10-12 01:58:36 +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
zeromus 54810ee6c6 nes-support mapper 101 2012-10-10 18:13:09 +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 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
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 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
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
goyuken bb995c1472 SxROM: fix "Bill & Ted's Excellent Video Game Adventure.nes"
breaks all MMC1 savestates
2012-09-30 01:32:10 +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
zeromus 3095df51c3 nes-fix a missing variable in apu savestates. fixes nothing. 2012-09-28 08:34:02 +00:00
zeromus 079f19a03c nes-i think the 8 sprite limit remover option was already working. however, it looks sync-dangerous, so i addressed that 2012-09-27 06:18:35 +00:00
goyuken b6fd5c6b5f china pokemon ahoy 2012-09-26 20:15:33 +00:00
goyuken 36df8e4aab fix default patch set for VRC7 2012-09-24 17:34:17 +00:00
goyuken c94d5aa9b8 i implemented dwedit's DMC fix as best as i could understand it. 'Fire Hawk (USA) (Unl).nes' no longer has graphical glitches on the intro screen.
audio still sounds wrong, and crash still occurs once you get in game
2012-09-24 14:48:00 +00:00
goyuken 247402dbb3 for fun, find a copy of "vs castlevania" with ines header and load it. watch the pretty colors
TODO: Everything
2012-09-24 01:08:36 +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
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
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
zeromus 88fab46b21 fix error in snes Select and Start button binding (was using the NES bindings due to copy/paste error) 2012-09-16 16:23: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
beirich 90d1d12086 gen: fix some vram corruption issues
general: fix some build warnings
2012-09-09 21:15:20 +00:00
beirich 3ed2261cf9 Delete some unused files
Move Nintendo\Docs folder to Nintendo\NES\Docs
2012-09-09 01:53:28 +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 67822be97c NES - PPU - very minor cleanup 2012-08-23 01:28:33 +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 493cff72c4 NES - tiny speedup 2012-08-19 19:21:35 +00:00
adelikat f84a3709c9 Misc code cleanup 2012-08-12 01:09:30 +00:00
adelikat 1bce6a724d oops, add Mapper197.cs 2012-08-05 22:28:03 +00:00
adelikat 975d449722 AxROM (Mapper 7) - make all AOROM games not emulate bus conflicts, fixes various Wheel of Fortune games, Double Dare, and Jeopardy 2012-08-05 22:02:58 +00:00
adelikat ea8d47bcc0 Start Mapper 197 (based on MMC3) and sort out the use of this vs Mapper 91. 2012-08-05 21:34:00 +00:00
zeromus 6a63f2f197 nes-work on mapper091 a bit, but its still not right 2012-08-05 20:19:07 +00:00
adelikat 77da639dc6 NES - Fix Mapper 50 2012-08-05 19:20:54 +00:00
adelikat 33954ddef7 NES - map MAPPER219 to NROM (fixes a version of 3D Block) 2012-08-04 19:22:49 +00:00
adelikat c0706ed0ac NES - add Mapper 120 (not documented by Disch docs), used by Tobidase Daisakusen (FDS Conversion). Mapper implementation based on FCEUX but game freezes before gameplay starts (plays fine in FCEUX) 2012-08-04 19:02:51 +00:00
adelikat a7b847dbe2 NES - some small easy optimizations to the APU (very small) 2012-08-04 02:41:15 +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 31db5f9d05 NES - better handling of bus conflicts for AOROM board, fixes Wheel of Fortune 2012-08-03 14:12:04 +00:00
adelikat 70f07346b1 NES - start VRC6 sound, currently sounds terrible 2012-08-03 02:08:42 +00:00
andres.delikat 4754889131 NES - mapper 231 - optimize the ReadPRG() method 2012-08-02 21:05:15 +00:00
adelikat accd643fde NES - progress on mappers 90 & 209 2012-08-01 02:55:01 +00:00
andres.delikat eeb0171eda Start mapper 90/209 2012-07-31 22:04:45 +00:00
adelikat a5262488c7 NES - fix mapper 96 prg mapping. These games are working as well as can be tested without better peripheral support, so I'm considering this mapper complete. 2012-07-31 03:07:38 +00:00
adelikat 4930979940 NES - progress on mapper 96, Oeka Kids - Anpanman no Hiragana Daisuki seems to play (but I can't get passed the title screen without Oeka Kids tablet emulation). Oeka Kids - Anpanman to Oekaki Shiyou!! fails to load (suggesting a PRG mapping problem?) 2012-07-31 02:58:59 +00:00
adelikat c04b750d6a Finish mapper 245 2012-07-31 01:01:15 +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
adelikat 59ba7efdaf NES - start mapper 18 2012-07-29 22:40:57 +00:00
adelikat 31843f3e3a NES - mappers 74, 192, 194 - set VRAM sizes when mapper object is created, this removes the need to set vram in the gamedb. 2012-07-29 18:43:21 +00:00
adelikat d4ac95bd30 NES - implement mappers 74 and 194. Added gamedb entries for the games I could find that correspond to these mappers 2012-07-29 18:35:24 +00:00
adelikat 71865576a7 NES - finish mapper 192 2012-07-29 18:12:37 +00:00
adelikat 7cbee7bde4 NES - mapper 74 - implemented chr-ram behavior, however, it does not work (chinese characters still missing in dialogs, but this checkin causes no regressions) 2012-07-29 17:55:45 +00:00
adelikat 047ed975d1 NES - implement mapper 234 2012-07-29 03:42:05 +00:00
adelikat c555e1df40 NES - mapper 52 complete 2012-07-28 18:53:26 +00:00
adelikat 9e96eb9ddc NES - start mapper 52 2012-07-28 18:14:04 +00:00
adelikat 1fb7d9a8a6 NES - Mapper 45 - oops, add lock_regs flag to savestates 2012-07-28 15:42:57 +00:00
adelikat 678e60815e NES - Mapper 50 - hook up IRQ logic? 2012-07-28 13:19:12 +00:00
adelikat 8d45516811 NES - mapper 50 - fix mirroring 2012-07-28 12:35:51 +00:00
adelikat 5d521a5132 NES - mapper 50 - some fixes, almost complete 2012-07-28 03:37:06 +00:00
adelikat 7805c460d0 NES - start mapper 50, but it doesn't work 2012-07-28 03:11:39 +00:00
adelikat 10c71da526 NES - implement mapper 45 2012-07-28 01:29:06 +00:00
adelikat 524bc29b43 NES - remove some console logging spam on mapper 49 2012-07-28 01:02:16 +00:00
adelikat 9ee133866d NES - complete mapper 205, slight fix to mapper 91 (still not working) 2012-07-27 02:14:18 +00:00
andres.delikat f72905f602 NES - start mapper 96 (prg mapping working) 2012-07-24 14:32:09 +00:00
adelikat d774e49cd8 NES - Mapper 245 - do chr-ram logic. The 3 games I found correctly labeled as 245 (Yin He Shi Dai, DQ7, Hyrule Fantasy) all fail to run properly in this implementation, and FCEUX. 2012-07-24 00:12:40 +00:00
andres.delikat b08c2861a4 NES - start mapper 245 prg mapping working (possibly) 2012-07-23 22:15:22 +00:00
adelikat ed16f40529 oops, forgot to add Mapper205.cs 2012-07-22 20:11:55 +00:00
adelikat b089f2996c NES - decently support mappers 74 and 192 (games play fine other than missing characters in text boxes)) 2012-07-22 16:57:44 +00:00
adelikat 91be138920 NES - fixes to mapper 91, still fails 2012-07-22 15:35:19 +00:00
adelikat f85b6a017b NES - checkin start of mapper 91 2012-07-22 01:02:18 +00:00
adelikat 225079a843 NES - implement board MLT-ACTION52 (Mapper 228) for both Action-52 and Cheetahmen II 2012-07-21 20:40:10 +00:00
zeromus e66e936567 nes-fix mapper 061 2012-07-21 19:45:16 +00:00
adelikat b8a16f93fa Implement mapper 243 2012-07-21 19:23:05 +00:00
adelikat f16a44d4e6 Start Mapper 243 2012-07-21 18:54:12 +00:00
adelikat 8aeb313381 Fixes to mapper 164, Final Fantasy V has a broken title screen but otherwise playable. Implemented based on Disch's original notes and so not quite complete. 2012-07-21 18:31:41 +00:00
adelikat 544410b4d8 Fix mapper 154 (Devil Man) 2012-07-21 17:51:52 +00:00
adelikat 86e14410b7 NES - mapper 225 finished 2012-07-21 17:19:59 +00:00
andres.delikat 5f4ad218a2 NES - start mapper 225 2012-07-20 21:48:16 +00:00
adelikat 96e7d85122 NES - add mapper 61, chr mapping is off somehow 2012-07-20 03:52:14 +00:00
zeromus dd504a4960 nes-fix mapper057 2012-07-20 03:19:19 +00:00
adelikat afbde96fe5 NES - fix some chr mapping logic in Mapper 57 2012-07-20 02:57:46 +00:00
andres.delikat 2e71b04de4 Start mapper 57 2012-07-19 18:30:39 +00:00
zeromus 3321c3e2c4 nes-fix mapper226 2012-07-19 18:20:32 +00:00
andres.delikat 77f4eeeac1 NES - implement mapper 58 2012-07-19 16:01:40 +00:00
andres.delikat a9323e0386 NES - Implement mapper 62 2012-07-19 15:51:41 +00:00
andres.delikat 8f95b611a5 BizHawk - implement mapper 201 2012-07-19 15:01:32 +00:00
andres.delikat c256e90a9d NES - add mapper 203, doesn't play the 35-1 properly, but it doesn't run in fceux as well, documentation may be off, or the ROM i used is bad (not a lot of info on good dumps for these types!) 2012-07-19 14:13:45 +00:00
adelikat 876007c502 NES - fixes to mapper 226 2012-07-19 02:56:43 +00:00
adelikat 188716ab7b Start mapper 226 2012-07-18 04:22:41 +00:00
adelikat ecd3a2dd84 NES - add mapper 233 2012-07-18 04:08:37 +00:00
adelikat 803833d04a Fix Mapper 230 2012-07-18 03:00:52 +00:00
adelikat ea60a2c9f8 Mapper 60 - a more respectable bit logic implementation in ReadPRG 2012-07-17 23:58:53 +00:00
adelikat 2174e9938f Implement mapper 60 2012-07-17 23:52:55 +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 fa449a5116 NES - add mapper 230, contra mode is working, still todo: implement mode toggling on soft reset 2012-07-17 14:02:56 +00:00
zeromus 5eaf27e510 nes-fix mapper 231 2012-07-17 06:24:36 +00:00
zeromus 309d6b4e64 nes-fix mapper 200 2012-07-17 06:19:03 +00:00
adelikat bbf5be7d74 NES - add mappers 200 & 231, PRG mapping isn't quite right on either but some games work 2012-07-17 04:06:48 +00:00
adelikat ee5db4cc06 Mapper 112 - Finish implementation of CHR mapping, and misc small cleanups 2012-07-17 02:01:53 +00:00
zeromus ecd58fc96e nes-protect from syncstates which dont call base.SyncState 2012-07-16 22:06:55 +00:00
zeromus 9c2a521c19 nes-fix m112 and some other unnecessary things 2012-07-16 22:01:10 +00:00
andres.delikat ad2e9267e3 NES - Mapper 112 - fix prg bank selection, however, game still fails to run 2012-07-16 21:12:01 +00:00
zeromus cf5c972990 nes-try fixing m207 2012-07-16 03:04:44 +00:00
zeromus 06c44cf040 nes-add NES-JLROM for mr gimmick! (e) - but it doesnt work cos its pal 2012-07-16 02:59:54 +00:00
adelikat 2d89f5485f Implement Mapper 207, Fudou Myouou Den now playable but graphical issues. 2012-07-16 01:51:16 +00:00
adelikat c9128cc78e Start Mappers 154, 112 2012-07-15 23:12:52 +00:00
zeromus 3ae3a52f7a nes-do mapper088 differently 2012-07-15 22:30:25 +00:00
zeromus a33859fc1e nes-fix mapper 088 2012-07-15 22:22:57 +00:00
adelikat f62607dea9 Start mapper 88 2012-07-15 21:45:28 +00:00
zeromus a47c70d0ef nes-fix #12 "Strange "White noise" sound during 1943 (USA) intro" as well as a boatload of aesthetic improvements to make the sound output not so embarassing. no speedups whatsoever though. 2012-07-15 00:09:34 +00:00
zeromus 1f588c451f nes-add broken bisq apu. it probably wont be fixed. but its a lot of work, so there it is. also remove spam in SXROM 2012-07-14 18:43:37 +00:00
andres.delikat 0834c63a43 NES - sound config dialog for toggling sound channels 2012-07-12 23:13:22 +00:00
adelikat 60640acece NES - Implement Mapper 246 2012-07-06 03:44:34 +00:00
zeromus 1eda5f6d63 nes-express m193 differently, maybe more clearly 2012-07-06 03:12:20 +00:00
zeromus 157c145a46 nes-fix m193 2012-07-06 02:29:42 +00:00
adelikat 7a9d037fed NES - Progress on Mapper 193 2012-07-06 01:36:19 +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 7e8752a5b9 nes-sort out some bus conflict flags for CNROM games to fix colorful dragon (unl) (sachen) 2012-06-24 17:39:12 +00:00
zeromus 5b356c5157 nes-support mapper 178 and fix a regression from yesterday that made most roms not loadable 2012-06-23 18:30:27 +00:00
adelikat dcdd98fc03 Fix mapper 116 code so that project compiles 2012-06-23 15:45:58 +00:00
zeromus 50d4564e0e nes-support mapper 116 2012-06-23 08:52:12 +00:00
zeromus 8bf9b92949 nes-support mapper 241 2012-06-20 22:24:56 +00:00
zeromus 6156188676 nes-support m015 2012-06-19 21:23:24 +00:00
adelikat a2a9bfde3c NES - implement mapper 92 2012-06-16 23:34:42 +00:00
zeromus ace86fa321 nes-clarificatoin to mapper 19 and 210 (theyre actually identical) 2012-06-16 16:59:02 +00:00
zeromus 540be07cf2 nes-support mapper 076 2012-06-15 19:55:29 +00:00
zeromus e1152799b4 nes-last commit was broken, fix tlsrom compile issue 2012-06-15 19:28:40 +00:00
zeromus 916066c3f0 nes-mmc3/namcot108 differences have become more clear in the past few months. refactor those mappers (split them apart, theyre not as similar as once thought) to reflect new understandings. no functional improvement from this other than maybe some new bugs, but it will help on some other mappers later 2012-06-15 19:24:06 +00:00
zeromus b240c675ce nes-mapper 72 fixed and misc bookkeeping 2012-06-11 07:59:30 +00:00
zeromus 6462d84ac9 nes-add some docs and clarification and cleanups of the sunsoft mappers 2012-06-11 06:55:34 +00:00
zeromus 3a336b9ef4 nes-mapper 67 2012-06-11 06:32:44 +00:00
zeromus cff7ba6d24 nes-fix lagrange point, including sound 2012-06-07 20:52:49 +00:00
zeromus 45cfc7b036 nes-add mapper 176 and fix savestate of mapper 164 2012-05-27 20:20:27 +00:00
zeromus 82e57988c6 nes-remove newly redundant wram masking from derived board classes (mmc3 and mmc1 affected); separate checkin done for this in case i goofed up 2012-05-27 07:44:29 +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