Commit Graph

1617 Commits

Author SHA1 Message Date
goyuken eae4c0ee81 saturn: sound 2013-05-01 01:46:20 +00:00
goyuken 368bc58d0a saturn: connect to bizhawk's existing DiscSystem code. emu should now properly load the .cue given. the hack that redirects every .cue that is not in a gamedb to saturn is still in place; saturn detection heuristics will be coming 2013-05-01 00:27:36 +00:00
goyuken d2fecaa172 saturn emulator. for the moment, try loading any unknown .cue file. when you do so, the saturn core will attempt to load "D:\encodes\saturnimages\Castlevania SOTN.iso" 2013-04-30 21:28:35 +00:00
pjgat09 7f7b9eac1f m64p: Created a new audio plugin that saves the samples in a buffer for bizhawk to retrieve. Also added some miscellaneous svn:ignores
N64: Hooked up the new audio plugin, but it doesn't sound exactly right.
2013-04-30 03:24:44 +00:00
pjgat09 160de71206 N64: Removed an unneeded dummy variable 2013-04-30 02:24:07 +00:00
pjgat09 8ec6c762bd N64: Set a variable to volatile to fix problems with bizhawk freezing during frame advance. 2013-04-30 02:22:56 +00:00
pjgat09 3bc682a411 m64p: Added VI callback functionality
N64: Made a VI callback function which declares the frame complete every VI, instead of per frame.
2013-04-30 01:50:27 +00:00
pjgat09 2598967d56 m64p: Start the emulator paused
N64: Wait for the emulator to start up before returning from the constructor.
2013-04-30 01:14:07 +00:00
pjgat09 1f7b5a5ce9 N64: Run the m64p core frame by frame. Added a frame callback function to retrieve the framebuffer from the m64p core when it's ready. Added math to convert the m64p framebuffer to bizhawk's formula. 2013-04-30 00:36:54 +00:00
pjgat09 bfc0117237 m64p: Hard coded an ini file location until I can be bothered to work out the config handling in m64p
N64: Loads roms and pops up an SDL window to display them
2013-04-30 00:08:21 +00:00
pjgat09 a4fb43185a N64: Adding a dummy emulator 2013-04-29 01:57:41 +00:00
zeromus df99f36464 support bsnes xml files and super road blaster MSU-1 game 2013-04-24 22:09:11 +00:00
zeromus b482a4af0b make note about how to get msu-1 working 2013-04-24 17:17:25 +00:00
zeromus 45a671ce73 snes-add "always doublesize framebuffer" snes option which makes the logical output of the snes core always sized appropriately for sudden hires-width or interlacing 2013-04-22 22:34:18 +00:00
adelikat c577eb4854 Atari 2600 - DPC Mapper - add in clock cycle counting and some fixes, but still doesn't work, don't know why at this point 2013-04-20 22:09:19 +00:00
adelikat 462e861072 last round of pointless code cleanup 2013-04-16 00:42:57 +00:00
adelikat be2937fdec Code refactoring of Tools files - no functional changes other than some very tiny speedups and null checks 2013-04-14 23:56:45 +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 da80b7117a Oops, Make VS2010 project compile 2013-04-14 20:04:38 +00:00
adelikat e8eeb7f4fa NESHawk - threw .net 4.5's aggressive inline attribute on some hot functions, seems to give me about a 3-5% speedup 2013-04-11 02:04:13 +00:00
adelikat 85571fe0ca Update 2012 project to use .net 4.5 2013-04-11 01:02:47 +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 8d1fcd0b8a snes: movie recording starting from now now supported 2013-03-17 18:11:30 +00:00
goyuken 7d21df6648 GB: fix movie "start from now" (it never worked before). this is a minimalist fix that's designed to not break compatibility with any existing savestates, but is kind of fragile. 2013-03-17 17:15:33 +00:00
adelikat 3e639d65ab Atari 2600 - implement TIA, PIA, and System Bus domains (note that there is no poke ability on the system bus domain at this time) 2013-03-11 01:46:12 +00:00
adelikat 84bc032656 Some warning cleanup 2013-02-24 20:17:12 +00:00
adelikat 0530547f34 NESHawk - CNROM - support ROMS that use MAPPER185 as the header designation and are not in bootgod (specifically Sansuu 1,2,3), and prevent Bird Week from crashing. In all these cases the games still don't work, but at least they don't crash 2013-02-19 02:52:32 +00:00
adelikat 2c4fcd0cb3 NEShawk - Fix savestate loading on mappers 115 and 248 2013-02-19 01:58:13 +00:00
zeromus e88fb73706 nes-initial values for mmc3 registers.. not clear on whether theyre real or not, but folks seem to be depending on them, and fceux does it 2013-02-11 09:09:37 +00:00
zeromus 501c68bb9f nes-make memoryRand track fceux latest 2013-02-11 09:08:54 +00:00
zeromus 9cf0a3f30f snes-add gui option for ring buffer mode. its unclear whether it speeds things up, but its possible that it might, and it was a lot of work, so here it is as a user option. 2013-01-18 05:06:26 +00:00
zeromus 11aef10c2e snes-dont churn through memory so fast when loadstating/rewinding. i think its fragmenting the OS heap pretty badly because it kept reallocating shared memory blocks 2013-01-18 04:46:17 +00:00
zeromus 1b33d1dc9d snes-fix bug where you cant load games lacking save ram 2013-01-14 07:22:36 +00:00
goyuken e911a17a4e nes: vrc6: clean up some comments of left over crud. no actual changes 2013-01-11 19:49:32 +00:00
goyuken a0ea09a226 nes: mapper 117: some sort of vrc7 clone. fixes "Crayon Shin-Chan" (not that one, the other one) 2013-01-09 23:22:40 +00:00
zeromus 66077951c4 snes-fix timing calculations in aviout and movieplay dialog 2013-01-09 23:03:46 +00:00
goyuken 1666febbee NES: savestates now function properly for "SUNSOFT-5B" board, only affects Gimmick (J)? 2013-01-09 16:42:00 +00:00
goyuken 926cf64fe7 dual GB: tweak frame timing. dual GB frame timing closely resembles that of lsnes-gambatte; with more than one console, there's no point trying to precisely sync to the v-timing of just one of them. 2012-12-30 17:38:44 +00:00
goyuken 87a36128e3 dual gb: fix edge case frame boundary timing thingy 2012-12-29 18:55:10 +00:00
goyuken 8715f2bb2a dual gb: memorydomains 2012-12-29 18:06:39 +00:00
goyuken 1cdc51f789 dual gameboy: sound 2012-12-29 17:11:19 +00:00
goyuken 166110c609 gambatte: more linkcable stuff. input isn't working, haven't figured out why yet. note: at the moment, any attempt to load a GB\GBC rom will bring up the dual core. 2012-12-29 15:48:30 +00:00
goyuken 689a5fac6e reverse merge 4237 as it breaks compilation 2012-12-29 14:41:51 +00:00
brandman211 83ec09c960 Added GB(C/A) and A2800 framerates to GetSeconds, fixing the related movie lengths in the PlayMovie dialog. Assigned A7800 to and Coleco to use A2800's NTSC framerate. No clue about PAL for anything. 2012-12-29 09:55:37 +00:00
goyuken 2a7ea6bfb0 libsnes: add comments to snes_input_state() explaining the parameters as i understand them. note that we only actually have 2 controllers at the moment, not 4. 2012-12-29 02:43:00 +00:00
goyuken ab8af9f73e remove some unused junk from last commit 2012-12-29 02:07:01 +00:00
goyuken 63f9752ea2 rough in some stuff for game boy link cable recording. none of it is finished yet 2012-12-29 01:25:06 +00:00
goyuken 714292c77c gambatte: change memory domain check to mod instead of and (because domains can be not power of 2 sizes) 2012-12-27 22:50:34 +00:00
adelikat 9c945a175e Atari 7800 - don't require all 3 bios files to run. But do nag them that they are missing them. 2012-12-27 22:24:42 +00:00
adelikat 06bd1b979a GB - mask peek and poke memory functions, fixes potential exceptions when calling on bogus addresses for that domain 2012-12-27 18:48:12 +00:00
zeromus 2988217d77 snes-fix SGB core which had got a little broken while trying to setup memory domains 2012-12-27 18:47:15 +00:00
zeromus 213f12b5a2 snes-actually turn on that thing i did last night, to see if anyone thinks it improves performance 2012-12-27 18:11:44 +00:00
zeromus 9a778a55fe snes-add a bunch of complicated libsnes communication code. not sure whether it helps. need to gather data. 2012-12-27 07:59:19 +00:00
zeromus 42e473b7a8 snes-fix dll deps in 64bit bsnes 2012-12-26 21:25:39 +00:00
zeromus 0545cb64fa snes-make hex editor faster 2012-12-26 18:25:45 +00:00
zeromus 8a69a4ebe0 switch snes core back to external process. more refined this time. support use of performance core. 2012-12-25 20:36:04 +00:00
goyuken 5f854466ab sound: fudge up some parameters of BufferedAsync. the most noticeable difference is that PAL NES with clock throttle no longer sounds horrible 2012-12-23 20:26:43 +00:00
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
adelikat 76c9a68a2d Intellivision - Hook up controllers to the core 2012-12-22 01:56:14 +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 03f5b3ae96 serializer: add another duplicate check (this time on section names within a single section), and fix 2600 savestates 2012-12-18 20:37:31 +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
brandman211 0b7f68fcb7 -Fixed the calculation for the O Flag...not messing with that bit-math anymore.
-Set the pending cycles for setting Sr1 to 14934 - 3791 instead of adding it. This working makes NO sense in my opinion, and I'm sure it will break as the number of interrupts increases, but for now, it matches up.

The newest issue is reading PSG registers which have not been set. Cool, expecting this to work without doing anything would be silly, so I've gotten somewhere!
2012-12-17 07:17:18 +00:00
brandman211 7ad002d5ce IntelliHawk:
-Cleanup.
-Added "Total Executed Cycles" to the log.
-By observing the aforementioned data, I realized that the docs probably meant to say 14934 instead of 14394.
--By adjusting this...TITLE SCREEN!
--Still, there are definitely discrepancies with the log that imply that I'm far from done.
-Enabled ANDR and XOR because they were executed during the title sequence, though it's hard to tell if it should at this point.
2012-12-17 04:23:59 +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 45660d0f23 7800: rearrange\cleanup Atari7800.cs, and delete TODO comments that are done. 2012-12-16 18:16:50 +00:00
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 0e0359613d mmc5 audio: oops 2012-12-15 15:17:23 +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
goyuken 3bcb00f9b9 vrc6 audio: fix off-by-one in frequency counts 2012-12-14 14:38:39 +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 e31f4380e2 nes: vrc7: change patchset to one recommended by nesdev. i dunno... sounds better? maybe? 2012-12-14 01:36:01 +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