diff --git a/config/SOUE01/splits.txt b/config/SOUE01/splits.txt index 903c993c..817dcc7e 100644 --- a/config/SOUE01/splits.txt +++ b/config/SOUE01/splits.txt @@ -244,7 +244,7 @@ egg/core/eggAsyncDisplay.cpp: .text start:0x80497E40 end:0x80498688 .data start:0x8056EB60 end:0x8056EB80 .sbss start:0x80576790 end:0x80576798 - .sdata2 start:0x8057F310 end:0x8057F328 + .sdata2 start:0x8057F310 end:0x8057F324 egg/core/eggVideo.cpp: .text start:0x80498690 end:0x804989D8 diff --git a/configure.py b/configure.py index fc454981..7eec2a17 100644 --- a/configure.py +++ b/configure.py @@ -336,7 +336,7 @@ config.libs = [ Object(NonMatching, "egg/core/eggSystem.cpp"), Object(Matching, "egg/core/eggDisplay.cpp"), Object(NonMatching, "egg/core/eggColorFader.cpp"), - Object(NonMatching, "egg/core/eggAsyncDisplay.cpp"), + Object(Matching, "egg/core/eggAsyncDisplay.cpp"), Object(NonMatching, "egg/core/eggVideo.cpp"), Object(NonMatching, "egg/core/eggXfb.cpp"), Object(NonMatching, "egg/core/eggXfbManager.cpp"), diff --git a/src/egg/core/eggAsyncDisplay.cpp b/src/egg/core/eggAsyncDisplay.cpp index f4d41219..8b2365bd 100644 --- a/src/egg/core/eggAsyncDisplay.cpp +++ b/src/egg/core/eggAsyncDisplay.cpp @@ -4,15 +4,26 @@ #include #include -// This file still has incorrect sdata2 - static EGG::AsyncDisplay *lbl_80576790[2]; +// Hacks for float ordering +static f32 one() { + return 1.0f; +} + +static f64 cast() { + return 4503599627370496.0; +} + +static f32 zero() { + return 0.0f; +} + namespace EGG { AsyncDisplay::AsyncDisplay(u8 maxRetrace): Display(maxRetrace) { this->field_0x98 = 0; - this->field_0x9C = 0.0f; + this->field_0x9C = 1.0f; this->field_0xA4 = 0; this->field_0xA8 = 0; this->field_0xAC = 0;