1
0
mirror of https://github.com/blawar/GLideN64.git synced 2024-07-02 09:03:37 +00:00

Fix frame buffer texture detection when load tile is not 7.

Fixed wrong frame buffer detection in Tetrispere intro, issue #681
Terisphere uses tile 2 as load-tile and as base tile.
This commit is contained in:
Sergey Lipskiy 2016-03-05 17:55:30 +06:00
parent 29b0b8c1ae
commit 024c48218a
2 changed files with 4 additions and 1 deletions

View File

@ -310,7 +310,7 @@ void gDPSetTile( u32 format, u32 size, u32 line, u32 tmem, u32 tile, u32 palette
if (!gDP.tiles[tile].maskt) gDP.tiles[tile].clampt = 1;
if (tile == gSP.texture.tile || tile == gSP.texture.tile + 1) {
u32 nTile = 7;
u32 nTile = gDP.loadTileIdx;
while(gDP.tiles[nTile].tmem != tmem && nTile > gSP.texture.tile + 1)
--nTile;
if (nTile > gSP.texture.tile + 1) {
@ -469,6 +469,7 @@ void gDPLoadTile32b(u32 uls, u32 ult, u32 lrs, u32 lrt)
void gDPLoadTile(u32 tile, u32 uls, u32 ult, u32 lrs, u32 lrt)
{
gDPSetTileSize( tile, uls, ult, lrs, lrt );
gDP.loadTileIdx = tile;
gDP.loadTile = &gDP.tiles[tile];
gDP.loadTile->loadType = LOADTYPE_TILE;
gDP.loadTile->imageAddress = gDP.textureImage.address;
@ -577,6 +578,7 @@ void gDPLoadBlock32(u32 uls,u32 lrs, u32 dxt)
void gDPLoadBlock(u32 tile, u32 uls, u32 ult, u32 lrs, u32 dxt)
{
gDPSetTileSize( tile, uls, ult, lrs, dxt );
gDP.loadTileIdx = tile;
gDP.loadTile = &gDP.tiles[tile];
gDP.loadTile->loadType = LOADTYPE_BLOCK;

View File

@ -180,6 +180,7 @@ struct gDPInfo
gDPCombine combine;
gDPTile tiles[8], *loadTile;
u32 loadTileIdx;
struct Color
{