diff --git a/Makefile b/Makefile index 9b67a5e..8198055 100644 --- a/Makefile +++ b/Makefile @@ -7,6 +7,10 @@ MAKEFLAGS += --no-builtin-variables default: F3DEX3_BrZ F3DEX3_BrW +# The F3DEX3 version letter is incremented when there are major, GBI-breaking +# changes. This goes in the microcode ID string so HLE can detect the version. +VERSION = _B + # List of all compile-time options supported by the microcode source. ALL_OPTIONS := \ CFG_G_BRANCH_W \ @@ -175,7 +179,7 @@ $(eval $(call reset_vars)) define rule_builder_final NAME := F3DEX3$(NAME_FINAL) DESCRIPTION := Will make you want to finally ditch HLE ($(OPTIONS_FINAL)) - ID_STR := F3DEX3$(NAME_FINAL) by Sauraen & Yoshitaka Yasumoto/Nintendo + ID_STR := F3DEX3$(NAME_FINAL)$(VERSION) by Sauraen & Yoshitaka Yasumoto/Nintendo OPTIONS := $(OPTIONS_FINAL) $$(eval $$(call ucode_rule)) endef diff --git a/build.sh b/build.sh index 1ff45fb..a045ddb 100644 --- a/build.sh +++ b/build.sh @@ -23,7 +23,7 @@ for ucode in "${UCODES[@]}"; do cp build/$ucode/$ucode.data ../../Mods/HackerOoT/data/F3DEX3/$ucode.data done -make -C ../../Mods/HackerOoT -j12 +make -C ../../Mods/HackerOoT -j32 #cp ../../Mods/HackerOoT/HackerOoT.z64 /media/`whoami`/SOME2/ ../../Flashcarts/SummerCart64/sw/deployer/target/release/sc64deployer upload ../../Mods/HackerOoT/HackerOoT.z64 printf "\n====\nDone\n====\n" diff --git a/f3dex3.s b/f3dex3.s index 7cc9ede..8060b1a 100644 --- a/f3dex3.s +++ b/f3dex3.s @@ -1315,10 +1315,10 @@ G_TRI1_handler: li $ra, tris_end // After done with this tri, exit tri processing sw cmd_w0, rdpHalf1Val // Store first tri indices tri_main: - lpv $v27[4], 0(rdpHalf1Val) // To vector unit in elems 5-7 - lbu $1, 1(rdpHalf1Val) - lbu $2, 2(rdpHalf1Val) - lbu $3, 3(rdpHalf1Val) + lpv $v27[4], (rdpHalf1Val)($zero) // To vector unit in elems 5-7 + lbu $1, rdpHalf1Val + 1 + lbu $2, rdpHalf1Val + 2 + lbu $3, rdpHalf1Val + 3 vclr vZero lhu $1, (vertexTable)($1) vmudn $v29, vOne, vTRC_VB // Address of vertex buffer diff --git a/gbi.h b/gbi.h index 28e2af2..bd7c23c 100644 --- a/gbi.h +++ b/gbi.h @@ -2679,12 +2679,16 @@ _DW({ \ } /** - * Make the triangle snake turn left before drawing this triangle. + * Make the triangle snake turn left before drawing this triangle. In other + * words, build the new triangle off the newest and middle-age vertices of the + * last triangle. * @see gSPTriSnake */ #define G_SNAKE_LEFT 0 /** - * Make the triangle snake turn right before drawing this triangle. + * Make the triangle snake turn right before drawing this triangle. In other + * words, build the new triangle off the newest and oldest vertices of the last + * triangle. * @see gSPTriSnake */ #define G_SNAKE_RIGHT 1