1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2025-07-03 14:34:32 +00:00

Fix _DW with permuter and GeometryMode macros (#323)

This commit is contained in:
Roman971 2020-08-15 20:04:27 +02:00 committed by GitHub
parent 337aaf2937
commit ac8796cbc9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 13 deletions

View file

@ -7,6 +7,8 @@
/* Types */
/* Private macro to wrap other macros in do {...} while (0) */
#define _DW(macro) do {macro} while (0)
#define F3DEX_GBI_2
@ -2743,11 +2745,11 @@ _DW({ \
* gSPLoadGeometryMode(pkt, word) sets GeometryMode directly.
*/
#define gSPGeometryMode(pkt, c, s) \
{ \
_DW({ \
Gfx *_g = (Gfx *)(pkt); \
_g->words.w0 = _SHIFTL(G_GEOMETRYMODE,24,8)|_SHIFTL(~(u32)(c),0,24);\
_g->words.w1 = (u32)(s); \
}
})
#define gsSPGeometryMode(c, s) \
{ \
@ -2762,12 +2764,12 @@ _DW({ \
#else /* F3DEX_GBI_2 */
#define gSPSetGeometryMode(pkt, word) \
_DW({ \
{ \
Gfx *_g = (Gfx *)(pkt); \
\
_g->words.w0 = _SHIFTL(G_SETGEOMETRYMODE, 24, 8); \
_g->words.w1 = (unsigned int)(word); \
})
}
#define gsSPSetGeometryMode(word) \
{ \
@ -2775,12 +2777,12 @@ _DW({ \
}
#define gSPClearGeometryMode(pkt, word) \
_DW({ \
{ \
Gfx *_g = (Gfx *)(pkt); \
\
_g->words.w0 = _SHIFTL(G_CLEARGEOMETRYMODE, 24, 8); \
_g->words.w1 = (unsigned int)(word); \
})
}
#define gsSPClearGeometryMode(word) \
{ \
@ -4495,7 +4497,4 @@ _DW({ \
#endif
/* Private macro to wrap other macros in do {...} while (0) */
#define _DW(macro) do {macro} while (0)
#endif