Commit Graph

1179 Commits

Author SHA1 Message Date
goyuken 17d8e21c2d 7800: memory domains 2012-12-16 18:02:39 +00:00
goyuken 17f0f66ed7 7800: remove BufferElement because it annoys me. (Also gains a small speed increase, ~4%?). Remove "Copyright © Microsoft 2012" from the default AssemblyInfo.cs 2012-12-16 16:57:16 +00:00
goyuken f8c9bd98f9 7800: implemented hard reset to simulate pushing the power button on the console. HSC ram is preserved, ROM is preserved, just about everything else is flushed. added "Power" button to connect to this. changed recording mnemonics 2012-12-16 15:15:54 +00:00
goyuken c9c3821632 7800: add lag flag. breaks savestates. this marks our first change to EMU7800.Core 2012-12-16 01:34:02 +00:00
goyuken 042855acac atari 7800: for the two 7800 controller definitions (proline and lightgun), remove the two difficulty switches, and change the name of the "BW" switch to "Pause", to reflect what's actually on the console. other controller definitions not changed because they're used for emu7800 in 2600 mode, which DOES have those buttons 2012-12-15 18:11:54 +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 3cfc57f8a1 7800: ignore 128 byte header, if present 2012-12-15 16:06:35 +00:00
goyuken 2983c23920 atari7800: control hooked up, more or less 2012-12-15 02:36:38 +00:00
goyuken 1895103a9c atari 7800: did controller stuff until i got annoyed 2012-12-15 00:58:55 +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 5986d779e7 SMS: increase size of buffer for public byte[] SaveStateBinary() by 1 byte. also throw an exception if the savestate is smaller than expected. 2012-12-14 16:59:23 +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
adelikat d34368e98d Atari 7800 - hook up input on client side, implement joystick button 2 in controller definition 2012-12-14 02:17:47 +00:00
goyuken 77b1d2e207 delete old 7800 stuff 2012-12-12 19:40:42 +00:00
goyuken 1e40bc9082 move 7800 into separate cootie-solution 2012-12-12 19:39:17 +00:00
goyuken ecfc3da19a baaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 2012-12-12 18:37:40 +00:00
goyuken d205d68b95 move our 7800 code into Bizhawk.Emulation namespace (oops) 2012-12-12 18:17:30 +00:00
goyuken faceb7e18d 7800: clean up some sound-related stuff 2012-12-12 16:24:14 +00:00
goyuken 0636bda89d 7800: savestates 2012-12-12 15:36:17 +00:00
goyuken 7bb1baf2ab the hsc in a 7800 is supposed to be a saverammy thing, so hook it up as such. dunno if it actually works 2012-12-12 03:47:05 +00:00
goyuken f32fc83d96 7800: integrate the existing emu7800 gamedb as a core-private gamedb (not unlike bootgod), and use that to drive decision making. emu7800 should now be able to correctly load 7800PAL and 2600 games. 2012-12-12 03:40:18 +00:00
adelikat fb7873a6a7 Atari 7800 - better use of the Cart object, not a very useful commit though since it is still hardcoding the mapper 2012-12-12 01:59:10 +00:00
goyuken a43ecbf6aa 7800: speed up framebuffer blits, and add audio output 2012-12-12 01:32:58 +00:00
goyuken c22ad34844 7800: you can see stuff that doesn't look retarded now 2012-12-12 00:30:36 +00:00
goyuken da0a8822c9 7800: you can see stuff now 2012-12-12 00:23:01 +00:00
goyuken 821e2e26e3 atari7800: progress 2012-12-11 23:01:01 +00:00
goyuken cc4b683006 7800: change HSC ram size from 4096 bytes to 2048 bytes (i think this is correct), and send logging messages to the log window. doesn't run still. 2012-12-10 21:29:50 +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
goyuken 6412d6d93e gb gpu view: fix bug due to scroll bar hilarity. gba gpu view: implement scanline callbacks 2012-11-30 05:16:37 +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 2803190666 nes: mmc3: add 256K prg option for ACCLAIM-MC-ACC. fixes "Simpsons, The: Bart vs. The World" and "Simpsons, The: Bartman Meets Radioactive Man" 2012-11-28 21:16:35 +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 965c6d8700 gba: add the beginnings of a GPU view. much work is needed, but i like the idea of a single panel with movable widgets (and config-saveable layout, of course), as there is too much information in the case of a GBA to reasonably show it all on a screen. this way the user can set up a "workspace" appropriate for whatever dumping/debugging project is being done. 2012-11-27 19:21:46 +00:00
goyuken 175caf3a53 gba: add under-the-hood support for direct MMIO reading, to be used for something at some point, maybe 2012-11-27 16:44:50 +00:00
zeromus efbdd58839 nes-fix mapper027 based on new understandings from fceumm; fix world hero 2012-11-26 22:08:25 +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
zeromus 7e9d487580 nes-fix m074 and m192 and add You Ling Xing Dong to gamedb to correct mapper from m074->m192. p.s. you ling mi long dong 2012-11-26 21:08:46 +00:00
zeromus 0c58d62762 snesgfxdebugger-layer toggles, more information 2012-11-26 06:30:30 +00:00
goyuken 07ae382ac4 add a\v dump resize hints to gb, gba. other cores should probably get this treatment as well 2012-11-26 02:30:07 +00:00
beirich 2441acd38b PCE-CD: hook up client drive LED api 2012-11-26 02:15:21 +00:00
beirich 0bb30d4918 Coleco: implement TMS mode 3, clean up some debug code 2012-11-26 01:44:17 +00:00
zeromus 57e9619ff6 snes-hookup ui for color palette selection 2012-11-25 20:06:31 +00:00
goyuken d77efde5fc gba: add system bus memory domain 2012-11-25 19:03:13 +00:00
goyuken 769fc5834b fix problem in last commit. also, rename a number of ui references to "AVI Recording" to "A/V Recording" since it isn't particularly about AVI format 2012-11-25 15:51:18 +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
beirich b1ab7bd9f1 coleco: fix issue where sprite priority prevented sprite collision from firing 2012-11-25 02:25:20 +00:00
beirich 0762e235d5 Coleco: fix magnified-sprite render bug 2012-11-25 01:51:42 +00:00
goyuken 366370301f gba: enable savestates. in the process find and fix an absolutely retarded bug with core savestate loading and bios. fuck #define forever. 2012-11-24 21:23:50 +00:00
adelikat 6660ac3e8e SMS - slight fix to how islag is saved into savestates 2012-11-24 14:19:59 +00:00
adelikat f7032a1c33 Coleco - some minor refactoring 2012-11-24 14:17:56 +00:00
goyuken 235d7a9a03 gba: saveram support. not tested too much because controller isn't hooked up yet. (and path config appears to be dumping them in the wrong place). also remove the silly system where the core tracks timing on when to write the saveram file to disk. 2012-11-24 02:25:47 +00:00
goyuken d20970afa7 gba: correct tracelogger address for PC pipelining. note that the disassembly for some branch instructions shows up wrong, making this seem "wrong". but it's right, and the disassembly will be fixed...
core: tracelogger can now show a custom column header.  GBA uses it; all other traceloggers untouched
2012-11-24 00:45:25 +00:00
zeromus 7ff342f907 snesgfxdebugger-preliminary sprite visualizing 2012-11-23 23:44:45 +00:00
goyuken 6d7ae2574d gba: implement tracelogging. also disable _ITERATOR_DEBUG_LEVEL even in debug builds as the disassembler blows it up >< 2012-11-23 16:55:37 +00:00
zeromus 608ebc4a99 snesgfxdebugger-display OBJ tiles 2012-11-23 09:10:18 +00:00
beirich 2382781627 coleco 'noskip' checkin... tested through M's so far 2012-11-23 05:51:16 +00:00
goyuken 32d0b546e0 gba: support hard reset. doesn't work right with saveram because saveram isn't all hooked up anyway yet 2012-11-23 04:28:38 +00:00
beirich f23a86b20c coleco: fix several games with broken input, support controller 2 2012-11-23 04:09:01 +00:00
beirich 1a653190b7 coleco: fix a VDP I/O bug
fix typo in 'skip bios intro' option
2012-11-23 03:10:01 +00:00
beirich 84a4a8544b probably fix TMS9918A alpha channel screenshot thing 2012-11-23 00:36:41 +00:00
adelikat 950d5bce4d ColecoHawk - oops - implemented binary savestates for VDP 2012-11-22 17:00:37 +00:00
zeromus e70a387ffb snesgfxdebugger-add ctrl+c to clipboard capability, and reflect user choice of backdrop color in debugger window 2012-11-22 06:57:01 +00:00
adelikat f26c72df86 Colecohawk - option to skip bios, setting is also saved into movies 2012-11-22 02:01:15 +00:00
adelikat 1cf2529512 SMS/GG/SG-1000 - put islag variable into savestates 2012-11-22 01:01:39 +00:00
adelikat 77f9ef269b Colecohawk - binary savestates implemented (rewind now works) 2012-11-22 00:57:26 +00:00
adelikat 139bbd7ab8 Colecohawk - savestates - oops - text savestates should be working now 2012-11-22 00:49:10 +00:00
goyuken e69307276c gb: implement new CGB color preset "GBA" 2012-11-21 21:09:01 +00:00
goyuken 4ccf2412b4 GB: gambatte saved a thumbnail of the framebuffer to savestates internally, which was only used with some core-internal "UI" stuff that we don't bother with. disable that feature. does not break old savestates. 2012-11-21 13:43:58 +00:00
goyuken 5b3de57fca gba: make core go into zombie mode if libmeteor aborts, instead of crashing. this makes it easy to pick apart failures using the in-program debugging tools (memory view, tracelog once i add it) 2012-11-21 01:21:50 +00:00