Commit Graph

128 Commits

Author SHA1 Message Date
StapleButter 7ba32ea076 make the ARM clock shift configurable. nothing fancy there, just paving the way for DSi support later. 2018-11-07 18:38:54 +01:00
StapleButter b4165cc0a9 3D: keep the rasterizer from accidentally going out of bounds when given very flat X-major edge slopes.
this, by a fucking shitshow of butterfly effect, ends up fixing #234. technically, the rasterizer was going out of bounds, which, under certain circumstances, caused interpolation to shit itself and generate Z values that were out of range (but still ended up in the zbuffer). sometimes those values ended up negative, which caused these glitches when polygons had to be drawn over those.

about fucking time.
2018-11-04 23:21:58 +01:00
StapleButter 307c26de93
Merge pull request #248 from Dirbaio/master
Two fixes
2018-10-27 14:16:46 +02:00
StapleButter 8b4ba2d8b9 separate SRAM setting coded, I guess 2018-10-24 00:24:36 +02:00
StapleButter f60ac42466 pass savefile name to NDS::LoadROM() instead of having the core generate it. 2018-10-23 21:52:41 +02:00
StapleButter d191af8690 rewrite how structures are stored to savestates (store individual fields, to avoid compatibility issues)
also fixes stability issues when 3D is involved. turns out we were storing raw pointers to vertices. figures

more crapo code to get around that, but atleast it works without asploding now.
2018-10-21 03:16:41 +02:00
StapleButter cbcecc8cdb don't store BIOS in savestates. no point doing so. 2018-10-19 01:05:19 +02:00
StapleButter 20862b7daf aight, wifi done 2018-10-18 03:22:53 +02:00
StapleButter f51e1ec805 I guess that might have malfunctioned 2018-10-18 03:10:17 +02:00
StapleButter 86f5155f72 more procrastinating before actually starting savestatez0ring wifi.
I need to pee
2018-10-18 03:09:03 +02:00
StapleButter 3a54b9178b RTC done. misc shito. 2018-10-18 03:04:39 +02:00
StapleButter cbe5780837 SPI done 2018-10-18 02:54:48 +02:00
StapleButter 7bf62918cd SPU done 2018-10-18 02:45:38 +02:00
StapleButter a2cc7087f7 GPU done 2018-10-18 02:31:01 +02:00
StapleButter 148f4032f1 fix code that would have fucking asploded 2018-10-18 01:38:33 +02:00
StapleButter de91eabf71 savestate shito: fix compile errors.
still far from being finished, so avoid using unless you want to spawn blackholes or some pretty bad shit.
2018-10-18 00:27:55 +02:00
StapleButter 7cbcc6c230 zlarg 2018-09-15 03:41:09 +02:00
StapleButter 60f24a7432 moar progress on it 2018-09-15 03:29:36 +02:00
StapleButter 0bfd019dc0 start implementing actual shito
(also looks like the test bench in libui_sdl/main.cpp snuck in with the copyright update. shit)
2018-09-15 02:47:34 +02:00
StapleButter fea7955675 fixor copyright years. 2018-09-15 02:32:13 +02:00
Dario Nieuwenhuis d721e098eb Make "unknown IO" messages consistent, all including value and PC. 2018-05-24 01:09:40 +02:00
Dario Nieuwenhuis cb79a5dc14 Make Main RAM size configurable in a single place. 2018-05-24 01:09:23 +02:00
StapleButter 81e98b5e12 direct boot: init cart ID from NDSCart::CartID instead of hardcoding it 2018-04-27 19:26:46 +02:00
StapleButter f0bc364210 init AUXSPICNT to 0x8000.
(guess sloppy DLDI drivers expect that)
2018-04-27 00:20:18 +02:00
Dario Nieuwenhuis a2c95f2dc3 Add 32bit IPCSYNC reads and writes. 2018-04-24 22:31:52 +02:00
Zion Nimchuk 52df6be5f8 Load bios, firmware and melonDS.ini from executable or ~/.config/melonds or AppData 2018-01-11 14:38:57 -08:00
StapleButter 981661a36d wifi: implement increment for txheader[4] 2018-01-04 00:10:35 +01:00
StapleButter b5046b9766 comment out some unwanted printf's 2017-12-07 01:04:00 +01:00
StapleButter b96ac8e000 (finally) fix sound
* reset capture position when starting capture
* reorder channel/capture handling
* implement FIFO for channel and capture
2017-11-11 18:46:42 +01:00
StapleButter c3675af538 properly reset IE/IF, fixes some reset issues. 2017-11-09 16:02:37 +01:00
StapleButter ee1da52d77 fail gracefully when ROM loading fails 2017-10-11 00:01:05 +02:00
StapleButter 4781bd5671 fix ARM7 BIOSPROT. not that it matters. 2017-10-02 04:57:23 +02:00
StapleButter dbb174c531 implement 8bit reads to div/sqrt registers.
RaymanDS showed some interest for that, so there we go.
RaymanDS still fucks up.
RaymanDS is a pile of shit.
melonDS is bad at timings.
2017-10-02 04:27:50 +02:00
StapleButter 1975efaeea fix bugs with SPI shutdown 2017-10-01 03:19:39 +02:00
StapleButter ab9800fbac actual joystick input
also sync keyboard input nicely
2017-09-30 20:05:56 +02:00
StapleButter 48cf9eb805 make it a menu option while we're at it 2017-09-21 04:08:03 +02:00
StapleButter 495d0ba12d add support for SPI shutdown, btw 2017-09-21 03:59:12 +02:00
StapleButter e6f5507c9e add some more GPU IO 2017-07-23 15:31:09 +02:00
StapleButter 0df3a29374 * FPS counter displays target framerate
* fix potential hang and out-of-bounds drawing when VCount is modified during drawing
2017-07-21 10:19:56 +02:00
StapleButter bb963c35a4 while we're at it: emulate div/sqrt timings 2017-07-15 19:46:27 +02:00
StapleButter 678ae00e0a support 16-bit reads to the div/sqrt registers 2017-07-05 18:46:19 +02:00
StapleButter 4afac28263 proper display FIFO emulation 2017-06-26 11:02:10 +02:00
StapleButter 39fbc415f6 new save heuristic. atleast Scribblenauts doesn't lose its shit now.
shut up shibs
2017-06-25 17:35:45 +02:00
StapleButter 4ffb217791 add support for 16bit IE reads/writes (fixes #66) 2017-06-24 01:21:09 +02:00
StapleButter c5dbb01aa3 wifi: fix for MP replies.
clean up code.
make packet logging conditional.
2017-06-18 16:26:59 +02:00
StapleButter 581a0954ad wifi: fix IRQ14 emulation. other fixes and attempts. 2017-06-13 01:01:46 +02:00
StapleButter cb65536c22 fix timing issue with ARM7 DMA (occasionally crapoed the 'Nintendo DS' sound when booting the firmware) 2017-06-12 19:00:32 +02:00
StapleButter f749ede319 wifi: cmd timer 2017-06-05 14:10:12 +02:00
StapleButter 9e36cba941 wifi: fix TX start logic (it is possible to write TXREQ then TXLOC) 2017-06-05 01:58:14 +02:00
StapleButter fb1eb43fb4 * bump version number
* implement 32bit reads to keypad registers
* also implement RCNT more properly
2017-06-04 22:34:31 +02:00
StapleButter 9a2e2998e9 salvage socket init code 2017-05-11 19:57:49 +02:00
StapleButter eb7154e426 woops 2017-05-10 02:30:18 +02:00
StapleButter f54f54fb7e add support for writing to VCount. incl. fucked-up display and altering framerate accordingly. 2017-05-10 02:21:02 +02:00
StapleButter bde9e7dfed fill BIOS exception vectors with undef opcode when no BIOSes are found 2017-05-09 04:52:17 +02:00
StapleButter 50d2ffb207 misc. things 2017-05-09 03:54:37 +02:00
StapleButter d4270b0976 wifi: implement RAM access via the fancypants registers. allows Pictochat to proceed, but noone will reply to you. 2017-05-01 19:29:25 +02:00
StapleButter 5de98cd484 add 32bit write to DIVCNT and SQRTCNT 2017-04-28 17:23:18 +02:00
StapleButter ecbcf2172a only trigger cart DMA on the CPU for which the cart interface is enabled.
fixes unstable firmware boot.
2017-04-27 18:45:43 +02:00
StapleButter 5217f4b056 set POSTFLG to 1 upon direct boot. fixes Pokémon White among others. 2017-04-26 16:17:03 +02:00
StapleButter 6707e5bb85 support 16bit access to the DMA fill regs 2017-04-25 16:13:16 +02:00
StapleButter 9eb68c2ede misc optimizations 2017-04-25 01:14:26 +02:00
StapleButter 8fd1124117 implement 8bit reads to the joypad ports 2017-04-24 01:30:30 +02:00
StapleButter 2380c2f4ea hopefully fix the DMA bug without breaking everything this time. 2017-04-13 04:16:57 +02:00
StapleButter c62e160b26 * decal texture blending
* start implementing toon shading
* temp. revert the DMA fix, causes issues
2017-04-12 20:25:54 +02:00
StapleButter 54eeb38d3d make CPU freezes take place immediately. fixes RaymanRR2 backgrounds occasionally getting cut in half. 2017-04-12 17:53:15 +02:00
StapleButter db20d7408e better wifi stub 2017-04-12 16:58:09 +02:00
StapleButter f2622c047b some attempt at actually stubbing out wifi. except it won't fucking work. 2017-04-10 18:47:11 +02:00
StapleButter 28ebd56fb8 * fix bug with 0-line tall windows (would be enabled for the whole screen)
* map some I/O ports
2017-04-09 03:47:47 +02:00
StapleButter a4f436f827 * stub more wifi crap
* louder sound
* misc fixes
2017-04-07 17:37:49 +02:00
StapleButter 8d66beba6b start SPU work 2017-04-06 19:44:34 +02:00
StapleButter bfe22e0b9b allow 16/32 bit writes and reads to the gamecard command registers. 2017-03-31 01:50:01 +02:00
StapleButter 4e7dc60d37 * clean up code
* working-ish run/pause/reset
* proper closing/cleanup
* ability to run BIOS alone
2017-03-29 18:59:20 +02:00
StapleButter 8c059c9953 * more thread-safe UI
* config system base
* FPS counter and limiter
2017-03-23 17:14:48 +01:00
StapleButter 3a89513c93 * more accurate direct boot
* improve touchscreen precision a bit
* proper support for 512KB firmwares
2017-03-21 00:53:04 +01:00
StapleButter 2150240cbd implement some obscure DMA types 2017-03-20 22:18:35 +01:00
StapleButter a56bf5c76c make timers not suck. fixes issues (Worms2 intro FMV plays at the right speed, aging cart tests get further...) 2017-03-20 17:39:42 +01:00
StapleButter 59d107bfb0 make ROM path not be hardcoded. 2017-03-19 19:07:39 +01:00
StapleButter 8a4ed8f41c reorganize repo, move shit around 2017-03-16 23:01:22 +01:00