Commit Graph

174 Commits

Author SHA1 Message Date
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
andres.delikat a34bf45610 Add islag to savestates (now lagframe alert status updates when loading a state) 2012-07-30 14:42:52 +00:00
zeromus ecd58fc96e nes-protect from syncstates which dont call base.SyncState 2012-07-16 22:06:55 +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 50d4564e0e nes-support mapper 116 2012-06-23 08:52:12 +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
zeromus 73fba31c34 nes-add mapper012 (mmc3 variant, for dragon ball z 5). add concept of mmc3 chip revision variants to mmc3 code and game database, and add proper emulation thereof. pass a bunch of mmc3 tests. simplify (to almost nothing) iNES board detection to correspond to new paradigms of virtual board types. your savestates for mmc3 games are invalidated. 2012-04-14 08:28:42 +00:00
zeromus a78a0fc5db nes-meant to check this in with last gamedb updates 2012-04-09 06:38:28 +00:00
adelikat eeec746010 NES Hawk - remove list of broken games from NES.cs and placed it on http://tasvideos.org/BizHawk/TODO.html instead 2012-04-08 18:07:46 +00:00
zeromus d3321f552f nes accuracy fixes
- pass more apu_test 4-jitter and 6-irq_flag_timing (necessary for timing on other tests)
- pass all cpu interrupt tests
- pass all sprite hit tests
2012-03-25 09:25:27 +00:00
zeromus 9a6d6a63bd improve nes rom detection log, and set svn:executable on some files 2012-03-07 19:14:15 +00:00
zeromus 8e829faa03 nes-restore some more verbose detection logging that had got lost at some point 2012-03-06 08:01:48 +00:00
zeromus 7d263c9a10 nes-support 8KB PRG roms 2012-03-06 07:51:41 +00:00
zeromus fce546dc2b nes-straighten out rendering range off by one issues 2012-03-04 01:41:14 +00:00
brandman211 79d12b9181 -Refactored NES and PCE button orders.
-Realized that FixMnemonic is useless as GetControllersAsMnemonic() + WriteMovie() = Fixed.
-Finished the NES / PCE importers, now without string builders (Thanks zeromus)!
-Converted ImportMMV to this same method.

TODO:
-Decide how's the best way to handle the mnemonic header and implement it. Apparently, anything other than a predefined header and a | is considered as a comment, so I might do something like:

comment Mnemonic format:
[0|UDLRsSBA]
2012-02-19 07:09:24 +00:00
andres.delikat 9dd24ebe3e better NESHawk version number 2011-09-24 17:07:48 +00:00
andres.delikat 35d0ad1b31 NES - implement Clip Left & Right sides option 2011-09-04 01:58:16 +00:00
andres.delikat 721a514d26 NES Graphics Config - Ability to set the first and last scanlines. NES Core - refactor MyVideoProvider to accomodate new settings. Set to Top 8, Bottom 231 by default. 2011-09-04 01:12:12 +00:00
andres.delikat d5247babe8 NES - Update game issues notes, several games are working since this was last checked 2011-09-03 17:13:42 +00:00
zeromus 470b36a20d nes-add OAM memory domain 2011-08-28 19:07:33 +00:00
beirich b27673f26c M-M-M-MONSTER COMMIT! change Game-load api stuff 2011-08-04 03:20:54 +00:00
beirich 6f379cee76 remove freeze system; replacement incoming 2011-08-03 02:13:42 +00:00
zeromus 0f2b81796f demo altered freeze system for nes 2011-08-03 01:42:51 +00:00
andres.delikat 2e68314e01 Movies that start from savestate now supported. Record Movie dialog "Record from Now" option implemented. ResetFrameCounter() added to IEmulator and implemented in all existing cores 2011-07-30 20:49:36 +00:00
zeromus 9628ab3506 hook up nes dump status stuff, and also add a log window that we could use for console output in the near future but for now is just used to show you a detailed rom analysis report 2011-07-10 21:00:28 +00:00
zeromus 0aa234282e phase 1 of fixing up controller logic. tell me how terribly ive broken the movie code. might want to fix it before moving on to phase 2 or decide to revert. 2011-06-27 05:31:46 +00:00
andres.delikat e250355024 NES controller 2 implemented with some bugs 2011-06-19 00:18:02 +00:00
zeromus d1212176a0 [NES] core work for player2 pad 2011-06-18 21:47:20 +00:00
zeromus db2ba34c01 [NES] work on some mappers, make a mapper compatibility list 2011-06-13 08:38:10 +00:00
zeromus 9ee66226df [NES] add SuROM (dragon quest 4) and SoROM/SxROM (other games that are not dragon quest 4) 2011-06-12 00:53:14 +00:00
zeromus c0988feaa3 add CoreInputComm/CoreOutputComm, remove Query system, hook up nes video config options 2011-06-11 22:15:08 +00:00
zeromus 7f4e4916dd [NES] fix triangle channel sound bug and add sound savestates 2011-06-10 05:02:06 +00:00
zeromus 72100bd304 [NES] ELROM emulation (cv3 and laser invasion tested) and core savestate logic brought up to date. savestates for newer mappers still need reworking. 2011-06-09 19:45:07 +00:00
zeromus 9a3a505c54 [NES] add board: Taito_TC0190FMC (mapper 033), and continue improving board analysis logging 2011-06-08 07:32:57 +00:00
zeromus 0015cada91 [NES] fix bug in deemph palette that made airwolf invisible and add better tracking and reporting of bad roms (there are bad dumps of airwolf in addition to the game itself being bad) 2011-06-08 06:53:11 +00:00
zeromus 81b30501a5 [NES] improve board detection diagnostics logging messages, and add board: IREM-G101 (mapper 032) 2011-06-08 06:17:41 +00:00
zeromus 8247fca267 [NES] game recognition tweaks and additions 2011-06-08 01:03:32 +00:00
zeromus 87fa456490 [NES] add iNES detects, fix mmc1 bug, update compatibility list 2011-06-07 22:29:44 +00:00
zeromus 5cadfd228a [NES] add iNES autodetect case for 3dworldrunner 2 2011-06-07 20:52:30 +00:00
zeromus bc1d255ac3 [NES] ppu timing tweak 2011-06-07 20:41:49 +00:00
zeromus d05b81238e [NES] general ppu timing, mmc3, and nt view fixups. 2011-06-07 07:14:34 +00:00
zeromus 00debfe6dd [NES] battletoads beyotch 2011-06-07 01:05:57 +00:00
beirich 9283a9f37d IEmulator now implements IDisposable; client now disposes cores 2011-06-02 02:59:18 +00:00
andres.delikat 1707211d40 NES - Document some emulation issues 2011-05-21 21:54:04 +00:00
zeromus 95b5a5d749 [NES] the other 50% of mmc3. now things will mostly work 2011-05-20 18:55:01 +00:00
andres.delikat 40379f898d Fixed NES mnemonic to match fm2. Fm2 files will now successfully playback. SMB TASes sync on bizhawk 2011-05-08 20:55:37 +00:00
beirich 33c300ff7b good news: movies work! bad news: 1) movies don't work for TI83 yet 2) I broke some NES things, to be fixed in a later commit 2011-05-08 00:06:43 +00:00
andres.delikat becbbc88ea Input display now shows the previous frame input as well. The display currently doesn't look good, but I will improve on that soon. Save last input into NES savestates 2011-05-01 21:19:18 +00:00
andres.delikat f440f843dd Add IsLagFrame bool to IEmulator and implement in all platforms. Make an alert font in Render panel and make input display use it when a frame is a lag frame 2011-05-01 16:04:53 +00:00
andres.delikat 8a924c5bd0 TI83/NES - add lag counter to savestates 2011-05-01 13:54:11 +00:00
andres.delikat 6732cd50ff Make LagCount get/set in IEmulator and refactored emulators. Implemented the Lag counter in the NES core. 2011-05-01 12:59:26 +00:00
andres.delikat 2fa3561c45 Add LagCounter int to IEmulator, returns 0 on every emulator at the moment. Hook up RenderPanel's LagCounter display 2011-05-01 00:20:39 +00:00
zeromus 54f6492fcc 2011-04-18 22:35:40 +00:00
zeromus 8a577a0184 [NES] sort out Mississippi Satsujin Jiken, fix up some board autoconfiguration logic which was a bit broken, support pad_h and pad_v from gamedb 2011-04-18 01:57:22 +00:00
zeromus db28312787 [NES] fully consolidated text/binary serialization, and don't save screen buffer to binary savestates 2011-04-17 22:51:53 +00:00
andres.delikat 5d2fbba8e7 add Toolbox hotkey to hotkey remapping dialog 2011-04-10 16:10:10 +00:00
andres.delikat bfae7804f2 NES - implement freeze system on PPU bus 2011-03-28 16:43:15 +00:00
andres.delikat 8601a863d8 NES - save frame counter into savestates (binary & text) 2011-03-28 16:16:23 +00:00
zeromus b89f576fae change some NES savestates to use cleaner code. rename some PRAM and CRAM to WRAM and VRAM. fix multiple save/load hotkey triggerings. dynamically drive file menu shortcut key labels instead of having hardcoded shortcut keys. this needs to be done to the other menus as well, where hardcoded shortcut keys exist. 2011-03-21 06:03:58 +00:00
zeromus 2fe2aae243 [NES] rewind for the masses 2011-03-21 02:22:10 +00:00
zeromus aded25da64 ... 2011-03-21 01:51:06 +00:00
zeromus 1c52444e04 [NES] here, have a cup of speedup 2011-03-21 01:49:20 +00:00
zeromus 82ad219461 [NES] some little speedups, just to prove that it can be done 2011-03-20 20:42:12 +00:00
zeromus a62b3009ef [NES] fix some annoying sound bugs 2011-03-20 03:32:43 +00:00
zeromus f7bf5bdd17 [NES] fix some interrupt-related bugs to pass more cpu tests, add reset handling, improve iNES header handling some more 2011-03-20 02:12:10 +00:00
zeromus b041d31ab1 [NES] restore iNES header detection 2011-03-19 20:12:06 +00:00
andres.delikat fc845c1778 NES Core - implement GetFreeze/SetFreeze for RAM memory domain 2011-03-19 01:56:52 +00:00
zeromus 3ceb4ea890 [NES] add alpha bits to video provider 2011-03-17 04:21:40 +00:00
zeromus 3c857c1b6d [NES] try a different `watch` architecture and support game genie items with it 2011-03-17 03:51:31 +00:00
zeromus 6c297287e5 add FPS display and make some 5% nes optimizations 2011-03-16 06:30:25 +00:00
zeromus 2b1f72a84a sketch out some thoughts regarding breakpoints 2011-03-16 05:06:21 +00:00
zeromus c32a9e11f0 [NES] add freeze system for sysbus 2011-03-16 03:13:51 +00:00
zeromus aa6e1872df [NES] setup a tiny bit of infrastructure for peeking the ppu instead of reading it, but really it isnt necessary until some of the more sophisticated mappers are made 2011-03-13 19:35:50 +00:00
zeromus 8a0cd52a5a [NES] apu fixes and triangle generator 2011-03-13 08:13:32 +00:00
zeromus ae61bf3926 [NES] setup a little palette performance optimization for debug tools 2011-03-13 02:48:45 +00:00
zeromus 2c62271fc7 [NES] speaking of music being a worthy thing... 2011-03-13 00:34:24 +00:00
zeromus fe51441596 [NES] separate color conversion logic for use in tools 2011-03-08 19:05:52 +00:00
zeromus be69565135 [NES] overhaul database and board configuration system some more and reorg code a bit 2011-03-08 07:25:35 +00:00
zeromus 859eabc6b7 [NES] overhaul to use bootgod's db as primary data source. it can still merge with the gamedb.txt, although I purged it of every unneeded NES record. iNES header parsing needs to be re-added. 2011-03-07 10:41:46 +00:00
andres.delikat 4e8d161ed8 NES - implement CRAM & PRAM memory domains, hooked them properly on SxROM boards. TODO: other boards 2011-03-06 04:40:56 +00:00
andres.delikat ed9930be62 NES Memory domains - Add PRG & CHR Rom 2011-03-06 03:34:13 +00:00
andres.delikat 97ebb20edd Fix NES WRAM for real this time 2011-03-06 03:07:25 +00:00
andres.delikat 951ade9888 Fix NES WRAM memory domain 2011-03-06 03:03:24 +00:00
andres.delikat 2354ac126a NES - add WRAM, System Bus, PPU Bus, and Battery RAM as memory domains 2011-03-06 02:36:49 +00:00
andres.delikat 83a8712d5d Implement main memory domain for NES 2011-03-05 03:03:47 +00:00
andres.delikat e0af256a33 NES - Finish up remaining SxROM boards 2011-03-04 15:01:02 +00:00
andres.delikat c9d0f7a2fb NES - checking in remaining SxROM boards with empty cases, will fill info next 2011-03-04 04:52:50 +00:00
andres.delikat fc8be53da6 NES - SH1ROM, SIROM, and SJROM implemented. SIROM untested (and has a handy assert) due to unkown games. Airforce (SJROM) added to gamedb, but the game is black screen only. 2011-03-04 04:19:49 +00:00
andres.delikat f350e241b8 NES - SHROM implemented, Family Fued loads but doesn't get past the intro screen 2011-03-04 04:00:18 +00:00
andres.delikat 615cf3b52b NES - SFROM & Bubble Bobble 2011-03-04 03:51:46 +00:00
andres.delikat 423ee58852 NES - SC1ROM implemented (same config as SCROM), untested though since I could not find a game that uses it. SEROM implemented & Adventures of Lolo working. 2011-03-04 03:41:39 +00:00
andres.delikat 872a86c91f NES - Implement SBCROM & get Mechanized Attack working 2011-03-04 03:30:54 +00:00
andres.delikat 38396fc02c Fix PRG size of dragon warrior, it now doesn't crash on load (but still is only a black screen). Implemented SBROM & Bug's Bunny's Crazy Castle, the game now works. 2011-03-04 03:16:26 +00:00
andres.delikat 4ccdf269e5 NES - Get SAROM board working & Dragon Warrior in gamedb.txt 2011-03-04 03:02:29 +00:00
zeromus f4ca525343 [NES] fix bugs with boards that specify their own CHR size 2011-03-03 19:56:16 +00:00
andres.delikat 1003ed085b NES - Implement SKROM Board. Zelda II more playable but still bugged, probably something I did wrong. Also added a menu item to enable/disable Rewind. TODO: Zelda II crashes with rewind enabled. 2011-03-03 17:07:12 +00:00
zeromus 4bfc610a8a [NES] tinker around with board detection and add a UNIF warning message, but due to some severe problems with exception handling, the exceptions which make it to the GUI as messageboxes is seemingly arbitrary, so youll never know. 2011-03-02 06:18:26 +00:00
zeromus a236477c5b [NES] rename NTARAM to CIRAM, and change output to 256x240 instead of 256x256 2011-03-02 04:11:46 +00:00