apparently hardware only ever updates its 'inside/outside window' status when reaching the coordinates. which becomes apparent if you, like, try to invert a window midframe.
* rework GPU timings, now almost same as hardware. display lists generally execute faster. not finished. not bad for a start tho.
* Rayman RR2 is still getting sound streaming issues. I don't think GXFIFO stalls are supposed to halt the ARM7. that doesn't make sense and would mess badly with sound since it's also using the ARM7 bus.
* bump savestate version up. will break compatibility, but the alternative would be guessing the missing matrix entries somehow, so blarg.
* avoid relocating the savefile if loading a savestate fails.
It's a bit rough but it includes a desktop file and everything needed
for the emulator to run.
It enables pulseaudio for sound, network for wifi emulation, device=all
for gamepad support and filesystem=home to enable the emulator to write
the save files to the same folder as the rom.
Because melonds uses sdl2 and gtk3, it should run on wayland, but I'm
not including the socket because I haven't personally tested it to work.
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.
by making it actually, you know, build the complete file path
hopefully that fixes that crash bug, but I couldn't reproduce it after touching the code some. heisenbugs are lots of fun
* change default mapping for L button to the key right next to Shift because we're gonna derp around with it
* still some shito to fix, but hang on, we're getting there
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.