mirror of
https://github.com/blawar/GLideN64.git
synced 2024-07-04 10:03:36 +00:00
Store integer scissor coordinates.
This commit is contained in:
parent
11e87a46d8
commit
fa2b0793e0
10
src/RDP.cpp
10
src/RDP.cpp
|
@ -174,11 +174,11 @@ void RDP_SetPrimDepth( u32 w0, u32 w1 )
|
||||||
|
|
||||||
void RDP_SetScissor( u32 w0, u32 w1 )
|
void RDP_SetScissor( u32 w0, u32 w1 )
|
||||||
{
|
{
|
||||||
gDPSetScissor( _SHIFTR( w1, 24, 2 ), // mode
|
gDPSetScissor( _SHIFTR( w1, 24, 2 ), // mode
|
||||||
_FIXED2FLOAT( _SHIFTR( w0, 12, 12 ), 2 ), // ulx
|
_SHIFTR( w0, 12, 12 ), // ulx
|
||||||
_FIXED2FLOAT( _SHIFTR( w0, 0, 12 ), 2 ), // uly
|
_SHIFTR( w0, 0, 12 ), // uly
|
||||||
_FIXED2FLOAT( _SHIFTR( w1, 12, 12 ), 2 ), // lrx
|
_SHIFTR( w1, 12, 12 ), // lrx
|
||||||
_FIXED2FLOAT( _SHIFTR( w1, 0, 12 ), 2 ) ); // lry
|
_SHIFTR( w1, 0, 12 ) ); // lry
|
||||||
}
|
}
|
||||||
|
|
||||||
void RDP_SetConvert( u32 w0, u32 w1 )
|
void RDP_SetConvert( u32 w0, u32 w1 )
|
||||||
|
|
14
src/gDP.cpp
14
src/gDP.cpp
|
@ -667,13 +667,17 @@ void gDPLoadTLUT( u32 tile, u32 uls, u32 ult, u32 lrs, u32 lrt )
|
||||||
tile, gDP.tiles[tile].uls, gDP.tiles[tile].ult, gDP.tiles[tile].lrs, gDP.tiles[tile].lrt );
|
tile, gDP.tiles[tile].uls, gDP.tiles[tile].ult, gDP.tiles[tile].lrs, gDP.tiles[tile].lrt );
|
||||||
}
|
}
|
||||||
|
|
||||||
void gDPSetScissor( u32 mode, f32 ulx, f32 uly, f32 lrx, f32 lry )
|
void gDPSetScissor(u32 mode, s16 xh, s16 yh, s16 xl, s16 yl)
|
||||||
{
|
{
|
||||||
gDP.scissor.mode = mode;
|
gDP.scissor.mode = mode;
|
||||||
gDP.scissor.ulx = ulx;
|
gDP.scissor.xh = xh;
|
||||||
gDP.scissor.uly = uly;
|
gDP.scissor.yh = yh;
|
||||||
gDP.scissor.lrx = lrx;
|
gDP.scissor.xl = xl;
|
||||||
gDP.scissor.lry = lry;
|
gDP.scissor.yl = yl;
|
||||||
|
gDP.scissor.ulx = _FIXED2FLOAT(xh, 2);
|
||||||
|
gDP.scissor.uly = _FIXED2FLOAT(yh, 2);
|
||||||
|
gDP.scissor.lrx = _FIXED2FLOAT(xl, 2);
|
||||||
|
gDP.scissor.lry = _FIXED2FLOAT(yl, 2);
|
||||||
|
|
||||||
gDP.changed |= CHANGED_SCISSOR | CHANGED_REJECT_BOX;
|
gDP.changed |= CHANGED_SCISSOR | CHANGED_REJECT_BOX;
|
||||||
|
|
||||||
|
|
|
@ -116,6 +116,7 @@ struct gDPScissor
|
||||||
{
|
{
|
||||||
u32 mode;
|
u32 mode;
|
||||||
f32 ulx, uly, lrx, lry;
|
f32 ulx, uly, lrx, lry;
|
||||||
|
s16 xh, yh, xl, yl;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct gDPInfo
|
struct gDPInfo
|
||||||
|
@ -275,7 +276,7 @@ void gDPSetTileSize( u32 tile, u32 uls, u32 ult, u32 lrs, u32 lrt );
|
||||||
void gDPLoadTile( u32 tile, u32 uls, u32 ult, u32 lrs, u32 lrt );
|
void gDPLoadTile( u32 tile, u32 uls, u32 ult, u32 lrs, u32 lrt );
|
||||||
void gDPLoadBlock( u32 tile, u32 uls, u32 ult, u32 lrs, u32 dxt );
|
void gDPLoadBlock( u32 tile, u32 uls, u32 ult, u32 lrs, u32 dxt );
|
||||||
void gDPLoadTLUT( u32 tile, u32 uls, u32 ult, u32 lrs, u32 lrt );
|
void gDPLoadTLUT( u32 tile, u32 uls, u32 ult, u32 lrs, u32 lrt );
|
||||||
void gDPSetScissor( u32 mode, f32 ulx, f32 uly, f32 lrx, f32 lry );
|
void gDPSetScissor( u32 mode, s16 xh, s16 yh, s16 xl, s16 yl);
|
||||||
void gDPFillRectangle( s32 ulx, s32 uly, s32 lrx, s32 lry );
|
void gDPFillRectangle( s32 ulx, s32 uly, s32 lrx, s32 lry );
|
||||||
void gDPSetConvert( s32 k0, s32 k1, s32 k2, s32 k3, s32 k4, s32 k5 );
|
void gDPSetConvert( s32 k0, s32 k1, s32 k2, s32 k3, s32 k4, s32 k5 );
|
||||||
void gDPSetKeyR( u32 cR, u32 sR, u32 wR );
|
void gDPSetKeyR( u32 cR, u32 sR, u32 wR );
|
||||||
|
|
Loading…
Reference in New Issue
Block a user