Still hackish.
Fixed Star Wars Episode One Racer Flicker and Black Screen with Frame Buffer Emulation #1119
Fixed Top Gear Overdrive black screen #1122
Remove hack_VIUpdateOnCIChange
Default buffer swap mode is swap buffer on each VI_UpdateScreen() call.
This mode need no hacks for correct buffer update, but it causes gfx overheads.
if there is no buffer RDRAM content is displayed. If there's an invalid
buffer the buffer is removed and then RDRAM content is displayed. No
game needs the detectCFB hack anymore. This fixes the transitions in BIO
F.R.E.A.K.S #562 and also #362
I see no reason why this is needed. REG.VI_WIDTH always has the correct
width. This fixes the pole position minigame in namco museum and the gb
tower in Pokemon Stadium 2 #529. This fixes transition effects in Body
Harvest #650. This fixes problems with the copy auxiliary option in
Body Harvest and Mario Tennis
Fix problem with Majora's Mask subscreen after Bomber's Notebook read, #698
The game switches to interlaced mode when it opens Notebook screen and background buffer is removed.
This hack prevents buffers clear on VI change.
Quake II uses single buffer mode when underwater, so additional check
gDP.colorImage.changed != 0 is necessary to detect frame change.
This check may cause dummy buffers swaps, so now it is used for Quake II only.
Fixed#592
- move flag CHANGED_CPU_FB_WRITE from gSP to gDP (code refactor)
- enable CHANGED_CPU_FB_WRITE on video init.
- disable CHANGED_CPU_FB_WRITE in process display list.
many pd roms and demos use cpu rendering only
now they are supported with default settings
also detectCFB=1 now isn't needed anymore for some games
Commit is based on changes made by purplemarshmallow in #536