Commit Graph

454 Commits

Author SHA1 Message Date
goyuken fd5b7263ea NES - MMC5 - head off some possible peek nondeterminism problems before they occur 2014-04-30 20:32:13 +00:00
goyuken 9909b972fb NES: fix nondeterminism in tracelogger when execution passes over $2007 (or mirrors) 2014-04-30 19:43:55 +00:00
goyuken ccd5782909 gambatte: add the new drift trackers (that ensure constant framerate) to savestate 2014-04-30 17:36:35 +00:00
zeromus 3880f9059c fix gambatte sound (misuse of blipbuffer) 2014-04-30 03:46:37 +00:00
adelikat 7d09468d7a 6502 - disassembling should be peeking not reading, there's still some unsafe peeking going on with NES trace logging though 2014-04-30 01:16:04 +00:00
adelikat fea60dfbbe Gameboy - fixed frame timing but broke sound 2014-04-29 23:31:25 +00:00
adelikat 4269098e8a Gambatte core experimental change to the definition of a frame. gambatte runs the number of cycles it feels like even when you tell it. So track the difference between the desired amount of actual run and adjust the next frame. This way, in thoery it should average out to the desired 35112 cycles per frame. Also track the cycle count and expose it for future api to use 2014-04-28 16:02:11 +00:00
adelikat 3901fb640b more icons, don't show one if there isn't oen 2014-04-25 23:17:10 +00:00
adelikat 51be257486 core status bar icon - add yabause and bsnes icons 2014-04-25 21:41:34 +00:00
zeromus 49d8f6c5b9 remove savestate loading hacks for movie header skipping 2014-04-25 02:21:45 +00:00
adelikat 8c0526b90f Quicknes - clip top and bottom true by default 2014-04-25 01:22:22 +00:00
adelikat de1cb218a6 Add more info to IEmulator CoreAttributes, add status bar icon that gives the name of the current core with a tooltip with additional info, put bizhawk icon on "in house" cores, and the icon of the ported emulator on ported cores. Still todo: icons for ported cores other than quicknes 2014-04-25 01:19:57 +00:00
adelikat c74019a54d Add a CoreAttributes class with a CoreName field, and apply it to all cores, when recording a new movie, add a core header line that captures this name 2014-04-22 00:38:59 +00:00
zeromus 06ffa9601c work around issue in mupen core which was sort of wrecking subsequent GL work in the frontend 2014-04-20 01:44:06 +00:00
adelikat 54203c00b9 Atari 2600 - Debugger - add trace logging, and show some stats: scanline, vsync, vblank 2014-04-20 01:19:33 +00:00
adelikat a61ff53d9c Change IEmulator.GetCpuFlagsAndRegisters() to a Dictionary, fix a warning, throw NotImplemented exceptions in cores that don't implement this method rather than returning an empty list. Start Debugger UI User Controls 2014-04-19 22:23:13 +00:00
adelikat 1669fd7755 Start an Atari 2600 debugger dialog 2014-04-19 19:01:13 +00:00
adelikat dba0d25a5c Atari 2600 - some progress on the AR mapper (Super charger), but still doesn't work 2014-04-19 16:28:03 +00:00
goyuken 53d3abb4f6 NES: Zapper: fix up the light detection formula a bit. the real thing is hopelessly dependent on a bazillion analog factors with wide environmental variability... 2014-04-16 21:04:07 +00:00
goyuken 47b1e3ae49 I AM MASTER OVER DOG 2014-04-16 02:11:22 +00:00
adelikat d1e7ed9d91 Atari 2600 - start Supercharger emulation (and mapper AR) 2014-04-16 01:18:38 +00:00
adelikat 285a7241b9 On the Rom Details dialog, if the Rom is unknown and the Core supports a GenerateGameDbEntry() method, show the button. When clicked it will add the Game Db entry to gamedb_user.txt, from which point it will be a known rom to the user. Implement this method on Atari 2600. Still TODO: allow them to pick the status instead of assuming "Good" 2014-04-15 22:10:39 +00:00
zeromus 7adc15d97e work on opengl display manager: optimized codepaths, user retroshader selection, support for importing a textureID from another core; add erase button to lua console; 2014-04-15 21:46:18 +00:00
adelikat 2cbb914b9e silly formatting fix from last commit 2014-04-13 18:30:41 +00:00
adelikat 7a6994eb80 Atari 2600 - some progress on mapper 4A50, but it still doesn't work 2014-04-13 18:09:29 +00:00
goyuken 078599adce PCE: fix CDL loading 2014-04-13 16:30:15 +00:00
adelikat 7f37535cd5 PCE Icon for PCE tool dialogs 2014-04-13 00:09:16 +00:00
adelikat 3f3f607e60 Atari 2600 - some ground work for the AR mapper, doesn't yet do anything 2014-04-12 17:52:49 +00:00
adelikat ccae8ce914 Atari - failed attempt to implement mapper CM (Compumate) 2014-04-12 16:36:30 +00:00
adelikat 4f65d78335 Atari 2600 - some ground work for DPC+, but still not implemented 2014-04-12 04:11:52 +00:00
adelikat a1cb4b151e Atari 2600 - implement mapper FE 2014-04-12 03:48:18 +00:00
adelikat 50c8e05d65 Atari 2600 - Boulder Dash Intro Tune demo apparently doesn't run on 3E, it runs on 4K so change the gamedb entry, a fix to 3E. Given that no game actually works that is written for this mapper, I'm calling this one. 2014-04-12 02:54:17 +00:00
adelikat a329ef846d Atari 2600 - fix mapper E7 for games that used ram (Burger Time, He-Man) 2014-04-11 22:00:16 +00:00
goyuken 5f66376f82 implement caitsith6502's mapper 30 support patch (with a few minor cleanups). fixes issue 153 2014-04-11 15:01:22 +00:00
adelikat c4b6d8656f Atari 2600 - cart ram for mapper E7 2014-04-11 14:14:46 +00:00
adelikat 74cc3aad14 Atari 2600 - implement the Cart Ram memory domain 2014-04-11 01:31:10 +00:00
adelikat 2200b05dc2 Atari 2600 - DPC memory domain (added when using the DPC mapper) 2014-04-11 01:05:50 +00:00
adelikat c16e469e22 Atari 2600 - DPC - do savestates, reset, disposing, and some small todos 2014-04-10 12:46:45 +00:00
beirich 860483934f 2600: 'cycle accurate' audio, fix pitfall2 music 2014-04-10 03:30:46 +00:00
goyuken 29475fb24d nes: misc blah 2014-04-09 22:23:19 +00:00
goyuken 8c7b1da678 NES: fix two regressions from previous commit; one broke all UNIF, and one broke some sachen boards 2014-04-09 19:39:04 +00:00
goyuken 58079850ae NES -- rework autodetection code in preparation for iNES 2.0 support. this commit likely breaks some things; exhaustive testing to come 2014-04-09 18:13:19 +00:00
adelikat 2834e80dfa Atari 2600 - implement SB mapper (Super banking) 2014-04-09 02:17:45 +00:00
adelikat 37139822ac Atari 2600 - slight fix to m3F, attempt to fix 3E, the mapper is still broken, I guess, the only Roms that use it are a Boulder Dash wip that is broken, and a Boulder Dash Intro Tune that seems to fail. 2014-04-09 01:57:45 +00:00
adelikat 296ce8fcfc oops 2014-04-08 00:57:56 +00:00
adelikat 5407d752b1 Atari 2600 - DPC mapper - clean up elapsed cycle monitoring, results now match up with stella at least 2014-04-08 00:24:28 +00:00
zeromus de89e38d7a flush more frequently in PCE savestate memorywriter code 2014-04-08 00:22:42 +00:00
adelikat 703f1a3355 Atari 2600 - Fix some warnings 2014-04-07 22:06:38 +00:00
beirich 8363d66f25 PCE: convert states to Serializer implementation 2014-04-07 04:53:18 +00:00
beirich 6ca5768a31 SMS/Coleco, refactor to remove PostLoadState() calls 2014-04-07 03:09:44 +00:00
adelikat ac27f4451c Atari 2600 - major progress on the DPC mapper, Pitfall II is now playable, but the mapper sound channel is still quite bad, also lacks things like savestate support 2014-04-07 01:33:45 +00:00
adelikat 0a22275b59 Oops 2014-04-06 23:30:45 +00:00
adelikat 391be49081 Atari 2600 - support multi-cart mappers, toggling games is done via Hard Reset 2014-04-06 23:25:59 +00:00
adelikat 8a239b53bc Atari 2600 - implement hard reset, also fix a few missing Dispose calls in some mappers that utilize ram 2014-04-06 22:40:10 +00:00
adelikat 696affa5be Atari 2600 - a bit mroe reorg 2014-04-05 15:04:03 +00:00
adelikat a230210565 Atari 2600 - another round of cleanup and reorg 2014-04-05 14:57:26 +00:00
adelikat 27daa82464 Atari 2600 - a round of code cleanup and check in some files I neglected to in the past few commits, remove oldTIA.cs 2014-04-05 14:13:05 +00:00
adelikat 43d58e3441 Atari 2600 - Oops, dispose stuff 2014-04-05 02:42:23 +00:00
adelikat a2b2651330 Atari 2600 - Implement mapper FA2 2014-04-05 00:58:43 +00:00
adelikat cf1a50c195 Atari 2600 - Implement mapper EFSC 2014-04-05 00:35:08 +00:00
adelikat 842645b9ab Atari 2600 - oops, fix a bug in mapper heuristics 2014-04-05 00:31:13 +00:00
adelikat 2d65937440 Atari 2600 - implement mapper F4SC 2014-04-05 00:03:45 +00:00
adelikat 3d1e6ca830 Atari 2600 - implement mapper F6SC, and slight fix to F8SC (uncomment read of write port emulation) 2014-04-04 23:49:03 +00:00
adelikat d79067c33c Atari 2600 - implement mapper F8SC. Fix a potential crash in mappers AR and FA 2014-04-04 21:16:43 +00:00
adelikat af0cd39742 Atari 2600 - add in unimplemented mappers and throw not implemented exceptions. Throw these on a 4IN1 and F8SC instead of wrongly using F8. Implement heuristics for Rom detection when rom isn't found in gamedb. Heuristics logic based on Stella findings. 2014-04-04 19:46:41 +00:00
adelikat 58732cf627 Atari 2600 - implement homebrew mapper 0840 2014-04-03 21:25:02 +00:00
adelikat a946beb40f oops #2 2014-04-03 21:02:27 +00:00
adelikat 3bfa5d7192 oops 2014-04-03 20:09:55 +00:00
adelikat 03a2de19f1 remove unused mapper file, not sure what this was ever supposed to be, or how it managed to survive this long 2014-04-03 20:05:24 +00:00
adelikat 4c13ff6731 Atari 2600 - some formatting and clean up of mapper classes 2014-04-03 19:58:47 +00:00
adelikat 12cdedf299 Atari 2600 - throw NotImplemented exceptions on mappers that exist but haven't been built, and clean up some mapper code 2014-04-02 21:27:14 +00:00
adelikat 5db777afcf Atari 2600 - more mapper defaults based on file size 2014-04-02 21:07:55 +00:00
beirich 13ebf95362 SMS: fix a nullptrexception on Auto region setting and game not in DB. Fix logical error with YM2413 disable setting and game not in db. 2014-03-25 02:12:42 +00:00
goyuken 67fdb46ca2 workaround issue 146 2014-03-23 15:00:56 +00:00
beirich e291b3d5fa SMS: Implement option for Auto Region (export/japan) and Auto Display type (NTSC/PAL) 2014-03-22 05:57:27 +00:00
beirich 77857f0e51 Convert SMS, Coleco, and TI83 to zeromus Serializer-class savestates 2014-03-22 04:46:01 +00:00
beirich 3153587eb3 SMS: fix GG Region detection 2014-03-20 04:19:38 +00:00
goyuken 4c448e6858 NES: speed up new controller routines. significant overall speedup in occasional crappy games that constantly poll the controllers 2014-03-19 23:22:06 +00:00
goyuken aa2fce885e nes: axrom: support 512K oversize 2014-03-19 16:06:51 +00:00
beirich c179fd5fd6 Add OSD message notifier to CoreComm 2014-03-18 03:03:53 +00:00
beirich c825720d33 SMS: Fix Ernie Els Golf GG (has on-cart volatile ram) 2014-03-18 02:23:10 +00:00
beirich 3b66e61c82 SMS: improve rendering accuracy of left-column blanking. I have to say I never thought that would be a thing that needed improved rendering. Also fix issue with when Sprite Overflow fires. 2014-03-18 00:50:08 +00:00
beirich cbc4d925be SMS: apply previous sprite fixes to doublesize renderer 2014-03-17 11:51:00 +00:00
beirich 227007c07d SMS: rework sprite render code, passing several additional VDP tests, and also fixing Fantastic Dizzy. 2014-03-17 05:05:57 +00:00
beirich eeeb71dfe0 SMS: implement VDP/PSG IO port mirroring. passes some additional VDP tests 2014-03-17 03:56:42 +00:00
beirich 8b844bff34 SMS: lots of gamedb things. And initial terebi oekaki mapper emulation; mouse interface still missing. GG gamedb still in flux but, commit before this commit gets any bigger 2014-03-17 03:00:07 +00:00
goyuken 60361d9bd4 support a homemade UxROM multicart board 2014-03-15 19:54:48 +00:00
goyuken b02574829d nes: fix vaus controller 2014-03-14 23:03:03 +00:00
goyuken 65b1397198 NES: fix the famicom 4player adapter 2014-03-14 21:51:40 +00:00
beirich 8496f71812 SMS: Korean mappers work. Fixes Cyborg Z, Dodgeball King, F1 Spirit, Jang Pang III, Knightmare II, Nemesis, Nemesis 2, Penguin Adventure, Sangokushi 3, Street Master, Wonsiin 2014-03-14 04:30:01 +00:00
beirich b1a37724a1 SMS: hook up Export/Japan, NTSC/PAL, BIOS Enable, and US/JP Bios selection 2014-03-13 04:49:39 +00:00
beirich 8daab82463 SMS: Add Export/Japan, NTSC/PAL, Enable BIOS options to SMS menu. Not yet hooked up to core. 2014-03-13 04:15:05 +00:00
beirich 7e77c5a116 SMS: Add "external cart ram" mapper for SG1000, fixes The Castle and Othello. Fortunately, both games are somewhat interesting and playable. SG1000 compat now 100% minus games requiring exotic peripherals 2014-03-06 04:43:36 +00:00
beirich d2d6d00938 SMS: Import improved TMS-mode sprite render code from Colecovision core, fixes Bank Panic (SG1000) intro screen at least 2014-03-06 00:52:27 +00:00
goyuken 4e70f1d6a5 util: eliminate some out of memory problems with hashing large files
gpgx: warn and abort when a too-big file tries to be loaded as a ROM (probably was actually a .bin cd image without the correct .cue)
2014-03-05 18:16:34 +00:00
beirich 60147ffbab SMS: quickfix, only load SMS BIOS on SMS games (not Game Gear or SG1000) 2014-03-05 12:49:27 +00:00
beirich 9a59155177 SMS: initial support for SMS BIOSes. Some future work is pending regarding when to use what bios or no bios. (hooray regions) 2014-03-05 05:09:20 +00:00
goyuken 1b3009d849 also fix stereo audio in dual GB (But in this case we just downmix to mono since we have two gameboys one out each speaker) 2014-03-05 05:06:34 +00:00
goyuken dbe0106814 i did not know that the gameboy had stereo audio 2014-03-05 05:03:13 +00:00
goyuken b2eef124e2 nes: controller infrastructure 2014-03-05 04:08:24 +00:00
beirich d328fd0479 SMS: add option to make 3d games playable. some are actually interesting. sega does what nintendont 2014-03-05 02:20:22 +00:00
goyuken 804fed9375 NES: infrastructure stuff 2014-03-04 23:18:10 +00:00
goyuken 92c934b9a9 nes: squeeze a few more percent out of the nametable viewer 2014-03-01 23:43:04 +00:00
goyuken 1fbc833361 NES: fix some CNROM games. dunno how they got broken? 2014-03-01 16:58:01 +00:00
goyuken f346b604d4 NES: support CAMERICA-GAMEGENIE (partially). you can't actually use it; it's mostly for documentation purposes. 2014-03-01 00:02:53 +00:00
goyuken 65accb7c94 woops 2014-02-28 04:16:54 +00:00
goyuken 3ffde6b88a NES: rework controller infrastructure. zappers and such will be coming soon now 2014-02-28 04:05:36 +00:00
goyuken f1cd0b888f never fear; you'll be able to use your ddr pads to play final fantasy soon enough 2014-02-27 23:34:56 +00:00
goyuken 5227a5a05d more unfinished controller infrastructure 2014-02-27 20:59:10 +00:00
goyuken dcb2098055 NES: fix some peek memory semantics 2014-02-27 20:58:00 +00:00
goyuken f1a81e8462 fix comment 2014-02-27 04:04:55 +00:00
goyuken 8d2b644686 stuff, not done yet 2014-02-27 04:02:58 +00:00
beirich f27dd11389 PCE: Sprite Limit no longer requires Core Reboot. Also, selecting Equalize Volumes no longer makes it impossible to load a HuCard. 2014-02-27 01:00:21 +00:00
beirich e4e04e7b9d SMS: Sprite Limit and Force Stereo Separation no longer require core reboot 2014-02-27 00:28:05 +00:00
goyuken 7a9eb9f6cb change some memory domains to exception out on out of range access instead of silent masking 2014-02-26 20:18:48 +00:00
zeromus d0aec59e55 snes-dont malfunction CARTROM memdomain when having a npow2 romsize 2014-02-26 09:33:38 +00:00
goyuken fa9f1c69b8 nes: fix bug with loading UNIF files with no chr rom.
nes: support mapper "FS304" (UNIF only)
2014-02-26 03:09:54 +00:00
goyuken f6c1c7eba2 NES: PPU Viewer: support MMC5 ExAttr mode 2014-02-25 22:54:25 +00:00
goyuken b1dc3f0f48 nes: mmc5: fix uncharted waters, and presumably some other 16K WRAM games 2014-02-24 01:01:15 +00:00
goyuken cdd19396d4 nes: mmc5: implement NT fill mode. fixes "flying through clouds" level intro to laser invasion 2014-02-23 23:03:44 +00:00
goyuken d7371fcf42 saturnus: support 8mbit/32mbit dram cart as a syncsetting. this inflates your savestate size heavily, of course... 2014-02-23 17:06:24 +00:00
goyuken 17f64cf8f5 nes: MMC5: fix exram extended attribute mode for CHR ROMs larger than 256KiB? hard to tell 2014-02-23 16:22:30 +00:00
goyuken cb898334ac remove debug statement accidentally left in previous commit 2014-02-22 04:01:00 +00:00
goyuken 220dabafb7 NES: fix major league for change in database autism 2014-02-21 23:31:44 +00:00
goyuken 3d7a0e445b gpgx: clean up 32bpp code (no functional changes) 2014-02-21 17:07:09 +00:00
goyuken 6c2aad545f 7800: fix PAL color display 2014-02-21 17:00:06 +00:00
goyuken 9d0e22292d GPGX: show "PAL" flag properly in movie files 2014-02-21 00:30:52 +00:00
goyuken bdbaa0c2d9 PCE CDL: add a new "disassemble" command. this makes a text dump of every opcode that has been mapped out so far, dumping memory domain, address within the domain, and huc6280 disassembly 2014-02-20 22:59:37 +00:00
goyuken c14e4239c4 Genesis VDP display. But not as slick as http://www.youtube.com/watch?v=Tsr-XtuKuSw 2014-02-19 22:26:33 +00:00
goyuken 223116252b NES: sunsoft 1: clarify code, no emulation changes 2014-02-19 16:33:59 +00:00
goyuken 420bbc2c4c NES: pedantic more correct emulation of Fantasy Zone (J). of no interest to anyone. 2014-02-17 18:02:21 +00:00
goyuken 8a34ce3d0b NES: fix Shanghai (J) 2014-02-17 17:46:26 +00:00
goyuken 02762576aa VRC6: support arbitrary romsize through ines identification 2014-02-17 04:15:15 +00:00
zeromus 7b354ef8b9 change NES board analysis to prioritize gamedb. this would allow users to control the operations, instead of nescartdb always taking control. not sure if this is OK, but I think it is. 2014-02-16 06:16:55 +00:00
goyuken 4a2f28d89f nes: vrc6: correct some problems with the most recent commit 2014-02-15 22:12:46 +00:00
beirich 4415673f31 pce: Add internal ability to toggle between unsafe and safe rendering. Not exposed in gui. default unsafe. for debugging purposes. humor me. didnt bother hooking up for SGX 2014-02-15 19:54:00 +00:00
goyuken c333e2f6f3 NES: take a stab at the VRC6 clusterfuck (thanks, obama!). speed loss of about 2%. as far as we know, no game ever used any of these features. 2014-02-15 18:45:52 +00:00
goyuken 7acbcd5995 apply r6102 to SGX. 60% speedup in that arthur game 2014-02-14 22:05:57 +00:00
goyuken af0d5ac59e PCE: 50% overall speedup by reworking BG render inner loop 2014-02-14 20:24:26 +00:00
goyuken 4174751212 SMS VDP Viewer: correct BG size for 192 line mode 2014-02-13 19:10:39 +00:00
goyuken b294c69046 NES: MMC1 code cleanup, no changes 2014-02-13 18:14:01 +00:00
goyuken e5102c1f02 NES: fix speed regression of last commit 2014-02-12 22:25:36 +00:00
goyuken 4ada3b4973 NES: fix tracelogger for first instruction of NMI or IRQ. also make it obviously indicate that an NMI or IRQ has occurred 2014-02-12 22:01:23 +00:00
goyuken 17d6e866a0 pce: refactor CD loading to move bios determination out of RomLoader 2014-02-10 15:26:18 +00:00
goyuken 37469faa8b PCE CDL: prevent loading of an existing CDL that doesn't match the emu's memory map 2014-02-10 05:02:30 +00:00
goyuken 5769e85a6f add ID to bizhawk CDL file, to make it easily distinguishable 2014-02-10 04:20:26 +00:00
goyuken 4961c9e905 add quick dirty text document describing the CDL format for those who don't like C# 2014-02-10 03:54:16 +00:00
goyuken 47ba6ee915 PCE CDL: more on previous commit 2014-02-10 02:49:03 +00:00
goyuken d15c867693 PCE CDL: fix for street fighter 2 and 384K games. arcade card still not supported 2014-02-10 02:47:23 +00:00
goyuken bdbcf689d9 PCE: fix Main Memory domain in SGX mode. Add Cart Battery Ram domain (populous). change domain names in CDL to match memory domains. 2014-02-10 01:21:13 +00:00