mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2024-12-21 23:58:51 -05:00
Framebuffer clear and bump LUS (#4187)
This commit is contained in:
parent
ad0e17383e
commit
53efc22a23
@ -84,6 +84,12 @@ include(CMake/GlobalSettingsInclude.cmake OPTIONAL)
|
|||||||
################################################################################
|
################################################################################
|
||||||
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
|
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
# Set GBI version
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
add_compile_definitions(F3DEX_GBI_2)
|
||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
# Sub-projects
|
# Sub-projects
|
||||||
################################################################################
|
################################################################################
|
||||||
|
@ -1 +1 @@
|
|||||||
Subproject commit 3cea9ee7c017d842aa4d9ceeb8d3ffbf29c6effb
|
Subproject commit d70db9806c02c229ca3ed928ad0bdae128fe4ac7
|
2
ZAPDTR
2
ZAPDTR
@ -1 +1 @@
|
|||||||
Subproject commit f38a9c92eb99368c0607acf356d5651ebdc96f51
|
Subproject commit 04d42249d2c15c3b442a0282a90bc8b7bda25b03
|
@ -1 +1 @@
|
|||||||
Subproject commit 0da318c0f4e431313565cad546fc469b8e850388
|
Subproject commit 9def18e62467b4225d26e206e0039a31ed406573
|
@ -407,6 +407,7 @@ if (CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
|||||||
">"
|
">"
|
||||||
"$<$<BOOL:${BUILD_REMOTE_CONTROL}>:ENABLE_REMOTE_CONTROL>"
|
"$<$<BOOL:${BUILD_REMOTE_CONTROL}>:ENABLE_REMOTE_CONTROL>"
|
||||||
"INCLUDE_GAME_PRINTF;"
|
"INCLUDE_GAME_PRINTF;"
|
||||||
|
"F3DEX_GBI_2"
|
||||||
"UNICODE;"
|
"UNICODE;"
|
||||||
"_UNICODE"
|
"_UNICODE"
|
||||||
STORMLIB_NO_AUTO_LINK
|
STORMLIB_NO_AUTO_LINK
|
||||||
@ -425,6 +426,7 @@ if (CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
|||||||
"NDEBUG;"
|
"NDEBUG;"
|
||||||
">"
|
">"
|
||||||
"INCLUDE_GAME_PRINTF;"
|
"INCLUDE_GAME_PRINTF;"
|
||||||
|
"F3DEX_GBI_2"
|
||||||
"WIN32;"
|
"WIN32;"
|
||||||
"UNICODE;"
|
"UNICODE;"
|
||||||
"_UNICODE"
|
"_UNICODE"
|
||||||
@ -440,6 +442,7 @@ elseif (CMAKE_SYSTEM_NAME STREQUAL "CafeOS")
|
|||||||
"$<$<CONFIG:Release>:"
|
"$<$<CONFIG:Release>:"
|
||||||
"NDEBUG"
|
"NDEBUG"
|
||||||
">"
|
">"
|
||||||
|
"F3DEX_GBI_2"
|
||||||
"SPDLOG_ACTIVE_LEVEL=3;"
|
"SPDLOG_ACTIVE_LEVEL=3;"
|
||||||
"SPDLOG_NO_THREAD_ID;"
|
"SPDLOG_NO_THREAD_ID;"
|
||||||
"SPDLOG_NO_TLS;"
|
"SPDLOG_NO_TLS;"
|
||||||
@ -453,6 +456,7 @@ elseif ("${CMAKE_CXX_COMPILER_ID}" MATCHES "GNU|Clang|AppleClang")
|
|||||||
"$<$<CONFIG:Release>:"
|
"$<$<CONFIG:Release>:"
|
||||||
"NDEBUG"
|
"NDEBUG"
|
||||||
">"
|
">"
|
||||||
|
"F3DEX_GBI_2"
|
||||||
"$<$<BOOL:${BUILD_REMOTE_CONTROL}>:ENABLE_REMOTE_CONTROL>"
|
"$<$<BOOL:${BUILD_REMOTE_CONTROL}>:ENABLE_REMOTE_CONTROL>"
|
||||||
"SPDLOG_ACTIVE_LEVEL=0;"
|
"SPDLOG_ACTIVE_LEVEL=0;"
|
||||||
"_CONSOLE;"
|
"_CONSOLE;"
|
||||||
|
@ -22,12 +22,10 @@ extern "C"
|
|||||||
|
|
||||||
void gSPSegment(void* value, int segNum, uintptr_t target);
|
void gSPSegment(void* value, int segNum, uintptr_t target);
|
||||||
void gSPSegmentLoadRes(void* value, int segNum, uintptr_t target);
|
void gSPSegmentLoadRes(void* value, int segNum, uintptr_t target);
|
||||||
void gDPSetTextureImage(Gfx* pkt, u32 f, u32 s, u32 w, uintptr_t i);
|
|
||||||
void gSPDisplayList(Gfx* pkt, Gfx* dl);
|
void gSPDisplayList(Gfx* pkt, Gfx* dl);
|
||||||
void gSPDisplayListOffset(Gfx* pkt, Gfx* dl, int offset);
|
void gSPDisplayListOffset(Gfx* pkt, Gfx* dl, int offset);
|
||||||
void gSPVertex(Gfx* pkt, uintptr_t v, int n, int v0);
|
void gSPVertex(Gfx* pkt, uintptr_t v, int n, int v0);
|
||||||
void gSPInvalidateTexCache(Gfx* pkt, uintptr_t texAddr);
|
void gSPInvalidateTexCache(Gfx* pkt, uintptr_t texAddr);
|
||||||
void gDPSetTextureImageFB(Gfx* pkt, u32 format, u32 size, u32 width, int fb);
|
|
||||||
|
|
||||||
|
|
||||||
void cleararena(void);
|
void cleararena(void);
|
||||||
|
@ -66,15 +66,6 @@ extern "C" void gSPSegmentLoadRes(void* value, int segNum, uintptr_t target) {
|
|||||||
__gSPSegment(value, segNum, target);
|
__gSPSegment(value, segNum, target);
|
||||||
}
|
}
|
||||||
|
|
||||||
extern "C" void gDPSetTextureImage(Gfx* pkt, u32 format, u32 size, u32 width, uintptr_t i) {
|
|
||||||
__gDPSetTextureImage(pkt, format, size, width, i);
|
|
||||||
}
|
|
||||||
|
|
||||||
extern "C" void gDPSetTextureImageFB(Gfx* pkt, u32 format, u32 size, u32 width, int fb)
|
|
||||||
{
|
|
||||||
__gDPSetTextureImageFB(pkt, format, size, width, fb);
|
|
||||||
}
|
|
||||||
|
|
||||||
extern "C" void gSPDisplayList(Gfx* pkt, Gfx* dl) {
|
extern "C" void gSPDisplayList(Gfx* pkt, Gfx* dl) {
|
||||||
char* imgData = (char*)dl;
|
char* imgData = (char*)dl;
|
||||||
|
|
||||||
|
@ -1539,7 +1539,7 @@ void Gfx_SetupFrame(GraphicsContext* gfxCtx, u8 r, u8 g, u8 b) {
|
|||||||
gDPSetCycleType(POLY_OPA_DISP++, G_CYC_FILL);
|
gDPSetCycleType(POLY_OPA_DISP++, G_CYC_FILL);
|
||||||
gDPSetRenderMode(POLY_OPA_DISP++, G_RM_NOOP, G_RM_NOOP2);
|
gDPSetRenderMode(POLY_OPA_DISP++, G_RM_NOOP, G_RM_NOOP2);
|
||||||
gDPSetFillColor(POLY_OPA_DISP++, (GPACK_ZDZ(G_MAXFBZ, 0) << 16) | GPACK_ZDZ(G_MAXFBZ, 0));
|
gDPSetFillColor(POLY_OPA_DISP++, (GPACK_ZDZ(G_MAXFBZ, 0) << 16) | GPACK_ZDZ(G_MAXFBZ, 0));
|
||||||
gDPFillRectangle(POLY_OPA_DISP++, 0, letterboxSize, gScreenWidth - 1, gScreenHeight - letterboxSize - 1);
|
gDPFillWideRectangle(POLY_OPA_DISP++, OTRGetRectDimensionFromLeftEdge(0), letterboxSize, OTRGetRectDimensionFromRightEdge(gScreenWidth - 1), gScreenHeight - letterboxSize - 1);
|
||||||
gDPPipeSync(POLY_OPA_DISP++);
|
gDPPipeSync(POLY_OPA_DISP++);
|
||||||
|
|
||||||
// Fill the whole screen with the base color
|
// Fill the whole screen with the base color
|
||||||
@ -1548,7 +1548,7 @@ void Gfx_SetupFrame(GraphicsContext* gfxCtx, u8 r, u8 g, u8 b) {
|
|||||||
gDPSetCycleType(POLY_OPA_DISP++, G_CYC_FILL);
|
gDPSetCycleType(POLY_OPA_DISP++, G_CYC_FILL);
|
||||||
gDPSetRenderMode(POLY_OPA_DISP++, G_RM_NOOP, G_RM_NOOP2);
|
gDPSetRenderMode(POLY_OPA_DISP++, G_RM_NOOP, G_RM_NOOP2);
|
||||||
gDPSetFillColor(POLY_OPA_DISP++, (GPACK_RGBA5551(r, g, b, 1) << 16) | GPACK_RGBA5551(r, g, b, 1));
|
gDPSetFillColor(POLY_OPA_DISP++, (GPACK_RGBA5551(r, g, b, 1) << 16) | GPACK_RGBA5551(r, g, b, 1));
|
||||||
gDPFillRectangle(POLY_OPA_DISP++, 0, letterboxSize, gScreenWidth - 1, gScreenHeight - letterboxSize - 1);
|
gDPFillWideRectangle(POLY_OPA_DISP++, OTRGetRectDimensionFromLeftEdge(0), letterboxSize, OTRGetRectDimensionFromRightEdge(gScreenWidth - 1), gScreenHeight - letterboxSize - 1);
|
||||||
gDPPipeSync(POLY_OPA_DISP++);
|
gDPPipeSync(POLY_OPA_DISP++);
|
||||||
|
|
||||||
// Draw the letterbox if applicable (uses the same color as the screen base)
|
// Draw the letterbox if applicable (uses the same color as the screen base)
|
||||||
@ -1557,8 +1557,8 @@ void Gfx_SetupFrame(GraphicsContext* gfxCtx, u8 r, u8 g, u8 b) {
|
|||||||
gDPSetCycleType(OVERLAY_DISP++, G_CYC_FILL);
|
gDPSetCycleType(OVERLAY_DISP++, G_CYC_FILL);
|
||||||
gDPSetRenderMode(OVERLAY_DISP++, G_RM_NOOP, G_RM_NOOP2);
|
gDPSetRenderMode(OVERLAY_DISP++, G_RM_NOOP, G_RM_NOOP2);
|
||||||
gDPSetFillColor(OVERLAY_DISP++, (GPACK_RGBA5551(r, g, b, 1) << 16) | GPACK_RGBA5551(r, g, b, 1));
|
gDPSetFillColor(OVERLAY_DISP++, (GPACK_RGBA5551(r, g, b, 1) << 16) | GPACK_RGBA5551(r, g, b, 1));
|
||||||
gDPFillRectangle(OVERLAY_DISP++, 0, 0, gScreenWidth - 1, letterboxSize - 1);
|
gDPFillWideRectangle(OVERLAY_DISP++, OTRGetRectDimensionFromLeftEdge(0), 0, OTRGetRectDimensionFromRightEdge(gScreenWidth - 1), letterboxSize - 1);
|
||||||
gDPFillRectangle(OVERLAY_DISP++, 0, gScreenHeight - letterboxSize, gScreenWidth - 1, gScreenHeight - 1);
|
gDPFillWideRectangle(OVERLAY_DISP++, OTRGetRectDimensionFromLeftEdge(0), gScreenHeight - letterboxSize, OTRGetRectDimensionFromRightEdge(gScreenWidth - 1), gScreenHeight - 1);
|
||||||
gDPPipeSync(OVERLAY_DISP++);
|
gDPPipeSync(OVERLAY_DISP++);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user