Commit Graph

943 Commits

Author SHA1 Message Date
StapleButter 3590d210f3 always apply matrix push/pop/store/restore to the vector matrix stack, even in mode 1. fixes SM64DS lighting. 2017-03-21 12:52:17 +01:00
StapleButter 3dd79d63f1 start 3D rendering at scanline 215. fixes Worms2D. 2017-03-21 11:45:12 +01:00
StapleButter cc86aa57ae fix that bug where NSMB's backgrounds lagged one frame behind 2017-03-21 02:11:49 +01:00
StapleButter 08a634371a fix bug that happened when HDMA got interrupted (or any repeating DMA, for that matter) 2017-03-21 02:05:40 +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 f38bc94011 input, with hardcoded (but not retarded) key mappings.
touchscreen support that doesn't suck.
2017-03-20 00:43:45 +01:00
StapleButter 59d107bfb0 make ROM path not be hardcoded. 2017-03-19 19:07:39 +01:00
StapleButter 5a061bc638 begin work on wxWidgets+SDL interface
Windows crapo ditched
2017-03-19 18:43:01 +01:00
StapleButter 8a4ed8f41c reorganize repo, move shit around 2017-03-16 23:01:22 +01:00
StapleButter 10ca9b6f7f 64-bit build. make library paths not absolute. 2017-03-16 19:47:31 +01:00
StapleButter 0b3d150a71 * support for culling polygons that clip through the far plane
* toon/edge/fog tables and related registers
2017-03-16 16:37:38 +01:00
StapleButter 7f85a10002 move viewport transform to polygon setup 2017-03-16 15:55:18 +01:00
StapleButter 1dc887d0bb fix texcoord bugs. misc shit. 2017-03-16 03:27:59 +01:00
StapleButter ebdc9e5442 * fix missing 3D line
* make lighting calculations accurate
* BLDCNT reading
2017-03-16 00:07:36 +01:00
StapleButter 29944c3c88 fix alphatest. alphablending. 2017-03-15 15:53:36 +01:00
StapleButter 6123ce8147 fixes to matrix stacks. has yet to be checked tho. 2017-03-15 15:02:27 +01:00
StapleButter 4d401422af first attempt at lighting 2017-03-15 14:41:41 +01:00
StapleButter 74f291757a less shitty texture mapping. alpha test, sort of. 2017-03-15 00:10:32 +01:00
StapleButter 671050a7f0 start work on polygon edges and shit 2017-03-13 00:45:26 +01:00
StapleButter 94dced7c41 * vecmatrix read
* implement the missing texture formats
2017-03-07 22:05:38 +01:00
StapleButter c24245c59a mostly fix culling 2017-03-07 21:38:47 +01:00
StapleButter 7799b33dfe horizontal scrolling for 3D layer 2017-03-07 01:36:16 +01:00
StapleButter d95d22837b proper clear-plane support, including bitmap mode 2017-03-07 01:13:00 +01:00
StapleButter 72209c51f9 * perspective-correct Z interpolation
* fix depth buffering. support W-buffer mode.
* 3D/2D blending. doesn't do much yet, but the code is here.
2017-03-06 23:57:04 +01:00
StapleButter ed385ce0f5 fix shitty texture mapping 2017-03-06 19:41:47 +01:00
StapleButter a9cc55ca6d less derpy texture mapping 2017-03-06 18:43:58 +01:00
StapleButter fe31ec297c * direct color textures.
* texture wrap modes.
2017-03-06 18:25:20 +01:00
StapleButter 383093c5ff make NEG update flags correctly (oops).
also misc graphics notes added.
2017-03-06 18:13:57 +01:00
StapleButter 52d866fa17 remove unneeded files. will stop melonDS.depend from polluting commit diffs. 2017-03-04 20:46:58 +01:00
StapleButter 8c7b7e2327 temp. hack preventing evil out-of-bounds write 2017-03-04 15:34:07 +01:00
StapleButter f8770dc8fe don't blend semitransparent sprites with everything 2017-03-04 14:51:48 +01:00
StapleButter b6e12e0c18 * fix a few bugs related to 2D GPU registers (so there are atleast some of the graphics tests that pass)
* less shitty texture mapping (and perspective-correct interpolation in general). extra bonus is that it also takes less divisions.
2017-03-04 14:47:20 +01:00
StapleButter ff4c1c9cf6 support 16-bit writes to rotscale reference point registers 2017-03-04 02:37:39 +01:00
StapleButter a7e7af4b47 fix behavior for rotscale BG reference points 2017-03-04 02:22:58 +01:00
StapleButter 5c3b7b5c30 confirm that 2D brightness-up effect does x=x+(63-x)*factor 2017-03-04 00:17:01 +01:00
StapleButter 2a33a5c480 * fixes to GXFIFO IRQ. refine IRQ support a bit.
* fix potential bug when multiple DMAs are running.
2017-03-03 00:48:26 +01:00
StapleButter e0fa57fbf2 * color special effects (fade, blending)
* sprite blending

not optimized, but works
2017-03-02 19:00:19 +01:00
StapleButter 464717602f * compressed textures (asfafdgasfgadf)
* fix bug where sprites too close to the right border shat themselves
2017-03-02 01:53:08 +01:00
StapleButter dcc0227b56 textures.
well, it's a start.
2017-03-02 00:49:44 +01:00
StapleButter f7c481b2a1 support for non-rotscaled bitmap sprites 2017-03-01 23:02:50 +01:00
StapleButter 247558a354 * display capture
* fix bug with bitmap BGs (wrong base offset)
2017-03-01 21:42:06 +01:00
StapleButter 5d9e9a5023 no master brightness when screen is disabled. 2017-03-01 20:25:19 +01:00
StapleButter c4d9d27e6e master brightness 2017-03-01 20:23:41 +01:00
StapleButter bc335e31cb * slightly better 3D polygons.
* fix sprite-related bugs. implement 256-color rotscaled sprites.
2017-02-28 12:44:54 +01:00
StapleButter e5a4aa7c84 also keep track of texture attributes 2017-02-28 00:52:17 +01:00
StapleButter f16d2aec61 calculate texture coordinates 2017-02-28 00:50:54 +01:00
StapleButter fb9dddc360 dumb copypasta bug of the year. 2017-02-27 21:30:32 +01:00
StapleButter 8c2572e354 correct VRAM emulation.
there is room for optimizations esp. in the GPU drawing routines.
2017-02-27 21:26:11 +01:00