Commit Graph

581 Commits

Author SHA1 Message Date
nattthebear 6f60eb5efc Create an abstract base class for waterbox cores, and adapt Virtual Boyee to use it. Not sure yet how useful this is... 2017-06-17 10:07:02 -04:00
nattthebear a4c6d04a18 pizza: change internal rendering pipeline to 32 bit colors 2017-06-16 09:20:35 -04:00
nattthebear 04d4880564 pizza: cover your ears 2017-06-16 08:19:03 -04:00
nattthebear dd9d1b2018 pizza: input 2017-06-15 21:38:52 -04:00
nattthebear 8fa903c004 pizza progress: it runs 2017-06-15 19:00:41 -04:00
nattthebear 69ec6b2a73 remove some sound buffers from snes savestates 2017-06-14 18:56:24 -04:00
nattthebear 17cc595ba6 i'd stash all of this but it's less effort to commit 2017-06-14 16:49:42 -04:00
zeromus f7ac0d0b02 update snes9x submodule -> obj layers toggle commit 2017-06-13 21:47:08 -05:00
nattthebear 7d6b4611dc pizza: start removing parts i don't like 2017-06-13 20:21:13 -04:00
nattthebear a82d3bc540 snes9x: shartfox: show 99% of all frames as lag frames, as intended 2017-06-13 20:21:13 -04:00
nattthebear 2eb4205a3b libsnes: remove some palette code that wasn't used by us. not sure what this was for. gets raw snes state size down to 5MB 2017-06-13 19:24:28 -04:00
nattthebear cbbc922cf7 pizza boy at c7bc6ee376028b3766de8d7a02e60ab794841f45 2017-06-13 19:24:28 -04:00
nattthebear 668006fba0 arbitrarily slash the size of most libsnes cothreads significantly, decreasing overall state size from 10MB to 7MB 2017-06-11 20:33:58 -04:00
nattthebear 626de2d7c8 waterbox: add guard pages to libco stacks 2017-06-11 20:10:37 -04:00
nattthebear edbe83bc13 libsnes: savestate uncompressed size 14MB=>10MB (for a game with nothing special) 2017-06-11 15:30:54 -04:00
nattthebear 8cf1e43e70 libsnes: move tile cache out of savestates. saves like 400kB. meh. 2017-06-11 11:28:29 -04:00
nattthebear ee026d0525 libsnes: Cleanup some dead code. Apparently the codebase contained a primitive attempt to implement savestates, but it contained significant bugs and had no use beyond toy projects. 2017-06-11 09:37:47 -04:00
nattthebear 5f2c5b0934 snes core is ready for business, I think 2017-06-10 20:01:07 -04:00
nattthebear 67ff767f95 libsnes: recreate the emu cothread at the end of init, to avoid pointer poison that was breaking xor state consistency. Big todo: all init functionality really needs to happen from the main thread, as there are many syscalls that reenter managed in that code, and reentering managed from a cothread stack is a Bad Thing 2017-06-10 19:51:59 -04:00
nattthebear dde953d612 fix a libco issue that was breaking xorstate consistency 2017-06-10 18:20:58 -04:00
nattthebear ba7543c19a snes waterbox: fix a leaky pointer which was breaking xorstate integrity 2017-06-10 17:19:18 -04:00
nattthebear baf7a7973b snes: do some more savestate prep, including removing the unused cheat system, which cost sixteen megidobites of ram 2017-06-10 15:53:38 -04:00
nattthebear fcbb85a579 snes: move some stuff to sealed_heap 2017-06-10 15:20:06 -04:00
nattthebear f0ec682314 snes runs! sorta. 2017-06-10 14:16:25 -04:00
nattthebear 36be9e9fc7 snes: waterboxification phase 2 2017-06-10 14:16:25 -04:00
nattthebear 9975a05695 snes: waterboxification phase 1 2017-06-10 14:16:24 -04:00
nattthebear a7ef10322e snes: move files to waterbox area 2017-06-10 14:16:24 -04:00
nattthebear d8c19f3787 waterbox libco (not yet tested) 2017-06-09 19:54:20 -04:00
nattthebear 3170f4ac49 add ss.wbx. Saturnus core is now ready for testing 2017-06-09 17:55:34 -04:00
nattthebear 1c46b79bbb saturnus: settings 2017-06-09 16:42:08 -04:00
nattthebear a42631fadc Saturnus: IMemoryDomains. Names match the old yahbooze names when applicable. 2017-06-08 17:15:29 -04:00
nattthebear 51d36f4563 saturnus: move cartridge allocations to special heaps 2017-06-07 20:21:44 -04:00
nattthebear 7d4b6a5209 Saturnus: Simplify BIOS rom loading and move it to alloc_sealed 2017-06-07 19:48:26 -04:00
nattthebear 90d9474530 Saturnus: Lag detection and input callbacks 2017-06-07 18:56:44 -04:00
nattthebear 4d875e0c24 Saturnus: Add CD sanity checks 2017-06-07 17:54:16 -04:00
nattthebear 40680a9d74 Saturnus: Connect reset button, but you need to hold it down for 3 consecutive frames (working as intended). Also, DRIVE LIGHT HOOOOOOOOOOOOOOOOOOOOOOOOO 2017-06-07 17:34:30 -04:00
nattthebear 8bbfa26d1c saturnus: get basic interlace working 2017-06-07 06:43:01 -04:00
nattthebear fd915a5999 saturnus: R/B swap (No, you still can't play games) 2017-06-05 17:33:45 -04:00
nattthebear d7b8464a9b saturnus: start working on controller hook up. there's something wrong with the CD stuff though, and games don't work 2017-06-04 21:14:00 -04:00
nattthebear b9ab41a4da More like Chie SatURNaka 2017-06-04 16:41:11 -04:00
nattthebear f96a7abb94 ngp: connect saveram. due to the way this is implemented in neopop, connecting it greatly increased the size of savestates, which may or may not be worth fixing. 2017-06-03 07:58:14 -04:00
nattthebear 034337c51d start of dngp linkup. It works enough for KOF2 to think a cable is there, but not enough to run anything 2017-06-01 20:44:49 -04:00
nattthebear df0a955621 ngp: memory domains 2017-05-31 16:58:16 -04:00
nattthebear d799624e9c NGP: It works and stuff 2017-05-30 18:36:11 -04:00
nattthebear aab6391b12 virtual boyee: actually fix the color config stuff 2017-05-29 20:34:07 -04:00
nattthebear 3ec7b0252f Exploding your computer NYI https://www.youtube.com/watch?v=dUHYNmNrqoY 2017-05-29 20:21:34 -04:00
nattthebear f75ad4a472 replace snes9x.wbx for a buuug 2017-05-29 19:20:44 -04:00
nattthebear b20354448b vboyee-- somehow the default colors for anaglyph were all wrong 2017-05-29 14:11:35 -04:00
nattthebear 391160ebf9 vboyEE: settings and syncsettings 2017-05-29 13:50:40 -04:00
nattthebear 4ab407bb42 virtual boy: add IInputPollable. Unfortunately, adding one more field to EmulateSpec caused C# to vomit its brains out, so yeah... 2017-05-29 12:16:24 -04:00
nattthebear 2887ba5823 savestates for vb. this includes savestates for mmap_heap. unfortunately, usage of mmap_heap was scrapped as the things going into it were better suited for invisible/sealed. it may be eventually useful 2017-05-29 11:26:38 -04:00
nattthebear fbf7be92d5 VirtualBoyee: Hookup video, input, and sound. 3D Tetris appears to be working, but only the alternate dump of merio tenis works 2017-05-29 08:16:56 -04:00
nattthebear 855ff7deca Start working on a primitive mmap implementation. It's good enough for VirtualBoyee to boot, but undoubtedly has many bugs. 2017-05-28 22:18:01 -04:00
nattthebear a52e9d7dc1 https://www.youtube.com/watch?v=0sKRRY5tQz8 2017-05-28 17:19:07 -04:00
nattthebear 7f7f490b6d The InputCallbackSystem on this Core is now fully operational. https://www.youtube.com/watch?v=g7-tskP0OzI 2017-05-28 14:18:08 -04:00
nattthebear 61aa4f5df3 Connect Snes9x controllers, syncsettings, and regular settings 2017-05-28 10:18:20 -04:00
nattthebear 7ea3755f13 rename gpgx.exe to gpgx.wbx and push some binaries 2017-05-28 07:33:55 -04:00
nattthebear 0cc1abd51b snes9x: savestates 2017-05-28 06:39:11 -04:00
nattthebear ef8264a8b0 waterbox: Add special handling for imports in XorStates. Fix a few other instances where managed pointers were leaking out into XorStates 2017-05-27 20:38:28 -04:00
nattthebear b737959d11 snes9xHawk which is totally not a thing: connect audio 2017-05-27 14:32:12 -04:00
nattthebear 34791d8589 bizinvoker: fix clas being used in place of ref struct 2017-05-27 12:59:57 -04:00
nattthebear 2665510502 Add enough changes so that snes9x now boots. This includes stubs for a bunch of syscalls, a few mmglue changes, and C++ global constructor support 2017-05-27 12:29:05 -04:00
nattthebear 7739b9dc80 rough in some snes9x stuff. not working yet 2017-05-21 17:43:43 -04:00
nattthebear dc6646a020 add snes9x sobmodule 2017-05-21 11:17:22 -04:00
nattthebear fa24f5fc9d GPGX64 works with the new waterbox, or would if I pushed the binaries. Savestates are hosed; TBD 2017-05-20 18:50:01 -04:00
nattthebear a325969963 Work more on waterbox and convert GPGX64 to use the new PERunner. Doesn't work yet. 2017-05-20 17:18:31 -04:00
zeromus 2f405cd01e fix gpgx CDL z80 -> MD cart 2016-04-15 00:10:23 +01:00
zeromus 6f68925a75 fix typo in genesis z80 CDL that made addresses in mirrored z80 ram region crash 2016-04-22 12:34:12 -05:00
nattthebear e294e29202 Commit current gpgx.elf build 2016-04-05 21:29:52 -04:00
nattthebear ad2fbd03f0 Waterbox: a few small libc changes 2016-04-05 21:19:23 -04:00
nattthebear 82baec8e6b Add some random junk to headers to make some things not complain. (You'll get linker errors if you try to use any of it, of course) 2016-03-27 22:00:33 -04:00
nattthebear 5876c60571 gpgx waterbox - dynamically allocate some sega CD memory areas to reduce state size. raw core is now about 800K in normal mode; 2MB in sega CD mode 2016-03-27 12:00:50 -04:00
nattthebear ab16086dfd waterbox gpgx: fix crash on cart sram games 2016-03-26 23:32:48 -04:00
nattthebear a029e60cfc Per spec, if mouthbreather calls longjmp(buf, 0), return 1 instead 2016-03-26 17:14:44 -04:00
nattthebear b4735502a5 gpgx waterbox: fix a few misc bugs in elfrunner, and fix a few misc bugs in the core so that Virtua Racing now works 2016-03-26 14:44:44 -04:00
nattthebear a3a761d028 won't miss that code 2016-03-23 21:37:33 -04:00
nattthebear 92e708d011 gpgx waterbox: move bg_pattern_cache to alloc_invisible 2016-03-23 21:10:18 -04:00
nattthebear 06f9d78452 gpgx: trim savestate size by moving some things to the sealed heap 2016-03-23 20:52:49 -04:00
nattthebear b06908e5d4 gpgx waterbox: get sega cd working 2016-03-23 20:11:47 -04:00
nattthebear 8136aa0f03 Add the basics of multiple memory arenas to elfrunner. With a bit of tweaking, gpgx core states are now 3.5MB (and could get smaller) 2016-03-23 19:45:02 -04:00
nattthebear c857b162d0 Add waterbox folder with the gpgx waterbox experiment. Not useful for much yet 2016-03-22 21:58:52 -04:00