Changed AVOID_UB to NON_MATCHING and fix a bug (#585)

This commit is contained in:
Dávid Balatoni 2025-04-16 17:12:02 +02:00 committed by GitHub
parent 3c731721fa
commit 59c19c8046
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 11 additions and 8 deletions

View file

@ -148,7 +148,7 @@ endif ()
add_library(dol SHARED ${DOLPHIN_FILES} ${GAME_FILES} ${PORT_FILES})
target_compile_definitions(dol PRIVATE TARGET_PC AVOID_UB NON_MATCHING TARGET_DOL VERSION=${VERSION} MUSY_VERSION_MAJOR=1 MUSY_VERSION_MINOR=5 MUSY_VERSION_PATCH=4)
target_compile_definitions(dol PRIVATE TARGET_PC NON_MATCHING TARGET_DOL VERSION=${VERSION} MUSY_VERSION_MAJOR=1 MUSY_VERSION_MINOR=5 MUSY_VERSION_PATCH=4)
target_include_directories(dol PRIVATE include build/GMPE01_00/include)
target_link_libraries(dol PRIVATE aurora::core aurora::gx aurora::si aurora::vi aurora::pad musyx)
if (MSVC)
@ -164,7 +164,7 @@ else ()
endif ()
add_executable(marioparty4 src/port/portmain.c)
target_compile_definitions(marioparty4 PRIVATE TARGET_PC AVOID_UB NON_MATCHING VERSION=${VERSION})
target_compile_definitions(marioparty4 PRIVATE TARGET_PC NON_MATCHING VERSION=${VERSION})
target_include_directories(marioparty4 PRIVATE include)
target_link_libraries(marioparty4 PRIVATE dol aurora::main)
@ -183,7 +183,7 @@ foreach (dir ${REL_DIRS})
if (dir MATCHES "^w..Dll")
target_sources(${dir} PRIVATE src/REL/board_executor.c)
endif()
target_compile_definitions(${dir} PRIVATE TARGET_PC AVOID_UB NON_MATCHING VERSION=${VERSION})
target_compile_definitions(${dir} PRIVATE TARGET_PC NON_MATCHING VERSION=${VERSION})
target_include_directories(${dir} PRIVATE include build/GMPE01_00/include)
if (MSVC)
set_target_properties(${dir} PROPERTIES LINK_FLAGS "/EXPORT:ObjectSetup")

View file

@ -173,10 +173,13 @@ s32 fn_1_2490(void)
HuWinExAnimOut(lbl_1_bss_82);
HuAudFXStop(temp_r25);
temp_r27 = HuSprGrpCreate(1);
#ifdef __MWERKS__
// TODO PC
temp_r21 = HuTHPSprCreateVol("movie/opmov_c00.thp", 0, 3000, 90.0);
HuSprGrpMemberSet(temp_r27, 0, temp_r21);
HuSprPosSet(temp_r27, 0, 288.0f, 240.0f);
HuSprDrawNoSet(temp_r27, 0, 127);
#endif
HuPrcSleep(2);
espAttrSet(lbl_1_bss_152[9], HUSPR_ATTR_DISPOFF);
for (temp_r31 = 0; temp_r31 <= 10; temp_r31++) {

View file

@ -154,9 +154,7 @@ void ClusterMotionExec(ModelData *arg0)
HsfTrack *var_r30;
MotionData *var_r23;
#ifdef AVOID_UB
//var_r31 = temp_r27->track;
#else
#ifndef NON_MATCHING
var_r31 = temp_r27->track;
#endif
for (i = 0; i < 4; i++) {

View file

@ -1908,7 +1908,7 @@ void KillHSF(HsfData *data)
for (i = 0; i < data->motionCnt; i++) {
HsfMotion *motion = &data->motion[i];
for (j = 0; j < motion->numTracks; j++) {
HsfTrack *track = data->motion[i].track;
HsfTrack *track = motion->track;
if (track->type == HSF_TRACK_ATTRIBUTE && track->curveType == HSF_CURVE_BITMAP) {
// in this case we needed to allocate space for HsfBitmapKey structs
HuMemDirectFree(track->dataTop);

View file

@ -3,9 +3,11 @@
#include "game/init.h"
#include "dolphin/mtx.h"
#include <stdint.h>
#include "port/byteswap.h"
#ifndef __MWERKS__
#include "game/hsfdraw.h"
#endif
#define SPRITE_DIRTY_ATTR 0x1
#define SPRITE_DIRTY_XFORM 0x2