You've already forked Microtransactions64
mirror of
https://github.com/Print-and-Panic/Microtransactions64.git
synced 2026-01-21 10:17:19 -08:00
Refresh 7
This commit is contained in:
40
CHANGES
40
CHANGES
@@ -1,3 +1,43 @@
|
||||
Refresh #7
|
||||
1.) update README.md (#861)
|
||||
2.) [eu] fix decompilation bugs in synthesis_process_note (#862)
|
||||
3.) Label and document Snufit.inc.c (#863)
|
||||
4.) Label and document Snufit.inc.c (#863)
|
||||
5.) Match append_bubble_vertex_buffer, append_snowflake_vertex_buffer (#860)
|
||||
6.) Compile audio/effects.c with -sopt (#870)
|
||||
7.) Match handle_dialog_text_and_pages (#872)
|
||||
8.) Remove improperly used LEVEL_SA define. (#875)
|
||||
9.) Remove unused EU ASM files (#873)
|
||||
10.) Shindou build flag support (#876)
|
||||
11.) The Big Function PR (Part 1) (#864)
|
||||
12.) "Re-document" file_select and star_select for EU (#877)
|
||||
13.) Document paintings.c (#868)
|
||||
14.) Minor interaction.c labelling/documentation. (#882)
|
||||
15.) Match synthesis_execute, prepare_reverb_ring_buffer, func_eu_802e00d8 (#886)
|
||||
16.) The Big Function PR (Part 2) (#874)
|
||||
17.) Additional painting documentation (#883)
|
||||
18.) Some EU audio labelling (#885)
|
||||
19.) Bring synthesis_do_one_audio_update a bit closer to matching (#887)
|
||||
20.) Misleading comment, this actually contols Bowser's init action (#889)
|
||||
21.) Match synthesis_do_one_audio_update (#890)
|
||||
22.) Remove unneeded if(1) in synthesis_do_one_audio_update (#891)
|
||||
23.) Match synthesis_resample_and_mix_reverb (#893)
|
||||
24.) Set LANG=C (#896)
|
||||
25.) Match note_apply_headset_pan_effects (#897)
|
||||
26.) Match play_sequence (#898)
|
||||
27.) Match sequence_channel_enable (#899)
|
||||
28.) Match sequence_player_process_sequence (#900)
|
||||
29.) Match (eu) alloc_bank_or_seq (#901)
|
||||
30.) Match alloc_bank_or_seq (#903)
|
||||
31.) Update README.md (again)
|
||||
32.) Documented behaviour/fish.inc.c & blue_fish.inc.c (#894)
|
||||
33.) Labelled 4 behavior files, made object_helper functions consistent (#881)
|
||||
34.) Add a make target for .copt (#902)
|
||||
35.) The Big Function PR (Part 3) (#888)
|
||||
36.) The Big Function PR (Part 4) (#906)
|
||||
37.) Rename src/audio/memory.c -> heap.c (#907)
|
||||
38.) Fix BBH texture (#908)
|
||||
|
||||
Refresh #6
|
||||
1.) Make tools work on MinGW (#804)
|
||||
2.) Document mario_misc (#628)
|
||||
|
||||
51
Makefile
51
Makefile
@@ -42,11 +42,22 @@ ifeq ($(VERSION),eu)
|
||||
GRUCODE_CFLAGS := -DF3D_NEW
|
||||
GRUCODE_ASFLAGS := --defsym F3D_NEW=1
|
||||
TARGET := sm64.eu
|
||||
else
|
||||
ifeq ($(VERSION),sh)
|
||||
$(warning Building SH is experimental and is prone to breaking. Try at your own risk.)
|
||||
VERSION_CFLAGS := -DVERSION_SH
|
||||
VERSION_ASFLAGS := --defsym VERSION_SH=1
|
||||
GRUCODE_CFLAGS := -DF3D_NEW
|
||||
GRUCODE_ASFLAGS := --defsym F3D_NEW=1
|
||||
TARGET := sm64.sh
|
||||
# TODO: GET RID OF THIS!!! We should mandate assets for Shindou like EU but we dont have the addresses extracted yet so we'll just pretend you have everything extracted for now.
|
||||
NOEXTRACT := 1
|
||||
else
|
||||
$(error unknown version "$(VERSION)")
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
# Microcode
|
||||
|
||||
@@ -147,9 +158,13 @@ MIPSISET := -mips2 -32
|
||||
|
||||
ifeq ($(VERSION),eu)
|
||||
OPT_FLAGS := -O2
|
||||
else
|
||||
ifeq ($(VERSION),sh)
|
||||
OPT_FLAGS := -O2
|
||||
else
|
||||
OPT_FLAGS := -g
|
||||
endif
|
||||
endif
|
||||
|
||||
# File dependencies and variables for specific files
|
||||
include Makefile.split
|
||||
@@ -163,11 +178,20 @@ GODDARD_C_FILES := $(foreach dir,$(GODDARD_SRC_DIRS),$(wildcard $(dir)/*.c))
|
||||
ULTRA_S_FILES := $(foreach dir,$(ULTRA_ASM_DIRS),$(wildcard $(dir)/*.s))
|
||||
GENERATED_C_FILES := $(BUILD_DIR)/assets/mario_anim_data.c $(BUILD_DIR)/assets/demo_data.c
|
||||
|
||||
ifeq ($(VERSION),sh)
|
||||
SOUND_BANK_FILES := $(wildcard sound/sound_banks/*.json)
|
||||
SOUND_SEQUENCE_FILES := $(wildcard sound/sequences/jp/*.m64) \
|
||||
$(wildcard sound/sequences/*.m64) \
|
||||
$(foreach file,$(wildcard sound/sequences/jp/*.s),$(BUILD_DIR)/$(file:.s=.m64)) \
|
||||
$(foreach file,$(wildcard sound/sequences/*.s),$(BUILD_DIR)/$(file:.s=.m64))
|
||||
else
|
||||
SOUND_BANK_FILES := $(wildcard sound/sound_banks/*.json)
|
||||
SOUND_SEQUENCE_FILES := $(wildcard sound/sequences/$(VERSION)/*.m64) \
|
||||
$(wildcard sound/sequences/*.m64) \
|
||||
$(foreach file,$(wildcard sound/sequences/$(VERSION)/*.s),$(BUILD_DIR)/$(file:.s=.m64)) \
|
||||
$(foreach file,$(wildcard sound/sequences/*.s),$(BUILD_DIR)/$(file:.s=.m64))
|
||||
endif
|
||||
|
||||
SOUND_SAMPLE_DIRS := $(wildcard sound/samples/*)
|
||||
SOUND_SAMPLE_AIFFS := $(foreach dir,$(SOUND_SAMPLE_DIRS),$(wildcard $(dir)/*.aiff))
|
||||
SOUND_SAMPLE_TABLES := $(foreach file,$(SOUND_SAMPLE_AIFFS),$(BUILD_DIR)/$(file:.aiff=.table))
|
||||
@@ -233,7 +257,7 @@ endif
|
||||
INCLUDE_CFLAGS := -I include -I $(BUILD_DIR) -I $(BUILD_DIR)/include -I src -I .
|
||||
|
||||
# Check code syntax with host compiler
|
||||
CC_CHECK := gcc -fsyntax-only -fsigned-char $(CC_CFLAGS) $(TARGET_CFLAGS) $(INCLUDE_CFLAGS) -std=gnu90 -Wall -Wextra -Wno-format-security -DNON_MATCHING -DAVOID_UB $(VERSION_CFLAGS) $(GRUCODE_CFLAGS)
|
||||
CC_CHECK := gcc -fsyntax-only -fsigned-char $(CC_CFLAGS) $(TARGET_CFLAGS) $(INCLUDE_CFLAGS) -std=gnu90 -Wall -Wextra -Wno-format-security -Wno-main -DNON_MATCHING -DAVOID_UB $(VERSION_CFLAGS) $(GRUCODE_CFLAGS)
|
||||
|
||||
ASFLAGS := -march=vr4300 -mabi=32 -I include -I $(BUILD_DIR) $(VERSION_ASFLAGS) $(GRUCODE_ASFLAGS)
|
||||
CFLAGS = -Wab,-r4300_mul -non_shared -G 0 -Xcpluscomm -Xfullwarn -signed $(OPT_FLAGS) $(TARGET_CFLAGS) $(INCLUDE_CFLAGS) $(VERSION_CFLAGS) $(MIPSISET) $(GRUCODE_CFLAGS)
|
||||
@@ -250,6 +274,9 @@ else
|
||||
CC_CHECK += -m32
|
||||
endif
|
||||
|
||||
# Prevent a crash with -sopt
|
||||
export LANG := C
|
||||
|
||||
####################### Other Tools #########################
|
||||
|
||||
# N64 tools
|
||||
@@ -324,12 +351,18 @@ $(BUILD_DIR)/levels/menu/leveldata.o: $(BUILD_DIR)/text/us/define_courses.inc.c
|
||||
$(BUILD_DIR)/levels/menu/leveldata.o: $(BUILD_DIR)/text/de/define_courses.inc.c
|
||||
$(BUILD_DIR)/levels/menu/leveldata.o: $(BUILD_DIR)/text/fr/define_courses.inc.c
|
||||
|
||||
else
|
||||
ifeq ($(VERSION),sh)
|
||||
TEXT_DIRS := text/jp
|
||||
$(BUILD_DIR)/bin/segment2.o: $(BUILD_DIR)/text/jp/define_text.inc.c
|
||||
|
||||
else
|
||||
TEXT_DIRS := text/$(VERSION)
|
||||
|
||||
# non-EU encoded text inserted into segment 0x02
|
||||
$(BUILD_DIR)/bin/segment2.o: $(BUILD_DIR)/text/$(VERSION)/define_text.inc.c
|
||||
endif
|
||||
endif
|
||||
|
||||
$(BUILD_DIR)/text/%/define_courses.inc.c: text/define_courses.inc.c text/%/courses.h
|
||||
$(CPP) $(VERSION_CFLAGS) $< -o $@ -I text/$*/
|
||||
@@ -422,8 +455,13 @@ $(SOUND_BIN_DIR)/sound_data.ctl: sound/sound_banks/ $(SOUND_BANK_FILES) $(SOUND_
|
||||
$(SOUND_BIN_DIR)/sound_data.tbl: $(SOUND_BIN_DIR)/sound_data.ctl
|
||||
@true
|
||||
|
||||
ifeq ($(VERSION),sh)
|
||||
$(SOUND_BIN_DIR)/sequences.bin: $(SOUND_BANK_FILES) sound/sequences.json sound/sequences/ sound/sequences/jp/ $(SOUND_SEQUENCE_FILES) $(ENDIAN_BITWIDTH)
|
||||
$(PYTHON) tools/assemble_sound.py --sequences $@ $(SOUND_BIN_DIR)/bank_sets sound/sound_banks/ sound/sequences.json $(SOUND_SEQUENCE_FILES) $(VERSION_CFLAGS) $$(cat $(ENDIAN_BITWIDTH))
|
||||
else
|
||||
$(SOUND_BIN_DIR)/sequences.bin: $(SOUND_BANK_FILES) sound/sequences.json sound/sequences/ sound/sequences/$(VERSION)/ $(SOUND_SEQUENCE_FILES) $(ENDIAN_BITWIDTH)
|
||||
$(PYTHON) tools/assemble_sound.py --sequences $@ $(SOUND_BIN_DIR)/bank_sets sound/sound_banks/ sound/sequences.json $(SOUND_SEQUENCE_FILES) $(VERSION_CFLAGS) $$(cat $(ENDIAN_BITWIDTH))
|
||||
endif
|
||||
|
||||
$(SOUND_BIN_DIR)/bank_sets: $(SOUND_BIN_DIR)/sequences.bin
|
||||
@true
|
||||
@@ -477,6 +515,17 @@ $(BUILD_DIR)/lib/src/sprintf.o: OPT_FLAGS := -O3
|
||||
$(BUILD_DIR)/src/audio/%.o: OPT_FLAGS := -O2
|
||||
$(BUILD_DIR)/src/audio/load.o: OPT_FLAGS := -O2
|
||||
$(BUILD_DIR)/src/audio/external.o: OPT_FLAGS := -O2 -Wo,-loopunroll,0
|
||||
else
|
||||
|
||||
# The source-to-source optimizer copt is enabled for audio. This makes it use
|
||||
# acpp, which needs -Wp,-+ to handle C++-style comments.
|
||||
$(BUILD_DIR)/src/audio/effects.o: OPT_FLAGS := -O2 -Wo,-loopunroll,0 -sopt,-inline=sequence_channel_process_sound,-scalaroptimize=1 -Wp,-+
|
||||
|
||||
# Add a target for build/eu/src/audio/*.copt to make it easier to see debug
|
||||
$(BUILD_DIR)/src/audio/%.acpp: src/audio/%.c
|
||||
$(QEMU_IRIX) -silent -L $(IRIX_ROOT) $(IRIX_ROOT)/usr/lib/acpp $(TARGET_CFLAGS) $(INCLUDE_CFLAGS) $(VERSION_CFLAGS) $(GRUCODE_CFLAGS) -D__sgi -+ $< > $@
|
||||
$(BUILD_DIR)/src/audio/%.copt: $(BUILD_DIR)/src/audio/%.acpp
|
||||
$(QEMU_IRIX) -silent -L $(IRIX_ROOT) $(IRIX_ROOT)/usr/lib/copt -signed -I=$< -CMP=$@ -cp=i -scalaroptimize=1
|
||||
endif
|
||||
|
||||
ifeq ($(NON_MATCHING),0)
|
||||
|
||||
@@ -63,7 +63,7 @@ MOLE_DIRS := monty_mole_hole monty_mole smoke ukiki fwoosh
|
||||
LAKITU_DIRS := lakitu_cameraman toad mips boo_castle
|
||||
PEACH_DIRS := bird peach yoshi
|
||||
BOWSER_DIRS := bowser_flame impact_ring yellow_sphere bowser bomb impact_smoke
|
||||
MARIO_DIRS := mario bubble walk_smoke burn_smoke stomp_smoke water_waves sparkle water_splash white_particle_small sparkle_animation
|
||||
MARIO_DIRS := mario bubble walk_smoke burn_smoke stomp_smoke water_wave sparkle water_splash white_particle_small sparkle_animation
|
||||
|
||||
# Actor Files
|
||||
AMP_CHUCKYA_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(AMP_DIRS)),$(patsubst %.png,%.inc.c,$(wildcard $(dir)/*.png)))
|
||||
|
||||
@@ -1,14 +1,15 @@
|
||||
# Super Mario 64
|
||||
|
||||
This repo contains a full decompilation of Super Mario 64 (J) and (U).
|
||||
This repo contains a full decompilation of Super Mario 64 (J), (U), and (E).
|
||||
The source and data have been decompiled but complete naming and documentation
|
||||
all of the code and data is still a work in progress. Decompiling the (E) ROM
|
||||
all of the code and data is still a work in progress. Decompiling the Shindou ROM
|
||||
is also an ongoing effort.
|
||||
|
||||
It builds the following ROMs:
|
||||
|
||||
* sm64.jp.z64 `sha1: 8a20a5c83d6ceb0f0506cfc9fa20d8f438cafe51`
|
||||
* sm64.us.z64 `sha1: 9bef1128717f958171a4afac3ed78ee2bb4e86ce`
|
||||
* sm64.eu.z64 `sha1: 4ac5721683d0e0b6bbb561b58a71740845dceea9`
|
||||
|
||||
This repo does not include all assets necessary for compiling the ROMs.
|
||||
A prior copy of the game is required to extract the required assets.
|
||||
|
||||
@@ -4,7 +4,7 @@ const GeoLayout boo_geo[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_SCALE(0x00, 26214),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_8029D924),
|
||||
GEO_ASM(0, geo_update_layer_transparency),
|
||||
GEO_SWITCH_CASE(2, geo_switch_anim_state),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_DISPLAY_LIST(LAYER_OPAQUE, boo_seg5_dl_0500C1B0),
|
||||
|
||||
@@ -4,7 +4,7 @@ const GeoLayout boo_castle_geo[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_SCALE(0x00, 26214),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_8029D924),
|
||||
GEO_ASM(0, geo_update_layer_transparency),
|
||||
GEO_SWITCH_CASE(2, geo_switch_anim_state),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_DISPLAY_LIST(LAYER_OPAQUE, boo_castle_seg6_dl_06017CE0),
|
||||
|
||||
@@ -23,7 +23,7 @@ const GeoLayout bowser_geo_0000D8[] = {
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, bowser_seg6_dl_06043698),
|
||||
GEO_ASM(0, Geo18_802B798C),
|
||||
GEO_ASM(0, geo_update_body_rot_from_parent),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 118, 67, 105, NULL),
|
||||
@@ -135,7 +135,7 @@ const GeoLayout bowser_geo_000424[] = {
|
||||
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_06043698),
|
||||
GEO_ASM(0, Geo18_802B798C),
|
||||
GEO_ASM(0, geo_update_body_rot_from_parent),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 118, 67, 105, NULL),
|
||||
@@ -251,7 +251,7 @@ const GeoLayout bowser_geo_000770[] = {
|
||||
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_06043698),
|
||||
GEO_ASM(0, Geo18_802B798C),
|
||||
GEO_ASM(0, geo_update_body_rot_from_parent),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 118, 67, 105, NULL),
|
||||
@@ -350,7 +350,7 @@ const GeoLayout bowser_shadow_geo[] = {
|
||||
const GeoLayout bowser_geo[] = {
|
||||
GEO_NODE_START(),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_8029D924),
|
||||
GEO_ASM(0, geo_update_layer_transparency),
|
||||
#ifdef VERSION_JP
|
||||
GEO_SWITCH_CASE(2, geo_switch_anim_state),
|
||||
#endif
|
||||
@@ -360,20 +360,20 @@ const GeoLayout bowser_geo[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_NODE_START(),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_802B7D44),
|
||||
GEO_ASM(0, geo_bits_bowser_coloring),
|
||||
GEO_BRANCH(1, bowser_geo_0000D8),
|
||||
GEO_CLOSE_NODE(),
|
||||
|
||||
GEO_NODE_START(),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_802B7D44),
|
||||
GEO_ASM(0, geo_bits_bowser_coloring),
|
||||
GEO_BRANCH(1, bowser_geo_000424),
|
||||
GEO_CLOSE_NODE(),
|
||||
|
||||
#ifndef VERSION_JP
|
||||
GEO_NODE_START(),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_802B7D44),
|
||||
GEO_ASM(0, geo_bits_bowser_coloring),
|
||||
GEO_BRANCH(1, bowser_shadow_geo),
|
||||
GEO_CLOSE_NODE(),
|
||||
#endif
|
||||
@@ -387,7 +387,7 @@ const GeoLayout bowser_geo[] = {
|
||||
const GeoLayout bowser2_geo[] = {
|
||||
GEO_NODE_START(),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_8029D924),
|
||||
GEO_ASM(0, geo_update_layer_transparency),
|
||||
|
||||
#ifdef VERSION_JP
|
||||
GEO_SWITCH_CASE(2, geo_switch_anim_state),
|
||||
@@ -399,20 +399,20 @@ const GeoLayout bowser2_geo[] = {
|
||||
|
||||
GEO_NODE_START(),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_802B7D44),
|
||||
GEO_ASM(0, geo_bits_bowser_coloring),
|
||||
GEO_BRANCH(1, bowser_geo_0000D8),
|
||||
GEO_CLOSE_NODE(),
|
||||
|
||||
GEO_NODE_START(),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_802B7D44),
|
||||
GEO_ASM(0, geo_bits_bowser_coloring),
|
||||
GEO_BRANCH(1, bowser_geo_000770),
|
||||
GEO_CLOSE_NODE(),
|
||||
|
||||
#ifndef VERSION_JP
|
||||
GEO_NODE_START(),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_802B7D44),
|
||||
GEO_ASM(0, geo_bits_bowser_coloring),
|
||||
GEO_BRANCH(1, bowser_shadow_geo),
|
||||
GEO_CLOSE_NODE(),
|
||||
#endif
|
||||
|
||||
@@ -18,7 +18,7 @@ const GeoLayout bowser_key_cutscene_geo[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_802BA2B0),
|
||||
GEO_ASM(0, geo_scale_bowser_key),
|
||||
GEO_SCALE(0x00, 65536),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_DISPLAY_LIST(LAYER_OPAQUE, bowser_key_dl),
|
||||
|
||||
@@ -99,7 +99,7 @@ const GeoLayout chuckya_geo[] = {
|
||||
GEO_DISPLAY_LIST(LAYER_ALPHA, chuckya_seg8_dl_0800A510),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ASM(0, Geo18_802A719C),
|
||||
GEO_ASM(0, geo_update_held_mario_pos),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
#include "stomp_smoke/model.inc.c"
|
||||
|
||||
#include "water_waves/model.inc.c"
|
||||
#include "water_wave/model.inc.c"
|
||||
|
||||
#include "sparkle/model.inc.c"
|
||||
|
||||
|
||||
@@ -283,7 +283,7 @@ extern const Gfx sparkles_animation_seg4_dl_04035348[];
|
||||
extern const Gfx sparkles_animation_seg4_dl_04035360[];
|
||||
|
||||
// stomp_smoke
|
||||
extern const GeoLayout spot_on_ground_geo[];
|
||||
extern const GeoLayout small_water_splash_geo[];
|
||||
extern const GeoLayout mario_TODO_geo_0000E0[];
|
||||
extern const Gfx stomp_smoke_seg4_dl_04025148[];
|
||||
extern const Gfx stomp_smoke_seg4_dl_04025190[];
|
||||
@@ -326,15 +326,15 @@ extern const Gfx water_splash_seg4_dl_040326D0[];
|
||||
extern const Gfx water_splash_seg4_dl_040326E8[];
|
||||
|
||||
// water_waves
|
||||
extern const GeoLayout water_waves_surface_geo[];
|
||||
extern const GeoLayout water_waves_geo[];
|
||||
extern const Gfx water_waves_seg4_dl_04027358[];
|
||||
extern const Gfx water_waves_seg4_dl_040273A0[];
|
||||
extern const Gfx water_waves_seg4_dl_040273D8[];
|
||||
extern const Gfx water_waves_seg4_dl_040273F0[];
|
||||
extern const Gfx water_waves_seg4_dl_04027408[];
|
||||
extern const Gfx water_waves_seg4_dl_04027420[];
|
||||
extern const Gfx water_waves_seg4_dl_04027438[];
|
||||
extern const GeoLayout idle_water_wave_geo[];
|
||||
extern const GeoLayout wave_trail_geo[];
|
||||
extern const Gfx water_wave_seg4_dl_04027358[];
|
||||
extern const Gfx water_wave_seg4_dl_040273A0[];
|
||||
extern const Gfx water_wave_seg4_dl_040273D8[];
|
||||
extern const Gfx water_wave_seg4_dl_040273F0[];
|
||||
extern const Gfx water_wave_seg4_dl_04027408[];
|
||||
extern const Gfx water_wave_seg4_dl_04027420[];
|
||||
extern const Gfx water_wave_seg4_dl_04027438[];
|
||||
|
||||
// white_particle_small
|
||||
extern const Gfx white_particle_small_dl_begin[];
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
#include "walk_smoke/geo.inc.c"
|
||||
#include "burn_smoke/geo.inc.c"
|
||||
#include "stomp_smoke/geo.inc.c"
|
||||
#include "water_waves/geo.inc.c"
|
||||
#include "water_wave/geo.inc.c"
|
||||
#include "sparkle/geo.inc.c"
|
||||
#include "water_splash/geo.inc.c"
|
||||
#include "sparkle_animation/geo.inc.c"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
const GeoLayout invisible_bowser_accessory_geo[] = {
|
||||
GEO_CULLING_RADIUS(10000),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(20, Geo18_8029D924),
|
||||
GEO_ASM(20, geo_update_layer_transparency),
|
||||
GEO_DISPLAY_LIST(LAYER_TRANSPARENT_DECAL, impact_ring_seg6_dl_0601EAC0),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_END(),
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
const GeoLayout bowser_impact_smoke_geo[] = {
|
||||
GEO_NODE_START(),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_8029D924),
|
||||
GEO_ASM(0, geo_update_layer_transparency),
|
||||
GEO_SWITCH_CASE(5, geo_switch_anim_state),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, impact_smoke_seg6_dl_06062B38),
|
||||
|
||||
@@ -80,7 +80,7 @@ const GeoLayout king_bobomb_geo[] = {
|
||||
GEO_DISPLAY_LIST(LAYER_ALPHA, king_bobomb_seg5_dl_0500A6C0),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ASM(0, Geo18_802A719C),
|
||||
GEO_ASM(0, geo_update_held_mario_pos),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
|
||||
@@ -31,7 +31,7 @@ const GeoLayout klepto_geo[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_SCALE(0x00, 16384),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_802A45E4),
|
||||
GEO_ASM(0, geo_offset_klepto_held_object),
|
||||
GEO_TRANSLATE_ROTATE_WITH_DL(LAYER_OPAQUE, 0, 100, 0, 180, 270, 0, mario_cap_seg3_dl_03022F48),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
@@ -39,9 +39,9 @@ const GeoLayout klepto_geo[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_SCALE(0x00, 16384),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_802A45E4),
|
||||
GEO_ASM(0, geo_offset_klepto_held_object),
|
||||
GEO_TRANSLATE_ROTATE_WITH_DL(LAYER_OPAQUE, 0, 100, 0, 180, 270, 0, star_seg3_dl_0302B870),
|
||||
GEO_ASM(0, Geo18_802A45E4),
|
||||
GEO_ASM(0, geo_offset_klepto_held_object),
|
||||
GEO_TRANSLATE_ROTATE_WITH_DL(LAYER_ALPHA, 0, 100, 0, 180, 270, 0, star_seg3_dl_0302BA18),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
@@ -49,7 +49,7 @@ const GeoLayout klepto_geo[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_SCALE(0x00, 16384),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_802A45E4),
|
||||
GEO_ASM(0, geo_offset_klepto_held_object),
|
||||
GEO_TRANSLATE_ROTATE_WITH_DL(LAYER_OPAQUE, 0, 100, 0, 180, 270, 0, transparent_star_seg3_dl_0302C620),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
|
||||
@@ -23,7 +23,7 @@ const GeoLayout enemy_lakitu_geo[] = {
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 87, 18, -72, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, lakitu_enemy_seg5_dl_050134A8),
|
||||
GEO_ASM(0, Geo18_8029D890),
|
||||
GEO_ASM(0, geo_update_projectile_pos_from_parent),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
|
||||
@@ -105,7 +105,7 @@ const GeoLayout mario_geo_body[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, mario_butt), // starts sharing solid color with mario_torso (blue)
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_802B1BB0),
|
||||
GEO_ASM(0, geo_move_mario_part_from_parent),
|
||||
GEO_ASM(0, geo_mario_tilt_torso),
|
||||
GEO_ROTATION_NODE(0x00, 0, 0, 0),
|
||||
GEO_OPEN_NODE(),
|
||||
@@ -222,7 +222,7 @@ const GeoLayout mario_geo_medium_poly_body[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, mario_medium_poly_butt), // starts sharing solid color with mario_torso (blue)
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_802B1BB0),
|
||||
GEO_ASM(0, geo_move_mario_part_from_parent),
|
||||
GEO_ASM(0, geo_mario_tilt_torso),
|
||||
GEO_ROTATION_NODE(0x00, 0, 0, 0),
|
||||
GEO_OPEN_NODE(),
|
||||
@@ -389,7 +389,7 @@ const GeoLayout mario_geo_low_poly_body[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, mario_low_poly_butt), // starts sharing solid color with mario_torso (blue)
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_802B1BB0),
|
||||
GEO_ASM(0, geo_move_mario_part_from_parent),
|
||||
GEO_ASM(0, geo_mario_tilt_torso),
|
||||
GEO_ROTATION_NODE(0x00, 0, 0, 0),
|
||||
GEO_OPEN_NODE(),
|
||||
@@ -560,7 +560,7 @@ const GeoLayout mario_vanish_geo_body[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, mario_butt),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_802B1BB0),
|
||||
GEO_ASM(0, geo_move_mario_part_from_parent),
|
||||
GEO_ASM(0, geo_mario_tilt_torso),
|
||||
GEO_ROTATION_NODE(0x00, 0, 0, 0),
|
||||
GEO_OPEN_NODE(),
|
||||
@@ -677,7 +677,7 @@ const GeoLayout mario_vanish_geo_medium_poly_body[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, mario_medium_poly_butt),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_802B1BB0),
|
||||
GEO_ASM(0, geo_move_mario_part_from_parent),
|
||||
GEO_ASM(0, geo_mario_tilt_torso),
|
||||
GEO_ROTATION_NODE(0x00, 0, 0, 0),
|
||||
GEO_OPEN_NODE(),
|
||||
@@ -844,7 +844,7 @@ const GeoLayout mario_vanish_geo_low_poly_body[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, mario_low_poly_butt),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_802B1BB0),
|
||||
GEO_ASM(0, geo_move_mario_part_from_parent),
|
||||
GEO_ASM(0, geo_mario_tilt_torso),
|
||||
GEO_ROTATION_NODE(0x00, 0, 0, 0),
|
||||
GEO_OPEN_NODE(),
|
||||
@@ -995,7 +995,7 @@ const GeoLayout mario_metal_geo_body[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, mario_metal_butt), // starts sharing metal texture with the dls below
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_802B1BB0),
|
||||
GEO_ASM(0, geo_move_mario_part_from_parent),
|
||||
GEO_ASM(0, geo_mario_tilt_torso),
|
||||
GEO_ROTATION_NODE(0x00, 0, 0, 0),
|
||||
GEO_OPEN_NODE(),
|
||||
@@ -1112,7 +1112,7 @@ const GeoLayout mario_metal_geo_medium_poly_body[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, mario_metal_medium_poly_butt),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_802B1BB0),
|
||||
GEO_ASM(0, geo_move_mario_part_from_parent),
|
||||
GEO_ASM(0, geo_mario_tilt_torso),
|
||||
GEO_ROTATION_NODE(0x00, 0, 0, 0),
|
||||
GEO_OPEN_NODE(),
|
||||
@@ -1259,7 +1259,7 @@ const GeoLayout mario_metal_geo_low_poly_body[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, mario_metal_low_poly_butt),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_802B1BB0),
|
||||
GEO_ASM(0, geo_move_mario_part_from_parent),
|
||||
GEO_ASM(0, geo_mario_tilt_torso),
|
||||
GEO_ROTATION_NODE(0x00, 0, 0, 0),
|
||||
GEO_OPEN_NODE(),
|
||||
@@ -1410,7 +1410,7 @@ const GeoLayout mario_metal_vanish_geo_body[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, mario_metal_butt),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_802B1BB0),
|
||||
GEO_ASM(0, geo_move_mario_part_from_parent),
|
||||
GEO_ASM(0, geo_mario_tilt_torso),
|
||||
GEO_ROTATION_NODE(0x00, 0, 0, 0),
|
||||
GEO_OPEN_NODE(),
|
||||
@@ -1527,7 +1527,7 @@ const GeoLayout mario_metal_vanish_geo_medium_poly_body[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, mario_metal_medium_poly_butt),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_802B1BB0),
|
||||
GEO_ASM(0, geo_move_mario_part_from_parent),
|
||||
GEO_ASM(0, geo_mario_tilt_torso),
|
||||
GEO_ROTATION_NODE(0x00, 0, 0, 0),
|
||||
GEO_OPEN_NODE(),
|
||||
@@ -1677,7 +1677,7 @@ const GeoLayout mario_metal_vanish_geo_low_poly_body[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, mario_metal_low_poly_butt),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_802B1BB0),
|
||||
GEO_ASM(0, geo_move_mario_part_from_parent),
|
||||
GEO_ASM(0, geo_mario_tilt_torso),
|
||||
GEO_ROTATION_NODE(0x00, 0, 0, 0),
|
||||
GEO_OPEN_NODE(),
|
||||
|
||||
@@ -4,7 +4,7 @@ const GeoLayout marios_cap_geo[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_SCALE(0x00, 16384),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(10, Geo18_8029D924),
|
||||
GEO_ASM(10, geo_update_layer_transparency),
|
||||
GEO_SWITCH_CASE(2, geo_switch_anim_state),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_DISPLAY_LIST(LAYER_OPAQUE, mario_cap_seg3_dl_03022F48),
|
||||
@@ -21,7 +21,7 @@ const GeoLayout marios_metal_cap_geo[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_SCALE(0x00, 16384),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(10, Geo18_8029D924),
|
||||
GEO_ASM(10, geo_update_layer_transparency),
|
||||
GEO_SWITCH_CASE(2, geo_switch_anim_state),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_DISPLAY_LIST(LAYER_OPAQUE, mario_cap_seg3_dl_03022FF8),
|
||||
@@ -38,7 +38,7 @@ const GeoLayout marios_wing_cap_geo[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_SCALE(0x00, 16384),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(10, Geo18_8029D924),
|
||||
GEO_ASM(10, geo_update_layer_transparency),
|
||||
GEO_SWITCH_CASE(2, geo_switch_anim_state),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_NODE_START(),
|
||||
@@ -62,7 +62,7 @@ const GeoLayout marios_winged_metal_cap_geo[] = {
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_SCALE(0x00, 16384),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(10, Geo18_8029D924),
|
||||
GEO_ASM(10, geo_update_layer_transparency),
|
||||
GEO_SWITCH_CASE(2, geo_switch_anim_state),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_NODE_START(),
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
const GeoLayout mist_geo[] = {
|
||||
GEO_NODE_START(),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_8029D924),
|
||||
GEO_ASM(0, geo_update_layer_transparency),
|
||||
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, mist_seg3_dl_03000880),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_END(),
|
||||
@@ -12,7 +12,7 @@ const GeoLayout mist_geo[] = {
|
||||
const GeoLayout white_puff_geo[] = {
|
||||
GEO_NODE_START(),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ASM(0, Geo18_8029D924),
|
||||
GEO_ASM(0, geo_update_layer_transparency),
|
||||
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, mist_seg3_dl_03000920),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_END(),
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user