diff --git a/CMakeLists.txt b/CMakeLists.txt index b90cd033..29ac53a7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -73,7 +73,7 @@ file(MAKE_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/isos) file(MAKE_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bin) # Set compiler stuff -include_directories(include external) +include_directories(external) add_definitions(-D${PLATFORM}_${REGION} -D${PLATFORM}_PLATFORM -DGZ_VERSION=${CMAKE_PROJECT_VERSION} -D_PROJECT_NAME="${CMAKE_PROJECT_NAME}" -D_VERSION="${CMAKE_PROJECT_VERSION}" -D_VARIANT="public" -D_BUILDID="${CMAKE_PROJECT_VERSION}" ${DEBUG} ${RUN_PR_TEST}) add_compile_options(-fdiagnostics-color=always -fvisibility=hidden) @@ -88,12 +88,9 @@ string(REGEX REPLACE "([0-9a-fA-F]?[0-9a-fA-F]?[0-9a-fA-F]?[0-9a-fA-F]?[0-9a-fA- configure_file(${CMAKE_CURRENT_SOURCE_DIR}/patch.asm.in ${CMAKE_CURRENT_BINARY_DIR}/patch.asm) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/RomHack.toml.in ${CMAKE_CURRENT_BINARY_DIR}/RomHack.toml) -include_directories(${CMAKE_CURRENT_BINARY_DIR}/include) - -add_subdirectory(src) add_subdirectory(modules) -add_library(tpgz STATIC "${CPPFILES}") +add_custom_target(tpgz ALL) add_dependencies(tpgz tp_c gcn_c modules) set_property(TARGET tpgz PROPERTY COMPILE_FLAGS "-g -c -Os -std=gnu++20 -Wall ${DEVKITPRO_MACHDEP}") @@ -112,7 +109,7 @@ endforeach() add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${TPGZ_CFG_BLD_ISO} DEPENDS tpgz modules ${TPGZ_PATCHER_EXE} ${CMAKE_CURRENT_SOURCE_DIR}/res ${CMAKE_CURRENT_SOURCE_DIR}/isos/${TPGZ_ISO_FILE}.iso ${CMAKE_CURRENT_BINARY_DIR}/patch.asm ${CMAKE_CURRENT_BINARY_DIR}/RomHack.toml ${TPGZ_REL_FILES} - COMMAND ${TPGZ_PATCHER_EXE} build --raw) + COMMAND ${TPGZ_PATCHER_EXE} build) string(REPLACE ".iso" ".patch" TPGZ_CFG_BLD_PATCH_OLD ${TPGZ_CFG_BLD_ISO}) string(TOLOWER ${PLATFORM} tpgz_platform_lower) @@ -121,7 +118,7 @@ string(REPLACE "_" "-" tpgz_region_lower ${tpgz_region_lower}) set(TPGZ_CFG_BLD_PATCH ${CMAKE_PROJECT_VERSION}-${tpgz_platform_lower}-${tpgz_region_lower}.patch) add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${TPGZ_CFG_BLD_PATCH} DEPENDS tpgz modules ${TPGZ_PATCHER_EXE} ${CMAKE_CURRENT_SOURCE_DIR}/res ${CMAKE_CURRENT_BINARY_DIR}/patch.asm ${CMAKE_CURRENT_BINARY_DIR}/RomHack.toml ${TPGZ_REL_FILES} - COMMAND ${TPGZ_PATCHER_EXE} build --raw --patch + COMMAND ${TPGZ_PATCHER_EXE} build --patch COMMAND ${CMAKE_COMMAND} -E rename ${TPGZ_CFG_BLD_PATCH_OLD} ${TPGZ_CFG_BLD_PATCH}) add_custom_target(iso diff --git a/RomHack.toml.in b/RomHack.toml.in index b9aef676..a6d3e6a0 100644 --- a/RomHack.toml.in +++ b/RomHack.toml.in @@ -5,7 +5,7 @@ developer-name = "Twilight Princess Community" full-developer-name = "Speedrun Community" [src] -iso = "@TPGZ_CFG_SRC_ISO@" +iso = "../isos/@TPGZ_CFG_SRC_ISO@" patch = "patch.asm" map = "@TPGZ_CFG_SRC_MAP@" @@ -13,11 +13,6 @@ map = "@TPGZ_CFG_SRC_MAP@" map = "@TPGZ_CFG_BLD_MAP@" iso = "@TPGZ_CFG_BLD_ISO@" -[link] -entries = ["apply_lib_hooks"] -base = "@TPGZ_CFG_LINK_BASE@" -libs = ["libtpgz.a"] - [files] # textures "tpgz/tex" = "../res/tex" diff --git a/bin/gcn/romhack b/bin/gcn/romhack deleted file mode 100755 index 66c92e0d..00000000 Binary files a/bin/gcn/romhack and /dev/null differ diff --git a/bin/romhack b/bin/romhack new file mode 100755 index 00000000..aa73a25e Binary files /dev/null and b/bin/romhack differ diff --git a/bin/wii/romhack b/bin/wii/romhack deleted file mode 100755 index 842dc178..00000000 Binary files a/bin/wii/romhack and /dev/null differ diff --git a/cmake/GCN_NTSCJ.cmake b/cmake/GCN_NTSCJ.cmake index 1733a554..3710871a 100644 --- a/cmake/GCN_NTSCJ.cmake +++ b/cmake/GCN_NTSCJ.cmake @@ -10,7 +10,7 @@ set(TPGZ_CFG_LOADER_ADDR "0x80004D18") set(TPGZ_CFG_SETTAG_ADDR "0x802398E0") # TOML values -set(TPGZ_CFG_SRC_ISO "${CMAKE_SOURCE_DIR}/isos/GZ2J01.iso") +set(TPGZ_CFG_SRC_ISO "GZ2J01.iso") set(TPGZ_CFG_SRC_MAP "map/Final/Release/frameworkF.map") set(TPGZ_CFG_BLD_ISO "tpgz.iso") set(TPGZ_CFG_BLD_MAP "GZ2J01.map") diff --git a/cmake/GCN_NTSCU.cmake b/cmake/GCN_NTSCU.cmake index ab562283..fa0c8560 100644 --- a/cmake/GCN_NTSCU.cmake +++ b/cmake/GCN_NTSCU.cmake @@ -10,7 +10,7 @@ set(TPGZ_CFG_LOADER_ADDR "0x80004D18") set(TPGZ_CFG_SETTAG_ADDR "0x80238F58") # TOML values -set(TPGZ_CFG_SRC_ISO "${CMAKE_SOURCE_DIR}/isos/GZ2E01.iso") +set(TPGZ_CFG_SRC_ISO "GZ2E01.iso") set(TPGZ_CFG_SRC_MAP "map/Final/Release/frameworkF.map") set(TPGZ_CFG_BLD_ISO "tpgz.iso") set(TPGZ_CFG_BLD_MAP "GZ2E01.map") diff --git a/cmake/GCN_PAL.cmake b/cmake/GCN_PAL.cmake index 1a08c62b..c29b5a6f 100644 --- a/cmake/GCN_PAL.cmake +++ b/cmake/GCN_PAL.cmake @@ -10,7 +10,7 @@ set(TPGZ_CFG_LOADER_ADDR "0x80004D18") set(TPGZ_CFG_SETTAG_ADDR "0x802395D8") # TOML values -set(TPGZ_CFG_SRC_ISO "${CMAKE_SOURCE_DIR}/isos/GZ2P01.iso") +set(TPGZ_CFG_SRC_ISO "GZ2P01.iso") set(TPGZ_CFG_SRC_MAP "map/Final/Release/frameworkF.map") set(TPGZ_CFG_BLD_ISO "tpgz.iso") set(TPGZ_CFG_BLD_MAP "GZ2P01.map") diff --git a/cmake/WII_NTSCJ.cmake b/cmake/WII_NTSCJ.cmake index ae6bcb70..6d3a3fb9 100644 --- a/cmake/WII_NTSCJ.cmake +++ b/cmake/WII_NTSCJ.cmake @@ -10,7 +10,7 @@ set(TPGZ_CFG_LOADER_ADDR "0x80005BF4") set(TPGZ_CFG_SETTAG_ADDR "0x802268b4") # TOML values -set(TPGZ_CFG_SRC_ISO "${CMAKE_SOURCE_DIR}/isos/RZDJ01.iso") +set(TPGZ_CFG_SRC_ISO "RZDJ01.iso") set(TPGZ_CFG_SRC_MAP "map/Rfinal/Release/RframeworkF.map") set(TPGZ_CFG_BLD_ISO "tpgzw.iso") set(TPGZ_CFG_BLD_MAP "RZDJ01.map") diff --git a/cmake/WII_NTSCU_10.cmake b/cmake/WII_NTSCU_10.cmake index 1d411a8c..4360111e 100644 --- a/cmake/WII_NTSCU_10.cmake +++ b/cmake/WII_NTSCU_10.cmake @@ -10,7 +10,7 @@ set(TPGZ_CFG_LOADER_ADDR "0x80005BF4") set(TPGZ_CFG_SETTAG_ADDR "0x8022657c") # TOML values -set(TPGZ_CFG_SRC_ISO "${CMAKE_SOURCE_DIR}/isos/RZDE01.iso") +set(TPGZ_CFG_SRC_ISO "RZDE01.iso") set(TPGZ_CFG_SRC_MAP "map/Rfinal/Release/RframeworkF.map") set(TPGZ_CFG_BLD_ISO "tpgzw.iso") set(TPGZ_CFG_BLD_MAP "RZDE01.map") diff --git a/cmake/WII_NTSCU_12.cmake b/cmake/WII_NTSCU_12.cmake index 91941d8c..604b80ec 100644 --- a/cmake/WII_NTSCU_12.cmake +++ b/cmake/WII_NTSCU_12.cmake @@ -10,7 +10,7 @@ set(TPGZ_CFG_LOADER_ADDR "0x80005BF4") set(TPGZ_CFG_SETTAG_ADDR "0x80226318") # TOML values -set(TPGZ_CFG_SRC_ISO "${CMAKE_SOURCE_DIR}/isos/RZDE01_2.iso") +set(TPGZ_CFG_SRC_ISO "RZDE01_2.iso") set(TPGZ_CFG_SRC_MAP "map/Rfinal/Release/RframeworkF.map") set(TPGZ_CFG_BLD_ISO "tpgzw.iso") set(TPGZ_CFG_BLD_MAP "RZDE01_2.map") diff --git a/cmake/WII_PAL.cmake b/cmake/WII_PAL.cmake index 27b5f9ac..cc244453 100644 --- a/cmake/WII_PAL.cmake +++ b/cmake/WII_PAL.cmake @@ -10,7 +10,7 @@ set(TPGZ_CFG_LOADER_ADDR "0x80005BF4") set(TPGZ_CFG_SETTAG_ADDR "0x802261a0") # TOML values -set(TPGZ_CFG_SRC_ISO "${CMAKE_SOURCE_DIR}/isos/RZDP01.iso") +set(TPGZ_CFG_SRC_ISO "RZDP01.iso") set(TPGZ_CFG_SRC_MAP "map/Rfinal/Release/RframeworkF.map") set(TPGZ_CFG_BLD_ISO "tpgzw.iso") set(TPGZ_CFG_BLD_MAP "RZDP01.map") diff --git a/cmake/patcher.cmake b/cmake/patcher.cmake index 5e75e27e..17497316 100644 --- a/cmake/patcher.cmake +++ b/cmake/patcher.cmake @@ -1,6 +1,4 @@ -string(TOLOWER ${PLATFORM} TPGZ_PATCHER_DIR) - -find_program(TPGZ_PATCHER_EXE romhack HINTS ${CMAKE_SOURCE_DIR}/bin/${TPGZ_PATCHER_DIR}) +find_program(TPGZ_PATCHER_EXE romhack HINTS ${CMAKE_SOURCE_DIR}/bin) if(NOT TPGZ_PATCHER_EXE) message(FATAL_ERROR "please put \"romhack\" in the bin/ folder") diff --git a/external/libtp_c/include/dolphin/os/OS.h b/external/libtp_c/include/dolphin/os/OS.h index 9851e0d9..9201f280 100644 --- a/external/libtp_c/include/dolphin/os/OS.h +++ b/external/libtp_c/include/dolphin/os/OS.h @@ -165,5 +165,6 @@ OSTime OSGetTime(); void OSTicksToCalendarTime(OSTime ticks, OSCalendarTime* ct); extern OSModuleList osModuleList; +extern u32 __OSBusClock; } -#endif \ No newline at end of file +#endif diff --git a/res/map/GCN_NTSCJ.lst b/res/map/GCN_NTSCJ.lst index 2ac096eb..e8dd3859 100644 --- a/res/map/GCN_NTSCJ.lst +++ b/res/map/GCN_NTSCJ.lst @@ -2,6 +2,8 @@ // crash address for testing in PRs 8044A6C0:gzCrashReport +800000F8:__OSBusClock + // memory 80003458:memset 80003540:memcpy diff --git a/res/map/GCN_NTSCU.lst b/res/map/GCN_NTSCU.lst index e66c8d9b..6c789d32 100644 --- a/res/map/GCN_NTSCU.lst +++ b/res/map/GCN_NTSCU.lst @@ -2,6 +2,8 @@ // crash address for testing in PRs 80450580:gzCrashReport +800000F8:__OSBusClock + // memory 80003458:memset 80003540:memcpy diff --git a/res/map/GCN_PAL.lst b/res/map/GCN_PAL.lst index a86e6692..cd0f4a3e 100644 --- a/res/map/GCN_PAL.lst +++ b/res/map/GCN_PAL.lst @@ -2,6 +2,8 @@ // crash address for testing in PRs 80452540:gzCrashReport +800000F8:__OSBusClock + // memory 80003458:memset 80003540:memcpy diff --git a/res/map/WII_NTSCJ.lst b/res/map/WII_NTSCJ.lst index dc6f19aa..dde11f4f 100644 --- a/res/map/WII_NTSCJ.lst +++ b/res/map/WII_NTSCJ.lst @@ -5,6 +5,8 @@ // crash address for testing in PRs 8051b460:gzCrashReport +800000F8:__OSBusClock + // memory 8000443c:memset 80004338:memcpy diff --git a/res/map/WII_NTSCU_10.lst b/res/map/WII_NTSCU_10.lst index f1cf7687..6f2db620 100644 --- a/res/map/WII_NTSCU_10.lst +++ b/res/map/WII_NTSCU_10.lst @@ -5,6 +5,8 @@ // crash address for testing in PRs 80537560:gzCrashReport +800000F8:__OSBusClock + // memory 8000443c:memset 80004338:memcpy diff --git a/res/map/WII_NTSCU_12.lst b/res/map/WII_NTSCU_12.lst index c859655f..efe47798 100644 --- a/res/map/WII_NTSCU_12.lst +++ b/res/map/WII_NTSCU_12.lst @@ -5,6 +5,8 @@ // crash address for testing in PRs 8051d5e0:gzCrashReport +800000F8:__OSBusClock + // memory 8000443c:memset 80004338:memcpy diff --git a/res/map/WII_PAL.lst b/res/map/WII_PAL.lst index 7ebcb191..8f5c2b71 100644 --- a/res/map/WII_PAL.lst +++ b/res/map/WII_PAL.lst @@ -5,6 +5,8 @@ // crash address for testing in PRs 8051DEE0:gzCrashReport +800000F8:__OSBusClock + // memory 8000443c:memset 80004338:memcpy diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt deleted file mode 100644 index 9dc9f730..00000000 --- a/src/CMakeLists.txt +++ /dev/null @@ -1,7 +0,0 @@ -# IMPORTANT: if you add/remove a source file that has to be compiled, add it -# manually instead of automatically searching for it (as mentioned in the note -# of the "Filesystem" section of -# https://cmake.org/cmake/help/latest/command/file.html#filesystem) -file(GLOB_RECURSE CPPFILES CONFIGURE_DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp") - -set(CPPFILES ${CPPFILES} PARENT_SCOPE) \ No newline at end of file diff --git a/src/lib.cpp b/src/lib.cpp deleted file mode 100644 index 15d1fb6e..00000000 --- a/src/lib.cpp +++ /dev/null @@ -1,3 +0,0 @@ -extern "C" { -void apply_lib_hooks() {} -} \ No newline at end of file