port: actually parse allocation strings; double gfx buffer size on 64-bit

This commit is contained in:
fgsfds committed 2024-12-17 10:44:33 +01:00
1 parent a14e9ed97e
commit 1e76f6af69
2 files changed
+16 -5

No files matched your search

+2
View File
@@ -225,6 +225,8 @@ void mainInit(void)
joyInit();
joyReset();
var8005d9b0 = rmonIsDisabled();
g_Is4Mb = (osGetMemSize() <= 0x400000);
g_VmShowStats = 0;
+14 -5
View File
@@ -36,6 +36,15 @@
* marker for the end of the second element's allocation.
*/
/**
* On 64-bit platforms the Gfx struct is twice as large.
*/
#ifdef PLATFORM_64BIT
#define GFX_SIZE_MULTIPLIER 2
#else
#define GFX_SIZE_MULTIPLIER 1
#endif
u8 *g_GfxBuffers[NUM_GFXTASKS + 1];
u32 var800aa58c;
u8 *g_VtxBuffers[NUM_GFXTASKS + 1];
@@ -44,10 +53,10 @@ u8 g_GfxActiveBufferIndex;
u32 g_GfxRequestedDisplayList;
u32 g_GfxSizesByPlayerCount[] = {
0x00010000,
0x00018000,
0x00020000,
0x00028000,
0x00010000 * GFX_SIZE_MULTIPLIER,
0x00018000 * GFX_SIZE_MULTIPLIER,
0x00020000 * GFX_SIZE_MULTIPLIER,
0x00028000 * GFX_SIZE_MULTIPLIER,
};
u32 g_VtxSizesByPlayerCount[] = {
@@ -94,7 +103,7 @@ void gfxReset(void)
// ******** Original Amount required = %dK ber buffer\n
// ******** Extra Amount required = %dK ber buffer\n
// ******** Total of %dK (Double Buffered)\n
g_GfxSizesByPlayerCount[PLAYERCOUNT() - 1] = gfx + gfxtra;
g_GfxSizesByPlayerCount[PLAYERCOUNT() - 1] = (gfx + gfxtra) * GFX_SIZE_MULTIPLIER;
}
if (argFindByPrefix(1, "-mvtx")) {