Commit Graph

57 Commits

Author SHA1 Message Date
0f353e0d5f add palette and OAM dirty flag
currently not used anywhere
2020-12-23 09:23:46 +01:00
b6de3cc638 VRAM dirty tracking fix reset/savestate load 2020-12-09 20:10:44 +01:00
d2cfd71c32 rename the class as well
this is getting emberassing
2020-12-07 18:45:50 +01:00
b80d5a04f3 lay base for multiple GPU2D backends 2020-12-06 17:40:16 +01:00
6e8bac3909 Merge vram dirty tracking
Squashed commit of the following:

commit b463a05d4b909372f0cd1ad91caa0c77a25e5901
Author: RSDuck <rsduck@users.noreply.github.com>
Date:   Mon Nov 30 01:55:35 2020 +0100

    minor fix

commit ce73cebbdf5da243d7ebade82d8799ded9cd6b28
Author: RSDuck <rsduck@users.noreply.github.com>
Date:   Mon Nov 30 00:43:08 2020 +0100

    fix dirty flags of BG/OBJ mappings not being reset

commit fc5d73a6178e3adc444398bdd23de8314b5ca8f8
Author: RSDuck <rsduck@users.noreply.github.com>
Date:   Mon Nov 30 00:11:13 2020 +0100

    use flat vram for gpu2d everywhere

commit 34ee9fe2bf04fcfa2a5a1c8d78d70007e606f1a2
Author: RSDuck <rsduck@users.noreply.github.com>
Date:   Sat Nov 28 19:10:34 2020 +0100

    mark VRAM dirty for display capture

commit e8778fa2f429c6df0eece19d6a5ee83ae23a0cf4
Author: RSDuck <rsduck@users.noreply.github.com>
Date:   Sat Nov 28 18:59:31 2020 +0100

    use flat VRAM for textures and texpals
    also skip rendering if nothing changed and a bunch of fixes

commit 53f2041e2e1a28b35702a2ed51de885c36689f71
Author: RSDuck <rsduck@users.noreply.github.com>
Date:   Fri Nov 27 18:29:56 2020 +0100

    use vram dirty tracking for extpals
    also preparations to take this further

commit 4cdfa329e95aed26d3b21319c8fd86a04abf20f7
Author: RSDuck <rsduck@users.noreply.github.com>
Date:   Mon Nov 16 23:32:22 2020 +0100

    VRAM dirty tracking
2020-11-30 19:49:18 +01:00
6977302403 make OpenGL renderer a build option
mostly meant for the Switch port
2020-10-01 00:01:05 +02:00
b62d90cbe4 Merge remote-tracking branch 'remotes/origin/master' into melonDSi 2020-05-30 03:19:20 +02:00
2327de2423 Merge commit '4b57416552ec2fa95216e2b044559f215723bf70' into melonDSi 2020-05-30 03:12:42 +02:00
5eb01f1f15 begin renovating melonDSi 2020-05-30 02:40:51 +02:00
2912a07b8b fix bugs, clean up some of the shit 2020-05-28 17:00:25 +02:00
0804ab3c78 * rework GPU's settings interface, make it config-agnostic
* make video settings dialog functional, sorta
* fix dialogs that were resizable
2020-05-28 15:53:32 +02:00
36f4cdbbbf get the OpenGL renderer going.
sorta.

(also make the blackmagic_II branch obsolete in the process)
2020-05-25 18:25:50 +02:00
85a6a5bb38 * add support for a bunch of codes (all of them minus the loop shit, really)
* hook it betterer so it doesn't asplode
2020-02-14 23:34:26 +01:00
83f8e11bc1 update copyright years 2020-02-14 20:18:08 +01:00
106b9a6f24 lay base for AR cheatzorz. baahahhhh 2020-02-14 19:26:52 +01:00
22f3cae067 fix potential out-of-bounds write 2019-07-13 02:54:14 +02:00
000aa1f327 add LCD init flag in DISPSTAT 2019-06-20 02:31:46 +02:00
d28035674a GPU2D: hardware renders sprites one scanline in advance.
fixes #375 (midframe OAM update)
2019-06-10 03:05:26 +02:00
434a3007e2 fasterer BG/OBJ VRAM reads 2019-06-09 16:06:01 +02:00
bc53ff35a9 this is the same thing, but, for the sake of consistency 2019-06-08 12:39:52 +02:00
9ed1dda9ca fix possible crash 2019-05-25 19:52:56 +02:00
70a3243714 simpler GPU-compositing. will make it easier to grab neighbor 2D/3D pixels individually for filtering. 2019-05-25 19:36:47 +02:00
0bb3321262 getting somewhere?? 2019-05-24 02:29:16 +02:00
db396e992b welp.
progress
2019-05-21 22:28:46 +02:00
50cc38d781 botch more code 2019-05-19 19:47:23 +02:00
f5a7cb71fd also, do master brightness 2019-05-18 01:42:50 +02:00
de287825ee start work on display capture
also fix a bug in the compositing shader
2019-05-17 22:50:41 +02:00
c1746f0c60 BAHAHAHHHH
HARK HARK HARK
2019-05-16 20:58:07 +02:00
c81bcccadc BAHAHAHAHAHAHAHAA 2019-05-16 16:27:45 +02:00
f5ba35ca9f don't scale the screen gap 2019-05-12 16:47:34 +02:00
0a464c504d de-hardcode the GL renderer.
init framebuffer to black.
fix bugs.
2019-05-12 16:32:53 +02:00
c88981b589 split framebuffer.
setup doublebuffering inside GPU.cpp.
avoid copying a whole framebuffer every frame. better performance at higher res.
2019-05-12 15:01:40 +02:00
83331bc7e5 lay base for hi-res rendering
IT'S A PILE OF HACKS
2019-05-03 19:28:15 +02:00
75f8cbf953 draft API for OpenGL shito in libui 2019-03-31 21:15:45 +02:00
b0efde8bf7 also, update copyright name 2019-01-22 15:58:29 +01:00
669247e8c8 redesign main emu loop to use timestamps instead of being a trainwreck
* cleaner code
* faster in some cases
* more accurate (on-demand compensation for timers and GPU)
* less prone to desyncs
* overall betterer
2019-01-05 05:28:58 +01:00
dd30b417b8 implement proper support for POWCNT1.
fixes #260
2018-12-18 17:04:42 +01:00
3dd8c7b152 finish the work on the main loop. finally fix all cases of desync I could find. also add #ifdef'd debug code to check for desyncs. 2018-12-11 15:56:34 +01:00
29bca33bc6 take it somewhere.
still need to speed it up a tad.
2018-12-09 01:17:05 +01:00
86dae1a25c make this other branch where we're going to actually make it usable
but it'll be a gross hack
2018-12-08 20:27:00 +01:00
a2cc7087f7 GPU done 2018-10-18 02:31:01 +02:00
148f4032f1 fix code that would have fucking asploded 2018-10-18 01:38:33 +02:00
fea7955675 fixor copyright years. 2018-09-15 02:32:13 +02:00
48cf9eb805 make it a menu option while we're at it 2017-09-21 04:08:03 +02:00
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
b5784540ab move HBlank 48 cycles later 2017-06-26 22:01:29 +02:00
4afac28263 proper display FIFO emulation 2017-06-26 11:02:10 +02:00
529039f766 * delay 3D rendering a bit (fixes Monster Trucks flickering)
* remove logging for ITCM/DTCM
2017-05-27 23:47:20 +02:00
4b3caedbe7 first attempt at threading the 3D renderer 2017-05-23 23:38:28 +02:00
f54f54fb7e add support for writing to VCount. incl. fucked-up display and altering framerate accordingly. 2017-05-10 02:21:02 +02:00