Commit Graph

746 Commits

Author SHA1 Message Date
goyuken 717ec931f1 snes: disable tracelogger. i'll figure out what i broke after the snes pwrap is done 2012-12-23 18:05:48 +00:00
goyuken 3cc475a64f reverse merge r4180, r4181, r4189 2012-12-23 16:30:00 +00:00
goyuken b7b8a81627 nes: JALECO_JF_19: change behavior so that "Moero!! Pro Yakyuu '88: Kettei Ban" now runs. strangely, this doesn't affect "Moero!! Pro Soccer", which already ran and still does. i'll try not to think about it too hard. 2012-12-21 16:14:38 +00:00
zeromus f1401a16e1 snes-fix new bugs in audio 2012-12-21 16:13:11 +00:00
zeromus 8d7da30681 snes-refactor bsnes bindings to work via external process. should solve all stability problems. there is much sloppy transitionary code still in this commit; we need to smoke out any killer issues with this approach before committing too heavily. speed is close enough to last release, and can still be improved. 2012-12-21 07:23:55 +00:00
zeromus eec37da5b4 nes-fix MMC1 to use less bizarre techniques (it was my first mapper, after all) and magically fix bases loaded II graphics at the same time. check other MMC1 games to see if I broke anything, but it is a pretty trivial mapper. 2012-12-21 07:12:01 +00:00
goyuken 79f5a344e1 nes: axrom: support "ACCLAIM-AOROM" wizards and warriors 3 2012-12-20 01:27:13 +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
goyuken 3a9fa9abb1 nes: vrc7: support ines without crc. in case someone ever makes a vrc7 homebrew. which they won't. 2012-12-18 23:09:33 +00:00
goyuken ff6539d268 nes: related to the last commit, fix mapper 116, mmc5, vrc6 2012-12-18 03:17:10 +00:00
goyuken d479e5661a The robustness update to the Serializer caused a problem when multiple variables with the same string name are saved\loaded in text form. The old system would just read\write them in order; the new one would silently discard all but the last occurrence. The Serializer now throws an exception in these circumstances. To fix individual cores, duplicate usage of variables needs to be enclosed in separate sections. Fixed an occurrence of this in the NES APU, where the two Pulse channels were being confused; fixes sound bugs on loadstate in some games. 2012-12-18 03:03:11 +00:00
goyuken 26abfe4574 nes: apu: add some pulse channel variables to the savestate that weren't in it before. maybe this fixes something? maybe it doesn't. it certainly doesn't fix my problem in driar... 2012-12-18 02:22:40 +00:00
goyuken 0aa5e2a512 NES: try implementing SEEPROM for BANDAI-FGC boards. Seems to work reading, but I can't get far enough into any of the games for writing. Like the rest of the mapper, only works with crc id because I don't know how to positively identify any of this from ines headers. Affected games:
24C01  http://bootgod.dyndns.org:7777/search.php?keywords=BANDAI-LZ93D50%2B24C01&kwtype=pcb
24C02  http://bootgod.dyndns.org:7777/search.php?keywords=BANDAI-LZ93D50%2B24C02&kwtype=pcb
2012-12-17 19:54:45 +00:00
goyuken 461e6c6cea yeah nah, forget that 2012-12-17 01:11:46 +00:00
goyuken 4db8ca7422 abusing public SVN as my own local store 2012-12-17 01:00:52 +00:00
goyuken 0fb5be2420 NES: FDS: audit and clean up audio module. in the process, fix a few bugs; opening to Metroid sounds correct now 2012-12-15 16:51:04 +00:00
goyuken a9bf3cf58a nes: apu: implement "better" mixing scheme (as recommended by nesdev) in the hope of passing some apu_mixer tests. no change in any of the tests, so change backed out (committed as comments only). from what i understand, it's just as likely that the tests are failing to small channel timing problems as mixer problems. 2012-12-14 22:29:27 +00:00
goyuken bab873fa13 mmc5: fix bug in pcm audio that i didn't even know about because nothing ever uses it at all. sunsoft 5b: implement audio. affects Gimmick(J). note that the audio emulation is rather incomplete. 2012-12-14 21:06:58 +00:00
goyuken c90d2dcd56 nes: MMC5: change prg ram behavior to mask out of range banks. seems to fix Shin 4 Nin Uchi Mahjong: Yakuman Tengoku (新4人打ちマージャン 役満天国). i have no idea what's actually going on 2012-12-14 19:46:01 +00:00
goyuken a4f3c2a7de NES: ExROM: Support "HVC-EKROM". Fixes good dumps of:
Just Breed (ジャストブリード)
Royal Blood (ロイヤルブラッド)
Shin 4 Nin Uchi Mahjong: Yakuman Tengoku (新4人打ちマージャン 役満天国)
2012-12-14 19:35:43 +00:00
goyuken 6ca1886933 MMC5: audio. PCM is untested because i don't know of anything at all that actually uses it. 2012-12-14 18:41:16 +00:00
goyuken 37e2dfbc9a nes: namco 163: make audio somewhat louder, based on listening to a few cart recordings. still softer than fceux 2012-12-14 18:38:13 +00:00
goyuken 4e0796814d VRC6 audio: restructure to send deltas directly to the NES apu, simplifying some things. This would be pointless masturbation by itself, but this method will also lead to easier emulation of MMC5 audio. 2012-12-14 15:17:14 +00:00
goyuken 43396d4b39 garbodev disconnected and moved to attic/ 2012-12-10 20:24:21 +00:00
goyuken 4784ab2006 garbodev: fix up all problems in the IEmulator sound binding. what you hear now, is what garbodev ACTUALLY SOUNDS LIKE. wow. 2012-12-10 20:11:10 +00:00
goyuken 4834f40f6c play around with garbodev core. probably worse than meteor, in general. managed. small compile-time change in MainForm.cs is needed to switch between the two. garbodev source files don't have any license on them at all, so 99.99% chance that this will be axed. why did i do it? 2012-12-10 19:32:18 +00:00
goyuken c3a74edd7f VRC6 sound: cleanup, implement $9003 2012-12-10 16:09:49 +00:00
goyuken 5590898c46 VRC6: fish crash bug on loading non-VRC6 games in some cases (caused by recent commit) 2012-12-10 02:41:54 +00:00
goyuken fd304e6cb4 fix regression in gameboy from corecomm merge 2012-12-10 01:33:09 +00:00
goyuken 49f16bcb20 nes: vrc6: new audio implementation. sounds awesome 2012-12-10 01:13:12 +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 6ef2913ed8 WHAT
no, it doesn't fix anything
2012-12-09 23:05:31 +00:00
goyuken 4a673e614b nes: apu: remove unbiasing from apu core. blip_buf already handles a dc bias removal internally, and keeping all of the values to the mixer in their original forms is simpler code and probably reflects the underlying hardware more accurately. should sound about the same as before. 2012-12-09 20:39:29 +00:00
goyuken b9f37d7ed8 dcfilter: more correct algorithm. doesn't sound any different. speed unchanged. 2012-12-09 20:02:43 +00:00
goyuken 34a6248606 nes: FDS: use blargg's blip_buf. there are still problems with the audio channel though... 2012-12-09 17:07:34 +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 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 9b40792553 nes apu: add PAL numbers for NoiseUnit 2012-12-03 19:55:14 +00:00
goyuken e513eb7cf7 nes: implement NROM-368. doesn't implement any of the other variants like CNROM-368. supports both 48k and 64k modes 2012-12-03 19:05:24 +00:00
zeromus aaf06d76d3 snesgfxdebugger-add BG scroll regs 2012-12-03 18:59:08 +00:00
zeromus 3398aefc7a snesgfxdebugger-add in-place sprite viewing mode 2012-12-03 17:57:19 +00:00
goyuken 8de879f132 nes: boring stuff 2012-12-03 15:40:20 +00:00
goyuken ae963b5443 nes: fix PAL DMC frequencies 2012-12-03 15:01:04 +00:00
zeromus 522bcd844c snesgfxdebugger-obj properties display 2012-12-03 07:50:23 +00:00
goyuken e24d1efbd4 snes: cpu tracelogging. <1% extra overhead incurred when the tracer is not active. 2012-12-03 01:48:18 +00:00
zeromus 3dd1c5c493 snesgfxdebugger-fix a bunch of bugs and half-baked things. no new features. (part 3 of N) 2012-12-02 23:58:20 +00:00
goyuken 451f786660 snes: fix crash with rewind enabled in tales of phantasia. the problem seems to be that during runtosave(), the smp hits a wait opcode (0xff), which it can't get out of. with this fix, the emulator no longer crashes, but the emulated game does crash. more research is needed. 2012-12-02 18:32:33 +00:00
zeromus e960989034 snesgfxdebugger-fix a bunch of bugs and half-baked things. no new features. (part 2 of N) 2012-12-02 08:00:59 +00:00
zeromus 8834d3dd5c snesgfxdebugger-fix a bunch of bugs and half-baked things. no new features. 2012-12-02 02:51:30 +00:00
zeromus db37a6f64f snes-reset the libsnes core (with whatever serious re-initialization logic we've currently written in libsnes) every time loadstate occurs; and add memsetting to that re-initialization logic, under the theory that if there is a savestate nondeterminism due to fundamental serialization bugs, at least loadstates will be deterministically buggy, decreasing the odds that anyone will ever notice them. of course, i would rather increase the odds that we'll notice them to 100%, so we can fix them, instead of just masking them. but i don't make the rules, i just stfu the nags 2012-12-01 06:21:53 +00:00