From 9bb5c8d50a293c7bd9682ea8146fd23d052364cb Mon Sep 17 00:00:00 2001 From: dbalatoni13 <40299962+dbalatoni13@users.noreply.github.com> Date: Mon, 14 Apr 2025 15:57:29 +0200 Subject: [PATCH] Build all RELs --- CMakeLists.txt | 15 +- config/GMPE01_00/rels/mentDll/symbols.txt | 2 +- config/GMPE01_00/rels/mstory4Dll/symbols.txt | 2 +- config/GMPE01_00/rels/option/symbols.txt | 2 +- config/GMPE01_00/rels/present/symbols.txt | 2 +- config/GMPJ01_00/rels/mentDll/symbols.txt | 2 +- config/GMPJ01_00/rels/mstory4Dll/symbols.txt | 2 +- config/GMPP01_00/rels/mentDll/symbols.txt | 2 +- config/GMPP01_00/rels/option/symbols.txt | 2 +- config/GMPP01_00/rels/present/symbols.txt | 2 +- dol.def | 1888 ++++++++++-------- include/REL/m415Dll.h | 2 +- include/REL/modeltestDll.h | 3 - include/REL/w10Dll.h | 2 +- include/game/board/main.h | 16 +- include/game/board/player.h | 2 +- include/game/board/tutorial.h | 5 +- include/game/hsfanim.h | 5 +- include/game/hsfman.h | 10 +- include/game/init.h | 2 +- include/game/mapspace.h | 10 +- include/game/minigame_seq.h | 2 +- include/game/objsub.h | 16 +- include/game/saveload.h | 2 +- src/REL/board_executor.c | 10 +- src/REL/m406Dll/map.c | 2 +- src/REL/m408Dll/stage.c | 2 +- src/REL/m409Dll/cursor.c | 2 +- src/REL/m415Dll/main.c | 5 +- src/REL/m423Dll/main.c | 2 +- src/REL/m425Dll/main.c | 2 +- src/REL/m425Dll/thwomp.c | 2 +- src/REL/m426Dll/main.c | 2 +- src/REL/m428Dll/player.c | 4 +- src/REL/m438Dll/fire.c | 2 +- src/REL/mentDll/common.c | 34 +- src/REL/modeltestDll/modeltest00.c | 4 +- src/REL/mstory2Dll/main.c | 2 + src/REL/mstory3Dll/main.c | 2 + src/REL/mstory4Dll/main.c | 23 +- src/REL/mstoryDll/main.c | 2 + src/REL/option/sound.c | 12 +- src/REL/present/present.c | 10 +- src/REL/selmenuDll/main.c | 5 +- src/REL/w03Dll/mg_item.c | 2 - src/REL/w03Dll/smoke.c | 1 - src/REL/w10Dll/main.c | 2 +- src/REL/w10Dll/scene.c | 2 +- src/dolphin/mtx/quat.c | 31 +- src/game/board/main.c | 10 +- src/game/board/mushroom.c | 2 +- src/game/board/player.c | 2 +- src/game/board/tutorial.c | 4 +- src/game/hsfanim.c | 6 +- src/game/hsfdraw.c | 2 +- src/game/hsfman.c | 10 +- src/game/init.c | 2 +- src/game/main.c | 2 +- src/game/mapspace.c | 10 +- src/game/minigame_seq.c | 2 +- src/game/objsub.c | 16 +- src/game/objsysobj.c | 6 +- src/game/saveload.c | 2 +- src/port/stubs.c | 56 + 64 files changed, 1280 insertions(+), 1017 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 45f29d9c..166e7fee 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -37,6 +37,7 @@ set(DOLPHIN_FILES src/dolphin/mtx/mtx.c src/dolphin/mtx/mtx44.c src/dolphin/mtx/vec.c + src/dolphin/mtx/quat.c src/dolphin/os/OSAlloc.c src/dolphin/os/OSArena.c src/dolphin/os/OSStopwatch.c @@ -168,27 +169,31 @@ target_include_directories(marioparty4 PRIVATE include) target_link_libraries(marioparty4 PRIVATE dol aurora::main) file(GLOB REL_DIRS RELATIVE ${CMAKE_SOURCE_DIR}/src/REL ${CMAKE_SOURCE_DIR}/src/REL/*) +set(EXCLUDED_RELS "nisDll" "safDll") foreach (dir ${REL_DIRS}) if (IS_DIRECTORY ${CMAKE_SOURCE_DIR}/src/REL/${dir}) + if (dir IN_LIST EXCLUDED_RELS) + continue() + endif() file(GLOB_RECURSE REL_FILES src/REL/${dir}/*.c) if (REL_FILES) add_library(${dir} SHARED ${REL_FILES}) + if (dir MATCHES "^w..Dll") + target_sources(${dir} PRIVATE src/REL/board_executor.c) + endif() 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") - else () - endif () - if (NOT CMAKE_SYSTEM_NAME STREQUAL Windows) + elseif (NOT CMAKE_SYSTEM_NAME STREQUAL Windows) target_compile_options(${dir} PRIVATE "-fvisibility=hidden") target_link_options(${dir} PRIVATE "LINKER:--version-script=${CMAKE_CURRENT_SOURCE_DIR}/rel.map") set_target_properties(${dir} PROPERTIES PREFIX "") endif () target_link_libraries(${dir} PRIVATE dol musyx) + add_dependencies(marioparty4 ${dir}) endif () endif () endforeach () - -add_dependencies(marioparty4 bootDll modeseldll) diff --git a/config/GMPE01_00/rels/mentDll/symbols.txt b/config/GMPE01_00/rels/mentDll/symbols.txt index fe98fd1f..392db46c 100644 --- a/config/GMPE01_00/rels/mentDll/symbols.txt +++ b/config/GMPE01_00/rels/mentDll/symbols.txt @@ -2,7 +2,7 @@ fn_1_0 = .text:0x00000000; // type:function size:0x4C fn_1_4C = .text:0x0000004C; // type:function size:0x58 _prolog = .text:0x000000A4; // type:function size:0x54 scope:global _epilog = .text:0x000000F8; // type:function size:0x4C scope:global -fn_1_144 = .text:0x00000144; // type:function size:0xC8 +ObjectSetup = .text:0x00000144; // type:function size:0xC8 fn_1_20C = .text:0x0000020C; // type:function size:0x28 fn_1_234 = .text:0x00000234; // type:function size:0x20 fn_1_254 = .text:0x00000254; // type:function size:0xD8 diff --git a/config/GMPE01_00/rels/mstory4Dll/symbols.txt b/config/GMPE01_00/rels/mstory4Dll/symbols.txt index 01a56bcd..bcd4f6c3 100644 --- a/config/GMPE01_00/rels/mstory4Dll/symbols.txt +++ b/config/GMPE01_00/rels/mstory4Dll/symbols.txt @@ -2,7 +2,7 @@ fn_1_0 = .text:0x00000000; // type:function size:0xEC fn_1_EC = .text:0x000000EC; // type:function size:0x115C _prolog = .text:0x00001248; // type:function size:0x54 scope:global _epilog = .text:0x0000129C; // type:function size:0x4C scope:global -fn_1_12E8 = .text:0x000012E8; // type:function size:0xB8 +ObjectSetup = .text:0x000012E8; // type:function size:0xB8 fn_1_13A0 = .text:0x000013A0; // type:function size:0x68C _ctors = .ctors:0x00000000; // type:label scope:global data:4byte _dtors = .dtors:0x00000000; // type:label scope:global data:4byte diff --git a/config/GMPE01_00/rels/option/symbols.txt b/config/GMPE01_00/rels/option/symbols.txt index 5eb11c4d..e197b616 100644 --- a/config/GMPE01_00/rels/option/symbols.txt +++ b/config/GMPE01_00/rels/option/symbols.txt @@ -103,7 +103,7 @@ CreateNote = .text:0x00007710; // type:function size:0x190 scope:local CreateNoteSpawner = .text:0x000078A0; // type:function size:0x60 scope:local KillNoteSpawner = .text:0x00007900; // type:function size:0x3C scope:local ExecNoteSpawner = .text:0x0000793C; // type:function size:0x5C4 scope:local -PlaySound = .text:0x00007F00; // type:function size:0x148 scope:local +OptionPlaySound = .text:0x00007F00; // type:function size:0x148 scope:local FadeSound = .text:0x00008048; // type:function size:0x9C scope:local OptionRecordCreate = .text:0x000080E4; // type:function size:0x178 OptionRecordKill = .text:0x0000825C; // type:function size:0x54 diff --git a/config/GMPE01_00/rels/present/symbols.txt b/config/GMPE01_00/rels/present/symbols.txt index 332b6bce..1b80682d 100644 --- a/config/GMPE01_00/rels/present/symbols.txt +++ b/config/GMPE01_00/rels/present/symbols.txt @@ -31,7 +31,7 @@ PresentSelectedIDSet = .text:0x0000186C; // type:function size:0xBC ExecSelectRoom = .text:0x00001928; // type:function size:0x680 scope:local ChangeRoom = .text:0x00001FA8; // type:function size:0x140 scope:local ExecSelectPresent = .text:0x000020E8; // type:function size:0x5A4 scope:local -GetCursorPos = .text:0x0000268C; // type:function size:0x7C scope:local +PresentGetCursorPos = .text:0x0000268C; // type:function size:0x7C scope:local SetCameraRot = .text:0x00002708; // type:function size:0x6C scope:local RotateCamera = .text:0x00002774; // type:function size:0x17C scope:local CameraRotationDoneCheck = .text:0x000028F0; // type:function size:0x34 scope:local diff --git a/config/GMPJ01_00/rels/mentDll/symbols.txt b/config/GMPJ01_00/rels/mentDll/symbols.txt index 1be34e66..9dbd0380 100644 --- a/config/GMPJ01_00/rels/mentDll/symbols.txt +++ b/config/GMPJ01_00/rels/mentDll/symbols.txt @@ -2,7 +2,7 @@ fn_1_0 = .text:0x00000000; // type:function size:0x4C fn_1_4C = .text:0x0000004C; // type:function size:0x58 _prolog = .text:0x000000A4; // type:function size:0x54 scope:global _epilog = .text:0x000000F8; // type:function size:0x4C scope:global -fn_1_144 = .text:0x00000144; // type:function size:0xC8 +ObjectSetup = .text:0x00000144; // type:function size:0xC8 fn_1_20C = .text:0x0000020C; // type:function size:0x28 fn_1_234 = .text:0x00000234; // type:function size:0x20 fn_1_254 = .text:0x00000254; // type:function size:0xD8 diff --git a/config/GMPJ01_00/rels/mstory4Dll/symbols.txt b/config/GMPJ01_00/rels/mstory4Dll/symbols.txt index 59a31229..22f69967 100644 --- a/config/GMPJ01_00/rels/mstory4Dll/symbols.txt +++ b/config/GMPJ01_00/rels/mstory4Dll/symbols.txt @@ -2,7 +2,7 @@ fn_1_0 = .text:0x00000000; // type:function size:0xEC fn_1_EC = .text:0x000000EC; // type:function size:0x115C _prolog = .text:0x00001248; // type:function size:0x54 scope:global _epilog = .text:0x0000129C; // type:function size:0x4C scope:global -fn_1_12E8 = .text:0x000012E8; // type:function size:0xB8 +ObjectSetup = .text:0x000012E8; // type:function size:0xB8 fn_1_13A0 = .text:0x000013A0; // type:function size:0x68C _ctors = .ctors:0x00000000; // type:label scope:global data:4byte _dtors = .dtors:0x00000000; // type:label scope:global data:4byte diff --git a/config/GMPP01_00/rels/mentDll/symbols.txt b/config/GMPP01_00/rels/mentDll/symbols.txt index a6cdecf3..9d28344b 100644 --- a/config/GMPP01_00/rels/mentDll/symbols.txt +++ b/config/GMPP01_00/rels/mentDll/symbols.txt @@ -2,7 +2,7 @@ fn_1_0 = .text:0x00000000; // type:function size:0x4C fn_1_4C = .text:0x0000004C; // type:function size:0x58 _prolog = .text:0x000000A4; // type:function size:0x54 scope:global _epilog = .text:0x000000F8; // type:function size:0x4C scope:global -fn_1_144 = .text:0x00000144; // type:function size:0xC8 +ObjectSetup = .text:0x00000144; // type:function size:0xC8 fn_1_20C = .text:0x0000020C; // type:function size:0x28 fn_1_234 = .text:0x00000234; // type:function size:0x20 fn_1_254 = .text:0x00000254; // type:function size:0xD8 diff --git a/config/GMPP01_00/rels/option/symbols.txt b/config/GMPP01_00/rels/option/symbols.txt index 16625f3c..f21ee30d 100644 --- a/config/GMPP01_00/rels/option/symbols.txt +++ b/config/GMPP01_00/rels/option/symbols.txt @@ -103,7 +103,7 @@ CreateNote = .text:0x00007710; // type:function size:0x190 scope:local CreateNoteSpawner = .text:0x000078A0; // type:function size:0x60 scope:local KillNoteSpawner = .text:0x00007900; // type:function size:0x3C scope:local ExecNoteSpawner = .text:0x0000793C; // type:function size:0x5C4 scope:local -PlaySound = .text:0x00007F00; // type:function size:0x148 scope:local +OptionPlaySound = .text:0x00007F00; // type:function size:0x148 scope:local FadeSound = .text:0x00008048; // type:function size:0x9C scope:local OptionRecordCreate = .text:0x000080E4; // type:function size:0x178 OptionRecordKill = .text:0x0000825C; // type:function size:0x54 diff --git a/config/GMPP01_00/rels/present/symbols.txt b/config/GMPP01_00/rels/present/symbols.txt index 332b6bce..1b80682d 100644 --- a/config/GMPP01_00/rels/present/symbols.txt +++ b/config/GMPP01_00/rels/present/symbols.txt @@ -31,7 +31,7 @@ PresentSelectedIDSet = .text:0x0000186C; // type:function size:0xBC ExecSelectRoom = .text:0x00001928; // type:function size:0x680 scope:local ChangeRoom = .text:0x00001FA8; // type:function size:0x140 scope:local ExecSelectPresent = .text:0x000020E8; // type:function size:0x5A4 scope:local -GetCursorPos = .text:0x0000268C; // type:function size:0x7C scope:local +PresentGetCursorPos = .text:0x0000268C; // type:function size:0x7C scope:local SetCameraRot = .text:0x00002708; // type:function size:0x6C scope:local RotateCamera = .text:0x00002774; // type:function size:0x17C scope:local CameraRotationDoneCheck = .text:0x000028F0; // type:function size:0x34 scope:local diff --git a/dol.def b/dol.def index eaa9ff2b..19dcc9a8 100644 --- a/dol.def +++ b/dol.def @@ -1,404 +1,1019 @@ EXPORTS - game_main - frand - frandf - rand8 - print8 + BoardArcCos + BoardArcSin + BoardAudFXPlay + BoardAudFXStop + BoardAudSeqFadeOut + BoardAudSeqFadeOutAll + BoardAudSeqFadeOutFast + BoardAudSeqPause + BoardBattleExec + BoardBooHouseCreate + BoardBooHouseExec + BoardBooHouseHostGet + BoardBooHouseHostSet + BoardBooHouseKill + BoardBooHouseTutorialExec + BoardBowserSuitInit + BoardBowserSuitKill + BoardBowserSuitModelGet + BoardBowserSuitMotionSetJump + BoardBowserSuitMotionSetWait + BoardBowserSuitMotionSetWalk + BoardBowserSuitMotionSetWin + BoardBowserSuitPlayerModelGet + BoardBowserSuitPlayerModelKill + BoardCameraCullCheck + BoardCameraDirGet + BoardCameraFovSet + BoardCameraMotionIsDone + BoardCameraMotionStart + BoardCameraMotionStartEx + BoardCameraMotionWait + BoardCameraMoveSet + BoardCameraNearFarGet + BoardCameraNearFarSet + BoardCameraOffsetSet + BoardCameraPointDirGet + BoardCameraPosCalcFuncSet + BoardCameraPosGet + BoardCameraPosSet + BoardCameraQuakeReset + BoardCameraQuakeSet + BoardCameraRotGet + BoardCameraRotSet + BoardCameraScissorSet + BoardCameraTargetGet + BoardCameraTargetModelSet + BoardCameraTargetPlayerSet + BoardCameraTargetSet + BoardCameraTargetSpaceSet + BoardCameraViewSet + BoardCameraXRotZoomSet + BoardCameraZoomGet + BoardCameraZoomSet + BoardCharWheelCheck + BoardCharWheelInit + BoardCharWheelResultGet + BoardCharWheelSpeedSet + BoardCharWheelTargetSet + BoardCharWheelWait + BoardCoinChgCreate + BoardCoinChgExist + BoardComFarPlayerFind + BoardComKeySetDown + BoardComKeySetLeft + BoardComKeySetRight + BoardComKeySetUp + BoardComPreferItemCheck + BoardComPreferItemGet + BoardConfettiCreate + BoardConfettiKill + BoardConfettiStop + BoardDAngleCalc + BoardDAngleCalcRange + BoardDAngleCalcVec + BoardDiceDoneCheck + BoardDicePauseAll + BoardDiceStop + BoardDiceValueSet + BoardEventFlagGet + BoardEventFlagReset + BoardEventFlagSet + BoardFilterFadeCheck + BoardFilterFadeInit + BoardFilterFadeOut + BoardFilterFadePauseCheck + BoardIsKill + BoardItemGetDestPos + BoardItemModelGet + BoardItemPrevGet + BoardItemPrevSet + BoardItemStart + BoardItemStatusKill + BoardItemUseExec + BoardJunctionMaskReset + BoardJunctionMaskSet + BoardJunctionMaskZero + BoardKill + BoardLandBlueExec + BoardLandRedExec + BoardLightHookSet + BoardLightResetExec + BoardLightSetExec + BoardLotteryExec + BoardLotteryHostGet + BoardLotteryHostSet + BoardLotteryInit + BoardLotteryKill + BoardLotteryTutorialExec + BoardMGCreate + BoardMGDoneFlagGet + BoardMGDoneFlagSet + BoardMGExit + BoardMGSetupExec + BoardMGSetupTutorialExec + BoardMTXCalcLookAt + BoardModelAlphaSet + BoardModelAmbSet + BoardModelAmbSetAll + BoardModelAttrReset + BoardModelAttrSet + BoardModelCameraSet + BoardModelCameraSetAll + BoardModelCreate + BoardModelCreateCharacter + BoardModelCreateParam + BoardModelDummyUpdate + BoardModelExistCheck + BoardModelExistDupe + BoardModelHideSetAll + BoardModelHookObjReset + BoardModelHookReset + BoardModelHookSet + BoardModelIDGet + BoardModelInit + BoardModelKill + BoardModelKillAll + BoardModelLayerSet + BoardModelLayerSetAll + BoardModelMotionCreate + BoardModelMotionEndCheck + BoardModelMotionKill + BoardModelMotionMaxTimeGet + BoardModelMotionShapeEndCheck + BoardModelMotionShapeMaxTimeGet + BoardModelMotionShapeSet + BoardModelMotionShapeSpeedGet + BoardModelMotionShapeSpeedSet + BoardModelMotionShapeStartEndSet + BoardModelMotionShapeTimeGet + BoardModelMotionShiftSet + BoardModelMotionSpeedGet + BoardModelMotionSpeedSet + BoardModelMotionStart + BoardModelMotionStartEndSet + BoardModelMotionTimeGet + BoardModelMotionTimeSet + BoardModelMotionUpdateSet + BoardModelMtxGet + BoardModelMtxSet + BoardModelPassSet + BoardModelPosGet + BoardModelPosSet + BoardModelPosSetV + BoardModelRotGet + BoardModelRotSet + BoardModelRotSetV + BoardModelRotYGet + BoardModelRotYSet + BoardModelScaleGet + BoardModelScaleSet + BoardModelScaleSetV + BoardModelVisibilityGet + BoardModelVisibilitySet + BoardModelVisibilityUpdate + BoardModelVoiceEnableSet + BoardMusLoudSet + BoardMusStart + BoardMusStartBoard + BoardMusStatusGet + BoardMusVolPanSet + BoardMushroomExec + BoardNextOvlSet + BoardObjectSetup + BoardPartyConfigSet + BoardPauseActiveCheck + BoardPickerBackFlagSet + BoardPickerChoiceGet + BoardPickerCreate + BoardPickerDoneCheck + BoardPickerPosGet + BoardPlayerAmbSet + BoardPlayerAutoSizeGet + BoardPlayerAutoSizeSet + BoardPlayerBtnDownWait + BoardPlayerCameraSet + BoardPlayerCoinsAdd + BoardPlayerCoinsGet + BoardPlayerCoinsSet + BoardPlayerCopyEyeMat + BoardPlayerCornerPosGet + BoardPlayerCornerPosSet + BoardPlayerCurrMotionGet + BoardPlayerDiceJumpCheck + BoardPlayerDiceJumpStart + BoardPlayerExistCheck + BoardPlayerGetCharMess + BoardPlayerGetCharName + BoardPlayerIdleSet + BoardPlayerInit + BoardPlayerItemAdd + BoardPlayerItemCount + BoardPlayerItemFind + BoardPlayerItemRemove + BoardPlayerLayerSet + BoardPlayerModelAttrReset + BoardPlayerModelAttrSet + BoardPlayerModelInit + BoardPlayerModelKill + BoardPlayerMotBlendCheck + BoardPlayerMotBlendSet + BoardPlayerMotionCreate + BoardPlayerMotionEndCheck + BoardPlayerMotionEndWait + BoardPlayerMotionKill + BoardPlayerMotionMaxTimeGet + BoardPlayerMotionShiftSet + BoardPlayerMotionSpeedSet + BoardPlayerMotionStart + BoardPlayerMotionStartEndSet + BoardPlayerMotionTimeGet + BoardPlayerMotionTimeSet + BoardPlayerMoveAwayIsDone + BoardPlayerMoveAwayStart + BoardPlayerMoveAwayStartCurr + BoardPlayerMoveBetween + BoardPlayerMoveToAsync + BoardPlayerMtxSet + BoardPlayerPosGet + BoardPlayerPosLerpStart + BoardPlayerPosSet + BoardPlayerPosSetV + BoardPlayerPostTurnHookSet + BoardPlayerPreTurnHookSet + BoardPlayerRankCalc + BoardPlayerResizeAnimExec + BoardPlayerRotGet + BoardPlayerRotSet + BoardPlayerRotSetV + BoardPlayerRotYGet + BoardPlayerRotYSet + BoardPlayerSameTeamFind + BoardPlayerScaleGet + BoardPlayerScaleSet + BoardPlayerScaleSetV + BoardPlayerSizeGet + BoardPlayerSizeSet + BoardPlayerStarsAdd + BoardPlayerVoiceEnableSet + BoardRand + BoardRandFloat + BoardRandMod + BoardRollCreate + BoardRollDispSet + BoardRollExec + BoardRollKill + BoardRollTutorialSet + BoardRollUpdateSet + BoardSaveInit + BoardShopExec + BoardShopHostGet + BoardShopHostSet + BoardShopInit + BoardShopKill + BoardShopTutorialExec + BoardSpaceAttrReset + BoardSpaceAttrSet + BoardSpaceBlockExec + BoardSpaceCameraSet + BoardSpaceCornerPosGet + BoardSpaceCountGet + BoardSpaceDestroy + BoardSpaceFlagGet + BoardSpaceFlagPosGet + BoardSpaceFlagSearch + BoardSpaceGet + BoardSpaceHide + BoardSpaceInit + BoardSpaceLandEventFuncSet + BoardSpaceLandExec + BoardSpaceLinkFlagSearch + BoardSpaceLinkTargetListGet + BoardSpaceLinkTransformGet + BoardSpaceLinkTypeListGet + BoardSpaceLinkTypeSearch + BoardSpacePosGet + BoardSpaceRead + BoardSpaceRotGet + BoardSpaceStarCheck + BoardSpaceStarGet + BoardSpaceStarGetCurr + BoardSpaceStarGetRandom + BoardSpaceStarMove + BoardSpaceStarSetIndex + BoardSpaceTypeGet + BoardSpaceTypeSet + BoardSpaceWalkEventExec + BoardSpaceWalkEventFuncSet + BoardSpaceWalkExec + BoardSpaceWalkMiniEventExec + BoardSpaceWalkMiniEventFuncSet + BoardSpriteCreate + BoardStarExec + BoardStarGive + BoardStarHostMdlGet + BoardStarHostSet + BoardStatusCreate + BoardStatusGraySet + BoardStatusHammerCreate + BoardStatusHammerKill + BoardStatusHammerShowSet + BoardStatusItemHideSet + BoardStatusItemSet + BoardStatusKill + BoardStatusPosGet + BoardStatusPosSet + BoardStatusShowSet + BoardStatusShowSetAll + BoardStatusShowSetForce + BoardStatusStopCheck + BoardStatusTargetPosSet + BoardStatusVisibleGet + BoardStoryConfigSet + BoardTutorialBlockSetPos + BoardTutorialDirInputSet + BoardTutorialHookSet + BoardTutorialHostSet + BoardTutorialItemSet + BoardVecDistXZCalc + BoardVecMaxDistXZCheck + BoardVecMinDistCheck + BoardViewFocusGetPos + BoardViewFocusSet + BoardViewMoveCheck + BoardViewMapExec + BoardViewMoveEnd + BoardViewMoveStart + BoardWarpExec + BoardWinAttrReset + BoardWinAttrSet + BoardWinChoiceDisable + BoardWinChoiceGet + BoardWinChoiceNowGet + BoardWinChoiceNowGet2 + BoardWinCreate + BoardWinCreateChoice + BoardWinInit + BoardWinInsertMesSet + BoardWinKeyWait + BoardWinKill + BoardWinKillAll + BoardWinPause + BoardWinPlayerSet + BoardWinPriSet + BoardWinSpeedGet + BoardWinSpeedSet + BoardWinUnusedArraySet + BoardWinWait + BoardYourTurnExec C_MTXConcat C_MTXCopy + C_MTXIdentity + C_MTXInvXpose + C_MTXInverse C_MTXLightPerspective C_MTXLookAt C_MTXMultVec + C_MTXMultVecArray + C_MTXMultVecSR + C_MTXOrtho C_MTXPerspective + C_MTXQuat + C_MTXROMultVecArray + C_MTXReorder + C_MTXRotAxisRad C_MTXRotRad C_MTXScale C_MTXTrans - C_MTXInverse - C_MTXInvXpose - C_MTXIdentity + C_MTXTranspose C_VECAdd C_VECCrossProduct + C_VECDistance C_VECDotProduct + C_VECHalfAngle C_VECMag C_VECNormalize C_VECScale C_VECSubtract - mtxRot - mtxRotCat - byteswap_u32 + C_VECSquareDistance + C_VECSquareMag + C_QUATMultiply + C_QUATNormalize + C_QUATInverse + C_QUATRotAxisRad + C_QUATSlerp + CamMotionEx + CamMotionEx2 + CharAMemPtrGet + CharARAMOpen + CharKill + CharKillAll + CharManInit + CharModelCoinEffectCreate + CharModelCreate + CharModelDataClose + CharModelEffectCreate + CharModelEffectEnableSet + CharModelEffectNpcInit + CharModelEffectNpcInitSilent + CharModelHookNameGet + CharModelItemHookCreate + CharModelKill + CharModelLayerSetAll + CharModelLayerSetAll2 + CharModelMotionCreate + CharModelMotionDataClose + CharModelMotionEndCheck + CharModelMotionIndexSet + CharModelMotionKill + CharModelMotionMaxTimeGet + CharModelMotionSet + CharModelMotionShiftIDGet + CharModelMotionShiftSet + CharModelMotionShiftTimeGet + CharModelMotionSpeedSet + CharModelMotionTimeGet + CharModelMotionTimeSet + CharModelStepTypeSet + CharModelTexNameGet + CharModelVoiceEnableSet + DCFlushRange + DCFlushRangeNoSync + DCInvalidateRange + DCStoreRange + DCStoreRangeNoSync + EnvelopeProc + GWBoardMaxCoinsGet + GWBoardMaxCoinsSet + GWBoardMaxStarsGet + GWBoardMaxStarsSet + GWBoardPlayCountAdd + GWBoardPlayCountGet + GWBoardWinCountGet + GWBoardWinCountInc + GWCharColorGet + GWCoinsAdd + GWCoinsSet + GWGameStatReset + GWMGAvailGet + GWMGAvailSet + GWMGCustomGet + GWMGCustomSet + GWMGCustomReset + GWMGRecordGet + GWMGRecordSet + GWMessDelayGet + GWStarsGet + GWStarsSet + GWTotalStarsAdd + GXBegin + GXBeginDisplayList + GXCallDisplayList + GXClearVtxDesc + GXColor1x16 + GXColor1x8 + GXColor3u8 + GXColor4u8 + GXCopyTex + GXDestroyTexObj + GXDestroyTlutObj + GXDrawDone + GXEnd + GXEndDisplayList + GXGetProjectionv + GXGetTexBufferSize + GXGetViewportv + GXInitLightAttn + GXInitLightAttnK + GXInitLightColor + GXInitLightDir + GXInitLightDistAttn + GXInitLightPos + GXInitLightSpot + GXInitSpecularDir + GXInitTexObj + GXInitTexObjCI + GXInitTexObjLOD + GXInitTlutObj + GXLoadLightObjImm + GXLoadNrmMtxImm + GXLoadPosMtxImm + GXLoadTexMtxImm + GXLoadTexObj + GXLoadTlut + GXNormal1x16 + GXNormal3f32 + GXPixModeSync + GXPosition1x16 + GXPosition1x8 + GXPosition2f32 + GXPosition2s16 + GXPosition2u16 + GXPosition3f32 + GXPosition3u8 + GXProject + GXSetAlphaCompare + GXSetArray + GXSetBlendMode + GXSetChanAmbColor + GXSetChanCtrl + GXSetChanMatColor + GXSetAlphaUpdate + GXSetColorUpdate + GXSetCopyClear + GXSetCullMode + GXSetCurrentMtx + GXSetFog + GXSetIndTexCoordScale + GXSetIndTexMtx + GXSetIndTexOrder + GXSetLineWidth + GXSetNumChans + GXSetNumIndStages + GXSetNumTevStages + GXSetNumTexGens + GXSetProjection + GXSetScissor + GXSetTevAlphaIn + GXSetTevAlphaOp + GXSetTevColor + GXSetTevColorIn + GXSetTevColorOp + GXSetTevDirect + GXSetTevIndWarp + GXSetTevOp + GXSetTevOrder + GXSetTexCoordGen2 + GXSetTexCopyDst + GXSetTexCopySrc + GXSetViewport + GXSetVtxAttrFmt + GXSetVtxDesc + GXSetZCompLoc + GXSetZMode + GXSetZTexture + GXTexCoord1x16 + GXTexCoord2f32 + GXUnknownu16 + HmfInverseMtxF3X3 + Hu3D2Dto3D + Hu3D3Dto2D + Hu3DAllKill + Hu3DAnimAllKill + Hu3DAnimAttrReset + Hu3DAnimAttrSet + Hu3DAnimBankSet + Hu3DAnimCreate + Hu3DAnimExec + Hu3DAnimInit + Hu3DAnimKill + Hu3DAnimLink + Hu3DAnimSet + Hu3DAnimSpeedSet + Hu3DAnmNoSet + Hu3DBGColorSet + Hu3DCameraAllKill + Hu3DCameraCreate + Hu3DCameraKill + Hu3DCameraMotionOff + Hu3DCameraMotionOn + Hu3DCameraMotionStart + Hu3DCameraPerspectiveSet + Hu3DCameraPosSet + Hu3DCameraPosSetV + Hu3DCameraScissorSet + Hu3DCameraSet + Hu3DCameraViewportSet + Hu3DFogClear + Hu3DFogSet + Hu3DGLightColorSet + Hu3DGLightCreate + Hu3DGLightCreateV + Hu3DGLightInfinitytSet + Hu3DGLightKill + Hu3DGLightPointSet + Hu3DGLightPosAimSet + Hu3DGLightPosAimSetV + Hu3DGLightPosSet + Hu3DGLightPosSetV + Hu3DGLightSpotSet + Hu3DGLightStaticSet + Hu3DHookFuncCreate + Hu3DJointMotion + Hu3DLLightColorSet + Hu3DLLightCreate + Hu3DLLightCreateV + Hu3DLLightInfinitytSet + Hu3DLLightKill + Hu3DLLightPointSet + Hu3DLLightPosAimSet + Hu3DLLightPosAimSetV + Hu3DLLightPosSet + Hu3DLLightPosSetV + Hu3DLLightSpotSet + Hu3DLLightStaticSet + Hu3DLayerHookSet + Hu3DLighInit + Hu3DLightAllKill + Hu3DLightSet + Hu3DMipMapSet + Hu3DModelAllKill + Hu3DModelAmbSet + Hu3DModelAttrGet + Hu3DModelAttrReset + Hu3DModelAttrSet + Hu3DModelCameraCreate + Hu3DModelCameraInfoSet + Hu3DModelCameraSet + Hu3DModelClusterAttrReset + Hu3DModelClusterAttrSet + Hu3DModelCreate + Hu3DModelHiliteMapSet + Hu3DModelHiliteTypeSet + Hu3DModelHookObjReset + Hu3DModelHookReset + Hu3DModelHookSet + Hu3DModelKill + Hu3DModelLayerSet + Hu3DModelLightInfoSet + Hu3DModelLink + Hu3DModelMotionAttrGet + Hu3DModelObjDraw + Hu3DModelObjDrawInit + Hu3DModelObjMtxGet + Hu3DModelObjPosGet + Hu3DModelObjPtrGet + Hu3DModelPosSet + Hu3DModelPosSetV + Hu3DModelProjectionReset + Hu3DModelProjectionSet + Hu3DModelReflectTypeSet + Hu3DModelRotSet + Hu3DModelRotSetV + Hu3DModelScaleSet + Hu3DModelScaleSetV + Hu3DModelShadowDispOff + Hu3DModelShadowDispOn + Hu3DModelShadowMapObjSet + Hu3DModelShadowMapSet + Hu3DModelShadowReset + Hu3DModelShadowSet + Hu3DModelTPLvlSet + Hu3DMotionAllKill + Hu3DMotionCalc + Hu3DMotionClusterNoSet + Hu3DMotionClusterReset + Hu3DMotionClusterSet + Hu3DMotionCreate + Hu3DMotionEndCheck + Hu3DMotionExec + Hu3DMotionForceSet + Hu3DMotionIDGet + Hu3DMotionInit + Hu3DMotionKill + Hu3DMotionMaxTimeGet + Hu3DMotionModelCreate + Hu3DMotionMotionMaxTimeGet + Hu3DMotionNext + Hu3DMotionNoMotReset + Hu3DMotionNoMotSet + Hu3DMotionOverlayReset + Hu3DMotionOverlaySet + Hu3DMotionOverlaySpeedSet + Hu3DMotionOverlayTimeGet + Hu3DMotionOverlayTimeSet + Hu3DMotionSet + Hu3DMotionShapeIDGet + Hu3DMotionShapeMaxTimeGet + Hu3DMotionShapeReset + Hu3DMotionShapeSet + Hu3DMotionShapeSpeedSet + Hu3DMotionShapeStartEndSet + Hu3DMotionShapeTimeSet + Hu3DMotionShiftIDGet + Hu3DMotionShiftMaxTimeGet + Hu3DMotionShiftSet + Hu3DMotionShiftSpeedSet + Hu3DMotionShiftStartEndSet + Hu3DMotionShiftTimeGet + Hu3DMotionSpeedSet + Hu3DMotionStartEndSet + Hu3DMotionTimeGet + Hu3DMotionTimeSet + Hu3DMtxRotGet + Hu3DMtxScaleGet + Hu3DMtxTransGet + Hu3DNoSyncSet + Hu3DParManAllKill + Hu3DParManAttrReset + Hu3DParManAttrSet + Hu3DParManColorSet + Hu3DParManCreate + Hu3DParManInit + Hu3DParManKill + Hu3DParManLink + Hu3DParManModelIDGet + Hu3DParManPosSet + Hu3DParManPtrGet + Hu3DParManRotSet + Hu3DParManTimeLimitSet + Hu3DParManVacumeSet + Hu3DParManVecSet + Hu3DParticleAnimModeSet + Hu3DParticleAttrReset + Hu3DParticleAttrSet + Hu3DParticleBlendModeSet + Hu3DParticleCntSet + Hu3DParticleColSet + Hu3DParticleCreate + Hu3DParticleHookSet + Hu3DParticleScaleSet + Hu3DParticleTPLvlSet + Hu3DParticleZRotSet + Hu3DPauseSet + Hu3DProjectionCreate + Hu3DProjectionKill + Hu3DProjectionPosSet + Hu3DProjectionTPLvlSet + Hu3DReflectMapSet + Hu3DReflectNoSet + Hu3DShadowCreate + Hu3DShadowPosSet + Hu3DShadowSizeSet + Hu3DShadowTPLvlSet + Hu3DSubMotionExec + Hu3DTexScrollAllKill + Hu3DTexScrollCreate + Hu3DTexScrollKill + Hu3DTexScrollPauseDisableSet + Hu3DTexScrollPosMoveSet + Hu3DTexScrollPosSet + Hu3DTexScrollRotMoveSet + Hu3DTexScrollRotSet + HuAMemDump + HuAR_ARAMtoMRAMFileRead + HuAR_DVDtoARAM + HuAR_MRAMtoARAM + HuARDMACheck + HuAudAUXVolSet + HuAudAllStop + HuAudCharVoicePlay + HuAudCharVoicePlayPos + HuAudFXAllStop + HuAudFXEmiterPlay + HuAudFXEmiterUpDate + HuAudFXFadeOut + HuAudFXListnerKill + HuAudFXListnerSetEX + HuAudFXListnerUpdate + HuAudFXPanning + HuAudFXPauseAll + HuAudFXPitchSet + HuAudFXPlay + HuAudFXPlayVol + HuAudFXPlayVolPan + HuAudFXStatusGet + HuAudFXStop + HuAudFXVolSet + HuAudFadeOut + HuAudPlayerVoicePlay + HuAudSStreamAllFadeOut + HuAudSStreamAllStop + HuAudSStreamFadeOut + HuAudSStreamPlay + HuAudSStreamStatGet + HuAudSeqAllFadeOut + HuAudSeqMidiCtrlGet + HuAudSeqFadeOut + HuAudSeqPause + HuAudSeqPauseAll + HuAudSeqPlay + HuAudSndCommonGrpSet + HuAudSndGrpSet + HuAudSndGrpSetSet + HuAudStreamFadeOut + HuAudStreamPlay + HuAudVoiceInit + HuCardCheck + HuCardClose + HuCardCreate + HuCardDelete + HuCardFormat + HuCardFreeSpaceGet + HuCardMount + HuCardOpen + HuCardRead + HuCardSectorSizeGet + HuCardSlotCheck + HuCardUnMount + HuCardWrite + HuDataClose + HuDataCloseMulti + HuDataDirClose + HuDataDirCloseNum + HuDataDirRead + HuDataDirReadAsync + HuDataDirReadNumAsync + HuDataGetAsyncStat + HuDataGetSize + HuDataInit + HuDataRead + HuDataReadChk + HuDataReadMulti + HuDataReadNum + HuDataReadNumHeapShortForce + HuDataSelHeapRead + HuDataSelHeapReadNum + HuDecodeData + HuMemDirectFree + HuMemDirectFreeNum + HuMemDirectMalloc + HuMemDirectMallocNum + HuMemHeapDump + HuMemHeapPtrGet + HuMemHeapSizeGet + HuMemUsedMallocSizeGet + HuPadInit + HuPadRead + HuPadRumbleAllStop + HuPadRumbleGet + HuPadRumbleSet + HuPadRumbleStop + HuPadStatGet + HuPrcAllPause + HuPrcCall + HuPrcChildCreate + HuPrcChildKill + HuPrcChildLink + HuPrcChildUnlink + HuPrcCreate + HuPrcCurrentGet + HuPrcDestructorSet + HuPrcDestructorSet2 + HuPrcEnd + HuPrcInit + HuPrcKill + HuPrcMemAlloc + HuPrcMemFree + HuPrcResetStat + HuPrcSetStat + HuPrcSleep + HuPrcVSleep + HuPrcWakeup + HuSetVecF + HuSprAnimKill + HuSprAnimLock + HuSprAnimMake + HuSprAnimRead + HuSprAttrReset + HuSprAttrSet + HuSprBankSet + HuSprClose + HuSprColorSet + HuSprCreate + HuSprData + HuSprDrawNoSet + HuSprGrpCreate + HuSprGrpData + HuSprGrpDrawNoSet + HuSprGrpKill + HuSprGrpMemberKill + HuSprGrpMemberSet + HuSprGrpPosSet + HuSprGrpScaleSet + HuSprGrpScissorSet + HuSprGrpTPLvlSet + HuSprInit + HuSprPosSet + HuSprPriSet + HuSprScaleSet + HuSprSpeedSet + HuSprTPLvlSet + HuSprTexLoad + HuSubVecF + HuSysVWaitSet + HuTHP3DCreate + HuTHP3DCreateVol + HuTHPClose + HuTHPEndCheck + HuTHPFrameGet + HuTHPRestart + HuTHPSetVolume + HuTHPSprCreate + HuTHPSprCreateVol + HuTHPStop + HuTHPTotalFrameGet + HuWinAllKill + HuWinAnimSet + HuWinAttrReset + HuWinAttrSet + HuWinBGColSet + HuWinBGTPLvlSet + HuWinCenterPosSet + HuWinChoiceDisable + HuWinChoiceGet + HuWinChoiceNowGet + HuWinChoiceNumGet + HuWinComKeyReset + HuWinComKeySet + HuWinComKeyWait + HuWinCreate + HuWinDisablePlayerReset + HuWinDisablePlayerSet + HuWinDispOff + HuWinDispOn + HuWinDrawNoSet + HuWinExAnimIn + HuWinExAnimOut + HuWinExAnimPopIn + HuWinExCleanup + HuWinExCreate + HuWinExCreateStyled + HuWinHomeClear + HuWinInit + HuWinInsertMesSet + HuWinInsertMesSizeGet + HuWinKeyWaitEntry + HuWinKeyWaitNumGet + HuWinKill + HuWinMesColSet + HuWinMesMaxSizeBetGet + HuWinMesMaxSizeGet + HuWinMesPalSet + HuWinMesRead + HuWinMesSet + HuWinMesSizeCancelCRSet + HuWinMesSpeedSet + HuWinMesWait + HuWinPosSet + HuWinPriSet + HuWinPushKeySet + HuWinScaleSet + HuWinScissorSet + HuWinSprIDGet + HuWinSprKill + HuWinSprPosSet + HuWinSprPriSet + HuWinSprSet + HuWinStatGet + HuWinZRotSet + HuWindowInit + MakeDisplayList + MGSeqCreate + MGSeqDoneCheck + MGSeqInit + MGSeqKill + MGSeqKillAll + MGSeqParamSet + MGSeqPosSet + MGSeqSprKill + MGSeqStatGet + MakeObjectName + MapPos + MapWall + MessData_MesPtrGet + OSGetTick + OSGetTime + OSPanic + OSReport + OSTicksToCalendarTime + OSSetSoundMode + PPCSync + SetDefLight + SLCheckSumCheck + SLCheckSumSet + SLCommonSet + SLCurBoxNoSet + SLCurSlotNoSet + SLFileClose + SLFileCreate + SLFileOpen + SLFileRead + SLFileWrite + SLLoad + SLLoadBoard + SLLoadBoardStory + SLLoadGameStat + SLSave + SLSaveBoard + SLSaveBoardStory + SLSaveDataMake + SLSaveFlagGet + SLSaveFlagSet + SLSerialNoCheck + SLSerialNoGet + SLStatSet + WipeColorSet + WipeCreate + WipeExecAlways + WipeInit + WipeStatGet + _CheckFlag + _ClearFlag + _SetFlag byteswap_s32 - msmMusSetMasterVolume - msmSysGetOutputMode - BoardRollExec - BoardRollKill - BoardDiceValueSet - BoardDiceStop - BoardDicePauseAll - BoardDiceDoneCheck - BoardObjectSetup - BoardStoryConfigSet - BoardPartyConfigSet - BoardSaveInit - BoardMGExit - BoardDAngleCalcVec - BoardDAngleCalc - BoardVecMaxDistXZCheck - BoardIsKill - BoardKill - BoardCameraScissorSet - BoardCameraViewSet - BoardCameraDirGet - BoardCameraPointDirGet - BoardCameraMoveSet - BoardCameraQuakeSet - BoardCameraQuakeReset - BoardCameraTargetSet - BoardCameraPosGet - BoardCameraTargetGet - BoardCameraRotGet - BoardCameraZoomGet - BoardCameraPosSet - BoardCameraXRotZoomSet - BoardCameraZoomSet - BoardCameraRotSet - BoardCameraFovSet - BoardCameraOffsetSet - BoardCameraTargetPlayerSet - BoardCameraTargetModelSet - BoardCameraTargetSpaceSet - BoardCameraCullCheck - BoardCameraMotionIsDone - BoardCameraMotionStartEx - BoardCameraMotionStart - BoardCameraMotionWait - BoardCameraNearFarSet - BoardCameraNearFarGet - BoardEventFlagSet - BoardEventFlagReset - BoardEventFlagGet - BoardMGCreate - BoardDAngleCalcRange - BoardVecDistXZCalc - BoardVecMinDistCheck - BoardArcSin - BoardArcCos - BoardMTXCalcLookAt - BoardLightSetExec - BoardLightResetExec - BoardLightHookSet - BoardMGDoneFlagSet - BoardMGDoneFlagGet - BoardMGSetupExec - BoardFilterFadeOut - BoardFilterFadeInit - BoardFilterFadePauseCheck - BoardFilterFadeCheck - BoardConfettiCreate - BoardConfettiKill - BoardConfettiStop - BoardRand - BoardRandMod - BoardRandFloat - boardRandSeed - BoardViewMoveCheck - BoardViewMoveEnd - BoardViewFocusGetPos - BoardViewMoveStart - BoardViewFocusSet - boardTurnFunc - boardStarShowNextHook - boardBowserHook - boardTurnStartFunc - boardStarGiveHook - boardMainProc - boardObjMan - BoardItemStart - BoardCharWheelInit - BoardCharWheelCheck - BoardCharWheelWait - BoardCharWheelResultGet - BoardCharWheelSpeedSet - BoardSpaceInit - BoardSpaceDestroy - BoardSpaceLandExec - BoardSpaceWalkEventFuncSet - BoardSpaceWalkMiniEventFuncSet - BoardSpaceLandEventFuncSet - BoardSpaceWalkEventExec - BoardSpaceWalkMiniEventExec - BoardSpaceBlockExec - BoardSpaceWalkExec - BoardSpaceCameraSet - BoardSpaceCornerPosGet - BoardSpaceStarGetRandom - BoardSpaceCountGet - BoardSpaceGet - BoardSpaceFlagPosGet - BoardSpaceFlagGet - BoardSpaceLinkTypeSearch - BoardSpacePosGet - BoardSpaceRotGet - BoardSpaceRead - BoardSpaceAttrReset - BoardSpaceAttrSet - BoardSpaceLinkTargetListGet - BoardSpaceFlagSearch - BoardSpaceTypeGet - BoardSpaceTypeSet - BoardSpaceLinkFlagSearch - BoardSpaceLinkTypeListGet - BoardSpaceLinkTransformGet - BoardSpaceHide - BoardSpaceStarCheck - BoardSpaceStarMove - BoardSpaceStarSetIndex - BoardSpaceStarGetCurr - BoardSpaceStarGet - BoardStarHostSet - BoardStarHostMdlGet - BoardBooHouseHostSet - BoardBooHouseHostGet - BoardLotteryHostSet - BoardLotteryHostGet - BoardShopHostSet - BoardShopHostGet - BoardPauseActiveCheck - BoardLotteryInit - BoardLotteryKill - BoardLotteryExec - BoardBooHouseCreate - BoardBooHouseKill - BoardBooHouseExec - BoardLandBlueExec - BoardLandRedExec - BoardWarpExec - BoardMushroomExec - BoardStarExec - BoardStarGive - BoardBattleExec - BoardShopInit - BoardShopKill - BoardShopExec - BoardModelInit - BoardModelKillAll - BoardModelDummyUpdate - BoardModelVisibilityUpdate - BoardModelKill - BoardModelExistCheck - BoardModelExistDupe - BoardModelIDGet - BoardModelAlphaSet - BoardModelMotionStart - BoardModelMotionShiftSet - BoardModelAttrSet - BoardModelAttrReset - BoardModelMotionTimeSet - BoardModelMotionSpeedSet - BoardModelMotionSpeedGet - BoardModelMotionStartEndSet - BoardModelMotionUpdateSet - BoardModelMotionShapeSet - BoardModelMotionShapeTimeGet - BoardModelMotionShapeMaxTimeGet - BoardModelMotionShapeSpeedSet - BoardModelMotionShapeSpeedGet - BoardModelMotionShapeEndCheck - BoardModelMotionShapeStartEndSet - BoardModelMtxSet - BoardModelMtxGet - BoardModelPosSetV - BoardModelRotSetV - BoardModelScaleSetV - BoardModelPosSet - BoardModelRotSet - BoardModelScaleSet - BoardModelPosGet - BoardModelRotGet - BoardModelScaleGet - fn_8006DDE8 - BoardModelVisibilitySet - BoardModelVisibilityGet - BoardModelLayerSet - BoardModelCameraSet - BoardModelPassSet - fn_8006DC1C - BoardModelHookSet - BoardModelHookReset - BoardModelHookObjReset - BoardModelMotionEndCheck - BoardModelMotionTimeGet - BoardModelMotionMaxTimeGet - BoardModelMotionCreate - BoardModelMotionKill - BoardModelCreate - BoardModelCreateCharacter - BoardModelCreateParam - BoardModelLayerSetAll - BoardModelCameraSetAll - BoardModelHideSetAll - BoardModelAmbSet - BoardModelAmbSetAll - BoardModelRotYSet - BoardModelRotYGet - BoardModelVoiceEnableSet - BoardPlayerModelInit - BoardPlayerModelKill - BoardPlayerInit - BoardPlayerGetCharMess - BoardPlayerGetCharName - BoardPlayerLayerSet - BoardPlayerCameraSet - fn_80062A40 - BoardPlayerExistCheck - BoardPlayerMtxSet - BoardPlayerPosSet - BoardPlayerPosSetV - BoardPlayerPosGet - BoardPlayerRotSet - BoardPlayerRotSetV - BoardPlayerRotGet - BoardPlayerRotYSet - BoardPlayerRotYGet - BoardPlayerScaleSet - BoardPlayerScaleSetV - BoardPlayerScaleGet - BoardPlayerCornerPosSet - BoardPlayerCornerPosGet - BoardPlayerSizeGet - BoardPlayerSizeSet - BoardPlayerCurrMotionGet - BoardPlayerMotionEndCheck - BoardPlayerMotionEndWait - BoardPlayerMotionMaxTimeGet - BoardPlayerMotionTimeGet - BoardPlayerVoiceEnableSet - BoardPlayerMotionStart - BoardPlayerMotionShiftSet - BoardPlayerMotionCreate - BoardPlayerMotionKill - BoardPlayerMotionSpeedSet - BoardPlayerMotionTimeSet - BoardPlayerMotionStartEndSet - BoardPlayerModelAttrSet - BoardPlayerModelAttrReset - BoardPlayerAmbSet - BoardPlayerIdleSet - BoardPlayerMotBlendSet - BoardPlayerMotBlendCheck - BoardPlayerRankCalc - BoardItemPrevGet - BoardItemPrevSet - BoardPlayerItemRemove - BoardPlayerItemFind - BoardPlayerItemAdd - BoardPlayerItemCount - BoardPlayerCoinsAdd - BoardPlayerCoinsGet - BoardPlayerCoinsSet - BoardPlayerStarsAdd - BoardPlayerSameTeamFind - BoardPlayerPosLerpStart - BoardPlayerMoveToAsync - BoardPlayerDiceJumpStart - BoardPlayerDiceJumpCheck - BoardRollCreate - BoardRollUpdateSet - BoardRollDispSet - BoardPlayerBtnDownWait - BoardPlayerAutoSizeSet - BoardPlayerAutoSizeGet - BoardPlayerMoveAwayIsDone - BoardPlayerMoveAwayStartCurr - BoardPlayerMoveAwayStart - BoardPlayerPreTurnHookSet - BoardPlayerPostTurnHookSet - BoardPlayerCopyEyeMat - BoardBowserSuitInit - BoardBowserSuitKill - BoardBowserSuitModelGet - BoardBowserSuitPlayerModelGet - BoardBowserSuitPlayerModelKill - BoardBowserSuitMotionSetWait - BoardBowserSuitMotionSetWalk - BoardBowserSuitMotionSetWin - BoardBowserSuitMotionSetJump - BoardJunctionMaskSet - BoardJunctionMaskReset - BoardJunctionMaskZero - BoardPlayerResizeAnimExec - BoardWinCreate - BoardWinCreateChoice - BoardWinChoiceGet - BoardWinWait - BoardWinKill - BoardWinInit - BoardWinKillAll - BoardWinUnusedArraySet - BoardWinPause - BoardWinInsertMesSet - BoardWinAttrSet - BoardWinAttrReset - BoardWinChoiceDisable - BoardWinKeyWait - BoardWinSpeedGet - BoardWinSpeedSet - BoardWinPriSet - BoardWinChoiceNowGet - BoardWinChoiceNowGet2 - BoardStatusCreate - BoardStatusKill - BoardStatusVisibleGet - BoardStatusShowSet - BoardStatusShowSetForce - BoardStatusGraySet - BoardStatusShowSetAll - BoardStatusStopCheck - BoardSpriteCreate - BoardStatusTargetPosSet - BoardStatusPosSet - BoardStatusPosGet - BoardStatusItemHideSet - BoardStatusHammerCreate - BoardStatusHammerKill - BoardStatusHammerShowSet - BoardPickerCreate - BoardPickerDoneCheck - BoardPickerChoiceGet - BoardPickerPosGet - BoardPickerBackFlagSet - BoardItemGetDestPos - BoardItemUseExec - BoardItemStatusKill - BoardYourTurnExec - BoardMusStart - BoardAudSeqFadeOutFast - BoardAudSeqFadeOut - BoardMusLoudSet - BoardMusVolPanSet - BoardAudSeqPause - BoardMusStatusGet - BoardAudSeqFadeOutAll - BoardAudFXPlay - BoardAudFXStop - BoardComKeySetLeft - BoardComKeySetUp - BoardComKeySetRight - BoardComKeySetDown - BoardComPreferItemCheck - BoardComPreferItemGet - BoardComFarPlayerFind - boardTutorialData - BoardTutorialHookSet - BoardRollTutorialSet - BoardTutorialDirInputSet - BoardCharWheelTargetSet - BoardTutorialBlockSetPos - BoardTutorialItemSet - BoardTutorialHostSet - BoardMGSetupTutorialExec - BoardShopTutorialExec - BoardLotteryTutorialExec - BoardBooHouseTutorialExec + byteswap_u32 espAttrReset espAttrSet espBankSet @@ -416,480 +1031,59 @@ EXPORTS espSpeedSet espTPLvlSet espZRotSet - HuAudAllStop - HuAudFXPlay - HuAudFXListnerKill - HuAudFXEmiterPlay - HuAudFXEmiterUpDate - HuAudFXListnerSetEX - HuAudFXListnerUpdate - HuAudPlayerVoicePlay - HuAudAUXVolSet - HuAudCharVoicePlay - HuAudFXStop - HuAudSeqAllFadeOut - HuAudSeqFadeOut - HuAudSeqPlay - HuAudSStreamAllFadeOut - HuAudSStreamPlay - HuAudSndGrpSetSet - HuMemDirectMalloc - HuMemDirectMallocNum - HuMemDirectFree - HuMemHeapPtrGet - HuMemHeapDump - HuDataInit - HuDataDirRead - HuDataRead - HuDataReadNum - HuDataReadMulti - HuDataDirReadAsync - HuDataDirReadNumAsync - HuDataSelHeapRead - HuDataSelHeapReadNum - HuDataGetSize - HuDataDirClose - HuDataDirCloseNum - HuDataClose - HuDataCloseMulti - HuDataReadNumHeapShortForce - HuDecodeData - Hu3DLayerHookSet - Hu3DNoSyncSet - Hu3DModelCreate - Hu3DModelLink - Hu3DHookFuncCreate - Hu3DModelPosSet - Hu3DModelPosSetV - Hu3DModelRotSet - Hu3DModelRotSetV - Hu3DModelScaleSet - Hu3DModelScaleSetV - Hu3DModelKill - Hu3DModelAllKill - Hu3DModelAttrSet - Hu3DModelAttrReset - Hu3DModelAttrGet - Hu3DModelMotionAttrGet - Hu3DBGColorSet - Hu3DModelCameraSet - Hu3DModelLayerSet - Hu3DModelTPLvlSet - Hu3DModelHookSet - Hu3DModelHookReset - Hu3DModelHookObjReset - Hu3DModelAmbSet - Hu3DModelShadowDispOn - Hu3DModelShadowDispOff - Hu3DModelProjectionSet - Hu3DModelProjectionReset - Hu3DModelObjPosGet - Hu3DModelObjMtxGet - Hu3DModelHiliteTypeSet - Hu3DModelReflectTypeSet - Hu3DModelHiliteMapSet - HuPadInit - HuPadRead - HuPadRumbleSet - HuPadRumbleStop - HuPadRumbleAllStop - HuPadStatGet - HuPadRumbleGet - Hu3DCameraCreate - Hu3DCameraPerspectiveSet - Hu3DCameraViewportSet - Hu3DCameraScissorSet - Hu3DCameraPosSet - Hu3DCameraKill - Hu3DCameraPosSetV - Hu3DCameraAllKill - Hu3DCameraSet - Hu3DCameraMotionOn - Hu3DCameraMotionStart - Hu3DCameraMotionOff - Hu3DModelCameraCreate - Hu3DModelCameraInfoSet - Hu3DLighInit - Hu3DGLightCreate - Hu3DGLightCreateV - Hu3DGLightKill - Hu3DLightAllKill - Hu3DLightSet - Hu3DGLightSpotSet - Hu3DGLightInfinitytSet - Hu3DGLightPointSet - Hu3DGLightColorSet - Hu3DGLightPosSetV - Hu3DGLightPosSet - Hu3DGLightPosAimSetV - Hu3DGLightPosAimSet - Hu3DGLightStaticSet - Hu3DModelLightInfoSet - Hu3DReflectMapSet - Hu3DReflectNoSet - Hu3DFogSet - Hu3DFogClear - Hu3DModelObjPtrGet - Hu3DModelShadowSet - Hu3DModelShadowReset - Hu3DShadowCreate - Hu3DShadowPosSet - Hu3DShadowTPLvlSet - Hu3DModelShadowMapSet - Hu3DModelShadowMapObjSet - Hu3DShadowSizeSet - Hu3DMipMapSet - Hu3DModelClusterAttrSet - Hu3DModelClusterAttrReset - Hu3DLLightCreate - Hu3DLLightCreateV - Hu3DLLightSpotSet - Hu3DLLightInfinitytSet - Hu3DLLightPointSet - Hu3DLLightKill - Hu3DLLightColorSet - Hu3DLLightPosSetV - Hu3DLLightPosSet - Hu3DLLightPosAimSetV - Hu3DLLightPosAimSet - Hu3DLLightStaticSet - Hu3DAnimInit - Hu3DAnimCreate - Hu3DAnimLink - Hu3DAnimKill - Hu3DAnimAllKill - Hu3DAnimSet - Hu3DAnimExec - Hu3DAnimAttrSet - Hu3DAnimAttrReset - Hu3DAnimSpeedSet - Hu3DAnimBankSet - Hu3DAnmNoSet - Hu3DTexScrollCreate - Hu3DTexScrollPosSet - Hu3DTexScrollPosMoveSet - Hu3DTexScrollRotSet - Hu3DTexScrollRotMoveSet - Hu3DTexScrollKill - Hu3DTexScrollAllKill - Hu3DTexScrollPauseDisableSet - Hu3DParticleCreate - Hu3DParticleScaleSet - Hu3DParticleZRotSet - Hu3DParticleColSet - Hu3DParticleTPLvlSet - Hu3DParticleBlendModeSet - Hu3DParticleHookSet - Hu3DParticleCntSet - Hu3DParticleAttrSet - Hu3DParticleAttrReset - Hu3DParticleAnimModeSet - Hu3DParManInit - Hu3DParManCreate - Hu3DParManKill - Hu3DParManAllKill - Hu3DParManPtrGet - Hu3DParManAttrSet - Hu3DParManAttrReset - Hu3DParManPosSet - Hu3DParManVecSet - Hu3DParManRotSet - Hu3DParManModelIDGet - Hu3DParManLink - Hu3DParManTimeLimitSet - Hu3DParManColorSet - Hu3DMotionCreate - Hu3DMotionInit - Hu3DMotionModelCreate - Hu3DMotionKill - Hu3DMotionAllKill - Hu3DMotionSet - Hu3DMotionExec - Hu3DSubMotionExec - Hu3DMotionNext - Hu3DMotionTimeSet - Hu3DMotionTimeGet - Hu3DMotionMaxTimeGet - Hu3DMotionStartEndSet - Hu3DMotionMotionMaxTimeGet - Hu3DMotionEndCheck - Hu3DMotionShiftSet - Hu3DMotionIDGet - Hu3DMotionShiftIDGet - Hu3DMotionShiftTimeGet - Hu3DMotionShiftMaxTimeGet - Hu3DMotionShiftStartEndSet - Hu3DMotionShiftSpeedSet - Hu3DMotionSpeedSet - Hu3DMotionShapeSpeedSet - Hu3DMotionShapeTimeSet - Hu3DMotionNoMotSet - Hu3DMotionNoMotReset - Hu3DMotionForceSet - Hu3DMotionShapeSet - Hu3DMotionShapeIDGet - Hu3DMotionShapeMaxTimeGet - Hu3DMotionClusterSet - Hu3DMotionClusterNoSet - Hu3DMotionShapeReset - Hu3DMotionClusterReset - Hu3DJointMotion - Hu3DMotionOverlaySet - Hu3DMotionOverlayReset - Hu3DMotionOverlayTimeGet - Hu3DMotionOverlayTimeSet - Hu3DMotionOverlaySpeedSet - Hu3DModelObjDrawInit - Hu3DModelObjDraw - Hu3DMotionCalc - Hu3DMotionShapeStartEndSet - CamMotionEx - CamMotionEx2 - Hu3D2Dto3D - Hu3D3Dto2D - Hu3DMtxRotGet - Hu3DMtxTransGet - Hu3DMtxScaleGet - Hu3DProjectionCreate - Hu3DProjectionPosSet - Hu3DProjectionTPLvlSet - Hu3DProjectionKill - HuPrcInit - HuPrcCall - HuPrcCreate - HuPrcKill - HuPrcEnd - HuPrcWakeup - HuPrcSleep - HuPrcVSleep - HuPrcCurrentGet - HuPrcDestructorSet - HuPrcDestructorSet2 - HuPrcChildCreate - HuPrcChildLink - HuPrcChildUnlink - HuPrcChildKill - HuPrcMemAlloc - HuPrcMemFree - HuSetVecF - HuSprAnimKill - HuSprAnimLock - HuSprAnimRead - HuSprBankSet - HuSprCreate - HuSprGrpCreate - HuSprGrpMemberSet - HuSprGrpPosSet - HuSprGrpScaleSet - HuSprGrpScissorSet - HuSprGrpKill - HuSprAttrSet - HuSprAttrReset - HuSprDrawNoSet - HuSprPosSet - HuSprScaleSet - HuSprTPLvlSet - HuSubVecF - HuTHPSprCreateVol - HuTHPSprCreate - HuTHP3DCreateVol - HuTHP3DCreate - HuTHPStop - HuTHPClose - HuTHPRestart - HuTHPEndCheck - HuTHPFrameGet - HuTHPTotalFrameGet - HuTHPSetVolume - HuCardCheck - HuCardMount - HuCardUnMount - HuCardFormat - HuCardOpen - HuCardRead - HuCardCreate - HuCardClose - HuCardWrite - HuCardDelete - HuCardSectorSizeGet - HuCardFreeSpaceGet - HuCardSlotCheck - SLFileOpen - SLFileCreate - SLFileWrite - SLFileClose - SLFileRead - SLCurSlotNoSet - SLSaveDataMake - SLCommonSet - SLSaveBoard - SLSaveBoardStory - SLSave - SLLoadGameStat - SLLoadBoard - SLLoadBoardStory - SLLoad - SLCurBoxNoSet - SLSaveFlagSet - SLSaveFlagGet - SLCheckSumCheck - SLCheckSumSet - SLSerialNoGet - SLSerialNoCheck - SLStatSet - _CheckFlag - _SetFlag - _ClearFlag - HuWindowInit - HuWinInit - HuWinCreate - HuWinKill - HuWinAllKill - HuWinMesSet - HuWinInsertMesSet - HuWinChoiceGet - HuWinChoiceNumGet - HuWinMesWait - HuWinSprKill - HuWinMesRead - HuWinAnimSet - HuWinSprSet - HuWinSprPosSet - HuWinSprIDGet - HuWinMesMaxSizeGet - HuWinInsertMesSizeGet - HuWinMesMaxSizeBetGet - HuWinExCreate - HuWinDispOn - HuWinDispOff - HuWinExAnimIn - HuWinExAnimOut - HuWinExCleanup - HuWinExAnimPopIn - HuWinComKeyWait - HuWinComKeySet - HuWinComKeyReset - HuWinDrawNoSet - HuWinAttrSet - HuWinAttrReset - HuWinBGTPLvlSet - HuWinMesSpeedSet - HuWinBGColSet - HuWinChoiceDisable - HuWinKeyWaitEntry - HuWinCenterPosSet - HuWinPosSet - HuWinZRotSet - HuWinScaleSet - HuWinChoiceNowGet - HuWinStatGet - HuWinMesColSet - HuWinScissorSet - HuWinExCreateStyled - HuWinPriSet - HuWinSprPriSet - HuWinKeyWaitNumGet - HuWinMesSizeCancelCRSet - HuWinMesPalSet - HuWinHomeClear - HuWinPushKeySet - HuWinDisablePlayerSet - HuWinDisablePlayerReset - CharManInit - CharARAMOpen - CharKill - CharModelKill - CharKillAll - CharModelCreate - CharModelMotionCreate - CharModelMotionIndexSet - CharModelMotionKill - CharModelMotionDataClose - CharModelDataClose - CharAMemPtrGet - CharModelMotionSet - CharModelMotionTimeSet - CharModelMotionTimeGet - CharModelMotionMaxTimeGet - CharModelMotionEndCheck - CharModelMotionShiftIDGet - CharModelMotionShiftSet - CharModelMotionShiftTimeGet - CharModelMotionSpeedSet - CharModelLayerSetAll - CharModelItemHookCreate - CharModelEffectCreate - CharModelCoinEffectCreate - CharModelVoiceEnableSet - CharModelStepTypeSet - MGSeqInit - MGSeqSprKill - MGSeqCreate - MGSeqPosSet - MGSeqStatGet - MGSeqKill - MGSeqKillAll - MGSeqDoneCheck - MGSeqParamSet + fn_80062A40 + fn_8006DC1C + fn_8006DDE8 + frand + frandf + frandmod + game_main + msmMusGetStatus + msmMusPlay + msmMusSetMasterVolume + msmSeSetListener + msmSeSetParam + msmSeStopAll + msmSysGetOutputMode + msmSysSetOutputMode + mtxRot + mtxRotCat + mtxScaleCat + mtxTransCat + ObjConstantMake omAddObjEx omDelObjEx - omInitObjMan + omDLLDBGOut omGameSysInit omGetGroupMemberListEx + omInitObjMan omMakeGroupEx + omMgIndexGet + omOutView + omOutViewMulti omOvlCallEx omOvlGotoEx omOvlHisChg omOvlHisGet omOvlReturnEx - omOutView - omSetStatBit - omSetTra + omPauseChk omSetRot omSetSca - omVibrate - OSGetTick - OSGetTime - OSTicksToCalendarTime - OSReport - WipeColorSet - WipeCreate - WipeExecAlways - WipeInit - WipeStatGet - GWGameStatReset - frandmod - GXDestroyTexObj - GXSetVtxDesc - GXClearVtxDesc - GXSetVtxAttrFmt - GXSetNumTexGens - GXBegin - GXSetTexCoordGen2 - GXSetNumChans - GXSetChanCtrl - GXSetBlendMode - GXSetZMode - GXSetTevColorIn - GXSetTevAlphaIn - GXSetTevColorOp - GXSetTevAlphaOp - GXSetTevOrder - GXSetNumTevStages - GXInitTexObj - GXInitTexObjLOD - GXLoadTexObj - GXLoadPosMtxImm - GXLoadNrmMtxImm - GXLoadTexMtxImm - GXPosition3f32 - GXColor3u8 - GXEnd - HuDataGetAsyncStat + omSetStatBit + omSetTra omSysPauseEnable - HuSprGrpDrawNoSet - HuSprPriSet - HuSprTexLoad - HuSysVWaitSet - MessData_MesPtrGet - GWMGAvailSet \ No newline at end of file + omVibrate + print8 + printWin + rand8 + GXInvalidateTexAll + Hu3DDrawPreInit + Hu3DDraw + Hu3DDrawPost + HuSprExec + HuSprExecLayerSet + HuSprDispInit + ClusterProc + ClusterMotionExec + InitVtxParm + ShapeProc \ No newline at end of file diff --git a/include/REL/m415Dll.h b/include/REL/m415Dll.h index 0be73a76..c54ce288 100644 --- a/include/REL/m415Dll.h +++ b/include/REL/m415Dll.h @@ -3,7 +3,7 @@ #include "game/hsfman.h" #include "game/object.h" -extern u8 texMtxTbl[]; +SHARED_SYM extern u8 texMtxTbl[]; #define FABS(x) ((x < 0.0f) ? -(x) : (x)) diff --git a/include/REL/modeltestDll.h b/include/REL/modeltestDll.h index d4afecc4..b8134fca 100644 --- a/include/REL/modeltestDll.h +++ b/include/REL/modeltestDll.h @@ -29,9 +29,6 @@ typedef struct { HsfObject *obj; // 0030 } HuObjUnk; -extern Vec CRot; -extern Vec Center; -extern float CZoom; void fn_1_29C(); void fn_1_28F8(Vec *arg0, Vec *arg1); void fn_1_37DC(omObjData *); diff --git a/include/REL/w10Dll.h b/include/REL/w10Dll.h index a1446748..85b3b162 100644 --- a/include/REL/w10Dll.h +++ b/include/REL/w10Dll.h @@ -26,7 +26,7 @@ typedef struct tutorial_scene { TutorialSceneFunc func; } TutorialScene; -extern s32 boardTutorialData[4]; +SHARED_SYM extern s32 boardTutorialData[4]; void HostPosSet(s16); void fn_1_1FB0(void); diff --git a/include/game/board/main.h b/include/game/board/main.h index 658ea7ff..abcd9c48 100644 --- a/include/game/board/main.h +++ b/include/game/board/main.h @@ -65,9 +65,9 @@ typedef struct board_camera_data { } BoardCameraData; extern BoardCameraData boardCamera; -extern Process *boardObjMan; -extern Process *boardMainProc; -extern u32 boardRandSeed; +SHARED_SYM extern Process *boardObjMan; +SHARED_SYM extern Process *boardMainProc; +SHARED_SYM extern u32 boardRandSeed; extern omObjData *boardMainObj; typedef void (*BoardFunc)(void); @@ -79,11 +79,11 @@ typedef void (*BoardCameraPosCalcFunc)(BoardCameraData *camera); typedef void (*BoardTurnStartHook)(s32 player, s32 space); -extern BoardTurnStartHook boardTurnStartFunc; -extern void (*boardStarShowNextHook)(void); -extern void (*boardStarGiveHook)(void); -extern BoardBowserHook boardBowserHook; -extern BoardFunc boardTurnFunc; +SHARED_SYM extern BoardTurnStartHook boardTurnStartFunc; +SHARED_SYM extern void (*boardStarShowNextHook)(void); +SHARED_SYM extern void (*boardStarGiveHook)(void); +SHARED_SYM extern BoardBowserHook boardBowserHook; +SHARED_SYM extern BoardFunc boardTurnFunc; extern BoardLightHook boardLightResetHook; extern BoardLightHook boardLightSetHook; diff --git a/include/game/board/player.h b/include/game/board/player.h index 86458c1c..02136b04 100644 --- a/include/game/board/player.h +++ b/include/game/board/player.h @@ -13,7 +13,7 @@ #include "game/board/space.h" #include "game/board/ui.h" -extern s16 boardPlayerMdl[4]; +SHARED_SYM extern s16 boardPlayerMdl[4]; static inline s32 BoardPlayerHandicapGet(s32 player) { diff --git a/include/game/board/tutorial.h b/include/game/board/tutorial.h index 3b63c2ae..32d32d0a 100755 --- a/include/game/board/tutorial.h +++ b/include/game/board/tutorial.h @@ -2,6 +2,7 @@ #define _BOARD_TUTORIAL_H #include "dolphin/types.h" +#include "version.h" void BoardTutorialInit(void); void BoardTutorialKill(void); @@ -16,7 +17,7 @@ void BoardTutorialItemSet(s8 arg0); void BoardTutorialHostSet(s16 arg0); void BoardTutorialHostHide(s8 arg0); -extern s32 boardTutorialData[4]; +SHARED_SYM extern s32 boardTutorialData[4]; extern s8 boardTutorialDirInputX; extern s8 boardTutorialDirInputY; extern s16 boardTutorialDirInputTime; @@ -24,6 +25,6 @@ extern s32 boardTutorialBlockPos; extern s8 boardTutorialBlockItem; extern s8 boardTutorialBlockF; extern s8 boardTutorialUseItem; -extern s8 boardTutorialF; +SHARED_SYM extern s8 boardTutorialF; #endif diff --git a/include/game/hsfanim.h b/include/game/hsfanim.h index 9cf16673..c2dc2c4e 100644 --- a/include/game/hsfanim.h +++ b/include/game/hsfanim.h @@ -4,6 +4,7 @@ #include "game/hsfformat.h" #include "game/hsfman.h" #include "game/animdata.h" +#include "version.h" typedef struct model_data ModelData; typedef struct particle_data ParticleData; @@ -138,7 +139,7 @@ void Hu3DParManTimeLimitSet(s16 arg0, s32 arg1); void Hu3DParManVacumeSet(s16 arg0, float arg1, float arg2, float arg3, float arg4); void Hu3DParManColorSet(s16 arg0, s16 arg1); -extern Hu3DTexAnimDataStruct Hu3DTexAnimData[256]; -extern Hu3DTexScrDataStruct Hu3DTexScrData[16]; +SHARED_SYM extern Hu3DTexAnimDataStruct Hu3DTexAnimData[256]; +SHARED_SYM extern Hu3DTexScrDataStruct Hu3DTexScrData[16]; #endif diff --git a/include/game/hsfman.h b/include/game/hsfman.h index c73ea8fa..a8723cc5 100644 --- a/include/game/hsfman.h +++ b/include/game/hsfman.h @@ -309,12 +309,12 @@ SHARED_SYM extern Mtx Hu3DCameraMtxXPose; SHARED_SYM extern LightData Hu3DGlobalLight[0x8]; extern s16 reflectMapNo; extern AnimData *toonAnim; -extern s16 Hu3DShadowCamBit; -extern s32 Hu3DShadowF; -extern s32 shadowModelDrawF; -extern s16 Hu3DCameraNo; +SHARED_SYM extern s16 Hu3DShadowCamBit; +SHARED_SYM extern s32 Hu3DShadowF; +SHARED_SYM extern s32 shadowModelDrawF; +SHARED_SYM extern s16 Hu3DCameraNo; extern s16 Hu3DCameraBit; extern s16 Hu3DPauseF; -extern GXColor BGColor; +SHARED_SYM extern GXColor BGColor; #endif diff --git a/include/game/init.h b/include/game/init.h index f5cb16ed..07834840 100644 --- a/include/game/init.h +++ b/include/game/init.h @@ -4,7 +4,7 @@ #include "dolphin.h" #include "version.h" -extern GXRenderModeObj *RenderMode; +SHARED_SYM extern GXRenderModeObj *RenderMode; extern OSHeapHandle currentHeapHandle; extern void *DemoFrameBuffer1; diff --git a/include/game/mapspace.h b/include/game/mapspace.h index d4840451..c9f1e51c 100755 --- a/include/game/mapspace.h +++ b/include/game/mapspace.h @@ -16,11 +16,11 @@ void CharRotInv(Mtx arg0, Mtx arg1, Vec *arg2, omObjData *arg3); extern Mtx MapMT; extern Mtx MapMTR; -extern float AddX; -extern float AddZ; -extern s32 nMap; -extern s32 nChar; +SHARED_SYM extern float AddX; +SHARED_SYM extern float AddZ; +SHARED_SYM extern s32 nMap; +SHARED_SYM extern s32 nChar; extern s32 HitFaceCount; -extern omObjData *MapObject[16]; +SHARED_SYM extern omObjData *MapObject[16]; #endif diff --git a/include/game/minigame_seq.h b/include/game/minigame_seq.h index 6f20a101..ee2c47c1 100644 --- a/include/game/minigame_seq.h +++ b/include/game/minigame_seq.h @@ -117,6 +117,6 @@ s32 MGSeqUpdateRecord(SeqWork *work); s32 MGSeqInitFlip(SeqWork *work, va_list params); s32 MGSeqUpdateFlip(SeqWork *work); -extern OverlayID mgSeqOvlPrev; +SHARED_SYM extern OverlayID mgSeqOvlPrev; #endif diff --git a/include/game/objsub.h b/include/game/objsub.h index a88f478f..9f05b82a 100644 --- a/include/game/objsub.h +++ b/include/game/objsub.h @@ -23,19 +23,19 @@ void omGameSysInit(Process *objman); void omVibrate(s16 player_cfg_index, s16 duration, s16 off, s16 on); -extern s16 mgTypeCurr; -extern s16 mgBattleStar[4]; -extern s16 mgBattleStarMax; -extern u8 lbl_801D3E94; -extern u32 mgRecordExtra; +SHARED_SYM extern s16 mgTypeCurr; +SHARED_SYM extern s16 mgBattleStar[4]; +SHARED_SYM extern s16 mgBattleStarMax; +SHARED_SYM extern u8 lbl_801D3E94; +SHARED_SYM extern u32 mgRecordExtra; SHARED_SYM extern s32 mgQuitExtraF; SHARED_SYM extern s32 mgPracticeEnableF; SHARED_SYM extern s32 mgInstExitEnableF; SHARED_SYM extern u8 mgBoardHostEnableF; -extern s16 mgTicTacToeGrid[3][3]; -extern u8 mgIndexList[256]; -extern GameStat mgGameStatBackup; +SHARED_SYM extern s16 mgTicTacToeGrid[3][3]; +SHARED_SYM extern u8 mgIndexList[256]; +SHARED_SYM extern GameStat mgGameStatBackup; SHARED_SYM extern MgInfo mgInfoTbl[]; diff --git a/include/game/saveload.h b/include/game/saveload.h index 3adb40de..91478898 100644 --- a/include/game/saveload.h +++ b/include/game/saveload.h @@ -28,7 +28,7 @@ SHARED_SYM extern char *SaveFileNameTbl[]; SHARED_SYM extern CARDFileInfo curFileInfo; SHARED_SYM extern SaveBufAll saveBuf; extern u64 SLSerialNo; -extern s32 saveExecF; +SHARED_SYM extern s32 saveExecF; extern u8 curBoxNo; SHARED_SYM extern s16 curSlotNo; diff --git a/src/REL/board_executor.c b/src/REL/board_executor.c index 3d838c77..ba3950a2 100644 --- a/src/REL/board_executor.c +++ b/src/REL/board_executor.c @@ -1,10 +1,17 @@ #include "REL/board_executor.h" #include "math.h" +#ifdef TARGET_PC +void ObjectSetup(void) { + BoardObjectSetup(BoardCreate, BoardDestroy); +} +#else static void ObjectSetup(void) { BoardObjectSetup(BoardCreate, BoardDestroy); } +#endif +#ifdef __MWERKS__ s32 _prolog(void) { const VoidFunc* ctors = _ctors; while (*ctors != 0) { @@ -21,4 +28,5 @@ void _epilog(void) { (**dtors)(); dtors++; } -} \ No newline at end of file +} +#endif diff --git a/src/REL/m406Dll/map.c b/src/REL/m406Dll/map.c index 15838160..af5e97eb 100644 --- a/src/REL/m406Dll/map.c +++ b/src/REL/m406Dll/map.c @@ -226,7 +226,7 @@ void fn_1_D488(float arg8, Vec *arg0, Vec *arg1, Vec *arg2); void fn_1_D518(Mtx arg0, Vec *arg1); float fn_1_D5CC(Vec *arg0, Vec *arg1, float arg8, float arg9); -extern u32 GlobalCounter; +SHARED_SYM extern u32 GlobalCounter; Vec lbl_1_data_F0[0x46] = { { -495.876f, 50.005f, -0.0f }, diff --git a/src/REL/m408Dll/stage.c b/src/REL/m408Dll/stage.c index 85b68458..dd3ed9a4 100644 --- a/src/REL/m408Dll/stage.c +++ b/src/REL/m408Dll/stage.c @@ -1150,7 +1150,7 @@ void fn_1_10830(ModelData *arg0, HsfBitmap *arg1, HsfAttribute *arg2, s16 arg3) GXSetTevColor(reg, color_var); \ } -extern u32 texMtxTbl[]; +SHARED_SYM extern u32 texMtxTbl[]; void fn_1_10B60(UnkFn10484 *arg0, HsfMaterial *arg1) { diff --git a/src/REL/m409Dll/cursor.c b/src/REL/m409Dll/cursor.c index 4a7d23db..84f6f5d6 100644 --- a/src/REL/m409Dll/cursor.c +++ b/src/REL/m409Dll/cursor.c @@ -47,7 +47,7 @@ void fn_1_C0C0(void) Hu3DModelKill(lbl_1_bss_F0.unk4); } -extern u8 texMtxTbl[]; +SHARED_SYM extern u8 texMtxTbl[]; void fn_1_C164(unkStruct8 *arg0) { diff --git a/src/REL/m415Dll/main.c b/src/REL/m415Dll/main.c index 2053aed7..9d901a01 100644 --- a/src/REL/m415Dll/main.c +++ b/src/REL/m415Dll/main.c @@ -421,8 +421,11 @@ void fn_1_1960(omObjData *object) GXDrawDone(); temp_r3 = fn_1_9734(object->model[2]); temp_r29 = Hu3DShadowData.unk_02 * Hu3DShadowData.unk_02; +#ifdef __MWERKS__ + // TODO PC memcpy((*temp_r3)->bmp->data, OSCachedToUncached(Hu3DShadowData.unk_04), temp_r29); - DCStoreRangeNoSync((*temp_r3)->bmp->data, temp_r29); +#endif + DCStoreRangeNoSync((*temp_r3)->bmp->data, temp_r29); break; case 2: Hu3DModelShadowMapObjSet(object->model[0], "kyanbasu"); diff --git a/src/REL/m423Dll/main.c b/src/REL/m423Dll/main.c index f42e3cf3..73230752 100755 --- a/src/REL/m423Dll/main.c +++ b/src/REL/m423Dll/main.c @@ -19,7 +19,7 @@ #define frand7() (frand() & 0x7F) -extern u32 GlobalCounter; +SHARED_SYM extern u32 GlobalCounter; typedef struct { /* 0x00 */ s32 unk00; diff --git a/src/REL/m425Dll/main.c b/src/REL/m425Dll/main.c index d01bdca9..69e0b96f 100644 --- a/src/REL/m425Dll/main.c +++ b/src/REL/m425Dll/main.c @@ -27,7 +27,7 @@ #include "REL/m425Dll.h" -extern u8 texMtxTbl[]; // TODO maybe put in hsfdraw.h? +SHARED_SYM extern u8 texMtxTbl[]; // TODO maybe put in hsfdraw.h? typedef struct M425DllWork { u8 unk_00; diff --git a/src/REL/m425Dll/thwomp.c b/src/REL/m425Dll/thwomp.c index cec175b6..bb53d11a 100644 --- a/src/REL/m425Dll/thwomp.c +++ b/src/REL/m425Dll/thwomp.c @@ -26,7 +26,7 @@ #include "REL/m425Dll.h" -extern u32 GlobalCounter; +SHARED_SYM extern u32 GlobalCounter; SHARED_SYM extern LightData Hu3DLocalLight[0x20]; typedef struct M425DllUnkStruct4 { diff --git a/src/REL/m426Dll/main.c b/src/REL/m426Dll/main.c index abc4fbd8..2433e3ac 100644 --- a/src/REL/m426Dll/main.c +++ b/src/REL/m426Dll/main.c @@ -265,7 +265,7 @@ void fn_1_DB8(omObjData *object); void fn_1_E18(omObjData *object); void fn_1_EB8(void); -extern u32 GlobalCounter; +SHARED_SYM extern u32 GlobalCounter; Vec lbl_1_data_0[4] = { { -600.0f, 0.0f, -285.0f }, diff --git a/src/REL/m428Dll/player.c b/src/REL/m428Dll/player.c index b5365da7..bcef87c9 100644 --- a/src/REL/m428Dll/player.c +++ b/src/REL/m428Dll/player.c @@ -239,7 +239,7 @@ s32 fn_1_F288(Vec *arg0, Vec *arg1, float arg8); s32 fn_1_F538(Vec *arg0, Vec *arg1, Vec *arg2, float arg8); s32 fn_1_FB8C(Vec *arg0, Vec *arg1, float arg8, s32 arg2, s32 arg3); -extern u32 GlobalCounter; +SHARED_SYM extern u32 GlobalCounter; Vec lbl_1_data_150[4] = { { -140.0f, -400.0f, 0.0f }, @@ -2137,7 +2137,7 @@ void fn_1_FE98(M428DllPlayerUnk120Struct *arg0) } } -GXColor lbl_1_data_694[2] = { {0xFF, 0xA0, 0x40, 0xFF}, {0x00, 0xC8, 0xFF, 0xFF} }; +GXColor lbl_1_data_694[2] = { { 0xFF, 0xA0, 0x40, 0xFF }, { 0x00, 0xC8, 0xFF, 0xFF } }; s16 lbl_1_data_69C[2] = { -0x10, 0x10 }; s16 lbl_1_data_6A0[2] = { 0x1A4, 0x60 }; Vec lbl_1_data_6A4[4] = { diff --git a/src/REL/m438Dll/fire.c b/src/REL/m438Dll/fire.c index 1e898ee8..ce18b639 100644 --- a/src/REL/m438Dll/fire.c +++ b/src/REL/m438Dll/fire.c @@ -6,7 +6,7 @@ #include -extern u8 texMtxTbl[]; +SHARED_SYM extern u8 texMtxTbl[]; // PROTO void fn_1_E790(M438UnkStruct2 *); diff --git a/src/REL/mentDll/common.c b/src/REL/mentDll/common.c index 59f44912..608ce2a6 100644 --- a/src/REL/mentDll/common.c +++ b/src/REL/mentDll/common.c @@ -29,18 +29,8 @@ s32 lbl_1_data_0[][4] = { s32 lbl_1_data_70 = -1; -// char lbl_1_data_74[] = ">>>>>>>>>> CAMERA DATA <<<<<<<<<<"; -// char lbl_1_data_96[] = "CENTER : %.2f, %.2f, %.2f"; -// char lbl_1_data_B0[] = "ROT : %.2f, %.2f, %.2f"; -// char lbl_1_data_CA[] = "ZOOM : %.2f"; - -extern s32 _prolog(); -extern void _epilog(); void fn_1_144(void); void fn_1_2318(s32); -typedef void (*VoidFunc)(void); -extern const VoidFunc _ctors[]; -extern const VoidFunc _dtors[]; void fn_1_0(omObjData *arg0) { @@ -58,27 +48,11 @@ void fn_1_4C(omObjData *object) } } -s32 _prolog(void) -{ - const VoidFunc *ctors = _ctors; - while (*ctors != 0) { - (**ctors)(); - ctors++; - } - fn_1_144(); - return 0; -} +#ifdef __MWERKS__ +#include "src/REL/executor.c" +#endif -void _epilog(void) -{ - const VoidFunc *dtors = _dtors; - while (*dtors != 0) { - (**dtors)(); - dtors++; - } -} - -void fn_1_144(void) +void ObjectSetup(void) { _ClearFlag(0x1000BU); boardTutorialF = 0; diff --git a/src/REL/modeltestDll/modeltest00.c b/src/REL/modeltestDll/modeltest00.c index 03f4fd71..9293bb37 100644 --- a/src/REL/modeltestDll/modeltest00.c +++ b/src/REL/modeltestDll/modeltest00.c @@ -72,7 +72,7 @@ static inline void HuControlCamCenter(Vec *sp18, Vec *sp30) // -------------------------------------------------------------------------- // -void fn_1_37DC(omObjData *) +void fn_1_37DC(omObjData *object) { Vec sp3C; Vec sp30; @@ -135,7 +135,7 @@ void fn_1_37DC(omObjData *) // -------------------------------------------------------------------------- // -void fn_1_439C(omObjData *) +void fn_1_439C(omObjData *object) { s16 var_r31; f32 temp_f30; diff --git a/src/REL/mstory2Dll/main.c b/src/REL/mstory2Dll/main.c index 77125674..0014ae13 100644 --- a/src/REL/mstory2Dll/main.c +++ b/src/REL/mstory2Dll/main.c @@ -130,7 +130,9 @@ void fn_1_A4(void) { } } +#ifdef __MWERKS__ #include "src/REL/executor.c" +#endif void fn_1_3E4(void) { diff --git a/src/REL/mstory3Dll/main.c b/src/REL/mstory3Dll/main.c index c1e4f1bf..f86f741f 100755 --- a/src/REL/mstory3Dll/main.c +++ b/src/REL/mstory3Dll/main.c @@ -127,7 +127,9 @@ void fn_1_A4(void) { } } +#ifdef __MWERKS__ #include "src/REL/executor.c" +#endif void fn_1_40C(void) { lbl_1_bss_0 = omInitObjMan(62, 0x2000); diff --git a/src/REL/mstory4Dll/main.c b/src/REL/mstory4Dll/main.c index 6a626cb1..e29d0fd1 100644 --- a/src/REL/mstory4Dll/main.c +++ b/src/REL/mstory4Dll/main.c @@ -105,7 +105,6 @@ s32 lbl_1_data_56C[] = { }; void fn_1_EC(void); -void fn_1_12E8(void); void fn_1_13A0(void); s32 lbl_1_bss_14; @@ -454,25 +453,11 @@ void fn_1_EC(void) } } -s32 _prolog(void) { - const VoidFunc* ctors = _ctors; - while (*ctors != 0) { - (**ctors)(); - ctors++; - } - fn_1_12E8(); - return 0; -} +#ifdef __MWERKS__ +#include "src/REL/executor.c" +#endif -void _epilog(void) { - const VoidFunc* dtors = _dtors; - while (*dtors != 0) { - (**dtors)(); - dtors++; - } -} - -void fn_1_12E8(void) +void ObjectSetup(void) { lbl_1_bss_0 = omInitObjMan(62, 8192); omGameSysInit(lbl_1_bss_0); diff --git a/src/REL/mstoryDll/main.c b/src/REL/mstoryDll/main.c index 7f4f2cb7..fbef63a7 100755 --- a/src/REL/mstoryDll/main.c +++ b/src/REL/mstoryDll/main.c @@ -138,7 +138,9 @@ void fn_1_A4(void) { } } +#ifdef __MWERKS__ #include "src/REL/executor.c" +#endif void fn_1_488(void) { s32 i; diff --git a/src/REL/option/sound.c b/src/REL/option/sound.c index 7012bb90..cc1cbfb2 100755 --- a/src/REL/option/sound.c +++ b/src/REL/option/sound.c @@ -13,6 +13,10 @@ #include "dolphin.h" #include "math.h" +#ifndef __MWERKS__ +#include +#endif + typedef struct { /* 0x000 */ omObjData *object[26]; /* 0x068 */ OptionWindow *window[13]; @@ -110,7 +114,7 @@ static void CreateNote(omObjData *object, s32 type, s32 side, s32 color); static void CreateNoteSpawner(omObjData *object); static void KillNoteSpawner(omObjData *object); static void ExecNoteSpawner(void); -static void PlaySound(omObjData *object); +static void OptionPlaySound(omObjData *object); static void FadeSound(omObjData *object); omObjData *optionSound; @@ -920,7 +924,7 @@ static void ExecMusic(omObjData *object) HuAudSeqFadeOut(work->bgMusicStat, 0x64); work->bgMusicStat = -1; } - PlaySound(object); + OptionPlaySound(object); } else if (OptionPadCheck(PAD_BUTTON_B)) { HuAudFXPlay(3); @@ -1101,7 +1105,7 @@ static void ExecVoice(omObjData *object) case 6: if (work->window[0]->state == 0 && work->window[1]->state == 0) { if (OptionPadCheck(PAD_BUTTON_A)) { - PlaySound(object); + OptionPlaySound(object); } else if (OptionPadCheck(PAD_BUTTON_B)) { HuAudFXPlay(3); @@ -1665,7 +1669,7 @@ static void ExecNoteSpawner(void) } } -static void PlaySound(omObjData *object) +static void OptionPlaySound(omObjData *object) { SoundWork *work = object->data; SndSelData *sndSelData; diff --git a/src/REL/present/present.c b/src/REL/present/present.c index b6d90dfc..fc7c27dd 100644 --- a/src/REL/present/present.c +++ b/src/REL/present/present.c @@ -86,7 +86,7 @@ typedef struct PresentDistanceStruct { static void ExecSelectRoom(omObjData *object); static void ChangeRoom(omObjData *object, s32 direction); static void ExecSelectPresent(omObjData *object); -static void GetCursorPos(omObjData *object, float *x, float *y, float *z); +static void PresentGetCursorPos(omObjData *object, float *x, float *y, float *z); static void SetCameraRot(omObjData *object, float rot, s32 duration); static void RotateCamera(omObjData *object); static BOOL CameraRotationDoneCheck(omObjData *object); @@ -731,7 +731,7 @@ static void ExecSelectPresent(omObjData *object) work->cursorSpeed = 1.0f / 6.0f; if (work->roomNotEmptyF) { Vec cursorPos; - GetCursorPos(work->object[roomTbl[room].presentData[idxInRoom].cursorPosIdx], &cursorPos.x, &cursorPos.y, &cursorPos.z); + PresentGetCursorPos(work->object[roomTbl[room].presentData[idxInRoom].cursorPosIdx], &cursorPos.x, &cursorPos.y, &cursorPos.z); Hu3D3Dto2D(&cursorPos, 1, &cursorPos); cursorPos.y -= 15.0f; cursorPos.x -= 20.0f; @@ -818,7 +818,7 @@ static void ExecSelectPresent(omObjData *object) } } -static void GetCursorPos(omObjData *object, float *x, float *y, float *z) +static void PresentGetCursorPos(omObjData *object, float *x, float *y, float *z) { Mtx sp8; @@ -966,7 +966,7 @@ static s32 MoveCursor(omObjData *object, s32 arg1) return work->idxInRoom; } - GetCursorPos(work->object[roomTbl[work->room].presentData[work->idxInRoom].cursorPosIdx], &cursorPos.x, &cursorPos.y, &cursorPos.z); + PresentGetCursorPos(work->object[roomTbl[work->room].presentData[work->idxInRoom].cursorPosIdx], &cursorPos.x, &cursorPos.y, &cursorPos.z); Hu3D3Dto2D(&cursorPos, 1, &cursorPos); for (i = 0, j = 0; i == 0 && j < 1; j++) { for (i = 0, present = 0; present < totalPresents; present++) { @@ -978,7 +978,7 @@ static s32 MoveCursor(omObjData *object, s32 arg1) if (!PresentUnlocked(object, work->room, present)) { continue; } - GetCursorPos(work->object[roomTbl[work->room].presentData[present].cursorPosIdx], &cursorPosNew.x, &cursorPosNew.y, &cursorPosNew.z); + PresentGetCursorPos(work->object[roomTbl[work->room].presentData[present].cursorPosIdx], &cursorPosNew.x, &cursorPosNew.y, &cursorPosNew.z); Hu3D3Dto2D(&cursorPosNew, 1, &cursorPosNew); dx = cursorPos.x - cursorPosNew.x; dy = cursorPos.y - cursorPosNew.y; diff --git a/src/REL/selmenuDll/main.c b/src/REL/selmenuDll/main.c index 37c33b65..02b9d40d 100644 --- a/src/REL/selmenuDll/main.c +++ b/src/REL/selmenuDll/main.c @@ -16,10 +16,13 @@ #include "game/wipe.h" #include "math.h" - +#ifdef __MWERKS__ // MSM Definitions static s8 *msmSeGetIndexPtr(s16 datano); static void msmMusSetMasterVolume(s32 value); +#else +#include "game/msm.h" +#endif #define SM_PAGE_MAX 7 #define SM_PAGE_SIZE 10 diff --git a/src/REL/w03Dll/mg_item.c b/src/REL/w03Dll/mg_item.c index 9b9ccfa3..fab52641 100644 --- a/src/REL/w03Dll/mg_item.c +++ b/src/REL/w03Dll/mg_item.c @@ -60,8 +60,6 @@ typedef struct w03UnkMG { // external symbols -extern u16 HuPadBtnDown[4]; - // function signatures s32 BoardVecDAngleCalcRange(float *value, float min, float range); diff --git a/src/REL/w03Dll/smoke.c b/src/REL/w03Dll/smoke.c index 0fcdeda3..b72c3fec 100644 --- a/src/REL/w03Dll/smoke.c +++ b/src/REL/w03Dll/smoke.c @@ -12,7 +12,6 @@ typedef struct w03UnkWorkStruct { extern w03State* lbl_1_bss_0; omObjData* lbl_1_bss_138[2]; -extern Process *boardObjMan; extern s16 lbl_1_data_1E0; void fn_1_79E0(omObjData* arg0); diff --git a/src/REL/w10Dll/main.c b/src/REL/w10Dll/main.c index 0b8de21c..33283e33 100644 --- a/src/REL/w10Dll/main.c +++ b/src/REL/w10Dll/main.c @@ -1,4 +1,4 @@ -#include "include/REL/w10Dll.h" +#include "REL/w10Dll.h" #include "game/data.h" #include "game/hsfman.h" #include "game/board/lottery.h" diff --git a/src/REL/w10Dll/scene.c b/src/REL/w10Dll/scene.c index 9328f7e4..0ba84414 100644 --- a/src/REL/w10Dll/scene.c +++ b/src/REL/w10Dll/scene.c @@ -1,4 +1,4 @@ -#include "include/REL/w10Dll.h" +#include "REL/w10Dll.h" #include "game/board/char_wheel.h" #include "game/board/lottery.h" #include "game/board/main.h" diff --git a/src/dolphin/mtx/quat.c b/src/dolphin/mtx/quat.c index f3e15a87..166400b9 100644 --- a/src/dolphin/mtx/quat.c +++ b/src/dolphin/mtx/quat.c @@ -14,6 +14,7 @@ void C_QUATAdd(const Quaternion *p, const Quaternion *q, Qtrn *r) r->w = p->w + q->w; } +#ifdef GEKKO void PSQUATAdd(register const Quaternion *p, register const Quaternion *q, register Quaternion *r) { asm { @@ -27,7 +28,16 @@ void PSQUATAdd(register const Quaternion *p, register const Quaternion *q, regis psq_st f0, 0x8(r5), 0, 0 } } +#endif +#ifdef TARGET_PC +void C_QUATMultiply(const Quaternion *a, const Quaternion *b, Quaternion *ab) +{ + // TODO PC +} +#endif + +#ifdef GEKKO void PSQUATMultiply(register const Quaternion *a, register const Quaternion *b, register Quaternion *ab) { asm { @@ -55,7 +65,16 @@ void PSQUATMultiply(register const Quaternion *a, register const Quaternion *b, psq_st f5, 8(ab), 0, 0 } } +#endif +#ifdef TARGET_PC +void C_QUATNormalize(register Quaternion *src, Quaternion *unit) +{ + // TODO PC +} +#endif + +#ifdef GEKKO void PSQUATNormalize(const register Quaternion *src, register Quaternion *unit) { // sdata2 @@ -95,7 +114,16 @@ void PSQUATNormalize(const register Quaternion *src, register Quaternion *unit) } } } +#endif +#ifdef TARGET_PC +void C_QUATInverse(const Quaternion *src, Quaternion *inv) +{ + // TODO PC +} +#endif + +#ifdef GEKKO void PSQUATInverse(const register Quaternion *src, register Quaternion *inv) { register f32 vv1, vv2, vv3, vv4; @@ -126,6 +154,7 @@ void PSQUATInverse(const register Quaternion *src, register Quaternion *inv) psq_st vv3, 8(inv), 1, 0; } } +#endif void C_QUATRotAxisRad(Quaternion *q, const Vec *axis, f32 rad) { @@ -133,7 +162,7 @@ void C_QUATRotAxisRad(Quaternion *q, const Vec *axis, f32 rad) Vec dst; tmp = rad; - PSVECNormalize(axis, &dst); + VECNormalize(axis, &dst); tmp2 = tmp * 0.5f; tmp3 = sinf(tmp * 0.5f); diff --git a/src/game/board/main.c b/src/game/board/main.c index 60864645..e4c0f5dd 100644 --- a/src/game/board/main.c +++ b/src/game/board/main.c @@ -46,11 +46,11 @@ u32 boardRandSeed; static omObjData *last5GfxObj; static omObjData *confettiObj; static omObjData *filterObj; -BoardTurnStartHook boardTurnStartFunc; -BoardBowserHook boardBowserHook; -void (*boardStarShowNextHook)(void); -void (*boardStarGiveHook)(void); -BoardFunc boardTurnFunc; +SHARED_SYM BoardTurnStartHook boardTurnStartFunc; +SHARED_SYM BoardBowserHook boardBowserHook; +SHARED_SYM void (*boardStarShowNextHook)(void); +SHARED_SYM void (*boardStarGiveHook)(void); +SHARED_SYM BoardFunc boardTurnFunc; BoardLightHook boardLightResetHook; BoardLightHook boardLightSetHook; static BoardFunc destroyFunc; diff --git a/src/game/board/mushroom.c b/src/game/board/mushroom.c index 944e5972..81ad5e88 100644 --- a/src/game/board/mushroom.c +++ b/src/game/board/mushroom.c @@ -17,7 +17,7 @@ #include #include -extern s32 boardTutorialData[4]; +SHARED_SYM extern s32 boardTutorialData[4]; static void KillMushroom(); diff --git a/src/game/board/player.c b/src/game/board/player.c index 08c14154..2ac2680e 100644 --- a/src/game/board/player.c +++ b/src/game/board/player.c @@ -69,7 +69,7 @@ static HsfMaterial *playerMatCopy[4]; static s32 (*postTurnHook[4])(); static s32 (*preTurnHook[4])(); -s16 boardPlayerMdl[4]; +SHARED_SYM s16 boardPlayerMdl[4]; static s16 playerMot[4]; static s8 itemPrev; static s8 moveAwayPlayer[4]; diff --git a/src/game/board/tutorial.c b/src/game/board/tutorial.c index f662661a..9d93d5ab 100755 --- a/src/game/board/tutorial.c +++ b/src/game/board/tutorial.c @@ -7,7 +7,7 @@ #include -s32 boardTutorialData[4]; // maybe a single s32 + padding? +SHARED_SYM s32 boardTutorialData[4]; // maybe a single s32 + padding? static void (*tutorialHook)(s16, s32); s8 boardTutorialDirInputX; s8 boardTutorialDirInputY; @@ -17,7 +17,7 @@ s8 boardTutorialBlockItem; s8 boardTutorialBlockF; s8 boardTutorialUseItem; static s16 hostMdl; -s8 boardTutorialF; +SHARED_SYM s8 boardTutorialF; static Process *tutorialProcess; static void *playerCfgCopy; static void *playerCopy; diff --git a/src/game/hsfanim.c b/src/game/hsfanim.c index 6d13b267..c24c6a98 100755 --- a/src/game/hsfanim.c +++ b/src/game/hsfanim.c @@ -31,10 +31,10 @@ static void ParManHook(ModelData *arg0, ParticleData *arg1, Mtx matrix); u32 frand(void); -extern u32 GlobalCounter; +SHARED_SYM extern u32 GlobalCounter; -Hu3DTexAnimDataStruct Hu3DTexAnimData[HU3D_TEXANIM_MAX]; -Hu3DTexScrDataStruct Hu3DTexScrData[16]; +SHARED_SYM Hu3DTexAnimDataStruct Hu3DTexAnimData[HU3D_TEXANIM_MAX]; +SHARED_SYM Hu3DTexScrDataStruct Hu3DTexScrData[16]; static Process *parManProc[64]; void Hu3DAnimInit(void) { diff --git a/src/game/hsfdraw.c b/src/game/hsfdraw.c index dd4920fc..b304a7df 100755 --- a/src/game/hsfdraw.c +++ b/src/game/hsfdraw.c @@ -97,7 +97,7 @@ static u8 *PGName; static s32 TL32F; static s32 CancelTRXF; -u8 texMtxTbl[] = { GX_TEXMTX0, GX_TEXMTX1, GX_TEXMTX2, GX_TEXMTX3, GX_TEXMTX4, GX_TEXMTX5, GX_TEXMTX6, GX_TEXMTX7, GX_TEXMTX8, GX_TEXMTX9 }; +SHARED_SYM u8 texMtxTbl[] = { GX_TEXMTX0, GX_TEXMTX1, GX_TEXMTX2, GX_TEXMTX3, GX_TEXMTX4, GX_TEXMTX5, GX_TEXMTX6, GX_TEXMTX7, GX_TEXMTX8, GX_TEXMTX9 }; static s16 oneceF = 1; static GXColor firstTev = { 0xFF, 0xFF, 0x00, 0x00 }; diff --git a/src/game/hsfman.c b/src/game/hsfman.c index ec78a7e8..c4a4d3c5 100644 --- a/src/game/hsfman.c +++ b/src/game/hsfman.c @@ -37,14 +37,14 @@ SHARED_SYM LightData Hu3DGlobalLight[0x8]; SHARED_SYM LightData Hu3DLocalLight[0x20]; Mtx lbl_8018D39C; -GXColor BGColor; +SHARED_SYM GXColor BGColor; s16 reflectMapNo; AnimData *toonAnim; -s16 Hu3DShadowCamBit; -s32 Hu3DShadowF; -s32 shadowModelDrawF; +SHARED_SYM s16 Hu3DShadowCamBit; +SHARED_SYM s32 Hu3DShadowF; +SHARED_SYM s32 shadowModelDrawF; s16 Hu3DProjectionNum; -s16 Hu3DCameraNo; +SHARED_SYM s16 Hu3DCameraNo; s16 Hu3DCameraBit; uintptr_t Hu3DMallocNo; s16 Hu3DPauseF; diff --git a/src/game/init.c b/src/game/init.c index 9e77926c..fdd5d55c 100644 --- a/src/game/init.c +++ b/src/game/init.c @@ -22,7 +22,7 @@ extern u32 frand(); static GXRenderModeObj rmodeobj; static BOOL FirstFrame = TRUE; -GXRenderModeObj *RenderMode; +SHARED_SYM GXRenderModeObj *RenderMode; OSHeapHandle currentHeapHandle; static void *DefaultFifo; static GXFifoObj *DefaultFifoObj; diff --git a/src/game/main.c b/src/game/main.c index b25ef144..3831d60f 100644 --- a/src/game/main.c +++ b/src/game/main.c @@ -30,7 +30,7 @@ const char *__asan_default_options() #endif extern FileListEntry _ovltbl[]; -u32 GlobalCounter; +SHARED_SYM u32 GlobalCounter; static u32 vcheck; static u32 vmiss; static u32 vstall; diff --git a/src/game/mapspace.c b/src/game/mapspace.c index be3cf8a9..aec2cd17 100755 --- a/src/game/mapspace.c +++ b/src/game/mapspace.c @@ -19,7 +19,7 @@ static BOOL GetPolygonCircleMtx(s16 *arg0, Vec *arg1, float *arg2, float *arg3); static s32 PrecalcPntToTriangle(Vec *arg0, Vec *arg1, Vec *arg2, Vec* arg3, Vec *arg4, Vec *arg5); static void DefSetHitFace(float arg0, float arg1, float arg2); -omObjData *MapObject[16]; +SHARED_SYM omObjData *MapObject[16]; Mtx MapMT; Mtx MapMTR; static Vec MTRAdd; @@ -30,10 +30,10 @@ static Vec OldXYZ; Vec HitFace[32]; u8 CharObject[0x30]; -float AddX; -float AddZ; -s32 nMap; -s32 nChar; +SHARED_SYM float AddX; +SHARED_SYM float AddZ; +SHARED_SYM s32 nMap; +SHARED_SYM s32 nChar; s32 HitFaceCount; static HsfData *AttrHsf; static Vec *topvtx; diff --git a/src/game/minigame_seq.c b/src/game/minigame_seq.c index f74d4bf4..71fedf72 100644 --- a/src/game/minigame_seq.c +++ b/src/game/minigame_seq.c @@ -33,7 +33,7 @@ typedef struct seq_info { s32 time_max; } SeqInfo; -OverlayID mgSeqOvlPrev = OVL_INVALID; +SHARED_SYM OverlayID mgSeqOvlPrev = OVL_INVALID; static SeqInfo seqInfoTbl[] = { { NULL, NULL, HU_DISP_CENTERX + 4, HU_DISP_CENTERY, 1.0f, 1.0f, 60 }, diff --git a/src/game/objsub.c b/src/game/objsub.c index 4ceab36a..6a402e3e 100644 --- a/src/game/objsub.c +++ b/src/game/objsub.c @@ -1163,19 +1163,19 @@ SHARED_SYM MgInfo mgInfoTbl[] = { void MGSeqPracticeExitCheck(omObjData *); -s16 mgTypeCurr; -s16 mgBattleStar[4]; -s16 mgBattleStarMax; -u8 lbl_801D3E94; -u32 mgRecordExtra; +SHARED_SYM s16 mgTypeCurr; +SHARED_SYM s16 mgBattleStar[4]; +SHARED_SYM s16 mgBattleStarMax; +SHARED_SYM u8 lbl_801D3E94; +SHARED_SYM u32 mgRecordExtra; SHARED_SYM s32 mgQuitExtraF; SHARED_SYM s32 mgPracticeEnableF; SHARED_SYM s32 mgInstExitEnableF; SHARED_SYM u8 mgBoardHostEnableF; -s16 mgTicTacToeGrid[3][3]; -u8 mgIndexList[256]; -GameStat mgGameStatBackup; +SHARED_SYM s16 mgTicTacToeGrid[3][3]; +SHARED_SYM u8 mgIndexList[256]; +SHARED_SYM GameStat mgGameStatBackup; s32 omMgIndexGet(s16 overlay) { diff --git a/src/game/objsysobj.c b/src/game/objsysobj.c index c23d4e57..438a05df 100644 --- a/src/game/objsysobj.c +++ b/src/game/objsysobj.c @@ -12,9 +12,9 @@ void MGSeqPauseKill(void); #include "game/wipe.h" #endif -Vec CRot; -Vec Center; -float CZoom; +SHARED_SYM Vec CRot; +SHARED_SYM Vec Center; +SHARED_SYM float CZoom; Vec CRotM[16]; Vec CenterM[16]; float CZoomM[16]; diff --git a/src/game/saveload.c b/src/game/saveload.c index 6fd9ea19..4a8f1ea1 100644 --- a/src/game/saveload.c +++ b/src/game/saveload.c @@ -31,7 +31,7 @@ SHARED_SYM CARDFileInfo curFileInfo; SHARED_SYM SaveBufAll saveBuf; u64 SLSerialNo; -s32 saveExecF; +SHARED_SYM s32 saveExecF; u8 curBoxNo; SHARED_SYM s16 curSlotNo; diff --git a/src/port/stubs.c b/src/port/stubs.c index c330ded7..75c5ca5e 100644 --- a/src/port/stubs.c +++ b/src/port/stubs.c @@ -647,6 +647,44 @@ void ARQInit(void) { puts("ARQInit is a stub"); } +void GXProject(f32 x, f32 y, f32 z, const f32 mtx[3][4], const f32 *pm, const f32 *vp, f32 *sx, f32 *sy, f32 *sz) +{ + Vec peye; + f32 xc; + f32 yc; + f32 zc; + f32 wc; + + peye.x = mtx[0][3] + ((mtx[0][2] * z) + ((mtx[0][0] * x) + (mtx[0][1] * y))); + peye.y = mtx[1][3] + ((mtx[1][2] * z) + ((mtx[1][0] * x) + (mtx[1][1] * y))); + peye.z = mtx[2][3] + ((mtx[2][2] * z) + ((mtx[2][0] * x) + (mtx[2][1] * y))); + if (pm[0] == 0.0f) { + xc = (peye.x * pm[1]) + (peye.z * pm[2]); + yc = (peye.y * pm[3]) + (peye.z * pm[4]); + zc = pm[6] + (peye.z * pm[5]); + wc = 1.0f / -peye.z; + } + else { + xc = pm[2] + (peye.x * pm[1]); + yc = pm[4] + (peye.y * pm[3]); + zc = pm[6] + (peye.z * pm[5]); + wc = 1.0f; + } + *sx = (vp[2] / 2.0f) + (vp[0] + (wc * (xc * vp[2] / 2.0f))); + *sy = (vp[3] / 2.0f) + (vp[1] + (wc * (-yc * vp[3] / 2.0f))); + *sz = vp[5] + (wc * (zc * (vp[5] - vp[4]))); +} + +void GXGetViewportv(f32 *vp) +{ + // TODO +} + +void GXSetZTexture(GXZTexOp op, GXTexFmt fmt, u32 bias) +{ + // TODO +} + // Hudson void HuDvdErrDispInit(GXRenderModeObj *rmode, void *xfb1, void *xfb2) { } @@ -695,6 +733,24 @@ s32 msmSysGetOutputMode(void) return 0; } +s32 msmSeSetListener(Vec* pos, Vec* heading, float sndDist, float sndSpeed, MSM_SELISTENER* listener) +{ + return 0; +} + +void msmSeStopAll(BOOL checkGrp, s32 speed) +{ +} + +BOOL msmSysSetOutputMode(SND_OUTPUTMODE mode) +{ + return TRUE; +} + +void OSSetSoundMode(u32 mode) +{ +} + s32 HuSoftResetButtonCheck(void) { //puts("HuSoftResetButtonCheck is a stub");