Commit Graph

41 Commits

Author SHA1 Message Date
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 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 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 8c2572e354 correct VRAM emulation.
there is room for optimizations esp. in the GPU drawing routines.
2017-02-27 21:26:11 +01:00
StapleButter ef7fbf8b03 18-bit graphics pipeline
(final buffer is 32-bit)
2017-02-14 21:55:51 +01:00
StapleButter 050ba5dfbe some debuts of 3D drawing.
it can draw non-strip polygons, filled with a fixed color. oh and it doesn't work if they're facing back.
2017-02-11 03:54:08 +01:00
StapleButter c95f7578bb store vertices and polygons. strips not handled yet. 2017-02-10 15:24:46 +01:00
StapleButter 0562410de2 * lay base for 3D engine
* add failure reporting to Init functions, and DeInit functions
* GPU-related notes
* readme update
2017-02-07 22:23:46 +01:00
StapleButter 1001df49ea support extended palette for 256-color sprites. 2017-02-05 18:23:03 +01:00
StapleButter 67f0c7b123 256-color sprites. code's weird tho. check it later. 2017-02-04 00:07:25 +01:00
StapleButter 4b3f635c9f fixes to tiled extended BGs. support for 256color/direct bitmap BGs. 2017-02-03 23:49:37 +01:00
StapleButter 399e30017a fix extended backgrounds. blarg 2017-02-03 22:58:00 +01:00
StapleButter 7e9972e037 an attempt at shitty extended "tile+rotscale" BGs 2017-02-02 01:18:03 +01:00
StapleButter 6486d0e10d BG extended palettes! 2017-02-02 00:09:40 +01:00
StapleButter 3451e41bd1 tile hflip/vflip for text BGs.
256-color mode for text BGs.
2017-02-01 23:43:02 +01:00
StapleButter e028973caa this is not how sprite priorities work, you derp 2017-02-01 18:47:13 +01:00
StapleButter 03c1a9cbc8 more anti-crash.
don't unmap VRAM in cases of overlaps. fixes NSMB minigames, for now.
2017-02-01 17:05:12 +01:00
StapleButter c3e2f7ad9b * fix VRAM address calculation for GPU A
* add support for mode 5
2017-01-31 15:43:22 +01:00
StapleButter 12ebf83665 keep the GPU from crashing if there's no VRAM mapped, I guess.
noting that the way it's accessing VRAM is grossly inaccurate.
2017-01-31 04:06:05 +01:00
StapleButter ac8936539e some attempt at cart support 2017-01-22 20:34:59 +01:00
StapleButter 62ed28d5c8 rotscaled 16color sprites. about fucking time I get this shit working. 2017-01-21 17:06:54 +01:00
StapleButter 14f1cec955 some beginning of sprite support: 16bit tiled sprites, not rotated or anything fancy
also give it a version number
2017-01-21 03:36:14 +01:00
StapleButter 711375c0be BG scroll. also fix silly bug. 2017-01-20 15:27:56 +01:00
StapleButter 7dba0121cb fix bug with ALU operations and shift operands, where the shift operation could obliterate the carry flag
also, misc shit
2017-01-20 15:13:44 +01:00
StapleButter 3e5e8f60c4 * some basic BG display code
* basic, frozen-in-time RTC
* power management device
2017-01-20 01:18:30 +01:00
StapleButter d7c1d2a2cd * start GPU shit: draw BG0 16-color.
* fix a few DMA bugs.
* fix a bug where some code could still run right after a halt instruction.
* fix VRAM mapping, too. I'm an idiot.
2017-01-18 17:57:12 +01:00
StapleButter d30e6956fa skeleton for 2D GPU 2017-01-18 04:03:19 +01:00
StapleButter 8c2f785a0f uh oh! it's getting further
(also CodeBlocks is fucking dumb)
2017-01-16 04:47:37 +01:00
StapleButter af05333290 christ. CodeBlocks is retarded.
also, lots of crap. I lost track of it.
2016-12-23 21:22:22 +01:00
StapleButter 9bb3537ede some more crap emulated. 2016-12-06 17:32:51 +01:00
StapleButter c8a0058ebc implementation of VRAM and other misc crap 2016-12-05 23:17:03 +01:00
StapleButter 8c8c78cf83 misc fixes.
shit in place to start implementing GPU shit.
GPL headers added before it's too late. (TODO: put actual GPL license in the repo)
also added URL that doesn't exist yet but is reserved.
2016-12-05 18:02:29 +01:00