- // get back colour to be used in clearing the screen
- register uint32 back;
- if (!(Memory.FillRAM [0x2131] & 0x80) &&(Memory.FillRAM[0x2131] & 0x20) &&
- (PPU.FixedColourRed || PPU.FixedColourGreen || PPU.FixedColourBlue))
- {
- back = (IPPU.XB[PPU.FixedColourRed]<<11) |
- (IPPU.XB[PPU.FixedColourGreen] << 6) |
- (IPPU.XB[PPU.FixedColourBlue] << 1) | 1;
- back = (back << 16) | back;
- }
- else
- {
- back = IPPU.ScreenColors [0] | (IPPU.ScreenColors [0] << 16);
- }
-
- // if Forcedblanking in use then back colour becomes black
- if (PPU.ForcedBlanking)
- back = black;
- else
- {
- SelectTileRenderer (TRUE); //selects the tile renderers to be used
- // TRUE means to use the default
- // FALSE means use best renderer based on current
- // graphics register settings
- }
-
- // now clear all graphics lines which are being updated using the back colour
- for (register uint32 y = starty; y <= endy; y++)
- {
- memset32 ((uint32_t*)(GFX.Screen + y * GFX.Pitch), back,
- IPPU.RenderedScreenWidth>>1);
- }
+ back = (IPPU.XB[PPU.FixedColourRed]<<11) |
+ (IPPU.XB[PPU.FixedColourGreen] << 6) |
+ (IPPU.XB[PPU.FixedColourBlue] << 1) | 1;
+ back = (back << 16) | back;