This commit is contained in:
n64 2019-08-25 00:46:40 -04:00
commit 89e8690857
2846 changed files with 625030 additions and 0 deletions

15
.clang-format Normal file
View file

@ -0,0 +1,15 @@
IndentWidth: 4
AlignAfterOpenBracket: Align
SortIncludes: false
ColumnLimit: 104
PointerAlignment: Right
AllowShortFunctionsOnASingleLine: false
AllowShortIfStatementsOnASingleLine: false
BinPackArguments: true
BinPackParameters: true
SpaceAfterCStyleCast: true
BreakBeforeTernaryOperators: true
BreakBeforeBinaryOperators: NonAssignment
Cpp11BracedListStyle: false
IndentCaseLabels: true
AlignTrailingComments: true

72
.gitignore vendored Normal file
View file

@ -0,0 +1,72 @@
# Object files
*.o
*.obj
*.elf
# Linker output
*.ilk
*.exp
# Precompiled Headers
*.gch
*.pch
# Libraries
*.lib
*.a
*.la
*.lo
# Shared objects (inc. Windows DLLs)
*.dll
*.so
*.so.*
*.dylib
# Executables
*.exe
*.out
*.app
*.hex
# Debug files
*.dSYM/
*.su
*.idb
*.pdb
# datadump
/tools/ddump/*
# Text editor remnants
*.swp
.vscode/*
# General project-specific ignores
doxygen/doxygen/*
build/*
*.dump
*.mio0
*.z64
*.map
.assets-local.txt
# Assets. Generally ignored, but ones with "custom" in the name are fine.
/levels/**/*.png
/actors/**/*.png
/textures/**/*.png
/assets/**/*.bin
/sound/**/*.m64
/sound/**/*.aiff
!/levels/**/*custom*.png
!/levels/**/*custom*/**/*.png
!/actors/**/*custom*.png
!/actors/**/*custom*/**/*.png
!/textures/**/*custom*.png
!/textures/**/*custom*/**/*.png
!/sound/**/*custom*.m64
!/sound/**/*custom*/**/*.m64
!/sound/**/*custom*.aiff
!/sound/**/*custom*/**/*.aiff
!/assets/**/*custom*.bin
!/assets/**/*custom*/**/*.bin

2482
Doxyfile Normal file

File diff suppressed because it is too large Load diff

45
Jenkinsfile vendored Normal file
View file

@ -0,0 +1,45 @@
pipeline {
agent any
stages {
stage('Build Tools') {
steps {
sh 'make -j4 -C tools/'
}
}
stage('Extract Assets') {
steps {
sh 'ln -s "$ROMS_DIR/Super Mario 64 (J) [!].z64" baserom.jp.z64'
sh 'ln -s "$ROMS_DIR/Super Mario 64 (U) [!].z64" baserom.us.z64'
sh 'ln -s "$ROMS_DIR/Super Mario 64 (E) (M3) [!].z64" baserom.eu.z64'
// verify no assets were committed to repo
sh '[ -z "$(find {actors,levels,textures}/ -name \'*.png\')" ]'
sh '[ -z "$(find assets/ -name \'*.m64\' -or \'*.bin\')" ]'
sh './extract_assets.py jp us eu'
}
}
stage('Build J Source') {
steps {
sh 'make -j4 VERSION=jp'
}
}
stage('Build U Source') {
steps {
sh 'make -j4 VERSION=us'
}
}
stage('Build J Source, NON_MATCHING') {
steps {
sh 'make -j4 VERSION=jp NON_MATCHING=1'
}
}
stage('Build U Source, NON_MATCHING') {
steps {
sh 'make -j4 VERSION=us NON_MATCHING=1'
}
}
}
environment {
QEMU_IRIX = credentials('qemu-irix')
ROMS_DIR = credentials('roms')
}
}

466
Makefile Normal file
View file

@ -0,0 +1,466 @@
# Makefile to rebuild SM64 split image
### Default target ###
default: all
### Build Options ###
# Version of the game to build
VERSION ?= us
# Graphics microcode used
GRUCODE ?= f3d_old
# If COMPARE is 1, check the output sha1sum when building 'all'
COMPARE ?= 1
# If NON_MATCHING is 1, define the NON_MATCHING macro when building
NON_MATCHING ?= 0
# If ENDIAN_IND is 1, enable non-matching code changes that try to ensure
# endianness independence
ENDIAN_IND ?= 0
# Release
ifeq ($(VERSION),jp)
VERSION_CFLAGS := -DVERSION_JP=1
VERSION_ASFLAGS := --defsym VERSION_JP=1
GRUCODE_CFLAGS := -DF3D_OLD
GRUCODE_ASFLAGS := --defsym F3D_OLD=1
TARGET := sm64.jp
else
ifeq ($(VERSION),us)
VERSION_CFLAGS := -DVERSION_US=1
VERSION_ASFLAGS := --defsym VERSION_US=1
GRUCODE_CFLAGS := -DF3D_OLD
GRUCODE_ASFLAGS := --defsym F3D_OLD=1
TARGET := sm64.us
else
ifeq ($(VERSION),eu)
$(warning Building EU is experimental and is prone to breaking. Try at your own risk.)
VERSION_CFLAGS := -DVERSION_EU=1
VERSION_ASFLAGS := --defsym VERSION_EU=1
GRUCODE_CFLAGS := -DF3D_NEW
GRUCODE_ASFLAGS := --defsym F3D_NEW=1
TARGET := sm64.eu
else
$(error unknown version "$(VERSION)")
endif
endif
endif
# Microcode
ifeq ($(GRUCODE),f3dex) # Fast3DEX
GRUCODE_CFLAGS := -DF3DEX_GBI=1
GRUCODE_ASFLAGS := --defsym F3DEX_GBI_SHARED=1 --defsym F3DEX_GBI=1
TARGET := $(TARGET).f3dex
COMPARE := 0
else
ifeq ($(GRUCODE), f3dex2) # Fast3DEX2
GRUCODE_CFLAGS := -DF3DEX_GBI_2=1
GRUCODE_ASFLAGS := --defsym F3DEX_GBI_SHARED=1 --defsym F3DEX_GBI_2=1
TARGET := $(TARGET).f3dex2
COMPARE := 0
else
ifeq ($(GRUCODE),f3d_new) # Fast3D 2.0H (Shindou)
GRUCODE_CFLAGS := -DF3D_NEW
GRUCODE_ASFLAGS := --defsym F3D_NEW=1
TARGET := $(TARGET).f3d_new
COMPARE := 0
else
ifeq ($(GRUCODE),f3dzex) # Fast3DZEX (2.0J / Animal Forest - Dōbutsu no Mori)
$(warning Fast3DZEX is experimental. Try at your own risk.)
GRUCODE_CFLAGS := -DF3DEX_GBI_2=1
GRUCODE_ASFLAGS := --defsym F3DEX_GBI_SHARED=1 --defsym F3DZEX_GBI=1
TARGET := $(TARGET).f3dzex
COMPARE := 0
endif
endif
endif
endif
ifeq ($(NON_MATCHING),1)
VERSION_CFLAGS := $(VERSION_CFLAGS) -DNON_MATCHING=1
COMPARE := 0
endif
ifeq ($(ENDIAN_IND),1)
VERSION_CFLAGS := $(VERSION_CFLAGS) -DENDIAN_IND=1
COMPARE := 0
endif
################### Universal Dependencies ###################
# (This is a bit hacky, but a lot of rules implicitly depend
# on tools and assets, and we use directory globs further down
# in the makefile that we want should cover assets.)
ifneq ($(MAKECMDGOALS),clean)
ifneq ($(MAKECMDGOALS),distclean)
# Make sure assets exist
NOEXTRACT ?= 0
ifeq ($(NOEXTRACT),0)
DUMMY != ./extract_assets.py $(VERSION) >&2 || echo FAIL
ifeq ($(DUMMY),FAIL)
$(error Failed to extract assets)
endif
endif
# Make tools if out of date
DUMMY != make -s -C tools >&2 || echo FAIL
ifeq ($(DUMMY),FAIL)
$(error Failed to build tools)
endif
endif
endif
################ Target Executable and Sources ###############
# BUILD_DIR is location where all build artifacts are placed
BUILD_DIR_BASE := build
BUILD_DIR := $(BUILD_DIR_BASE)/$(VERSION)
LIBULTRA := $(BUILD_DIR)/libultra.a
ROM := $(BUILD_DIR)/$(TARGET).z64
ELF := $(BUILD_DIR)/$(TARGET).elf
LD_SCRIPT := sm64.ld
MIO0_DIR := $(BUILD_DIR)/mio0
SOUND_BIN_DIR := $(BUILD_DIR)/sound
TEXTURE_DIR := textures
ACTOR_DIR := actors
# Directories containing source files
SRC_DIRS := src src/engine src/game src/audio
ASM_DIRS := asm actors lib data levels assets sound text
BIN_DIRS := bin bin/$(VERSION)
ULTRA_SRC_DIRS := lib/src lib/src/math
ULTRA_ASM_DIRS := lib/asm lib/data
ULTRA_BIN_DIRS := lib/bin
GODDARD_SRC_DIRS := src/goddard src/goddard/dynlists
LEVEL_DIRS := $(patsubst levels/%,%,$(dir $(wildcard levels/*/header.s)))
MIPSISET := -mips2 -32
ifeq ($(VERSION),eu)
OPT_FLAGS := -O2
else
OPT_FLAGS := -g
endif
# File dependencies and variables for specific files
include Makefile.split
# Source code files
C_FILES := $(foreach dir,$(SRC_DIRS),$(wildcard $(dir)/*.c))
S_FILES := $(foreach dir,$(ASM_DIRS),$(wildcard $(dir)/*.s))
ULTRA_C_FILES := $(foreach dir,$(ULTRA_SRC_DIRS),$(wildcard $(dir)/*.c))
GODDARD_C_FILES := $(foreach dir,$(GODDARD_SRC_DIRS),$(wildcard $(dir)/*.c))
ULTRA_S_FILES := $(foreach dir,$(ULTRA_ASM_DIRS),$(wildcard $(dir)/*.s))
LEVEL_S_FILES := $(addsuffix header.s,$(addprefix bin/,$(LEVEL_DIRS)))
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))
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))
SOUND_SAMPLE_AIFCS := $(foreach file,$(SOUND_SAMPLE_AIFFS),$(BUILD_DIR)/$(file:.aiff=.aifc))
SOUND_OBJ_FILES := $(SOUND_BIN_DIR)/sound_data.ctl.o \
$(SOUND_BIN_DIR)/sound_data.tbl.o \
$(SOUND_BIN_DIR)/sequences.bin.o
# Object files
O_FILES := $(foreach file,$(C_FILES),$(BUILD_DIR)/$(file:.c=.o)) \
$(foreach file,$(S_FILES),$(BUILD_DIR)/$(file:.s=.o)) \
$(foreach file,$(LEVEL_S_FILES),$(BUILD_DIR)/$(file:.s=.o))
ULTRA_O_FILES := $(foreach file,$(ULTRA_S_FILES),$(BUILD_DIR)/$(file:.s=.o)) \
$(foreach file,$(ULTRA_C_FILES),$(BUILD_DIR)/$(file:.c=.o))
GODDARD_O_FILES := $(foreach file,$(GODDARD_C_FILES),$(BUILD_DIR)/$(file:.c=.o))
# Automatic dependency files
DEP_FILES := $(O_FILES:.o=.d) $(ULTRA_O_FILES:.o=.d) $(GODDARD_O_FILES:.o=.d) $(BUILD_DIR)/$(LD_SCRIPT).d
# Files with NON_MATCHING ifdefs
NON_MATCHING_C_FILES != grep -rl NON_MATCHING $(wildcard src/audio/*.c) $(wildcard src/game/*.c)
NON_MATCHING_O_FILES = $(foreach file,$(NON_MATCHING_C_FILES),$(BUILD_DIR)/$(file:.c=.o))
NON_MATCHING_DEP = $(BUILD_DIR)/src/audio/non_matching_dep
# Segment elf files
SEG_FILES := $(SEGMENT_ELF_FILES) $(ACTOR_ELF_FILES) $(LEVEL_ELF_FILES)
##################### Compiler Options #######################
IRIX_ROOT := tools/ido5.3_compiler
ifeq ($(shell type mips-linux-gnu-ld >/dev/null 2>/dev/null; echo $$?), 0)
CROSS := mips-linux-gnu-
else
CROSS := mips64-elf-
endif
AS := $(CROSS)as
CC := $(QEMU_IRIX) -silent -L $(IRIX_ROOT) $(IRIX_ROOT)/usr/bin/cc
CPP := cpp -P
LD := $(CROSS)ld
AR := $(CROSS)ar
OBJDUMP := $(CROSS)objdump
OBJCOPY := $(CROSS)objcopy
PYTHON := python3
# Check code syntax with host compiler
CC_CHECK := gcc -fsyntax-only -fsigned-char -nostdinc -fno-builtin -I include -I $(BUILD_DIR)/include -I src -std=gnu90 -Wall -Wextra -Wno-format-security -D_LANGUAGE_C $(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 $(OPT_FLAGS) -signed -I include -I $(BUILD_DIR)/include -I src -D_LANGUAGE_C $(VERSION_CFLAGS) $(MIPSISET) $(GRUCODE_CFLAGS)
OBJCOPYFLAGS := --pad-to=0x800000 --gap-fill=0xFF
SYMBOL_LINKING_FLAGS := $(addprefix -R ,$(SEG_FILES))
LDFLAGS := -T undefined_syms.txt -T $(BUILD_DIR)/$(LD_SCRIPT) -Map $(BUILD_DIR)/sm64.map --no-check-sections $(SYMBOL_LINKING_FLAGS)
ifeq ($(shell getconf LONG_BIT), 32)
# Work around memory allocation bug in QEMU
export QEMU_GUEST_BASE := 1
else
# Ensure that gcc treats the code as 32-bit
CC_CHECK += -m32
endif
####################### Other Tools #########################
# N64 tools
TOOLS_DIR = tools
MIO0TOOL = $(TOOLS_DIR)/mio0
N64CKSUM = $(TOOLS_DIR)/n64cksum
N64GRAPHICS = $(TOOLS_DIR)/n64graphics
N64GRAPHICS_CI = $(TOOLS_DIR)/n64graphics_ci
TEXTCONV = $(TOOLS_DIR)/textconv
IPLFONTUTIL = $(TOOLS_DIR)/iplfontutil
AIFF_EXTRACT_CODEBOOK = $(TOOLS_DIR)/aiff_extract_codebook
VADPCM_ENC = $(TOOLS_DIR)/vadpcm_enc
EMULATOR = mupen64plus
EMU_FLAGS = --noosd
LOADER = loader64
LOADER_FLAGS = -vwf
SHA1SUM = sha1sum
###################### Dependency Check #####################
BINUTILS_VER_MAJOR := $(shell $(LD) --version | grep ^GNU | sed 's/^.* //; s/\..*//g')
BINUTILS_VER_MINOR := $(shell $(LD) --version | grep ^GNU | sed 's/^[^.]*\.//; s/\..*//g')
BINUTILS_DEPEND := $(shell expr $(BINUTILS_VER_MAJOR) \>= 2 \& $(BINUTILS_VER_MINOR) \>= 27)
ifeq ($(BINUTILS_DEPEND),0)
$(error binutils version 2.27 required, version $(BINUTILS_VER_MAJOR).$(BINUTILS_VER_MINOR) detected)
endif
ifndef QEMU_IRIX
$(error env variable QEMU_IRIX should point to the qemu-mips binary)
endif
######################## Targets #############################
all: $(ROM)
ifeq ($(COMPARE),1)
@$(SHA1SUM) -c $(TARGET).sha1
endif
clean:
$(RM) -r $(BUILD_DIR_BASE)
distclean:
$(RM) -r $(BUILD_DIR_BASE)
./extract_assets.py --clean
test: $(ROM)
$(EMULATOR) $(EMU_FLAGS) $<
load: $(ROM)
$(LOADER) $(LOADER_FLAGS) $<
libultra: $(BUILD_DIR)/libultra.a
asm/boot.s: $(BUILD_DIR)/lib/bin/ipl3_font.bin
$(BUILD_DIR)/lib/bin/ipl3_font.bin: lib/ipl3_font.png | $(BUILD_DIR)
$(IPLFONTUTIL) e $< $@
$(BUILD_DIR)/include/text_strings.h: include/text_strings.h.in | $(BUILD_DIR)
$(TEXTCONV) charmap.txt $< $@
$(BUILD_DIR)/text/%.s: text/$(VERSION)/%.s.in | $(BUILD_DIR)
$(TEXTCONV) charmap.txt $< $@
ifeq ($(VERSION),eu)
ASM_DIRS += text/de text/en text/fr
# EU encoded text inserted into individual segment 0x19 files
$(BUILD_DIR)/bin/$(VERSION)/translation_de.o: $(BUILD_DIR)/text/de/dialog.s $(BUILD_DIR)/text/de/level.s $(BUILD_DIR)/text/de/star.s
$(BUILD_DIR)/bin/$(VERSION)/translation_en.o: $(BUILD_DIR)/text/en/dialog.s $(BUILD_DIR)/text/en/level.s $(BUILD_DIR)/text/en/star.s
$(BUILD_DIR)/bin/$(VERSION)/translation_fr.o: $(BUILD_DIR)/text/fr/dialog.s $(BUILD_DIR)/text/fr/level.s $(BUILD_DIR)/text/fr/star.s
else
# non-EU encoded text inserted into segment 0x02
$(BUILD_DIR)/bin/segment2.o: $(BUILD_DIR)/text/debug.s $(BUILD_DIR)/text/dialog.s $(BUILD_DIR)/text/level.s $(BUILD_DIR)/text/star.s
endif
ALL_DIRS := $(BUILD_DIR) $(addprefix $(BUILD_DIR)/,$(SRC_DIRS) $(ASM_DIRS) $(GODDARD_SRC_DIRS) $(ULTRA_SRC_DIRS) $(ULTRA_ASM_DIRS) $(ULTRA_BIN_DIRS) $(BIN_DIRS) $(TEXTURE_DIRS) $(SOUND_SAMPLE_DIRS) $(addprefix levels/,$(LEVEL_DIRS)) $(addprefix bin/,$(LEVEL_DIRS)) include) $(MIO0_DIR) $(addprefix $(MIO0_DIR)/,$(LEVEL_DIRS)) $(addprefix $(MIO0_DIR)/,$(VERSION)) $(SOUND_BIN_DIR) $(SOUND_BIN_DIR)/sequences/$(VERSION)
# Make sure build directory exists before compiling anything
DUMMY != mkdir -p $(ALL_DIRS)
$(BUILD_DIR)/src/game/star_select.o: $(BUILD_DIR)/include/text_strings.h
$(BUILD_DIR)/src/game/file_select.o: $(BUILD_DIR)/include/text_strings.h
$(BUILD_DIR)/src/game/ingame_menu.o: $(BUILD_DIR)/include/text_strings.h
################################################################
# TEXTURE GENERATION #
################################################################
# RGBA32, RGBA16, IA16, IA8, IA4, IA1, I8, I4
$(BUILD_DIR)/%: %.png
$(N64GRAPHICS) -i $@ -g $< -f $(lastword $(subst ., ,$@))
# Color Index CI8
$(BUILD_DIR)/%.ci8: %.ci8.png
$(N64GRAPHICS_CI) -i $@ -g $< -f ci8
# Color Index CI4
$(BUILD_DIR)/%.ci4: %.ci4.png
$(N64GRAPHICS_CI) -i $@ -g $< -f ci4
################################################################
# compressed segment generation
$(BUILD_DIR)/bin/%.o: bin/%.s
$(AS) $(ASFLAGS) --no-pad-sections -o $@ $<
# compressed segment generation (actors)
$(BUILD_DIR)/bin/%.o: actors/%.s
$(AS) $(ASFLAGS) --no-pad-sections -o $@ $<
$(BUILD_DIR)/bin/%/leveldata.o: levels/%/leveldata.s
$(AS) $(ASFLAGS) --no-pad-sections -o $@ $<
$(BUILD_DIR)/bin/%/header.o: levels/%/header.s $(MIO0_DIR)/%/leveldata.mio0 levels/%/script.s
$(AS) $(ASFLAGS) --no-pad-sections -o $@ $<
# TODO: ideally this would be `-Trodata-segment=0x07000000` but that doesn't set the address
$(BUILD_DIR)/bin/%.elf: $(BUILD_DIR)/bin/%.o
$(LD) -e 0 -Ttext=$(SEGMENT_ADDRESS) -Map $@.map -o $@ $<
# Override for level.elf, which otherwise matches the above pattern
.SECONDEXPANSION:
$(BUILD_DIR)/bin/%/leveldata.elf: $(BUILD_DIR)/bin/%/leveldata.o $(BUILD_DIR)/bin/$$(TEXTURE_BIN).elf
$(LD) -e 0 -Ttext=$(SEGMENT_ADDRESS) -Map $@.map --just-symbols=$(BUILD_DIR)/bin/$(TEXTURE_BIN).elf -o $@ $<
$(BUILD_DIR)/bin/%.bin: $(BUILD_DIR)/bin/%.elf
$(OBJCOPY) -j .rodata $< -O binary $@
$(MIO0_DIR)/%.mio0: $(BUILD_DIR)/bin/%.bin
$(MIO0TOOL) $< $@
$(MIO0_DIR)/%.mio0.o: $(MIO0_DIR)/%.mio0.s
$(AS) $(ASFLAGS) -o $@ $<
$(MIO0_DIR)/%.mio0.s: $(MIO0_DIR)/%.mio0
printf ".section .data\n\n.incbin \"$<\"\n" > $@
$(BUILD_DIR)/%.table: %.aiff
$(AIFF_EXTRACT_CODEBOOK) $< >$@
$(BUILD_DIR)/%.aifc: $(BUILD_DIR)/%.table %.aiff
$(VADPCM_ENC) -c $^ $@
$(SOUND_BIN_DIR)/sound_data.ctl: $(SOUND_BANK_FILES) $(SOUND_SAMPLE_AIFCS)
$(PYTHON) tools/assemble_sound.py $(BUILD_DIR)/sound/samples/ sound/sound_banks/ $(SOUND_BIN_DIR)/sound_data.ctl $(SOUND_BIN_DIR)/sound_data.tbl $(VERSION_CFLAGS)
$(SOUND_BIN_DIR)/sound_data.tbl: $(SOUND_BIN_DIR)/sound_data.ctl
touch $@
$(SOUND_BIN_DIR)/sequences.bin: $(SOUND_SEQUENCE_FILES)
$(PYTHON) tools/assemble_sound.py --sequences $@ $^
$(SOUND_BIN_DIR)/%.m64: $(SOUND_BIN_DIR)/%.o
$(OBJCOPY) -j .rodata $< -O binary $@
$(SOUND_BIN_DIR)/%.o: $(SOUND_BIN_DIR)/%.s
$(AS) $(ASFLAGS) -o $@ $<
$(SOUND_BIN_DIR)/%.s: $(SOUND_BIN_DIR)/%
printf ".section .data\n\n.incbin \"$<\"\n" > $@
# Source code
$(BUILD_DIR)/src/goddard/%.o: OPT_FLAGS := -g
$(BUILD_DIR)/src/goddard/%.o: MIPSISET := -mips1
$(NON_MATCHING_O_FILES): CC := $(PYTHON) tools/asm_processor/build.py $(CC) -- $(AS) $(ASFLAGS) --
$(BUILD_DIR)/src/audio/%.o: OPT_FLAGS := -O2 -Wo,-loopunroll,0
$(BUILD_DIR)/src/audio/load.o: OPT_FLAGS := -O2 -framepointer -Wo,-loopunroll,0
$(BUILD_DIR)/lib/src/%.o: OPT_FLAGS :=
$(BUILD_DIR)/lib/src/math/ll%.o: MIPSISET := -mips3 -32
$(BUILD_DIR)/lib/src/math/%.o: OPT_FLAGS := -O2
$(BUILD_DIR)/lib/src/math/ll%.o: OPT_FLAGS :=
$(BUILD_DIR)/lib/src/ldiv.o: OPT_FLAGS := -O2
$(BUILD_DIR)/lib/src/string.o: OPT_FLAGS := -O2
$(BUILD_DIR)/lib/src/gu%.o: OPT_FLAGS := -O3
$(BUILD_DIR)/lib/src/al%.o: OPT_FLAGS := -O3
ifeq ($(VERSION),eu)
$(BUILD_DIR)/lib/src/_Litob.o: OPT_FLAGS := -O3
$(BUILD_DIR)/lib/src/_Ldtob.o: OPT_FLAGS := -O3
$(BUILD_DIR)/lib/src/_Printf.o: OPT_FLAGS := -O3
endif
# Rebuild files with '#ifdef NON_MATCHING' when that macro changes.
$(NON_MATCHING_O_FILES): $(NON_MATCHING_DEP).$(NON_MATCHING)
$(NON_MATCHING_DEP).$(NON_MATCHING):
@rm -f $(NON_MATCHING_DEP).*
touch $@
$(BUILD_DIR)/lib/src/math/%.o: lib/src/math/%.c
@$(CC_CHECK) -MMD -MP -MT $@ -MF $(BUILD_DIR)/lib/src/math/$*.d $<
$(CC) -c $(CFLAGS) -o $@ $<
tools/patch_libultra_math $@ || rm $@
$(BUILD_DIR)/%.o: %.c
@$(CC_CHECK) -MMD -MP -MT $@ -MF $(BUILD_DIR)/$*.d $<
$(CC) -c $(CFLAGS) -o $@ $<
$(BUILD_DIR)/%.o: %.s $(MIO0_FILES)
$(AS) $(ASFLAGS) -MD $(BUILD_DIR)/$*.d -o $@ $<
$(BUILD_DIR)/$(LD_SCRIPT): $(LD_SCRIPT)
$(CPP) $(VERSION_CFLAGS) -MMD -MP -MT $@ -MF $@.d -I include/ -DBUILD_DIR=$(BUILD_DIR) -o $@ $<
$(BUILD_DIR)/libultra.a: $(ULTRA_O_FILES)
$(AR) rcs -o $@ $(ULTRA_O_FILES)
$(BUILD_DIR)/libgoddard.a: $(GODDARD_O_FILES)
$(AR) rcs -o $@ $(GODDARD_O_FILES)
$(ELF): $(O_FILES) $(MIO0_OBJ_FILES) $(SOUND_OBJ_FILES) $(SEG_FILES) $(BUILD_DIR)/$(LD_SCRIPT) undefined_syms.txt $(BUILD_DIR)/libultra.a $(BUILD_DIR)/libgoddard.a
$(LD) -L $(BUILD_DIR) $(LDFLAGS) -o $@ $(O_FILES)$(LIBS) -lultra -lgoddard
$(ROM): $(ELF)
$(OBJCOPY) $(OBJCOPYFLAGS) $< $(@:.z64=.bin) -O binary
$(N64CKSUM) $(@:.z64=.bin) $@
$(BUILD_DIR)/$(TARGET).objdump: $(ELF)
$(OBJDUMP) -D $< > $@
.PHONY: all clean distclean default diff test load libultra
.PRECIOUS: $(MIO0_DIR)/%.mio0 $(MIO0_DIR)/%.mio0.s $(BUILD_DIR)/bin/%.elf $(SOUND_BIN_DIR)/%.ctl $(SOUND_BIN_DIR)/%.tbl $(SOUND_SAMPLE_TABLES) $(SOUND_BIN_DIR)/%.s
.DELETE_ON_ERROR:
# Remove built-in rules, to improve performance
MAKEFLAGS += --no-builtin-rules
-include $(DEP_FILES)
print-% : ; $(info $* is a $(flavor $*) variable set to [$($*)]) @true

293
Makefile.split Normal file
View file

@ -0,0 +1,293 @@
# --------------------------------------
# General Rules
# --------------------------------------
# obtain a list of segments from the *.s files in bin directory
SEGMENTS := $(notdir $(basename $(wildcard bin/*.s))) $(addprefix $(VERSION)/,$(notdir $(basename $(wildcard bin/$(VERSION)/*.s))))
ACTORS := $(filter %/,$(wildcard actors/*/))
TEXTURE_DIRS := $(addprefix textures/,$(SEGMENTS)) $(ACTORS) textures/intro_raw
# NOTE: textures assume naming convention "texture.<encoding>.png" generates "texture.<encoding>"
ACTOR_GROUPS := \
group0 \
group1 \
group2 \
group3 \
group4 \
group5 \
group6 \
group7 \
group8 \
group9 \
group10 \
group11 \
group12 \
group13 \
group14 \
group15 \
group16 \
group17 \
common0 \
common1
LEVEL_FILES := $(addsuffix leveldata,$(LEVEL_DIRS))
MIO0_FILES := $(addprefix $(MIO0_DIR)/,$(addsuffix .mio0,$(SEGMENTS) $(ACTOR_GROUPS) $(LEVEL_FILES)))
MIO0_OBJ_FILES := $(MIO0_FILES:.mio0=.mio0.o)
SEGMENT_ELF_FILES := $(addprefix $(BUILD_DIR)/bin/,$(addsuffix .elf,$(SEGMENTS)))
ACTOR_ELF_FILES := $(addprefix $(BUILD_DIR)/bin/,$(addsuffix .elf,$(ACTOR_GROUPS)))
LEVEL_ELF_FILES := $(addprefix $(BUILD_DIR)/bin/,$(addsuffix .elf,$(LEVEL_FILES)))
# --------------------------------------
# Actor Rules
# --------------------------------------
# Actor Directories
KOOPA_DIRS := koopa_flag poundable_pole koopa piranha_plant whomp chain_ball chain_chomp
CAPSWITCH_DIRS := capswitch springboard
CHILLYCHIEF_DIRS := chillychief moneybag
BULLY_DIRS := bully blargg
SPINDRIFT_DIRS := spindrift penguin snowman
KING_BOBOMB_DIRS := king_bobomb water_bubble
BOO_DIRS := bookend book chair small_key mad_piano boo haunted_cage
MR_I_DIRS := mr_i_eyeball mr_i_iris swoop snufit dorrie scuttlebug
HOOT_DIRS := yellow_sphere_small hoot yoshi_egg thwomp bullet_bill heave_ho
COINS_DIRS := mist explosion butterfly coin warp_pipe door bowser_key flame blue_fish pebble leaves warp_collision mario_cap power_meter mushroom_1up star sand dirt transparent_star white_particle wooden_signpost tree
BUBBA_DIRS := bubba wiggler lakitu_enemy spiny_egg spiny
SKEETER_DIRS := skeeter seaweed water_mine cyan_fish bub water_ring treasure_chest
KLEPTO_DIRS := klepto eyerok pokey tornado
SEA_DIRS := clam_shell manta sushi unagi whirlpool
AMP_DIRS := blue_coin_switch amp cannon_lid cannon_base cannon_barrel chuckya purple_switch checkerboard_platform heart flyguy breakable_box exclamation_box goomba bobomb metal_box exclamation_box_outline test_platform koopa_shell
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
# Actor Files
AMP_CHUCKYA_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(AMP_DIRS)),$(basename $(wildcard $(dir)/*.png)))
BOBOMBS_BUBBLE_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(KING_BOBOMB_DIRS)),$(basename $(wildcard $(dir)/*.png)))
BOO_BOOKEND_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(BOO_DIRS)),$(basename $(wildcard $(dir)/*.png)))
CAPSWITCH_SPRINGBOARD_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(CAPSWITCH_DIRS)),$(basename $(wildcard $(dir)/*.png)))
COINS_PIPE_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(COINS_DIRS)),$(basename $(wildcard $(dir)/*.png)))
BOWSER_FLAMES_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(BOWSER_DIRS)),$(basename $(wildcard $(dir)/*.png)))
BUBBA_WIGGLER_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(BUBBA_DIRS)),$(basename $(wildcard $(dir)/*.png)))
BULLY_BLARGG_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(BULLY_DIRS)),$(basename $(wildcard $(dir)/*.png)))
CHILLYCHIEF_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(CHILLYCHIEF_DIRS)),$(basename $(wildcard $(dir)/*.png)))
HOOT_THWOMP_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(HOOT_DIRS)),$(basename $(wildcard $(dir)/*.png)))
KOOPA_LOG_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(KOOPA_DIRS)),$(basename $(wildcard $(dir)/*.png)))
KLEPTO_EYEROK_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(KLEPTO_DIRS)),$(basename $(wildcard $(dir)/*.png)))
LAKITU_TOAD_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(LAKITU_DIRS)),$(basename $(wildcard $(dir)/*.png)))
MARIO_WATER_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(MARIO_DIRS)),$(basename $(wildcard $(dir)/*.png)))
MOLE_UKIKI_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(MOLE_DIRS)),$(basename $(wildcard $(dir)/*.png)))
MR_I_SWOOP_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(MR_I_DIRS)),$(basename $(wildcard $(dir)/*.png)))
PEACH_TOADSTOOL_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(PEACH_DIRS)),$(basename $(wildcard $(dir)/*.png)))
SEA_CREATURES_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(SEA_DIRS)),$(basename $(wildcard $(dir)/*.png)))
SKEETER_FISH_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(SKEETER_DIRS)),$(basename $(wildcard $(dir)/*.png)))
SPINDRIFT_PENGUIN_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(SPINDRIFT_DIRS)),$(basename $(wildcard $(dir)/*.png)))
# Actor dependencies
$(BUILD_DIR)/bin/group0.o: $(addprefix $(BUILD_DIR)/,$(MARIO_WATER_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(MARIO_DIRS)),$(wildcard $(dir)/*.s))
$(BUILD_DIR)/bin/group1.o: $(addprefix $(BUILD_DIR)/,$(HOOT_THWOMP_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(HOOT_DIRS)),$(wildcard $(dir)/*.s))
$(BUILD_DIR)/bin/group2.o: $(addprefix $(BUILD_DIR)/,$(BULLY_BLARGG_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(BULLY_DIRS)),$(wildcard $(dir)/*.s))
$(BUILD_DIR)/bin/group3.o: $(addprefix $(BUILD_DIR)/,$(BOBOMBS_BUBBLE_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(KING_BOBOMB_DIRS)),$(wildcard $(dir)/*.s))
$(BUILD_DIR)/bin/group4.o: $(addprefix $(BUILD_DIR)/,$(SEA_CREATURES_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(SEA_DIRS)),$(wildcard $(dir)/*.s))
$(BUILD_DIR)/bin/group5.o: $(addprefix $(BUILD_DIR)/,$(KLEPTO_EYEROK_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(KLEPTO_DIRS)),$(wildcard $(dir)/*.s))
$(BUILD_DIR)/bin/group6.o: $(addprefix $(BUILD_DIR)/,$(MOLE_UKIKI_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(MOLE_DIRS)),$(wildcard $(dir)/*.s))
$(BUILD_DIR)/bin/group7.o: $(addprefix $(BUILD_DIR)/,$(SPINDRIFT_PENGUIN_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(SPINDRIFT_DIRS)),$(wildcard $(dir)/*.s))
$(BUILD_DIR)/bin/group8.o: $(addprefix $(BUILD_DIR)/,$(CAPSWITCH_SPRINGBOARD_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(CAPSWITCH_DIRS)),$(wildcard $(dir)/*.s))
$(BUILD_DIR)/bin/group9.o: $(addprefix $(BUILD_DIR)/,$(BOO_BOOKEND_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(BOO_DIRS)),$(wildcard $(dir)/*.s))
$(BUILD_DIR)/bin/group10.o: $(addprefix $(BUILD_DIR)/,$(PEACH_TOADSTOOL_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(PEACH_DIRS)),$(wildcard $(dir)/*.s))
$(BUILD_DIR)/bin/group11.o: $(addprefix $(BUILD_DIR)/,$(BUBBA_WIGGLER_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(BUBBA_DIRS)),$(wildcard $(dir)/*.s))
$(BUILD_DIR)/bin/group12.o: $(addprefix $(BUILD_DIR)/,$(BOWSER_FLAMES_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(BOWSER_DIRS)),$(wildcard $(dir)/*.s))
$(BUILD_DIR)/bin/group13.o: $(addprefix $(BUILD_DIR)/,$(SKEETER_FISH_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(SKEETER_DIRS)),$(wildcard $(dir)/*.s))
$(BUILD_DIR)/bin/group14.o: $(addprefix $(BUILD_DIR)/,$(KOOPA_LOG_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(KOOPA_DIRS)),$(wildcard $(dir)/*.s))
$(BUILD_DIR)/bin/group15.o: $(addprefix $(BUILD_DIR)/,$(LAKITU_TOAD_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(LAKITU_DIRS)),$(wildcard $(dir)/*.s))
$(BUILD_DIR)/bin/group16.o: $(addprefix $(BUILD_DIR)/,$(CHILLYCHIEF_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(CHILLYCHIEF_DIRS)),$(wildcard $(dir)/*.s))
$(BUILD_DIR)/bin/group17.o: $(addprefix $(BUILD_DIR)/,$(MR_I_SWOOP_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(MR_I_DIRS)),$(wildcard $(dir)/*.s))
$(BUILD_DIR)/bin/common0.o: $(addprefix $(BUILD_DIR)/,$(AMP_CHUCKYA_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(AMP_DIRS)),$(wildcard $(dir)/*.s))
$(BUILD_DIR)/bin/common1.o: $(addprefix $(BUILD_DIR)/,$(COINS_PIPE_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(COINS_DIRS)),$(wildcard $(dir)/*.s))
# Actor Elf Files
$(BUILD_DIR)/bin/group0.elf: SEGMENT_ADDRESS := 0x04000000
$(BUILD_DIR)/bin/group1.elf: SEGMENT_ADDRESS := 0x05000000
$(BUILD_DIR)/bin/group2.elf: SEGMENT_ADDRESS := 0x05000000
$(BUILD_DIR)/bin/group3.elf: SEGMENT_ADDRESS := 0x05000000
$(BUILD_DIR)/bin/group4.elf: SEGMENT_ADDRESS := 0x05000000
$(BUILD_DIR)/bin/group5.elf: SEGMENT_ADDRESS := 0x05000000
$(BUILD_DIR)/bin/group6.elf: SEGMENT_ADDRESS := 0x05000000
$(BUILD_DIR)/bin/group7.elf: SEGMENT_ADDRESS := 0x05000000
$(BUILD_DIR)/bin/group8.elf: SEGMENT_ADDRESS := 0x05000000
$(BUILD_DIR)/bin/group9.elf: SEGMENT_ADDRESS := 0x05000000
$(BUILD_DIR)/bin/group10.elf: SEGMENT_ADDRESS := 0x05000000
$(BUILD_DIR)/bin/group11.elf: SEGMENT_ADDRESS := 0x05000000
$(BUILD_DIR)/bin/group12.elf: SEGMENT_ADDRESS := 0x06000000
$(BUILD_DIR)/bin/group13.elf: SEGMENT_ADDRESS := 0x06000000
$(BUILD_DIR)/bin/group14.elf: SEGMENT_ADDRESS := 0x06000000
$(BUILD_DIR)/bin/group15.elf: SEGMENT_ADDRESS := 0x06000000
$(BUILD_DIR)/bin/group16.elf: SEGMENT_ADDRESS := 0x06000000
$(BUILD_DIR)/bin/group17.elf: SEGMENT_ADDRESS := 0x06000000
$(BUILD_DIR)/bin/common0.elf: SEGMENT_ADDRESS := 0x08000000
$(BUILD_DIR)/bin/common1.elf: SEGMENT_ADDRESS := 0x03000000
# --------------------------------------
# Level Rules
# --------------------------------------
# Using these rules:
# When defining a level, define the 3 variables needed and copy the rules
# as-is.
# TODO: Generate these rules from the level configs?
define level_rules =
$(1)_SEG7_FILES := $$(basename $$(notdir $$(wildcard levels/$(1)/*.png)))
$(1)_SEG7_FILES_RAW := $(shell find levels/$(1)/ -type f -iname '*')
$$(BUILD_DIR)/bin/$(1)/leveldata.o: $$(addprefix $$(BUILD_DIR)/levels/$(1)/,$$($(1)_SEG7_FILES)) $$($(1)_SEG7_FILES_RAW)
$$(BUILD_DIR)/bin/$(1)/leveldata.elf: SEGMENT_ADDRESS := $(2)
$$(BUILD_DIR)/bin/$(1)/leveldata.elf: TEXTURE_BIN := $(3)
endef
$(eval $(call level_rules,bbh,0x07000000,spooky)) # BBH (Big Boo's Haunt)
$(eval $(call level_rules,ccm,0x07000000,snow)) # CCM (Cool Cool Mountain)
$(eval $(call level_rules,castle_inside,0x07000000,inside)) # Castle Inside (Inside Princess Peach's Castle)
$(eval $(call level_rules,hmc,0x07000000,cave))# HMC (Hazy Maze Cave)
$(eval $(call level_rules,ssl,0x07000000,generic)) # SSL (Shifting Sand Land)
$(eval $(call level_rules,bob,0x07000000,generic)) # BOB (Bob-Omb Battlefield)
$(eval $(call level_rules,sl,0x07000000,snow)) # SL (Snowman's Land)
$(eval $(call level_rules,wdw,0x07000000,grass)) # WDW (Wet Dry World)
$(eval $(call level_rules,jrb,0x07000000,water)) # JRB (Jolly Roger Bay)
$(eval $(call level_rules,thi,0x07000000,grass)) # THI (Tiny Huge Island)
$(eval $(call level_rules,ttc,0x07000000,machine)) # TTC (Tick Tock Clock)
$(eval $(call level_rules,rr,0x07000000,sky)) # RR (Rainbow Ride)
$(eval $(call level_rules,castle_grounds,0x07000000,outside)) # Castle Grounds (Outside Princess Peach's Castle)
$(eval $(call level_rules,bitdw,0x07000000,sky)) # BitDW (Bowser in the Dark World)
$(eval $(call level_rules,vcutm,0x07000000,outside)) # VCUTM (Vanish Cap under the Moat)
$(eval $(call level_rules,bitfs,0x07000000,sky)) # BITFS (Bowser in the Fire Sea)
$(eval $(call level_rules,sa,0x07000000,inside)) # SA (The Secret Aquarium)
$(eval $(call level_rules,bits,0x07000000,sky)) # BITS (Bowser in the Sky)
$(eval $(call level_rules,lll,0x07000000,fire)) # LLL (Lethal Lava Land)
$(eval $(call level_rules,ddd,0x07000000,water)) # DDD (Dire Dire Docks)
$(eval $(call level_rules,wf,0x07000000,grass)) # WF (Whomp's Fortress)
$(eval $(call level_rules,ending,0x07000000,generic)) # Ending
$(eval $(call level_rules,castle_courtyard,0x07000000,outside)) # Castle Courtyard (The Courtyard of Princess Peach's Castle)
$(eval $(call level_rules,pss,0x07000000,mountain)) # PSS (The Princess's Secret Slide)
$(eval $(call level_rules,cotmc,0x07000000,cave)) # COTMC (Cavern of the Metal Cap)
$(eval $(call level_rules,totwc,0x07000000,sky)) # TOTWC (Tower of the Wing Cap)
$(eval $(call level_rules,bowser_1,0x07000000,generic)) # BOWSER_1 (Bowser in the Dark World [Boss Area])
$(eval $(call level_rules,wmotr,0x07000000,generic)) # WMOTR (Wing Mario over the Rainbow)
$(eval $(call level_rules,bowser_2,0x07000000,fire)) # BOWSER_2 (Bowser in the Fire Sea [Boss Area])
$(eval $(call level_rules,bowser_3,0x07000000,generic)) # BOWSER_3 (Bowser in the Sky [Boss Area])
$(eval $(call level_rules,totwc,0x07000000,sky)) # TOTWC (Tower of the Wing Cap)
$(eval $(call level_rules,ttm,0x07000000,mountain)) # TTM (Tall Tall Mountain)
$(eval $(call level_rules,intro,0x07000000,generic)) # Intro (Super Mario 64 Logo)
$(eval $(call level_rules,menu,0x07000000,generic)) # Menu (File Select)
# --------------------------------------
# Texture Bin Rules
# --------------------------------------
# Others
SEGMENT2_FILES := $(basename $(wildcard $(TEXTURE_DIR)/segment2/*.png))
TITLE_SCREEN_BG_FILES := $(basename $(wildcard $(TEXTURE_DIR)/title_screen_bg/*.png))
SPOOKY_FILES := $(basename $(wildcard $(TEXTURE_DIR)/spooky/*.png))
GENERIC_FILES := $(basename $(wildcard $(TEXTURE_DIR)/generic/*.png))
OUTSIDE_FILES := $(basename $(wildcard $(TEXTURE_DIR)/outside/*.png))
SNOW_FILES := $(basename $(wildcard $(TEXTURE_DIR)/snow/*.png))
EFFECT_FILES := $(basename $(wildcard $(TEXTURE_DIR)/effect/*.png))
CAVE_FILES := $(basename $(wildcard $(TEXTURE_DIR)/cave/*.png))
INSIDE_FILES := $(basename $(wildcard $(TEXTURE_DIR)/inside/*.png))
WATER_FILES := $(basename $(wildcard $(TEXTURE_DIR)/water/*.png))
FIRE_TEXTURES_FILES := $(basename $(wildcard $(TEXTURE_DIR)/fire/*.png))
SKY_FILES := $(basename $(wildcard $(TEXTURE_DIR)/sky/*.png))
MACHINE_FILES := $(basename $(wildcard $(TEXTURE_DIR)/machine/*.png))
MOUNTAIN_FILES := $(basename $(wildcard $(TEXTURE_DIR)/mountain/*.png))
GRASS_FILES := $(basename $(wildcard $(TEXTURE_DIR)/grass/*.png))
# Texture Files
$(BUILD_DIR)/bin/segment2.o: $(addprefix $(BUILD_DIR)/,$(SEGMENT2_FILES))
$(BUILD_DIR)/bin/title_screen_bg.o: $(addprefix $(BUILD_DIR)/,$(TITLE_SCREEN_BG_FILES))
$(BUILD_DIR)/bin/spooky.o: $(addprefix $(BUILD_DIR)/,$(SPOOKY_FILES))
$(BUILD_DIR)/bin/generic.o: $(addprefix $(BUILD_DIR)/,$(GENERIC_FILES))
$(BUILD_DIR)/bin/outside.o: $(addprefix $(BUILD_DIR)/,$(OUTSIDE_FILES))
$(BUILD_DIR)/bin/snow.o: $(addprefix $(BUILD_DIR)/,$(SNOW_FILES))
$(BUILD_DIR)/bin/effect.o: $(addprefix $(BUILD_DIR)/,$(EFFECT_FILES))
$(BUILD_DIR)/bin/cave.o: $(addprefix $(BUILD_DIR)/,$(CAVE_FILES))
$(BUILD_DIR)/bin/inside.o: $(addprefix $(BUILD_DIR)/,$(INSIDE_FILES))
$(BUILD_DIR)/bin/water.o: $(addprefix $(BUILD_DIR)/,$(WATER_FILES))
$(BUILD_DIR)/bin/fire.o: $(addprefix $(BUILD_DIR)/,$(FIRE_TEXTURES_FILES))
$(BUILD_DIR)/bin/sky.o: $(addprefix $(BUILD_DIR)/,$(SKY_FILES))
$(BUILD_DIR)/bin/machine.o: $(addprefix $(BUILD_DIR)/,$(MACHINE_FILES))
$(BUILD_DIR)/bin/mountain.o: $(addprefix $(BUILD_DIR)/,$(MOUNTAIN_FILES))
$(BUILD_DIR)/bin/grass.o: $(addprefix $(BUILD_DIR)/,$(GRASS_FILES))
# Others
$(BUILD_DIR)/bin/segment2.elf: SEGMENT_ADDRESS := 0x02000000
$(BUILD_DIR)/bin/title_screen_bg.elf: SEGMENT_ADDRESS := 0x0A000000
$(BUILD_DIR)/bin/debug_level_select.elf: SEGMENT_ADDRESS := 0x07000000
$(BUILD_DIR)/bin/effect.elf: SEGMENT_ADDRESS := 0x0B000000
$(BUILD_DIR)/bin/spooky.elf: SEGMENT_ADDRESS := 0x09000000
$(BUILD_DIR)/bin/generic.elf: SEGMENT_ADDRESS := 0x09000000
$(BUILD_DIR)/bin/outside.elf: SEGMENT_ADDRESS := 0x09000000
$(BUILD_DIR)/bin/snow.elf: SEGMENT_ADDRESS := 0x09000000
$(BUILD_DIR)/bin/cave.elf: SEGMENT_ADDRESS := 0x09000000
$(BUILD_DIR)/bin/inside.elf: SEGMENT_ADDRESS := 0x09000000
$(BUILD_DIR)/bin/water.elf: SEGMENT_ADDRESS := 0x09000000
$(BUILD_DIR)/bin/fire.elf: SEGMENT_ADDRESS := 0x09000000
$(BUILD_DIR)/bin/sky.elf: SEGMENT_ADDRESS := 0x09000000
$(BUILD_DIR)/bin/machine.elf: SEGMENT_ADDRESS := 0x09000000
$(BUILD_DIR)/bin/mountain.elf: SEGMENT_ADDRESS := 0x09000000
$(BUILD_DIR)/bin/grass.elf: SEGMENT_ADDRESS := 0x09000000
# EU segment 19 translations
$(BUILD_DIR)/bin/$(VERSION)/translation_de.elf: SEGMENT_ADDRESS := 0x19000000
$(BUILD_DIR)/bin/$(VERSION)/translation_en.elf: SEGMENT_ADDRESS := 0x19000000
$(BUILD_DIR)/bin/$(VERSION)/translation_fr.elf: SEGMENT_ADDRESS := 0x19000000
# --------------------------------------
# Skybox Rules
# --------------------------------------
# Skybox Files
BBH_SKYBOX_FILES := $(basename $(wildcard $(TEXTURE_DIR)/bbh_skybox/*.png))
BIDW_SKYBOX_FILES := $(basename $(wildcard $(TEXTURE_DIR)/bidw_skybox/*.png))
BITFS_SKYBOX_FILES := $(basename $(wildcard $(TEXTURE_DIR)/bitfs_skybox/*.png))
BITS_SKYBOX_FILES := $(basename $(wildcard $(TEXTURE_DIR)/bits_skybox/*.png))
CCM_SKYBOX_FILES := $(basename $(wildcard $(TEXTURE_DIR)/ccm_skybox/*.png))
CLOUD_FLOOR_SKYBOX_FILES := $(basename $(wildcard $(TEXTURE_DIR)/cloud_floor_skybox/*.png))
CLOUDS_SKYBOX_FILES := $(basename $(wildcard $(TEXTURE_DIR)/clouds_skybox/*.png))
SSL_SKYBOX_FILES := $(basename $(wildcard $(TEXTURE_DIR)/ssl_skybox/*.png))
WATER_SKYBOX_FILES := $(basename $(wildcard $(TEXTURE_DIR)/water_skybox/*.png))
WDW_SKYBOX_FILES := $(basename $(wildcard $(TEXTURE_DIR)/wdw_skybox/*.png))
# Skybox Files
$(BUILD_DIR)/bin/bbh_skybox.o: $(addprefix $(BUILD_DIR)/,$(BBH_SKYBOX_FILES))
$(BUILD_DIR)/bin/bidw_skybox.o: $(addprefix $(BUILD_DIR)/,$(BIDW_SKYBOX_FILES))
$(BUILD_DIR)/bin/bitfs_skybox.o: $(addprefix $(BUILD_DIR)/,$(BITFS_SKYBOX_FILES))
$(BUILD_DIR)/bin/bits_skybox.o: $(addprefix $(BUILD_DIR)/,$(BITS_SKYBOX_FILES))
$(BUILD_DIR)/bin/ccm_skybox.o: $(addprefix $(BUILD_DIR)/,$(CCM_SKYBOX_FILES))
$(BUILD_DIR)/bin/cloud_floor_skybox.o: $(addprefix $(BUILD_DIR)/,$(CLOUD_FLOOR_SKYBOX_FILES))
$(BUILD_DIR)/bin/clouds_skybox.o: $(addprefix $(BUILD_DIR)/,$(CLOUDS_SKYBOX_FILES))
$(BUILD_DIR)/bin/ssl_skybox.o: $(addprefix $(BUILD_DIR)/,$(SSL_SKYBOX_FILES))
$(BUILD_DIR)/bin/water_skybox.o: $(addprefix $(BUILD_DIR)/,$(WATER_SKYBOX_FILES))
$(BUILD_DIR)/bin/wdw_skybox.o: $(addprefix $(BUILD_DIR)/,$(WDW_SKYBOX_FILES))
# Skybox Files
$(BUILD_DIR)/bin/bbh_skybox.elf: SEGMENT_ADDRESS := 0x0A000000
$(BUILD_DIR)/bin/bidw_skybox.elf: SEGMENT_ADDRESS := 0x0A000000
$(BUILD_DIR)/bin/bitfs_skybox.elf: SEGMENT_ADDRESS := 0x0A000000
$(BUILD_DIR)/bin/bits_skybox.elf: SEGMENT_ADDRESS := 0x0A000000
$(BUILD_DIR)/bin/ccm_skybox.elf: SEGMENT_ADDRESS := 0x0A000000
$(BUILD_DIR)/bin/cloud_floor_skybox.elf: SEGMENT_ADDRESS := 0x0A000000
$(BUILD_DIR)/bin/clouds_skybox.elf: SEGMENT_ADDRESS := 0x0A000000
$(BUILD_DIR)/bin/ssl_skybox.elf: SEGMENT_ADDRESS := 0x0A000000
$(BUILD_DIR)/bin/water_skybox.elf: SEGMENT_ADDRESS := 0x0A000000
$(BUILD_DIR)/bin/wdw_skybox.elf: SEGMENT_ADDRESS := 0x0A000000
# --------------------------------------
# Misc Rules
# --------------------------------------
# intro_raw textures are not compressed
INTRO_RAW_FILES := $(basename $(notdir $(wildcard $(TEXTURE_DIR)/intro_raw/*.png)))
$(BUILD_DIR)/data/goddard_tex_dl.o: $(addprefix $(BUILD_DIR)/textures/intro_raw/,$(INTRO_RAW_FILES))

82
README.md Normal file
View file

@ -0,0 +1,82 @@
# Super Mario 64
This repo contains a full decompilation of Super Mario 64 (J) and (U).
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
is also an ongoing effort.
It builds the following ROMs:
* sm64.jp.z64 `sha1: 8a20a5c83d6ceb0f0506cfc9fa20d8f438cafe51`
* sm64.us.z64 `sha1: 9bef1128717f958171a4afac3ed78ee2bb4e86ce`
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.
## Installation
### Linux
1. For each version (jp/us/eu) that you want to build a ROM for, put an existing ROM at
`./baserom.<version>.z64` for asset extraction.
2. Install the following packages:
__Debian / Ubuntu__
* git
* binutils-mips-linux-gnu / mips64-elf (>= 2.27)
* python3 (>= 3.7)
* build-essential
* pkg-config
* zlib1g-dev
* libaudiofile-dev
__Arch Linux__
* base-devel
* python
* audiofile
* [mips64-elf-binutils](https://aur.archlinux.org/packages/mips64-elf-binutils) (AUR)
* [qemu-irix-git](https://aur.archlinux.org/packages/qemu-irix-git) (AUR)
3. Install qemu-irix
3.a Options:
1. Clone https://github.com/n64decomp/qemu-irix to somewhere and follow its
install instructions in the README.
2. Optionally, grab the prebuilt qemu-irix from the Releases section.
3. (Arch) Use AUR package [qemu-irix-git](https://aur.archlinux.org/packages/qemu-irix-git)
3.b (For options 1 or 2), copy executable `qemu-irix` from irix-linux-user to
somewhere convenient with a relatively short path.
```
mkdir -p /opt/qemu-irix/bin
cp irix-linux-user/qemu-irix /opt/qemu-irix/bin
```
3.c Define `QEMU_IRIX` environment variable in your `~/.bashrc` to point to
this qemu-irix executable.
```
export QEMU_IRIX=/opt/qemu-irix/bin/qemu-irix
```
6. Run `make` to build the ROM (defaults to us version). Make sure your path to
the repo is not too long or else this process will error, as the emulated
IDO compiler cannot handle paths longer than 255 characters.
Build examples:
```
make VERSION=jp -j4 # build (J) version instead with 4 jobs
make VERSION=eu COMPARE=0 # non-matching EU version still WIP
## Windows
For Windows, install WSL and a distro of your choice and follow the Linux guide.
## Contributing
Pull requests are welcome. For major changes, please open an issue first to
discuss what you would like to change.
Run clang-format on your code to ensure it meets the project's coding standards.
Official discord: https://discord.gg/27JtCWs

2
actors/amp/collision.s Normal file
View file

@ -0,0 +1,2 @@
# Amp

54
actors/amp/geo.s Normal file
View file

@ -0,0 +1,54 @@
glabel amp_geo # 0x0F000028
geo_shadow SHADOW_CIRCLE_4_VERTS, 0xC8, 100
geo_open_node
geo_scale 0x00, 16384
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_ALPHA, 0, 0, 0, amp_seg8_dl_08002C88
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_switch_case 2, geo_switch_anim_state
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_animated_part LAYER_ALPHA, 0, 0, 0, amp_seg8_dl_08002BA0
geo_close_node
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_switch_case 2, geo_switch_anim_state
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_animated_part LAYER_ALPHA, 0, 0, 0, amp_seg8_dl_08002BA0
geo_close_node
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_switch_case 2, geo_switch_anim_state
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_animated_part LAYER_ALPHA, 0, 0, 0, amp_seg8_dl_08002BA0
geo_close_node
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_switch_case 2, geo_switch_anim_state
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_animated_part LAYER_ALPHA, 0, 0, 0, amp_seg8_dl_08002BA0
geo_close_node
geo_close_node
geo_close_node
geo_animated_part LAYER_ALPHA, 0, 0, 0, amp_seg8_dl_08002D70
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_billboard
geo_open_node
geo_display_list LAYER_ALPHA, amp_seg8_dl_08002E58
geo_close_node
geo_close_node
geo_close_node
geo_close_node
geo_close_node
geo_end

503
actors/amp/model.s Normal file
View file

@ -0,0 +1,503 @@
# Amp
amp_seg8_texture_08000F18: # 0x08000F18
.incbin "actors/amp/amp_electricity.rgba16"
amp_seg8_texture_08001318: # 0x08001318
.incbin "actors/amp/amp_eyes.rgba16"
amp_seg8_texture_08001B18: # 0x08001B18
.incbin "actors/amp/amp_body.rgba16"
amp_seg8_texture_08002318: # 0x08002318
.incbin "actors/amp/amp_mouth.rgba16"
amp_seg8_vertex_08002B18: # 0x08002B18
vertex 224, 0, -89, 0, 480, 0xFF, 0xFF, 0xFF, 0xFF
vertex 187, 149, 0, 223, 1078, 0xFF, 0xFF, 0xFF, 0xFF
vertex 224, 0, 90, 479, 478, 0xFF, 0xFF, 0xFF, 0xFF
vertex 187, -148, 0, 224, -122, 0xFF, 0xFF, 0xFF, 0xFF
vertex 224, 0, -89, 0, 478, 0xFF, 0xFF, 0xFF, 0xFF
glabel amp_seg8_dl_08002B68 # 0x08002B68 - 0x08002BA0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, amp_seg8_texture_08000F18
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x1FF, 0x200
gsSPVertex amp_seg8_vertex_08002B18, 5, 0
gsSP2Triangles 0, 1, 2, 0x0, 2, 3, 4, 0x0
gsSPEndDisplayList
glabel amp_seg8_dl_08002BA0 # 0x08002BA0 - 0x08002C10
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_TEXEL0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_TEXEL0
gsSPClearGeometryMode G_LIGHTING | G_CULL_BACK
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 4, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 4, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 60, 124
gsSPDisplayList amp_seg8_dl_08002B68
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_LIGHTING | G_CULL_BACK
gsSPEndDisplayList
amp_seg8_vertex_08002C10: # 0x08002C10
vertex 68, 72, 158, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex -27, -71, 164, 990, 990, 0xFF, 0xFF, 0xFF, 0xFF
vertex 68, -71, 158, 990, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex -27, 72, 164, 0, 990, 0xFF, 0xFF, 0xFF, 0xFF
glabel amp_seg8_dl_08002C50 # 0x08002C50 - 0x08002C88
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, amp_seg8_texture_08001318
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPVertex amp_seg8_vertex_08002C10, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSPEndDisplayList
glabel amp_seg8_dl_08002C88 # 0x08002C88 - 0x08002CF8
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_TEXEL0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_TEXEL0
gsSPClearGeometryMode G_LIGHTING
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList amp_seg8_dl_08002C50
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_LIGHTING
gsSPEndDisplayList
amp_seg8_vertex_08002CF8: # 0x08002CF8
vertex -29, 72, 164, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex -124, -71, 121, 990, 990, 0xFF, 0xFF, 0xFF, 0xFF
vertex -29, -71, 164, 990, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex -124, 72, 121, 0, 990, 0xFF, 0xFF, 0xFF, 0xFF
glabel amp_seg8_dl_08002D38 # 0x08002D38 - 0x08002D70
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, amp_seg8_texture_08002318
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPVertex amp_seg8_vertex_08002CF8, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSPEndDisplayList
glabel amp_seg8_dl_08002D70 # 0x08002D70 - 0x08002DE0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_TEXEL0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_TEXEL0
gsSPClearGeometryMode G_LIGHTING
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList amp_seg8_dl_08002D38
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_LIGHTING
gsSPEndDisplayList
amp_seg8_vertex_08002DE0: # 0x08002DE0
vertex -39, -39, 0, 0, 990, 0xFF, 0xFF, 0xFF, 0xFF
vertex 40, 40, 0, 990, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex -39, 40, 0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 40, -39, 0, 990, 990, 0xFF, 0xFF, 0xFF, 0xFF
glabel amp_seg8_dl_08002E20 # 0x08002E20 - 0x08002E58
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, amp_seg8_texture_08001B18
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPVertex amp_seg8_vertex_08002DE0, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSPEndDisplayList
glabel amp_seg8_dl_08002E58 # 0x08002E58 - 0x08002EC8
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_TEXEL0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_TEXEL0
gsSPClearGeometryMode G_LIGHTING
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList amp_seg8_dl_08002E20
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_LIGHTING
gsSPEndDisplayList
amp_seg8_light_08002EC8: # 0x08002EC8
.byte 0x33, 0x3F, 0x00, 0x00, 0x33, 0x3F, 0x00, 0x00
amp_seg8_light_08002ED0: # 0x08002ED0
.byte 0xCF, 0xFF, 0x00, 0x00, 0xCF, 0xFF, 0x00, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
# //! Another malformed entry: Vertex interpreted as light
amp_seg8_vertex_08002EE0: # 0x08002EE0
vertex 280, 0, 35, 0, 0, 0x7B, 0xE2, 0x00, 0x00
vertex 240, -160, 0, 0, 0, 0x7B, 0xE2, 0x00, 0x00
vertex 280, 0, -35, 0, 0, 0x7B, 0xE2, 0x00, 0x00
vertex 280, 0, -35, 0, 0, 0x7B, 0x1E, 0x00, 0xFF
vertex 240, 160, 0, 0, 0, 0x7B, 0x1E, 0x00, 0xFF
vertex 280, 0, 35, 0, 0, 0x7B, 0x1E, 0x00, 0xFF
amp_seg8_vertex_08002F40: # 0x08002F40
vertex 280, 0, 35, 0, 0, 0x7B, 0xE2, 0x00, 0x00
vertex 240, -160, 0, 0, 0, 0x7B, 0xE2, 0x00, 0x00
vertex 280, 0, -35, 0, 0, 0x7B, 0xE2, 0x00, 0x00
vertex 280, 0, -35, 0, 0, 0x7B, 0x1E, 0x00, 0xFF
vertex 240, 160, 0, 0, 0, 0x7B, 0x1E, 0x00, 0xFF
vertex 280, 0, 35, 0, 0, 0x7B, 0x1E, 0x00, 0xFF
amp_seg8_vertex_08002FA0: # 0x08002FA0
vertex 280, 0, 35, 0, 0, 0x7B, 0xE2, 0x00, 0x00
vertex 240, -160, 0, 0, 0, 0x7B, 0xE2, 0x00, 0x00
vertex 280, 0, -35, 0, 0, 0x7B, 0xE2, 0x00, 0x00
vertex 280, 0, -35, 0, 0, 0x7B, 0x1E, 0x00, 0xFF
vertex 240, 160, 0, 0, 0, 0x7B, 0x1E, 0x00, 0xFF
vertex 280, 0, 35, 0, 0, 0x7B, 0x1E, 0x00, 0xFF
amp_seg8_vertex_08003000: # 0x08003000
vertex 280, 0, -35, 0, 0, 0x7B, 0x1E, 0x00, 0x00
vertex 240, 160, 0, 0, 0, 0x7B, 0x1E, 0x00, 0x00
vertex 280, 0, 35, 0, 0, 0x7B, 0x1E, 0x00, 0x00
vertex 280, 0, 35, 0, 0, 0x7B, 0xE2, 0x00, 0xFF
vertex 240, -160, 0, 0, 0, 0x7B, 0xE2, 0x00, 0xFF
vertex 280, 0, -35, 0, 0, 0x7B, 0xE2, 0x00, 0xFF
amp_seg8_vertex_08003060: # 0x08003060
vertex -184, -54, -54, 0, 0, 0x8B, 0xDE, 0xDE, 0x00
vertex -184, -76, 0, 0, 0, 0x8B, 0xD0, 0x00, 0x00
vertex -200, 0, 0, 0, 0, 0x81, 0x00, 0x00, 0x00
vertex -141, -100, -100, 0, 0, 0xA6, 0xC1, 0xC1, 0xFF
vertex -141, -141, 0, 0, 0, 0xA6, 0xA7, 0x00, 0xFF
vertex -76, -130, -130, 0, 0, 0xD0, 0xAE, 0xAE, 0xFF
vertex -76, -184, 0, 0, 0, 0xD0, 0x8B, 0x00, 0xFF
vertex 0, -141, -141, 0, 0, 0x00, 0xA7, 0xA7, 0xFF
vertex 0, -200, 0, 0, 0, 0x00, 0x81, 0x00, 0xFF
vertex 76, -130, -130, 0, 0, 0x30, 0xAE, 0xAE, 0xFF
vertex 76, -184, 0, 0, 0, 0x30, 0x8B, 0x00, 0xFF
vertex 141, -100, -100, 0, 0, 0x5A, 0xC1, 0xC1, 0xFF
vertex 141, -141, 0, 0, 0, 0x5A, 0xA7, 0x00, 0xFF
vertex 184, -54, -54, 0, 0, 0x75, 0xDE, 0xDE, 0xFF
vertex 184, -76, 0, 0, 0, 0x75, 0xD0, 0x00, 0xFF
vertex 200, 0, 0, 0, 0, 0x7F, 0x00, 0x00, 0xFF
amp_seg8_vertex_08003160: # 0x08003160
vertex -184, 0, -76, 0, 0, 0x8B, 0x00, 0xD0, 0xFF
vertex -184, -54, -54, 0, 0, 0x8B, 0xDE, 0xDE, 0x00
vertex -200, 0, 0, 0, 0, 0x81, 0x00, 0x00, 0x00
vertex -141, 0, -141, 0, 0, 0xA6, 0x00, 0xA7, 0xFF
vertex -141, -100, -100, 0, 0, 0xA6, 0xC1, 0xC1, 0xFF
vertex -76, 0, -184, 0, 0, 0xD0, 0x00, 0x8B, 0xFF
vertex -76, -130, -130, 0, 0, 0xD0, 0xAE, 0xAE, 0xFF
vertex 0, 0, -200, 0, 0, 0x00, 0x00, 0x81, 0xFF
vertex 0, -141, -141, 0, 0, 0x00, 0xA7, 0xA7, 0xFF
vertex 76, 0, -184, 0, 0, 0x30, 0x00, 0x8B, 0xFF
vertex 76, -130, -130, 0, 0, 0x30, 0xAE, 0xAE, 0xFF
vertex 141, 0, -141, 0, 0, 0x5A, 0x00, 0xA7, 0xFF
vertex 141, -100, -100, 0, 0, 0x5A, 0xC1, 0xC1, 0xFF
vertex 184, 0, -76, 0, 0, 0x75, 0x00, 0xD0, 0xFF
vertex 184, -54, -54, 0, 0, 0x75, 0xDE, 0xDE, 0xFF
vertex 200, 0, 0, 0, 0, 0x7F, 0x00, 0x00, 0xFF
amp_seg8_vertex_08003260: # 0x08003260
vertex -184, 54, -54, 0, 0, 0x8B, 0x22, 0xDE, 0xFF
vertex -184, 0, -76, 0, 0, 0x8B, 0x00, 0xD0, 0x00
vertex -200, 0, 0, 0, 0, 0x81, 0x00, 0x00, 0x00
vertex -141, 100, -100, 0, 0, 0xA6, 0x3F, 0xC1, 0xFF
vertex -141, 0, -141, 0, 0, 0xA6, 0x00, 0xA7, 0xFF
vertex -76, 130, -130, 0, 0, 0xD0, 0x52, 0xAE, 0xFF
vertex -76, 0, -184, 0, 0, 0xD0, 0x00, 0x8B, 0xFF
vertex 0, 141, -141, 0, 0, 0x00, 0x59, 0xA7, 0xFF
vertex 0, 0, -200, 0, 0, 0x00, 0x00, 0x81, 0xFF
vertex 76, 130, -130, 0, 0, 0x30, 0x52, 0xAE, 0xFF
vertex 76, 0, -184, 0, 0, 0x30, 0x00, 0x8B, 0xFF
vertex 141, 100, -100, 0, 0, 0x5A, 0x3F, 0xC1, 0xFF
vertex 141, 0, -141, 0, 0, 0x5A, 0x00, 0xA7, 0xFF
vertex 184, 54, -54, 0, 0, 0x75, 0x22, 0xDE, 0xFF
vertex 184, 0, -76, 0, 0, 0x75, 0x00, 0xD0, 0xFF
vertex 200, 0, 0, 0, 0, 0x7F, 0x00, 0x00, 0xFF
amp_seg8_vertex_08003360: # 0x08003360
vertex -184, 76, 0, 0, 0, 0x8B, 0x30, 0x00, 0xFF
vertex -184, 54, -54, 0, 0, 0x8B, 0x22, 0xDE, 0x00
vertex -200, 0, 0, 0, 0, 0x81, 0x00, 0x00, 0x00
vertex -141, 141, 0, 0, 0, 0xA6, 0x59, 0x00, 0xFF
vertex -141, 100, -100, 0, 0, 0xA6, 0x3F, 0xC1, 0xFF
vertex -76, 184, 0, 0, 0, 0xD0, 0x75, 0x00, 0xFF
vertex -76, 130, -130, 0, 0, 0xD0, 0x52, 0xAE, 0xFF
vertex 0, 200, 0, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 0, 141, -141, 0, 0, 0x00, 0x59, 0xA7, 0xFF
vertex 76, 184, 0, 0, 0, 0x30, 0x75, 0x00, 0xFF
vertex 76, 130, -130, 0, 0, 0x30, 0x52, 0xAE, 0xFF
vertex 141, 141, 0, 0, 0, 0x5A, 0x59, 0x00, 0xFF
vertex 141, 100, -100, 0, 0, 0x5A, 0x3F, 0xC1, 0xFF
vertex 184, 76, 0, 0, 0, 0x75, 0x30, 0x00, 0xFF
vertex 184, 54, -54, 0, 0, 0x75, 0x22, 0xDE, 0xFF
vertex 200, 0, 0, 0, 0, 0x7F, 0x00, 0x00, 0xFF
amp_seg8_vertex_08003460: # 0x08003460
vertex -184, 54, 54, 0, 0, 0x8B, 0x22, 0x22, 0xFF
vertex -184, 76, 0, 0, 0, 0x8B, 0x30, 0x00, 0x00
vertex -200, 0, 0, 0, 0, 0x81, 0x00, 0x00, 0x00
vertex -141, 100, 100, 0, 0, 0xA6, 0x3F, 0x3F, 0xFF
vertex -141, 141, 0, 0, 0, 0xA6, 0x59, 0x00, 0xFF
vertex -76, 130, 130, 0, 0, 0xD0, 0x52, 0x52, 0xFF
vertex -76, 184, 0, 0, 0, 0xD0, 0x75, 0x00, 0xFF
vertex 0, 141, 141, 0, 0, 0x00, 0x59, 0x59, 0xFF
vertex 0, 200, 0, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 76, 130, 130, 0, 0, 0x30, 0x52, 0x52, 0xFF
vertex 76, 184, 0, 0, 0, 0x30, 0x75, 0x00, 0xFF
vertex 141, 100, 100, 0, 0, 0x5A, 0x3F, 0x3F, 0xFF
vertex 141, 141, 0, 0, 0, 0x5A, 0x59, 0x00, 0xFF
vertex 184, 54, 54, 0, 0, 0x75, 0x22, 0x22, 0xFF
vertex 184, 76, 0, 0, 0, 0x75, 0x30, 0x00, 0xFF
vertex 200, 0, 0, 0, 0, 0x7F, 0x00, 0x00, 0xFF
amp_seg8_vertex_08003560: # 0x08003560
vertex -184, 0, 76, 0, 0, 0x8B, 0x00, 0x30, 0xFF
vertex -184, 54, 54, 0, 0, 0x8B, 0x22, 0x22, 0x00
vertex -200, 0, 0, 0, 0, 0x81, 0x00, 0x00, 0x00
vertex -141, 0, 141, 0, 0, 0xA6, 0x00, 0x59, 0xFF
vertex -141, 100, 100, 0, 0, 0xA6, 0x3F, 0x3F, 0xFF
vertex -76, 0, 184, 0, 0, 0xD0, 0x00, 0x75, 0xFF
vertex -76, 130, 130, 0, 0, 0xD0, 0x52, 0x52, 0xFF
vertex 0, 0, 200, 0, 0, 0x00, 0x00, 0x7F, 0xFF
vertex 0, 141, 141, 0, 0, 0x00, 0x59, 0x59, 0xFF
vertex 76, 0, 184, 0, 0, 0x30, 0x00, 0x75, 0xFF
vertex 76, 130, 130, 0, 0, 0x30, 0x52, 0x52, 0xFF
vertex 141, 0, 141, 0, 0, 0x5A, 0x00, 0x59, 0xFF
vertex 141, 100, 100, 0, 0, 0x5A, 0x3F, 0x3F, 0xFF
vertex 184, 0, 76, 0, 0, 0x75, 0x00, 0x30, 0xFF
vertex 184, 54, 54, 0, 0, 0x75, 0x22, 0x22, 0xFF
vertex 200, 0, 0, 0, 0, 0x7F, 0x00, 0x00, 0xFF
amp_seg8_vertex_08003660: # 0x08003660
vertex -184, -54, 54, 0, 0, 0x8B, 0xDE, 0x22, 0xFF
vertex -184, 0, 76, 0, 0, 0x8B, 0x00, 0x30, 0x00
vertex -200, 0, 0, 0, 0, 0x81, 0x00, 0x00, 0x00
vertex -141, -100, 100, 0, 0, 0xA6, 0xC1, 0x3F, 0xFF
vertex -141, 0, 141, 0, 0, 0xA6, 0x00, 0x59, 0xFF
vertex -76, -130, 130, 0, 0, 0xD0, 0xAE, 0x52, 0xFF
vertex -76, 0, 184, 0, 0, 0xD0, 0x00, 0x75, 0xFF
vertex 0, -141, 141, 0, 0, 0x00, 0xA7, 0x59, 0xFF
vertex 0, 0, 200, 0, 0, 0x00, 0x00, 0x7F, 0xFF
vertex 76, -130, 130, 0, 0, 0x30, 0xAE, 0x52, 0xFF
vertex 76, 0, 184, 0, 0, 0x30, 0x00, 0x75, 0xFF
vertex 141, -100, 100, 0, 0, 0x5A, 0xC1, 0x3F, 0xFF
vertex 141, 0, 141, 0, 0, 0x5A, 0x00, 0x59, 0xFF
vertex 184, -54, 54, 0, 0, 0x75, 0xDE, 0x22, 0xFF
vertex 184, 0, 76, 0, 0, 0x75, 0x00, 0x30, 0xFF
vertex 200, 0, 0, 0, 0, 0x7F, 0x00, 0x00, 0xFF
amp_seg8_vertex_08003760: # 0x08003760
vertex -184, -76, 0, 0, 0, 0x8B, 0xD0, 0x00, 0xFF
vertex -184, -54, 54, 0, 0, 0x8B, 0xDE, 0x22, 0x00
vertex -200, 0, 0, 0, 0, 0x81, 0x00, 0x00, 0x00
vertex -141, -141, 0, 0, 0, 0xA6, 0xA7, 0x00, 0xFF
vertex -141, -100, 100, 0, 0, 0xA6, 0xC1, 0x3F, 0xFF
vertex -76, -184, 0, 0, 0, 0xD0, 0x8B, 0x00, 0xFF
vertex -76, -130, 130, 0, 0, 0xD0, 0xAE, 0x52, 0xFF
vertex 0, -200, 0, 0, 0, 0x00, 0x81, 0x00, 0xFF
vertex 0, -141, 141, 0, 0, 0x00, 0xA7, 0x59, 0xFF
vertex 76, -184, 0, 0, 0, 0x30, 0x8B, 0x00, 0xFF
vertex 76, -130, 130, 0, 0, 0x30, 0xAE, 0x52, 0xFF
vertex 141, -141, 0, 0, 0, 0x5A, 0xA7, 0x00, 0xFF
vertex 141, -100, 100, 0, 0, 0x5A, 0xC1, 0x3F, 0xFF
vertex 184, -76, 0, 0, 0, 0x75, 0xD0, 0x00, 0xFF
vertex 184, -54, 54, 0, 0, 0x75, 0xDE, 0x22, 0xFF
vertex 200, 0, 0, 0, 0, 0x7F, 0x00, 0x00, 0xFF
amp_seg8_vertex_08003860: # 0x08003860
vertex -37, 90, 205, 0, 0, 0xCC, 0x00, 0x73, 0x00
vertex -129, 90, 163, 0, 0, 0xCC, 0x00, 0x73, 0x00
vertex -129, -90, 163, 0, 0, 0xCC, 0x00, 0x73, 0x00
vertex -37, -90, 205, 0, 0, 0xCC, 0x00, 0x73, 0xFF
amp_seg8_vertex_080038A0: # 0x080038A0
vertex 112, -7, 182, 0, 0, 0x4C, 0xD8, 0x5C, 0x00
vertex 66, -139, 162, 0, 0, 0x4C, 0xD8, 0x5C, 0x00
vertex 175, -77, 98, 0, 0, 0x4C, 0xD8, 0x5C, 0x00
amp_seg8_vertex_080038D0: # 0x080038D0
vertex 63, 90, 198, 0, 0, 0x08, 0x00, 0x7E, 0x00
vertex -35, 90, 205, 0, 0, 0x08, 0x00, 0x7E, 0x00
vertex -35, -90, 205, 0, 0, 0x08, 0x00, 0x7E, 0x00
vertex 63, -90, 198, 0, 0, 0x08, 0x00, 0x7E, 0xFF
glabel amp_seg8_dl_08003910 # 0x08003910 - 0x08003940
gsSPLight amp_seg8_light_08002ED0, 1
gsSPLight amp_seg8_light_08002EC8, 2
gsSPVertex amp_seg8_vertex_08002EE0, 6, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSPEndDisplayList
glabel amp_seg8_dl_08003940 # 0x08003940 - 0x08003970
gsSPLight amp_seg8_light_08002ED0, 1
gsSPLight amp_seg8_light_08002EC8, 2
gsSPVertex amp_seg8_vertex_08002F40, 6, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSPEndDisplayList
glabel amp_seg8_dl_08003970 # 0x08003970 - 0x080039A0
gsSPLight amp_seg8_light_08002ED0, 1
gsSPLight amp_seg8_light_08002EC8, 2
gsSPVertex amp_seg8_vertex_08002FA0, 6, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSPEndDisplayList
glabel amp_seg8_dl_080039A0 # 0x080039A0 - 0x080039D0
gsSPLight amp_seg8_light_08002ED0, 1
gsSPLight amp_seg8_light_08002EC8, 2
gsSPVertex amp_seg8_vertex_08003000, 6, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSPEndDisplayList
glabel amp_seg8_dl_080039D0 # 0x080039D0 - 0x08003DA8
gsSPLight amp_seg8_vertex_08002EE0 + 0x8, 1
gsSPLight amp_seg8_vertex_08002EE0, 2
gsSPVertex amp_seg8_vertex_08003060, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 0, 3, 0x0
gsSP2Triangles 1, 3, 4, 0x0, 4, 3, 5, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 6, 5, 7, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 8, 7, 9, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 10, 9, 11, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 12, 11, 13, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 14, 13, 15, 0x0
gsSPVertex amp_seg8_vertex_08003160, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 0, 3, 0x0
gsSP2Triangles 1, 3, 4, 0x0, 4, 3, 5, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 6, 5, 7, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 8, 7, 9, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 10, 9, 11, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 12, 11, 13, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 14, 13, 15, 0x0
gsSPVertex amp_seg8_vertex_08003260, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 0, 3, 0x0
gsSP2Triangles 1, 3, 4, 0x0, 4, 3, 5, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 6, 5, 7, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 8, 7, 9, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 10, 9, 11, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 12, 11, 13, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 14, 13, 15, 0x0
gsSPVertex amp_seg8_vertex_08003360, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 0, 3, 0x0
gsSP2Triangles 1, 3, 4, 0x0, 4, 3, 5, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 6, 5, 7, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 8, 7, 9, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 10, 9, 11, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 12, 11, 13, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 14, 13, 15, 0x0
gsSPVertex amp_seg8_vertex_08003460, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 0, 3, 0x0
gsSP2Triangles 1, 3, 4, 0x0, 4, 3, 5, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 6, 5, 7, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 8, 7, 9, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 10, 9, 11, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 12, 11, 13, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 14, 13, 15, 0x0
gsSPVertex amp_seg8_vertex_08003560, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 0, 3, 0x0
gsSP2Triangles 1, 3, 4, 0x0, 4, 3, 5, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 6, 5, 7, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 8, 7, 9, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 10, 9, 11, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 12, 11, 13, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 14, 13, 15, 0x0
gsSPVertex amp_seg8_vertex_08003660, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 0, 3, 0x0
gsSP2Triangles 1, 3, 4, 0x0, 4, 3, 5, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 6, 5, 7, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 8, 7, 9, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 10, 9, 11, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 12, 11, 13, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 14, 13, 15, 0x0
gsSPVertex amp_seg8_vertex_08003760, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 0, 3, 0x0
gsSP2Triangles 1, 3, 4, 0x0, 4, 3, 5, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 6, 5, 7, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 8, 7, 9, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 10, 9, 11, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 12, 11, 13, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 14, 13, 15, 0x0
gsSPEndDisplayList
glabel amp_seg8_dl_08003DA8 # 0x08003DA8 - 0x08003DD8
gsSPLight amp_seg8_vertex_08002EE0 + 0x8, 1
gsSPLight amp_seg8_vertex_08002EE0, 2
gsSPVertex amp_seg8_vertex_08003860, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSPEndDisplayList
glabel amp_seg8_dl_08003DD8 # 0x08003DD8 - 0x08003E00
gsSPLight amp_seg8_vertex_08002EE0 + 0x8, 1
gsSPLight amp_seg8_vertex_08002EE0, 2
gsSPVertex amp_seg8_vertex_080038A0, 3, 0
gsSP1Triangle 0, 1, 2, 0x0
gsSPEndDisplayList
glabel amp_seg8_dl_08003E00 # 0x08003E00 - 0x08003E30
gsSPLight amp_seg8_vertex_08002EE0 + 0x8, 1
gsSPLight amp_seg8_vertex_08002EE0, 2
gsSPVertex amp_seg8_vertex_080038D0, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSPEndDisplayList
amp_seg8_animvalue_08003E30: # 0x08003E30
.hword 0x0000, 0x0000, 0x0D79, 0x1AF2, 0x286B, 0x35E4, 0x435D, 0x50D6
.hword 0x5E50, 0x6BC9, 0x7942, 0x86BE, 0x9437, 0xA1B0, 0xAF2A, 0xBCA3
.hword 0xCA1C, 0xD795, 0xE50E, 0xF287, 0x1872, 0x0000, 0x1AF2, 0x35E4
.hword 0x50D6, 0x6BC9, 0x86BE, 0xA1B0, 0xBCA3, 0xD795, 0xF287, 0x0D79
.hword 0x286B, 0x435D, 0x5E50, 0x7942, 0x9437, 0xAF2A, 0xCA1C, 0xE50E
.hword 0x0000, 0x1AF2, 0x35E4, 0x50D6, 0x6BC9, 0x86BE, 0xA1B0, 0xBCA3
.hword 0xD795, 0xF287, 0x0D79, 0x286B, 0x435D, 0x5E50, 0x7942, 0x9437
.hword 0xAF2A, 0xCA1C, 0xE50E, 0x8001, 0x5793, 0x2F28, 0x06BC, 0xDE52
.hword 0xB5E6, 0x8D7B, 0x650C, 0x3CA1, 0x1435, 0xEBCB, 0xC35F, 0x9AF4
.hword 0x7285, 0x4A1A, 0x21AE, 0xF944, 0xD0D8, 0xA86D, 0x3FFF, 0x0000
.hword 0x0D7C, 0x1AF9, 0x2876, 0x35F3, 0x4370, 0x50ED, 0x5E6A, 0x6BE7
.hword 0x7964, 0x86E3, 0x9460, 0xA1DD, 0xAF5A, 0xBCD7, 0xCA54, 0xD7D1
.hword 0xE54E, 0xF2CB, 0xC001, 0x3FFF, 0x0000, 0x0D7B, 0x1AF7, 0x2873
.hword 0x35EF, 0x436B, 0x50E6, 0x5E62, 0x6BDE, 0x795A, 0x86D9, 0x9455
.hword 0xA1D0, 0xAF4C, 0xBCC8, 0xCA44, 0xD7C0, 0xE53B, 0xF2B7, 0xC001
.hword 0x3FFF, 0xC001, 0xCD7A, 0xDAF2, 0xE86B, 0xF5E3, 0x035B, 0x10D3
.hword 0x1E4C, 0x2BC4, 0x393D, 0x46B5, 0x542E, 0x61A6, 0x6F1F, 0x7C97
.hword 0x8A13, 0x978B, 0xA504, 0xB27D, 0xC001, 0x3FFF, 0x4D79, 0x5AF2
.hword 0x686C, 0x75E5, 0x8362, 0x90DB, 0x9E55, 0xABCF, 0xB948, 0xC6C2
.hword 0xD43B, 0xE1B5, 0xEF2F, 0xFCA8, 0x0A21, 0x179A, 0x2514, 0x328D
.hword 0xC001, 0x3FFF
amp_seg8_animindex_08003F74: # 0x08003F74
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x00A1, 0x0001, 0x0000, 0x0013, 0x008D, 0x0001, 0x00A0
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0013, 0x0001, 0x0001, 0x0000
.hword 0x0013, 0x0079, 0x0001, 0x008C, 0x0001, 0x0014, 0x0001, 0x0000
.hword 0x0013, 0x0015, 0x0001, 0x0000, 0x0013, 0x0064, 0x0001, 0x0077
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0013, 0x0028, 0x0001, 0x0000
.hword 0x0013, 0x004F, 0x0001, 0x0062, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0013, 0x003B, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0078
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0063, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x004E
amp_seg8_anim_0800401C: # 0x0800401C
.hword 0
.hword 0
.hword 0
.hword 0
.hword 0x13
.hword 0x0D
.word amp_seg8_animvalue_08003E30
.word amp_seg8_animindex_08003F74
.word 0
glabel amp_seg8_anims_08004034 # 0x08004034
.word amp_seg8_anim_0800401C

2
actors/bird/collision.s Normal file
View file

@ -0,0 +1,2 @@
# Birds

23
actors/bird/geo.s Normal file
View file

@ -0,0 +1,23 @@
glabel birds_geo # 0x0C000000
geo_shadow SHADOW_CIRCLE_4_VERTS, 0x96, 100
geo_open_node
geo_scale 0x00, 16384
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, birds_seg5_dl_05000670
geo_open_node
geo_animated_part LAYER_OPAQUE, 1, -12, 37
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, birds_seg5_dl_05000528
geo_close_node
geo_animated_part LAYER_OPAQUE, 1, -12, -37
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, birds_seg5_dl_05000600
geo_close_node
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, birds_seg5_dl_05000598
geo_close_node
geo_close_node
geo_close_node
geo_end

254
actors/bird/model.s Normal file
View file

@ -0,0 +1,254 @@
# Birds
birds_seg5_light_05000000: # 0x05000000
.byte 0x07, 0x24, 0x2C, 0x00, 0x07, 0x24, 0x2C, 0x00
birds_seg5_light_05000008: # 0x05000008
.byte 0x1D, 0x91, 0xB0, 0x00, 0x1D, 0x91, 0xB0, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
birds_seg5_light_05000018: # 0x05000018
.byte 0x33, 0x27, 0x0D, 0x00, 0x33, 0x27, 0x0D, 0x00
birds_seg5_light_05000020: # 0x05000020
.byte 0xCE, 0x9D, 0x34, 0x00, 0xCE, 0x9D, 0x34, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
birds_seg5_light_05000030: # 0x05000030
.byte 0x3F, 0x3F, 0x3F, 0x00, 0x3F, 0x3F, 0x3F, 0x00
birds_seg5_light_05000038: # 0x05000038
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
birds_seg5_vertex_05000048: # 0x05000048
vertex 178, 2, 39, 0, 0, 0x0D, 0x7E, 0x00, 0x00
vertex 122, -4, -33, 0, 0, 0x10, 0x79, 0xDE, 0x00
vertex 97, 10, 13, 0, 0, 0x0B, 0x7E, 0xFF, 0x00
vertex 47, 4, 47, 0, 0, 0xFE, 0x7C, 0x1B, 0xFF
vertex 53, 14, 7, 0, 0, 0xFE, 0x7E, 0xF8, 0xFF
vertex 0, 5, 32, 0, 0, 0xF0, 0x7D, 0x03, 0xFF
vertex 27, 9, 16, 0, 0, 0xEE, 0x7D, 0x05, 0xFF
vertex 53, -8, -58, 0, 0, 0x0A, 0x78, 0xD8, 0xFF
vertex -4, -6, -64, 0, 0, 0xF1, 0x7B, 0xE9, 0xFF
birds_seg5_vertex_050000D8: # 0x050000D8
vertex -143, -7, -29, 0, 0, 0x16, 0x94, 0xC2, 0x00
vertex -86, -11, -2, 0, 0, 0x16, 0x94, 0xC2, 0x00
vertex -154, -21, -9, 0, 0, 0x16, 0x94, 0xC2, 0x00
birds_seg5_vertex_05000108: # 0x05000108
vertex -154, -21, 9, 0, 0, 0x16, 0x94, 0x3E, 0x00
vertex -86, -11, 2, 0, 0, 0x16, 0x94, 0x3E, 0x00
vertex -143, -7, 29, 0, 0, 0x16, 0x94, 0x3E, 0x00
birds_seg5_vertex_05000138: # 0x05000138
vertex -152, -30, -17, 0, 0, 0x26, 0x87, 0x00, 0x00
vertex -80, -7, 0, 0, 0, 0x26, 0x87, 0x00, 0x00
vertex -152, -30, 17, 0, 0, 0x26, 0x87, 0x00, 0x00
birds_seg5_vertex_05000168: # 0x05000168
vertex 97, 10, -13, 0, 0, 0x0B, 0x7E, 0x01, 0x00
vertex 122, -4, 33, 0, 0, 0x10, 0x79, 0x22, 0x00
vertex 178, 2, -39, 0, 0, 0x0D, 0x7E, 0x00, 0x00
vertex 47, 4, -47, 0, 0, 0xFE, 0x7C, 0xE5, 0xFF
vertex 53, 14, -7, 0, 0, 0xFF, 0x7F, 0x02, 0xFF
vertex 27, 9, -16, 0, 0, 0xF1, 0x7D, 0x06, 0xFF
vertex 0, 5, -32, 0, 0, 0xF0, 0x7D, 0xFD, 0xFF
vertex -4, -6, 64, 0, 0, 0xF7, 0x7C, 0x14, 0xFF
vertex 53, -8, 58, 0, 0, 0xFA, 0x79, 0x25, 0xFF
birds_seg5_vertex_050001F8: # 0x050001F8
vertex 69, 4, -40, 0, 0, 0x40, 0x26, 0x9A, 0x00
vertex 78, -51, -21, 0, 0, 0x27, 0xAE, 0xA8, 0x00
vertex -1, 0, -56, 0, 0, 0xF4, 0xC6, 0x90, 0x00
vertex 69, 4, 40, 0, 0, 0x40, 0x26, 0x66, 0xFF
vertex 10, 48, 56, 0, 0, 0xEF, 0x41, 0x6B, 0xFF
vertex -1, 0, 56, 0, 0, 0xF4, 0xC6, 0x70, 0xFF
vertex -88, 21, 0, 0, 0, 0xAA, 0x5D, 0x00, 0xFF
vertex -103, -10, -11, 0, 0, 0xA7, 0x30, 0xB4, 0xFF
vertex -103, -10, 11, 0, 0, 0xA7, 0x30, 0x4C, 0xFF
vertex 83, -57, 0, 0, 0, 0xDD, 0x87, 0x00, 0xFF
vertex -9, -30, 0, 0, 0, 0xE0, 0x86, 0x00, 0xFF
vertex 113, 0, -10, 0, 0, 0x4E, 0x32, 0xAB, 0xFF
vertex 113, 0, 10, 0, 0, 0x4E, 0x32, 0x55, 0xFF
vertex 78, -51, 21, 0, 0, 0x27, 0xAE, 0x58, 0xFF
vertex -103, -10, 11, 0, 0, 0xEA, 0x88, 0x1F, 0xFF
vertex 113, -23, 0, 0, 0, 0x62, 0xB0, 0x00, 0xFF
birds_seg5_vertex_050002F8: # 0x050002F8
vertex 83, -57, 0, 0, 0, 0x60, 0xAD, 0x00, 0xFF
vertex 113, -23, 0, 0, 0, 0x62, 0xB0, 0x00, 0x00
vertex 78, -51, 21, 0, 0, 0x27, 0xAE, 0x58, 0x00
vertex 78, -51, -21, 0, 0, 0x27, 0xAE, 0xA8, 0xFF
vertex -103, -10, -11, 0, 0, 0xA7, 0x30, 0xB4, 0xFF
vertex -88, 21, 0, 0, 0, 0xAA, 0x5D, 0x00, 0xFF
vertex 10, 48, -56, 0, 0, 0xEF, 0x41, 0x95, 0xFF
vertex -1, 0, -56, 0, 0, 0xF4, 0xC6, 0x90, 0xFF
vertex 10, 48, 56, 0, 0, 0xEF, 0x41, 0x6B, 0xFF
vertex -103, -10, 11, 0, 0, 0xA7, 0x30, 0x4C, 0xFF
vertex -103, -10, -11, 0, 0, 0xEA, 0x88, 0xE1, 0xFF
vertex -9, -30, 0, 0, 0, 0xE0, 0x86, 0x00, 0xFF
vertex -103, -10, 11, 0, 0, 0xEA, 0x88, 0x1F, 0xFF
vertex 83, -57, 0, 0, 0, 0xDD, 0x87, 0x00, 0xFF
vertex -1, 0, 56, 0, 0, 0xF4, 0xC6, 0x70, 0xFF
vertex 69, 4, -40, 0, 0, 0x40, 0x26, 0x9A, 0xFF
birds_seg5_vertex_050003F8: # 0x050003F8
vertex -1, 0, 56, 0, 0, 0xF4, 0xC6, 0x70, 0xFF
vertex 78, -51, 21, 0, 0, 0x27, 0xAE, 0x58, 0x00
vertex 69, 4, 40, 0, 0, 0x40, 0x26, 0x66, 0x00
birds_seg5_vertex_05000428: # 0x05000428
vertex 69, 4, -40, 0, 0, 0x40, 0x26, 0x9A, 0x00
vertex 10, 48, -56, 0, 0, 0xEF, 0x41, 0x95, 0x00
vertex 18, 78, 0, 0, 0, 0x54, 0x5E, 0x00, 0x00
vertex 10, 48, 56, 0, 0, 0xEF, 0x41, 0x6B, 0xFF
vertex 18, 78, 0, 0, 0, 0xC4, 0x6F, 0x00, 0xFF
vertex -88, 21, 0, 0, 0, 0xAA, 0x5D, 0x00, 0xFF
vertex 113, 0, -10, 0, 0, 0x4E, 0x32, 0xAB, 0xFF
vertex 69, 33, 0, 0, 0, 0x4B, 0x65, 0x00, 0xFF
vertex 113, 0, 10, 0, 0, 0x4E, 0x32, 0x55, 0xFF
vertex 69, 4, 40, 0, 0, 0x40, 0x26, 0x66, 0xFF
birds_seg5_vertex_050004C8: # 0x050004C8
vertex 113, -23, 0, 0, 0, 0x62, 0xB0, 0x00, 0x00
vertex 113, 0, -10, 0, 0, 0x4E, 0x32, 0xAB, 0x00
vertex 143, -2, 0, 0, 0, 0x24, 0xCB, 0x93, 0x00
vertex 113, 0, 10, 0, 0, 0x4E, 0x32, 0x55, 0xFF
vertex 143, -2, 0, 0, 0, 0x24, 0xCB, 0x6D, 0xFF
vertex 143, -2, 0, 0, 0, 0x07, 0x7E, 0x00, 0xFF
glabel birds_seg5_dl_05000528 # 0x05000528 - 0x05000598
gsSPLight birds_seg5_light_05000008, 1
gsSPLight birds_seg5_light_05000000, 2
gsSPVertex birds_seg5_vertex_05000048, 9, 0
gsSP2Triangles 0, 1, 2, 0x0, 2, 3, 0, 0x0
gsSP2Triangles 4, 3, 2, 0x0, 5, 3, 6, 0x0
gsSP2Triangles 4, 7, 8, 0x0, 4, 8, 6, 0x0
gsSP2Triangles 6, 8, 5, 0x0, 6, 3, 4, 0x0
gsSP2Triangles 2, 1, 7, 0x0, 2, 7, 4, 0x0
gsSPEndDisplayList
glabel birds_seg5_dl_05000598 # 0x05000598 - 0x05000600
gsSPLight birds_seg5_light_05000008, 1
gsSPLight birds_seg5_light_05000000, 2
gsSPVertex birds_seg5_vertex_050000D8, 3, 0
gsSP1Triangle 0, 1, 2, 0x0
gsSPLight birds_seg5_light_05000008, 1
gsSPLight birds_seg5_light_05000000, 2
gsSPVertex birds_seg5_vertex_05000108, 3, 0
gsSP1Triangle 0, 1, 2, 0x0
gsSPLight birds_seg5_light_05000008, 1
gsSPLight birds_seg5_light_05000000, 2
gsSPVertex birds_seg5_vertex_05000138, 3, 0
gsSP1Triangle 0, 1, 2, 0x0
gsSPEndDisplayList
glabel birds_seg5_dl_05000600 # 0x05000600 - 0x05000670
gsSPLight birds_seg5_light_05000008, 1
gsSPLight birds_seg5_light_05000000, 2
gsSPVertex birds_seg5_vertex_05000168, 9, 0
gsSP2Triangles 0, 1, 2, 0x0, 2, 3, 0, 0x0
gsSP2Triangles 0, 3, 4, 0x0, 5, 3, 6, 0x0
gsSP2Triangles 5, 7, 8, 0x0, 5, 8, 4, 0x0
gsSP2Triangles 6, 7, 5, 0x0, 4, 3, 5, 0x0
gsSP2Triangles 4, 8, 1, 0x0, 4, 1, 0, 0x0
gsSPEndDisplayList
glabel birds_seg5_dl_05000670 # 0x05000670 - 0x050007E0
gsSPLight birds_seg5_light_05000008, 1
gsSPLight birds_seg5_light_05000000, 2
gsSPVertex birds_seg5_vertex_050001F8, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 1, 9, 10, 0x0
gsSP2Triangles 1, 0, 11, 0x0, 12, 3, 13, 0x0
gsSP2Triangles 8, 5, 4, 0x0, 5, 14, 10, 0x0
gsSP2Triangles 13, 15, 12, 0x0, 11, 15, 1, 0x0
gsSPVertex birds_seg5_vertex_050002F8, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 1, 0, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 6, 7, 4, 0x0
gsSP2Triangles 8, 5, 9, 0x0, 10, 7, 11, 0x0
gsSP2Triangles 11, 12, 10, 0x0, 11, 13, 2, 0x0
gsSP2Triangles 2, 14, 11, 0x0, 11, 7, 3, 0x0
gsSP1Triangle 7, 6, 15, 0x0
gsSPVertex birds_seg5_vertex_050003F8, 3, 0
gsSP1Triangle 0, 1, 2, 0x0
gsSPLight birds_seg5_light_05000038, 1
gsSPLight birds_seg5_light_05000030, 2
gsSPVertex birds_seg5_vertex_05000428, 10, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 0, 7, 0x0, 7, 8, 6, 0x0
gsSP2Triangles 9, 7, 2, 0x0, 2, 7, 0, 0x0
gsSP2Triangles 2, 3, 9, 0x0, 7, 9, 8, 0x0
gsSP1Triangle 5, 4, 1, 0x0
gsSPLight birds_seg5_light_05000020, 1
gsSPLight birds_seg5_light_05000018, 2
gsSPVertex birds_seg5_vertex_050004C8, 6, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 0, 4, 0x0
gsSP1Triangle 1, 3, 5, 0x0
gsSPEndDisplayList
birds_seg5_animvalue_050007E0: # 0x050007E0
.hword 0x0000, 0x0013, 0x0017, 0x001A, 0x001E, 0x0022, 0x0020, 0x001A
.hword 0xFFFF, 0x3FFF, 0x0888, 0x0695, 0x024C, 0xFE04, 0xFC12, 0xFF4D
.hword 0x054D, 0x0000, 0xFF6C, 0xFE24, 0xFCDD, 0xFC48, 0xFD3F, 0xFF0A
.hword 0x31C6, 0x228D, 0x010E, 0xDF90, 0xD056, 0xE999, 0x1883, 0x8001
.hword 0x7F50, 0x7EC6, 0x7F88, 0x80B3, 0x816F, 0x80C8, 0xF778, 0xF8AE
.hword 0xFB59, 0xFE04, 0xFF3A, 0xFD37, 0xF97B, 0x0000, 0x0098, 0x01E8
.hword 0x0339, 0x03D1, 0x02D4, 0x00FD, 0x31C6, 0x22A8, 0x0165, 0xE023
.hword 0xD104, 0xEA1A, 0x18B0, 0x3FFF, 0x3FFF, 0xC001, 0x3FFF, 0xC001
.hword 0x3FFF, 0x8001, 0x7F50, 0x7EC6, 0x7F88, 0x80B3, 0x816F, 0x80C8
birds_seg5_animindex_5000870: # 0x05000870
.hword 0x0001, 0x0000, 0x0007, 0x0001, 0x0001, 0x0008, 0x0001, 0x0000
.hword 0x0001, 0x0009, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0007, 0x0041, 0x0001, 0x003E, 0x0001, 0x003F, 0x0001, 0x0040
.hword 0x0007, 0x000A, 0x0007, 0x0011, 0x0007, 0x0018, 0x0001, 0x003B
.hword 0x0001, 0x003C, 0x0001, 0x003D, 0x0007, 0x0026, 0x0007, 0x002D
.hword 0x0007, 0x0034, 0x0001, 0x0000, 0x0001, 0x0000, 0x0007, 0x001F
birds_seg5_anim_050008D0: # 0x050008D0
.hword 0
.hword 0
.hword 0
.hword 0
.hword 0x07
.hword 0x07
.word birds_seg5_animvalue_050007E0
.word birds_seg5_animindex_5000870
.word 0
birds_seg5_animvalue_050008E8: # 0x050008E8
.hword 0x0000, 0x001A, 0x001B, 0x001B, 0x001B, 0x001B, 0x001B, 0x001B
.hword 0x001A, 0xFFFF, 0x3FFF, 0x024C, 0x0246, 0x023A, 0x0234, 0x0238
.hword 0x0240, 0x0249, 0x024C, 0xFE24, 0xFE1D, 0xFE0F, 0xFE07, 0xFE0C
.hword 0xFE16, 0xFE20, 0xFE24, 0x010E, 0x0195, 0x0290, 0x0317, 0x02C6
.hword 0x0212, 0x015F, 0x010E, 0x7EC6, 0xFB59, 0xFB5E, 0xFB68, 0xFB6D
.hword 0xFB6A, 0xFB63, 0xFB5C, 0xFB59, 0x01E8, 0x01F5, 0x020B, 0x0218
.hword 0x0210, 0x0200, 0x01F0, 0x01E8, 0x0165, 0x01D1, 0x0299, 0x0304
.hword 0x02C3, 0x0235, 0x01A6, 0x0165, 0x3FFF, 0x3FFF, 0xC001, 0x3FFF
.hword 0xC001, 0x3FFF, 0x7EC6, 0x0000
birds_seg5_animindex_5000970: # 0x05000970
.hword 0x0001, 0x0000, 0x0008, 0x0001, 0x0001, 0x0009, 0x0001, 0x0000
.hword 0x0001, 0x000A, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0042, 0x0001, 0x003F, 0x0001, 0x0040, 0x0001, 0x0041
.hword 0x0008, 0x000B, 0x0008, 0x0013, 0x0008, 0x001B, 0x0001, 0x003C
.hword 0x0001, 0x003D, 0x0001, 0x003E, 0x0008, 0x0024, 0x0008, 0x002C
.hword 0x0008, 0x0034, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0023
birds_seg5_anim_050009D0: # 0x050009D0
.hword 0
.hword 0
.hword 0
.hword 0
.hword 0x08
.hword 0x07
.word birds_seg5_animvalue_050008E8
.word birds_seg5_animindex_5000970
.word 0
glabel birds_seg5_anims_050009E8 # 0x050009E8
.word birds_seg5_anim_050008D0
.word birds_seg5_anim_050009D0

View file

@ -0,0 +1,2 @@
# Blargg (Unused)

18
actors/blargg/geo.s Normal file
View file

@ -0,0 +1,18 @@
glabel blargg_geo # 0x0C000240
geo_scale 0x00, 16384
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, blargg_seg5_dl_05005D00
geo_open_node
geo_animated_part LAYER_OPAQUE, 306, 0, 0, blargg_seg5_dl_05005A60
geo_open_node
geo_animated_part LAYER_OPAQUE, 6, 3, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, blargg_seg5_dl_050058D0
geo_close_node
geo_close_node
geo_close_node
geo_close_node
geo_close_node
geo_end

545
actors/blargg/model.s Normal file
View file

@ -0,0 +1,545 @@
# Blargg (Unused)
# Unreferenced light
.byte 0x3F, 0x3F, 0x3F, 0x00, 0x3F, 0x3F, 0x3F, 0x00
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
blargg_seg5_light_05004740: # 0x05004740
.byte 0x3F, 0x0D, 0x05, 0x00, 0x3F, 0x0D, 0x05, 0x00
blargg_seg5_light_05004748: # 0x05004748
.byte 0xFF, 0x36, 0x16, 0x00, 0xFF, 0x36, 0x16, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
blargg_seg5_light_05004758: # 0x05004758
.byte 0x2C, 0x2C, 0x2C, 0x00, 0x2C, 0x2C, 0x2C, 0x00
blargg_seg5_light_05004760: # 0x05004760
.byte 0xB2, 0xB2, 0xB2, 0x00, 0xB2, 0xB2, 0xB2, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
blargg_seg5_light_05004770: # 0x05004770
.byte 0x3F, 0x0A, 0x06, 0x00, 0x3F, 0x0A, 0x06, 0x00
blargg_seg5_light_05004778: # 0x05004778
.byte 0xFF, 0x2A, 0x1A, 0x00, 0xFF, 0x2A, 0x1A, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
blargg_seg5_light_05004788: # 0x05004788
.byte 0x3F, 0x0B, 0x07, 0x00, 0x3F, 0x0B, 0x07, 0x00
blargg_seg5_light_05004790: # 0x05004790
.byte 0xFF, 0x2E, 0x1F, 0x00, 0xFF, 0x2E, 0x1F, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
blargg_seg5_vertex_050047A0: # 0x050047A0
vertex 378, -178, -92, 0, 0, 0x32, 0xE7, 0x8F, 0x00
vertex 298, -166, -131, 0, 0, 0x32, 0xE7, 0x8F, 0x00
vertex 306, -56, -152, 0, 0, 0x32, 0xE7, 0x8F, 0x00
vertex 417, -73, -99, 0, 0, 0x32, 0xE7, 0x8F, 0x00
vertex 298, -166, -131, 0, 0, 0x8D, 0xFF, 0xCB, 0x00
vertex 280, -163, -94, 0, 0, 0x8D, 0xFF, 0xCB, 0x00
vertex 276, -51, -88, 0, 0, 0x8D, 0xFF, 0xCB, 0x00
vertex 306, -56, -152, 0, 0, 0x8D, 0xFF, 0xCB, 0x00
vertex 280, -163, -94, 0, 0, 0xC9, 0xF7, 0x71, 0x00
vertex 361, -176, -56, 0, 0, 0xC9, 0xF7, 0x71, 0x00
vertex 387, -68, -35, 0, 0, 0xC9, 0xF7, 0x71, 0x00
vertex 276, -51, -88, 0, 0, 0xC9, 0xF7, 0x71, 0x00
vertex 361, -176, -56, 0, 0, 0x6D, 0xDC, 0x35, 0x00
vertex 378, -178, -92, 0, 0, 0x6D, 0xDC, 0x35, 0x00
vertex 417, -73, -99, 0, 0, 0x6D, 0xDC, 0x35, 0x00
vertex 387, -68, -35, 0, 0, 0x6D, 0xDC, 0x35, 0x00
blargg_seg5_vertex_050048A0: # 0x050048A0
vertex 361, -176, -56, 0, 0, 0xED, 0x83, 0x00, 0x00
vertex 280, -163, -94, 0, 0, 0xED, 0x83, 0x00, 0x00
vertex 298, -166, -131, 0, 0, 0xED, 0x83, 0x00, 0x00
vertex 378, -178, -92, 0, 0, 0xED, 0x83, 0x00, 0x00
vertex 417, -73, 99, 0, 0, 0x32, 0xE7, 0x71, 0x00
vertex 306, -56, 152, 0, 0, 0x32, 0xE7, 0x71, 0x00
vertex 298, -166, 131, 0, 0, 0x32, 0xE7, 0x71, 0x00
vertex 378, -178, 92, 0, 0, 0x32, 0xE7, 0x71, 0x00
vertex 306, -56, 152, 0, 0, 0x8D, 0xFF, 0x35, 0x00
vertex 276, -51, 88, 0, 0, 0x8D, 0xFF, 0x35, 0x00
vertex 280, -163, 94, 0, 0, 0x8D, 0xFF, 0x35, 0x00
vertex 298, -166, 131, 0, 0, 0x8D, 0xFF, 0x35, 0x00
vertex 276, -51, 88, 0, 0, 0xC9, 0xF7, 0x8F, 0x00
vertex 387, -68, 35, 0, 0, 0xC9, 0xF7, 0x8F, 0x00
vertex 361, -176, 56, 0, 0, 0xC9, 0xF7, 0x8F, 0x00
vertex 280, -163, 94, 0, 0, 0xC9, 0xF7, 0x8F, 0x00
blargg_seg5_vertex_050049A0: # 0x050049A0
vertex 387, -68, 35, 0, 0, 0x6D, 0xDC, 0xCB, 0x00
vertex 417, -73, 99, 0, 0, 0x6D, 0xDC, 0xCB, 0x00
vertex 378, -178, 92, 0, 0, 0x6D, 0xDC, 0xCB, 0x00
vertex 361, -176, 56, 0, 0, 0x6D, 0xDC, 0xCB, 0x00
vertex 378, -178, 92, 0, 0, 0xED, 0x83, 0x00, 0x00
vertex 298, -166, 131, 0, 0, 0xED, 0x83, 0x00, 0x00
vertex 280, -163, 94, 0, 0, 0xED, 0x83, 0x00, 0x00
vertex 361, -176, 56, 0, 0, 0xED, 0x83, 0x00, 0x00
blargg_seg5_vertex_05004A20: # 0x05004A20
vertex 556, -10, -56, 0, 0, 0x6E, 0x37, 0xE5, 0x00
vertex 556, -10, 56, 0, 0, 0x6E, 0x37, 0x1B, 0x00
vertex 556, -128, 120, 0, 0, 0x6B, 0x0F, 0x42, 0x00
vertex 556, -128, -120, 0, 0, 0x6B, 0x0F, 0xBE, 0x00
vertex 111, 99, 96, 0, 0, 0xD4, 0x72, 0x1F, 0x00
vertex 111, 99, -96, 0, 0, 0xE5, 0x71, 0xCE, 0x00
vertex -73, -8, -90, 0, 0, 0xC3, 0x67, 0xD8, 0x00
vertex -73, -8, 90, 0, 0, 0xCE, 0x54, 0x50, 0x00
vertex 556, -128, -120, 0, 0, 0xE9, 0x84, 0x00, 0x00
vertex 556, -128, 120, 0, 0, 0xE9, 0x84, 0x00, 0x00
vertex 318, -84, 267, 0, 0, 0xE9, 0x84, 0x00, 0x00
vertex -73, -8, 90, 0, 0, 0xE9, 0x84, 0x00, 0x00
vertex -73, -8, -90, 0, 0, 0xE9, 0x84, 0x00, 0x00
vertex 318, -84, -267, 0, 0, 0xE9, 0x84, 0x00, 0x00
vertex 410, 80, 203, 0, 0, 0x27, 0x66, 0x40, 0x00
vertex 410, 80, -203, 0, 0, 0x35, 0x58, 0xB7, 0x00
blargg_seg5_vertex_05004B20: # 0x05004B20
vertex 111, 99, -96, 0, 0, 0xE5, 0x71, 0xCE, 0x00
vertex 410, 80, -203, 0, 0, 0x35, 0x58, 0xB7, 0x00
vertex 318, -84, -267, 0, 0, 0xFF, 0x2D, 0x8A, 0x00
vertex -73, -8, -90, 0, 0, 0xC3, 0x67, 0xD8, 0x00
vertex 410, 80, 203, 0, 0, 0x27, 0x66, 0x40, 0x00
vertex 111, 99, 96, 0, 0, 0xD4, 0x72, 0x1F, 0x00
vertex -73, -8, 90, 0, 0, 0xCE, 0x54, 0x50, 0x00
vertex 318, -84, 267, 0, 0, 0x11, 0x25, 0x78, 0x00
vertex 556, -128, -120, 0, 0, 0x6B, 0x0F, 0xBE, 0x00
vertex 556, -10, 56, 0, 0, 0x6E, 0x37, 0x1B, 0x00
vertex 556, -10, -56, 0, 0, 0x6E, 0x37, 0xE5, 0x00
vertex 556, -128, 120, 0, 0, 0x6B, 0x0F, 0x42, 0x00
blargg_seg5_vertex_05004BE0: # 0x05004BE0
vertex 524, 82, 92, 0, 0, 0x36, 0x10, 0x71, 0x00
vertex 443, 83, 131, 0, 0, 0x36, 0x10, 0x71, 0x00
vertex 432, -25, 152, 0, 0, 0x36, 0x10, 0x71, 0x00
vertex 544, -28, 99, 0, 0, 0x36, 0x10, 0x71, 0x00
vertex 443, 83, 131, 0, 0, 0x8F, 0x15, 0x35, 0x00
vertex 425, 84, 94, 0, 0, 0x8F, 0x15, 0x35, 0x00
vertex 401, -25, 88, 0, 0, 0x8F, 0x15, 0x35, 0x00
vertex 432, -25, 152, 0, 0, 0x8F, 0x15, 0x35, 0x00
vertex 425, 84, 94, 0, 0, 0xCB, 0x12, 0x8F, 0x00
vertex 507, 82, 56, 0, 0, 0xCB, 0x12, 0x8F, 0x00
vertex 513, -27, 35, 0, 0, 0xCB, 0x12, 0x8F, 0x00
vertex 401, -25, 88, 0, 0, 0xCB, 0x12, 0x8F, 0x00
vertex 507, 82, 56, 0, 0, 0x71, 0x10, 0xCB, 0x00
vertex 524, 82, 92, 0, 0, 0x71, 0x10, 0xCB, 0x00
vertex 544, -28, 99, 0, 0, 0x71, 0x10, 0xCB, 0x00
vertex 513, -27, 35, 0, 0, 0x71, 0x10, 0xCB, 0x00
blargg_seg5_vertex_05004CE0: # 0x05004CE0
vertex 507, 82, 56, 0, 0, 0x02, 0x7F, 0x00, 0x00
vertex 425, 84, 94, 0, 0, 0x02, 0x7F, 0x00, 0x00
vertex 443, 83, 131, 0, 0, 0x02, 0x7F, 0x00, 0x00
vertex 524, 82, 92, 0, 0, 0x02, 0x7F, 0x00, 0x00
vertex 544, -28, -99, 0, 0, 0x36, 0x10, 0x8F, 0x00
vertex 432, -25, -152, 0, 0, 0x36, 0x10, 0x8F, 0x00
vertex 443, 83, -131, 0, 0, 0x36, 0x10, 0x8F, 0x00
vertex 524, 82, -92, 0, 0, 0x36, 0x10, 0x8F, 0x00
vertex 432, -25, -152, 0, 0, 0x8F, 0x15, 0xCB, 0x00
vertex 401, -25, -88, 0, 0, 0x8F, 0x15, 0xCB, 0x00
vertex 425, 84, -94, 0, 0, 0x8F, 0x15, 0xCB, 0x00
vertex 443, 83, -131, 0, 0, 0x8F, 0x15, 0xCB, 0x00
vertex 401, -25, -88, 0, 0, 0xCB, 0x12, 0x71, 0x00
vertex 513, -27, -35, 0, 0, 0xCB, 0x12, 0x71, 0x00
vertex 507, 82, -56, 0, 0, 0xCB, 0x12, 0x71, 0x00
vertex 425, 84, -94, 0, 0, 0xCB, 0x12, 0x71, 0x00
blargg_seg5_vertex_05004DE0: # 0x05004DE0
vertex 513, -27, -35, 0, 0, 0x71, 0x10, 0x35, 0x00
vertex 544, -28, -99, 0, 0, 0x71, 0x10, 0x35, 0x00
vertex 524, 82, -92, 0, 0, 0x71, 0x10, 0x35, 0x00
vertex 507, 82, -56, 0, 0, 0x71, 0x10, 0x35, 0x00
vertex 524, 82, -92, 0, 0, 0x02, 0x7F, 0x00, 0x00
vertex 443, 83, -131, 0, 0, 0x02, 0x7F, 0x00, 0x00
vertex 425, 84, -94, 0, 0, 0x02, 0x7F, 0x00, 0x00
vertex 507, 82, -56, 0, 0, 0x02, 0x7F, 0x00, 0x00
blargg_seg5_vertex_05004E60: # 0x05004E60
vertex 617, 23, -154, 0, 0, 0x6B, 0xDF, 0xC5, 0x00
vertex 571, -260, 0, 0, 0, 0x7A, 0xDD, 0x00, 0x00
vertex 555, -242, -127, 0, 0, 0x43, 0xBA, 0xB0, 0x00
vertex 2, -334, -93, 0, 0, 0x00, 0x8A, 0xD3, 0x00
vertex 78, -245, -177, 0, 0, 0x21, 0xBC, 0x9B, 0x00
vertex 130, -287, 0, 0, 0, 0x58, 0xA6, 0xFC, 0x00
vertex 571, -260, 0, 0, 0, 0x11, 0x83, 0x00, 0x00
vertex 261, -308, 0, 0, 0, 0xD4, 0x8A, 0xFF, 0x00
vertex 295, -262, -175, 0, 0, 0xEE, 0xA3, 0xAD, 0x00
vertex -88, 24, -119, 0, 0, 0x00, 0x7F, 0x00, 0x00
vertex -88, 24, 119, 0, 0, 0x01, 0x7F, 0x00, 0x00
vertex 326, 21, 307, 0, 0, 0x00, 0x7F, 0x00, 0x00
vertex 617, 23, 154, 0, 0, 0x00, 0x7F, 0x00, 0x00
vertex 662, 23, 0, 0, 0, 0x00, 0x7F, 0x00, 0x00
vertex 617, 23, -154, 0, 0, 0x00, 0x7F, 0xFF, 0x00
vertex 326, 21, -307, 0, 0, 0x00, 0x7F, 0xFE, 0x00
blargg_seg5_vertex_05004F60: # 0x05004F60
vertex 326, 21, 307, 0, 0, 0x00, 0xD6, 0x77, 0x00
vertex 295, -262, 175, 0, 0, 0xF1, 0xA2, 0x53, 0x00
vertex 555, -242, 127, 0, 0, 0x43, 0xBA, 0x50, 0x00
vertex 78, -245, -177, 0, 0, 0x21, 0xBC, 0x9B, 0x00
vertex 2, -334, -93, 0, 0, 0x00, 0x8A, 0xD3, 0x00
vertex -55, -257, -162, 0, 0, 0xD2, 0xC1, 0x9D, 0x00
vertex 2, -334, 93, 0, 0, 0xF8, 0x88, 0x25, 0x00
vertex -58, -257, 160, 0, 0, 0xCA, 0xC0, 0x5E, 0x00
vertex -107, -275, 91, 0, 0, 0x9C, 0xC1, 0x2C, 0x00
vertex 617, 23, 154, 0, 0, 0x6B, 0xDF, 0x3B, 0x00
vertex 326, 21, -307, 0, 0, 0xFF, 0xD5, 0x89, 0x00
vertex 617, 23, -154, 0, 0, 0x6B, 0xDF, 0xC5, 0x00
vertex 555, -242, -127, 0, 0, 0x43, 0xBA, 0xB0, 0x00
vertex 295, -262, -175, 0, 0, 0xEE, 0xA3, 0xAD, 0x00
vertex 140, -168, 171, 0, 0, 0xD0, 0xD3, 0x6C, 0x00
blargg_seg5_vertex_05005050: # 0x05005050
vertex 161, -168, -171, 0, 0, 0xCE, 0xD4, 0x95, 0x00
vertex -88, 24, -119, 0, 0, 0xEB, 0x06, 0x83, 0x00
vertex 326, 21, -307, 0, 0, 0xFF, 0xD5, 0x89, 0x00
vertex -88, 24, 119, 0, 0, 0x88, 0x1B, 0x1E, 0x00
vertex -88, 24, -119, 0, 0, 0x88, 0x1B, 0xE2, 0x00
vertex -158, -149, 0, 0, 0, 0x81, 0x00, 0x00, 0x00
vertex -62, -140, -183, 0, 0, 0xC2, 0x01, 0x92, 0x00
vertex 261, -308, 0, 0, 0, 0xD4, 0x8A, 0xFF, 0x00
vertex 295, -262, 175, 0, 0, 0xF1, 0xA2, 0x53, 0x00
vertex 140, -168, 171, 0, 0, 0xD0, 0xD3, 0x6C, 0x00
vertex -62, -140, 183, 0, 0, 0xC1, 0x01, 0x6D, 0x00
vertex -55, -257, -162, 0, 0, 0xD2, 0xC1, 0x9D, 0x00
vertex 2, -334, -93, 0, 0, 0x00, 0x8A, 0xD3, 0x00
vertex -107, -275, -91, 0, 0, 0xA1, 0xB6, 0xDB, 0x00
vertex 2, -334, 93, 0, 0, 0xF8, 0x88, 0x25, 0x00
vertex -107, -275, 91, 0, 0, 0x9C, 0xC1, 0x2C, 0x00
blargg_seg5_vertex_05005150: # 0x05005150
vertex -88, 24, 119, 0, 0, 0xEC, 0x09, 0x7C, 0x00
vertex -62, -140, 183, 0, 0, 0xC1, 0x01, 0x6D, 0x00
vertex 140, -168, 171, 0, 0, 0xD0, 0xD3, 0x6C, 0x00
vertex 78, -245, -177, 0, 0, 0x21, 0xBC, 0x9B, 0x00
vertex 161, -168, -171, 0, 0, 0x6F, 0xC7, 0xED, 0x00
vertex 130, -287, 0, 0, 0, 0x58, 0xA6, 0xFC, 0x00
vertex -58, -257, 160, 0, 0, 0xCA, 0xC0, 0x5E, 0x00
vertex 2, -334, 93, 0, 0, 0xF8, 0x88, 0x25, 0x00
vertex 78, -280, 177, 0, 0, 0x20, 0xB7, 0x62, 0x00
vertex -62, -140, -183, 0, 0, 0xC2, 0x01, 0x92, 0x00
vertex -88, 24, -119, 0, 0, 0xEB, 0x06, 0x83, 0x00
vertex 161, -168, -171, 0, 0, 0xCE, 0xD4, 0x95, 0x00
vertex 326, 21, 307, 0, 0, 0x00, 0xD6, 0x77, 0x00
vertex 326, 21, -307, 0, 0, 0xFF, 0xD5, 0x89, 0x00
vertex 295, -262, -175, 0, 0, 0xEE, 0xA3, 0xAD, 0x00
vertex 2, -334, -93, 0, 0, 0x00, 0x8A, 0xD3, 0x00
blargg_seg5_vertex_05005250: # 0x05005250
vertex 161, -168, -171, 0, 0, 0x6F, 0xC7, 0xED, 0x00
vertex 140, -168, 171, 0, 0, 0x76, 0xD8, 0x15, 0x00
vertex 130, -287, 0, 0, 0, 0x58, 0xA6, 0xFC, 0x00
vertex 78, -280, 177, 0, 0, 0x20, 0xB7, 0x62, 0x00
vertex -55, -257, -162, 0, 0, 0xD2, 0xC1, 0x9D, 0x00
vertex -62, -140, -183, 0, 0, 0xC2, 0x01, 0x92, 0x00
vertex 78, -245, -177, 0, 0, 0x21, 0xBC, 0x9B, 0x00
vertex -107, -275, -91, 0, 0, 0xA1, 0xB6, 0xDB, 0x00
vertex -158, -149, 0, 0, 0, 0x81, 0x00, 0x00, 0x00
vertex -107, -275, 91, 0, 0, 0x9C, 0xC1, 0x2C, 0x00
vertex -58, -257, 160, 0, 0, 0xCA, 0xC0, 0x5E, 0x00
vertex -62, -140, 183, 0, 0, 0xC1, 0x01, 0x6D, 0x00
vertex 617, 23, -154, 0, 0, 0x6B, 0xDF, 0xC5, 0x00
vertex 662, 23, 0, 0, 0, 0x78, 0xD9, 0x00, 0x00
vertex 571, -260, 0, 0, 0, 0x7A, 0xDD, 0x00, 0x00
blargg_seg5_vertex_05005340: # 0x05005340
vertex 617, 23, 154, 0, 0, 0x6B, 0xDF, 0x3B, 0x00
vertex 555, -242, 127, 0, 0, 0x43, 0xBA, 0x50, 0x00
vertex 571, -260, 0, 0, 0, 0x7A, 0xDD, 0x00, 0x00
vertex 571, -260, 0, 0, 0, 0x11, 0x83, 0x00, 0x00
vertex 295, -262, 175, 0, 0, 0xF1, 0xA2, 0x53, 0x00
vertex 261, -308, 0, 0, 0, 0xD4, 0x8A, 0xFF, 0x00
vertex 161, -168, -171, 0, 0, 0xCE, 0xD4, 0x95, 0x00
vertex 295, -262, -175, 0, 0, 0xEE, 0xA3, 0xAD, 0x00
vertex 140, -168, 171, 0, 0, 0xD0, 0xD3, 0x6C, 0x00
vertex 662, 23, 0, 0, 0, 0x78, 0xD9, 0x00, 0x00
blargg_seg5_vertex_050053E0: # 0x050053E0
vertex -243, -48, -45, 0, 0, 0xF9, 0xF0, 0x83, 0x00
vertex -104, -120, -43, 0, 0, 0xFA, 0xF0, 0x83, 0x00
vertex -200, -235, -23, 0, 0, 0xF9, 0xF0, 0x83, 0x00
vertex -298, -186, -23, 0, 0, 0xF8, 0xF0, 0x83, 0x00
vertex -104, -120, -43, 0, 0, 0x61, 0xAF, 0x00, 0x00
vertex -104, -120, 47, 0, 0, 0x61, 0xAF, 0x00, 0x00
vertex -200, -235, 23, 0, 0, 0x61, 0xAF, 0x00, 0x00
vertex -200, -235, -23, 0, 0, 0x61, 0xAF, 0x00, 0x00
vertex -104, -120, 47, 0, 0, 0xF7, 0xEF, 0x7D, 0x00
vertex -243, -48, 45, 0, 0, 0xF7, 0xF1, 0x7D, 0x00
vertex -298, -186, 23, 0, 0, 0xF7, 0xEF, 0x7D, 0x00
vertex -200, -235, 23, 0, 0, 0xF7, 0xEE, 0x7D, 0x00
vertex -243, -48, 45, 0, 0, 0x8A, 0x2E, 0x00, 0x00
vertex -243, -48, -45, 0, 0, 0x8A, 0x2E, 0x00, 0x00
vertex -298, -186, -23, 0, 0, 0x8A, 0x2E, 0x00, 0x00
vertex -298, -186, 23, 0, 0, 0x8A, 0x2E, 0x00, 0x00
blargg_seg5_vertex_050054E0: # 0x050054E0
vertex -298, -186, -23, 0, 0, 0xC8, 0x8F, 0x00, 0x00
vertex -200, -235, -23, 0, 0, 0xC8, 0x8F, 0x00, 0x00
vertex -200, -235, 23, 0, 0, 0xC8, 0x8F, 0x00, 0x00
vertex -298, -186, 23, 0, 0, 0xC8, 0x8F, 0x00, 0x00
vertex -70, -105, -52, 0, 0, 0x01, 0xEE, 0x83, 0x00
vertex 113, -88, -52, 0, 0, 0x01, 0xEE, 0x83, 0x00
vertex 99, -262, -27, 0, 0, 0x01, 0xEE, 0x83, 0x00
vertex -24, -273, -27, 0, 0, 0x01, 0xEE, 0x83, 0x00
vertex 113, -88, -52, 0, 0, 0x7E, 0xF7, 0x00, 0x00
vertex 113, -88, 53, 0, 0, 0x7E, 0xF7, 0x00, 0x00
vertex 99, -262, 27, 0, 0, 0x7E, 0xF7, 0x00, 0x00
vertex 99, -262, -27, 0, 0, 0x7E, 0xF7, 0x00, 0x00
vertex 113, -88, 53, 0, 0, 0x01, 0xEE, 0x7D, 0x00
vertex -70, -105, 53, 0, 0, 0x01, 0xEE, 0x7D, 0x00
vertex -24, -273, 27, 0, 0, 0x01, 0xEE, 0x7D, 0x00
vertex 99, -262, 27, 0, 0, 0x01, 0xEE, 0x7D, 0x00
blargg_seg5_vertex_050055E0: # 0x050055E0
vertex -70, -105, 53, 0, 0, 0x86, 0xDF, 0x00, 0x00
vertex -70, -105, -52, 0, 0, 0x86, 0xDF, 0x00, 0x00
vertex -24, -273, -27, 0, 0, 0x86, 0xDF, 0x00, 0x00
vertex -24, -273, 27, 0, 0, 0x86, 0xDF, 0x00, 0x00
vertex -24, -273, -27, 0, 0, 0x0A, 0x82, 0x00, 0x00
vertex 99, -262, -27, 0, 0, 0x0A, 0x82, 0x00, 0x00
vertex 99, -262, 27, 0, 0, 0x0A, 0x82, 0x00, 0x00
vertex -24, -273, 27, 0, 0, 0x0A, 0x82, 0x00, 0x00
vertex 286, 227, -123, 0, 0, 0x73, 0xF4, 0xCE, 0x00
vertex 286, 227, 123, 0, 0, 0x73, 0xF4, 0x32, 0x00
vertex 288, -17, 53, 0, 0, 0x64, 0xC7, 0x34, 0x00
vertex 288, -17, -53, 0, 0, 0x64, 0xC7, 0xCC, 0x00
vertex -317, -48, 0, 0, 0, 0xAE, 0xA0, 0x00, 0x00
vertex -183, -17, 128, 0, 0, 0xD5, 0xC4, 0x66, 0x00
vertex -233, 107, 161, 0, 0, 0xD0, 0xD2, 0x6B, 0x00
vertex -396, 69, 0, 0, 0, 0xB6, 0xCD, 0x58, 0x00
blargg_seg5_vertex_050056E0: # 0x050056E0
vertex 127, -116, -102, 0, 0, 0x26, 0x96, 0xC8, 0x00
vertex 127, -116, 102, 0, 0, 0x26, 0x96, 0x38, 0x00
vertex -114, -139, 64, 0, 0, 0xE0, 0x92, 0x35, 0x00
vertex -114, -139, -64, 0, 0, 0xE0, 0x92, 0xCB, 0x00
vertex 133, 191, -247, 0, 0, 0x23, 0xDE, 0x8C, 0x00
vertex 286, 227, -123, 0, 0, 0x73, 0xF4, 0xCE, 0x00
vertex 288, -17, -53, 0, 0, 0x64, 0xC7, 0xCC, 0x00
vertex 146, 26, -196, 0, 0, 0x20, 0xCB, 0x92, 0x00
vertex 133, 191, 247, 0, 0, 0x23, 0xDE, 0x74, 0x00
vertex -233, 107, 161, 0, 0, 0xD0, 0xD2, 0x6B, 0x00
vertex -183, -17, 128, 0, 0, 0xD5, 0xC4, 0x66, 0x00
vertex 146, 26, 196, 0, 0, 0x20, 0xCB, 0x6E, 0x00
vertex -233, 107, -161, 0, 0, 0xD0, 0xD2, 0x95, 0x00
vertex -183, -17, -128, 0, 0, 0xD5, 0xC4, 0x9A, 0x00
vertex 288, -17, 53, 0, 0, 0x64, 0xC7, 0x34, 0x00
vertex -317, -48, 0, 0, 0, 0xAE, 0xA0, 0x00, 0x00
blargg_seg5_vertex_050057E0: # 0x050057E0
vertex 146, 26, 196, 0, 0, 0x20, 0xCB, 0x6E, 0x00
vertex 288, -17, 53, 0, 0, 0x64, 0xC7, 0x34, 0x00
vertex 286, 227, 123, 0, 0, 0x73, 0xF4, 0x32, 0x00
vertex 133, 191, 247, 0, 0, 0x23, 0xDE, 0x74, 0x00
vertex -114, -139, 64, 0, 0, 0xE0, 0x92, 0x35, 0x00
vertex -317, -48, 0, 0, 0, 0xAE, 0xA0, 0x00, 0x00
vertex -114, -139, -64, 0, 0, 0xE0, 0x92, 0xCB, 0x00
vertex 127, -116, 102, 0, 0, 0x26, 0x96, 0x38, 0x00
vertex 146, 26, -196, 0, 0, 0x20, 0xCB, 0x92, 0x00
vertex 288, -17, -53, 0, 0, 0x64, 0xC7, 0xCC, 0x00
vertex 127, -116, -102, 0, 0, 0x26, 0x96, 0xC8, 0x00
vertex -183, -17, -128, 0, 0, 0xD5, 0xC4, 0x9A, 0x00
vertex -396, 69, 0, 0, 0, 0xB6, 0xCD, 0xA8, 0x00
vertex -233, 107, -161, 0, 0, 0xD0, 0xD2, 0x95, 0x00
vertex -183, -17, 128, 0, 0, 0xD5, 0xC4, 0x66, 0x00
glabel blargg_seg5_dl_050058D0 # 0x050058D0 - 0x05005A60
gsSPLight blargg_seg5_light_05004760, 1
gsSPLight blargg_seg5_light_05004758, 2
gsSPVertex blargg_seg5_vertex_050047A0, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 10, 11, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 12, 14, 15, 0x0
gsSPVertex blargg_seg5_vertex_050048A0, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 10, 11, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 12, 14, 15, 0x0
gsSPVertex blargg_seg5_vertex_050049A0, 8, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSPLight blargg_seg5_light_05004748, 1
gsSPLight blargg_seg5_light_05004740, 2
gsSPVertex blargg_seg5_vertex_05004A20, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 10, 11, 0x0
gsSP2Triangles 8, 11, 12, 0x0, 8, 12, 13, 0x0
gsSP2Triangles 5, 4, 14, 0x0, 5, 14, 15, 0x0
gsSP1Triangle 1, 14, 2, 0x0
gsSPVertex blargg_seg5_vertex_05004B20, 12, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 1, 8, 2, 0x0, 4, 9, 10, 0x0
gsSP2Triangles 4, 10, 1, 0x0, 4, 7, 11, 0x0
gsSP1Triangle 1, 10, 8, 0x0
gsSPEndDisplayList
glabel blargg_seg5_dl_05005A60 # 0x05005A60 - 0x05005D00
gsSPLight blargg_seg5_light_05004760, 1
gsSPLight blargg_seg5_light_05004758, 2
gsSPVertex blargg_seg5_vertex_05004BE0, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 10, 11, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 12, 14, 15, 0x0
gsSPVertex blargg_seg5_vertex_05004CE0, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 10, 11, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 12, 14, 15, 0x0
gsSPVertex blargg_seg5_vertex_05004DE0, 8, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSPLight blargg_seg5_light_05004778, 1
gsSPLight blargg_seg5_light_05004770, 2
gsSPVertex blargg_seg5_vertex_05004E60, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 2, 6, 7, 0x0, 2, 7, 8, 0x0
gsSP2Triangles 9, 10, 11, 0x0, 9, 11, 12, 0x0
gsSP2Triangles 9, 12, 13, 0x0, 9, 13, 14, 0x0
gsSP1Triangle 9, 14, 15, 0x0
gsSPVertex blargg_seg5_vertex_05004F60, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 2, 9, 0, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 10, 12, 13, 0x0
gsSP1Triangle 0, 14, 1, 0x0
gsSPVertex blargg_seg5_vertex_05005050, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 4, 6, 5, 0x0, 7, 8, 9, 0x0
gsSP2Triangles 10, 3, 5, 0x0, 11, 12, 13, 0x0
gsSP2Triangles 14, 15, 13, 0x0, 14, 13, 12, 0x0
gsSPVertex blargg_seg5_vertex_05005150, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP2Triangles 11, 3, 9, 0x0, 1, 8, 2, 0x0
gsSP2Triangles 12, 0, 2, 0x0, 13, 14, 11, 0x0
gsSP2Triangles 5, 7, 15, 0x0, 5, 8, 7, 0x0
gsSPVertex blargg_seg5_vertex_05005250, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 3, 2, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 7, 8, 5, 0x0
gsSP2Triangles 9, 10, 11, 0x0, 3, 11, 10, 0x0
gsSP2Triangles 7, 5, 4, 0x0, 9, 8, 7, 0x0
gsSP2Triangles 11, 8, 9, 0x0, 12, 13, 14, 0x0
gsSPVertex blargg_seg5_vertex_05005340, 10, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 1, 4, 0x0
gsSP2Triangles 3, 4, 5, 0x0, 6, 7, 5, 0x0
gsSP2Triangles 8, 6, 5, 0x0, 9, 0, 2, 0x0
gsSPEndDisplayList
glabel blargg_seg5_dl_05005D00 # 0x05005D00 - 0x05005EB8
gsSPLight blargg_seg5_light_05004790, 1
gsSPLight blargg_seg5_light_05004788, 2
gsSPVertex blargg_seg5_vertex_050053E0, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 10, 11, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 12, 14, 15, 0x0
gsSPVertex blargg_seg5_vertex_050054E0, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 10, 11, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 12, 14, 15, 0x0
gsSPVertex blargg_seg5_vertex_050055E0, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 10, 11, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 12, 14, 15, 0x0
gsSPVertex blargg_seg5_vertex_050056E0, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 10, 11, 0x0
gsSP2Triangles 12, 4, 7, 0x0, 12, 7, 13, 0x0
gsSP2Triangles 0, 6, 14, 0x0, 0, 14, 1, 0x0
gsSP2Triangles 3, 15, 13, 0x0, 10, 15, 2, 0x0
gsSPVertex blargg_seg5_vertex_050057E0, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 7, 1, 0, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 11, 5, 12, 0x0
gsSP2Triangles 11, 12, 13, 0x0, 8, 10, 6, 0x0
gsSP2Triangles 8, 6, 11, 0x0, 14, 4, 7, 0x0
gsSP1Triangle 14, 7, 0, 0x0
gsSPEndDisplayList
blargg_seg5_animvalue_05005EB8: # 0x05005EB8
.hword 0x0000, 0x0016, 0xFFFC, 0xFFB9, 0xFF61, 0xFF08, 0xFEC0, 0xFE9F
.hword 0xFEAC, 0xFED8, 0xFF16, 0xFF59, 0xFF95, 0xFFBB, 0xFFD4, 0xFFED
.hword 0x0005, 0x001C, 0x0031, 0x0042, 0x004D, 0x0052, 0x004E, 0x0042
.hword 0x002B, 0xFFED, 0xFF79, 0xFEEE, 0xFE68, 0xFE02, 0xFDD9, 0xFDDF
.hword 0xFDF3, 0xFE13, 0xFE3C, 0xFE6C, 0xFEA1, 0xFED9, 0xFF13, 0xFF4C
.hword 0xFF81, 0xFFB2, 0xFFDB, 0xFFFB, 0x000F, 0x0016, 0x3FFF, 0x8785
.hword 0x8785, 0x8785, 0x8785, 0x8785, 0x8785, 0x8785, 0x8A1E, 0x909B
.hword 0x990A, 0xA17A, 0xA7F7, 0xAA8F, 0xAA75, 0xAA2A, 0xA9B1, 0xA90E
.hword 0xA843, 0xA753, 0xA643, 0xA516, 0xA3CE, 0xA26F, 0xA0FC, 0x9F79
.hword 0x9DE9, 0x9C4F, 0x9AAE, 0x990A, 0x9766, 0x95C6, 0x942C, 0x929B
.hword 0x9118, 0x8FA6, 0x8E47, 0x8CFF, 0x8BD1, 0x8AC1, 0x89D2, 0x8907
.hword 0x8863, 0x87EA, 0x879F, 0x8785, 0x804C, 0x0BCD, 0x0D29, 0x106F
.hword 0x1461, 0x17C8, 0x1967, 0x1806, 0x1248, 0x08E6, 0xFDBD, 0xF2AB
.hword 0xE990, 0xE448, 0xE1F8, 0xE072, 0xDFA4, 0xDF79, 0xDFDD, 0xE0BB
.hword 0xE1FF, 0xE394, 0xE567, 0xE762, 0xE972, 0xEE5F, 0xF6AA, 0xFED8
.hword 0x036F, 0x04F7, 0x064D, 0x0774, 0x086F, 0x0941, 0x09EF, 0x0A7C
.hword 0x0AEA, 0x0B3F, 0x0B7C, 0x0BA6, 0x0BC1, 0x0BCE, 0x0BD3, 0x0BD2
.hword 0x0BCE, 0x0BCD, 0x76C1, 0x76C1, 0x76C1, 0x76C1, 0x76C1, 0x76C1
.hword 0x76C1, 0x7543, 0x7181, 0x6C93, 0x678D, 0x6385, 0x6191, 0x613B
.hword 0x614D, 0x61BA, 0x627B, 0x6384, 0x64CA, 0x6645, 0x67E8, 0x69AB
.hword 0x6B83, 0x6D65, 0x7027, 0x7426, 0x78A4, 0x7CE5, 0x802E, 0x81BB
.hword 0x81FB, 0x81DE, 0x8172, 0x80C4, 0x7FDE, 0x7ED2, 0x7DAC, 0x7C77
.hword 0x7B41, 0x7A17, 0x7907, 0x781C, 0x7764, 0x76EC, 0x76C1, 0x0000
blargg_seg5_animindex_05006028: # 0x05006028
.hword 0x0001, 0x0000, 0x002D, 0x0001, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x002E, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x002D, 0x008A, 0x0001, 0x0000, 0x0001, 0x0000, 0x002D, 0x005D
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x005C, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x002D, 0x002F
blargg_seg5_anim_05006070: # 0x05006070
.hword 0
.hword 0
.hword 0
.hword 0
.hword 0x2D
.hword 0x05
.word blargg_seg5_animvalue_05005EB8
.word blargg_seg5_animindex_05006028
.word 0
blargg_seg5_animvalue_05006088: # 0x05006088
.hword 0x0000, 0x0016, 0x0018, 0x001C, 0x0022, 0x002A, 0x0033, 0x003D
.hword 0x0047, 0x0052, 0x005C, 0x0065, 0x006D, 0x0073, 0x0077, 0x0078
.hword 0x0077, 0x0074, 0x0070, 0x006B, 0x0064, 0x005C, 0x0054, 0x004C
.hword 0x0043, 0x003A, 0x0031, 0x0029, 0x0022, 0x001C, 0x0016, 0x3FFF
.hword 0x8785, 0x804C, 0x0BCD, 0x0BF1, 0x0C51, 0x0CD8, 0x0D72, 0x0E0C
.hword 0x0E91, 0x0EEE, 0x0F0F, 0x0EFC, 0x0ED0, 0x0E8F, 0x0E3C, 0x0DDE
.hword 0x0D78, 0x0D10, 0x0CA9, 0x0C48, 0x0BF2, 0x0BAB, 0x0B77, 0x0B5A
.hword 0x0B50, 0x0B55, 0x0B64, 0x0B7B, 0x0B94, 0x0BAD, 0x0BC1, 0x0BCD
.hword 0x76C1, 0x0000
blargg_seg5_animindex_0500610C: # 0x0500610C
.hword 0x0001, 0x0000, 0x001E, 0x0001, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x001F, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0040, 0x0001, 0x0000, 0x0001, 0x0000, 0x001E, 0x0022
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0021, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0020
blargg_seg5_anim_05006154: # 0x05006154
.hword 0
.hword 0
.hword 0
.hword 0
.hword 0x1E
.hword 0x05
.word blargg_seg5_animvalue_05006088
.word blargg_seg5_animindex_0500610C
.word 0
# unreferenced
glabel blargg_seg5_anims_0500616C # 0x0500616C
.word blargg_seg5_anim_05006154
.word blargg_seg5_anim_05006070
.word 0

View file

@ -0,0 +1,27 @@
# Blue Coin Switch
glabel blue_coin_switch_seg8_collision_08000E98 # 0x08000E98 - 0x08000F10
colInit
colVertexInit 0x8
colVertex 26, 0, 26
colVertex 26, 26, 26
colVertex -25, 26, 26
colVertex -25, 0, 26
colVertex 26, 0, -25
colVertex 26, 26, -25
colVertex -25, 26, -25
colVertex -25, 0, -25
colTriInit SURFACE_DEFAULT, 10
colTri 0, 1, 2
colTri 0, 2, 3
colTri 4, 5, 1
colTri 5, 6, 2
colTri 5, 2, 1
colTri 7, 6, 5
colTri 7, 5, 4
colTri 3, 6, 7
colTri 3, 2, 6
colTri 4, 1, 0
colTriStop
colEnd

View file

@ -0,0 +1,8 @@
glabel blue_coin_switch_geo # 0x0F000000
geo_culling_radius 300
geo_open_node
geo_open_node
geo_display_list LAYER_OPAQUE, blue_coin_switch_seg8_dl_08000E08
geo_close_node
geo_close_node
geo_end

View file

@ -0,0 +1,79 @@
# Blue Coin Switch
blue_coin_switch_seg8_light_08000000: # 0x08000000
.byte 0x7F, 0x7F, 0x7F, 0x00, 0x7F, 0x7F, 0x7F, 0x00
blue_coin_switch_seg8_light_08000008: # 0x08000008
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
blue_coin_switch_seg8_texture_08000018: # 0x08000018
.incbin "actors/blue_coin_switch/blue_coin_switch_side.rgba16"
blue_coin_switch_seg8_texture_08000418: # 0x08000418
.incbin "actors/blue_coin_switch/blue_coin_switch_top.rgba16"
blue_coin_switch_seg8_vertex_08000C18: # 0x08000C18
vertex 26, 0, 26, 990, 479, 0x00, 0x00, 0x7F, 0xFF
vertex 26, 26, 26, 990, 0, 0x00, 0x00, 0x7F, 0xFF
vertex -25, 26, 26, 0, 0, 0x00, 0x00, 0x7F, 0xFF
vertex -25, 0, 26, 0, 479, 0x00, 0x00, 0x7F, 0xFF
vertex -25, 0, -25, 990, 479, 0x00, 0x00, 0x81, 0xFF
vertex 26, 26, -25, 0, 0, 0x00, 0x00, 0x81, 0xFF
vertex 26, 0, -25, 0, 479, 0x00, 0x00, 0x81, 0xFF
vertex -25, 26, -25, 990, 0, 0x00, 0x00, 0x81, 0xFF
vertex -25, 0, 26, 990, 479, 0x81, 0x00, 0x00, 0xFF
vertex -25, 26, -25, 0, 0, 0x81, 0x00, 0x00, 0xFF
vertex -25, 0, -25, 0, 479, 0x81, 0x00, 0x00, 0xFF
vertex -25, 26, 26, 990, 0, 0x81, 0x00, 0x00, 0xFF
vertex 26, 0, -25, 990, 479, 0x7F, 0x00, 0x00, 0xFF
vertex 26, 26, -25, 990, 0, 0x7F, 0x00, 0x00, 0xFF
vertex 26, 26, 26, 0, 0, 0x7F, 0x00, 0x00, 0xFF
vertex 26, 0, 26, 0, 479, 0x7F, 0x00, 0x00, 0xFF
blue_coin_switch_seg8_vertex_08000D18: # 0x08000D18
vertex 26, 26, -25, 990, 0, 0x00, 0x7F, 0x00, 0xFF
vertex -25, 26, 26, 0, 990, 0x00, 0x7F, 0x00, 0xFF
vertex 26, 26, 26, 990, 990, 0x00, 0x7F, 0x00, 0xFF
vertex -25, 26, -25, 0, 0, 0x00, 0x7F, 0x00, 0xFF
glabel blue_coin_switch_seg8_dl_08000D58 # 0x08000D58 - 0x08000DD0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, blue_coin_switch_seg8_texture_08000018
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x1FF, 0x100
gsSPLight blue_coin_switch_seg8_light_08000008, 1
gsSPLight blue_coin_switch_seg8_light_08000000, 2
gsSPVertex blue_coin_switch_seg8_vertex_08000C18, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 7, 5, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 11, 9, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 12, 14, 15, 0x0
gsSPEndDisplayList
glabel blue_coin_switch_seg8_dl_08000DD0 # 0x08000DD0 - 0x08000E08
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, blue_coin_switch_seg8_texture_08000418
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPVertex blue_coin_switch_seg8_vertex_08000D18, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSPEndDisplayList
glabel blue_coin_switch_seg8_dl_08000E08 # 0x08000E08 - 0x08000E98
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPClearGeometryMode G_SHADING_SMOOTH
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 4, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 60
gsSPDisplayList blue_coin_switch_seg8_dl_08000D58
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList blue_coin_switch_seg8_dl_08000DD0
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_SHADING_SMOOTH
gsSPEndDisplayList

View file

@ -0,0 +1,2 @@
# Blue Fish

28
actors/blue_fish/geo.s Normal file
View file

@ -0,0 +1,28 @@
glabel fish_shadow_geo # 0x16000BEC
geo_shadow SHADOW_CIRCLE_4_VERTS, 0x9B, 50
geo_open_node
geo_scale 0x00, 16384
geo_open_node
geo_animated_part LAYER_OPAQUE, -16, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, blue_fish_seg3_dl_0301BFB8
geo_open_node
geo_animated_part LAYER_OPAQUE, 97, 0, 0, blue_fish_seg3_dl_0301C150
geo_close_node
geo_close_node
geo_close_node
geo_close_node
geo_end
glabel fish_geo # 0x16000C44
geo_scale 0x00, 16384
geo_open_node
geo_animated_part LAYER_OPAQUE, -16, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, blue_fish_seg3_dl_0301BFB8
geo_open_node
geo_animated_part LAYER_OPAQUE, 97, 0, 0, blue_fish_seg3_dl_0301C150
geo_close_node
geo_close_node
geo_close_node
geo_end

137
actors/blue_fish/model.s Normal file
View file

@ -0,0 +1,137 @@
# Blue Fish
blue_fish_seg3_light_0301B5C8: # 0x0301B5C8
.byte 0x3F, 0x3F, 0x3F, 0x00, 0x3F, 0x3F, 0x3F, 0x00
blue_fish_seg3_light_0301B5D0: # 0x0301B5D0
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
blue_fish_seg3_texture_0301B5E0: # 0x0301B5E0
.incbin "actors/blue_fish/blue_fish.rgba16"
blue_fish_seg3_vertex_0301BDE0: # 0x0301BDE0
vertex -108, 1, 0, 14, 566, 0x89, 0x00, 0xD7, 0xFF
vertex -44, -13, -31, 286, 688, 0xEB, 0x89, 0xDC, 0xFF
vertex -62, -19, 12, 210, 502, 0xE8, 0x84, 0x0A, 0xFF
vertex -44, 16, -31, 286, 688, 0xEA, 0x77, 0xDC, 0xFF
vertex -62, 21, 12, 210, 502, 0xE8, 0x7C, 0x0B, 0xFF
vertex -47, 1, -64, 274, 830, 0xBD, 0xFF, 0x95, 0xFF
vertex -97, 1, 23, 62, 462, 0xA2, 0x00, 0x54, 0xFF
vertex 55, 1, 127, 712, -8, 0x1A, 0x00, 0x7C, 0xFF
vertex 41, 16, 56, 656, 298, 0x43, 0x67, 0x1B, 0xFF
vertex 50, 16, -43, 692, 722, 0x35, 0x6F, 0xE6, 0xFF
vertex 41, -14, 56, 656, 298, 0x43, 0x99, 0x1B, 0xFF
vertex 50, -13, -43, 692, 722, 0x35, 0x91, 0xE6, 0xFF
vertex 62, 1, -92, 742, 930, 0x42, 0xFF, 0x94, 0xFF
vertex 101, 1, 1, 910, 520, 0x7E, 0x00, 0x01, 0xFF
glabel blue_fish_seg3_dl_0301BEC0 # 0x0301BEC0 - 0x0301BFB8
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, blue_fish_seg3_texture_0301B5E0
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPLight blue_fish_seg3_light_0301B5D0, 1
gsSPLight blue_fish_seg3_light_0301B5C8, 2
gsSPVertex blue_fish_seg3_vertex_0301BDE0, 14, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 0, 4, 0x0
gsSP2Triangles 5, 0, 3, 0x0, 2, 6, 0, 0x0
gsSP2Triangles 0, 6, 4, 0x0, 5, 1, 0, 0x0
gsSP2Triangles 4, 6, 7, 0x0, 6, 2, 7, 0x0
gsSP2Triangles 7, 8, 4, 0x0, 9, 4, 8, 0x0
gsSP2Triangles 9, 3, 4, 0x0, 2, 10, 7, 0x0
gsSP2Triangles 1, 11, 2, 0x0, 11, 10, 2, 0x0
gsSP2Triangles 1, 5, 12, 0x0, 12, 5, 3, 0x0
gsSP2Triangles 9, 11, 12, 0x0, 3, 9, 12, 0x0
gsSP2Triangles 12, 11, 1, 0x0, 8, 7, 10, 0x0
gsSP2Triangles 13, 9, 8, 0x0, 9, 13, 11, 0x0
gsSP2Triangles 11, 13, 10, 0x0, 10, 13, 8, 0x0
gsSPEndDisplayList
glabel blue_fish_seg3_dl_0301BFB8 # 0x0301BFB8 - 0x0301C018
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList blue_fish_seg3_dl_0301BEC0
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPEndDisplayList
blue_fish_seg3_vertex_0301C018: # 0x0301C018
vertex 67, 0, -58, 736, 728, 0x7A, 0x00, 0xDE, 0xFF
vertex 67, -3, -28, 704, 574, 0x53, 0xA3, 0x14, 0xFF
vertex 0, 1, -3, 1022, 356, 0xA1, 0xF9, 0xAD, 0xFF
vertex 67, 4, 27, 644, 290, 0x3F, 0x6D, 0xF3, 0xFF
vertex 53, 0, 0, 744, 414, 0x7E, 0x00, 0xFE, 0xFF
vertex 67, -3, 27, 644, 290, 0x40, 0x95, 0xEB, 0xFF
vertex 0, 0, 5, 1016, 312, 0x9E, 0xFD, 0x50, 0xFF
vertex 67, 4, -28, 704, 574, 0x54, 0x5C, 0x15, 0xFF
vertex 67, 0, 57, 612, 138, 0x7A, 0x00, 0x22, 0xFF
glabel blue_fish_seg3_dl_0301C0A8 # 0x0301C0A8 - 0x0301C150
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, blue_fish_seg3_texture_0301B5E0
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPLight blue_fish_seg3_light_0301B5D0, 1
gsSPLight blue_fish_seg3_light_0301B5C8, 2
gsSPVertex blue_fish_seg3_vertex_0301C018, 9, 0
gsSP2Triangles 0, 1, 2, 0x0, 2, 3, 4, 0x0
gsSP2Triangles 4, 5, 2, 0x0, 2, 5, 6, 0x0
gsSP2Triangles 2, 1, 4, 0x0, 2, 6, 3, 0x0
gsSP2Triangles 4, 7, 2, 0x0, 2, 7, 0, 0x0
gsSP2Triangles 6, 8, 3, 0x0, 3, 8, 5, 0x0
gsSP2Triangles 3, 5, 4, 0x0, 4, 1, 7, 0x0
gsSP2Triangles 6, 5, 8, 0x0, 1, 0, 7, 0x0
gsSPEndDisplayList
glabel blue_fish_seg3_dl_0301C150 # 0x0301C150 - 0x0301C1B0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList blue_fish_seg3_dl_0301C0A8
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPEndDisplayList
blue_fish_seg3_animvalue_0301C1B0: # 0x0301C1B0
.hword 0x0000, 0xFFF1, 0xFFF1, 0xFFF2, 0xFFF4, 0xFFF7, 0xFFFA, 0xFFFD
.hword 0x0000, 0x0002, 0x0005, 0x0008, 0x000A, 0x000C, 0x000E, 0x000E
.hword 0x000E, 0x000D, 0x000C, 0x000A, 0x0009, 0x0006, 0x0004, 0x0002
.hword 0x0000, 0xFFFD, 0xFFFB, 0xFFF8, 0xFFF6, 0xFFF3, 0xFFF1, 0xC001
.hword 0xF3F6, 0xF61A, 0xFAF7, 0x003A, 0x0390, 0x052A, 0x06BA, 0x0832
.hword 0x0984, 0x0AA1, 0x0B7C, 0x0C06, 0x0C31, 0x0BEE, 0x0B2F, 0x078D
.hword 0x00B3, 0xF9AA, 0xF579, 0xF3FF, 0xF306, 0xF27B, 0xF247, 0xF258
.hword 0xF298, 0xF2F4, 0xF356, 0xF3AB, 0xF3DE, 0xF3DA, 0x461C, 0x4623
.hword 0x462E, 0x4629, 0x4603, 0x45AA, 0x450A, 0x4410, 0x42C9, 0x4151
.hword 0x3FC6, 0x3E45, 0x3CEA, 0x3BD2, 0x3B1B, 0x3ACE, 0x3AD5, 0x3B20
.hword 0x3BA0, 0x3C43, 0x3CFA, 0x3DB5, 0x3E7E, 0x3F66, 0x4066, 0x4177
.hword 0x4292, 0x43AF, 0x44C7, 0x45D4
blue_fish_seg3_animindex_0301C268: # 0x0301C268
.hword 0x001E, 0x0001, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x001F
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x001E, 0x003E, 0x0001, 0x0000, 0x0001, 0x0000, 0x001E, 0x0020
blue_fish_seg3_anim_0301C298: # 0x0301C298
.hword 0
.hword 0
.hword 0
.hword 0
.hword 0x1E
.hword 0x03
.word blue_fish_seg3_animvalue_0301C1B0
.word blue_fish_seg3_animindex_0301C268
.word 0
glabel blue_fish_seg3_anims_0301C2B0 # 0x0301C2B0
.word blue_fish_seg3_anim_0301C298
.word 0

View file

@ -0,0 +1,2 @@
# Bobomb

95
actors/bobomb/geo.s Normal file
View file

@ -0,0 +1,95 @@
glabel black_bobomb_geo # 0x0F0007B8
geo_shadow SHADOW_CIRCLE_4_VERTS, 0xC8, 70
geo_open_node
geo_scale 0x00, 24576
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_billboard
geo_open_node
geo_display_list LAYER_ALPHA, bobomb_seg8_dl_08022D08
geo_close_node
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 57, -60
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 91, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bobomb_seg8_dl_08023270
geo_close_node
geo_close_node
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 55, 62
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 91, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bobomb_seg8_dl_08023378
geo_close_node
geo_close_node
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bobomb_seg8_dl_08023480
geo_switch_case 2, geo_switch_anim_state
geo_open_node
geo_animated_part LAYER_ALPHA, 0, 0, 0, bobomb_seg8_dl_08022B58
geo_animated_part LAYER_ALPHA, 0, 0, 0, bobomb_seg8_dl_08022B88
geo_close_node
geo_close_node
geo_close_node
geo_close_node
geo_close_node
geo_end
glabel bobomb_buddy_geo # 0x0F0008F4
geo_shadow SHADOW_CIRCLE_4_VERTS, 0xC8, 70
geo_open_node
geo_scale 0x00, 24576
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_billboard
geo_open_node
geo_display_list LAYER_ALPHA, bobomb_seg8_dl_08022D78
geo_close_node
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 57, -60
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 91, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bobomb_seg8_dl_08023270
geo_close_node
geo_close_node
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 55, 62
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 91, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bobomb_seg8_dl_08023378
geo_close_node
geo_close_node
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bobomb_seg8_dl_08023480
geo_switch_case 2, geo_switch_anim_state
geo_open_node
geo_animated_part LAYER_ALPHA, 0, 0, 0, bobomb_seg8_dl_08022B58
geo_animated_part LAYER_ALPHA, 0, 0, 0, bobomb_seg8_dl_08022B88
geo_close_node
geo_close_node
geo_close_node
geo_close_node
geo_close_node
geo_end

393
actors/bobomb/model.s Normal file
View file

@ -0,0 +1,393 @@
# Bobomb
bobomb_seg8_texture_0801DA60: # 0x0801DA60
.incbin "actors/bobomb/bob-omb_left_side.rgba16"
bobomb_seg8_texture_0801EA60: # 0x0801EA60
.incbin "actors/bobomb/bob-omb_right_side.rgba16"
bobomb_seg8_texture_0801FA60: # 0x0801FA60
.incbin "actors/bobomb/bob-omb_buddy_left_side.rgba16"
bobomb_seg8_texture_08020A60: # 0x08020A60
.incbin "actors/bobomb/bob-omb_buddy_right_side.rgba16"
bobomb_seg8_texture_08021A60: # 0x08021A60
.incbin "actors/bobomb/bob-omb_eyes.rgba16"
bobomb_seg8_texture_08022260: # 0x08022260
.incbin "actors/bobomb/bob-omb_eyes_blink.rgba16"
bobomb_seg8_vertex_08022A60: # 0x08022A60
vertex 133, -47, 0, 480, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 133, 32, 0, 480, 990, 0xFF, 0xFF, 0xFF, 0xFF
vertex 128, 32, 50, 990, 990, 0xFF, 0xFF, 0xFF, 0xFF
vertex 128, -47, -49, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 128, -47, 50, 990, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 128, 32, -49, 0, 990, 0xFF, 0xFF, 0xFF, 0xFF
glabel bobomb_seg8_dl_08022AC0 # 0x08022AC0 - 0x08022B08
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_TEXEL0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_TEXEL0
gsSPClearGeometryMode G_LIGHTING
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPEndDisplayList
glabel bobomb_seg8_dl_08022B08 # 0x08022B08 - 0x08022B58
gsSPVertex bobomb_seg8_vertex_08022A60, 6, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 1, 0, 0x0
gsSP2Triangles 0, 2, 4, 0x0, 3, 5, 1, 0x0
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_LIGHTING
gsSPEndDisplayList
glabel bobomb_seg8_dl_08022B58 # 0x08022B58 - 0x08022B88
gsSPDisplayList bobomb_seg8_dl_08022AC0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bobomb_seg8_texture_08021A60
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPDisplayList bobomb_seg8_dl_08022B08
gsSPEndDisplayList
glabel bobomb_seg8_dl_08022B88 # 0x08022B88 - 0x08022BB8
gsSPDisplayList bobomb_seg8_dl_08022AC0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bobomb_seg8_texture_08022260
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPDisplayList bobomb_seg8_dl_08022B08
gsSPEndDisplayList
bobomb_seg8_vertex_08022BB8: # 0x08022BB8
vertex 0, 49, 0, 990, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex -49, -49, 0, 0, 2012, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, -49, 0, 990, 2012, 0xFF, 0xFF, 0xFF, 0xFF
vertex -49, 49, 0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
bobomb_seg8_vertex_08022BF8: # 0x08022BF8
vertex 49, 49, 0, 990, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, -49, 0, 0, 2012, 0xFF, 0xFF, 0xFF, 0xFF
vertex 49, -49, 0, 990, 2012, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 49, 0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
glabel bobomb_seg8_dl_08022C38 # 0x08022C38 - 0x08022CA0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bobomb_seg8_texture_0801DA60
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x100
gsSPVertex bobomb_seg8_vertex_08022BB8, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bobomb_seg8_texture_0801EA60
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x100
gsSPVertex bobomb_seg8_vertex_08022BF8, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSPEndDisplayList
glabel bobomb_seg8_dl_08022CA0 # 0x08022CA0 - 0x08022D08
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bobomb_seg8_texture_0801FA60
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x100
gsSPVertex bobomb_seg8_vertex_08022BB8, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bobomb_seg8_texture_08020A60
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x100
gsSPVertex bobomb_seg8_vertex_08022BF8, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSPEndDisplayList
glabel bobomb_seg8_dl_08022D08 # 0x08022D08 - 0x08022D78
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_TEXEL0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_TEXEL0
gsSPClearGeometryMode G_LIGHTING
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 252
gsSPDisplayList bobomb_seg8_dl_08022C38
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_LIGHTING
gsSPEndDisplayList
glabel bobomb_seg8_dl_08022D78 # 0x08022D78 - 0x08022DE8
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_TEXEL0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_TEXEL0
gsSPClearGeometryMode G_LIGHTING
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 252
gsSPDisplayList bobomb_seg8_dl_08022CA0
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_LIGHTING
gsSPEndDisplayList
bobomb_seg8_light_08022DE8: # 0x08022DE8
.byte 0x3F, 0x26, 0x04, 0x00, 0x3F, 0x26, 0x04, 0x00
bobomb_seg8_light_08022DF0: # 0x08022DF0
.byte 0xFF, 0x99, 0x12, 0x00, 0xFF, 0x99, 0x12, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
bobomb_seg8_light_08022E00: # 0x08022E00
.byte 0x2C, 0x2C, 0x2C, 0x00, 0x2C, 0x2C, 0x2C, 0x00
bobomb_seg8_light_08022E08: # 0x08022E08
.byte 0xB2, 0xB2, 0xB2, 0x00, 0xB2, 0xB2, 0xB2, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
# Unreferenced light
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
bobomb_seg8_vertex_08022E30: # 0x08022E30
vertex 27, -26, -31, 0, 0, 0xEB, 0x96, 0xBF, 0x00
vertex -36, 0, -20, 0, 0, 0xB1, 0xD0, 0xAA, 0x00
vertex 32, 0, -41, 0, 0, 0xFC, 0xFB, 0x82, 0x00
vertex 85, 0, -32, 0, 0, 0x50, 0xF1, 0xA0, 0xFF
vertex 79, 28, -20, 0, 0, 0x34, 0x62, 0xC4, 0xFF
vertex 79, 28, 15, 0, 0, 0x34, 0x62, 0x3C, 0xFF
vertex 85, 0, 27, 0, 0, 0x50, 0xF1, 0x60, 0xFF
vertex 33, 28, 29, 0, 0, 0xFF, 0x69, 0x47, 0xFF
vertex -29, 28, 12, 0, 0, 0xC8, 0x60, 0x3C, 0xFF
vertex -36, 0, 16, 0, 0, 0xB1, 0xD0, 0x56, 0xFF
vertex 32, 0, 37, 0, 0, 0xFC, 0xFB, 0x7E, 0xFF
vertex 33, 28, -34, 0, 0, 0xFF, 0x69, 0xB9, 0xFF
vertex -29, 28, -16, 0, 0, 0xC8, 0x60, 0xC4, 0xFF
vertex 68, -30, 16, 0, 0, 0x26, 0x95, 0x36, 0xFF
vertex 68, -30, -21, 0, 0, 0x26, 0x95, 0xCA, 0xFF
vertex 27, -26, 27, 0, 0, 0xEB, 0x96, 0x41, 0xFF
bobomb_seg8_vertex_08022F30: # 0x08022F30
vertex 27, -26, -31, 0, 0, 0xED, 0x90, 0xC8, 0xFF
vertex 27, -26, 27, 0, 0, 0xF5, 0xA2, 0x53, 0x00
vertex -36, 0, 16, 0, 0, 0xA2, 0xF8, 0x54, 0x00
vertex -36, 0, -20, 0, 0, 0xA9, 0xDD, 0xAC, 0xFF
bobomb_seg8_vertex_08022F70: # 0x08022F70
vertex 32, 0, 41, 0, 0, 0xFC, 0xFB, 0x7E, 0x00
vertex -36, 0, 20, 0, 0, 0xB1, 0xD0, 0x56, 0x00
vertex 27, -26, 31, 0, 0, 0xEB, 0x96, 0x41, 0x00
vertex 84, 0, -27, 0, 0, 0x50, 0xF1, 0xA0, 0xFF
vertex 79, 28, -15, 0, 0, 0x34, 0x62, 0xC4, 0xFF
vertex 79, 28, 20, 0, 0, 0x34, 0x62, 0x3C, 0xFF
vertex 84, 0, 32, 0, 0, 0x50, 0xF1, 0x60, 0xFF
vertex 32, 0, -37, 0, 0, 0xFC, 0xFB, 0x82, 0xFF
vertex -36, 0, -16, 0, 0, 0xB1, 0xD0, 0xAA, 0xFF
vertex -28, 28, -12, 0, 0, 0xC8, 0x60, 0xC4, 0xFF
vertex 33, 28, -29, 0, 0, 0xFF, 0x69, 0xB9, 0xFF
vertex -28, 28, 16, 0, 0, 0xC8, 0x60, 0x3C, 0xFF
vertex 33, 28, 33, 0, 0, 0xFF, 0x69, 0x47, 0xFF
vertex 68, -29, 21, 0, 0, 0x26, 0x95, 0x36, 0xFF
vertex 68, -29, -16, 0, 0, 0x26, 0x95, 0xCA, 0xFF
vertex 27, -26, -27, 0, 0, 0xEB, 0x96, 0xBF, 0xFF
bobomb_seg8_vertex_08023070: # 0x08023070
vertex 27, -26, -27, 0, 0, 0xED, 0x90, 0xC8, 0xFF
vertex 27, -26, 31, 0, 0, 0xF5, 0xA2, 0x53, 0x00
vertex -36, 0, 20, 0, 0, 0xA2, 0xF8, 0x54, 0x00
vertex -36, 0, -16, 0, 0, 0xA9, 0xDD, 0xAC, 0xFF
bobomb_seg8_vertex_080230B0: # 0x080230B0
vertex 0, -100, 59, 0, 0, 0x00, 0xFE, 0x7F, 0x00
vertex -53, -99, 28, 0, 0, 0xC1, 0xFE, 0x6D, 0x00
vertex -53, -140, 27, 0, 0, 0xC1, 0xFE, 0x6D, 0x00
vertex 0, -141, 58, 0, 0, 0x00, 0xFE, 0x7F, 0xFF
vertex 53, -99, 28, 0, 0, 0x3F, 0xFE, 0x6D, 0xFF
vertex 53, -140, 27, 0, 0, 0x3F, 0xFE, 0x6D, 0xFF
vertex -53, -99, 28, 0, 0, 0x81, 0x00, 0x00, 0xFF
vertex -53, -98, -32, 0, 0, 0x81, 0x00, 0x00, 0xFF
vertex -53, -139, -33, 0, 0, 0x81, 0x00, 0x00, 0xFF
vertex -53, -140, 27, 0, 0, 0x81, 0x00, 0x00, 0xFF
vertex -53, -98, -32, 0, 0, 0xC1, 0x02, 0x93, 0xFF
vertex 0, -97, -63, 0, 0, 0xC1, 0x02, 0x93, 0xFF
vertex 0, -138, -64, 0, 0, 0xC1, 0x02, 0x93, 0xFF
vertex -53, -139, -33, 0, 0, 0xC1, 0x02, 0x93, 0xFF
bobomb_seg8_vertex_08023190: # 0x08023190
vertex 53, -98, -32, 0, 0, 0x7F, 0x00, 0x00, 0xFF
vertex 53, -99, 28, 0, 0, 0x7F, 0x00, 0x00, 0x00
vertex 53, -140, 27, 0, 0, 0x7F, 0x00, 0x00, 0x00
vertex 53, -139, -33, 0, 0, 0x7F, 0x00, 0x00, 0xFF
vertex 0, -97, -63, 0, 0, 0x3F, 0x02, 0x93, 0xFF
vertex 53, -98, -32, 0, 0, 0x3F, 0x02, 0x93, 0xFF
vertex 53, -139, -33, 0, 0, 0x3F, 0x02, 0x93, 0xFF
vertex 0, -138, -64, 0, 0, 0x3F, 0x02, 0x93, 0xFF
vertex 0, -138, -64, 0, 0, 0x00, 0x81, 0xFE, 0xFF
vertex 53, -139, -33, 0, 0, 0x00, 0x81, 0xFE, 0xFF
vertex 53, -140, 27, 0, 0, 0x00, 0x81, 0xFE, 0xFF
vertex 0, -141, 58, 0, 0, 0x00, 0x81, 0xFE, 0xFF
vertex -53, -140, 27, 0, 0, 0x00, 0x81, 0xFE, 0xFF
vertex -53, -139, -33, 0, 0, 0x00, 0x81, 0xFE, 0xFF
glabel bobomb_seg8_dl_08023270 # 0x08023270 - 0x08023378
gsSPLight bobomb_seg8_light_08022DF0, 1
gsSPLight bobomb_seg8_light_08022DE8, 2
gsSPVertex bobomb_seg8_vertex_08022E30, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 3, 5, 6, 0x0, 7, 8, 9, 0x0
gsSP2Triangles 7, 9, 10, 0x0, 11, 12, 8, 0x0
gsSP2Triangles 11, 8, 7, 0x0, 6, 13, 14, 0x0
gsSP2Triangles 6, 14, 3, 0x0, 9, 8, 12, 0x0
gsSP2Triangles 9, 12, 1, 0x0, 10, 9, 15, 0x0
gsSP2Triangles 2, 1, 12, 0x0, 2, 12, 11, 0x0
gsSP2Triangles 10, 6, 5, 0x0, 10, 5, 7, 0x0
gsSP2Triangles 0, 14, 13, 0x0, 0, 13, 15, 0x0
gsSP2Triangles 11, 4, 3, 0x0, 11, 3, 2, 0x0
gsSP2Triangles 2, 3, 14, 0x0, 2, 14, 0, 0x0
gsSP2Triangles 7, 5, 4, 0x0, 7, 4, 11, 0x0
gsSP2Triangles 15, 13, 6, 0x0, 15, 6, 10, 0x0
gsSPVertex bobomb_seg8_vertex_08022F30, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSPEndDisplayList
glabel bobomb_seg8_dl_08023378 # 0x08023378 - 0x08023480
gsSPLight bobomb_seg8_light_08022DF0, 1
gsSPLight bobomb_seg8_light_08022DE8, 2
gsSPVertex bobomb_seg8_vertex_08022F70, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 3, 5, 6, 0x0, 7, 8, 9, 0x0
gsSP2Triangles 7, 9, 10, 0x0, 10, 9, 11, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 6, 13, 14, 0x0
gsSP2Triangles 6, 14, 3, 0x0, 1, 11, 9, 0x0
gsSP2Triangles 1, 9, 8, 0x0, 15, 8, 7, 0x0
gsSP2Triangles 12, 11, 1, 0x0, 12, 1, 0, 0x0
gsSP2Triangles 10, 4, 3, 0x0, 10, 3, 7, 0x0
gsSP2Triangles 15, 14, 13, 0x0, 15, 13, 2, 0x0
gsSP2Triangles 0, 6, 5, 0x0, 0, 5, 12, 0x0
gsSP2Triangles 2, 13, 6, 0x0, 2, 6, 0, 0x0
gsSP2Triangles 12, 5, 4, 0x0, 12, 4, 10, 0x0
gsSP2Triangles 7, 3, 14, 0x0, 7, 14, 15, 0x0
gsSPVertex bobomb_seg8_vertex_08023070, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSPEndDisplayList
glabel bobomb_seg8_dl_08023480 # 0x08023480 - 0x08023528
gsSPLight bobomb_seg8_light_08022E08, 1
gsSPLight bobomb_seg8_light_08022E00, 2
gsSPVertex bobomb_seg8_vertex_080230B0, 14, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 0, 3, 0x0, 4, 3, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 6, 8, 9, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 10, 12, 13, 0x0
gsSPVertex bobomb_seg8_vertex_08023190, 14, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 10, 11, 0x0
gsSP2Triangles 8, 11, 12, 0x0, 8, 12, 13, 0x0
gsSPEndDisplayList
bobomb_seg8_animvalue_08023528: # 0x08023528
.hword 0x0000, 0xFFF8, 0xFFF8, 0xFFFA, 0xFFFC, 0xFFFF, 0x0000, 0x0001
.hword 0x0003, 0x0005, 0x0006, 0x0007, 0x0008, 0x0007, 0x0006, 0x0005
.hword 0x0003, 0x0001, 0x0000, 0xFFFF, 0xFFFD, 0xFFFC, 0xFFFA, 0xFFF9
.hword 0xFFF8, 0xFFF8, 0x00A2, 0x00A3, 0x00A6, 0x00AA, 0x00AD, 0x00AE
.hword 0x00AD, 0x00AB, 0x00A8, 0x00A5, 0x00A3, 0x00A2, 0x00A3, 0x00A5
.hword 0x00A8, 0x00AB, 0x00AD, 0x00AE, 0x00AD, 0x00AB, 0x00A9, 0x00A7
.hword 0x00A4, 0x00A3, 0x00A2, 0x3FFF, 0x0000, 0xFFFC, 0xFFF2, 0xFFE4
.hword 0xFFD3, 0xFFC4, 0xFFB8, 0xFFB2, 0xFFB3, 0xFFBF, 0xFFD8, 0x0000
.hword 0x0083, 0x016B, 0x0254, 0x02DA, 0x02D4, 0x027E, 0x0206, 0x019D
.hword 0x013E, 0x00D1, 0x006A, 0x001E, 0x0000, 0x0000, 0x0000, 0x0000
.hword 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
.hword 0x0000, 0xFFFE, 0xFFFA, 0xFFF9, 0x0000, 0x0016, 0x0038, 0x0057
.hword 0x0065, 0x005A, 0x0041, 0x0023, 0x000A, 0x0000, 0xA656, 0xA6E2
.hword 0xA869, 0xAAC1, 0xADBF, 0xB138, 0xB503, 0xB8F5, 0xBCE3, 0xC0A3
.hword 0xC40A, 0xC6EE, 0xC9DE, 0xCCB2, 0xCE29, 0xCD04, 0xC7AE, 0xBF3C
.hword 0xB66F, 0xB005, 0xAC43, 0xA984, 0xA7AF, 0xA6A8, 0xA656, 0xC7BF
.hword 0xCA53, 0xCEE8, 0xD0C6, 0xCB0D, 0xC265, 0xBB0B, 0xB3CD, 0xAE17
.hword 0xAA0D, 0xA78C, 0xA78F, 0xA977, 0xABE8, 0xAEC2, 0xB1E6, 0xB537
.hword 0xB896, 0xBBE5, 0xBF05, 0xC1D8, 0xC43F, 0xC61D, 0xC751, 0xC7BF
.hword 0x6925, 0x6773, 0x62CA, 0x5BD5, 0x533B, 0x49A4, 0x3FB9, 0x3622
.hword 0x2D88, 0x2693, 0x21EA, 0x2038, 0x2172, 0x24DD, 0x2A13, 0x30AE
.hword 0x3848, 0x407B, 0x48E1, 0x5114, 0x58AE, 0x5F49, 0x6480, 0x67EB
.hword 0x6925, 0x2108, 0x228D, 0x26B7, 0x2CEF, 0x349F, 0x3D32, 0x460F
.hword 0x4EA1, 0x5652, 0x5C8A, 0x60B4, 0x6238, 0x611F, 0x5E11, 0x5968
.hword 0x5381, 0x4CB5, 0x4561, 0x3DDF, 0x368B, 0x2FC0, 0x29D8, 0x2530
.hword 0x2221, 0x2108, 0x0206, 0x01DD, 0x0172, 0x00E1, 0x0044, 0xFFB8
.hword 0xFF27, 0xFE7F, 0xFDD5, 0xFD3F, 0xFCD6, 0xFCB0, 0xFCD1, 0xFD27
.hword 0xFDA3, 0xFE35, 0xFECD, 0xFF5E, 0xFFD8, 0x004A, 0x00C6, 0x013E
.hword 0x01A4, 0x01EC, 0x0206, 0x0034, 0x0030, 0x0027, 0x001A, 0x000B
.hword 0xFFFE, 0xFFEE, 0xFFDB, 0xFFC7, 0xFFB5, 0xFFA8, 0xFFA3, 0xFFA6
.hword 0xFFB0, 0xFFBE, 0xFFCF, 0xFFE0, 0xFFF0, 0xFFFE, 0x0008, 0x0015
.hword 0x0020, 0x002A, 0x0031, 0x0034, 0x7BED, 0x7C6C, 0x7D9A, 0x7F02
.hword 0x8030, 0x80A7, 0x8040, 0x7F48, 0x7E0E, 0x7CD6, 0x7BE6, 0x7B87
.hword 0x7BD0, 0x7C8A, 0x7D89, 0x7E9F, 0x7FA0, 0x8061, 0x80B0, 0x805B
.hword 0x7F79, 0x7E53, 0x7D2C, 0x7C48, 0x7BED, 0x0000
bobomb_seg8_animindex_08023754: # 0x08023754
.hword 0x0019, 0x0001, 0x0019, 0x001A, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0033, 0x0001, 0x0000, 0x0019, 0x00CA, 0x0019, 0x00E3
.hword 0x0019, 0x00FC, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0019, 0x0098, 0x0019, 0x0034, 0x0019, 0x004D
.hword 0x0019, 0x0066, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0019, 0x00B1, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0019, 0x007F, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000
bobomb_seg8_anim_080237FC: # 0x080237FC
.hword 0
.hword 0
.hword 0
.hword 0
.hword 0x19
.hword 0x0D
.word bobomb_seg8_animvalue_08023528
.word bobomb_seg8_animindex_08023754
.word 0
bobomb_seg8_animvalue_08023814: # 0x08023814
.hword 0x0000, 0x00B1, 0x0000, 0x0002, 0x0008, 0x000E, 0x0010, 0x000E
.hword 0x000A, 0x0005, 0x0001, 0x0000, 0x3FFF, 0x0FE3, 0x1004, 0x104C
.hword 0x1093, 0x10B4, 0x109E, 0x106A, 0x102D, 0x0FF9, 0x0FE3, 0xBBEE
.hword 0xBEFD, 0xC5B5, 0xCC6E, 0xCF7D, 0xCD74, 0xC89A, 0xC2D0, 0xBDF7
.hword 0xBBEE, 0xFC25, 0xFD6A, 0x0032, 0x02FB, 0x0440, 0x0368, 0x0165
.hword 0xFF00, 0xFCFD, 0xFC25, 0xF0FC, 0xEFB1, 0xECD9, 0xEA02, 0xE8B7
.hword 0xE993, 0xEBA0, 0xEE13, 0xF020, 0xF0FC, 0xD8C1, 0xD34A, 0xC744
.hword 0xBB3F, 0xB5C8, 0xB96B, 0xC217, 0xCC71, 0xD51E, 0xD8C1, 0x3FFF
.hword 0x3FFF, 0x74FE, 0x7655, 0x7946, 0x7C36, 0x7D8D, 0x7CA9, 0x7A8A
.hword 0x7801, 0x75E2, 0x74FE, 0x0000
bobomb_seg8_animindex_080238AC: # 0x080238AC
.hword 0x0001, 0x0000, 0x0001, 0x0001, 0x000A, 0x0002, 0x0001, 0x0000
.hword 0x0001, 0x000C, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x000A, 0x0041, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x003F, 0x0001, 0x0000, 0x000A, 0x000D
.hword 0x000A, 0x0017, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0040, 0x000A, 0x0021, 0x000A, 0x002B
.hword 0x000A, 0x0035, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000
bobomb_seg8_anim_08023954: # 0x08023954
.hword 0
.hword 0
.hword 0
.hword 0
.hword 0x0A
.hword 0x0D
.word bobomb_seg8_animvalue_08023814
.word bobomb_seg8_animindex_080238AC
.word 0
glabel bobomb_seg8_anims_0802396C # 0x0802396C
.word bobomb_seg8_anim_080237FC
.word bobomb_seg8_anim_08023954
.word 0

2
actors/bomb/collision.s Normal file
View file

@ -0,0 +1,2 @@
# Bomb

13
actors/bomb/geo.s Normal file
View file

@ -0,0 +1,13 @@
glabel bowser_bomb_geo # 0x0D000B78 / 0BBC
geo_culling_radius 1000
geo_open_node
geo_scale 0x00, 196608
geo_open_node
geo_display_list LAYER_OPAQUE, bomb_seg6_dl_0605A9C0
geo_billboard
geo_open_node
geo_display_list LAYER_ALPHA, bomb_seg6_dl_0605A830
geo_close_node
geo_close_node
geo_close_node
geo_end

186
actors/bomb/model.s Normal file
View file

@ -0,0 +1,186 @@
# Bomb
.balign 8
bomb_seg6_light_06057AA8: # 0x06057AA8
.byte 0x3F, 0x3F, 0x3F, 0x00, 0x3F, 0x3F, 0x3F, 0x00
bomb_seg6_light_06057AB0: # 0x06057AB0
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
bomb_seg6_texture_06057AC0: # 0x06057AC0
.incbin "actors/bomb/bomb_left_side.rgba16"
bomb_seg6_texture_06058AC0: # 0x06058AC0
.incbin "actors/bomb/bomb_right_side.rgba16"
bomb_seg6_texture_06059AC0: # 0x06059AC0
.incbin "actors/bomb/bomb_spike.rgba16"
bomb_seg6_vertex_0605A2C0: # 0x0605A2C0
vertex 0, 120, 0, 992, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex -120, -120, 0, 0, 2016, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, -120, 0, 992, 2016, 0xFF, 0xFF, 0xFF, 0xFF
vertex -120, 120, 0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
bomb_seg6_vertex_0605A300: # 0x0605A300
vertex 120, 120, 0, 992, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, -120, 0, 0, 2016, 0xFF, 0xFF, 0xFF, 0xFF
vertex 120, -120, 0, 992, 2016, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 120, 0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
bomb_seg6_vertex_0605A340: # 0x0605A340
vertex 0, -59, 0, 502, -18, 0xF7, 0x82, 0xF7, 0xFF
vertex -9, -36, 0, 14, 976, 0x8A, 0xD2, 0xFD, 0xFF
vertex 0, -36, -8, 938, 980, 0xFD, 0xD7, 0x89, 0xFF
vertex 0, 37, -8, -6, 974, 0xFD, 0x29, 0x89, 0xFF
vertex -9, 37, 0, 972, 964, 0x8A, 0x2E, 0xFD, 0xFF
vertex 0, 60, 0, 434, -20, 0xF7, 0x7E, 0xF7, 0xFF
vertex 10, 37, 0, -14, 962, 0x74, 0x32, 0xFD, 0xFF
vertex 0, 37, -8, 960, 962, 0xFD, 0x29, 0x89, 0xFF
vertex 0, 60, 0, 468, -16, 0xF7, 0x7E, 0xF7, 0xFF
vertex -9, 37, 0, -8, 974, 0x8A, 0x2E, 0xFD, 0xFF
vertex 0, 37, 9, 974, 968, 0xFD, 0x2E, 0x76, 0xFF
vertex 0, 60, 0, 470, -6, 0xF7, 0x7E, 0xF7, 0xFF
vertex 0, 37, 9, 4, 974, 0xFD, 0x2E, 0x76, 0xFF
vertex 10, 37, 0, 960, 986, 0x74, 0x32, 0xFD, 0xFF
vertex 0, 60, 0, 492, 34, 0xF7, 0x7E, 0xF7, 0xFF
bomb_seg6_vertex_0605A430: # 0x0605A430
vertex 0, 10, 37, -20, 976, 0xFD, 0x74, 0x32, 0xFF
vertex -9, 0, 37, 974, 974, 0x8A, 0xF9, 0x2E, 0xFF
vertex 0, 0, 60, 428, 4, 0xF8, 0xEE, 0x7D, 0xFF
vertex 0, -59, 0, 494, -12, 0xF7, 0x82, 0xF7, 0xFF
vertex 0, -36, -8, -2, 946, 0xFD, 0xD7, 0x89, 0xFF
vertex 10, -36, 0, 964, 964, 0x74, 0xCE, 0xFD, 0xFF
vertex 0, -59, 0, 458, -18, 0xF7, 0x82, 0xF7, 0xFF
vertex 0, -36, 9, 10, 944, 0xFD, 0xD2, 0x76, 0xFF
vertex -9, -36, 0, 916, 956, 0x8A, 0xD2, 0xFD, 0xFF
vertex 0, -59, 0, 486, -6, 0xF7, 0x82, 0xF7, 0xFF
vertex 10, -36, 0, -4, 958, 0x74, 0xCE, 0xFD, 0xFF
vertex 0, -36, 9, 958, 952, 0xFD, 0xD2, 0x76, 0xFF
vertex 10, 0, 37, -8, 978, 0x74, 0xF9, 0x32, 0xFF
vertex 0, 10, 37, 952, 976, 0xFD, 0x74, 0x32, 0xFF
vertex 0, 0, 60, 428, -12, 0xF8, 0xEE, 0x7D, 0xFF
bomb_seg6_vertex_0605A520: # 0x0605A520
vertex 37, 0, -9, 10, 960, 0x2E, 0xF9, 0x8A, 0xFF
vertex 37, 10, 0, 928, 972, 0x32, 0x74, 0xFD, 0xFF
vertex 60, 0, 0, 494, -4, 0x7D, 0xEE, 0xF8, 0xFF
vertex 0, -8, 37, -10, 976, 0xFD, 0x89, 0x29, 0xFF
vertex 10, 0, 37, 956, 980, 0x74, 0xF9, 0x32, 0xFF
vertex 0, 0, 60, 428, -12, 0xF8, 0xEE, 0x7D, 0xFF
vertex -9, 0, 37, -24, 978, 0x8A, 0xF9, 0x2E, 0xFF
vertex 0, -8, 37, 974, 976, 0xFD, 0x89, 0x29, 0xFF
vertex 0, 0, 60, 476, -6, 0xF8, 0xEE, 0x7D, 0xFF
vertex 37, -8, 0, -20, 968, 0x29, 0x89, 0xFD, 0xFF
vertex 37, 0, -9, 954, 972, 0x2E, 0xF9, 0x8A, 0xFF
vertex 60, 0, 0, 402, -10, 0x7D, 0xEE, 0xF8, 0xFF
vertex 37, 10, 0, -8, 964, 0x32, 0x74, 0xFD, 0xFF
vertex 37, 0, 10, 978, 962, 0x32, 0xF9, 0x74, 0xFF
vertex 60, 0, 0, 462, -18, 0x7D, 0xEE, 0xF8, 0xFF
bomb_seg6_vertex_0605A610: # 0x0605A610
vertex -59, 0, 0, 452, 20, 0x83, 0xEE, 0xF8, 0xFF
vertex -36, 0, -9, -4, 974, 0xD2, 0xF9, 0x8A, 0xFF
vertex -36, -8, 0, 948, 980, 0xD7, 0x89, 0xFD, 0xFF
vertex 37, 0, 10, -10, 970, 0x32, 0xF9, 0x74, 0xFF
vertex 37, -8, 0, 960, 966, 0x29, 0x89, 0xFD, 0xFF
vertex 60, 0, 0, 488, -8, 0x7D, 0xEE, 0xF8, 0xFF
vertex -59, 0, 0, 370, 10, 0x83, 0xEE, 0xF8, 0xFF
vertex -36, 0, 10, -6, 964, 0xCE, 0xF9, 0x74, 0xFF
vertex -36, 10, 0, 950, 968, 0xCE, 0x74, 0xFD, 0xFF
vertex -59, 0, 0, 428, 12, 0x83, 0xEE, 0xF8, 0xFF
vertex -36, 10, 0, 8, 968, 0xCE, 0x74, 0xFD, 0xFF
vertex -36, 0, -9, 938, 974, 0xD2, 0xF9, 0x8A, 0xFF
vertex -59, 0, 0, 464, -18, 0x83, 0xEE, 0xF8, 0xFF
vertex -36, -8, 0, -4, 966, 0xD7, 0x89, 0xFD, 0xFF
vertex -36, 0, 10, 964, 974, 0xCE, 0xF9, 0x74, 0xFF
bomb_seg6_vertex_0605A700: # 0x0605A700
vertex 0, 0, -59, 464, 4, 0xF8, 0xEE, 0x83, 0xFF
vertex 0, 10, -36, -14, 968, 0xFD, 0x74, 0xCE, 0xFF
vertex 10, 0, -36, 942, 976, 0x74, 0xF9, 0xCE, 0xFF
vertex 0, 0, -59, 480, -20, 0xF8, 0xEE, 0x83, 0xFF
vertex -9, 0, -36, 20, 962, 0x8A, 0xF9, 0xD2, 0xFF
vertex 0, 10, -36, 946, 966, 0xFD, 0x74, 0xCE, 0xFF
vertex 0, 0, -59, 412, 6, 0xF8, 0xEE, 0x83, 0xFF
vertex 10, 0, -36, -16, 970, 0x74, 0xF9, 0xCE, 0xFF
vertex 0, -8, -36, 968, 968, 0xFD, 0x89, 0xD7, 0xFF
vertex 0, 0, -59, 402, 8, 0xF8, 0xEE, 0x83, 0xFF
vertex 0, -8, -36, 0, 970, 0xFD, 0x89, 0xD7, 0xFF
vertex -9, 0, -36, 952, 964, 0x8A, 0xF9, 0xD2, 0xFF
glabel bomb_seg6_dl_0605A7C0 # 0x0605A7C0 - 0x0605A7F8
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bomb_seg6_texture_06057AC0
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x100
gsSPVertex bomb_seg6_vertex_0605A2C0, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSPEndDisplayList
glabel bomb_seg6_dl_0605A7F8 # 0x0605A7F8 - 0x0605A830
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bomb_seg6_texture_06058AC0
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x100
gsSPVertex bomb_seg6_vertex_0605A300, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSPEndDisplayList
glabel bomb_seg6_dl_0605A830 # 0x0605A830 - 0x0605A8A8
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_TEXEL0, G_ACMUX_0, G_ACMUX_SHADE, G_ACMUX_0
gsSPClearGeometryMode G_LIGHTING
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 252
gsSPDisplayList bomb_seg6_dl_0605A7C0
gsSPDisplayList bomb_seg6_dl_0605A7F8
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_LIGHTING
gsSPEndDisplayList
glabel bomb_seg6_dl_0605A8A8 # 0x0605A8A8 - 0x0605A9C0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bomb_seg6_texture_06059AC0
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPLight bomb_seg6_light_06057AB0, 1
gsSPLight bomb_seg6_light_06057AA8, 2
gsSPVertex bomb_seg6_vertex_0605A340, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex bomb_seg6_vertex_0605A430, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex bomb_seg6_vertex_0605A520, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex bomb_seg6_vertex_0605A610, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex bomb_seg6_vertex_0605A700, 12, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSPEndDisplayList
glabel bomb_seg6_dl_0605A9C0 # 0x0605A9C0 - 0x0605AA20
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList bomb_seg6_dl_0605A8A8
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPEndDisplayList

2
actors/boo/collision.s Normal file
View file

@ -0,0 +1,2 @@
# Boo

15
actors/boo/geo.s Normal file
View file

@ -0,0 +1,15 @@
glabel boo_geo # 0x0C000224
geo_shadow SHADOW_CIRCLE_4_VERTS, 0x96, 70
geo_open_node
geo_scale 0x00, 26214
geo_open_node
geo_asm 0, Geo18_8029D924
geo_switch_case 2, geo_switch_anim_state
geo_open_node
geo_display_list LAYER_OPAQUE, boo_seg5_dl_0500C1B0
geo_display_list LAYER_TRANSPARENT, boo_seg5_dl_0500C1B0
geo_close_node
geo_close_node
geo_close_node
geo_close_node #! more close than open nodes
geo_end

319
actors/boo/model.s Normal file
View file

@ -0,0 +1,319 @@
# Boo
.balign 8
boo_seg5_light_05009B28: # 0x05009B28
.byte 0x97, 0x9A, 0xFF, 0x00, 0x97, 0x9A, 0xFF, 0x00
boo_seg5_light_05009B30: # 0x05009B30
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
boo_seg5_texture_05009B40: # 0x05009B40
.incbin "actors/boo/boo_eyes.rgba16"
boo_seg5_texture_0500AB40: # 0x0500AB40
.incbin "actors/boo/boo_mouth.rgba16"
boo_seg5_vertex_0500B340: # 0x0500B340
vertex 0, -117, 131, 458, 990, 0x00, 0x9D, 0x4E, 0x9E
vertex 87, -78, 123, 1096, 684, 0x53, 0xC9, 0x4E, 0x9E
vertex 0, -47, 171, 458, 168, 0x00, 0xE9, 0x7C, 0x9E
vertex 0, -117, 131, 458, 990, 0x00, 0x9D, 0x4E, 0x9E
vertex 0, -47, 171, 458, 168, 0x00, 0xE9, 0x7C, 0x9E
vertex -86, -78, 123, -176, 684, 0xAD, 0xC9, 0x4E, 0x9E
vertex 87, -78, 123, 1096, 684, 0x53, 0xC9, 0x4E, 0x9E
vertex 108, 20, 118, 1248, -172, 0x57, 0x14, 0x5A, 0x9E
vertex 0, -47, 171, 458, 168, 0x00, 0xE9, 0x7C, 0x9E
vertex -86, -78, 123, -176, 684, 0xAD, 0xC9, 0x4E, 0x9E
vertex 0, -47, 171, 458, 168, 0x00, 0xE9, 0x7C, 0x9E
vertex -107, 20, 118, -328, -172, 0xA9, 0x14, 0x59, 0x9E
boo_seg5_vertex_0500B400: # 0x0500B400
vertex -107, 20, 118, -656, 538, 0xA9, 0x14, 0x59, 0x9E
vertex 0, 60, 166, 988, 148, 0x00, 0x26, 0x79, 0x9E
vertex -57, 128, 108, 76, -690, 0xD3, 0x60, 0x45, 0x9E
vertex -107, 20, 118, -656, 538, 0xA9, 0x14, 0x59, 0x9E
vertex 0, -47, 171, 1024, 1364, 0x00, 0xE9, 0x7C, 0x9E
vertex 0, 60, 166, 988, 148, 0x00, 0x26, 0x79, 0x9E
vertex 0, 60, 166, 988, 148, 0x00, 0x26, 0x79, 0x9E
vertex 0, -47, 171, 1024, 1364, 0x00, 0xE9, 0x7C, 0x9E
vertex 108, 20, 118, 2660, 540, 0x57, 0x14, 0x5A, 0x9E
vertex 108, 20, 118, 2660, 540, 0x57, 0x14, 0x5A, 0x9E
vertex 58, 128, 108, 1852, -688, 0x35, 0x58, 0x49, 0x9E
vertex 0, 60, 166, 988, 148, 0x00, 0x26, 0x79, 0x9E
boo_seg5_vertex_0500B4C0: # 0x0500B4C0
vertex -135, -70, 23, 0, 0, 0xB2, 0xAA, 0x33, 0x9E
vertex -127, -69, -89, 0, 0, 0x9C, 0xC6, 0xCE, 0x9E
vertex -72, -138, 30, 0, 0, 0xCF, 0x8C, 0x0A, 0x9E
vertex 73, -138, 30, 0, 0, 0x39, 0x90, 0x0E, 0x9E
vertex 0, -117, 131, 0, 0, 0x00, 0x9D, 0x4E, 0x9E
vertex -72, -138, 30, 0, 0, 0xCF, 0x8C, 0x0A, 0x9E
vertex -86, -78, 123, 0, 0, 0xAD, 0xC9, 0x4E, 0x9E
vertex -135, -70, 23, 0, 0, 0xB2, 0xAA, 0x33, 0x9E
vertex -72, -138, 30, 0, 0, 0xCF, 0x8C, 0x0A, 0x9E
vertex -59, -126, -86, 0, 0, 0xE1, 0x90, 0xD0, 0x9E
vertex 60, -126, -86, 0, 0, 0x20, 0x8B, 0xDB, 0x9E
vertex -72, -138, 30, 0, 0, 0xCF, 0x8C, 0x0A, 0x9E
vertex -72, -138, 30, 0, 0, 0xCF, 0x8C, 0x0A, 0x9E
vertex 60, -126, -86, 0, 0, 0x20, 0x8B, 0xDB, 0x9E
vertex 73, -138, 30, 0, 0, 0x39, 0x90, 0x0E, 0x9E
boo_seg5_vertex_0500B5B0: # 0x0500B5B0
vertex -86, -78, 123, 0, 0, 0xAD, 0xC9, 0x4E, 0x9E
vertex -72, -138, 30, 0, 0, 0xCF, 0x8C, 0x0A, 0x9E
vertex 0, -117, 131, 0, 0, 0x00, 0x9D, 0x4E, 0x9E
vertex -59, -126, -86, 0, 0, 0xE1, 0x90, 0xD0, 0x9E
vertex -72, -138, 30, 0, 0, 0xCF, 0x8C, 0x0A, 0x9E
vertex -127, -69, -89, 0, 0, 0x9C, 0xC6, 0xCE, 0x9E
vertex 60, -126, -86, 0, 0, 0x20, 0x8B, 0xDB, 0x9E
vertex -59, -126, -86, 0, 0, 0xE1, 0x90, 0xD0, 0x9E
vertex 46, -82, -160, 0, 0, 0x2E, 0xBA, 0xA2, 0x9E
vertex 46, -82, -160, 0, 0, 0x2E, 0xBA, 0xA2, 0x9E
vertex 128, -69, -89, 0, 0, 0x64, 0xC6, 0xCE, 0x9E
vertex 60, -126, -86, 0, 0, 0x20, 0x8B, 0xDB, 0x9E
vertex 60, -126, -86, 0, 0, 0x20, 0x8B, 0xDB, 0x9E
vertex 128, -69, -89, 0, 0, 0x64, 0xC6, 0xCE, 0x9E
vertex 73, -138, 30, 0, 0, 0x39, 0x90, 0x0E, 0x9E
boo_seg5_vertex_0500B6A0: # 0x0500B6A0
vertex 136, -70, 23, 0, 0, 0x4E, 0xAA, 0x33, 0x9E
vertex 73, -138, 30, 0, 0, 0x39, 0x90, 0x0E, 0x9E
vertex 128, -69, -89, 0, 0, 0x64, 0xC6, 0xCE, 0x9E
vertex 87, -78, 123, 0, 0, 0x53, 0xC9, 0x4E, 0x9E
vertex 73, -138, 30, 0, 0, 0x39, 0x90, 0x0E, 0x9E
vertex 136, -70, 23, 0, 0, 0x4E, 0xAA, 0x33, 0x9E
vertex 87, -78, 123, 0, 0, 0x53, 0xC9, 0x4E, 0x9E
vertex 0, -117, 131, 0, 0, 0x00, 0x9D, 0x4E, 0x9E
vertex 73, -138, 30, 0, 0, 0x39, 0x90, 0x0E, 0x9E
vertex -43, 162, 15, 0, 0, 0xDF, 0x7A, 0xF8, 0x9E
vertex -57, 128, 108, 0, 0, 0xD3, 0x60, 0x45, 0x9E
vertex 44, 162, 15, 0, 0, 0x21, 0x7A, 0x09, 0x9E
vertex -43, 162, 15, 0, 0, 0xDF, 0x7A, 0xF8, 0x9E
vertex 44, 162, 15, 0, 0, 0x21, 0x7A, 0x09, 0x9E
vertex 42, 130, -88, 0, 0, 0x25, 0x6A, 0xC7, 0x9E
boo_seg5_vertex_0500B790: # 0x0500B790
vertex 125, 99, 15, 0, 0, 0x65, 0x4C, 0x08, 0x9E
vertex 44, 162, 15, 0, 0, 0x21, 0x7A, 0x09, 0x9E
vertex 58, 128, 108, 0, 0, 0x35, 0x58, 0x49, 0x9E
vertex 58, 128, 108, 0, 0, 0x35, 0x58, 0x49, 0x9E
vertex 44, 162, 15, 0, 0, 0x21, 0x7A, 0x09, 0x9E
vertex -57, 128, 108, 0, 0, 0xD3, 0x60, 0x45, 0x9E
vertex 44, 162, 15, 0, 0, 0x21, 0x7A, 0x09, 0x9E
vertex 125, 99, 15, 0, 0, 0x65, 0x4C, 0x08, 0x9E
vertex 42, 130, -88, 0, 0, 0x25, 0x6A, 0xC7, 0x9E
vertex 122, 59, -94, 0, 0, 0x5F, 0x2E, 0xBB, 0x9E
vertex 42, 130, -88, 0, 0, 0x25, 0x6A, 0xC7, 0x9E
vertex 125, 99, 15, 0, 0, 0x65, 0x4C, 0x08, 0x9E
vertex 0, 62, -162, 0, 0, 0x00, 0x5A, 0xA8, 0x9E
vertex 42, 130, -88, 0, 0, 0x25, 0x6A, 0xC7, 0x9E
vertex 122, 59, -94, 0, 0, 0x5F, 0x2E, 0xBB, 0x9E
boo_seg5_vertex_0500B880: # 0x0500B880
vertex -41, 130, -88, 0, 0, 0xD4, 0x65, 0xC3, 0x9E
vertex -43, 162, 15, 0, 0, 0xDF, 0x7A, 0xF8, 0x9E
vertex 42, 130, -88, 0, 0, 0x25, 0x6A, 0xC7, 0x9E
vertex 0, 62, -162, 0, 0, 0x00, 0x5A, 0xA8, 0x9E
vertex -41, 130, -88, 0, 0, 0xD4, 0x65, 0xC3, 0x9E
vertex 42, 130, -88, 0, 0, 0x25, 0x6A, 0xC7, 0x9E
vertex -135, -70, 23, 0, 0, 0xB2, 0xAA, 0x33, 0x9E
vertex -86, -78, 123, 0, 0, 0xAD, 0xC9, 0x4E, 0x9E
vertex -155, 6, 33, 0, 0, 0x87, 0x0F, 0x22, 0x9E
vertex -86, -78, 123, 0, 0, 0xAD, 0xC9, 0x4E, 0x9E
vertex -107, 20, 118, 0, 0, 0xA9, 0x14, 0x59, 0x9E
vertex -155, 6, 33, 0, 0, 0x87, 0x0F, 0x22, 0x9E
vertex -199, -60, 25, 0, 0, 0xA2, 0xBF, 0x36, 0x9E
vertex -127, -69, -89, 0, 0, 0x9C, 0xC6, 0xCE, 0x9E
vertex -135, -70, 23, 0, 0, 0xB2, 0xAA, 0x33, 0x9E
boo_seg5_vertex_0500B970: # 0x0500B970
vertex -107, 20, 118, 0, 0, 0xA9, 0x14, 0x59, 0x9E
vertex -57, 128, 108, 0, 0, 0xD3, 0x60, 0x45, 0x9E
vertex -124, 99, 15, 0, 0, 0x9B, 0x4C, 0x08, 0x9E
vertex -124, 99, 15, 0, 0, 0x9B, 0x4C, 0x08, 0x9E
vertex -155, 6, 33, 0, 0, 0x87, 0x0F, 0x22, 0x9E
vertex -107, 20, 118, 0, 0, 0xA9, 0x14, 0x59, 0x9E
vertex -121, 59, -94, 0, 0, 0xA1, 0x2E, 0xBB, 0x9E
vertex -127, -69, -89, 0, 0, 0x9C, 0xC6, 0xCE, 0x9E
vertex -155, 6, 33, 0, 0, 0x87, 0x0F, 0x22, 0x9E
vertex -121, 59, -94, 0, 0, 0xA1, 0x2E, 0xBB, 0x9E
vertex -155, 6, 33, 0, 0, 0x87, 0x0F, 0x22, 0x9E
vertex -124, 99, 15, 0, 0, 0x9B, 0x4C, 0x08, 0x9E
vertex -199, -60, 25, 0, 0, 0xA2, 0xBF, 0x36, 0x9E
vertex -155, 6, 33, 0, 0, 0x87, 0x0F, 0x22, 0x9E
vertex -127, -69, -89, 0, 0, 0x9C, 0xC6, 0xCE, 0x9E
boo_seg5_vertex_0500BA60: # 0x0500BA60
vertex -199, -60, 25, 0, 0, 0xA2, 0xBF, 0x36, 0x9E
vertex -135, -70, 23, 0, 0, 0xB2, 0xAA, 0x33, 0x9E
vertex -155, 6, 33, 0, 0, 0x87, 0x0F, 0x22, 0x9E
vertex 200, -60, 25, 0, 0, 0x5E, 0xBF, 0x36, 0x9E
vertex 128, -69, -89, 0, 0, 0x64, 0xC6, 0xCE, 0x9E
vertex 156, 6, 33, 0, 0, 0x79, 0x0F, 0x22, 0x9E
vertex 108, 20, 118, 0, 0, 0x57, 0x14, 0x5A, 0x9E
vertex 156, 6, 33, 0, 0, 0x79, 0x0F, 0x22, 0x9E
vertex 125, 99, 15, 0, 0, 0x65, 0x4C, 0x08, 0x9E
vertex 125, 99, 15, 0, 0, 0x65, 0x4C, 0x08, 0x9E
vertex 156, 6, 33, 0, 0, 0x79, 0x0F, 0x22, 0x9E
vertex 122, 59, -94, 0, 0, 0x5F, 0x2E, 0xBB, 0x9E
vertex 200, -60, 25, 0, 0, 0x5E, 0xBF, 0x36, 0x9E
vertex 156, 6, 33, 0, 0, 0x79, 0x0F, 0x22, 0x9E
vertex 136, -70, 23, 0, 0, 0x4E, 0xAA, 0x33, 0x9E
boo_seg5_vertex_0500BB50: # 0x0500BB50
vertex 156, 6, 33, 0, 0, 0x79, 0x0F, 0x22, 0x9E
vertex 128, -69, -89, 0, 0, 0x64, 0xC6, 0xCE, 0x9E
vertex 122, 59, -94, 0, 0, 0x5F, 0x2E, 0xBB, 0x9E
vertex 200, -60, 25, 0, 0, 0x5E, 0xBF, 0x36, 0x9E
vertex 136, -70, 23, 0, 0, 0x4E, 0xAA, 0x33, 0x9E
vertex 128, -69, -89, 0, 0, 0x64, 0xC6, 0xCE, 0x9E
vertex -43, 162, 15, 0, 0, 0xDF, 0x7A, 0xF8, 0x9E
vertex -41, 130, -88, 0, 0, 0xD4, 0x65, 0xC3, 0x9E
vertex -124, 99, 15, 0, 0, 0x9B, 0x4C, 0x08, 0x9E
vertex -57, 128, 108, 0, 0, 0xD3, 0x60, 0x45, 0x9E
vertex -43, 162, 15, 0, 0, 0xDF, 0x7A, 0xF8, 0x9E
vertex -124, 99, 15, 0, 0, 0x9B, 0x4C, 0x08, 0x9E
vertex 128, -69, -89, 0, 0, 0x64, 0xC6, 0xCE, 0x9E
vertex 46, -82, -160, 0, 0, 0x2E, 0xBA, 0xA2, 0x9E
vertex 122, 59, -94, 0, 0, 0x5F, 0x2E, 0xBB, 0x9E
boo_seg5_vertex_0500BC40: # 0x0500BC40
vertex 0, 62, -162, 0, 0, 0x00, 0x5A, 0xA8, 0x9E
vertex 122, 59, -94, 0, 0, 0x5F, 0x2E, 0xBB, 0x9E
vertex 0, 24, -213, 0, 0, 0x00, 0x22, 0x86, 0x9E
vertex 0, 24, -213, 0, 0, 0x00, 0x22, 0x86, 0x9E
vertex 122, 59, -94, 0, 0, 0x5F, 0x2E, 0xBB, 0x9E
vertex 46, -82, -160, 0, 0, 0x2E, 0xBA, 0xA2, 0x9E
vertex 0, 62, -162, 0, 0, 0x00, 0x5A, 0xA8, 0x9E
vertex 0, 24, -213, 0, 0, 0x00, 0x22, 0x86, 0x9E
vertex -121, 59, -94, 0, 0, 0xA1, 0x2E, 0xBB, 0x9E
vertex -121, 59, -94, 0, 0, 0xA1, 0x2E, 0xBB, 0x9E
vertex -41, 130, -88, 0, 0, 0xD4, 0x65, 0xC3, 0x9E
vertex 0, 62, -162, 0, 0, 0x00, 0x5A, 0xA8, 0x9E
vertex 0, 24, -213, 0, 0, 0x00, 0x22, 0x86, 0x9E
vertex 46, -82, -160, 0, 0, 0x2E, 0xBA, 0xA2, 0x9E
vertex -45, -82, -160, 0, 0, 0xC9, 0xC5, 0x9F, 0x9E
boo_seg5_vertex_0500BD30: # 0x0500BD30
vertex -45, -82, -160, 0, 0, 0xC9, 0xC5, 0x9F, 0x9E
vertex 46, -82, -160, 0, 0, 0x2E, 0xBA, 0xA2, 0x9E
vertex -59, -126, -86, 0, 0, 0xE1, 0x90, 0xD0, 0x9E
vertex -127, -69, -89, 0, 0, 0x9C, 0xC6, 0xCE, 0x9E
vertex -121, 59, -94, 0, 0, 0xA1, 0x2E, 0xBB, 0x9E
vertex -45, -82, -160, 0, 0, 0xC9, 0xC5, 0x9F, 0x9E
vertex -45, -82, -160, 0, 0, 0xC9, 0xC5, 0x9F, 0x9E
vertex -59, -126, -86, 0, 0, 0xE1, 0x90, 0xD0, 0x9E
vertex -127, -69, -89, 0, 0, 0x9C, 0xC6, 0xCE, 0x9E
vertex 0, 24, -213, 0, 0, 0x00, 0x22, 0x86, 0x9E
vertex -45, -82, -160, 0, 0, 0xC9, 0xC5, 0x9F, 0x9E
vertex -121, 59, -94, 0, 0, 0xA1, 0x2E, 0xBB, 0x9E
vertex -41, 130, -88, 0, 0, 0xD4, 0x65, 0xC3, 0x9E
vertex -121, 59, -94, 0, 0, 0xA1, 0x2E, 0xBB, 0x9E
vertex -124, 99, 15, 0, 0, 0x9B, 0x4C, 0x08, 0x9E
boo_seg5_vertex_0500BE20: # 0x0500BE20
vertex -57, 128, 108, 0, 0, 0xD3, 0x60, 0x45, 0x9E
vertex 0, 60, 166, 0, 0, 0x00, 0x26, 0x79, 0x9E
vertex 58, 128, 108, 0, 0, 0x35, 0x58, 0x49, 0x9E
vertex 108, 20, 118, 0, 0, 0x57, 0x14, 0x5A, 0x9E
vertex 125, 99, 15, 0, 0, 0x65, 0x4C, 0x08, 0x9E
vertex 58, 128, 108, 0, 0, 0x35, 0x58, 0x49, 0x9E
vertex 136, -70, 23, 0, 0, 0x4E, 0xAA, 0x33, 0x9E
vertex 156, 6, 33, 0, 0, 0x79, 0x0F, 0x22, 0x9E
vertex 87, -78, 123, 0, 0, 0x53, 0xC9, 0x4E, 0x9E
vertex 108, 20, 118, 0, 0, 0x57, 0x14, 0x5A, 0x9E
vertex 87, -78, 123, 0, 0, 0x53, 0xC9, 0x4E, 0x9E
vertex 156, 6, 33, 0, 0, 0x79, 0x0F, 0x22, 0x9E
glabel boo_seg5_dl_0500BEE0 # 0x0500BEE0 - 0x0500BF48
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, boo_seg5_texture_0500AB40
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPLight boo_seg5_light_05009B30, 1
gsSPLight boo_seg5_light_05009B28, 2
gsSPVertex boo_seg5_vertex_0500B340, 12, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSPEndDisplayList
glabel boo_seg5_dl_0500BF48 # 0x0500BF48 - 0x0500BFA0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, boo_seg5_texture_05009B40
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsSPVertex boo_seg5_vertex_0500B400, 12, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSPEndDisplayList
glabel boo_seg5_dl_0500BFA0 # 0x0500BFA0 - 0x0500C1B0
gsSPVertex boo_seg5_vertex_0500B4C0, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex boo_seg5_vertex_0500B5B0, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex boo_seg5_vertex_0500B6A0, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex boo_seg5_vertex_0500B790, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex boo_seg5_vertex_0500B880, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex boo_seg5_vertex_0500B970, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex boo_seg5_vertex_0500BA60, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex boo_seg5_vertex_0500BB50, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex boo_seg5_vertex_0500BC40, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex boo_seg5_vertex_0500BD30, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex boo_seg5_vertex_0500BE20, 12, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSPEndDisplayList
glabel boo_seg5_dl_0500C1B0 # 0x0500C1B0 - 0x0500C250
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_SHADE, G_CCMUX_TEXEL0_ALPHA, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_ENVIRONMENT
gsSPNumLights NUMLIGHTS_0 # I cannot tell if they meant to put 0 or 1 here.
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList boo_seg5_dl_0500BEE0
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPDisplayList boo_seg5_dl_0500BF48
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_ENVIRONMENT
gsSPDisplayList boo_seg5_dl_0500BFA0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsDPSetEnvColor 255, 255, 255, 255
gsSPEndDisplayList

View file

@ -0,0 +1,2 @@
# Boo (Castle)

15
actors/boo_castle/geo.s Normal file
View file

@ -0,0 +1,15 @@
glabel boo_castle_geo # 0x0D0005B0
geo_shadow SHADOW_CIRCLE_4_VERTS, 0x96, 70
geo_open_node
geo_scale 0x00, 26214
geo_open_node
geo_asm 0, Geo18_8029D924
geo_switch_case 2, geo_switch_anim_state
geo_open_node
geo_display_list LAYER_OPAQUE, boo_castle_seg6_dl_06017CE0
geo_display_list LAYER_TRANSPARENT, boo_castle_seg6_dl_06017CE0
geo_close_node
geo_close_node
geo_close_node
geo_close_node #! more close than open nodes
geo_end

319
actors/boo_castle/model.s Normal file
View file

@ -0,0 +1,319 @@
# Boo (Castle)
.balign 8
boo_castle_seg6_light_06015658: # 0x06015658
.byte 0x97, 0x9A, 0xFF, 0x00, 0x97, 0x9A, 0xFF, 0x00
boo_castle_seg6_light_06015660: # 0x06015660
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
boo_castle_seg6_texture_06015670: # 0x06015670
.incbin "actors/boo_castle/bbh_boo_eyes.rgba16"
boo_castle_seg6_texture_06016670: # 0x06016670
.incbin "actors/boo_castle/bbh_boo_mouth.rgba16"
boo_castle_seg6_vertex_06016E70: # 0x06016E70
vertex 0, -117, 131, 458, 990, 0x00, 0x9D, 0x4E, 0x9E
vertex 87, -78, 123, 1096, 684, 0x53, 0xC9, 0x4E, 0x9E
vertex 0, -47, 171, 458, 168, 0x00, 0xE9, 0x7C, 0x9E
vertex 0, -117, 131, 458, 990, 0x00, 0x9D, 0x4E, 0x9E
vertex 0, -47, 171, 458, 168, 0x00, 0xE9, 0x7C, 0x9E
vertex -86, -78, 123, -176, 684, 0xAD, 0xC9, 0x4E, 0x9E
vertex 87, -78, 123, 1096, 684, 0x53, 0xC9, 0x4E, 0x9E
vertex 108, 20, 118, 1248, -172, 0x57, 0x14, 0x5A, 0x9E
vertex 0, -47, 171, 458, 168, 0x00, 0xE9, 0x7C, 0x9E
vertex -86, -78, 123, -176, 684, 0xAD, 0xC9, 0x4E, 0x9E
vertex 0, -47, 171, 458, 168, 0x00, 0xE9, 0x7C, 0x9E
vertex -107, 20, 118, -328, -172, 0xA9, 0x14, 0x59, 0x9E
boo_castle_seg6_vertex_06016F30: # 0x06016F30
vertex -107, 20, 118, -656, 538, 0xA9, 0x14, 0x59, 0x9E
vertex 0, 60, 166, 988, 148, 0x00, 0x26, 0x79, 0x9E
vertex -57, 128, 108, 76, -690, 0xD3, 0x60, 0x45, 0x9E
vertex -107, 20, 118, -656, 538, 0xA9, 0x14, 0x59, 0x9E
vertex 0, -47, 171, 1024, 1364, 0x00, 0xE9, 0x7C, 0x9E
vertex 0, 60, 166, 988, 148, 0x00, 0x26, 0x79, 0x9E
vertex 0, 60, 166, 988, 148, 0x00, 0x26, 0x79, 0x9E
vertex 0, -47, 171, 1024, 1364, 0x00, 0xE9, 0x7C, 0x9E
vertex 108, 20, 118, 2660, 540, 0x57, 0x14, 0x5A, 0x9E
vertex 108, 20, 118, 2660, 540, 0x57, 0x14, 0x5A, 0x9E
vertex 58, 128, 108, 1852, -688, 0x35, 0x58, 0x49, 0x9E
vertex 0, 60, 166, 988, 148, 0x00, 0x26, 0x79, 0x9E
boo_castle_seg6_vertex_06016FF0: # 0x06016FF0
vertex -135, -70, 23, 0, 0, 0xB2, 0xAA, 0x33, 0x9E
vertex -127, -69, -89, 0, 0, 0x9C, 0xC6, 0xCE, 0x9E
vertex -72, -138, 30, 0, 0, 0xCF, 0x8C, 0x0A, 0x9E
vertex 73, -138, 30, 0, 0, 0x39, 0x90, 0x0E, 0x9E
vertex 0, -117, 131, 0, 0, 0x00, 0x9D, 0x4E, 0x9E
vertex -72, -138, 30, 0, 0, 0xCF, 0x8C, 0x0A, 0x9E
vertex -86, -78, 123, 0, 0, 0xAD, 0xC9, 0x4E, 0x9E
vertex -135, -70, 23, 0, 0, 0xB2, 0xAA, 0x33, 0x9E
vertex -72, -138, 30, 0, 0, 0xCF, 0x8C, 0x0A, 0x9E
vertex -59, -126, -86, 0, 0, 0xE1, 0x90, 0xD0, 0x9E
vertex 60, -126, -86, 0, 0, 0x20, 0x8B, 0xDB, 0x9E
vertex -72, -138, 30, 0, 0, 0xCF, 0x8C, 0x0A, 0x9E
vertex -72, -138, 30, 0, 0, 0xCF, 0x8C, 0x0A, 0x9E
vertex 60, -126, -86, 0, 0, 0x20, 0x8B, 0xDB, 0x9E
vertex 73, -138, 30, 0, 0, 0x39, 0x90, 0x0E, 0x9E
boo_castle_seg6_vertex_060170E0: # 0x060170E0
vertex -86, -78, 123, 0, 0, 0xAD, 0xC9, 0x4E, 0x9E
vertex -72, -138, 30, 0, 0, 0xCF, 0x8C, 0x0A, 0x9E
vertex 0, -117, 131, 0, 0, 0x00, 0x9D, 0x4E, 0x9E
vertex -59, -126, -86, 0, 0, 0xE1, 0x90, 0xD0, 0x9E
vertex -72, -138, 30, 0, 0, 0xCF, 0x8C, 0x0A, 0x9E
vertex -127, -69, -89, 0, 0, 0x9C, 0xC6, 0xCE, 0x9E
vertex 60, -126, -86, 0, 0, 0x20, 0x8B, 0xDB, 0x9E
vertex -59, -126, -86, 0, 0, 0xE1, 0x90, 0xD0, 0x9E
vertex 46, -82, -160, 0, 0, 0x2E, 0xBA, 0xA2, 0x9E
vertex 46, -82, -160, 0, 0, 0x2E, 0xBA, 0xA2, 0x9E
vertex 128, -69, -89, 0, 0, 0x64, 0xC6, 0xCE, 0x9E
vertex 60, -126, -86, 0, 0, 0x20, 0x8B, 0xDB, 0x9E
vertex 60, -126, -86, 0, 0, 0x20, 0x8B, 0xDB, 0x9E
vertex 128, -69, -89, 0, 0, 0x64, 0xC6, 0xCE, 0x9E
vertex 73, -138, 30, 0, 0, 0x39, 0x90, 0x0E, 0x9E
boo_castle_seg6_vertex_060171D0: # 0x060171D0
vertex 136, -70, 23, 0, 0, 0x4E, 0xAA, 0x33, 0x9E
vertex 73, -138, 30, 0, 0, 0x39, 0x90, 0x0E, 0x9E
vertex 128, -69, -89, 0, 0, 0x64, 0xC6, 0xCE, 0x9E
vertex 87, -78, 123, 0, 0, 0x53, 0xC9, 0x4E, 0x9E
vertex 73, -138, 30, 0, 0, 0x39, 0x90, 0x0E, 0x9E
vertex 136, -70, 23, 0, 0, 0x4E, 0xAA, 0x33, 0x9E
vertex 87, -78, 123, 0, 0, 0x53, 0xC9, 0x4E, 0x9E
vertex 0, -117, 131, 0, 0, 0x00, 0x9D, 0x4E, 0x9E
vertex 73, -138, 30, 0, 0, 0x39, 0x90, 0x0E, 0x9E
vertex -43, 162, 15, 0, 0, 0xDF, 0x7A, 0xF8, 0x9E
vertex -57, 128, 108, 0, 0, 0xD3, 0x60, 0x45, 0x9E
vertex 44, 162, 15, 0, 0, 0x21, 0x7A, 0x09, 0x9E
vertex -43, 162, 15, 0, 0, 0xDF, 0x7A, 0xF8, 0x9E
vertex 44, 162, 15, 0, 0, 0x21, 0x7A, 0x09, 0x9E
vertex 42, 130, -88, 0, 0, 0x25, 0x6A, 0xC7, 0x9E
boo_castle_seg6_vertex_060172C0: # 0x060172C0
vertex 125, 99, 15, 0, 0, 0x65, 0x4C, 0x08, 0x9E
vertex 44, 162, 15, 0, 0, 0x21, 0x7A, 0x09, 0x9E
vertex 58, 128, 108, 0, 0, 0x35, 0x58, 0x49, 0x9E
vertex 58, 128, 108, 0, 0, 0x35, 0x58, 0x49, 0x9E
vertex 44, 162, 15, 0, 0, 0x21, 0x7A, 0x09, 0x9E
vertex -57, 128, 108, 0, 0, 0xD3, 0x60, 0x45, 0x9E
vertex 44, 162, 15, 0, 0, 0x21, 0x7A, 0x09, 0x9E
vertex 125, 99, 15, 0, 0, 0x65, 0x4C, 0x08, 0x9E
vertex 42, 130, -88, 0, 0, 0x25, 0x6A, 0xC7, 0x9E
vertex 122, 59, -94, 0, 0, 0x5F, 0x2E, 0xBB, 0x9E
vertex 42, 130, -88, 0, 0, 0x25, 0x6A, 0xC7, 0x9E
vertex 125, 99, 15, 0, 0, 0x65, 0x4C, 0x08, 0x9E
vertex 0, 62, -162, 0, 0, 0x00, 0x5A, 0xA8, 0x9E
vertex 42, 130, -88, 0, 0, 0x25, 0x6A, 0xC7, 0x9E
vertex 122, 59, -94, 0, 0, 0x5F, 0x2E, 0xBB, 0x9E
boo_castle_seg6_vertex_060173B0: # 0x060173B0
vertex -41, 130, -88, 0, 0, 0xD4, 0x65, 0xC3, 0x9E
vertex -43, 162, 15, 0, 0, 0xDF, 0x7A, 0xF8, 0x9E
vertex 42, 130, -88, 0, 0, 0x25, 0x6A, 0xC7, 0x9E
vertex 0, 62, -162, 0, 0, 0x00, 0x5A, 0xA8, 0x9E
vertex -41, 130, -88, 0, 0, 0xD4, 0x65, 0xC3, 0x9E
vertex 42, 130, -88, 0, 0, 0x25, 0x6A, 0xC7, 0x9E
vertex -135, -70, 23, 0, 0, 0xB2, 0xAA, 0x33, 0x9E
vertex -86, -78, 123, 0, 0, 0xAD, 0xC9, 0x4E, 0x9E
vertex -155, 6, 33, 0, 0, 0x87, 0x0F, 0x22, 0x9E
vertex -86, -78, 123, 0, 0, 0xAD, 0xC9, 0x4E, 0x9E
vertex -107, 20, 118, 0, 0, 0xA9, 0x14, 0x59, 0x9E
vertex -155, 6, 33, 0, 0, 0x87, 0x0F, 0x22, 0x9E
vertex -199, -60, 25, 0, 0, 0xA2, 0xBF, 0x36, 0x9E
vertex -127, -69, -89, 0, 0, 0x9C, 0xC6, 0xCE, 0x9E
vertex -135, -70, 23, 0, 0, 0xB2, 0xAA, 0x33, 0x9E
boo_castle_seg6_vertex_060174A0: # 0x060174A0
vertex -107, 20, 118, 0, 0, 0xA9, 0x14, 0x59, 0x9E
vertex -57, 128, 108, 0, 0, 0xD3, 0x60, 0x45, 0x9E
vertex -124, 99, 15, 0, 0, 0x9B, 0x4C, 0x08, 0x9E
vertex -124, 99, 15, 0, 0, 0x9B, 0x4C, 0x08, 0x9E
vertex -155, 6, 33, 0, 0, 0x87, 0x0F, 0x22, 0x9E
vertex -107, 20, 118, 0, 0, 0xA9, 0x14, 0x59, 0x9E
vertex -121, 59, -94, 0, 0, 0xA1, 0x2E, 0xBB, 0x9E
vertex -127, -69, -89, 0, 0, 0x9C, 0xC6, 0xCE, 0x9E
vertex -155, 6, 33, 0, 0, 0x87, 0x0F, 0x22, 0x9E
vertex -121, 59, -94, 0, 0, 0xA1, 0x2E, 0xBB, 0x9E
vertex -155, 6, 33, 0, 0, 0x87, 0x0F, 0x22, 0x9E
vertex -124, 99, 15, 0, 0, 0x9B, 0x4C, 0x08, 0x9E
vertex -199, -60, 25, 0, 0, 0xA2, 0xBF, 0x36, 0x9E
vertex -155, 6, 33, 0, 0, 0x87, 0x0F, 0x22, 0x9E
vertex -127, -69, -89, 0, 0, 0x9C, 0xC6, 0xCE, 0x9E
boo_castle_seg6_vertex_06017590: # 0x06017590
vertex -199, -60, 25, 0, 0, 0xA2, 0xBF, 0x36, 0x9E
vertex -135, -70, 23, 0, 0, 0xB2, 0xAA, 0x33, 0x9E
vertex -155, 6, 33, 0, 0, 0x87, 0x0F, 0x22, 0x9E
vertex 200, -60, 25, 0, 0, 0x5E, 0xBF, 0x36, 0x9E
vertex 128, -69, -89, 0, 0, 0x64, 0xC6, 0xCE, 0x9E
vertex 156, 6, 33, 0, 0, 0x79, 0x0F, 0x22, 0x9E
vertex 108, 20, 118, 0, 0, 0x57, 0x14, 0x5A, 0x9E
vertex 156, 6, 33, 0, 0, 0x79, 0x0F, 0x22, 0x9E
vertex 125, 99, 15, 0, 0, 0x65, 0x4C, 0x08, 0x9E
vertex 125, 99, 15, 0, 0, 0x65, 0x4C, 0x08, 0x9E
vertex 156, 6, 33, 0, 0, 0x79, 0x0F, 0x22, 0x9E
vertex 122, 59, -94, 0, 0, 0x5F, 0x2E, 0xBB, 0x9E
vertex 200, -60, 25, 0, 0, 0x5E, 0xBF, 0x36, 0x9E
vertex 156, 6, 33, 0, 0, 0x79, 0x0F, 0x22, 0x9E
vertex 136, -70, 23, 0, 0, 0x4E, 0xAA, 0x33, 0x9E
boo_castle_seg6_vertex_06017680: # 0x06017680
vertex 156, 6, 33, 0, 0, 0x79, 0x0F, 0x22, 0x9E
vertex 128, -69, -89, 0, 0, 0x64, 0xC6, 0xCE, 0x9E
vertex 122, 59, -94, 0, 0, 0x5F, 0x2E, 0xBB, 0x9E
vertex 200, -60, 25, 0, 0, 0x5E, 0xBF, 0x36, 0x9E
vertex 136, -70, 23, 0, 0, 0x4E, 0xAA, 0x33, 0x9E
vertex 128, -69, -89, 0, 0, 0x64, 0xC6, 0xCE, 0x9E
vertex -43, 162, 15, 0, 0, 0xDF, 0x7A, 0xF8, 0x9E
vertex -41, 130, -88, 0, 0, 0xD4, 0x65, 0xC3, 0x9E
vertex -124, 99, 15, 0, 0, 0x9B, 0x4C, 0x08, 0x9E
vertex -57, 128, 108, 0, 0, 0xD3, 0x60, 0x45, 0x9E
vertex -43, 162, 15, 0, 0, 0xDF, 0x7A, 0xF8, 0x9E
vertex -124, 99, 15, 0, 0, 0x9B, 0x4C, 0x08, 0x9E
vertex 128, -69, -89, 0, 0, 0x64, 0xC6, 0xCE, 0x9E
vertex 46, -82, -160, 0, 0, 0x2E, 0xBA, 0xA2, 0x9E
vertex 122, 59, -94, 0, 0, 0x5F, 0x2E, 0xBB, 0x9E
boo_castle_seg6_vertex_06017770: # 0x06017770
vertex 0, 62, -162, 0, 0, 0x00, 0x5A, 0xA8, 0x9E
vertex 122, 59, -94, 0, 0, 0x5F, 0x2E, 0xBB, 0x9E
vertex 0, 24, -213, 0, 0, 0x00, 0x22, 0x86, 0x9E
vertex 0, 24, -213, 0, 0, 0x00, 0x22, 0x86, 0x9E
vertex 122, 59, -94, 0, 0, 0x5F, 0x2E, 0xBB, 0x9E
vertex 46, -82, -160, 0, 0, 0x2E, 0xBA, 0xA2, 0x9E
vertex 0, 62, -162, 0, 0, 0x00, 0x5A, 0xA8, 0x9E
vertex 0, 24, -213, 0, 0, 0x00, 0x22, 0x86, 0x9E
vertex -121, 59, -94, 0, 0, 0xA1, 0x2E, 0xBB, 0x9E
vertex -121, 59, -94, 0, 0, 0xA1, 0x2E, 0xBB, 0x9E
vertex -41, 130, -88, 0, 0, 0xD4, 0x65, 0xC3, 0x9E
vertex 0, 62, -162, 0, 0, 0x00, 0x5A, 0xA8, 0x9E
vertex 0, 24, -213, 0, 0, 0x00, 0x22, 0x86, 0x9E
vertex 46, -82, -160, 0, 0, 0x2E, 0xBA, 0xA2, 0x9E
vertex -45, -82, -160, 0, 0, 0xC9, 0xC5, 0x9F, 0x9E
boo_castle_seg6_vertex_06017860: # 0x06017860
vertex -45, -82, -160, 0, 0, 0xC9, 0xC5, 0x9F, 0x9E
vertex 46, -82, -160, 0, 0, 0x2E, 0xBA, 0xA2, 0x9E
vertex -59, -126, -86, 0, 0, 0xE1, 0x90, 0xD0, 0x9E
vertex -127, -69, -89, 0, 0, 0x9C, 0xC6, 0xCE, 0x9E
vertex -121, 59, -94, 0, 0, 0xA1, 0x2E, 0xBB, 0x9E
vertex -45, -82, -160, 0, 0, 0xC9, 0xC5, 0x9F, 0x9E
vertex -45, -82, -160, 0, 0, 0xC9, 0xC5, 0x9F, 0x9E
vertex -59, -126, -86, 0, 0, 0xE1, 0x90, 0xD0, 0x9E
vertex -127, -69, -89, 0, 0, 0x9C, 0xC6, 0xCE, 0x9E
vertex 0, 24, -213, 0, 0, 0x00, 0x22, 0x86, 0x9E
vertex -45, -82, -160, 0, 0, 0xC9, 0xC5, 0x9F, 0x9E
vertex -121, 59, -94, 0, 0, 0xA1, 0x2E, 0xBB, 0x9E
vertex -41, 130, -88, 0, 0, 0xD4, 0x65, 0xC3, 0x9E
vertex -121, 59, -94, 0, 0, 0xA1, 0x2E, 0xBB, 0x9E
vertex -124, 99, 15, 0, 0, 0x9B, 0x4C, 0x08, 0x9E
boo_castle_seg6_vertex_06017950: # 0x06017950
vertex -57, 128, 108, 0, 0, 0xD3, 0x60, 0x45, 0x9E
vertex 0, 60, 166, 0, 0, 0x00, 0x26, 0x79, 0x9E
vertex 58, 128, 108, 0, 0, 0x35, 0x58, 0x49, 0x9E
vertex 108, 20, 118, 0, 0, 0x57, 0x14, 0x5A, 0x9E
vertex 125, 99, 15, 0, 0, 0x65, 0x4C, 0x08, 0x9E
vertex 58, 128, 108, 0, 0, 0x35, 0x58, 0x49, 0x9E
vertex 136, -70, 23, 0, 0, 0x4E, 0xAA, 0x33, 0x9E
vertex 156, 6, 33, 0, 0, 0x79, 0x0F, 0x22, 0x9E
vertex 87, -78, 123, 0, 0, 0x53, 0xC9, 0x4E, 0x9E
vertex 108, 20, 118, 0, 0, 0x57, 0x14, 0x5A, 0x9E
vertex 87, -78, 123, 0, 0, 0x53, 0xC9, 0x4E, 0x9E
vertex 156, 6, 33, 0, 0, 0x79, 0x0F, 0x22, 0x9E
glabel boo_castle_seg6_dl_06017A10 # 0x06017A10 - 0x06017A78
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, boo_castle_seg6_texture_06016670
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPLight boo_castle_seg6_light_06015660, 1
gsSPLight boo_castle_seg6_light_06015658, 2
gsSPVertex boo_castle_seg6_vertex_06016E70, 12, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSPEndDisplayList
glabel boo_castle_seg6_dl_06017A78 # 0x06017A78 - 0x06017AD0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, boo_castle_seg6_texture_06015670
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsSPVertex boo_castle_seg6_vertex_06016F30, 12, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSPEndDisplayList
glabel boo_castle_seg6_dl_06017AD0 # 0x06017AD0 - 0x06017CE0
gsSPVertex boo_castle_seg6_vertex_06016FF0, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex boo_castle_seg6_vertex_060170E0, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex boo_castle_seg6_vertex_060171D0, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex boo_castle_seg6_vertex_060172C0, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex boo_castle_seg6_vertex_060173B0, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex boo_castle_seg6_vertex_060174A0, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex boo_castle_seg6_vertex_06017590, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex boo_castle_seg6_vertex_06017680, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex boo_castle_seg6_vertex_06017770, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex boo_castle_seg6_vertex_06017860, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex boo_castle_seg6_vertex_06017950, 12, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSPEndDisplayList
glabel boo_castle_seg6_dl_06017CE0 # 0x06017CE0 - 0x06017D80
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_SHADE, G_CCMUX_TEXEL0_ALPHA, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_ENVIRONMENT
gsSPNumLights NUMLIGHTS_0 # I cannot tell if they meant to put 0 or 1 here.
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList boo_castle_seg6_dl_06017A10
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPDisplayList boo_castle_seg6_dl_06017A78
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_ENVIRONMENT
gsSPDisplayList boo_castle_seg6_dl_06017AD0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsDPSetEnvColor 255, 255, 255, 255
gsSPEndDisplayList

2
actors/book/collision.s Normal file
View file

@ -0,0 +1,2 @@
# Book (Pushable Book)

6
actors/book/geo.s Normal file
View file

@ -0,0 +1,6 @@
glabel bookend_geo # 0x0C0000C0
geo_culling_radius 300
geo_open_node
geo_display_list LAYER_OPAQUE, book_seg5_dl_05002FB0
geo_close_node
geo_end

83
actors/book/model.s Normal file
View file

@ -0,0 +1,83 @@
# Book (Pushable Book)
# This actor file requires including actor bookend because of bookend_seg5_texture_05000C60
book_seg5_light_05002558: # 0x05002558
.byte 0x7F, 0x7F, 0x7F, 0x00, 0x7F, 0x7F, 0x7F, 0x00
book_seg5_light_05002560: # 0x05002560
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
book_seg5_texture_05002570: # 0x05002570
.incbin "actors/book/book_cover.rgba16"
book_seg5_vertex_05002D70: # 0x05002D70
vertex -9, 31, -50, 990, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 10, 31, 0, 0, 990, 0x00, 0x7F, 0x00, 0xFF
vertex 10, 31, -50, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex -9, 31, 0, 479, 990, 0x00, 0x7F, 0x00, 0xFF
vertex 10, -30, -50, 0, 990, 0x00, 0x81, 0x00, 0xFF
vertex 10, -30, 0, 0, 0, 0x00, 0x81, 0x00, 0xFF
vertex -9, -30, 0, 479, 0, 0x00, 0x81, 0x00, 0xFF
vertex -9, -30, -50, 990, 990, 0x00, 0x81, 0x00, 0xFF
vertex 10, -30, -50, 0, 990, 0x00, 0x00, 0x81, 0xFF
vertex -9, 31, -50, 990, 0, 0x00, 0x00, 0x81, 0xFF
vertex 10, 31, -50, 0, 0, 0x00, 0x00, 0x81, 0xFF
vertex -9, -30, -50, 990, 990, 0x00, 0x00, 0x81, 0xFF
book_seg5_vertex_05002E30: # 0x05002E30
vertex 10, 31, 0, 990, 0, 0x00, 0x00, 0x7F, 0xFF
vertex -9, 31, 0, 0, 0, 0x00, 0x00, 0x7F, 0xFF
vertex -9, -30, 0, 0, 990, 0x00, 0x00, 0x7F, 0xFF
vertex 10, -30, 0, 990, 990, 0x00, 0x00, 0x7F, 0xFF
vertex -9, -30, -50, 990, 990, 0x81, 0x00, 0x00, 0xFF
vertex -9, 31, 0, 0, 0, 0x81, 0x00, 0x00, 0xFF
vertex -9, 31, -50, 990, 0, 0x81, 0x00, 0x00, 0xFF
vertex -9, -30, 0, 0, 990, 0x81, 0x00, 0x00, 0xFF
vertex 10, 31, -50, 990, 0, 0x7F, 0x00, 0x00, 0xFF
vertex 10, 31, 0, 0, 0, 0x7F, 0x00, 0x00, 0xFF
vertex 10, -30, 0, 0, 990, 0x7F, 0x00, 0x00, 0xFF
vertex 10, -30, -50, 990, 990, 0x7F, 0x00, 0x00, 0xFF
glabel book_seg5_dl_05002EF0 # 0x05002EF0 - 0x05002F58
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bookend_seg5_texture_05000C60
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x1FF, 0x200
gsSPLight book_seg5_light_05002560, 1
gsSPLight book_seg5_light_05002558, 2
gsSPVertex book_seg5_vertex_05002D70, 12, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 11, 9, 0x0
gsSPEndDisplayList
glabel book_seg5_dl_05002F58 # 0x05002F58 - 0x05002FB0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, book_seg5_texture_05002570
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPVertex book_seg5_vertex_05002E30, 12, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 7, 5, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 10, 11, 0x0
gsSPEndDisplayList
glabel book_seg5_dl_05002FB0 # 0x05002FB0 - 0x05003040
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPClearGeometryMode G_SHADING_SMOOTH
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 4, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 4, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 60, 124
gsSPDisplayList book_seg5_dl_05002EF0
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList book_seg5_dl_05002F58
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_SHADING_SMOOTH
gsSPEndDisplayList

View file

@ -0,0 +1,2 @@
# Bookend

27
actors/bookend/geo.s Normal file
View file

@ -0,0 +1,27 @@
glabel bookend_part_geo # 0x0C000000
geo_shadow SHADOW_CIRCLE_4_VERTS, 0x96, 100
geo_open_node
geo_scale 0x00, 16384
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bookend_seg5_dl_05001F98
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bookend_seg5_dl_05001B20
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bookend_seg5_dl_05002140
geo_close_node
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bookend_seg5_dl_05001D68
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bookend_seg5_dl_05001978
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bookend_seg5_dl_050022E0
geo_close_node
geo_close_node
geo_close_node
geo_close_node
geo_close_node #! more close than open nodes
geo_end

455
actors/bookend/model.s Normal file
View file

@ -0,0 +1,455 @@
# Bookend
# Unreferenced Light
.byte 0x3F, 0x3F, 0x3F, 0x00, 0x3F, 0x3F, 0x3F, 0x00
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
# Unreferenced Light
.byte 0x03, 0x19, 0x09, 0x00, 0x03, 0x19, 0x09, 0x00
.byte 0x0C, 0x66, 0x26, 0x00, 0x0C, 0x66, 0x26, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
# Unreferenced Light
.byte 0x3F, 0x3F, 0x3F, 0x00, 0x3F, 0x3F, 0x3F, 0x00
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
# Unreferenced Light
.byte 0x3F, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00
.byte 0xFF, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
bookend_seg5_texture_05000060: # 0x05000060
.incbin "actors/bookend/bookend_spine.rgba16"
bookend_seg5_texture_05000460: # 0x05000460
.incbin "actors/bookend/bookend_tooth.rgba16"
bookend_seg5_texture_05000860: # 0x05000860
.incbin "actors/bookend/bookend_mouth.rgba16"
bookend_seg5_texture_05000C60: # 0x05000C60
.incbin "actors/bookend/bookend_pages.rgba16"
bookend_seg5_texture_05001060: # 0x05001060
.incbin "actors/bookend/bookend_cover.rgba16"
bookend_seg5_light_05001860: # 0x05001860
.byte 0x66, 0x66, 0x66, 0x00, 0x66, 0x66, 0x66, 0x00
bookend_seg5_light_05001868: # 0x05001868
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
bookend_seg5_vertex_05001878: # 0x05001878
vertex -10, 0, 108, 0, 990, 0x83, 0xED, 0x00, 0xFF
vertex -4, -39, -109, 479, 0, 0x83, 0xED, 0x00, 0xFF
vertex -4, -39, 108, 479, 990, 0x83, 0xED, 0x00, 0xFF
vertex -10, 0, -109, 0, 0, 0x83, 0xED, 0x00, 0xFF
bookend_seg5_vertex_050018B8: # 0x050018B8
vertex -4, -39, -109, 479, 0, 0x00, 0x81, 0x00, 0xFF
vertex 185, -39, 108, 0, 990, 0x00, 0x81, 0x00, 0xFF
vertex -4, -39, 108, 479, 990, 0x00, 0x81, 0x00, 0xFF
vertex 185, -39, -109, 0, 0, 0x00, 0x81, 0x00, 0xFF
glabel bookend_seg5_dl_050018F8 # 0x050018F8 - 0x05001940
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bookend_seg5_texture_05000060
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x1FF, 0x200
gsSPLight bookend_seg5_light_05001868, 1
gsSPLight bookend_seg5_light_05001860, 2
gsSPVertex bookend_seg5_vertex_05001878, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSPEndDisplayList
glabel bookend_seg5_dl_05001940 # 0x05001940 - 0x05001978
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bookend_seg5_texture_05001060
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPVertex bookend_seg5_vertex_050018B8, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSPEndDisplayList
glabel bookend_seg5_dl_05001978 # 0x05001978 - 0x05001A08
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPClearGeometryMode G_CULL_BACK | G_SHADING_SMOOTH
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 4, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 4, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 60, 124
gsSPDisplayList bookend_seg5_dl_050018F8
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList bookend_seg5_dl_05001940
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_CULL_BACK | G_SHADING_SMOOTH
gsSPEndDisplayList
bookend_seg5_light_05001A08: # 0x05001A08
.byte 0x66, 0x66, 0x66, 0x00, 0x66, 0x66, 0x66, 0x00
bookend_seg5_light_05001A10: # 0x05001A10
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
bookend_seg5_vertex_05001A20: # 0x05001A20
vertex -4, -39, -107, 479, 990, 0x83, 0xED, 0x00, 0xFF
vertex -4, -39, 110, 479, 0, 0x83, 0xED, 0x00, 0xFF
vertex -10, 0, 110, 0, 0, 0x83, 0xED, 0x00, 0xFF
vertex -10, 0, -107, 0, 990, 0x83, 0xED, 0x00, 0xFF
bookend_seg5_vertex_05001A60: # 0x05001A60
vertex -4, -39, -107, 0, 990, 0x00, 0x81, 0x00, 0xFF
vertex 185, -39, 110, 990, 0, 0x00, 0x81, 0x00, 0xFF
vertex -4, -39, 110, 0, 0, 0x00, 0x81, 0x00, 0xFF
vertex 185, -39, -107, 990, 990, 0x00, 0x81, 0x00, 0xFF
glabel bookend_seg5_dl_05001AA0 # 0x05001AA0 - 0x05001AE8
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bookend_seg5_texture_05000060
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x1FF, 0x200
gsSPLight bookend_seg5_light_05001A10, 1
gsSPLight bookend_seg5_light_05001A08, 2
gsSPVertex bookend_seg5_vertex_05001A20, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSPEndDisplayList
glabel bookend_seg5_dl_05001AE8 # 0x05001AE8 - 0x05001B20
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bookend_seg5_texture_05001060
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPVertex bookend_seg5_vertex_05001A60, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSPEndDisplayList
glabel bookend_seg5_dl_05001B20 # 0x05001B20 - 0x05001BB0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPClearGeometryMode G_CULL_BACK | G_SHADING_SMOOTH
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 4, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 4, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 60, 124
gsSPDisplayList bookend_seg5_dl_05001AA0
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList bookend_seg5_dl_05001AE8
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_CULL_BACK | G_SHADING_SMOOTH
gsSPEndDisplayList
bookend_seg5_light_05001BB0: # 0x05001BB0
.byte 0x66, 0x66, 0x66, 0x00, 0x66, 0x66, 0x66, 0x00
bookend_seg5_light_05001BB8: # 0x05001BB8
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
bookend_seg5_vertex_05001BC8: # 0x05001BC8
vertex -10, 0, 103, 0, 990, 0x00, 0x7F, 0x00, 0xFF
vertex 159, 0, -104, 479, 0, 0x00, 0x7F, 0x00, 0xFF
vertex -10, 0, -104, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 159, 0, 103, 479, 990, 0x00, 0x7F, 0x00, 0xFF
bookend_seg5_vertex_05001C08: # 0x05001C08
vertex 159, 0, 103, 0, -6, 0x00, 0x00, 0x7F, 0xFF
vertex -10, 0, 103, 0, 990, 0x00, 0x00, 0x7F, 0xFF
vertex -4, -38, 103, 479, 990, 0x00, 0x00, 0x7F, 0xFF
vertex 170, -38, 103, 479, 0, 0x00, 0x00, 0x7F, 0xFF
vertex 159, 0, -104, 0, 0, 0x79, 0x23, 0x00, 0xFF
vertex 159, 0, 103, 0, 990, 0x79, 0x23, 0x00, 0xFF
vertex 170, -38, 103, 479, 990, 0x79, 0x23, 0x00, 0xFF
vertex 170, -38, -104, 479, 0, 0x79, 0x23, 0x00, 0xFF
vertex -10, 0, -104, 0, -6, 0x00, 0x00, 0x81, 0xFF
vertex 159, 0, -104, 0, 990, 0x00, 0x00, 0x81, 0xFF
vertex 170, -38, -104, 479, 990, 0x00, 0x00, 0x81, 0xFF
vertex -4, -38, -104, 479, 0, 0x00, 0x00, 0x81, 0xFF
glabel bookend_seg5_dl_05001CC8 # 0x05001CC8 - 0x05001D10
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bookend_seg5_texture_05000860
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x1FF, 0x200
gsSPLight bookend_seg5_light_05001BB8, 1
gsSPLight bookend_seg5_light_05001BB0, 2
gsSPVertex bookend_seg5_vertex_05001BC8, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSPEndDisplayList
glabel bookend_seg5_dl_05001D10 # 0x05001D10 - 0x05001D68
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bookend_seg5_texture_05000C60
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x1FF, 0x200
gsSPVertex bookend_seg5_vertex_05001C08, 12, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 10, 11, 0x0
gsSPEndDisplayList
glabel bookend_seg5_dl_05001D68 # 0x05001D68 - 0x05001DE0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPClearGeometryMode G_SHADING_SMOOTH
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 4, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 4, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 60, 124
gsSPDisplayList bookend_seg5_dl_05001CC8
gsSPDisplayList bookend_seg5_dl_05001D10
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_SHADING_SMOOTH
gsSPEndDisplayList
bookend_seg5_light_05001DE0: # 0x05001DE0
.byte 0x66, 0x66, 0x66, 0x00, 0x66, 0x66, 0x66, 0x00
bookend_seg5_light_05001DE8: # 0x05001DE8
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
bookend_seg5_vertex_05001DF8: # 0x05001DF8
vertex -10, 0, 105, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 159, 0, -102, 479, 990, 0x00, 0x7F, 0x00, 0xFF
vertex -10, 0, -102, 0, 990, 0x00, 0x7F, 0x00, 0xFF
vertex 159, 0, 105, 479, 0, 0x00, 0x7F, 0x00, 0xFF
bookend_seg5_vertex_05001E38: # 0x05001E38
vertex 170, -38, -102, 479, 990, 0x00, 0x00, 0x81, 0xFF
vertex -4, -38, -102, 479, 0, 0x00, 0x00, 0x81, 0xFF
vertex -10, 0, -102, 0, -6, 0x00, 0x00, 0x81, 0xFF
vertex 159, 0, -102, 0, 990, 0x00, 0x00, 0x81, 0xFF
vertex 170, -38, 105, 479, 990, 0x79, 0x23, 0x00, 0xFF
vertex 170, -38, -102, 479, 0, 0x79, 0x23, 0x00, 0xFF
vertex 159, 0, -102, 0, 0, 0x79, 0x23, 0x00, 0xFF
vertex 159, 0, 105, 0, 990, 0x79, 0x23, 0x00, 0xFF
vertex -4, -38, 105, 479, 990, 0x00, 0x00, 0x7F, 0xFF
vertex 170, -38, 105, 479, 0, 0x00, 0x00, 0x7F, 0xFF
vertex 159, 0, 105, 0, -6, 0x00, 0x00, 0x7F, 0xFF
vertex -10, 0, 105, 0, 990, 0x00, 0x00, 0x7F, 0xFF
glabel bookend_seg5_dl_05001EF8 # 0x05001EF8 - 0x05001F40
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bookend_seg5_texture_05000860
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x1FF, 0x200
gsSPLight bookend_seg5_light_05001DE8, 1
gsSPLight bookend_seg5_light_05001DE0, 2
gsSPVertex bookend_seg5_vertex_05001DF8, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSPEndDisplayList
glabel bookend_seg5_dl_05001F40 # 0x05001F40 - 0x05001F98
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bookend_seg5_texture_05000C60
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x1FF, 0x200
gsSPVertex bookend_seg5_vertex_05001E38, 12, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 10, 11, 0x0
gsSPEndDisplayList
glabel bookend_seg5_dl_05001F98 # 0x05001F98 - 0x05002010
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPClearGeometryMode G_SHADING_SMOOTH
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 4, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 4, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 60, 124
gsSPDisplayList bookend_seg5_dl_05001EF8
gsSPDisplayList bookend_seg5_dl_05001F40
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_SHADING_SMOOTH
gsSPEndDisplayList
bookend_seg5_light_05002010: # 0x05002010
.byte 0x66, 0x66, 0x66, 0x00, 0x66, 0x66, 0x66, 0x00
bookend_seg5_light_05002018: # 0x05002018
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
bookend_seg5_vertex_05002028: # 0x05002028
vertex 157, -1, -48, 6, 358, 0x83, 0xEE, 0x00, 0xFF
vertex 151, 39, -72, 475, 624, 0x83, 0xEE, 0x00, 0xFF
vertex 157, -1, -99, 372, -1002, 0x83, 0xEE, 0x00, 0xFF
vertex 157, -1, 0, 106, 390, 0x83, 0xEE, 0x00, 0xFF
vertex 151, 39, -24, 465, 636, 0x83, 0xEE, 0x00, 0xFF
vertex 157, -1, -48, 461, -950, 0x83, 0xEE, 0x00, 0xFF
vertex 157, -1, 51, -54, 352, 0x83, 0xEE, 0x00, 0xFF
vertex 151, 39, 26, 478, 570, 0x83, 0xEE, 0x00, 0xFF
vertex 157, -1, 0, 446, -978, 0x83, 0xEE, 0x00, 0xFF
vertex 157, -1, 103, 66, 302, 0x83, 0xEE, 0x00, 0xFF
vertex 151, 39, 78, 495, 590, 0x83, 0xEE, 0x00, 0xFF
vertex 157, -1, 51, 462, -962, 0x83, 0xEE, 0x00, 0xFF
glabel bookend_seg5_dl_050020E8 # 0x050020E8 - 0x05002140
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bookend_seg5_texture_05000460
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x1FF, 0x200
gsSPLight bookend_seg5_light_05002018, 1
gsSPLight bookend_seg5_light_05002010, 2
gsSPVertex bookend_seg5_vertex_05002028, 12, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSPEndDisplayList
glabel bookend_seg5_dl_05002140 # 0x05002140 - 0x050021B0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPClearGeometryMode G_CULL_BACK
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 4, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 4, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 60, 124
gsSPDisplayList bookend_seg5_dl_050020E8
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_CULL_BACK
gsSPEndDisplayList
bookend_seg5_light_050021B0: # 0x050021B0
.byte 0x66, 0x66, 0x66, 0x00, 0x66, 0x66, 0x66, 0x00
bookend_seg5_light_050021B8: # 0x050021B8
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
bookend_seg5_vertex_050021C8: # 0x050021C8
vertex 157, -1, 100, 32, 394, 0x83, 0xEE, 0x00, 0xFF
vertex 151, 39, 73, 426, 774, 0x83, 0xEE, 0x00, 0xFF
vertex 157, -1, 49, 414, -722, 0x83, 0xEE, 0x00, 0xFF
vertex 157, -1, 49, -39, 392, 0x83, 0xEE, 0x00, 0xFF
vertex 151, 39, 25, 457, 852, 0x83, 0xEE, 0x00, 0xFF
vertex 157, -1, 0, 363, -564, 0x83, 0xEE, 0x00, 0xFF
vertex 157, -1, 0, -1, 360, 0x83, 0xEE, 0x00, 0xFF
vertex 151, 39, -25, 473, 906, 0x83, 0xEE, 0x00, 0xFF
vertex 157, -1, -50, 372, -932, 0x83, 0xEE, 0x00, 0xFF
vertex 157, -1, -50, 12, 240, 0x83, 0xEE, 0x00, 0xFF
vertex 151, 39, -77, 491, 632, 0x83, 0xEE, 0x00, 0xFF
vertex 157, -1, -102, 365, -1004, 0x83, 0xEE, 0x00, 0xFF
glabel bookend_seg5_dl_05002288 # 0x05002288 - 0x050022E0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bookend_seg5_texture_05000460
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x1FF, 0x200
gsSPLight bookend_seg5_light_050021B8, 1
gsSPLight bookend_seg5_light_050021B0, 2
gsSPVertex bookend_seg5_vertex_050021C8, 12, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSPEndDisplayList
glabel bookend_seg5_dl_050022E0 # 0x050022E0 - 0x05002350
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPClearGeometryMode G_CULL_BACK
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 4, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 4, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 60, 124
gsSPDisplayList bookend_seg5_dl_05002288
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_CULL_BACK
gsSPEndDisplayList
bookend_seg5_animvalue_05002350: # 0x05002350
.hword 0x0000, 0xC001, 0x071C, 0x0D90, 0x198B, 0x1FFF, 0x198B, 0x0D90
.hword 0x0AAA, 0x1032, 0x1A77, 0x1FFF, 0x1A77, 0x1032, 0x3FFF, 0x8001
bookend_seg5_animindex_05002370: # 0x05002370
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0001
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0006, 0x0002, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x000E, 0x0001, 0x000F
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0006, 0x0008
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000
bookend_seg5_anim_050023F4: # 0x050023F4
.hword 0
.hword 0
.hword 0
.hword 0
.hword 0x06
.hword 0x0A
.word bookend_seg5_animvalue_05002350
.word bookend_seg5_animindex_05002370
.word 0
bookend_seg5_animvalue_0500240C: # 0x0500240C
.hword 0x0000, 0xC001, 0x3FFF, 0x3FFF, 0x3FFF, 0x3FFF, 0x3FFF, 0x3FFF
.hword 0x3FFF, 0x3FFF, 0x3FFF, 0x3FFF, 0x3FFF, 0x3FFF, 0x3FFF, 0x3FFF
.hword 0x3FFF, 0x3CB4, 0x381F, 0x3282, 0x2C20, 0x253E, 0x1E1D, 0x1701
.hword 0x102D, 0x09E4, 0x0469, 0x0000, 0xFEFB, 0x01A8, 0x0549, 0x071C
.hword 0x3FFF, 0x3FFF, 0x3FFF, 0x3FFF, 0x3FFF, 0x3FFF, 0x3FFF, 0x3FFF
.hword 0x3FFF, 0x3FFF, 0x3FFF, 0x3FFF, 0x3FFF, 0x3FFF, 0x3FFF, 0x3CAF
.hword 0x380D, 0x325E, 0x2BE8, 0x24F3, 0x1DC3, 0x169F, 0x0FCD, 0x0993
.hword 0x0437, 0x0000, 0xFFAB, 0x038E, 0x0855, 0x0AAA, 0x3FFF, 0x8001
bookend_seg5_animindex_0500248C: # 0x0500248C
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0001
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x001E, 0x0002, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x003E, 0x0001, 0x003F
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x001E, 0x0020
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000
bookend_seg5_anim_05002510: # 0x05002510
.hword 0
.hword 0
.hword 0
.hword 0
.hword 0x1E
.hword 0x0A
.word bookend_seg5_animvalue_0500240C
.word bookend_seg5_animindex_0500248C
.word 0
# what the hell? no values/indexes for the table?
bookend_seg5_anim_05002528: # 0x05002528
.hword 0
.hword 0
.hword 0
.hword 0
.hword 0x01
.hword 0x0A
.word bookend_seg5_animvalue_0500240C
.word bookend_seg5_animindex_0500248C
.word 0
glabel bookend_seg5_anims_05002540 # 0x05002540
.word bookend_seg5_anim_05002528
.word bookend_seg5_anim_050023F4
.word bookend_seg5_anim_05002510
.word 0

View file

@ -0,0 +1,2 @@
# Bowling Ball

23
actors/bowling_ball/geo.s Normal file
View file

@ -0,0 +1,23 @@
# This is a weird file where it cross-references another actor.
# Most likely, it was a compile time optimization due to the
# exact same DL being referenced.
glabel bowling_ball_geo # 0x0F000640
geo_shadow SHADOW_CIRCLE_4_VERTS, 0xC8, 280
geo_open_node
geo_scale 0x00, 170393
geo_open_node
geo_display_list LAYER_ALPHA, bobomb_seg8_dl_08022D08
geo_close_node
geo_close_node
geo_end
glabel bowling_ball_track_geo # 0x0F00066C
geo_node_start
geo_open_node
geo_scale 0x00, 170393
geo_open_node
geo_display_list LAYER_ALPHA, bobomb_seg8_dl_08022D08
geo_close_node
geo_close_node
geo_end

View file

@ -0,0 +1,5 @@
# Bowling Ball
# This one is weird. Instead of it including the DLs for a bowling ball, the game decides
# to reference the bobomb DLs instead. Most likely a compile-time optimization, but this
# is definitely a distinct actor due to the geo-layouts.

View file

@ -0,0 +1,2 @@
# Bowser (King Koopa)

411
actors/bowser/geo.s Normal file
View file

@ -0,0 +1,411 @@
glabel bowser_geo_0000D8 # 0x0D0000D8
geo_shadow SHADOW_CIRCLE_9_VERTS, 0x9B, 400
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bowser_seg6_dl_06040210
geo_open_node
geo_animated_part LAYER_OPAQUE, -89, -2, -18
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 69, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 85, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bowser_seg6_dl_0603D200
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bowser_seg6_dl_0603E6B8
geo_close_node
geo_close_node
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, -32, -112
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bowser_seg6_dl_06043698
geo_asm 0, Geo18_802B798C
geo_close_node
geo_close_node
geo_animated_part LAYER_OPAQUE, 118, 67, 105
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 65, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 49, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bowser_seg6_dl_0603B208
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bowser_seg6_dl_060399D8
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bowser_seg6_dl_060392E0
geo_close_node
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 136, 130
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 61, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, -13, 258, 0, bowser_seg6_dl_060431F0
geo_close_node
geo_switch_case 9, geo_switch_bowser_eyes
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bowser_seg6_dl_06042348
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bowser_seg6_dl_060423A0
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bowser_seg6_dl_060423F8
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bowser_seg6_dl_06042450
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bowser_seg6_dl_060424A8
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bowser_seg6_dl_06042500
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bowser_seg6_dl_06042558
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bowser_seg6_dl_060425B0
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bowser_seg6_dl_06042608
geo_close_node
geo_close_node
geo_close_node
geo_animated_part LAYER_OPAQUE, -118, 67, 105
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 65, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 49, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bowser_seg6_dl_0603DFB0
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bowser_seg6_dl_0603C6D0
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bowser_seg6_dl_0603BFC8
geo_close_node
geo_close_node
geo_animated_part LAYER_OPAQUE, 89, -2, -18
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 69, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 85, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bowser_seg6_dl_0603A4E8
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bowser_seg6_dl_0603B8D0
geo_close_node
geo_close_node
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_close_node
geo_close_node
geo_return
glabel bowser_geo_000424 # 0x0D000424
geo_shadow SHADOW_CIRCLE_9_VERTS, 0x9B, 400
geo_open_node
.ifdef VERSION_JP
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_06040210
.else
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_06040358
.endif
geo_open_node
geo_animated_part LAYER_TRANSPARENT, -89, -2, -18
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 69, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 85, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_0603D200
geo_close_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_0603E6B8
geo_close_node
geo_close_node
geo_close_node
geo_animated_part LAYER_TRANSPARENT, 0, -32, -112
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_06043698
geo_asm 0, Geo18_802B798C
geo_close_node
geo_close_node
geo_animated_part LAYER_TRANSPARENT, 118, 67, 105
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 65, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 49, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_0603B208
geo_close_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_060399D8
geo_close_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_060392E0
geo_close_node
geo_close_node
geo_animated_part LAYER_TRANSPARENT, 0, 136, 130
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 61, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, -13, 258, 0, bowser_seg6_dl_060431F0
geo_close_node
geo_switch_case 9, geo_switch_bowser_eyes
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_06042348
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_060423A0
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_060423F8
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_06042450
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_060424A8
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_06042500
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_06042558
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_060425B0
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_06042608
geo_close_node
geo_close_node
geo_close_node
geo_animated_part LAYER_TRANSPARENT, -118, 67, 105
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 65, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 49, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_0603DFB0
geo_close_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_0603C6D0
geo_close_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_0603BFC8
geo_close_node
geo_close_node
geo_animated_part LAYER_TRANSPARENT, 89, -2, -18
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 69, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 85, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_0603A4E8
geo_close_node
.ifdef VERSION_JP
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_0603B8D0
.else
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_0603B948
.endif
geo_close_node
geo_close_node
geo_close_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_close_node
geo_close_node
geo_return
glabel bowser_geo_000770 # 0x0D000770
geo_node_start
geo_open_node
.ifdef VERSION_JP
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_06040210
.else
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_06040358
.endif
geo_open_node
geo_animated_part LAYER_TRANSPARENT, -89, -2, -18
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 69, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 85, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_0603D200
geo_close_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_0603E6B8
geo_close_node
geo_close_node
geo_close_node
geo_animated_part LAYER_TRANSPARENT, 0, -32, -112
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_06043698
geo_asm 0, Geo18_802B798C
geo_close_node
geo_close_node
geo_animated_part LAYER_TRANSPARENT, 118, 67, 105
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 65, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 49, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_0603B208
geo_close_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_060399D8
geo_close_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_060392E0
geo_close_node
geo_close_node
geo_animated_part LAYER_TRANSPARENT, 0, 136, 130
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 61, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, -13, 258, 0, bowser_seg6_dl_060431F0
geo_close_node
geo_switch_case 9, geo_switch_bowser_eyes
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_06042348
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_060423A0
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_060423F8
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_06042450
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_060424A8
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_06042500
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_06042558
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_060425B0
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_06042608
geo_close_node
geo_close_node
geo_close_node
geo_animated_part LAYER_TRANSPARENT, -118, 67, 105
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 65, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 49, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_0603DFB0
geo_close_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_0603C6D0
geo_close_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_0603BFC8
geo_close_node
geo_close_node
geo_animated_part LAYER_TRANSPARENT, 89, -2, -18
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 69, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 85, 0, 0
geo_open_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_0603A4E8
geo_close_node
.ifdef VERSION_JP
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_0603B8D0
.else
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0, bowser_seg6_dl_0603B948
.endif
geo_close_node
geo_close_node
geo_close_node
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_animated_part LAYER_TRANSPARENT, 0, 0, 0
geo_close_node
geo_close_node
geo_return
.ifndef VERSION_JP
glabel bowser_shadow_geo # 0x0D000AB8
geo_shadow 0x00, 0x9B, 400
geo_return
.endif
glabel bowser_geo # 0x0D000AB8 / 0AC4
geo_node_start
geo_open_node
geo_asm 0, Geo18_8029D924
.ifdef VERSION_JP
geo_switch_case 2, geo_switch_anim_state
.endif
.ifndef VERSION_JP
geo_switch_case 3, geo_switch_anim_state
.endif
geo_open_node
geo_node_start
geo_open_node
geo_asm 0, Geo18_802B7D44
geo_branch 1, bowser_geo_0000D8
geo_close_node
geo_node_start
geo_open_node
geo_asm 0, Geo18_802B7D44
geo_branch 1, bowser_geo_000424
geo_close_node
.ifndef VERSION_JP
geo_node_start
geo_open_node
geo_asm 0, Geo18_802B7D44
geo_branch 1, bowser_shadow_geo
geo_close_node
.endif
geo_close_node
geo_close_node
geo_end
glabel bowser2_geo # 0x0D000B18 / 0B40
geo_node_start
geo_open_node
geo_asm 0, Geo18_8029D924
.ifdef VERSION_JP
geo_switch_case 2, geo_switch_anim_state
.endif
.ifndef VERSION_JP
geo_switch_case 3, geo_switch_anim_state
.endif
geo_open_node
geo_node_start
geo_open_node
geo_asm 0, Geo18_802B7D44
geo_branch 1, bowser_geo_0000D8
geo_close_node
geo_node_start
geo_open_node
geo_asm 0, Geo18_802B7D44
geo_branch 1, bowser_geo_000770
geo_close_node
.ifndef VERSION_JP
geo_node_start
geo_open_node
geo_asm 0, Geo18_802B7D44
geo_branch 1, bowser_shadow_geo
geo_close_node
.endif
geo_close_node
geo_close_node
geo_end

9294
actors/bowser/model.s Normal file

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,2 @@
# Bowser Flame

22
actors/bowser_flame/geo.s Normal file
View file

@ -0,0 +1,22 @@
glabel bowser_flames_geo # 0x0D000000
geo_node_start
geo_open_node
geo_switch_case 14, geo_switch_anim_state
geo_open_node
geo_display_list LAYER_TRANSPARENT, flame_seg6_dl_0601C108
geo_display_list LAYER_TRANSPARENT, flame_seg6_dl_0601C1A8
geo_display_list LAYER_TRANSPARENT, flame_seg6_dl_0601C248
geo_display_list LAYER_TRANSPARENT, flame_seg6_dl_0601C2E8
geo_display_list LAYER_TRANSPARENT, flame_seg6_dl_0601C388
geo_display_list LAYER_TRANSPARENT, flame_seg6_dl_0601C428
geo_display_list LAYER_TRANSPARENT, flame_seg6_dl_0601C4C8
geo_display_list LAYER_TRANSPARENT, flame_seg6_dl_0601C568
geo_display_list LAYER_TRANSPARENT, flame_seg6_dl_0601C608
geo_display_list LAYER_TRANSPARENT, flame_seg6_dl_0601C6A8
geo_display_list LAYER_TRANSPARENT, flame_seg6_dl_0601C748
geo_display_list LAYER_TRANSPARENT, flame_seg6_dl_0601C7E8
geo_display_list LAYER_TRANSPARENT, flame_seg6_dl_0601C888
geo_display_list LAYER_TRANSPARENT, flame_seg6_dl_0601C928
geo_close_node
geo_close_node
geo_end

386
actors/bowser_flame/model.s Normal file
View file

@ -0,0 +1,386 @@
# Bowser Flame
# TODO: Are these seperate textures or unified 64x64 ones?
.balign 8
flame_seg6_texture_06000000: # 0x06000000
.incbin "actors/bowser_flame/bowser_flame_0.rgba16"
flame_seg6_texture_06002000: # 0x06002000
.incbin "actors/bowser_flame/bowser_flame_1.rgba16"
flame_seg6_texture_06004000: # 0x06004000
.incbin "actors/bowser_flame/bowser_flame_2.rgba16"
flame_seg6_texture_06006000: # 0x06006000
.incbin "actors/bowser_flame/bowser_flame_3.rgba16"
flame_seg6_texture_06008000: # 0x06008000
.incbin "actors/bowser_flame/bowser_flame_4.rgba16"
flame_seg6_texture_0600A000: # 0x0600A000
.incbin "actors/bowser_flame/bowser_flame_5.rgba16"
flame_seg6_texture_0600C000: # 0x0600C000
.incbin "actors/bowser_flame/bowser_flame_6.rgba16"
flame_seg6_texture_0600E000: # 0x0600E000
.incbin "actors/bowser_flame/bowser_flame_7.rgba16"
flame_seg6_texture_06010000: # 0x06010000
.incbin "actors/bowser_flame/bowser_flame_8.rgba16"
flame_seg6_texture_06012000: # 0x06012000
.incbin "actors/bowser_flame/bowser_flame_9.rgba16"
flame_seg6_texture_06014000: # 0x06014000
.incbin "actors/bowser_flame/bowser_flame_10.rgba16"
flame_seg6_texture_06016000: # 0x06016000
.incbin "actors/bowser_flame/bowser_flame_11.rgba16"
flame_seg6_texture_06018000: # 0x06018000
.incbin "actors/bowser_flame/bowser_flame_12.rgba16"
flame_seg6_texture_0601A000: # 0x0601A000
.incbin "actors/bowser_flame/bowser_flame_13.rgba16"
flame_seg6_vertex_0601C000: # 0x0601C000
vertex -150, 150, 0, 0, 992, 0xFF, 0xFF, 0xFF, 0xFF
vertex 150, 150, 0, 2016, 992, 0xFF, 0xFF, 0xFF, 0xFF
vertex 150, 300, 0, 2016, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex -150, 300, 0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex -150, 0, 0, 0, 992, 0xFF, 0xFF, 0xFF, 0xFF
vertex 150, 0, 0, 2016, 992, 0xFF, 0xFF, 0xFF, 0xFF
vertex 150, 150, 0, 2016, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex -150, 150, 0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
glabel flame_seg6_dl_0601C080 # 0x0601C080 - 0x0601C0B0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_TEXEL0, G_ACMUX_0, G_ACMUX_SHADE, G_ACMUX_0
gsSPGeometryMode G_LIGHTING, G_SHADING_SMOOTH, G_ORDER_CFIRST
gsSPTexture -1, -1, 0, 0, 1
gsSPEndDisplayList
glabel flame_seg6_dl_0601C0B0 # 0x0601C0B0 - 0x0601C0C8
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSPEndDisplayList
glabel flame_seg6_dl_0601C0C8 # 0x0601C0C8 - 0x0601C0E0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSPEndDisplayList
glabel flame_seg6_dl_0601C0E0 # 0x0601C0E0 - 0x0601C108
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_LIGHTING
gsSPEndDisplayList
glabel flame_seg6_dl_0601C108 # 0x0601C108 - 0x0601C1A8
gsSPDisplayList flame_seg6_dl_0601C080
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_06000000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPVertex flame_seg6_vertex_0601C000, 8, 0
gsSPDisplayList flame_seg6_dl_0601C0B0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_06000000 + 0x1000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPDisplayList flame_seg6_dl_0601C0C8
gsSPDisplayList flame_seg6_dl_0601C0E0
gsSPEndDisplayList
glabel flame_seg6_dl_0601C1A8 # 0x0601C1A8 - 0x0601C248
gsSPDisplayList flame_seg6_dl_0601C080
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_06002000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPVertex flame_seg6_vertex_0601C000, 8, 0
gsSPDisplayList flame_seg6_dl_0601C0B0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_06002000 + 0x1000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPDisplayList flame_seg6_dl_0601C0C8
gsSPDisplayList flame_seg6_dl_0601C0E0
gsSPEndDisplayList
glabel flame_seg6_dl_0601C248 # 0x0601C248 - 0x0601C2E8
gsSPDisplayList flame_seg6_dl_0601C080
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_06004000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPVertex flame_seg6_vertex_0601C000, 8, 0
gsSPDisplayList flame_seg6_dl_0601C0B0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_06004000 + 0x1000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPDisplayList flame_seg6_dl_0601C0C8
gsSPDisplayList flame_seg6_dl_0601C0E0
gsSPEndDisplayList
glabel flame_seg6_dl_0601C2E8 # 0x0601C2E8 - 0x0601C388
gsSPDisplayList flame_seg6_dl_0601C080
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_06006000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPVertex flame_seg6_vertex_0601C000, 8, 0
gsSPDisplayList flame_seg6_dl_0601C0B0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_06006000 + 0x1000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPDisplayList flame_seg6_dl_0601C0C8
gsSPDisplayList flame_seg6_dl_0601C0E0
gsSPEndDisplayList
glabel flame_seg6_dl_0601C388 # 0x0601C388 - 0x0601C428
gsSPDisplayList flame_seg6_dl_0601C080
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_06008000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPVertex flame_seg6_vertex_0601C000, 8, 0
gsSPDisplayList flame_seg6_dl_0601C0B0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_06008000 + 0x1000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPDisplayList flame_seg6_dl_0601C0C8
gsSPDisplayList flame_seg6_dl_0601C0E0
gsSPEndDisplayList
glabel flame_seg6_dl_0601C428 # 0x0601C428 - 0x0601C4C8
gsSPDisplayList flame_seg6_dl_0601C080
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_0600A000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPVertex flame_seg6_vertex_0601C000, 8, 0
gsSPDisplayList flame_seg6_dl_0601C0B0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_0600A000 + 0x1000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPDisplayList flame_seg6_dl_0601C0C8
gsSPDisplayList flame_seg6_dl_0601C0E0
gsSPEndDisplayList
glabel flame_seg6_dl_0601C4C8 # 0x0601C4C8 - 0x0601C568
gsSPDisplayList flame_seg6_dl_0601C080
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_0600C000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPVertex flame_seg6_vertex_0601C000, 8, 0
gsSPDisplayList flame_seg6_dl_0601C0B0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_0600C000 + 0x1000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPDisplayList flame_seg6_dl_0601C0C8
gsSPDisplayList flame_seg6_dl_0601C0E0
gsSPEndDisplayList
glabel flame_seg6_dl_0601C568 # 0x0601C568 - 0x0601C608
gsSPDisplayList flame_seg6_dl_0601C080
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_0600E000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPVertex flame_seg6_vertex_0601C000, 8, 0
gsSPDisplayList flame_seg6_dl_0601C0B0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_0600E000 + 0x1000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPDisplayList flame_seg6_dl_0601C0C8
gsSPDisplayList flame_seg6_dl_0601C0E0
gsSPEndDisplayList
glabel flame_seg6_dl_0601C608 # 0x0601C608 - 0x0601C6A8
gsSPDisplayList flame_seg6_dl_0601C080
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_06010000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPVertex flame_seg6_vertex_0601C000, 8, 0
gsSPDisplayList flame_seg6_dl_0601C0B0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_06010000 + 0x1000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPDisplayList flame_seg6_dl_0601C0C8
gsSPDisplayList flame_seg6_dl_0601C0E0
gsSPEndDisplayList
glabel flame_seg6_dl_0601C6A8 # 0x0601C6A8 - 0x0601C748
gsSPDisplayList flame_seg6_dl_0601C080
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_06012000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPVertex flame_seg6_vertex_0601C000, 8, 0
gsSPDisplayList flame_seg6_dl_0601C0B0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_06012000 + 0x1000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPDisplayList flame_seg6_dl_0601C0C8
gsSPDisplayList flame_seg6_dl_0601C0E0
gsSPEndDisplayList
glabel flame_seg6_dl_0601C748 # 0x0601C748 - 0x0601C7E8
gsSPDisplayList flame_seg6_dl_0601C080
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_06014000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPVertex flame_seg6_vertex_0601C000, 8, 0
gsSPDisplayList flame_seg6_dl_0601C0B0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_06014000 + 0x1000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPDisplayList flame_seg6_dl_0601C0C8
gsSPDisplayList flame_seg6_dl_0601C0E0
gsSPEndDisplayList
glabel flame_seg6_dl_0601C7E8 # 0x0601C7E8 - 0x0601C888
gsSPDisplayList flame_seg6_dl_0601C080
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_06016000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPVertex flame_seg6_vertex_0601C000, 8, 0
gsSPDisplayList flame_seg6_dl_0601C0B0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_06016000 + 0x1000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPDisplayList flame_seg6_dl_0601C0C8
gsSPDisplayList flame_seg6_dl_0601C0E0
gsSPEndDisplayList
glabel flame_seg6_dl_0601C888 # 0x0601C888 - 0x0601C928
gsSPDisplayList flame_seg6_dl_0601C080
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_06018000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPVertex flame_seg6_vertex_0601C000, 8, 0
gsSPDisplayList flame_seg6_dl_0601C0B0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_06018000 + 0x1000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPDisplayList flame_seg6_dl_0601C0C8
gsSPDisplayList flame_seg6_dl_0601C0E0
gsSPEndDisplayList
glabel flame_seg6_dl_0601C928 # 0x0601C928 - 0x0601C9C8
gsSPDisplayList flame_seg6_dl_0601C080
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_0601A000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPVertex flame_seg6_vertex_0601C000, 8, 0
gsSPDisplayList flame_seg6_dl_0601C0B0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, flame_seg6_texture_0601A000 + 0x1000
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPDisplayList flame_seg6_dl_0601C0C8
gsSPDisplayList flame_seg6_dl_0601C0E0
gsSPEndDisplayList

View file

@ -0,0 +1,2 @@
# Bowser Key

27
actors/bowser_key/geo.s Normal file
View file

@ -0,0 +1,27 @@
glabel bowser_key_geo # 0x16000A84
geo_shadow SHADOW_CIRCLE_4_VERTS, 0x9B, 300
geo_open_node
geo_scale 0x00, 65536
geo_open_node
geo_display_list LAYER_OPAQUE, bowser_key_dl
geo_close_node
geo_close_node
geo_end
glabel bowser_key_cutscene_geo # 0x16000AB0
geo_scale 0x00, 16384
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_asm 0, Geo18_802BA2B0
geo_scale 0x00, 65536
geo_open_node
geo_display_list LAYER_OPAQUE, bowser_key_dl
geo_close_node
geo_close_node
geo_close_node
geo_close_node
geo_close_node #! more close than open nodes
geo_end

521
actors/bowser_key/model.s Normal file
View file

@ -0,0 +1,521 @@
# Bowser Key
bowser_key_amb_light: # 0x030156E0, solid color brown
.byte 0x3F, 0x2C, 0x00, 0x00, 0x3F, 0x2C, 0x00, 0x00
bowser_key_diff_light: # 0x030156E8, solid color orange
.byte 0xFF, 0xB2, 0x00, 0x00, 0xFF, 0xB2, 0x00, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
bowser_key_dl_vertex_group1: # 0x030156F8
vertex 219, 22, -17, 0, 0, 0x88, 0x26, 0x00, 0x00
vertex 219, 22, 17, 0, 0, 0x88, 0x26, 0x00, 0x00
vertex 230, 57, 7, 0, 0, 0x88, 0x26, 0x00, 0x00
vertex 230, 57, -7, 0, 0, 0x88, 0x26, 0x00, 0xFF
vertex 257, 22, 17, 0, 0, 0x7B, 0x1C, 0x00, 0xFF
vertex 257, 22, -17, 0, 0, 0x7B, 0x1C, 0x00, 0xFF
vertex 249, 57, -7, 0, 0, 0x7B, 0x1C, 0x00, 0xFF
vertex 249, 57, 7, 0, 0, 0x7B, 0x1C, 0x00, 0xFF
vertex 257, 22, -17, 0, 0, 0x00, 0x23, 0x87, 0xFF
vertex 219, 22, -17, 0, 0, 0x00, 0x23, 0x87, 0xFF
vertex 230, 57, -7, 0, 0, 0x00, 0x23, 0x87, 0xFF
vertex 249, 57, -7, 0, 0, 0x00, 0x23, 0x87, 0xFF
vertex 219, 22, 17, 0, 0, 0x00, 0x23, 0x79, 0xFF
vertex 257, 22, 17, 0, 0, 0x00, 0x23, 0x79, 0xFF
vertex 249, 57, 7, 0, 0, 0x00, 0x23, 0x79, 0xFF
vertex 230, 57, 7, 0, 0, 0x00, 0x23, 0x79, 0xFF
bowser_key_dl_vertex_group2: # 0x030157F8
vertex 230, 57, 7, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 249, 57, 7, 0, 0, 0x00, 0x7F, 0x00, 0x00
vertex 249, 57, -7, 0, 0, 0x00, 0x7F, 0x00, 0x00
vertex 230, 57, -7, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 272, 22, -17, 0, 0, 0x87, 0x23, 0x00, 0xFF
vertex 272, 22, 17, 0, 0, 0x87, 0x23, 0x00, 0xFF
vertex 285, 70, 9, 0, 0, 0x87, 0x23, 0x00, 0xFF
vertex 285, 70, -9, 0, 0, 0x87, 0x23, 0x00, 0xFF
vertex 317, 22, -17, 0, 0, 0x00, 0x16, 0x84, 0xFF
vertex 272, 22, -17, 0, 0, 0x00, 0x16, 0x84, 0xFF
vertex 285, 70, -9, 0, 0, 0x00, 0x16, 0x84, 0xFF
vertex 318, 70, -9, 0, 0, 0x00, 0x16, 0x84, 0xFF
vertex 317, 22, 17, 0, 0, 0x7F, 0x00, 0x00, 0xFF
vertex 317, 22, -17, 0, 0, 0x7F, 0x00, 0x00, 0xFF
vertex 318, 70, -9, 0, 0, 0x7F, 0x00, 0x00, 0xFF
vertex 318, 70, 9, 0, 0, 0x7F, 0x00, 0x00, 0xFF
bowser_key_dl_vertex_group3: # 0x030158F8
vertex 272, 22, 17, 0, 0, 0x00, 0x16, 0x7C, 0xFF
vertex 317, 22, 17, 0, 0, 0x00, 0x16, 0x7C, 0x00
vertex 318, 70, 9, 0, 0, 0x00, 0x16, 0x7C, 0x00
vertex 285, 70, 9, 0, 0, 0x00, 0x16, 0x7C, 0xFF
vertex 272, 22, -17, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 131, 22, -17, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 131, 22, 17, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 272, 22, 17, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 317, 22, -17, 0, 0, 0x7F, 0x00, 0x00, 0xFF
vertex 317, 22, 17, 0, 0, 0x7F, 0x00, 0x00, 0xFF
vertex 317, -22, 17, 0, 0, 0x7F, 0x00, 0x00, 0xFF
vertex 317, -22, -17, 0, 0, 0x7F, 0x00, 0x00, 0xFF
vertex 285, 70, 9, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 318, 70, 9, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 318, 70, -9, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 285, 70, -9, 0, 0, 0x00, 0x7F, 0x00, 0xFF
bowser_key_dl_vertex_group4: # 0x030159F8
vertex 317, -22, -17, 0, 0, 0x00, 0x81, 0x00, 0xFF
vertex 317, -22, 17, 0, 0, 0x00, 0x81, 0x00, 0x00
vertex 131, -22, 17, 0, 0, 0x00, 0x81, 0x00, 0x00
vertex 131, -22, -17, 0, 0, 0x00, 0x81, 0x00, 0xFF
vertex 130, 41, -53, 0, 0, 0x78, 0x28, 0x00, 0xFF
vertex 92, 113, -34, 0, 0, 0x70, 0x3B, 0x00, 0xFF
vertex 92, 113, 34, 0, 0, 0x70, 0x3B, 0x00, 0xFF
vertex 130, 41, 53, 0, 0, 0x7D, 0x14, 0x00, 0xFF
vertex 130, -39, 53, 0, 0, 0x78, 0xD8, 0x00, 0xFF
vertex 92, -111, 34, 0, 0, 0x70, 0xC5, 0x00, 0xFF
vertex 92, -111, -34, 0, 0, 0x70, 0xC5, 0x00, 0xFF
vertex 130, -39, -53, 0, 0, 0x7D, 0xEC, 0x00, 0xFF
vertex 92, -111, -34, 0, 0, 0xEE, 0xE2, 0x86, 0xFF
vertex 20, -80, -30, 0, 0, 0xEB, 0xDE, 0x88, 0xFF
vertex -4, -39, -37, 0, 0, 0xF0, 0xF1, 0x84, 0xFF
vertex 130, -39, -53, 0, 0, 0xF2, 0xF4, 0x83, 0xFF
bowser_key_dl_vertex_group5: # 0x03015AF8
vertex -4, -39, -37, 0, 0, 0xF0, 0xF1, 0x84, 0xFF
vertex -4, 41, -37, 0, 0, 0xEF, 0x14, 0x84, 0x00
vertex 130, 41, -53, 0, 0, 0xF2, 0x08, 0x83, 0x00
vertex 130, -39, -53, 0, 0, 0xF2, 0xF4, 0x83, 0xFF
vertex 130, -39, 53, 0, 0, 0xF2, 0xF8, 0x7D, 0xFF
vertex 130, 41, 53, 0, 0, 0xF2, 0x0C, 0x7D, 0xFF
vertex -4, 41, 37, 0, 0, 0xF0, 0x0F, 0x7C, 0xFF
vertex -4, -39, 37, 0, 0, 0xEF, 0xEC, 0x7C, 0xFF
vertex 92, 113, 34, 0, 0, 0xEE, 0x1E, 0x7A, 0xFF
vertex 20, 82, 30, 0, 0, 0xEB, 0x22, 0x78, 0xFF
vertex -4, 41, -37, 0, 0, 0x84, 0x16, 0x00, 0xFF
vertex -4, -39, -37, 0, 0, 0x8A, 0xD3, 0x00, 0xFF
vertex -4, -39, 37, 0, 0, 0x84, 0xEA, 0x00, 0xFF
vertex -4, 41, 37, 0, 0, 0x8A, 0x2D, 0x00, 0xFF
vertex 20, 82, 30, 0, 0, 0xAD, 0x5F, 0x00, 0xFF
vertex 20, 82, -30, 0, 0, 0xAD, 0x5F, 0x00, 0xFF
bowser_key_dl_vertex_group6: # 0x03015BF8
vertex -4, -39, -37, 0, 0, 0x8A, 0xD3, 0x00, 0xFF
vertex 20, -80, -30, 0, 0, 0xAD, 0xA1, 0x00, 0x00
vertex 20, -80, 30, 0, 0, 0xAD, 0xA1, 0x00, 0x00
vertex -4, -39, 37, 0, 0, 0x84, 0xEA, 0x00, 0xFF
vertex 130, 41, 53, 0, 0, 0x7D, 0x14, 0x00, 0xFF
vertex 130, -39, 53, 0, 0, 0x78, 0xD8, 0x00, 0xFF
vertex 130, -39, -53, 0, 0, 0x7D, 0xEC, 0x00, 0xFF
vertex 130, 41, -53, 0, 0, 0x78, 0x28, 0x00, 0xFF
vertex -4, 41, -37, 0, 0, 0xEF, 0x14, 0x84, 0xFF
vertex 20, 82, -30, 0, 0, 0xEB, 0x22, 0x88, 0xFF
vertex 92, 113, -34, 0, 0, 0xEE, 0x1E, 0x86, 0xFF
vertex 130, 41, -53, 0, 0, 0xF2, 0x08, 0x83, 0xFF
vertex 92, 113, 34, 0, 0, 0xCE, 0x74, 0x00, 0xFF
vertex 92, 113, -34, 0, 0, 0xCE, 0x74, 0x00, 0xFF
vertex 20, 82, -30, 0, 0, 0xAD, 0x5F, 0x00, 0xFF
vertex 20, 82, 30, 0, 0, 0xAD, 0x5F, 0x00, 0xFF
bowser_key_dl_vertex_group7: # 0x03015CF8
vertex -4, -39, 37, 0, 0, 0xEF, 0xEC, 0x7C, 0xFF
vertex 20, -80, 30, 0, 0, 0xEB, 0xDE, 0x78, 0x00
vertex 92, -111, 34, 0, 0, 0xEE, 0xE2, 0x7A, 0x00
vertex 130, -39, 53, 0, 0, 0xF2, 0xF8, 0x7D, 0xFF
vertex 92, -111, -34, 0, 0, 0xCE, 0x8C, 0x00, 0xFF
vertex 92, -111, 34, 0, 0, 0xCE, 0x8C, 0x00, 0xFF
vertex 20, -80, 30, 0, 0, 0xAD, 0xA1, 0x00, 0xFF
vertex 20, -80, -30, 0, 0, 0xAD, 0xA1, 0x00, 0xFF
vertex 12, -121, 15, 0, 0, 0x0B, 0x7E, 0x00, 0xFF
vertex 12, -121, -15, 0, 0, 0x0B, 0x7E, 0x00, 0xFF
vertex -51, -115, 0, 0, 0, 0x0B, 0x7E, 0x00, 0xFF
vertex 12, -121, -15, 0, 0, 0xC8, 0x19, 0x92, 0xFF
vertex 16, -152, -25, 0, 0, 0xCE, 0x15, 0x8E, 0xFF
vertex -51, -115, 0, 0, 0, 0xE6, 0x21, 0x89, 0xFF
bowser_key_dl_vertex_group8: # 0x03015DD8
vertex 16, -152, 25, 0, 0, 0xCE, 0x15, 0x72, 0xFF
vertex 12, -121, 15, 0, 0, 0xC8, 0x19, 0x6E, 0x00
vertex -51, -115, 0, 0, 0, 0xE6, 0x21, 0x77, 0x00
vertex 21, -171, 0, 0, 0, 0xB3, 0x9C, 0x00, 0xFF
vertex 16, -152, 25, 0, 0, 0xBB, 0xA7, 0x38, 0xFF
vertex -51, -115, 0, 0, 0, 0xB3, 0x9C, 0x00, 0xFF
vertex 16, -152, -25, 0, 0, 0xBB, 0xA7, 0xC8, 0xFF
vertex -51, 115, 0, 0, 0, 0x0B, 0x82, 0x00, 0xFF
vertex 12, 121, -15, 0, 0, 0x0B, 0x82, 0x00, 0xFF
vertex 12, 121, 15, 0, 0, 0x0B, 0x82, 0x00, 0xFF
vertex -51, 115, 0, 0, 0, 0xE6, 0xDF, 0x89, 0xFF
vertex 16, 152, -25, 0, 0, 0xCE, 0xEB, 0x8E, 0xFF
vertex 12, 121, -15, 0, 0, 0xA7, 0xDE, 0xAD, 0xFF
vertex -51, 115, 0, 0, 0, 0xE6, 0xDF, 0x77, 0xFF
vertex 12, 121, 15, 0, 0, 0x99, 0xDC, 0x3F, 0xFF
vertex 16, 152, 25, 0, 0, 0xCE, 0xEB, 0x72, 0xFF
bowser_key_dl_vertex_group9: # 0x03015ED8
vertex -51, 115, 0, 0, 0, 0xB3, 0x64, 0x00, 0xFF
vertex 16, 152, 25, 0, 0, 0xBB, 0x59, 0x38, 0x00
vertex 21, 171, 0, 0, 0, 0xB3, 0x64, 0x00, 0x00
vertex 16, 152, -25, 0, 0, 0xBB, 0x59, 0xC8, 0xFF
vertex 317, -22, 17, 0, 0, 0x00, 0x00, 0x7F, 0xFF
vertex 317, 22, 17, 0, 0, 0x00, 0x00, 0x7F, 0xFF
vertex 131, 22, 17, 0, 0, 0x00, 0x00, 0x7F, 0xFF
vertex 131, -22, 17, 0, 0, 0x00, 0x00, 0x7F, 0xFF
vertex 317, 22, -17, 0, 0, 0x00, 0x00, 0x81, 0xFF
vertex 317, -22, -17, 0, 0, 0x00, 0x00, 0x81, 0xFF
vertex 131, -22, -17, 0, 0, 0x00, 0x00, 0x81, 0xFF
vertex 131, 22, -17, 0, 0, 0x00, 0x00, 0x81, 0xFF
vertex 16, 152, -25, 0, 0, 0xCE, 0xEB, 0x8E, 0xFF
vertex 56, 97, -31, 0, 0, 0xDB, 0xF2, 0x88, 0xFF
vertex 23, 83, -19, 0, 0, 0x97, 0xE1, 0xC2, 0xFF
vertex 12, 121, -15, 0, 0, 0xA7, 0xDE, 0xAD, 0xFF
bowser_key_dl_vertex_group10: # 0x03015FD8
vertex 12, 121, 15, 0, 0, 0x99, 0xDC, 0x3F, 0xFF
vertex 12, 121, -15, 0, 0, 0xA7, 0xDE, 0xAD, 0x00
vertex 23, 83, -19, 0, 0, 0x97, 0xE1, 0xC2, 0x00
vertex 23, 83, 19, 0, 0, 0xA4, 0xE6, 0x52, 0xFF
vertex 16, 152, 25, 0, 0, 0xCE, 0xEB, 0x72, 0xFF
vertex 56, 97, 31, 0, 0, 0xDB, 0xF2, 0x78, 0xFF
vertex 16, 152, -25, 0, 0, 0x50, 0x43, 0xB9, 0xFF
vertex 21, 171, 0, 0, 0, 0x50, 0x45, 0xBB, 0xFF
vertex 77, 106, 0, 0, 0, 0x50, 0x43, 0xB9, 0xFF
vertex 56, 97, -31, 0, 0, 0x4F, 0x42, 0xB7, 0xFF
vertex 16, 152, 25, 0, 0, 0x50, 0x43, 0x47, 0xFF
vertex 56, 97, 31, 0, 0, 0x4F, 0x42, 0x49, 0xFF
vertex 77, 106, 0, 0, 0, 0x50, 0x43, 0x47, 0xFF
vertex 21, 171, 0, 0, 0, 0x50, 0x45, 0x45, 0xFF
bowser_key_dl_vertex_group11: # 0x030160B8
vertex 16, -152, -25, 0, 0, 0xCE, 0x15, 0x8E, 0xFF
vertex 12, -121, -15, 0, 0, 0xC8, 0x19, 0x92, 0x00
vertex 24, -82, -19, 0, 0, 0xC3, 0x0F, 0x93, 0x00
vertex 57, -96, -31, 0, 0, 0xDB, 0x0E, 0x88, 0xFF
vertex 24, -82, -19, 0, 0, 0x87, 0x25, 0x00, 0xFF
vertex 12, -121, -15, 0, 0, 0x87, 0x25, 0x00, 0xFF
vertex 12, -121, 15, 0, 0, 0x87, 0x25, 0x00, 0xFF
vertex 24, -82, 19, 0, 0, 0x87, 0x25, 0x00, 0xFF
vertex 24, -82, 19, 0, 0, 0xC3, 0x0F, 0x6D, 0xFF
vertex 12, -121, 15, 0, 0, 0xC8, 0x19, 0x6E, 0xFF
vertex 16, -152, 25, 0, 0, 0xCE, 0x15, 0x72, 0xFF
vertex 57, -96, 31, 0, 0, 0xDB, 0x0E, 0x78, 0xFF
vertex 78, -105, 0, 0, 0, 0x50, 0xBD, 0xB9, 0xFF
vertex 21, -171, 0, 0, 0, 0x50, 0xBB, 0xBB, 0xFF
vertex 16, -152, -25, 0, 0, 0x50, 0xBD, 0xB9, 0xFF
vertex 57, -96, -31, 0, 0, 0x4F, 0xBE, 0xB7, 0xFF
bowser_key_dl_vertex_group12: # 0x030161B8
vertex 16, -152, 25, 0, 0, 0x50, 0xBD, 0x47, 0xFF
vertex 21, -171, 0, 0, 0, 0x50, 0xBB, 0x45, 0x00
vertex 78, -105, 0, 0, 0, 0x50, 0xBD, 0x47, 0x00
vertex 57, -96, 31, 0, 0, 0x4F, 0xBE, 0x49, 0xFF
glabel bowser_key_dl # 0x030161F8 - 0x03016530
gsSPLight bowser_key_diff_light, 1
gsSPLight bowser_key_amb_light, 2
gsSPVertex bowser_key_dl_vertex_group1, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 10, 11, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 12, 14, 15, 0x0
gsSPVertex bowser_key_dl_vertex_group2, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 10, 11, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 12, 14, 15, 0x0
gsSPVertex bowser_key_dl_vertex_group3, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 10, 11, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 12, 14, 15, 0x0
gsSPVertex bowser_key_dl_vertex_group4, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 10, 11, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 15, 12, 14, 0x0
gsSPVertex bowser_key_dl_vertex_group5, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 8, 9, 6, 0x0, 5, 8, 6, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 10, 12, 13, 0x0
gsSP2Triangles 13, 14, 15, 0x0, 13, 15, 10, 0x0
gsSPVertex bowser_key_dl_vertex_group6, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 10, 11, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 12, 14, 15, 0x0
gsSPVertex bowser_key_dl_vertex_group7, 14, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 11, 12, 13, 0x0
gsSPVertex bowser_key_dl_vertex_group8, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 3, 5, 0x0, 7, 8, 9, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 13, 14, 15, 0x0
gsSPVertex bowser_key_dl_vertex_group9, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 10, 11, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 15, 12, 14, 0x0
gsSPVertex bowser_key_dl_vertex_group10, 14, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 0, 3, 0x0, 4, 3, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 6, 8, 9, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 13, 10, 12, 0x0
gsSPVertex bowser_key_dl_vertex_group11, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 0, 2, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 10, 11, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 12, 14, 15, 0x0
gsSPVertex bowser_key_dl_vertex_group12, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 0, 2, 0x0
gsSPEndDisplayList
bowser_key_seg3_course_exit_animvalue: # 0x03016530
.hword 0x0000, 0xFFF9, 0xFFF9, 0xFFF9, 0xFFF9, 0xFFF9, 0xFFF9, 0xFFF9
.hword 0xFFF9, 0xFFF9, 0xFFF9, 0xFFF9, 0xFFF9, 0xFFF9, 0xFFF9, 0xFFF9
.hword 0xFFF9, 0xFFF9, 0xFFF9, 0xFFF9, 0xFFF9, 0xFFF9, 0xFFF9, 0xFFF9
.hword 0xFFF9, 0xFFF9, 0xFFF9, 0xFFF9, 0xFFF9, 0xFFF9, 0xFFF9, 0xFFF9
.hword 0xFFF9, 0xFFF9, 0xFFEF, 0xFFD6, 0xFFBA, 0xFFA6, 0xFFA6, 0xFFAA
.hword 0xFFA5, 0xFF9C, 0xFF89, 0xFF77, 0xFF64, 0xFF53, 0xFF43, 0xFF3E
.hword 0xFF43, 0xFF4A, 0xFF4C, 0xFF4F, 0xFF53, 0xFF58, 0xFF5B, 0xFF5B
.hword 0xFF5C, 0xFF5C, 0xFF5B, 0xFF5A, 0xFF57, 0xFF4B, 0xFF3C, 0xFF3B
.hword 0xFF41, 0xFF25, 0xFF2B, 0xFF41, 0xFF53, 0xFF68, 0xFF85, 0xFFA5
.hword 0xFFC4, 0xFFE1, 0xFFFE, 0x001A, 0x0037, 0x0054, 0x006E, 0x0084
.hword 0x0098, 0x00A8, 0x00B6, 0x00C3, 0x00CD, 0x00D7, 0x00D4, 0x00C1
.hword 0x00AF, 0x00A7, 0x00BE, 0x00BF, 0x00D4, 0x00E8, 0x00EA, 0x00E4
.hword 0x00DD, 0x00D6, 0x00CF, 0x00C8, 0x00C0, 0x00B5, 0x00A9, 0x009E
.hword 0x0090, 0x008C, 0x0084, 0x0070, 0x0057, 0x003E, 0x002A, 0x0020
.hword 0x001C, 0x0019, 0x0015, 0x0012, 0x0010, 0x000D, 0x000B, 0x0009
.hword 0x0008, 0x0006, 0x0005, 0x0004, 0x0003, 0x0002, 0x0001, 0x0001
.hword 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
.hword 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0104, 0x0104, 0x0104
.hword 0x0104, 0x0104, 0x0104, 0x0104, 0x0104, 0x0104, 0x0104, 0x0104
.hword 0x0104, 0x0104, 0x0104, 0x0104, 0x0104, 0x0104, 0x0104, 0x0104
.hword 0x0104, 0x0104, 0x0104, 0x0104, 0x0104, 0x0104, 0x0104, 0x0104
.hword 0x0104, 0x0104, 0x0104, 0x0104, 0x0104, 0x0104, 0x0108, 0x0112
.hword 0x0121, 0x0133, 0x0153, 0x017D, 0x01A6, 0x01C8, 0x01C0, 0x01BC
.hword 0x01B8, 0x01B4, 0x01B0, 0x01AA, 0x01AB, 0x01AB, 0x01A0, 0x019C
.hword 0x019B, 0x01A2, 0x01A5, 0x01A7, 0x01A8, 0x01AA, 0x01AB, 0x01AA
.hword 0x01A5, 0x0192, 0x0175, 0x015B, 0x014E, 0x017A, 0x01D8, 0x023E
.hword 0x02A3, 0x030D, 0x037F, 0x03E4, 0x0427, 0x044F, 0x0461, 0x0463
.hword 0x044F, 0x0426, 0x03E9, 0x0399, 0x033A, 0x02CC, 0x0255, 0x01DB
.hword 0x0162, 0x00F0, 0x00D2, 0x00BE, 0x00AD, 0x00A3, 0x00A2, 0x00B8
.hword 0x00C6, 0x00D5, 0x00E6, 0x00F5, 0x0103, 0x0110, 0x011F, 0x012E
.hword 0x0159, 0x0161, 0x0164, 0x0173, 0x016E, 0x0178, 0x0179, 0x0163
.hword 0x0145, 0x0127, 0x010E, 0x0101, 0x00FD, 0x00FA, 0x00F7, 0x00F5
.hword 0x00F3, 0x00F1, 0x00F0, 0x00EF, 0x00EE, 0x00ED, 0x00ED, 0x00ED
.hword 0x00ED, 0x00ED, 0x00ED, 0x00EE, 0x00EE, 0x00EF, 0x00EF, 0x00F0
.hword 0x00F1, 0x00F2, 0x00F2, 0x00F3, 0x00F4, 0x00F4, 0x00F5, 0x00F5
.hword 0x00F5, 0x001E, 0x001E, 0x001E, 0x001E, 0x001E, 0x001E, 0x001E
.hword 0x001E, 0x001E, 0x001E, 0x001E, 0x001E, 0x001E, 0x001E, 0x001E
.hword 0x001E, 0x001E, 0x001E, 0x001E, 0x001E, 0x001E, 0x001E, 0x001E
.hword 0x001E, 0x001E, 0x001E, 0x001E, 0x001E, 0x001E, 0x001E, 0x001E
.hword 0x001E, 0x001E, 0x002A, 0x0044, 0x005F, 0x006E, 0x005B, 0x0038
.hword 0x0016, 0xFFF3, 0xFFC6, 0xFFB5, 0xFFA7, 0xFF9C, 0xFF92, 0xFF9A
.hword 0xFFA3, 0xFFAB, 0xFFAE, 0xFFAC, 0xFFAA, 0xFFA6, 0xFFA6, 0xFFA6
.hword 0xFFA5, 0xFFA5, 0xFFA6, 0xFFA8, 0xFFAC, 0xFFBC, 0xFFD4, 0xFFF3
.hword 0xFFF7, 0xFFD9, 0xFF95, 0xFF9F, 0xFFB3, 0xFFCA, 0xFFDE, 0xFFEB
.hword 0xFFF5, 0xFFFE, 0x0005, 0x000C, 0x0010, 0x0013, 0x0015, 0x001B
.hword 0x0024, 0x002F, 0x003B, 0x0047, 0x0053, 0x005D, 0x0067, 0x0071
.hword 0x007B, 0x007C, 0x005D, 0x0057, 0x0044, 0x002E, 0x001F, 0x0026
.hword 0x0036, 0x0047, 0x0059, 0x0067, 0x006E, 0x0063, 0x0052, 0x0044
.hword 0x004F, 0x004C, 0x0049, 0x004A, 0x004C, 0x004F, 0x0051, 0x0051
.hword 0x0050, 0x004E, 0x004D, 0x004B, 0x004A, 0x0048, 0x0046, 0x0044
.hword 0x0042, 0x0040, 0x003E, 0x003C, 0x003A, 0x0038, 0x0036, 0x0034
.hword 0x0032, 0x0030, 0x002E, 0x002D, 0x002B, 0x002A, 0x0028, 0x0027
.hword 0x0026, 0x0026, 0x0025, 0x0025, 0x0025, 0x0043, 0x0043, 0x0043
.hword 0x0043, 0x0043, 0x0043, 0x0043, 0x0043, 0x0043, 0x0043, 0x0043
.hword 0x0043, 0x0043, 0x0043, 0x0043, 0x0043, 0x0043, 0x0043, 0x0043
.hword 0x0043, 0x0043, 0x0043, 0x0043, 0x0043, 0x0043, 0x0043, 0x0043
.hword 0x0043, 0x0043, 0x0043, 0x0043, 0x0043, 0x0043, 0xF625, 0xE13A
.hword 0xCFAC, 0xC645, 0xC5B6, 0xD02D, 0xDF2E, 0xEDBE, 0xF6E4, 0xF82B
.hword 0xF49A, 0xEF74, 0xEBFA, 0xEB00, 0xEB11, 0xEC03, 0xEFAB, 0xF2A2
.hword 0xF25E, 0xF1BD, 0xF0D5, 0xEFBF, 0xEE94, 0xED6B, 0xEC5C, 0xEB80
.hword 0xEB77, 0xEB52, 0xEA23, 0xE7A9, 0xE0B3, 0xFAF2, 0x033B, 0x03BB
.hword 0x0428, 0x0483, 0x04CE, 0x050B, 0x053B, 0x0560, 0x057C, 0x0590
.hword 0x059E, 0x05A7, 0x05AE, 0x05B4, 0x05BA, 0x05C3, 0x05CF, 0x05E1
.hword 0x05FA, 0x061C, 0x0649, 0x069D, 0x071C, 0x079B, 0x07F0, 0x08A2
.hword 0x0748, 0x028B, 0xFC9E, 0xF6DB, 0xF2A1, 0xF001, 0xED7B, 0xEA10
.hword 0xE1D6, 0xE57A, 0xEB26, 0xF08C, 0xF35C, 0xF41A, 0xF4D1, 0xF582
.hword 0xF62D, 0xF6D2, 0xF770, 0xF809, 0xF89B, 0xF927, 0xF9AE, 0xFA2E
.hword 0xFAA9, 0xFB1E, 0xFB8D, 0xFBF7, 0xFC5B, 0xFCBA, 0xFD13, 0xFD67
.hword 0xFDB6, 0xFDFF, 0xFE43, 0xFE82, 0xFEBC, 0xFEF1, 0xFF21, 0xFF4D
.hword 0xFF73, 0xFF95, 0xFFB2, 0xFFCA, 0xFFDE, 0xFFED, 0xFFF8, 0xFFFE
.hword 0x0000, 0x00C5, 0x00C5, 0x00C5, 0x00C5, 0x00C5, 0x00C5, 0x00C5
.hword 0x00C5, 0x00C5, 0x00C5, 0x00C5, 0x00C5, 0x00C5, 0x00C5, 0x00C5
.hword 0x00C5, 0x00C5, 0x00C5, 0x00C5, 0x00C5, 0x00C5, 0x00C5, 0x00C5
.hword 0x00C5, 0x00C5, 0x00C5, 0x00C5, 0x00C5, 0x00C5, 0x00C5, 0x00C5
.hword 0x00C5, 0x00C5, 0x068D, 0x1114, 0x161F, 0x09DC, 0xFAF2, 0xF65F
.hword 0xF437, 0xF298, 0xEF9E, 0xE9D0, 0xE283, 0xDC08, 0xD8AF, 0xDB42
.hword 0xE208, 0xE88D, 0xEDC0, 0xF13C, 0xF296, 0xF3B0, 0xF495, 0xF550
.hword 0xF5EC, 0xF673, 0xF6EF, 0xF76C, 0xF6C5, 0xF643, 0xF84A, 0xFA95
.hword 0xFA3A, 0xFEF8, 0xF54C, 0xF4F2, 0xF4B1, 0xF485, 0xF46D, 0xF467
.hword 0xF471, 0xF488, 0xF4AA, 0xF4D4, 0xF506, 0xF53D, 0xF575, 0xF5AF
.hword 0xF5E6, 0xF619, 0xF646, 0xF66B, 0xF685, 0xF693, 0xF692, 0xF649
.hword 0xF5A8, 0xF4EC, 0xF44D, 0xF408, 0xF457, 0xF59C, 0xF7CD, 0xFA82
.hword 0xFD52, 0x0050, 0x03BF, 0x0778, 0x0CA0, 0x0DE8, 0x0EBC, 0x0F1B
.hword 0x0F04, 0x0EAF, 0x0E52, 0x0DED, 0x0D81, 0x0D0F, 0x0C97, 0x0C1A
.hword 0x0B98, 0x0B13, 0x0A8A, 0x09FE, 0x0971, 0x08E2, 0x0852, 0x07C2
.hword 0x0732, 0x06A3, 0x0616, 0x058C, 0x0504, 0x047F, 0x03FF, 0x0383
.hword 0x030D, 0x029C, 0x0233, 0x01D0, 0x0175, 0x0122, 0x00D9, 0x0099
.hword 0x0063, 0x0039, 0x0019, 0x0006, 0x0000, 0xCD0C, 0xCD0C, 0xCD0C
.hword 0xCD0C, 0xCD0C, 0xCD0C, 0xCD0C, 0xCD0C, 0xCD0C, 0xCD0C, 0xCD0C
.hword 0xCD0C, 0xCD0C, 0xCD0C, 0xCD0C, 0xCD0C, 0xCD0C, 0xCD0C, 0xCD0C
.hword 0xCD0C, 0xCD0C, 0xCD0C, 0xCD0C, 0xCD0C, 0xCD0C, 0xCD0C, 0xCD0C
.hword 0xCD0C, 0xCD0C, 0xCD0C, 0xCD0C, 0xCD0C, 0xCD0C, 0xBF49, 0xA435
.hword 0x9122, 0x9756, 0xA330, 0xA4E1, 0xA48B, 0xA3FC, 0xA501, 0xA8C0
.hword 0xAE0A, 0xB32E, 0xB67A, 0xB62B, 0xB395, 0xB1A9, 0xB267, 0xB36D
.hword 0xB347, 0xB2F4, 0xB287, 0xB210, 0xB1A4, 0xB152, 0xB12E, 0xB149
.hword 0xB2C9, 0xB5F6, 0xBB50, 0xBFAD, 0xBACF, 0xBA05, 0xBC07, 0xC1FA
.hword 0xC816, 0xCE55, 0xD4B0, 0xDB22, 0xE1A3, 0xE82D, 0xEEBB, 0xF544
.hword 0xFBC3, 0x0231, 0x0889, 0x0EC4, 0x14DB, 0x1AC8, 0x2084, 0x2609
.hword 0x2B50, 0x3054, 0x350E, 0x3820, 0x38BD, 0x37B4, 0x35D7, 0x33F5
.hword 0x32DD, 0x3219, 0x3114, 0x306F, 0x30CC, 0x32F6, 0x368C, 0x3A6B
.hword 0x3F5C, 0x4190, 0x4385, 0x44F1, 0x4586, 0x4594, 0x459C, 0x459E
.hword 0x459B, 0x4594, 0x4588, 0x4578, 0x4564, 0x454C, 0x4531, 0x4513
.hword 0x44F3, 0x44D0, 0x44AB, 0x4485, 0x445D, 0x4434, 0x440A, 0x43E0
.hword 0x43B5, 0x438B, 0x4361, 0x4338, 0x4310, 0x42EA, 0x42C5, 0x42A2
.hword 0x4282, 0x4264, 0x4249, 0x4232, 0x421E, 0x420E, 0x4202, 0x41FA
.hword 0x41F8, 0x0000
bowser_key_seg3_course_exit_animindex: # 0x03016BC4
.hword 0x008C, 0x0001, 0x008C, 0x008D, 0x008C, 0x0119, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x008C, 0x01A5, 0x008C, 0x0231
.hword 0x008C, 0x02BD
bowser_key_seg3_course_exit_anim: # 0x03016BE8
.hword 1
.hword 0
.hword 0
.hword 0
.hword 0x8C
.hword 0x02
.word bowser_key_seg3_course_exit_animvalue
.word bowser_key_seg3_course_exit_animindex
.word 0
bowser_key_seg3_unlock_door_animvalue: # 0x03016C00
.hword 0x0000, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6
.hword 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6
.hword 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6
.hword 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6
.hword 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6
.hword 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6, 0xFFE6
.hword 0xFFDE, 0xFFC9, 0xFFAC, 0xFF8C, 0xFF6D, 0xFF55, 0xFF47, 0xFF3F
.hword 0xFF39, 0xFF31, 0xFF2C, 0xFF28, 0xFF24, 0xFF20, 0xFF1D, 0xFF1A
.hword 0xFF19, 0xFF1A, 0xFF20, 0xFF29, 0xFF35, 0xFF40, 0xFF47, 0xFF46
.hword 0xFF40, 0xFF42, 0xFF53, 0xFF6C, 0xFF86, 0xFFA0, 0xFFB8, 0xFFCD
.hword 0xFFE1, 0xFFF3, 0x0000, 0x0004, 0x0002, 0x0000, 0x0000, 0x0000
.hword 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
.hword 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
.hword 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
.hword 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
.hword 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
.hword 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
.hword 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00EF, 0x00EF, 0x00EF
.hword 0x00EF, 0x00EF, 0x00EF, 0x00EF, 0x00EF, 0x00EF, 0x00EF, 0x00EF
.hword 0x00EF, 0x00EF, 0x00EF, 0x00EF, 0x00EF, 0x00EF, 0x00EF, 0x00EF
.hword 0x00EF, 0x00EF, 0x00EF, 0x00EF, 0x00EF, 0x00EF, 0x00EF, 0x00EF
.hword 0x00EF, 0x00EF, 0x00EF, 0x00EF, 0x00EF, 0x00EF, 0x00EF, 0x00EF
.hword 0x00EF, 0x00EF, 0x00EF, 0x00EF, 0x00EF, 0x00EF, 0x00EF, 0x00EF
.hword 0x00EF, 0x00EF, 0x00EF, 0x00EF, 0x00F5, 0x0105, 0x011C, 0x0136
.hword 0x014E, 0x0163, 0x0172, 0x017F, 0x0187, 0x0185, 0x017A, 0x016B
.hword 0x015B, 0x014B, 0x013A, 0x0128, 0x0116, 0x0104, 0x00F0, 0x00D9
.hword 0x00C2, 0x00B0, 0x00A5, 0x00A2, 0x00AE, 0x00D8, 0x012E, 0x01A3
.hword 0x0214, 0x0282, 0x02D0, 0x02EC, 0x02F6, 0x02F9, 0x02FC, 0x02FE
.hword 0x02FD, 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC
.hword 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC
.hword 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC
.hword 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC
.hword 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC
.hword 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC
.hword 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC, 0x02FC
.hword 0x02FC, 0xFE78, 0xFE78, 0xFE78, 0xFE78, 0xFE78, 0xFE78, 0xFE78
.hword 0xFE78, 0xFE78, 0xFE78, 0xFE78, 0xFE78, 0xFE78, 0xFE78, 0xFE78
.hword 0xFE78, 0xFE78, 0xFE78, 0xFE78, 0xFE78, 0xFE78, 0xFE78, 0xFE78
.hword 0xFE78, 0xFE78, 0xFE78, 0xFE78, 0xFE78, 0xFE78, 0xFE78, 0xFE78
.hword 0xFE78, 0xFE78, 0xFE78, 0xFE78, 0xFE78, 0xFE78, 0xFE78, 0xFE78
.hword 0xFE78, 0xFE7A, 0xFE81, 0xFE89, 0xFE92, 0xFE9A, 0xFEA0, 0xFEA2
.hword 0xFEA3, 0xFEA2, 0xFEA1, 0xFE9F, 0xFE9B, 0xFE94, 0xFE86, 0xFE6F
.hword 0xFE5B, 0xFE4B, 0xFE41, 0xFE3B, 0xFE34, 0xFE2E, 0xFE29, 0xFE26
.hword 0xFE26, 0xFE2A, 0xFE37, 0xFE4D, 0xFE66, 0xFE7D, 0xFE8C, 0xFE8D
.hword 0xFE83, 0xFE72, 0xFE55, 0xFE32, 0xFE1F, 0xFE33, 0xFE62, 0xFE9D
.hword 0xFEE0, 0xFF1E, 0xFF4B, 0xFF55, 0xFF47, 0xFF3B, 0xFF3B, 0xFF3B
.hword 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B
.hword 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B
.hword 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B
.hword 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B
.hword 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B
.hword 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B
.hword 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0xFF3B, 0x8461, 0x8461, 0x8461
.hword 0x8461, 0x8461, 0x8461, 0x8461, 0x8461, 0x8461, 0x8461, 0x8461
.hword 0x8461, 0x8461, 0x8461, 0x8461, 0x8461, 0x8461, 0x8461, 0x8461
.hword 0x8461, 0x8461, 0x8461, 0x8461, 0x8461, 0x8461, 0x8461, 0x8461
.hword 0x8461, 0x8461, 0x8461, 0x8461, 0x8461, 0x8461, 0x8461, 0x8461
.hword 0x8461, 0x8461, 0x8461, 0x8461, 0x8461, 0x8461, 0x8461, 0x8461
.hword 0x8461, 0x8461, 0x8461, 0x8461, 0x82B3, 0x7E2F, 0x77A9, 0x6FEC
.hword 0x67C7, 0x6008, 0x57E7, 0x4E25, 0x42DE, 0x3065, 0x2408, 0x24C3
.hword 0x2662, 0x28C0, 0x2BB3, 0x2F16, 0x32C1, 0x368D, 0x3A53, 0x3DEB
.hword 0x412E, 0x43F5, 0x4619, 0x46FC, 0x467E, 0x4535, 0x43B8, 0x429D
.hword 0x4279, 0x43E4, 0x4773, 0x5289, 0x64E7, 0x76AE, 0x8001, 0x8001
.hword 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001
.hword 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001
.hword 0x8001, 0x8001, 0x7EA0, 0x7CB4, 0x7A53, 0x7792, 0x748A, 0x7151
.hword 0x6DFE, 0x6AA7, 0x6765, 0x644D, 0x6177, 0x5EFA, 0x5EEA, 0x5FFF
.hword 0x5FFF, 0x5FFF, 0x5FFF, 0x5FFF, 0x5FFF, 0x5FFF, 0x5FFF, 0x5FFF
.hword 0x5FFF, 0x5FFF, 0x5FFF, 0x5FFF, 0x5FFF, 0x5FFF, 0x5FFF, 0x5FFF
.hword 0x5FFF, 0x5FFF, 0x5FFF, 0x5FFF, 0x5FFF, 0x5FFF, 0x5FFF, 0x5FFF
.hword 0x5FFF, 0xF473, 0xF473, 0xF473, 0xF473, 0xF473, 0xF473, 0xF473
.hword 0xF473, 0xF473, 0xF473, 0xF473, 0xF473, 0xF473, 0xF473, 0xF473
.hword 0xF473, 0xF473, 0xF473, 0xF473, 0xF473, 0xF473, 0xF473, 0xF473
.hword 0xF473, 0xF473, 0xF473, 0xF473, 0xF473, 0xF473, 0xF473, 0xF473
.hword 0xF473, 0xF473, 0xF473, 0xF473, 0xF473, 0xF473, 0xF473, 0xF473
.hword 0xF473, 0xF473, 0xF473, 0xF473, 0xF473, 0xF473, 0xF473, 0xF473
.hword 0xF586, 0xF816, 0xFB27, 0xFDBC, 0xFED8, 0xFD7F, 0xF39B, 0xE3D3
.hword 0xDA4B, 0xE562, 0xF1AA, 0xF159, 0xF06D, 0xEEFF, 0xED25, 0xEAF8
.hword 0xE891, 0xE606, 0xE371, 0xE0E8, 0xDE85, 0xDC60, 0xDA8F, 0xD92A
.hword 0xD820, 0xD74C, 0xD689, 0xD5B3, 0xD4A6, 0xD33C, 0xD152, 0xCD83
.hword 0xC7EF, 0xC2B8, 0xC001, 0xC001, 0xC001, 0xC001, 0xC001, 0xC001
.hword 0xC001, 0xC001, 0xC001, 0xC001, 0xC001, 0xC001, 0xC001, 0xC001
.hword 0xC001, 0xC001, 0xC001, 0xC001, 0xC001, 0xC001, 0xC001, 0xC001
.hword 0xC001, 0xC001, 0xC001, 0xC001, 0xC001, 0xC001, 0xC001, 0xC001
.hword 0xC001, 0xC001, 0xC001, 0xC001, 0xC001, 0xC001, 0xC001, 0xC001
.hword 0xC001, 0xC001, 0xC001, 0xC001, 0xC001, 0xC001, 0xC001, 0xC001
.hword 0xC001, 0xC001, 0xC001, 0xC001, 0xC001, 0xC001, 0xC001, 0xC001
.hword 0xC001, 0xC001, 0xC001, 0xC001, 0xC001, 0xED15, 0xED15, 0xED15
.hword 0xED15, 0xED15, 0xED15, 0xED15, 0xED15, 0xED15, 0xED15, 0xED15
.hword 0xED15, 0xED15, 0xED15, 0xED15, 0xED15, 0xED15, 0xED15, 0xED15
.hword 0xED15, 0xED15, 0xED15, 0xED15, 0xED15, 0xED15, 0xED15, 0xED15
.hword 0xED15, 0xED15, 0xED15, 0xED15, 0xED15, 0xED15, 0xED15, 0xED15
.hword 0xED15, 0xED15, 0xED15, 0xED15, 0xED15, 0xED15, 0xED15, 0xED15
.hword 0xED15, 0xED15, 0xED15, 0xED15, 0xEC6B, 0xEB03, 0xE9B9, 0xE96B
.hword 0xEAF7, 0xEF3A, 0xFB03, 0x0E30, 0x2241, 0x3A83, 0x4AE1, 0x4D0F
.hword 0x4E8C, 0x4F6A, 0x4FB8, 0x4F88, 0x4EEA, 0x4DF0, 0x4CA9, 0x4B28
.hword 0x497C, 0x47B7, 0x45E9, 0x43D7, 0x413A, 0x3E16, 0x3A6F, 0x3646
.hword 0x31A0, 0x2C7F, 0x26E7, 0x1DDD, 0x1162, 0x05F0, 0x0000, 0x0000
.hword 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
.hword 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
.hword 0x0000, 0x0000, 0xFEA2, 0xFCB6, 0xFA55, 0xF794, 0xF48C, 0xF153
.hword 0xEE00, 0xEAA9, 0xE767, 0xE44F, 0xE179, 0xDEFC, 0xDEEC, 0xE001
.hword 0xE001, 0xE001, 0xE001, 0xE001, 0xE001, 0xE001, 0xE001, 0xE001
.hword 0xE001, 0xE001, 0xE001, 0xE001, 0xE001, 0xE001, 0xE001, 0xE001
.hword 0xE001, 0xE001, 0xE001, 0xE001, 0xE001, 0xE001, 0xE001, 0xE001
.hword 0xE001, 0x0000
bowser_key_seg3_unlock_door_animindex: # 0x03017294
.hword 0x008C, 0x0001, 0x008C, 0x008D, 0x008C, 0x0119, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x008C, 0x01A5, 0x008C, 0x0231
.hword 0x008C, 0x02BD
bowser_key_seg3_unlock_door_anim: # 0x030172B8
.hword 1
.hword 0
.hword 0
.hword 0
.hword 0x8C
.hword 0x02
.word bowser_key_seg3_unlock_door_animvalue
.word bowser_key_seg3_unlock_door_animindex
.word 0
glabel bowser_key_seg3_anims_list # 0x030172D0
.word bowser_key_seg3_unlock_door_anim # id 0
.word bowser_key_seg3_course_exit_anim # id 1

View file

@ -0,0 +1,32 @@
# Breakable Box
glabel breakable_box_seg8_collision_08012D70 # 0x08012D70 - 0x08012DF4
colInit
colVertexInit 0x8
colVertex -100, 0, -100
colVertex -100, 0, 100
colVertex -100, 200, 100
colVertex 100, 0, 100
colVertex 100, 200, 100
colVertex 100, 0, -100
colVertex 100, 200, -100
colVertex -100, 200, -100
colTriInit SURFACE_CAM_NO_COL, 12
colTri 0, 1, 2
colTri 1, 3, 4
colTri 1, 4, 2
colTri 5, 3, 1
colTri 5, 1, 0
colTri 6, 4, 3
colTri 6, 3, 5
colTri 7, 4, 6
colTri 7, 2, 4
colTri 0, 2, 7
colTri 7, 6, 5
colTri 7, 5, 0
colTriStop
colEnd
.word 0
.word 0

View file

@ -0,0 +1,24 @@
glabel breakable_box_geo # 0x0F0005D0
geo_culling_radius 500
geo_open_node
geo_shadow SHADOW_SQUARE_PERMANENT, 0xB4, 240
geo_open_node
geo_switch_case 2, geo_switch_anim_state
geo_open_node
geo_display_list LAYER_OPAQUE, breakable_box_seg8_dl_08012D20
geo_display_list LAYER_OPAQUE, breakable_box_seg8_dl_08012D48
geo_close_node
geo_close_node
geo_close_node
geo_end
glabel breakable_box_small_geo # 0x0F000610
geo_culling_radius 500
geo_open_node
geo_switch_case 2, geo_switch_anim_state
geo_open_node
geo_display_list LAYER_OPAQUE, breakable_box_seg8_dl_08012D20
geo_display_list LAYER_OPAQUE, breakable_box_seg8_dl_08012D48
geo_close_node
geo_close_node
geo_end

View file

@ -0,0 +1,87 @@
# Breakable Box
breakable_box_seg8_light_08011A78: # 0x08011A78
.byte 0x3F, 0x3F, 0x3F, 0x00, 0x3F, 0x3F, 0x3F, 0x00
breakable_box_seg8_light_08011A80: # 0x08011A80
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
breakable_box_seg8_texture_08011A90: # 0x08011A90
.incbin "actors/breakable_box/crazy_box_surface.rgba16"
breakable_box_seg8_texture_08012290: # 0x08012290
.incbin "actors/breakable_box/cork_box_surface.rgba16"
breakable_box_seg8_vertex_08012A90: # 0x08012A90
vertex -100, 0, -100, 992, 0, 0x81, 0x00, 0x00, 0xFF
vertex -100, 0, 100, 992, 992, 0x81, 0x00, 0x00, 0xFF
vertex -100, 200, 100, 0, 992, 0x81, 0x00, 0x00, 0xFF
vertex -100, 0, 100, 0, 992, 0x00, 0x00, 0x7F, 0xFF
vertex 100, 0, 100, 992, 992, 0x00, 0x00, 0x7F, 0xFF
vertex 100, 200, 100, 992, 0, 0x00, 0x00, 0x7F, 0xFF
vertex -100, 200, 100, 0, 0, 0x00, 0x00, 0x7F, 0xFF
vertex 100, 0, -100, 992, 0, 0x00, 0x81, 0x00, 0xFF
vertex 100, 0, 100, 0, 0, 0x00, 0x81, 0x00, 0xFF
vertex -100, 0, 100, 0, 992, 0x00, 0x81, 0x00, 0xFF
vertex -100, 0, -100, 992, 992, 0x00, 0x81, 0x00, 0xFF
vertex 100, 200, -100, 0, 0, 0x7F, 0x00, 0x00, 0xFF
vertex 100, 200, 100, 0, 992, 0x7F, 0x00, 0x00, 0xFF
vertex 100, 0, 100, 992, 992, 0x7F, 0x00, 0x00, 0xFF
vertex 100, 0, -100, 992, 0, 0x7F, 0x00, 0x00, 0xFF
breakable_box_seg8_vertex_08012B80: # 0x08012B80
vertex -100, 200, 100, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 100, 200, -100, 992, 992, 0x00, 0x7F, 0x00, 0xFF
vertex -100, 200, -100, 992, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 100, 200, 100, 0, 992, 0x00, 0x7F, 0x00, 0xFF
vertex 100, 200, -100, 0, 0, 0x00, 0x00, 0x81, 0xFF
vertex 100, 0, -100, 0, 992, 0x00, 0x00, 0x81, 0xFF
vertex -100, 0, -100, 992, 992, 0x00, 0x00, 0x81, 0xFF
vertex -100, 200, -100, 992, 0, 0x00, 0x00, 0x81, 0xFF
vertex -100, 0, -100, 992, 0, 0x81, 0x00, 0x00, 0xFF
vertex -100, 200, 100, 0, 992, 0x81, 0x00, 0x00, 0xFF
vertex -100, 200, -100, 0, 0, 0x81, 0x00, 0x00, 0xFF
glabel breakable_box_seg8_dl_08012C30 # 0x08012C30 - 0x08012CD8
gsSPLight breakable_box_seg8_light_08011A80, 1
gsSPLight breakable_box_seg8_light_08011A78, 2
gsSPVertex breakable_box_seg8_vertex_08012A90, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 3, 5, 6, 0x0, 7, 8, 9, 0x0
gsSP2Triangles 7, 9, 10, 0x0, 11, 12, 13, 0x0
gsSP1Triangle 11, 13, 14, 0x0
gsSPVertex breakable_box_seg8_vertex_08012B80, 11, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP1Triangle 8, 9, 10, 0x0
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_SHADING_SMOOTH
gsSPEndDisplayList
glabel breakable_box_seg8_dl_08012CD8 # 0x08012CD8 - 0x08012D20
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPClearGeometryMode G_SHADING_SMOOTH
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPEndDisplayList
glabel breakable_box_seg8_dl_08012D20 # 0x08012D20 - 0x08012D48
gsSPDisplayList breakable_box_seg8_dl_08012CD8
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, breakable_box_seg8_texture_08011A90
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPBranchList breakable_box_seg8_dl_08012C30
glabel breakable_box_seg8_dl_08012D48 # 0x08012D20 - 0x08012D70
gsSPDisplayList breakable_box_seg8_dl_08012CD8
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, breakable_box_seg8_texture_08012290
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPBranchList breakable_box_seg8_dl_08012C30

2
actors/bub/collision.s Normal file
View file

@ -0,0 +1,2 @@
# Bub

20
actors/bub/geo.s Normal file
View file

@ -0,0 +1,20 @@
glabel bub_geo # 0x0D00038C
geo_scale 0x00, 16384
geo_open_node
geo_animated_part LAYER_OPAQUE, -13, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bub_seg6_dl_06011B28
geo_open_node
geo_animated_part LAYER_OPAQUE, 135, 0, 0, bub_seg6_dl_06011CF0
geo_animated_part LAYER_OPAQUE, -33, -86, -35
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bub_seg6_dl_06011E48
geo_close_node
geo_animated_part LAYER_OPAQUE, -34, 71, -36
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bub_seg6_dl_06011FA0
geo_close_node
geo_close_node
geo_close_node
geo_close_node
geo_end

417
actors/bub/model.s Normal file
View file

@ -0,0 +1,417 @@
# Bub
bub_seg6_light_0600E278: # 0x0600E278
.byte 0x3F, 0x3F, 0x3F, 0x00, 0x3F, 0x3F, 0x3F, 0x00
bub_seg6_light_0600E280: # 0x0600E280
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
bub_seg6_light_0600E290: # 0x0600E290
.byte 0x3F, 0x1D, 0x25, 0x00, 0x3F, 0x1D, 0x25, 0x00
bub_seg6_light_0600E298: # 0x0600E298
.byte 0xFF, 0x75, 0x94, 0x00, 0xFF, 0x75, 0x94, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
bub_seg6_texture_0600E2A8: # 0x0600E2A8
.incbin "actors/bub/bub_eye_border.rgba16"
bub_seg6_texture_0600EAA8: # 0x0600EAA8
.incbin "actors/bub/bub_fins.rgba16"
bub_seg6_texture_0600F2A8: # 0x0600F2A8
.incbin "actors/bub/bub_eyes.rgba16"
bub_seg6_texture_060102A8: # 0x060102A8
.incbin "actors/bub/bub_scales.rgba16"
bub_seg6_vertex_060112A8: # 0x060112A8
vertex -47, 79, 27, 26, 980, 0x00, 0x6B, 0x43, 0xFF
vertex -94, 80, 38, 928, 968, 0xF7, 0x73, 0x33, 0xFF
vertex -53, 0, 91, 132, 102, 0x10, 0x01, 0x7D, 0xFF
vertex -111, 38, 102, 1338, 362, 0xA2, 0x33, 0x43, 0xFF
vertex -111, -41, 102, -428, 296, 0xA4, 0xCA, 0x43, 0xFF
vertex -92, -82, 38, -40, 958, 0xF9, 0x8D, 0x33, 0xFF
vertex -53, 0, 91, 910, -4, 0x10, 0x01, 0x7D, 0xFF
vertex -45, -81, 27, 940, 960, 0x00, 0x95, 0x43, 0xFF
vertex -100, -71, -23, 302, 68, 0x9F, 0xAF, 0x00, 0xFF
vertex -45, -81, 27, 926, 956, 0x00, 0x95, 0x43, 0xFF
vertex -92, -82, 38, 4, 956, 0xF9, 0x8D, 0x33, 0xFF
vertex -111, -41, 102, -54, 146, 0xA4, 0xCA, 0x43, 0xFF
vertex -53, 0, 91, 664, 466, 0x10, 0x01, 0x7D, 0xFF
vertex -111, 38, 102, -12, 790, 0xA2, 0x33, 0x43, 0xFF
bub_seg6_vertex_06011388: # 0x06011388
vertex -102, 68, -23, 688, 60, 0x9E, 0x4F, 0x00, 0xFF
vertex -94, 80, 38, 960, 960, 0xF7, 0x73, 0x33, 0xFF
vertex -47, 79, 27, 16, 968, 0x00, 0x6B, 0x43, 0xFF
bub_seg6_vertex_060113B8: # 0x060113B8
vertex -17, -15, 85, 426, 1050, 0xFD, 0x8E, 0x35, 0xFF
vertex 93, 0, 75, 2024, 1040, 0x38, 0x00, 0x71, 0xFF
vertex 30, 0, 126, 1056, 1694, 0x3C, 0x02, 0x6F, 0xFF
vertex -46, 0, 152, -72, 1972, 0xA7, 0x04, 0x5A, 0xFF
vertex -53, 0, 91, -86, 1094, 0x10, 0x01, 0x7D, 0xFF
vertex -17, 13, 85, 422, 1050, 0xFE, 0x73, 0x34, 0xFF
bub_seg6_vertex_06011418: # 0x06011418
vertex -100, -71, -23, 2008, 1286, 0x9F, 0xAF, 0x00, 0xFF
vertex -92, -82, 38, 2180, 384, 0xF9, 0x8D, 0x33, 0xFF
vertex -111, -41, 102, 1576, -554, 0xA4, 0xCA, 0x43, 0xFF
vertex -102, 68, -23, 0, 1286, 0x9E, 0x4F, 0x00, 0xFF
vertex -111, 38, 102, 404, -554, 0xA2, 0x33, 0x43, 0xFF
vertex -94, 80, 38, -200, 384, 0xF7, 0x73, 0x33, 0xFF
vertex -113, -1, 6, 992, 844, 0x87, 0x00, 0x26, 0xFF
bub_seg6_vertex_06011488: # 0x06011488
vertex 69, 68, 18, 1976, -164, 0x3A, 0x6A, 0x24, 0xFF
vertex 63, 77, -64, 1872, 1220, 0x35, 0x55, 0xB3, 0xFF
vertex -62, 106, -67, -288, 1334, 0xE7, 0x7B, 0xF2, 0xFF
vertex 134, 0, 22, 3456, 86, 0x77, 0x00, 0x2A, 0xFF
vertex 93, 0, 75, 2620, -532, 0x38, 0x00, 0x71, 0xFF
vertex 70, -68, 18, 2152, 990, 0x3B, 0x97, 0x24, 0xFF
vertex -17, -15, 85, 528, -486, 0xFD, 0x8E, 0x35, 0xFF
vertex -45, -81, 27, 0, 990, 0x00, 0x95, 0x43, 0xFF
vertex -53, 0, 91, -100, -752, 0x10, 0x01, 0x7D, 0xFF
vertex 93, 0, 75, 2384, -1138, 0x38, 0x00, 0x71, 0xFF
vertex 134, 0, 22, 3100, -272, 0x77, 0x00, 0x2A, 0xFF
vertex -47, 79, 27, -40, -258, 0x00, 0x6B, 0x43, 0xFF
vertex -17, 13, 85, 456, -1234, 0xFE, 0x73, 0x34, 0xFF
vertex 134, 0, -17, 3104, 404, 0x7C, 0x00, 0xE7, 0xFF
vertex -53, 0, 91, -152, -1316, 0x10, 0x01, 0x7D, 0xFF
bub_seg6_vertex_06011578: # 0x06011578
vertex 134, 0, -17, 1744, 1076, 0x7C, 0x00, 0xE7, 0xFF
vertex 134, 0, 22, 1444, 174, 0x77, 0x00, 0x2A, 0xFF
vertex 70, -68, 18, 124, 848, 0x3B, 0x97, 0x24, 0xFF
vertex 134, 0, -17, 3680, -186, 0x7C, 0x00, 0xE7, 0xFF
vertex 70, -68, 18, 2148, -526, 0x3B, 0x97, 0x24, 0xFF
vertex 64, -77, -64, 2176, 910, 0x36, 0xAC, 0xB3, 0xFF
vertex -45, -81, 27, 0, -416, 0x00, 0x95, 0x43, 0xFF
vertex -60, -108, -67, -204, 1278, 0xE9, 0x85, 0xF2, 0xFF
vertex 64, -77, -64, 616, 104, 0x36, 0xAC, 0xB3, 0xFF
vertex 85, 0, -97, 1508, 946, 0x43, 0x00, 0x95, 0xFF
vertex 134, 0, -17, 2204, -676, 0x7C, 0x00, 0xE7, 0xFF
vertex 63, 77, -64, -188, 674, 0x35, 0x55, 0xB3, 0xFF
vertex 134, 0, -17, 1092, -116, 0x7C, 0x00, 0xE7, 0xFF
vertex 85, 0, -97, 1016, 1428, 0x43, 0x00, 0x95, 0xFF
bub_seg6_vertex_06011658: # 0x06011658
vertex -60, -108, -67, 1920, 450, 0xE9, 0x85, 0xF2, 0xFF
vertex -45, -81, 27, 2056, -1674, 0x00, 0x95, 0x43, 0xFF
vertex -100, -71, -23, 852, -280, 0x9F, 0xAF, 0x00, 0xFF
vertex -102, 68, -23, 700, -344, 0x9E, 0x4F, 0x00, 0xFF
vertex -47, 79, 27, 1968, -1410, 0x00, 0x6B, 0x43, 0xFF
vertex -62, 106, -67, 1876, 472, 0xE7, 0x7B, 0xF2, 0xFF
vertex 63, 77, -64, 1884, 272, 0x35, 0x55, 0xB3, 0xFF
vertex -77, 71, -91, -540, 1024, 0xC0, 0x30, 0x9E, 0xFF
vertex -62, 106, -67, -288, 328, 0xE7, 0x7B, 0xF2, 0xFF
vertex -60, -108, -67, -228, -428, 0xE9, 0x85, 0xF2, 0xFF
vertex -76, -73, -91, -344, 416, 0xC1, 0xCF, 0x9E, 0xFF
vertex 64, -77, -64, 2188, -424, 0x36, 0xAC, 0xB3, 0xFF
bub_seg6_vertex_06011718: # 0x06011718
vertex -76, -73, -91, 0, 0, 0xC1, 0xCF, 0x9E, 0xFF
vertex -107, -1, -79, 0, 0, 0x83, 0x00, 0xEF, 0xFF
vertex -83, -1, -102, 0, 0, 0xCB, 0x00, 0x8D, 0xFF
vertex -89, -1, -52, 0, 0, 0x8E, 0x00, 0xCA, 0xFF
vertex -77, 71, -91, 0, 0, 0xC0, 0x30, 0x9E, 0xFF
vertex -138, -1, -51, 0, 0, 0xA1, 0x00, 0xAD, 0xFF
vertex -102, 68, -23, 0, 0, 0x9E, 0x4F, 0x00, 0xFF
vertex -62, 106, -67, 0, 0, 0xE7, 0x7B, 0xF2, 0xFF
vertex -100, -71, -23, 0, 0, 0x9F, 0xAF, 0x00, 0xFF
vertex -113, -1, 6, 0, 0, 0x87, 0x00, 0x26, 0xFF
vertex -147, -1, -24, 0, 0, 0x87, 0x00, 0x24, 0xFF
vertex -60, -108, -67, 0, 0, 0xE9, 0x85, 0xF2, 0xFF
bub_seg6_vertex_060117D8: # 0x060117D8
vertex 63, 77, -64, 0, 0, 0x35, 0x55, 0xB3, 0xFF
vertex 85, 0, -97, 0, 0, 0x43, 0x00, 0x95, 0xFF
vertex -24, 0, -108, 0, 0, 0x07, 0x00, 0x82, 0xFF
vertex -83, -1, -102, 0, 0, 0xCB, 0x00, 0x8D, 0xFF
vertex -77, 71, -91, 0, 0, 0xC0, 0x30, 0x9E, 0xFF
vertex 64, -77, -64, 0, 0, 0x36, 0xAC, 0xB3, 0xFF
vertex -76, -73, -91, 0, 0, 0xC1, 0xCF, 0x9E, 0xFF
glabel bub_seg6_dl_06011848 # 0x06011848 - 0x060118C0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bub_seg6_texture_0600E2A8
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPLight bub_seg6_light_0600E280, 1
gsSPLight bub_seg6_light_0600E278, 2
gsSPVertex bub_seg6_vertex_060112A8, 14, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 3, 2, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 5, 7, 6, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 11, 12, 13, 0x0
gsSPVertex bub_seg6_vertex_06011388, 3, 0
gsSP1Triangle 0, 1, 2, 0x0
gsSPEndDisplayList
glabel bub_seg6_dl_060118C0 # 0x060118C0 - 0x06011918
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bub_seg6_texture_0600EAA8
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPVertex bub_seg6_vertex_060113B8, 6, 0
gsSP2Triangles 0, 1, 2, 0x0, 2, 3, 0, 0x0
gsSP2Triangles 0, 3, 4, 0x0, 5, 2, 1, 0x0
gsSP2Triangles 5, 3, 2, 0x0, 4, 3, 5, 0x0
gsSPEndDisplayList
glabel bub_seg6_dl_06011918 # 0x06011918 - 0x06011968
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bub_seg6_texture_0600F2A8
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsSPVertex bub_seg6_vertex_06011418, 7, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 4, 3, 6, 0x0, 6, 2, 4, 0x0
gsSP1Triangle 6, 0, 2, 0x0
gsSPEndDisplayList
glabel bub_seg6_dl_06011968 # 0x06011968 - 0x06011A50
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bub_seg6_texture_060102A8
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsSPVertex bub_seg6_vertex_06011488, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 4, 6, 7, 0x0, 7, 5, 4, 0x0
gsSP2Triangles 7, 6, 8, 0x0, 9, 10, 0, 0x0
gsSP2Triangles 9, 0, 11, 0x0, 11, 12, 9, 0x0
gsSP2Triangles 10, 13, 0, 0x0, 13, 1, 0, 0x0
gsSP2Triangles 2, 11, 0, 0x0, 11, 14, 12, 0x0
gsSPVertex bub_seg6_vertex_06011578, 14, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 4, 6, 7, 0x0, 5, 4, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 11, 12, 13, 0x0
gsSPVertex bub_seg6_vertex_06011658, 12, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSPEndDisplayList
glabel bub_seg6_dl_06011A50 # 0x06011A50 - 0x06011B28
gsSPLight bub_seg6_light_0600E298, 1
gsSPLight bub_seg6_light_0600E290, 2
gsSPVertex bub_seg6_vertex_06011718, 12, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSP2Triangles 1, 4, 2, 0x0, 1, 3, 4, 0x0
gsSP2Triangles 3, 5, 4, 0x0, 0, 5, 3, 0x0
gsSP2Triangles 6, 7, 4, 0x0, 4, 5, 6, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 5, 0, 0x0
gsSP2Triangles 0, 11, 8, 0x0, 8, 10, 5, 0x0
gsSP2Triangles 5, 10, 6, 0x0, 10, 9, 6, 0x0
gsSPLight bub_seg6_light_0600E280, 1
gsSPLight bub_seg6_light_0600E278, 2
gsSPVertex bub_seg6_vertex_060117D8, 7, 0
gsSP2Triangles 0, 1, 2, 0x0, 2, 3, 4, 0x0
gsSP2Triangles 2, 1, 5, 0x0, 2, 5, 6, 0x0
gsSP2Triangles 2, 6, 3, 0x0, 0, 2, 4, 0x0
gsSPEndDisplayList
glabel bub_seg6_dl_06011B28 # 0x06011B28 - 0x06011BD8
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList bub_seg6_dl_06011848
gsSPDisplayList bub_seg6_dl_060118C0
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPDisplayList bub_seg6_dl_06011918
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPDisplayList bub_seg6_dl_06011968
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPDisplayList bub_seg6_dl_06011A50
gsSPEndDisplayList
bub_seg6_vertex_06011BD8: # 0x06011BD8
vertex 45, 16, 2, 488, 418, 0x04, 0x7E, 0x00, 0xFF
vertex 61, 1, -60, 996, 234, 0x1D, 0xFF, 0x85, 0xFF
vertex 0, 0, -16, 634, 976, 0x91, 0xFE, 0xC4, 0xFF
vertex 0, 0, 22, 320, 974, 0x90, 0xFE, 0x3B, 0xFF
vertex 61, 1, 66, -16, 226, 0x1E, 0xFF, 0x7B, 0xFF
vertex 81, 1, 26, 306, -18, 0x7C, 0x00, 0x1A, 0xFF
vertex 81, 1, -20, 682, -16, 0x7C, 0x00, 0xE5, 0xFF
vertex 46, -14, 2, 488, 412, 0x07, 0x82, 0x00, 0xFF
glabel bub_seg6_dl_06011C58 # 0x06011C58 - 0x06011CF0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bub_seg6_texture_0600EAA8
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPLight bub_seg6_light_0600E280, 1
gsSPLight bub_seg6_light_0600E278, 2
gsSPVertex bub_seg6_vertex_06011BD8, 8, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 0, 2, 0x0
gsSP2Triangles 4, 5, 0, 0x0, 0, 5, 6, 0x0
gsSP2Triangles 6, 1, 0, 0x0, 4, 0, 3, 0x0
gsSP2Triangles 6, 5, 7, 0x0, 5, 4, 7, 0x0
gsSP2Triangles 7, 1, 6, 0x0, 2, 7, 3, 0x0
gsSP2Triangles 3, 7, 4, 0x0, 1, 7, 2, 0x0
gsSPEndDisplayList
glabel bub_seg6_dl_06011CF0 # 0x06011CF0 - 0x06011D50
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList bub_seg6_dl_06011C58
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPEndDisplayList
bub_seg6_vertex_06011D50: # 0x06011D50
vertex 113, -7, 0, 586, 220, 0x4B, 0x9B, 0x0C, 0xFF
vertex 113, 12, 0, 584, 220, 0x33, 0x73, 0xF7, 0xFF
vertex 84, 7, 42, 120, 132, 0x37, 0x30, 0x67, 0xFF
vertex -9, 0, 0, 182, 954, 0xB1, 0x00, 0x63, 0xFF
vertex 84, -2, 42, 120, 132, 0x17, 0xBD, 0x69, 0xFF
vertex 69, 1, -51, 900, 814, 0x48, 0x00, 0x98, 0xFF
vertex 18, 1, -30, 540, 978, 0xBB, 0xFE, 0x96, 0xFF
glabel bub_seg6_dl_06011DC0 # 0x06011DC0 - 0x06011E48
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bub_seg6_texture_0600EAA8
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPLight bub_seg6_light_0600E280, 1
gsSPLight bub_seg6_light_0600E278, 2
gsSPVertex bub_seg6_vertex_06011D50, 7, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 2, 0x0
gsSP2Triangles 2, 4, 0, 0x0, 3, 2, 1, 0x0
gsSP2Triangles 3, 0, 4, 0x0, 0, 5, 1, 0x0
gsSP2Triangles 6, 5, 0, 0x0, 3, 6, 0, 0x0
gsSP2Triangles 1, 5, 6, 0x0, 6, 3, 1, 0x0
gsSPEndDisplayList
glabel bub_seg6_dl_06011E48 # 0x06011E48 - 0x06011EA8
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList bub_seg6_dl_06011DC0
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPEndDisplayList
bub_seg6_vertex_06011EA8: # 0x06011EA8
vertex 127, 8, 0, 454, 956, 0x4A, 0x65, 0x0D, 0xFF
vertex 31, 0, -30, 138, 4, 0xBB, 0x01, 0x96, 0xFF
vertex 3, 0, 0, 518, -40, 0xB3, 0x00, 0x64, 0xFF
vertex 82, 0, -52, -152, 282, 0x4A, 0x00, 0x99, 0xFF
vertex 127, -10, 0, 454, 956, 0x34, 0x8D, 0xF8, 0xFF
vertex 97, 4, 41, 974, 972, 0x17, 0x43, 0x69, 0xFF
vertex 97, -5, 41, 974, 972, 0x36, 0xD1, 0x68, 0xFF
glabel bub_seg6_dl_06011F18 # 0x06011F18 - 0x06011FA0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bub_seg6_texture_0600EAA8
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPLight bub_seg6_light_0600E280, 1
gsSPLight bub_seg6_light_0600E278, 2
gsSPVertex bub_seg6_vertex_06011EA8, 7, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSP2Triangles 4, 3, 0, 0x0, 0, 5, 6, 0x0
gsSP2Triangles 5, 0, 2, 0x0, 6, 4, 0, 0x0
gsSP2Triangles 6, 5, 2, 0x0, 4, 6, 2, 0x0
gsSP2Triangles 4, 2, 1, 0x0, 1, 3, 4, 0x0
gsSPEndDisplayList
glabel bub_seg6_dl_06011FA0 # 0x06011FA0 - 0x06012000
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList bub_seg6_dl_06011F18
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPEndDisplayList
bub_seg6_animvalue_06012000: # 0x06012000
.hword 0x0000, 0xFFF3, 0xFFF3, 0xFFF3, 0xFFF4, 0xFFF6, 0xFFF7, 0xFFF9
.hword 0xFFFB, 0xFFFD, 0xFFFF, 0x0001, 0x0003, 0x0005, 0x0007, 0x0009
.hword 0x000A, 0x000B, 0x000C, 0x000D, 0x000D, 0x000D, 0x000D, 0x000C
.hword 0x000B, 0x000A, 0x0009, 0x0008, 0x0006, 0x0005, 0x0003, 0x0001
.hword 0x0000, 0xFFFF, 0xFFFD, 0xFFFB, 0xFFF9, 0xFFF7, 0xFFF6, 0xFFF4
.hword 0xFFF3, 0xC001, 0x1696, 0x16AB, 0x16E5, 0x173B, 0x17A3, 0x1814
.hword 0x1886, 0x18EE, 0x1944, 0x197E, 0x1993, 0x1979, 0x1933, 0x18CD
.hword 0x1854, 0x17D5, 0x175C, 0x16F6, 0x16B0, 0x1696, 0x16A2, 0x16C5
.hword 0x16F8, 0x1736, 0x177A, 0x17BE, 0x17FC, 0x182F, 0x1853, 0x1860
.hword 0x1858, 0x1841, 0x181D, 0x17EF, 0x17BA, 0x1780, 0x1745, 0x170A
.hword 0x16D3, 0x16A2, 0x1881, 0x186A, 0x182C, 0x17D0, 0x1762, 0x16E9
.hword 0x1670, 0x1601, 0x15A6, 0x1568, 0x1551, 0x156D, 0x15B8, 0x1625
.hword 0x16A5, 0x172D, 0x17AD, 0x181A, 0x1865, 0x1881, 0x1874, 0x1851
.hword 0x181F, 0x17E1, 0x179E, 0x175B, 0x171D, 0x16EA, 0x16C7, 0x16BA
.hword 0x16C1, 0x16D9, 0x16FC, 0x172A, 0x175F, 0x1798, 0x17D3, 0x180D
.hword 0x1844, 0x1874, 0xF776, 0xF79E, 0xF80B, 0xF8AC, 0xF96F, 0xFA43
.hword 0xFB17, 0xFBDA, 0xFC7A, 0xFCE7, 0xFD0F, 0xFCDE, 0xFC5B, 0xFB9C
.hword 0xFABA, 0xF9CC, 0xF8EA, 0xF82B, 0xF7A7, 0xF776, 0xF78E, 0xF7CD
.hword 0xF82A, 0xF89C, 0xF917, 0xF993, 0xFA04, 0xFA62, 0xFAA2, 0xFABB
.hword 0xFAAC, 0xFA82, 0xFA40, 0xF9EC, 0xF98B, 0xF922, 0xF8B6, 0xF84B
.hword 0xF7E6, 0xF78E, 0xEBCF, 0xEBAF, 0xEB59, 0xEADD, 0xEA4A, 0xE9AF
.hword 0xE91B, 0xE89F, 0xE849, 0xE829, 0xE843, 0xE88A, 0xE8F3, 0xE972
.hword 0xE9FC, 0xEA86, 0xEB05, 0xEB6E, 0xEBB5, 0xEBCF, 0xEBBD, 0xEB8A
.hword 0xEB40, 0xEAE6, 0xEA83, 0xEA21, 0xE9C7, 0xE97C, 0xE949, 0xE935
.hword 0xE941, 0xE963, 0xE997, 0xE9DA, 0xEA27, 0xEA7B, 0xEAD1, 0xEB26
.hword 0xEB76, 0xEBBD, 0x1CE8, 0x1CD0, 0x1C90, 0x1C33, 0x1BC5, 0x1B51
.hword 0x1AE2, 0x1A85, 0x1A45, 0x1A2D, 0x1A41, 0x1A76, 0x1AC4, 0x1B23
.hword 0x1B8B, 0x1BF2, 0x1C51, 0x1C9F, 0x1CD5, 0x1CE8, 0x1CDB, 0x1CB7
.hword 0x1C82, 0x1C42, 0x1BFC, 0x1BB7, 0x1B76, 0x1B41, 0x1B1D, 0x1B0F
.hword 0x1B17, 0x1B2F, 0x1B54, 0x1B84, 0x1BBB, 0x1BF6, 0x1C34, 0x1C70
.hword 0x1CA9, 0x1CDB, 0x87BA, 0x8787, 0x86FE, 0x8638, 0x854D, 0x8455
.hword 0x836A, 0x82A4, 0x821B, 0x81E7, 0x8211, 0x8282, 0x8329, 0x83F4
.hword 0x84D1, 0x85AD, 0x8678, 0x871F, 0x8790, 0x87BA, 0x879D, 0x874E
.hword 0x86D9, 0x864A, 0x85AF, 0x8515, 0x8486, 0x8410, 0x83C0, 0x83A1
.hword 0x83B3, 0x83E9, 0x843B, 0x84A4, 0x851E, 0x85A2, 0x862A, 0x86B0
.hword 0x872E, 0x879D, 0x3FFF, 0xC054, 0x3FFF, 0xC054, 0xF11C, 0xF15F
.hword 0xF21D, 0xF34A, 0xF4D6, 0xF6B6, 0xF8DA, 0xFB35, 0xFDB9, 0x0057
.hword 0x0303, 0x05B0, 0x084E, 0x0AD0, 0x0D29, 0x0F49, 0x1125, 0x12AD
.hword 0x13D5, 0x148D, 0x1482, 0x1385, 0x11C5, 0x0F6F, 0x0CB2, 0x09BC
.hword 0x06BA, 0x03DA, 0x014B, 0xFF3B, 0xFD6A, 0xFB89, 0xF9A6, 0xF7D1
.hword 0xF619, 0xF48F, 0xF341, 0xF23F, 0xF199, 0xF15E, 0x421D, 0x4234
.hword 0x4271, 0x42C9, 0x432F, 0x439A, 0x43FC, 0x444C, 0x447D, 0x4484
.hword 0x4456, 0x43DD, 0x431B, 0x4223, 0x410A, 0x3FE5, 0x3EC7, 0x3DC6
.hword 0x3CF5, 0x3C69, 0x3C18, 0x3BE5, 0x3BCE, 0x3BCF, 0x3BE5, 0x3C0B
.hword 0x3C3F, 0x3C7D, 0x3CC2, 0x3D09, 0x3D5B, 0x3DC0, 0x3E34, 0x3EB5
.hword 0x3F3F, 0x3FCE, 0x405F, 0x40F0, 0x417B, 0x4200
bub_seg6_animindex_060122DC: # 0x060122DC
.hword 0x0028, 0x0001, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0029
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0028, 0x0146, 0x0001, 0x0000, 0x0001, 0x0000, 0x0028, 0x011E
.hword 0x0001, 0x011C, 0x0001, 0x0000, 0x0001, 0x011D, 0x0028, 0x002A
.hword 0x0028, 0x0052, 0x0028, 0x007A, 0x0001, 0x011A, 0x0001, 0x0000
.hword 0x0001, 0x011B, 0x0028, 0x00A2, 0x0028, 0x00CA, 0x0028, 0x00F2
bub_seg6_anim_0601233C: # 0x0601233C
.hword 0
.hword 0
.hword 0
.hword 0
.hword 0x28
.hword 0x07
.word bub_seg6_animvalue_06012000
.word bub_seg6_animindex_060122DC
.word 0
glabel bub_seg6_anims_06012354 # 0x06012354
.word bub_seg6_anim_0601233C
.word 0
.word 0

2
actors/bubba/collision.s Normal file
View file

@ -0,0 +1,2 @@
# Bubba

10
actors/bubba/geo.s Normal file
View file

@ -0,0 +1,10 @@
glabel bubba_geo # 0x0C000000
geo_node_start
geo_open_node
geo_switch_case 2, geo_switch_anim_state
geo_open_node
geo_display_list LAYER_OPAQUE, bubba_seg5_dl_05004E80
geo_display_list LAYER_OPAQUE, bubba_seg5_dl_05005978
geo_close_node
geo_close_node
geo_end

531
actors/bubba/model.s Normal file
View file

@ -0,0 +1,531 @@
# Possible Removed Actor File
# It's possible that bubba and bub used to be 2 "actors" in
# one actor file.
.word 0
.word 0 # Bin ID? What is this?
# Bubba
bubba_seg5_texture_05000008: # 0x05000008
.incbin "actors/bubba/bubba_sunglasses.rgba16"
# unused eye texture, assumed leftover from when actor file was copied from bub
bubba_seg5_texture_05000408: # 0x05000408
.incbin "actors/bubba/bubba_eyes_unused.rgba16"
bubba_seg5_texture_05001408: # 0x05001408
.incbin "actors/bubba/bubba_eye_border.rgba16"
bubba_seg5_texture_05001C08: # 0x05001C08
.incbin "actors/bubba/bubba_fins.rgba16"
bubba_seg5_texture_05002408: # 0x05002408
.incbin "actors/bubba/bubba_scales.rgba16"
bubba_seg5_light_05004408: # 0x05004408
.byte 0x48, 0x31, 0x2A, 0x00, 0x48, 0x31, 0x2A, 0x00
bubba_seg5_light_05004410: # 0x05004410
.byte 0xF1, 0xA6, 0x8C, 0x00, 0xF1, 0xA6, 0x8C, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
bubba_seg5_light_05004420: # 0x05004420
.byte 0x4C, 0x4C, 0x4C, 0x00, 0x4C, 0x4C, 0x4C, 0x00
bubba_seg5_light_05004428: # 0x05004428
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
bubba_seg5_light_05004438: # 0x05004438
.byte 0x10, 0x07, 0x08, 0x00, 0x10, 0x07, 0x08, 0x00
bubba_seg5_light_05004440: # 0x05004440
.byte 0x36, 0x1A, 0x1C, 0x00, 0x36, 0x1A, 0x1C, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
bubba_seg5_vertex_05004450: # 0x05004450
vertex 239, -320, 320, 203, 530, 0x44, 0xAD, 0x42, 0xFF
vertex 6, -197, 290, 372, 190, 0x00, 0x99, 0x49, 0xFF
vertex 6, -284, 420, 267, 636, 0x01, 0x07, 0x7E, 0xFF
vertex 123, -217, 469, 369, 578, 0x09, 0x99, 0x48, 0xFF
vertex 7, -195, 518, 407, 618, 0x00, 0xAF, 0x61, 0xFF
vertex -109, -217, 471, 369, 580, 0xF8, 0x99, 0x48, 0xFF
vertex -227, -320, 324, 203, 536, 0xBD, 0xAD, 0x43, 0xFF
bubba_seg5_vertex_050044C0: # 0x050044C0
vertex -512, -352, 46, 856, 794, 0xAB, 0xA7, 0xE5, 0xFF
vertex -248, -181, 193, 94, 684, 0xF5, 0x65, 0x4B, 0xFF
vertex -508, -306, 182, 816, 650, 0xAF, 0x47, 0x41, 0xFF
vertex -451, -258, 151, 664, 694, 0xB3, 0x64, 0x08, 0xFF
vertex -450, -258, 81, 678, 768, 0xC5, 0x6B, 0xE1, 0xFF
vertex -352, -273, -31, 432, 906, 0xDC, 0x4C, 0xA2, 0xFF
vertex -269, -214, 84, 176, 796, 0x6B, 0x1B, 0xC3, 0xFF
vertex 4, -82, -352, 384, 704, 0x00, 0xC4, 0x6F, 0xFF
vertex 3, 43, -352, 554, 698, 0xFF, 0x3C, 0x6F, 0xFF
vertex -44, -19, -501, 458, 800, 0x82, 0xFF, 0xFA, 0xFF
vertex 52, -18, -501, 458, 800, 0x7E, 0x01, 0xFA, 0xFF
vertex 6, -222, -550, 182, 844, 0x00, 0x85, 0xE1, 0xFF
vertex 1, 184, -550, 728, 822, 0xFF, 0x7B, 0xE2, 0xFF
vertex 4, -94, -615, 348, 880, 0x00, 0xE5, 0x84, 0xFF
vertex 3, 56, -615, 552, 872, 0x00, 0x1B, 0x84, 0xFF
bubba_seg5_vertex_050045B0: # 0x050045B0
vertex 513, -352, 46, 482, 860, 0x55, 0xA7, 0xE5, 0xFF
vertex 353, -273, -31, 896, 900, 0x24, 0x4C, 0xA2, 0xFF
vertex 451, -258, 81, 626, 798, 0x3B, 0x6B, 0xE1, 0xFF
vertex 452, -258, 151, 608, 716, 0x4D, 0x64, 0x08, 0xFF
vertex 509, -306, 182, 458, 698, 0x51, 0x47, 0x41, 0xFF
vertex 270, -214, 84, 1072, 736, 0x95, 0x1B, 0xC3, 0xFF
vertex 249, -181, 193, 1098, 600, 0x0B, 0x65, 0x4B, 0xFF
bubba_seg5_vertex_05004620: # 0x05004620
vertex 51, 274, 117, 360, 626, 0x6B, 0x41, 0x12, 0xFF
vertex 5, 317, 341, -14, 458, 0x00, 0x59, 0x5A, 0xFF
vertex 5, 215, 291, 72, 912, 0x01, 0x59, 0x5A, 0xFF
vertex -42, 274, 118, 358, 626, 0x96, 0x41, 0x13, 0xFF
vertex 3, 404, -20, 586, 18, 0x00, 0x7E, 0xF2, 0xFF
vertex 1, 191, -223, 928, 960, 0x00, 0x6D, 0xBF, 0xFF
bubba_seg5_vertex_05004680: # 0x05004680
vertex 261, 127, 217, 0, -2344, 0x5F, 0x53, 0x07, 0xFF
vertex 350, -212, 251, -196, -646, 0x7C, 0xF6, 0x18, 0xFF
vertex 222, 29, -150, 1808, -1854, 0x68, 0x23, 0xC1, 0xFF
vertex 0, 44, -355, 2828, -1928, 0x00, 0x2F, 0x8B, 0xFF
vertex 0, -85, -355, 2828, -1278, 0xFF, 0xE3, 0x85, 0xFF
vertex -218, 29, -147, 1788, -1854, 0x97, 0x23, 0xC3, 0xFF
vertex 1, 191, -223, 2172, -2664, 0x00, 0x6D, 0xBF, 0xFF
vertex -246, -210, -101, 1560, -654, 0xA7, 0xB8, 0xCC, 0xFF
vertex -251, 127, 221, -48, -2344, 0xA1, 0x53, 0x08, 0xFF
vertex -339, -212, 257, -224, -646, 0x85, 0xF6, 0x1A, 0xFF
vertex 1, -337, -197, 2040, -22, 0x00, 0x95, 0xBD, 0xFF
vertex 251, -210, -105, 1580, -654, 0x58, 0xB8, 0xCA, 0xFF
vertex -227, -320, 324, -560, -106, 0xBD, 0xAD, 0x43, 0xFF
vertex 230, -105, 361, -744, -1182, 0x5D, 0x15, 0x53, 0xFF
vertex 239, -320, 320, -540, -106, 0x44, 0xAD, 0x42, 0xFF
vertex 51, 274, 117, 468, -3076, 0x6B, 0x41, 0x12, 0xFF
bubba_seg5_vertex_05004780: # 0x05004780
vertex -42, 274, 118, 464, -3076, 0x96, 0x41, 0x13, 0xFF
vertex 1, 191, -223, 2172, -2664, 0x00, 0x6D, 0xBF, 0xFF
vertex -251, 127, 221, -48, -2344, 0xA1, 0x53, 0x08, 0xFF
vertex -58, 79, 436, -1120, -2104, 0xE3, 0x42, 0x67, 0xFF
vertex 5, 215, 291, -396, -2784, 0x01, 0x59, 0x5A, 0xFF
vertex -217, -105, 364, -760, -1182, 0xA4, 0x15, 0x54, 0xFF
vertex -339, -212, 257, -224, -646, 0x85, 0xF6, 0x1A, 0xFF
vertex 230, -105, 361, -744, -1182, 0x5D, 0x15, 0x53, 0xFF
vertex 350, -212, 251, -196, -646, 0x7C, 0xF6, 0x18, 0xFF
vertex 261, 127, 217, 0, -2344, 0x5F, 0x53, 0x07, 0xFF
vertex 65, 79, 434, -1108, -2104, 0x1F, 0x42, 0x67, 0xFF
vertex 51, 274, 117, 468, -3076, 0x6B, 0x41, 0x12, 0xFF
vertex 239, -320, 320, -540, -106, 0x44, 0xAD, 0x42, 0xFF
vertex 251, -210, -105, 1580, -654, 0x58, 0xB8, 0xCA, 0xFF
vertex -227, -320, 324, -560, -106, 0xBD, 0xAD, 0x43, 0xFF
bubba_seg5_vertex_05004870: # 0x05004870
vertex 129, -136, 504, 0, 0, 0x48, 0xF3, 0x67, 0xFF
vertex 123, -217, 469, 0, 0, 0x09, 0x99, 0x48, 0xFF
vertex 239, -320, 320, 0, 0, 0x44, 0xAD, 0x42, 0xFF
vertex 230, -105, 361, 0, 0, 0x5D, 0x15, 0x53, 0xFF
vertex 6, -284, 420, 0, 0, 0x01, 0x07, 0x7E, 0xFF
vertex 6, -357, 343, 0, 0, 0x00, 0x8D, 0x35, 0xFF
vertex -227, -320, 324, 0, 0, 0xBD, 0xAD, 0x43, 0xFF
vertex 7, -24, 547, 0, 0, 0x00, 0x4B, 0x65, 0xFF
vertex 6, -7, 415, 0, 0, 0x01, 0x26, 0x78, 0xFF
vertex -217, -105, 364, 0, 0, 0xA4, 0x15, 0x54, 0xFF
vertex -115, -136, 506, 0, 0, 0xBA, 0xF3, 0x68, 0xFF
vertex 7, -195, 518, 0, 0, 0x00, 0xAF, 0x61, 0xFF
vertex -109, -217, 471, 0, 0, 0xF8, 0x99, 0x48, 0xFF
bubba_seg5_vertex_05004940: # 0x05004940
vertex -217, -105, 364, 0, 0, 0xA4, 0x15, 0x54, 0xFF
vertex -255, 129, 314, 0, 0, 0xA6, 0x42, 0x3B, 0xFF
vertex -251, 127, 221, 0, 0, 0xA1, 0x53, 0x08, 0xFF
vertex 65, 79, 434, 0, 0, 0x1F, 0x42, 0x67, 0xFF
vertex 6, -7, 415, 0, 0, 0x01, 0x26, 0x78, 0xFF
vertex 230, -105, 361, 0, 0, 0x5D, 0x15, 0x53, 0xFF
vertex 267, 129, 309, 0, 0, 0x5B, 0x42, 0x39, 0xFF
vertex 261, 127, 217, 0, 0, 0x5F, 0x53, 0x07, 0xFF
vertex -58, 79, 436, 0, 0, 0xE3, 0x42, 0x67, 0xFF
bubba_seg5_vertex_050049D0: # 0x050049D0
vertex 4, -377, 154, 0, 0, 0x00, 0x82, 0xF7, 0xFF
vertex 239, -320, 320, 0, 0, 0x44, 0xAD, 0x42, 0xFF
vertex 6, -357, 343, 0, 0, 0x00, 0x8D, 0x35, 0xFF
vertex 251, -210, -105, 0, 0, 0x58, 0xB8, 0xCA, 0xFF
vertex -246, -210, -101, 0, 0, 0xA7, 0xB8, 0xCC, 0xFF
vertex 1, -337, -197, 0, 0, 0x00, 0x95, 0xBD, 0xFF
vertex -227, -320, 324, 0, 0, 0xBD, 0xAD, 0x43, 0xFF
glabel bubba_seg5_dl_05004A40 # 0x05004A40 - 0x05004AA8
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bubba_seg5_texture_05000008
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x1FF, 0x200
gsSPLight bubba_seg5_light_05004410, 1
gsSPLight bubba_seg5_light_05004408, 2
gsSPVertex bubba_seg5_vertex_05004450, 7, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 1, 0, 0x0
gsSP2Triangles 4, 1, 3, 0x0, 5, 1, 4, 0x0
gsSP2Triangles 1, 6, 2, 0x0, 5, 6, 1, 0x0
gsSPEndDisplayList
glabel bubba_seg5_dl_05004AA8 # 0x05004AA8 - 0x05004BE8
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bubba_seg5_texture_05001408
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPLight bubba_seg5_light_05004428, 1
gsSPLight bubba_seg5_light_05004420, 2
gsSPVertex bubba_seg5_vertex_050044C0, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 0, 0x0
gsSP2Triangles 0, 2, 3, 0x0, 5, 0, 4, 0x0
gsSP2Triangles 5, 6, 0, 0x0, 0, 6, 1, 0x0
gsSP2Triangles 6, 4, 1, 0x0, 1, 4, 3, 0x0
gsSP2Triangles 1, 3, 2, 0x0, 5, 4, 6, 0x0
gsSP2Triangles 7, 8, 9, 0x0, 10, 8, 7, 0x0
gsSP2Triangles 9, 11, 7, 0x0, 10, 7, 11, 0x0
gsSP2Triangles 9, 8, 12, 0x0, 12, 8, 10, 0x0
gsSP2Triangles 13, 9, 14, 0x0, 9, 12, 14, 0x0
gsSP2Triangles 13, 11, 9, 0x0, 12, 10, 14, 0x0
gsSP2Triangles 13, 14, 10, 0x0, 10, 11, 13, 0x0
gsSPVertex bubba_seg5_vertex_050045B0, 7, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 3, 4, 0, 0x0, 0, 5, 1, 0x0
gsSP2Triangles 0, 6, 5, 0x0, 4, 6, 0, 0x0
gsSP2Triangles 6, 2, 5, 0x0, 2, 1, 5, 0x0
gsSP2Triangles 6, 3, 2, 0x0, 3, 6, 4, 0x0
gsSPEndDisplayList
glabel bubba_seg5_dl_05004BE8 # 0x05004BE8 - 0x05004C40
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bubba_seg5_texture_05001C08
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPVertex bubba_seg5_vertex_05004620, 6, 0
gsSP2Triangles 0, 1, 2, 0x0, 2, 1, 3, 0x0
gsSP2Triangles 1, 4, 3, 0x0, 1, 0, 4, 0x0
gsSP2Triangles 4, 5, 3, 0x0, 4, 0, 5, 0x0
gsSPEndDisplayList
glabel bubba_seg5_dl_05004C40 # 0x05004C40 - 0x05004D48
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bubba_seg5_texture_05002408
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsSPVertex bubba_seg5_vertex_05004680, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 3, 5, 0x0, 5, 4, 7, 0x0
gsSP2Triangles 5, 8, 6, 0x0, 9, 8, 5, 0x0
gsSP2Triangles 9, 5, 7, 0x0, 2, 4, 3, 0x0
gsSP2Triangles 10, 4, 11, 0x0, 7, 4, 10, 0x0
gsSP2Triangles 11, 4, 2, 0x0, 9, 7, 12, 0x0
gsSP2Triangles 2, 3, 6, 0x0, 0, 2, 6, 0x0
gsSP2Triangles 2, 1, 11, 0x0, 1, 13, 14, 0x0
gsSP1Triangle 0, 6, 15, 0x0
gsSPVertex bubba_seg5_vertex_05004780, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 0, 0x0
gsSP2Triangles 2, 3, 0, 0x0, 5, 2, 6, 0x0
gsSP2Triangles 7, 8, 9, 0x0, 10, 9, 11, 0x0
gsSP2Triangles 11, 4, 10, 0x0, 10, 4, 3, 0x0
gsSP2Triangles 12, 13, 8, 0x0, 5, 6, 14, 0x0
gsSPEndDisplayList
glabel bubba_seg5_dl_05004D48 # 0x05004D48 - 0x05004E80
gsSPLight bubba_seg5_light_05004410, 1
gsSPLight bubba_seg5_light_05004408, 2
gsSPVertex bubba_seg5_vertex_05004870, 13, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 2, 4, 5, 0x0, 4, 6, 5, 0x0
gsSP2Triangles 7, 8, 9, 0x0, 8, 7, 3, 0x0
gsSP2Triangles 7, 9, 10, 0x0, 7, 11, 0, 0x0
gsSP2Triangles 10, 11, 7, 0x0, 3, 7, 0, 0x0
gsSP2Triangles 0, 11, 1, 0x0, 6, 10, 9, 0x0
gsSP2Triangles 12, 10, 6, 0x0, 12, 11, 10, 0x0
gsSPLight bubba_seg5_light_05004440, 1
gsSPLight bubba_seg5_light_05004438, 2
gsSPVertex bubba_seg5_vertex_05004940, 9, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 3, 6, 7, 0x0, 5, 6, 3, 0x0
gsSP2Triangles 3, 8, 4, 0x0, 7, 6, 5, 0x0
gsSP2Triangles 8, 2, 1, 0x0, 8, 1, 0, 0x0
gsSP1Triangle 4, 8, 0, 0x0
gsSPLight bubba_seg5_light_05004428, 1
gsSPLight bubba_seg5_light_05004420, 2
gsSPVertex bubba_seg5_vertex_050049D0, 7, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSP2Triangles 4, 5, 0, 0x0, 0, 5, 3, 0x0
gsSP2Triangles 2, 6, 0, 0x0, 6, 4, 0, 0x0
gsSPEndDisplayList
glabel bubba_seg5_dl_05004E80 # 0x05004E80 - 0x05004F30
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 4, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 4, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 60, 124
gsSPDisplayList bubba_seg5_dl_05004A40
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList bubba_seg5_dl_05004AA8
gsSPDisplayList bubba_seg5_dl_05004BE8
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPDisplayList bubba_seg5_dl_05004C40
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPDisplayList bubba_seg5_dl_05004D48
gsSPEndDisplayList
bubba_seg5_light_05004F30: # 0x05004F30
.byte 0x48, 0x31, 0x2A, 0x00, 0x48, 0x31, 0x2A, 0x00
bubba_seg5_light_05004F38: # 0x05004F38
.byte 0xF1, 0xA6, 0x8C, 0x00, 0xF1, 0xA6, 0x8C, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
bubba_seg5_light_05004F48: # 0x05004F48
.byte 0x4C, 0x4C, 0x4C, 0x00, 0x4C, 0x4C, 0x4C, 0x00
bubba_seg5_light_05004F50: # 0x05004F50
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
bubba_seg5_light_05004F60: # 0x05004F60
.byte 0x0A, 0x07, 0x08, 0x00, 0x0A, 0x07, 0x08, 0x00
bubba_seg5_light_05004F68: # 0x05004F68
.byte 0x22, 0x1A, 0x1C, 0x00, 0x22, 0x1A, 0x1C, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
bubba_seg5_vertex_05004F78: # 0x05004F78
vertex 6, -194, 96, 405, 48, 0x00, 0xBF, 0x6D, 0xFF
vertex -227, -437, 270, 201, 516, 0xBA, 0xB3, 0x47, 0xFF
vertex 6, -401, 385, 222, 642, 0x00, 0x0B, 0x7E, 0xFF
vertex 7, -58, 559, 485, 556, 0x00, 0xB2, 0x64, 0xFF
vertex 123, -93, 488, 461, 492, 0xF6, 0xA6, 0x58, 0xFF
vertex 239, -437, 266, 201, 512, 0x47, 0xB3, 0x46, 0xFF
vertex -108, -93, 488, 461, 492, 0x0C, 0xA5, 0x57, 0xFF
bubba_seg5_vertex_05004FE8: # 0x05004FE8
vertex 513, -352, 46, 482, 860, 0x55, 0xA7, 0xE5, 0xFF
vertex 451, -258, 81, 626, 798, 0x3B, 0x6B, 0xE1, 0xFF
vertex 452, -258, 151, 608, 716, 0x4D, 0x64, 0x08, 0xFF
vertex 270, -214, 84, 1072, 736, 0x95, 0x1B, 0xC3, 0xFF
vertex 353, -273, -31, 896, 900, 0x24, 0x4C, 0xA2, 0xFF
vertex 249, -181, 193, 1098, 600, 0x0B, 0x65, 0x4B, 0xFF
vertex 509, -306, 182, 458, 698, 0x51, 0x47, 0x41, 0xFF
vertex 1, 184, -550, 728, 822, 0xFF, 0x7B, 0xE2, 0xFF
vertex 3, 43, -352, 554, 698, 0xFF, 0x3C, 0x6F, 0xFF
vertex 52, -18, -501, 458, 800, 0x7E, 0x01, 0xFA, 0xFF
vertex 4, -94, -615, 348, 880, 0x00, 0xE5, 0x84, 0xFF
vertex 3, 56, -615, 552, 872, 0x00, 0x1B, 0x84, 0xFF
vertex 4, -82, -352, 384, 704, 0x00, 0xC4, 0x6F, 0xFF
vertex 6, -222, -550, 182, 844, 0x00, 0x85, 0xE1, 0xFF
vertex -44, -19, -501, 458, 800, 0x82, 0xFF, 0xFA, 0xFF
bubba_seg5_vertex_050050D8: # 0x050050D8
vertex -512, -352, 46, 856, 794, 0xAB, 0xA7, 0xE5, 0xFF
vertex -508, -306, 182, 816, 650, 0xAF, 0x47, 0x41, 0xFF
vertex -451, -258, 151, 664, 694, 0xB3, 0x64, 0x08, 0xFF
vertex -450, -258, 81, 678, 768, 0xC5, 0x6B, 0xE1, 0xFF
vertex -248, -181, 193, 94, 684, 0xF5, 0x65, 0x4B, 0xFF
vertex -352, -273, -31, 432, 906, 0xDC, 0x4C, 0xA2, 0xFF
vertex -269, -214, 84, 176, 796, 0x6B, 0x1B, 0xC3, 0xFF
bubba_seg5_vertex_05005148: # 0x05005148
vertex 5, 465, 287, -14, 458, 0x00, 0x43, 0x6B, 0xFF
vertex 51, 274, 117, 360, 626, 0x6A, 0x44, 0x06, 0xFF
vertex 3, 404, -20, 586, 18, 0x00, 0x71, 0xC7, 0xFF
vertex 5, 317, 249, 72, 912, 0x01, 0x5D, 0x56, 0xFF
vertex -42, 274, 118, 358, 626, 0x96, 0x44, 0x07, 0xFF
vertex 1, 191, -223, 928, 960, 0x00, 0x6B, 0xBD, 0xFF
bubba_seg5_vertex_050051A8: # 0x050051A8
vertex -339, -241, 257, -224, -646, 0x83, 0xF8, 0x14, 0xFF
vertex -251, 216, 243, -48, -2344, 0xA6, 0x59, 0xFE, 0xFF
vertex -218, 29, -147, 1788, -1854, 0x98, 0x20, 0xC0, 0xFF
vertex 0, -85, -355, 2828, -1278, 0xFF, 0xE7, 0x84, 0xFF
vertex -246, -210, -101, 1560, -654, 0xA0, 0xCA, 0xC2, 0xFF
vertex 1, -356, -213, 2040, -22, 0x00, 0xA4, 0xA9, 0xFF
vertex -227, -437, 270, -560, -106, 0xBA, 0xB3, 0x47, 0xFF
vertex 222, 29, -150, 1808, -1854, 0x67, 0x20, 0xBE, 0xFF
vertex 0, 44, -355, 2828, -1928, 0x00, 0x2F, 0x8B, 0xFF
vertex 251, -210, -105, 1580, -654, 0x5F, 0xCA, 0xC0, 0xFF
vertex 239, -437, 266, -540, -106, 0x47, 0xB3, 0x46, 0xFF
vertex 350, -241, 251, -196, -646, 0x7D, 0xF9, 0x11, 0xFF
vertex -217, 18, 383, -760, -1182, 0xA0, 0x13, 0x4F, 0xFF
vertex -42, 274, 118, 464, -3076, 0x96, 0x44, 0x07, 0xFF
vertex 1, 191, -223, 2172, -2664, 0x00, 0x6B, 0xBD, 0xFF
vertex -58, 168, 458, -1120, -2104, 0xDF, 0x49, 0x61, 0xFF
bubba_seg5_vertex_050052A8: # 0x050052A8
vertex 350, -241, 251, -196, -646, 0x7D, 0xF9, 0x11, 0xFF
vertex 230, 18, 380, -744, -1182, 0x61, 0x14, 0x4E, 0xFF
vertex 239, -437, 266, -540, -106, 0x47, 0xB3, 0x46, 0xFF
vertex 261, 216, 239, 0, -2344, 0x5A, 0x59, 0xFD, 0xFF
vertex 222, 29, -150, 1808, -1854, 0x67, 0x20, 0xBE, 0xFF
vertex 0, 44, -355, 2828, -1928, 0x00, 0x2F, 0x8B, 0xFF
vertex 1, 191, -223, 2172, -2664, 0x00, 0x6B, 0xBD, 0xFF
vertex 65, 168, 456, -1108, -2104, 0x23, 0x49, 0x61, 0xFF
vertex 51, 274, 117, 468, -3076, 0x6A, 0x44, 0x06, 0xFF
vertex 5, 317, 249, -396, -2784, 0x01, 0x5D, 0x56, 0xFF
vertex -58, 168, 458, -1120, -2104, 0xDF, 0x49, 0x61, 0xFF
vertex -42, 274, 118, 464, -3076, 0x96, 0x44, 0x07, 0xFF
bubba_seg5_vertex_05005368: # 0x05005368
vertex -227, -437, 270, 0, 0, 0xBA, 0xB3, 0x47, 0xFF
vertex -133, -12, 525, 0, 0, 0xBB, 0xED, 0x68, 0xFF
vertex -217, 18, 383, 0, 0, 0xA0, 0x13, 0x4F, 0xFF
vertex 6, -401, 385, 0, 0, 0x00, 0x0B, 0x7E, 0xFF
vertex 6, -503, 295, 0, 0, 0x00, 0x8B, 0x30, 0xFF
vertex 7, 111, 588, 0, 0, 0x00, 0x5B, 0x57, 0xFF
vertex 7, -58, 559, 0, 0, 0x00, 0xB2, 0x64, 0xFF
vertex 6, 81, 437, 0, 0, 0x01, 0x31, 0x74, 0xFF
vertex 239, -437, 266, 0, 0, 0x47, 0xB3, 0x46, 0xFF
vertex 150, -12, 523, 0, 0, 0x47, 0xEE, 0x67, 0xFF
vertex 123, -93, 488, 0, 0, 0xF6, 0xA6, 0x58, 0xFF
vertex -108, -93, 488, 0, 0, 0x0C, 0xA5, 0x57, 0xFF
vertex 230, 18, 380, 0, 0, 0x61, 0x14, 0x4E, 0xFF
bubba_seg5_vertex_05005438: # 0x05005438
vertex -217, 18, 383, 0, 0, 0xA0, 0x13, 0x4F, 0xFF
vertex -255, 217, 336, 0, 0, 0xA5, 0x40, 0x3C, 0xFF
vertex -251, 216, 243, 0, 0, 0xA6, 0x59, 0xFE, 0xFF
vertex 65, 168, 456, 0, 0, 0x23, 0x49, 0x61, 0xFF
vertex 267, 217, 332, 0, 0, 0x5B, 0x41, 0x3A, 0xFF
vertex 261, 216, 239, 0, 0, 0x5A, 0x59, 0xFD, 0xFF
vertex 230, 18, 380, 0, 0, 0x61, 0x14, 0x4E, 0xFF
vertex 6, 81, 437, 0, 0, 0x01, 0x31, 0x74, 0xFF
vertex -58, 168, 458, 0, 0, 0xDF, 0x49, 0x61, 0xFF
bubba_seg5_vertex_050054C8: # 0x050054C8
vertex 4, -488, 81, 0, 0, 0x00, 0x88, 0xD8, 0xFF
vertex 239, -437, 266, 0, 0, 0x47, 0xB3, 0x46, 0xFF
vertex 6, -503, 295, 0, 0, 0x00, 0x8B, 0x30, 0xFF
vertex -227, -437, 270, 0, 0, 0xBA, 0xB3, 0x47, 0xFF
vertex 251, -210, -105, 0, 0, 0x5F, 0xCA, 0xC0, 0xFF
vertex -246, -210, -101, 0, 0, 0xA0, 0xCA, 0xC2, 0xFF
vertex 1, -356, -213, 0, 0, 0x00, 0xA4, 0xA9, 0xFF
glabel bubba_seg5_dl_05005538 # 0x05005538 - 0x050055A0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bubba_seg5_texture_05000008
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x1FF, 0x200
gsSPLight bubba_seg5_light_05004F38, 1
gsSPLight bubba_seg5_light_05004F30, 2
gsSPVertex bubba_seg5_vertex_05004F78, 7, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 0, 4, 0x0
gsSP2Triangles 4, 0, 5, 0x0, 5, 0, 2, 0x0
gsSP2Triangles 6, 0, 3, 0x0, 1, 0, 6, 0x0
gsSPEndDisplayList
glabel bubba_seg5_dl_050055A0 # 0x050055A0 - 0x050056E0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bubba_seg5_texture_05001408
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPLight bubba_seg5_light_05004F50, 1
gsSPLight bubba_seg5_light_05004F48, 2
gsSPVertex bubba_seg5_vertex_05004FE8, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 4, 0x0
gsSP2Triangles 0, 5, 3, 0x0, 6, 5, 0, 0x0
gsSP2Triangles 0, 4, 1, 0x0, 2, 6, 0, 0x0
gsSP2Triangles 5, 2, 1, 0x0, 5, 1, 3, 0x0
gsSP2Triangles 1, 4, 3, 0x0, 2, 5, 6, 0x0
gsSP2Triangles 7, 8, 9, 0x0, 10, 11, 9, 0x0
gsSP2Triangles 9, 8, 12, 0x0, 7, 9, 11, 0x0
gsSP2Triangles 9, 13, 10, 0x0, 9, 12, 13, 0x0
gsSP2Triangles 12, 8, 14, 0x0, 14, 13, 12, 0x0
gsSP2Triangles 10, 13, 14, 0x0, 10, 14, 11, 0x0
gsSP2Triangles 14, 8, 7, 0x0, 14, 7, 11, 0x0
gsSPVertex bubba_seg5_vertex_050050D8, 7, 0
gsSP2Triangles 0, 1, 2, 0x0, 2, 3, 0, 0x0
gsSP2Triangles 4, 2, 1, 0x0, 4, 3, 2, 0x0
gsSP2Triangles 5, 0, 3, 0x0, 5, 3, 6, 0x0
gsSP2Triangles 6, 3, 4, 0x0, 0, 4, 1, 0x0
gsSP2Triangles 0, 6, 4, 0x0, 5, 6, 0, 0x0
gsSPEndDisplayList
glabel bubba_seg5_dl_050056E0 # 0x050056E0 - 0x05005738
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bubba_seg5_texture_05001C08
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPVertex bubba_seg5_vertex_05005148, 6, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 0, 3, 0x0
gsSP2Triangles 0, 2, 4, 0x0, 3, 0, 4, 0x0
gsSP2Triangles 2, 1, 5, 0x0, 2, 5, 4, 0x0
gsSPEndDisplayList
glabel bubba_seg5_dl_05005738 # 0x05005738 - 0x05005840
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bubba_seg5_texture_05002408
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsSPVertex bubba_seg5_vertex_050051A8, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 2, 3, 4, 0x0
gsSP2Triangles 4, 3, 5, 0x0, 0, 4, 6, 0x0
gsSP2Triangles 0, 2, 4, 0x0, 7, 3, 8, 0x0
gsSP2Triangles 5, 3, 9, 0x0, 8, 3, 2, 0x0
gsSP2Triangles 9, 3, 7, 0x0, 10, 9, 11, 0x0
gsSP2Triangles 7, 11, 9, 0x0, 12, 1, 0, 0x0
gsSP2Triangles 12, 0, 6, 0x0, 13, 14, 1, 0x0
gsSP2Triangles 2, 1, 14, 0x0, 1, 15, 13, 0x0
gsSP1Triangle 14, 8, 2, 0x0
gsSPVertex bubba_seg5_vertex_050052A8, 12, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 0, 4, 0x0
gsSP2Triangles 1, 0, 3, 0x0, 4, 5, 6, 0x0
gsSP2Triangles 3, 4, 6, 0x0, 7, 3, 8, 0x0
gsSP2Triangles 3, 6, 8, 0x0, 7, 9, 10, 0x0
gsSP2Triangles 8, 9, 7, 0x0, 10, 9, 11, 0x0
gsSPEndDisplayList
glabel bubba_seg5_dl_05005840 # 0x05005840 - 0x05005978
gsSPLight bubba_seg5_light_05004F38, 1
gsSPLight bubba_seg5_light_05004F30, 2
gsSPVertex bubba_seg5_vertex_05005368, 13, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 0, 4, 0x0
gsSP2Triangles 5, 2, 1, 0x0, 1, 6, 5, 0x0
gsSP2Triangles 5, 7, 2, 0x0, 8, 3, 4, 0x0
gsSP2Triangles 9, 6, 10, 0x0, 5, 6, 9, 0x0
gsSP2Triangles 11, 6, 1, 0x0, 9, 10, 8, 0x0
gsSP2Triangles 12, 5, 9, 0x0, 7, 5, 12, 0x0
gsSP2Triangles 9, 8, 12, 0x0, 0, 11, 1, 0x0
gsSPLight bubba_seg5_light_05004F68, 1
gsSPLight bubba_seg5_light_05004F60, 2
gsSPVertex bubba_seg5_vertex_05005438, 9, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 5, 4, 6, 0x0, 6, 4, 3, 0x0
gsSP2Triangles 3, 7, 6, 0x0, 3, 8, 7, 0x0
gsSP2Triangles 7, 8, 0, 0x0, 8, 1, 0, 0x0
gsSP1Triangle 8, 2, 1, 0x0
gsSPLight bubba_seg5_light_05004F50, 1
gsSPLight bubba_seg5_light_05004F48, 2
gsSPVertex bubba_seg5_vertex_050054C8, 7, 0
gsSP2Triangles 0, 1, 2, 0x0, 2, 3, 0, 0x0
gsSP2Triangles 0, 4, 1, 0x0, 5, 6, 0, 0x0
gsSP2Triangles 3, 5, 0, 0x0, 0, 6, 4, 0x0
gsSPEndDisplayList
glabel bubba_seg5_dl_05005978 # 0x05005978 - 0x05005A28
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 4, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 4, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 60, 124
gsSPDisplayList bubba_seg5_dl_05005538
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList bubba_seg5_dl_050055A0
gsSPDisplayList bubba_seg5_dl_050056E0
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPDisplayList bubba_seg5_dl_05005738
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPDisplayList bubba_seg5_dl_05005840
gsSPEndDisplayList

View file

@ -0,0 +1,2 @@
# Bubble

13
actors/bubble/geo.s Normal file
View file

@ -0,0 +1,13 @@
glabel bubble_geo # 0x17000000
geo_switch_case 1, geo_switch_anim_state
geo_open_node
geo_display_list LAYER_ALPHA, bubble_seg4_dl_0401DD60
geo_close_node
geo_end
glabel purple_marble_geo # 0x1700001C
geo_switch_case 1, geo_switch_anim_state
geo_open_node
geo_display_list LAYER_ALPHA, bubble_seg4_dl_0401DDE0
geo_close_node
geo_end

47
actors/bubble/model.s Normal file
View file

@ -0,0 +1,47 @@
# Bubble
bubble_seg4_vertex_0401CD20: # 0x0401CD20
vertex -16, 0, 0, 0, 992, 0xFF, 0xFF, 0xFF, 0xFF
vertex 16, 0, 0, 992, 992, 0xFF, 0xFF, 0xFF, 0xFF
vertex 16, 32, 0, 992, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex -16, 32, 0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
bubble_seg4_texture_0401CD60: # 0x0401CD60
.incbin "actors/bubble/bubble.rgba16"
bubble_seg4_texture_0401D560: # 0x0401D560
.incbin "actors/bubble/mr_i_bubble.rgba16"
glabel bubble_seg4_dl_0401DD60 # 0x0401DD60 - 0x0401DDE0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_TEXEL0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_TEXEL0
gsSPTexture -1, -1, 0, 0, 1
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bubble_seg4_texture_0401CD60
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPVertex bubble_seg4_vertex_0401CD20, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSPTexture -1, -1, 0, 0, 0
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPEndDisplayList
glabel bubble_seg4_dl_0401DDE0 # 0x0401DDE0 - 0x0401DE60
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_TEXEL0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_TEXEL0
gsSPTexture -1, -1, 0, 0, 1
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bubble_seg4_texture_0401D560
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPVertex bubble_seg4_vertex_0401CD20, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSPTexture -1, -1, 0, 0, 0
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPEndDisplayList

View file

@ -0,0 +1,2 @@
# Bullet Bill

9
actors/bullet_bill/geo.s Normal file
View file

@ -0,0 +1,9 @@
glabel bullet_bill_geo # 0x0C000264
geo_node_start
geo_open_node
geo_shadow SHADOW_SQUARE_PERMANENT, 0x96, 400
geo_open_node
geo_display_list LAYER_OPAQUE, bullet_bill_seg5_dl_0500E8A8
geo_close_node
geo_close_node
geo_end

306
actors/bullet_bill/model.s Normal file
View file

@ -0,0 +1,306 @@
# Bullet Bill
bullet_bill_seg5_light_0500BA90: # 0x0500BA90
.byte 0x06, 0x07, 0x14, 0x00, 0x06, 0x07, 0x14, 0x00
bullet_bill_seg5_light_0500BA98: # 0x0500BA98
.byte 0x19, 0x1C, 0x52, 0x00, 0x19, 0x1C, 0x52, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
bullet_bill_seg5_texture_0500BAA8: # 0x0500BAA8
.incbin "actors/bullet_bill/bullet_bill_eye.rgba16"
bullet_bill_seg5_texture_0500CAA8: # 0x0500CAA8
.incbin "actors/bullet_bill/bullet_bill_mouth.rgba16"
bullet_bill_seg5_vertex_0500DAA8: # 0x0500DAA8
vertex -195, 0, 272, 884, 1044, 0x9E, 0x02, 0x50, 0xFF
vertex -138, 139, 272, 884, -180, 0xBC, 0x47, 0x50, 0xFF
vertex -176, 177, 161, 2304, -208, 0x9E, 0x4A, 0x1C, 0xFF
vertex -195, 0, 272, 884, 1044, 0x9E, 0x02, 0x50, 0xFF
vertex -176, 177, 161, 2304, -208, 0x9E, 0x4A, 0x1C, 0xFF
vertex -249, 0, 161, 2304, 1356, 0x86, 0xEF, 0x1C, 0xFF
vertex -100, 0, 347, -336, 626, 0xC4, 0x08, 0x6F, 0xFF
vertex -138, 139, 272, 884, -180, 0xBC, 0x47, 0x50, 0xFF
vertex -195, 0, 272, 884, 1044, 0x9E, 0x02, 0x50, 0xFF
vertex -100, 0, 347, -336, 626, 0xC4, 0x08, 0x6F, 0xFF
vertex -70, 71, 347, -336, -4, 0xF0, 0x15, 0x7C, 0xFF
vertex -138, 139, 272, 884, -180, 0xBC, 0x47, 0x50, 0xFF
vertex 101, 0, 347, -480, 478, 0x36, 0x00, 0x72, 0xFF
vertex 196, 0, 272, 620, 886, 0x62, 0x00, 0x4F, 0xFF
vertex 139, 139, 272, 960, -306, 0x48, 0x3E, 0x53, 0xFF
bullet_bill_seg5_vertex_0500DB98: # 0x0500DB98
vertex 71, 71, 347, -304, -134, 0x1C, 0x1C, 0x78, 0xFF
vertex 101, 0, 347, -480, 478, 0x36, 0x00, 0x72, 0xFF
vertex 139, 139, 272, 960, -306, 0x48, 0x3E, 0x53, 0xFF
vertex 139, 139, 272, 960, -306, 0x48, 0x3E, 0x53, 0xFF
vertex 250, 0, 161, 1956, 1186, 0x7A, 0x07, 0x20, 0xFF
vertex 177, 177, 161, 2388, -332, 0x4A, 0x62, 0x1C, 0xFF
vertex 139, 139, 272, 960, -306, 0x48, 0x3E, 0x53, 0xFF
vertex 196, 0, 272, 620, 886, 0x62, 0x00, 0x4F, 0xFF
vertex 250, 0, 161, 1956, 1186, 0x7A, 0x07, 0x20, 0xFF
bullet_bill_seg5_vertex_0500DC28: # 0x0500DC28
vertex -70, 71, 347, 508, -448, 0xF0, 0x15, 0x7C, 0xFF
vertex 0, -100, 347, 996, 556, 0xFA, 0xD0, 0x75, 0xFF
vertex 71, -70, 347, 1480, 384, 0x1D, 0xD9, 0x74, 0xFF
vertex -70, 71, 347, 508, -448, 0xF0, 0x15, 0x7C, 0xFF
vertex 71, -70, 347, 1480, 384, 0x1D, 0xD9, 0x74, 0xFF
vertex 101, 0, 347, 1680, 0, 0x36, 0x00, 0x72, 0xFF
vertex 71, -70, 347, 1480, 384, 0x1D, 0xD9, 0x74, 0xFF
vertex 0, -100, 347, 996, 556, 0xFA, 0xD0, 0x75, 0xFF
vertex 0, -195, 272, 996, 1110, 0xFE, 0x9E, 0x50, 0xFF
vertex 101, 0, 347, 1680, 0, 0x36, 0x00, 0x72, 0xFF
vertex 71, -70, 347, 1480, 384, 0x1D, 0xD9, 0x74, 0xFF
vertex 139, -138, 272, 1936, 776, 0x4A, 0xBC, 0x4C, 0xFF
vertex 71, -70, 347, 1480, 384, 0x1D, 0xD9, 0x74, 0xFF
vertex 0, -195, 272, 996, 1110, 0xFE, 0x9E, 0x50, 0xFF
vertex 139, -138, 272, 1936, 776, 0x4A, 0xBC, 0x4C, 0xFF
bullet_bill_seg5_vertex_0500DD18: # 0x0500DD18
vertex -70, 71, 347, 508, -448, 0xF0, 0x15, 0x7C, 0xFF
vertex -70, -70, 347, 508, 384, 0xD9, 0xE3, 0x74, 0xFF
vertex 0, -100, 347, 996, 556, 0xFA, 0xD0, 0x75, 0xFF
vertex 0, -100, 347, 996, 556, 0xFA, 0xD0, 0x75, 0xFF
vertex -138, -138, 272, 52, 776, 0xB9, 0xBD, 0x50, 0xFF
vertex 0, -195, 272, 996, 1110, 0xFE, 0x9E, 0x50, 0xFF
vertex 0, -100, 347, 996, 556, 0xFA, 0xD0, 0x75, 0xFF
vertex -70, -70, 347, 508, 384, 0xD9, 0xE3, 0x74, 0xFF
vertex -138, -138, 272, 52, 776, 0xB9, 0xBD, 0x50, 0xFF
vertex 101, 0, 347, 1680, 0, 0x36, 0x00, 0x72, 0xFF
vertex 139, -138, 272, 1936, 776, 0x4A, 0xBC, 0x4C, 0xFF
vertex 196, 0, 272, 2328, 0, 0x62, 0x00, 0x4F, 0xFF
vertex -70, 71, 347, 508, -448, 0xF0, 0x15, 0x7C, 0xFF
vertex -100, 0, 347, 308, 0, 0xC4, 0x08, 0x6F, 0xFF
vertex -70, -70, 347, 508, 384, 0xD9, 0xE3, 0x74, 0xFF
bullet_bill_seg5_vertex_0500DE08: # 0x0500DE08
vertex -70, -70, 347, 508, 384, 0xD9, 0xE3, 0x74, 0xFF
vertex -195, 0, 272, -336, 0, 0x9E, 0x02, 0x50, 0xFF
vertex -138, -138, 272, 52, 776, 0xB9, 0xBD, 0x50, 0xFF
vertex -70, -70, 347, 508, 384, 0xD9, 0xE3, 0x74, 0xFF
vertex -100, 0, 347, 308, 0, 0xC4, 0x08, 0x6F, 0xFF
vertex -195, 0, 272, -336, 0, 0x9E, 0x02, 0x50, 0xFF
vertex -70, 71, 347, 508, -448, 0xF0, 0x15, 0x7C, 0xFF
vertex 101, 0, 347, 1680, 0, 0x36, 0x00, 0x72, 0xFF
vertex 71, 71, 347, 1480, -448, 0x1C, 0x1C, 0x78, 0xFF
vertex -70, 71, 347, 508, -448, 0xF0, 0x15, 0x7C, 0xFF
vertex 71, 71, 347, 1480, -448, 0x1C, 0x1C, 0x78, 0xFF
vertex 0, 101, 347, 996, -620, 0x08, 0x3C, 0x6F, 0xFF
bullet_bill_seg5_vertex_0500DEC8: # 0x0500DEC8
vertex -176, -176, -192, 0, 0, 0xD6, 0xE0, 0x8D, 0xFF
vertex 250, 0, -192, 0, 0, 0x66, 0xF2, 0xB7, 0xFF
vertex 177, -176, -192, 0, 0, 0x3E, 0xAE, 0xB7, 0xFF
vertex -176, -176, -192, 0, 0, 0xD6, 0xE0, 0x8D, 0xFF
vertex 177, -176, -192, 0, 0, 0x3E, 0xAE, 0xB7, 0xFF
vertex 0, -249, -192, 0, 0, 0xF0, 0x8A, 0xD6, 0xFF
vertex 250, 0, -192, 0, 0, 0x66, 0xF2, 0xB7, 0xFF
vertex 177, -176, 161, 0, 0, 0x5F, 0xB0, 0x16, 0xFF
vertex 177, -176, -192, 0, 0, 0x3E, 0xAE, 0xB7, 0xFF
vertex 177, -176, -192, 0, 0, 0x3E, 0xAE, 0xB7, 0xFF
vertex 177, -176, 161, 0, 0, 0x5F, 0xB0, 0x16, 0xFF
vertex 0, -249, 161, 0, 0, 0x10, 0x86, 0x1C, 0xFF
vertex 177, -176, -192, 0, 0, 0x3E, 0xAE, 0xB7, 0xFF
vertex 0, -249, 161, 0, 0, 0x10, 0x86, 0x1C, 0xFF
vertex 0, -249, -192, 0, 0, 0xF0, 0x8A, 0xD6, 0xFF
bullet_bill_seg5_vertex_0500DFB8: # 0x0500DFB8
vertex 139, -138, 272, 0, 0, 0x4A, 0xBC, 0x4C, 0xFF
vertex 177, -176, 161, 0, 0, 0x5F, 0xB0, 0x16, 0xFF
vertex 250, 0, 161, 0, 0, 0x7A, 0x07, 0x20, 0xFF
vertex 250, 0, -192, 0, 0, 0x66, 0xF2, 0xB7, 0xFF
vertex 250, 0, 161, 0, 0, 0x7A, 0x07, 0x20, 0xFF
vertex 177, -176, 161, 0, 0, 0x5F, 0xB0, 0x16, 0xFF
vertex 139, -138, 272, 0, 0, 0x4A, 0xBC, 0x4C, 0xFF
vertex 0, -249, 161, 0, 0, 0x10, 0x86, 0x1C, 0xFF
vertex 177, -176, 161, 0, 0, 0x5F, 0xB0, 0x16, 0xFF
vertex 0, -195, 272, 0, 0, 0xFE, 0x9E, 0x50, 0xFF
vertex -176, -176, 161, 0, 0, 0xB6, 0x9E, 0x1C, 0xFF
vertex 0, -249, 161, 0, 0, 0x10, 0x86, 0x1C, 0xFF
vertex 139, -138, 272, 0, 0, 0x4A, 0xBC, 0x4C, 0xFF
vertex 0, -195, 272, 0, 0, 0xFE, 0x9E, 0x50, 0xFF
vertex 0, -249, 161, 0, 0, 0x10, 0x86, 0x1C, 0xFF
bullet_bill_seg5_vertex_0500E0A8: # 0x0500E0A8
vertex 0, -249, -192, 0, 0, 0xF0, 0x8A, 0xD6, 0xFF
vertex 0, -249, 161, 0, 0, 0x10, 0x86, 0x1C, 0xFF
vertex -176, -176, 161, 0, 0, 0xB6, 0x9E, 0x1C, 0xFF
vertex 0, -249, -192, 0, 0, 0xF0, 0x8A, 0xD6, 0xFF
vertex -176, -176, 161, 0, 0, 0xB6, 0x9E, 0x1C, 0xFF
vertex -176, -176, -192, 0, 0, 0xD6, 0xE0, 0x8D, 0xFF
vertex -176, -176, -192, 0, 0, 0xD6, 0xE0, 0x8D, 0xFF
vertex 177, 177, -192, 0, 0, 0x52, 0x3E, 0xB7, 0xFF
vertex 250, 0, -192, 0, 0, 0x66, 0xF2, 0xB7, 0xFF
vertex 177, 177, -192, 0, 0, 0x52, 0x3E, 0xB7, 0xFF
vertex 250, 0, 161, 0, 0, 0x7A, 0x07, 0x20, 0xFF
vertex 250, 0, -192, 0, 0, 0x66, 0xF2, 0xB7, 0xFF
vertex 196, 0, 272, 0, 0, 0x62, 0x00, 0x4F, 0xFF
vertex 139, -138, 272, 0, 0, 0x4A, 0xBC, 0x4C, 0xFF
vertex 250, 0, 161, 0, 0, 0x7A, 0x07, 0x20, 0xFF
bullet_bill_seg5_vertex_0500E198: # 0x0500E198
vertex 177, 177, -192, 0, 0, 0x52, 0x3E, 0xB7, 0xFF
vertex 177, 177, 161, 0, 0, 0x4A, 0x62, 0x1C, 0xFF
vertex 250, 0, 161, 0, 0, 0x7A, 0x07, 0x20, 0xFF
vertex -176, -176, -192, 0, 0, 0xD6, 0xE0, 0x8D, 0xFF
vertex -176, -176, 161, 0, 0, 0xB6, 0x9E, 0x1C, 0xFF
vertex -249, 0, 161, 0, 0, 0x86, 0xEF, 0x1C, 0xFF
vertex -176, -176, -192, 0, 0, 0xD6, 0xE0, 0x8D, 0xFF
vertex 0, 250, -192, 0, 0, 0x0E, 0x66, 0xB7, 0xFF
vertex 177, 177, -192, 0, 0, 0x52, 0x3E, 0xB7, 0xFF
vertex 0, 250, -192, 0, 0, 0x0E, 0x66, 0xB7, 0xFF
vertex 177, 177, 161, 0, 0, 0x4A, 0x62, 0x1C, 0xFF
vertex 177, 177, -192, 0, 0, 0x52, 0x3E, 0xB7, 0xFF
vertex 0, 196, 272, 0, 0, 0x02, 0x62, 0x50, 0xFF
vertex 177, 177, 161, 0, 0, 0x4A, 0x62, 0x1C, 0xFF
vertex 0, 250, 161, 0, 0, 0xEF, 0x7A, 0x1C, 0xFF
bullet_bill_seg5_vertex_0500E288: # 0x0500E288
vertex 0, 196, 272, 0, 0, 0x02, 0x62, 0x50, 0xFF
vertex 139, 139, 272, 0, 0, 0x48, 0x3E, 0x53, 0xFF
vertex 177, 177, 161, 0, 0, 0x4A, 0x62, 0x1C, 0xFF
vertex 0, 250, -192, 0, 0, 0x0E, 0x66, 0xB7, 0xFF
vertex 0, 250, 161, 0, 0, 0xEF, 0x7A, 0x1C, 0xFF
vertex 177, 177, 161, 0, 0, 0x4A, 0x62, 0x1C, 0xFF
vertex -176, -176, -192, 0, 0, 0xD6, 0xE0, 0x8D, 0xFF
vertex -176, 177, -192, 0, 0, 0xC2, 0x52, 0xB7, 0xFF
vertex 0, 250, -192, 0, 0, 0x0E, 0x66, 0xB7, 0xFF
vertex -176, 177, -192, 0, 0, 0xC2, 0x52, 0xB7, 0xFF
vertex 0, 250, 161, 0, 0, 0xEF, 0x7A, 0x1C, 0xFF
vertex 0, 250, -192, 0, 0, 0x0E, 0x66, 0xB7, 0xFF
vertex -138, 139, 272, 0, 0, 0xBC, 0x47, 0x50, 0xFF
vertex 0, 250, 161, 0, 0, 0xEF, 0x7A, 0x1C, 0xFF
vertex -176, 177, 161, 0, 0, 0x9E, 0x4A, 0x1C, 0xFF
bullet_bill_seg5_vertex_0500E378: # 0x0500E378
vertex -138, 139, 272, 0, 0, 0xBC, 0x47, 0x50, 0xFF
vertex 0, 196, 272, 0, 0, 0x02, 0x62, 0x50, 0xFF
vertex 0, 250, 161, 0, 0, 0xEF, 0x7A, 0x1C, 0xFF
vertex -176, 177, -192, 0, 0, 0xC2, 0x52, 0xB7, 0xFF
vertex -176, 177, 161, 0, 0, 0x9E, 0x4A, 0x1C, 0xFF
vertex 0, 250, 161, 0, 0, 0xEF, 0x7A, 0x1C, 0xFF
vertex -176, -176, -192, 0, 0, 0xD6, 0xE0, 0x8D, 0xFF
vertex -249, 0, -192, 0, 0, 0x8A, 0x10, 0xD6, 0xFF
vertex -176, 177, -192, 0, 0, 0xC2, 0x52, 0xB7, 0xFF
vertex -249, 0, -192, 0, 0, 0x8A, 0x10, 0xD6, 0xFF
vertex -176, 177, 161, 0, 0, 0x9E, 0x4A, 0x1C, 0xFF
vertex -176, 177, -192, 0, 0, 0xC2, 0x52, 0xB7, 0xFF
vertex -249, 0, -192, 0, 0, 0x8A, 0x10, 0xD6, 0xFF
vertex -249, 0, 161, 0, 0, 0x86, 0xEF, 0x1C, 0xFF
vertex -176, 177, 161, 0, 0, 0x9E, 0x4A, 0x1C, 0xFF
bullet_bill_seg5_vertex_0500E468: # 0x0500E468
vertex -176, -176, -192, 0, 0, 0xD6, 0xE0, 0x8D, 0xFF
vertex -249, 0, 161, 0, 0, 0x86, 0xEF, 0x1C, 0xFF
vertex -249, 0, -192, 0, 0, 0x8A, 0x10, 0xD6, 0xFF
vertex -138, -138, 272, 0, 0, 0xB9, 0xBD, 0x50, 0xFF
vertex -195, 0, 272, 0, 0, 0x9E, 0x02, 0x50, 0xFF
vertex -249, 0, 161, 0, 0, 0x86, 0xEF, 0x1C, 0xFF
vertex -138, -138, 272, 0, 0, 0xB9, 0xBD, 0x50, 0xFF
vertex -249, 0, 161, 0, 0, 0x86, 0xEF, 0x1C, 0xFF
vertex -176, -176, 161, 0, 0, 0xB6, 0x9E, 0x1C, 0xFF
vertex 0, 101, 347, 0, 0, 0x08, 0x3C, 0x6F, 0xFF
vertex 71, 71, 347, 0, 0, 0x1C, 0x1C, 0x78, 0xFF
vertex 139, 139, 272, 0, 0, 0x48, 0x3E, 0x53, 0xFF
vertex 0, -195, 272, 0, 0, 0xFE, 0x9E, 0x50, 0xFF
vertex -138, -138, 272, 0, 0, 0xB9, 0xBD, 0x50, 0xFF
vertex -176, -176, 161, 0, 0, 0xB6, 0x9E, 0x1C, 0xFF
bullet_bill_seg5_vertex_0500E558: # 0x0500E558
vertex -70, 71, 347, 0, 0, 0xF0, 0x15, 0x7C, 0xFF
vertex 0, 196, 272, 0, 0, 0x02, 0x62, 0x50, 0xFF
vertex -138, 139, 272, 0, 0, 0xBC, 0x47, 0x50, 0xFF
vertex -70, 71, 347, 0, 0, 0xF0, 0x15, 0x7C, 0xFF
vertex 0, 101, 347, 0, 0, 0x08, 0x3C, 0x6F, 0xFF
vertex 0, 196, 272, 0, 0, 0x02, 0x62, 0x50, 0xFF
vertex 0, 101, 347, 0, 0, 0x08, 0x3C, 0x6F, 0xFF
vertex 139, 139, 272, 0, 0, 0x48, 0x3E, 0x53, 0xFF
vertex 0, 196, 272, 0, 0, 0x02, 0x62, 0x50, 0xFF
glabel bullet_bill_seg5_dl_0500E5E8 # 0x0500E5E8 - 0x0500E678
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bullet_bill_seg5_texture_0500BAA8
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsSPLight bullet_bill_seg5_light_0500BA98, 1
gsSPLight bullet_bill_seg5_light_0500BA90, 2
gsSPVertex bullet_bill_seg5_vertex_0500DAA8, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex bullet_bill_seg5_vertex_0500DB98, 9, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP1Triangle 6, 7, 8, 0x0
gsSPEndDisplayList
glabel bullet_bill_seg5_dl_0500E678 # 0x0500E678 - 0x0500E730
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bullet_bill_seg5_texture_0500CAA8
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x080
gsSPVertex bullet_bill_seg5_vertex_0500DC28, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex bullet_bill_seg5_vertex_0500DD18, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex bullet_bill_seg5_vertex_0500DE08, 12, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSPEndDisplayList
glabel bullet_bill_seg5_dl_0500E730 # 0x0500E730 - 0x0500E8A8
gsSPVertex bullet_bill_seg5_vertex_0500DEC8, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex bullet_bill_seg5_vertex_0500DFB8, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex bullet_bill_seg5_vertex_0500E0A8, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex bullet_bill_seg5_vertex_0500E198, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex bullet_bill_seg5_vertex_0500E288, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex bullet_bill_seg5_vertex_0500E378, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex bullet_bill_seg5_vertex_0500E468, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex bullet_bill_seg5_vertex_0500E558, 9, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP1Triangle 6, 7, 8, 0x0
gsSPEndDisplayList
glabel bullet_bill_seg5_dl_0500E8A8 # 0x0500E8A8 - 0x0500E918
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_SHADE, G_CCMUX_TEXEL0_ALPHA, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPNumLights NUMLIGHTS_0 # I cannot tell if they meant to put 0 or 1 here.
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 252, 124
gsSPDisplayList bullet_bill_seg5_dl_0500E5E8
gsSPDisplayList bullet_bill_seg5_dl_0500E678
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPDisplayList bullet_bill_seg5_dl_0500E730
gsSPEndDisplayList

2
actors/bully/collision.s Normal file
View file

@ -0,0 +1,2 @@
# Bully

87
actors/bully/geo.s Normal file
View file

@ -0,0 +1,87 @@
glabel bully_geo # 0x0C000000
geo_shadow SHADOW_CIRCLE_4_VERTS, 0xC8, 70
geo_open_node
geo_scale 0x00, 24576
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 75
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 146, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bully_seg5_dl_05003708
geo_close_node
geo_close_node
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 0, -75
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 146, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bully_seg5_dl_050037A0
geo_close_node
geo_close_node
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_billboard
geo_open_node
geo_display_list LAYER_ALPHA, bully_seg5_dl_05003D40
geo_close_node
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bully_seg5_dl_05000398
geo_animated_part LAYER_ALPHA, 0, 0, 0, bully_seg5_dl_05003FC8
geo_close_node
geo_close_node
geo_close_node
geo_close_node
geo_end
glabel bully_boss_geo # 0x0C000120
geo_shadow SHADOW_CIRCLE_4_VERTS, 0xC8, 210
geo_open_node
geo_scale 0x00, 49152
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 75
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 146, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bully_seg5_dl_05003708
geo_close_node
geo_close_node
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 0, -75
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 146, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bully_seg5_dl_050037A0
geo_close_node
geo_close_node
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_billboard
geo_open_node
geo_display_list LAYER_ALPHA, bully_seg5_dl_05003EA8
geo_close_node
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, bully_seg5_dl_05000398
geo_animated_part LAYER_ALPHA, 0, 0, 0, bully_seg5_dl_05003FC8
geo_close_node
geo_close_node
geo_close_node
geo_close_node
geo_end

688
actors/bully/model.s Normal file
View file

@ -0,0 +1,688 @@
# Bully
bully_seg5_vertex_05000000: # 0x05000000
vertex 196, 17, 114, 325, 310, 0xFF, 0xFF, 0xFF, 0xFF
vertex 259, 2, 106, 422, 7, 0xFF, 0xFF, 0xFF, 0xFF
vertex 184, -14, 137, 399, 416, 0xFF, 0xFF, 0xFF, 0xFF
vertex 196, 17, -113, 105, 286, 0xFF, 0xFF, 0xFF, 0xFF
vertex 259, 2, -105, 69, -34, 0xFF, 0xFF, 0xFF, 0xFF
vertex 171, 17, -157, -107, 540, 0xFF, 0xFF, 0xFF, 0xFF
vertex 184, -14, -136, -34, 392, 0xFF, 0xFF, 0xFF, 0xFF
vertex 91, 42, -114, 236, 784, 0xFF, 0xFF, 0xFF, 0xFF
vertex 140, 42, -34, 621, 305, 0xFF, 0xFF, 0xFF, 0xFF
vertex 116, -38, -75, 344, 489, 0xFF, 0xFF, 0xFF, 0xFF
vertex 171, 17, 158, 417, 557, 0xFF, 0xFF, 0xFF, 0xFF
vertex 116, -38, 76, 111, 499, 0xFF, 0xFF, 0xFF, 0xFF
vertex 91, 42, 115, 120, 778, 0xFF, 0xFF, 0xFF, 0xFF
vertex 140, 42, 35, -40, 311, 0xFF, 0xFF, 0xFF, 0xFF
bully_seg5_texture_050000E0: # 0x050000E0
.incbin "actors/bully/bully_horn.rgba16"
glabel bully_seg5_dl_050002E0 # 0x050002E0 - 0x05000398
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bully_seg5_texture_050000E0
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x0FF, 0x200
gsSPVertex bully_seg5_vertex_05000000, 14, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 5, 4, 6, 0x0, 6, 7, 5, 0x0
gsSP2Triangles 5, 7, 8, 0x0, 5, 8, 3, 0x0
gsSP2Triangles 3, 8, 9, 0x0, 3, 9, 6, 0x0
gsSP2Triangles 6, 4, 3, 0x0, 6, 9, 7, 0x0
gsSP2Triangles 10, 11, 2, 0x0, 0, 12, 10, 0x0
gsSP2Triangles 10, 12, 11, 0x0, 2, 1, 10, 0x0
gsSP2Triangles 10, 1, 0, 0x0, 2, 11, 13, 0x0
gsSP2Triangles 0, 13, 12, 0x0, 2, 13, 0, 0x0
gsSPEndDisplayList
glabel bully_seg5_dl_05000398 # 0x05000398 - 0x05000408
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_TEXEL0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPClearGeometryMode G_LIGHTING
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 4, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 4, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 4, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 60, 60
gsSPDisplayList bully_seg5_dl_050002E0
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_LIGHTING
gsSPEndDisplayList
bully_seg5_light_05000408: # 0x05000408
.byte 0x00, 0x38, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00
bully_seg5_light_05000410: # 0x05000410
.byte 0x00, 0xE3, 0x00, 0x00, 0x00, 0xE3, 0x00, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
bully_seg5_light_05000420: # 0x05000420
.byte 0x00, 0x3F, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00
bully_seg5_light_05000428: # 0x05000428
.byte 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
# Unreferenced light
.byte 0x3F, 0x29, 0x00, 0x00, 0x3F, 0x29, 0x00, 0x00
.byte 0xFF, 0xA5, 0x00, 0x00, 0xFF, 0xA5, 0x00, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
bully_seg5_light_05000450: # 0x05000450
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
bully_seg5_light_05000458: # 0x05000458
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
# //! There's another malformed light entry here.
bully_seg5_texture_05000468: # 0x05000468
.incbin "actors/bully/bully_left_side.rgba16"
bully_seg5_texture_05001468: # 0x05001468
.incbin "actors/bully/bully_right_side.rgba16"
bully_seg5_texture_05002468: # 0x05002468
.incbin "actors/bully/bully_eye.rgba16"
bully_seg5_vertex_05002C68: # 0x05002C68
vertex 27, -35, 0, 0, 0, 0x0C, 0x82, 0x04, 0x00
vertex 56, -16, -27, 0, 0, 0x16, 0xAE, 0xA3, 0x00
vertex 72, -16, 0, 0, 0, 0x59, 0xA7, 0x04, 0x00
vertex 56, 28, -46, 0, 0, 0x65, 0xDF, 0xBD, 0xFF
vertex 90, 28, 0, 0, 0, 0x65, 0xDF, 0xBD, 0xFF
vertex -17, -17, 0, 0, 0, 0xD7, 0xC5, 0x98, 0xFF
vertex -37, 27, 0, 0, 0, 0xD0, 0xDE, 0x90, 0xFF
vertex 56, 28, -46, 0, 0, 0xD0, 0xDE, 0x90, 0xFF
vertex 56, -16, 22, 0, 0, 0x16, 0xB4, 0x62, 0xFF
vertex 90, 28, 0, 0, 0, 0x5F, 0xDE, 0x4B, 0xFF
vertex 55, 28, 41, 0, 0, 0x5F, 0xDE, 0x4B, 0xFF
vertex -17, -17, 0, 0, 0, 0xDC, 0xCB, 0x6C, 0xFF
vertex 55, 28, 41, 0, 0, 0xD5, 0xDF, 0x72, 0xFF
vertex -37, 27, 0, 0, 0, 0xD5, 0xDF, 0x72, 0xFF
bully_seg5_vertex_05002D48: # 0x05002D48
vertex 90, 28, 0, 0, 0, 0xFF, 0x7F, 0x00, 0xFF
vertex 56, 28, -46, 0, 0, 0xFF, 0x7F, 0x00, 0x00
vertex -37, 27, 0, 0, 0, 0xFF, 0x7F, 0x00, 0x00
vertex 55, 28, 41, 0, 0, 0xFF, 0x7F, 0x00, 0xFF
bully_seg5_vertex_05002D88: # 0x05002D88
vertex 72, -16, 0, 0, 0, 0x59, 0xA7, 0xFC, 0x00
vertex 56, -16, 27, 0, 0, 0x16, 0xAE, 0x5D, 0x00
vertex 27, -35, 0, 0, 0, 0x0C, 0x82, 0xFC, 0x00
vertex 90, 28, 0, 0, 0, 0x65, 0xDF, 0x43, 0xFF
vertex 56, 28, 46, 0, 0, 0x65, 0xDF, 0x43, 0xFF
vertex 56, 28, 46, 0, 0, 0xD0, 0xDE, 0x70, 0xFF
vertex -37, 27, 0, 0, 0, 0xD0, 0xDE, 0x70, 0xFF
vertex -17, -17, 0, 0, 0, 0xD7, 0xC5, 0x68, 0xFF
vertex 56, -16, -22, 0, 0, 0x16, 0xB4, 0x9E, 0xFF
vertex 55, 28, -41, 0, 0, 0x5F, 0xDE, 0xB5, 0xFF
vertex 90, 28, 0, 0, 0, 0x5F, 0xDE, 0xB5, 0xFF
vertex -37, 27, 0, 0, 0, 0xD5, 0xDF, 0x8E, 0xFF
vertex 55, 28, -41, 0, 0, 0xD5, 0xDF, 0x8E, 0xFF
vertex -17, -17, 0, 0, 0, 0xDC, 0xCB, 0x94, 0xFF
bully_seg5_vertex_05002E68: # 0x05002E68
vertex 55, 28, -41, 0, 0, 0xFF, 0x7F, 0x00, 0xFF
vertex -37, 27, 0, 0, 0, 0xFF, 0x7F, 0x00, 0x00
vertex 56, 28, 46, 0, 0, 0xFF, 0x7F, 0x00, 0x00
vertex 90, 28, 0, 0, 0, 0xFF, 0x7F, 0x00, 0xFF
bully_seg5_vertex_05002EA8: # 0x05002EA8
vertex 60, 143, 0, 0, 0, 0x0C, 0x7E, 0x00, 0x00
vertex 57, 127, -67, 0, 0, 0x0C, 0x7A, 0xE3, 0x00
vertex -46, 137, -67, 0, 0, 0x0C, 0x7A, 0xE3, 0x00
vertex -42, 153, 0, 0, 0, 0x0C, 0x7E, 0x00, 0xFF
vertex -46, 137, 67, 0, 0, 0x0C, 0x7A, 0x1D, 0xFF
vertex 57, 127, 67, 0, 0, 0x0C, 0x7A, 0x1D, 0xFF
bully_seg5_vertex_05002F08: # 0x05002F08
vertex -133, -40, 39, 0, 0, 0x8B, 0xDD, 0x22, 0x00
vertex -134, -1, 55, 0, 0, 0x8B, 0x00, 0x30, 0x00
vertex -145, -1, 0, 0, 0, 0x81, 0xFF, 0x00, 0x00
vertex -102, -73, 72, 0, 0, 0xA7, 0xC0, 0x3F, 0xFF
vertex -102, 0, 102, 0, 0, 0xA6, 0x00, 0x59, 0xFF
vertex -54, -95, 94, 0, 0, 0xD0, 0xAD, 0x52, 0xFF
vertex -55, 0, 134, 0, 0, 0xD0, 0x00, 0x75, 0xFF
vertex 0, -102, 102, 0, 0, 0x00, 0xA7, 0x59, 0xFF
vertex 0, 0, 145, 0, 0, 0x00, 0x00, 0x7F, 0xFF
vertex 56, -94, 94, 0, 0, 0x31, 0xAE, 0x52, 0xFF
vertex 55, 0, 134, 0, 0, 0x30, 0x00, 0x75, 0xFF
vertex 103, -71, 72, 0, 0, 0x5A, 0xC2, 0x3F, 0xFF
vertex 102, 0, 102, 0, 0, 0x5A, 0x00, 0x59, 0xFF
vertex 134, -38, 39, 0, 0, 0x75, 0xDF, 0x22, 0xFF
vertex 134, 1, 55, 0, 0, 0x75, 0x00, 0x30, 0xFF
vertex 145, 1, 0, 0, 0, 0x7F, 0x01, 0x00, 0xFF
bully_seg5_vertex_05003008: # 0x05003008
vertex -133, -56, 0, 0, 0, 0x8B, 0xCF, 0x00, 0xFF
vertex -133, -40, 39, 0, 0, 0x8B, 0xDD, 0x22, 0x00
vertex -145, -1, 0, 0, 0, 0x81, 0xFF, 0x00, 0x00
vertex -101, -103, 0, 0, 0, 0xA7, 0xA6, 0x00, 0xFF
vertex -102, -73, 72, 0, 0, 0xA7, 0xC0, 0x3F, 0xFF
vertex -54, -134, 0, 0, 0, 0xD0, 0x8B, 0x00, 0xFF
vertex -54, -95, 94, 0, 0, 0xD0, 0xAD, 0x52, 0xFF
vertex 1, -145, 0, 0, 0, 0x01, 0x81, 0x00, 0xFF
vertex 0, -102, 102, 0, 0, 0x00, 0xA7, 0x59, 0xFF
vertex 56, -133, 0, 0, 0, 0x31, 0x8C, 0x00, 0xFF
vertex 56, -94, 94, 0, 0, 0x31, 0xAE, 0x52, 0xFF
vertex 103, -101, 0, 0, 0, 0x5A, 0xA8, 0x00, 0xFF
vertex 103, -71, 72, 0, 0, 0x5A, 0xC2, 0x3F, 0xFF
vertex 134, -54, 0, 0, 0, 0x75, 0xD1, 0x00, 0xFF
vertex 134, -38, 39, 0, 0, 0x75, 0xDF, 0x22, 0xFF
vertex 145, 1, 0, 0, 0, 0x7F, 0x01, 0x00, 0xFF
bully_seg5_vertex_05003108: # 0x05003108
vertex -133, -40, -39, 0, 0, 0x8B, 0xDD, 0xDE, 0xFF
vertex -133, -56, 0, 0, 0, 0x8B, 0xCF, 0x00, 0x00
vertex -145, -1, 0, 0, 0, 0x81, 0xFF, 0x00, 0x00
vertex -102, -73, -72, 0, 0, 0xA7, 0xC0, 0xC1, 0xFF
vertex -101, -103, 0, 0, 0, 0xA7, 0xA6, 0x00, 0xFF
vertex -54, -95, -94, 0, 0, 0xD0, 0xAD, 0xAE, 0xFF
vertex -54, -134, 0, 0, 0, 0xD0, 0x8B, 0x00, 0xFF
vertex 0, -102, -102, 0, 0, 0x00, 0xA7, 0xA7, 0xFF
vertex 1, -145, 0, 0, 0, 0x01, 0x81, 0x00, 0xFF
vertex 56, -94, -94, 0, 0, 0x31, 0xAE, 0xAE, 0xFF
vertex 56, -133, 0, 0, 0, 0x31, 0x8C, 0x00, 0xFF
vertex 103, -71, -72, 0, 0, 0x5A, 0xC2, 0xC1, 0xFF
vertex 103, -101, 0, 0, 0, 0x5A, 0xA8, 0x00, 0xFF
vertex 134, -38, -39, 0, 0, 0x75, 0xDF, 0xDE, 0xFF
vertex 134, -54, 0, 0, 0, 0x75, 0xD1, 0x00, 0xFF
vertex 145, 1, 0, 0, 0, 0x7F, 0x01, 0x00, 0xFF
bully_seg5_vertex_05003208: # 0x05003208
vertex -134, -1, -55, 0, 0, 0x8B, 0x00, 0xD0, 0xFF
vertex -133, -40, -39, 0, 0, 0x8B, 0xDD, 0xDE, 0x00
vertex -145, -1, 0, 0, 0, 0x81, 0xFF, 0x00, 0x00
vertex -102, 0, -102, 0, 0, 0xA6, 0x00, 0xA7, 0xFF
vertex -102, -73, -72, 0, 0, 0xA7, 0xC0, 0xC1, 0xFF
vertex -55, 0, -134, 0, 0, 0xD0, 0x00, 0x8B, 0xFF
vertex -54, -95, -94, 0, 0, 0xD0, 0xAD, 0xAE, 0xFF
vertex 0, 0, -145, 0, 0, 0x00, 0x00, 0x81, 0xFF
vertex 0, -102, -102, 0, 0, 0x00, 0xA7, 0xA7, 0xFF
vertex 55, 0, -134, 0, 0, 0x30, 0x00, 0x8B, 0xFF
vertex 56, -94, -94, 0, 0, 0x31, 0xAE, 0xAE, 0xFF
vertex 102, 0, -102, 0, 0, 0x5A, 0x00, 0xA7, 0xFF
vertex 103, -71, -72, 0, 0, 0x5A, 0xC2, 0xC1, 0xFF
vertex 134, 1, -55, 0, 0, 0x75, 0x00, 0xD0, 0xFF
vertex 134, -38, -39, 0, 0, 0x75, 0xDF, 0xDE, 0xFF
vertex 145, 1, 0, 0, 0, 0x7F, 0x01, 0x00, 0xFF
bully_seg5_vertex_05003308: # 0x05003308
vertex -134, 38, -39, 0, 0, 0x8B, 0x21, 0xDE, 0xFF
vertex -134, -1, -55, 0, 0, 0x8B, 0x00, 0xD0, 0x00
vertex -145, -1, 0, 0, 0, 0x81, 0xFF, 0x00, 0x00
vertex -103, 71, -72, 0, 0, 0xA6, 0x3E, 0xC1, 0xFF
vertex -102, 0, -102, 0, 0, 0xA6, 0x00, 0xA7, 0xFF
vertex -56, 94, -94, 0, 0, 0xCF, 0x52, 0xAE, 0xFF
vertex -55, 0, -134, 0, 0, 0xD0, 0x00, 0x8B, 0xFF
vertex 0, 102, -102, 0, 0, 0x00, 0x59, 0xA7, 0xFF
vertex 0, 0, -145, 0, 0, 0x00, 0x00, 0x81, 0xFF
vertex 54, 95, -94, 0, 0, 0x30, 0x53, 0xAE, 0xFF
vertex 55, 0, -134, 0, 0, 0x30, 0x00, 0x8B, 0xFF
vertex 102, 73, -72, 0, 0, 0x59, 0x40, 0xC1, 0xFF
vertex 102, 0, -102, 0, 0, 0x5A, 0x00, 0xA7, 0xFF
vertex 133, 40, -39, 0, 0, 0x75, 0x23, 0xDE, 0xFF
vertex 134, 1, -55, 0, 0, 0x75, 0x00, 0xD0, 0xFF
vertex 145, 1, 0, 0, 0, 0x7F, 0x01, 0x00, 0xFF
bully_seg5_vertex_05003408: # 0x05003408
vertex -134, 54, 0, 0, 0, 0x8B, 0x2F, 0x00, 0xFF
vertex -134, 38, -39, 0, 0, 0x8B, 0x21, 0xDE, 0x00
vertex -145, -1, 0, 0, 0, 0x81, 0xFF, 0x00, 0x00
vertex -103, 101, 0, 0, 0, 0xA6, 0x58, 0x00, 0xFF
vertex -103, 71, -72, 0, 0, 0xA6, 0x3E, 0xC1, 0xFF
vertex -56, 133, 0, 0, 0, 0xCF, 0x74, 0x00, 0xFF
vertex -56, 94, -94, 0, 0, 0xCF, 0x52, 0xAE, 0xFF
vertex -1, 145, 0, 0, 0, 0xFF, 0x7F, 0x00, 0xFF
vertex 0, 102, -102, 0, 0, 0x00, 0x59, 0xA7, 0xFF
vertex 54, 134, 0, 0, 0, 0x30, 0x75, 0x00, 0xFF
vertex 54, 95, -94, 0, 0, 0x30, 0x53, 0xAE, 0xFF
vertex 101, 103, 0, 0, 0, 0x59, 0x5A, 0x00, 0xFF
vertex 102, 73, -72, 0, 0, 0x59, 0x40, 0xC1, 0xFF
vertex 133, 56, 0, 0, 0, 0x75, 0x31, 0x00, 0xFF
vertex 133, 40, -39, 0, 0, 0x75, 0x23, 0xDE, 0xFF
vertex 145, 1, 0, 0, 0, 0x7F, 0x01, 0x00, 0xFF
bully_seg5_vertex_05003508: # 0x05003508
vertex -134, 38, 39, 0, 0, 0x8B, 0x21, 0x22, 0xFF
vertex -134, 54, 0, 0, 0, 0x8B, 0x2F, 0x00, 0x00
vertex -145, -1, 0, 0, 0, 0x81, 0xFF, 0x00, 0x00
vertex -103, 71, 72, 0, 0, 0xA6, 0x3E, 0x3F, 0xFF
vertex -103, 101, 0, 0, 0, 0xA6, 0x58, 0x00, 0xFF
vertex -56, 94, 94, 0, 0, 0xCF, 0x52, 0x52, 0xFF
vertex -56, 133, 0, 0, 0, 0xCF, 0x74, 0x00, 0xFF
vertex 0, 102, 102, 0, 0, 0x00, 0x59, 0x59, 0xFF
vertex -1, 145, 0, 0, 0, 0xFF, 0x7F, 0x00, 0xFF
vertex 54, 95, 94, 0, 0, 0x30, 0x53, 0x52, 0xFF
vertex 54, 134, 0, 0, 0, 0x30, 0x75, 0x00, 0xFF
vertex 102, 73, 72, 0, 0, 0x59, 0x40, 0x3F, 0xFF
vertex 101, 103, 0, 0, 0, 0x59, 0x5A, 0x00, 0xFF
vertex 133, 40, 39, 0, 0, 0x75, 0x23, 0x22, 0xFF
vertex 133, 56, 0, 0, 0, 0x75, 0x31, 0x00, 0xFF
vertex 145, 1, 0, 0, 0, 0x7F, 0x01, 0x00, 0xFF
bully_seg5_vertex_05003608: # 0x05003608
vertex -134, -1, 55, 0, 0, 0x8B, 0x00, 0x30, 0xFF
vertex -134, 38, 39, 0, 0, 0x8B, 0x21, 0x22, 0x00
vertex -145, -1, 0, 0, 0, 0x81, 0xFF, 0x00, 0x00
vertex -102, 0, 102, 0, 0, 0xA6, 0x00, 0x59, 0xFF
vertex -103, 71, 72, 0, 0, 0xA6, 0x3E, 0x3F, 0xFF
vertex -55, 0, 134, 0, 0, 0xD0, 0x00, 0x75, 0xFF
vertex -56, 94, 94, 0, 0, 0xCF, 0x52, 0x52, 0xFF
vertex 0, 0, 145, 0, 0, 0x00, 0x00, 0x7F, 0xFF
vertex 0, 102, 102, 0, 0, 0x00, 0x59, 0x59, 0xFF
vertex 55, 0, 134, 0, 0, 0x30, 0x00, 0x75, 0xFF
vertex 54, 95, 94, 0, 0, 0x30, 0x53, 0x52, 0xFF
vertex 102, 0, 102, 0, 0, 0x5A, 0x00, 0x59, 0xFF
vertex 102, 73, 72, 0, 0, 0x59, 0x40, 0x3F, 0xFF
vertex 134, 1, 55, 0, 0, 0x75, 0x00, 0x30, 0xFF
vertex 133, 40, 39, 0, 0, 0x75, 0x23, 0x22, 0xFF
vertex 145, 1, 0, 0, 0, 0x7F, 0x01, 0x00, 0xFF
glabel bully_seg5_dl_05003708 # 0x05003708 - 0x050037A0
gsSPLight bully_seg5_light_05000410, 1
gsSPLight bully_seg5_light_05000408, 2
gsSPVertex bully_seg5_vertex_05002C68, 14, 0
gsSP2Triangles 0, 1, 2, 0x0, 2, 1, 3, 0x0
gsSP2Triangles 2, 3, 4, 0x0, 1, 5, 6, 0x0
gsSP2Triangles 1, 6, 7, 0x0, 0, 5, 1, 0x0
gsSP2Triangles 0, 2, 8, 0x0, 8, 2, 9, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 11, 8, 12, 0x0
gsSP2Triangles 11, 12, 13, 0x0, 0, 8, 11, 0x0
gsSPVertex bully_seg5_vertex_05002D48, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSPEndDisplayList
glabel bully_seg5_dl_050037A0 # 0x050037A0 - 0x05003838
gsSPLight bully_seg5_light_05000428, 1
gsSPLight bully_seg5_light_05000420, 2
gsSPVertex bully_seg5_vertex_05002D88, 14, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 1, 0x0
gsSP2Triangles 3, 1, 0, 0x0, 5, 6, 7, 0x0
gsSP2Triangles 5, 7, 1, 0x0, 1, 7, 2, 0x0
gsSP2Triangles 8, 0, 2, 0x0, 9, 10, 0, 0x0
gsSP2Triangles 9, 0, 8, 0x0, 11, 12, 8, 0x0
gsSP2Triangles 11, 8, 13, 0x0, 13, 8, 2, 0x0
gsSPVertex bully_seg5_vertex_05002E68, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSPEndDisplayList
glabel bully_seg5_dl_05003838 # 0x05003838 - 0x05003878
gsSPLight bully_seg5_texture_05000468 + 0x8, 1 # yet another malformed light...
gsSPLight bully_seg5_texture_05000468 + 0x0, 2
gsSPVertex bully_seg5_vertex_05002EA8, 6, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 3, 4, 5, 0x0, 3, 5, 0, 0x0
gsSPEndDisplayList
glabel bully_seg5_dl_05003878 # 0x05003878 - 0x05003C50
gsSPLight bully_seg5_light_05000458, 1
gsSPLight bully_seg5_light_05000450, 2
gsSPVertex bully_seg5_vertex_05002F08, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 0, 3, 0x0
gsSP2Triangles 1, 3, 4, 0x0, 4, 3, 5, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 6, 5, 7, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 8, 7, 9, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 10, 9, 11, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 12, 11, 13, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 14, 13, 15, 0x0
gsSPVertex bully_seg5_vertex_05003008, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 0, 3, 0x0
gsSP2Triangles 1, 3, 4, 0x0, 4, 3, 5, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 6, 5, 7, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 8, 7, 9, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 10, 9, 11, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 12, 11, 13, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 14, 13, 15, 0x0
gsSPVertex bully_seg5_vertex_05003108, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 0, 3, 0x0
gsSP2Triangles 1, 3, 4, 0x0, 4, 3, 5, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 6, 5, 7, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 8, 7, 9, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 10, 9, 11, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 12, 11, 13, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 14, 13, 15, 0x0
gsSPVertex bully_seg5_vertex_05003208, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 0, 3, 0x0
gsSP2Triangles 1, 3, 4, 0x0, 4, 3, 5, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 6, 5, 7, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 8, 7, 9, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 10, 9, 11, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 12, 11, 13, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 14, 13, 15, 0x0
gsSPVertex bully_seg5_vertex_05003308, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 0, 3, 0x0
gsSP2Triangles 1, 3, 4, 0x0, 4, 3, 5, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 6, 5, 7, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 8, 7, 9, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 10, 9, 11, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 12, 11, 13, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 14, 13, 15, 0x0
gsSPVertex bully_seg5_vertex_05003408, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 0, 3, 0x0
gsSP2Triangles 1, 3, 4, 0x0, 4, 3, 5, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 6, 5, 7, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 8, 7, 9, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 10, 9, 11, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 12, 11, 13, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 14, 13, 15, 0x0
gsSPVertex bully_seg5_vertex_05003508, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 0, 3, 0x0
gsSP2Triangles 1, 3, 4, 0x0, 4, 3, 5, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 6, 5, 7, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 8, 7, 9, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 10, 9, 11, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 12, 11, 13, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 14, 13, 15, 0x0
gsSPVertex bully_seg5_vertex_05003608, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 0, 3, 0x0
gsSP2Triangles 1, 3, 4, 0x0, 4, 3, 5, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 6, 5, 7, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 8, 7, 9, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 10, 9, 11, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 12, 11, 13, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 14, 13, 15, 0x0
gsSPEndDisplayList
bully_seg5_vertex_05003C50: # 0x05003C50
vertex 0, 57, 0, 992, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex -55, -55, 0, 0, 2016, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, -55, 0, 992, 2016, 0xFF, 0xFF, 0xFF, 0xFF
vertex -55, 57, 0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
bully_seg5_vertex_05003C90: # 0x05003C90
vertex 57, 57, 0, 992, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, -55, 0, 0, 2016, 0xFF, 0xFF, 0xFF, 0xFF
vertex 57, -55, 0, 992, 2016, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 57, 0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
glabel bully_seg5_dl_05003CD0 # 0x05003CD0 - 0x05003D08
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bully_seg5_texture_05000468
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x100
gsSPVertex bully_seg5_vertex_05003C50, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSPEndDisplayList
glabel bully_seg5_dl_05003D08 # 0x05003D08 - 0x05003D40
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bully_seg5_texture_05001468
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x100
gsSPVertex bully_seg5_vertex_05003C90, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSPEndDisplayList
glabel bully_seg5_dl_05003D40 # 0x05003D40 - 0x05003DB8
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_TEXEL0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_TEXEL0
gsSPClearGeometryMode G_LIGHTING
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 252
gsSPDisplayList bully_seg5_dl_05003CD0
gsSPDisplayList bully_seg5_dl_05003D08
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_LIGHTING
gsSPEndDisplayList
bully_seg5_vertex_05003DB8: # 0x05003DB8
vertex 0, 114, 0, 992, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex -111, -111, 0, 0, 2016, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, -111, 0, 992, 2016, 0xFF, 0xFF, 0xFF, 0xFF
vertex -111, 114, 0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
bully_seg5_vertex_05003DF8: # 0x05003DF8
vertex 114, 114, 0, 992, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, -111, 0, 0, 2016, 0xFF, 0xFF, 0xFF, 0xFF
vertex 114, -111, 0, 992, 2016, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 114, 0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
glabel bully_seg5_dl_05003E38 # 0x05003E38 - 0x05003E70
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bully_seg5_texture_05000468
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x100
gsSPVertex bully_seg5_vertex_05003DB8, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSPEndDisplayList
glabel bully_seg5_dl_05003E70 # 0x05003E70 - 0x05003EA8
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bully_seg5_texture_05001468
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x100
gsSPVertex bully_seg5_vertex_05003DF8, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSPEndDisplayList
glabel bully_seg5_dl_05003EA8 # 0x05003EA8 - 0x05003F20
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_TEXEL0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_TEXEL0
gsSPClearGeometryMode G_LIGHTING
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 252
gsSPDisplayList bully_seg5_dl_05003E38
gsSPDisplayList bully_seg5_dl_05003E70
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_LIGHTING
gsSPEndDisplayList
bully_seg5_vertex_05003F20: # 0x05003F20
vertex -36, 152, 0, 0, 990, 0xFF, 0xFF, 0xFF, 0xFF
vertex -40, 136, 68, 990, 990, 0xFF, 0xFF, 0xFF, 0xFF
vertex 56, 124, 68, 990, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 60, 140, 0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 56, 124, -64, 990, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex -40, 136, -64, 990, 990, 0xFF, 0xFF, 0xFF, 0xFF
glabel bully_seg5_dl_05003F80 # 0x05003F80 - 0x05003FC8
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, bully_seg5_texture_05002468
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPVertex bully_seg5_vertex_05003F20, 6, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 3, 4, 5, 0x0, 3, 5, 0, 0x0
gsSPEndDisplayList
glabel bully_seg5_dl_05003FC8 # 0x05003FC8 - 0x05004038
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_TEXEL0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_TEXEL0
gsSPClearGeometryMode G_LIGHTING
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList bully_seg5_dl_05003F80
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_LIGHTING
gsSPEndDisplayList
bully_seg5_animvalue_05004038: # 0x05004038
.hword 0x0000, 0x00AE, 0x00AE, 0x00AD, 0x00AB, 0x00A8, 0x00A4, 0x009F
.hword 0x0098, 0x0090, 0x009D, 0x00A9, 0x00B1, 0x00B5, 0x00B3, 0x00B1
.hword 0x00AE, 0x00AC, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AE, 0x0000
.hword 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
.hword 0x0000, 0xFFFF, 0xFFFF, 0x0000, 0x0003, 0x0009, 0x000E, 0x0010
.hword 0x000E, 0x000A, 0x0005, 0x0001, 0x0000, 0x3FFF, 0x0000, 0x0000
.hword 0x0001, 0x0002, 0x0003, 0x0004, 0x0004, 0x0004, 0x0005, 0x0005
.hword 0x0005, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0005
.hword 0x0003, 0x0002, 0x0000, 0x0000, 0x0000, 0xFCF9, 0xF61F, 0xEED0
.hword 0xEA69, 0xE89E, 0xE6F0, 0xE564, 0xE403, 0xE2D5, 0xE1E2, 0xE131
.hword 0xE0C9, 0xE0B4, 0xE0F8, 0xE19D, 0xE2AB, 0xE688, 0xEDE8, 0xF649
.hword 0xFD28, 0x0000, 0xEAD4, 0xE2FE, 0xD170, 0xBF1D, 0xB4F7, 0xB26C
.hword 0xB0DB, 0xB023, 0xB021, 0xB0B3, 0xB1B6, 0xB308, 0xB487, 0xB611
.hword 0xB782, 0xB8B9, 0xB994, 0xBA9C, 0xBC2A, 0xBDCF, 0xBF1D, 0xBFA5
.hword 0x8001, 0x8001, 0x7C2E, 0x739E, 0x6AA0, 0x6583, 0x63EA, 0x6295
.hword 0x6186, 0x60BB, 0x6036, 0x5FF7, 0x5FFF, 0x604C, 0x60E1, 0x61BC
.hword 0x62DF, 0x644A, 0x682B, 0x6F2A, 0x76FD, 0x7D5D, 0x8001, 0x6CDC
.hword 0x64A9, 0x524D, 0x3F22, 0x3484, 0x31DA, 0x3036, 0x2F75, 0x2F71
.hword 0x3008, 0x3116, 0x3276, 0x3406, 0x35A0, 0x3721, 0x3865, 0x3949
.hword 0x3A5D, 0x3BFE, 0x3DB7, 0x3F14, 0x3FA3, 0xD282, 0xCC2F, 0xBE27
.hword 0xAFD0, 0xA891, 0xA7DE, 0xA820, 0xA932, 0xAAEE, 0xAD2E, 0xAFCB
.hword 0xB2A0, 0xB585, 0xB856, 0xBAEC, 0xBD21, 0xBECF, 0xBFC8, 0xC021
.hword 0xC015, 0xBFE2, 0xBFC4, 0xD21A, 0xCBDD, 0xBE05, 0xAFE0, 0xA8BD
.hword 0xA80F, 0xA855, 0xA969, 0xAB24, 0xAD61, 0xAFFB, 0xB2CB, 0xB5AC
.hword 0xB877, 0xBB08, 0xBD39, 0xBEE4, 0xBFD9, 0xC02C, 0xC01B, 0xBFE4
.hword 0xBFC4, 0xC04F, 0xC04F, 0x3CD6, 0x3C90, 0x3BD7, 0x3AD7, 0x39B8
.hword 0x37F9, 0x35B2, 0x33F6, 0x33D8, 0x3557, 0x3792, 0x3A47, 0x3D38
.hword 0x4025, 0x42CD, 0x44F1, 0x4651, 0x4636, 0x44A4, 0x4276, 0x4086
.hword 0x3FB1, 0x0000
bully_seg5_animindex_050041FC: # 0x050041FC
.hword 0x0001, 0x0000, 0x0016, 0x0001, 0x0016, 0x0017, 0x0001, 0x0000
.hword 0x0001, 0x002D, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0016, 0x00CB, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x00CA
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0016, 0x009D, 0x0016, 0x002E
.hword 0x0016, 0x0044, 0x0016, 0x005A, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x00C9
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0016, 0x00B3, 0x0001, 0x0070
.hword 0x0016, 0x0071, 0x0016, 0x0087, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000
bully_seg5_anim_050042A4: # 0x050042A4
.hword 0
.hword 0
.hword 0
.hword 0
.hword 0x16
.hword 0x0D
.word bully_seg5_animvalue_05004038
.word bully_seg5_animindex_050041FC
.word 0
bully_seg5_animvalue_050042BC: # 0x050042BC
.hword 0x0000, 0x00B4, 0x00B1, 0x00AE, 0x00B0, 0x00B2, 0x00B4, 0x00B1
.hword 0x00AE, 0x00B0, 0x00B3, 0x3FFF, 0xB575, 0xB559, 0xB64C, 0xBB9D
.hword 0xBCF3, 0xBE03, 0xC380, 0xBCE6, 0xB85B, 0xB5A2, 0x8001, 0x8001
.hword 0x3FA3, 0x42BE, 0x3D15, 0x3757, 0x36AE, 0x3714, 0x3798, 0x3A46
.hword 0x3D78, 0x3F80, 0xD89E, 0xD533, 0xCCDD, 0xC27D, 0xB8F4, 0xB323
.hword 0xB7D6, 0xC220, 0xCDD6, 0xD7E2, 0xB38B, 0xB75B, 0xC073, 0xCB4E
.hword 0xD466, 0xD836, 0xD32B, 0xC7BE, 0xBB82, 0xB407, 0xC04F, 0xC04F
.hword 0x3FB1, 0x0000
bully_seg5_animindex_05004330: # 0x05004330
.hword 0x0001, 0x0000, 0x000A, 0x0001, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x000B, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0038, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0037
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x000A, 0x0022, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x000A, 0x000C, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0036
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x000A, 0x002C, 0x0001, 0x0016
.hword 0x0001, 0x0017, 0x000A, 0x0018, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000
bully_seg5_anim_050043D8: # 0x050043D8
.hword 0
.hword 0
.hword 0
.hword 0
.hword 0x0A
.hword 0x0D
.word bully_seg5_animvalue_050042BC
.word bully_seg5_animindex_05004330
.word 0
bully_seg5_animvalue_050043F0: # 0x050043F0
.hword 0x0000, 0x00B4, 0x00B3, 0x00B2, 0x00B0, 0x00AF, 0x00AE, 0x00AF
.hword 0x00AF, 0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B3, 0x00B2
.hword 0x00B1, 0x00B0, 0x00AF, 0x00AE, 0x00AF, 0x00B0, 0x00B2, 0x00B3
.hword 0x00B4, 0x3FFF, 0xB575, 0xB564, 0xB54B, 0xB54F, 0xB598, 0xB64C
.hword 0xB8E5, 0xBB9D, 0xBC81, 0xBCEE, 0xBD28, 0xBD6E, 0xBE03, 0xBF5E
.hword 0xC141, 0xC2E5, 0xC380, 0xC0B4, 0xBCE6, 0xBAB9, 0xB8B3, 0xB706
.hword 0xB5E1, 0xB575, 0x8001, 0x8001, 0x3FA3, 0x4038, 0x4174, 0x428E
.hword 0x42BE, 0x3D15, 0x398E, 0x3757, 0x36B5, 0x368F, 0x36B4, 0x36F1
.hword 0x3714, 0x3708, 0x36F8, 0x3716, 0x3798, 0x3899, 0x39F7, 0x3B82
.hword 0x3D08, 0x3E5A, 0x3F49, 0x3FA3, 0xD89E, 0xD7FB, 0xD632, 0xD37B
.hword 0xD009, 0xCC12, 0xC7CB, 0xC369, 0xBF20, 0xBB26, 0xB7B0, 0xB4F2
.hword 0xB323, 0xB2E5, 0xB466, 0xB729, 0xBAB2, 0xBE83, 0xC220, 0xC69B
.hword 0xCC74, 0xD24F, 0xD6D1, 0xD89E, 0xB38B, 0xB444, 0xB642, 0xB946
.hword 0xBD0D, 0xC156, 0xC5E1, 0xCA6B, 0xCEB4, 0xD27B, 0xD57F, 0xD77D
.hword 0xD836, 0xD75B, 0xD504, 0xD184, 0xCD31, 0xC85F, 0xC362, 0xBE90
.hword 0xBA3D, 0xB6BD, 0xB466, 0xB38B, 0xC04F, 0xC04F, 0x3FB1, 0x0000
bully_seg5_animindex_050044F0: # 0x050044F0
.hword 0x0001, 0x0000, 0x0018, 0x0001, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0019, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x007E, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x007D
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0018, 0x004C, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0018, 0x001A, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x007C
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0018, 0x0064, 0x0001, 0x0032
.hword 0x0001, 0x0033, 0x0018, 0x0034, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000
bully_seg5_anim_05004598: # 0x05004598
.hword 0
.hword 0
.hword 0
.hword 0
.hword 0x18
.hword 0x0D
.word bully_seg5_animvalue_050043F0
.word bully_seg5_animindex_050044F0
.word 0
bully_seg5_animvalue_050045B0: # 0x050045B0
.hword 0x0000, 0x00AE, 0x00AE, 0x00AE, 0x00C1, 0x00D0, 0x00D7, 0x00D3
.hword 0x00CA, 0x00BD, 0x00AE, 0x00AE, 0x00AE, 0x3FFF, 0xC00D, 0xBF15
.hword 0xC015, 0xCBDE, 0xC3D9, 0xB86A, 0xB1CA, 0xB254, 0xB5BF, 0xBA52
.hword 0xBE55, 0xC00D, 0x8001, 0x8001, 0x3FA3, 0x3EF5, 0x4050, 0x4BDC
.hword 0x43F9, 0x38BD, 0x3231, 0x329C, 0x35D3, 0x3A2B, 0x3DFE, 0x3FA3
.hword 0xC9F4, 0xC6B4, 0xBF90, 0xB86B, 0xB52C, 0xBF4E, 0xC9F4, 0xC6FE
.hword 0xBFFF, 0xBAE0, 0xBCAE, 0xBFC2, 0xC9F4, 0xC6B4, 0xBF90, 0xB86B
.hword 0xB52C, 0xBF4E, 0xC9F4, 0xC6FE, 0xBFFF, 0xBAE0, 0xBCAE, 0xBFC2
.hword 0xC04F, 0xC04F, 0x3581, 0x38C0, 0x3FE5, 0x4709, 0x4A48, 0x4027
.hword 0x3581, 0x3877, 0x3F76, 0x4494, 0x42C7, 0x3FB2
bully_seg5_animindex_0500464C: # 0x0500464C
.hword 0x0001, 0x0000, 0x000C, 0x0001, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x000D, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x000C, 0x0042, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0041
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x000C, 0x0028, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x000C, 0x000E, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0040
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x000C, 0x0034, 0x0001, 0x001A
.hword 0x0001, 0x001B, 0x000C, 0x001C, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000
bully_seg5_anim_050046F4: # 0x050046F4
.hword 0
.hword 0
.hword 0
.hword 0
.hword 0x0C
.hword 0x0D
.word bully_seg5_animvalue_050045B0
.word bully_seg5_animindex_0500464C
.word 0
glabel bully_seg5_anims_0500470C # 0x0500470C
.word bully_seg5_anim_05004598
.word bully_seg5_anim_050043D8
.word bully_seg5_anim_050042A4
.word bully_seg5_anim_050046F4
.word 0

View file

@ -0,0 +1,2 @@
# Burn Smoke

6
actors/burn_smoke/geo.s Normal file
View file

@ -0,0 +1,6 @@
glabel burn_smoke_geo # 0x17000084
geo_node_start
geo_open_node
geo_display_list LAYER_TRANSPARENT, burn_smoke_seg4_dl_04022070
geo_close_node
geo_end

45
actors/burn_smoke/model.s Normal file
View file

@ -0,0 +1,45 @@
# Burn Smoke
burn_smoke_seg4_vertex_040217C0: # 0x040217C0
vertex -50, -50, 0, 0, 992, 0x14, 0x0A, 0x0A, 0xFF
vertex 50, -50, 0, 992, 992, 0x14, 0x0A, 0x0A, 0xFF
vertex 50, 50, 0, 992, 0, 0x14, 0x0A, 0x0A, 0xFF
vertex -50, 50, 0, 0, 0, 0x14, 0x0A, 0x0A, 0xFF
# //! Wrong texture format. Called as rgba16, which makes the burn smoke appear
# as a transparent black burn smoke. Probably meant to show up as white-ish
# burn smoke, but mistakened for being intended as black smoke.
burn_smoke_seg4_texture_04021800: # 0x04021800
.incbin "actors/burn_smoke/burn_smoke.ia16"
glabel burn_smoke_seg4_dl_04022000 # 0x04022000 - 0x04022028
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_TEXEL0, G_ACMUX_0, G_ACMUX_SHADE, G_ACMUX_0
gsSPClearGeometryMode G_LIGHTING | G_CULL_BACK
gsSPTexture -1, -1, 0, 0, 1
gsSPEndDisplayList
glabel burn_smoke_seg4_dl_04022028 # 0x04022028 - 0x04022048
gsSPVertex burn_smoke_seg4_vertex_040217C0, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSPEndDisplayList
glabel burn_smoke_seg4_dl_04022048 # 0x04022048 - 0x04022070
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_LIGHTING
gsSPEndDisplayList
glabel burn_smoke_seg4_dl_04022070 # 0x04022070 - 0x040220C8
gsSPDisplayList burn_smoke_seg4_dl_04022000
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, burn_smoke_seg4_texture_04021800
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList burn_smoke_seg4_dl_04022028
gsSPDisplayList burn_smoke_seg4_dl_04022048
gsSPEndDisplayList

View file

@ -0,0 +1,2 @@
# Butterfly

24
actors/butterfly/geo.s Normal file
View file

@ -0,0 +1,24 @@
glabel butterfly_geo # 0x160000A8
geo_shadow SHADOW_CIRCLE_4_VERTS, 0xB4, 25
geo_open_node
geo_scale 0x00, 16384
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_ALPHA, 0, 0, 0, butterfly_seg3_dl_03005408
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_close_node
geo_close_node
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_ALPHA, 0, 0, 0, butterfly_seg3_dl_030054A0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_close_node
geo_close_node
geo_close_node
geo_close_node
geo_close_node
geo_end

117
actors/butterfly/model.s Normal file
View file

@ -0,0 +1,117 @@
# Butterfly
butterfly_seg3_vertex_03004348: # 0x03004348
vertex 0, 0, -78, 2004, -48, 0xFF, 0xFF, 0xFF, 0xFF
vertex 79, 0, 39, -60, 4056, 0xFF, 0xFF, 0xFF, 0xFF
vertex 79, 0, -78, -56, -48, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 0, -78, 2004, -48, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 0, 39, 2004, 4056, 0xFF, 0xFF, 0xFF, 0xFF
vertex 79, 0, 39, -60, 4056, 0xFF, 0xFF, 0xFF, 0xFF
butterfly_seg3_texture_030043A8: # 0x030043A8
.incbin "actors/butterfly/butterfly_wing.rgba16"
butterfly_seg3_vertex_030053A8: # 0x030053A8
vertex 79, 0, -78, -56, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 0, 39, 1972, 4024, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 0, -78, 2000, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 79, 0, -78, -56, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 79, 0, 39, -80, 4032, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 0, 39, 1972, 4024, 0xFF, 0xFF, 0xFF, 0xFF
glabel butterfly_seg3_dl_03005408 # 0x03005408 - 0x030054A0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_TEXEL0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_TEXEL0
gsSPClearGeometryMode G_LIGHTING | G_CULL_BACK
gsSPTexture -32768, -32768, 0, 0, 1
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, butterfly_seg3_texture_030043A8
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x100
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 252
gsSPVertex butterfly_seg3_vertex_03004348, 6, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSPTexture -32768, -32768, 1, 1, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_LIGHTING | G_CULL_BACK
gsSPEndDisplayList
glabel butterfly_seg3_dl_030054A0 # 0x030054A0 - 0x03005538
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_TEXEL0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_TEXEL0
gsSPClearGeometryMode G_LIGHTING | G_CULL_BACK
gsSPTexture -32768, -32768, 0, 0, 1
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, butterfly_seg3_texture_030043A8
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x100
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 252
gsSPVertex butterfly_seg3_vertex_030053A8, 6, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSPTexture -32768, -32768, 1, 1, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_LIGHTING | G_CULL_BACK
gsSPEndDisplayList
butterfly_seg3_animvalue_03005538: # 0x03005538
.hword 0x0000, 0x352F, 0x28EE, 0x122D, 0x05EC, 0x0D4E, 0x1D8D, 0x2DCC
.hword 0x352F, 0x4B1B, 0x569E, 0x6C00, 0x7784, 0x7093, 0x614F, 0x520B
.hword 0x4B1B, 0x0000
butterfly_seg3_animindex_0300555C: # 0x0300555C
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0008, 0x0001, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0008, 0x0009, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000
butterfly_seg3_anim_030055B0: # 0x030055B0
.hword 0
.hword 0
.hword 7
.hword 0
.hword 0x08
.hword 0x06
.word butterfly_seg3_animvalue_03005538
.word butterfly_seg3_animindex_0300555C
.word 0
butterfly_seg3_animvalue_030055C8: # 0x030055C8
.hword 0x0000, 0x3A7B, 0x3A7B, 0x3998, 0x3721, 0x3360, 0x2E9D, 0x2923
.hword 0x233A, 0x1D2D, 0x1744, 0x11CA, 0x0D07, 0x0945, 0x06CF, 0x05EC
.hword 0x0697, 0x087A, 0x0B63, 0x0F24, 0x138C, 0x186C, 0x1D94, 0x22D3
.hword 0x27FB, 0x2CDB, 0x3143, 0x3503, 0x37ED, 0x39CF, 0x3A7B, 0x4637
.hword 0x4637, 0x470C, 0x495C, 0x4CE1, 0x5159, 0x567C, 0x5C07, 0x61B4
.hword 0x673F, 0x6C63, 0x70DA, 0x7460, 0x76AF, 0x7784, 0x76E3, 0x751F
.hword 0x7263, 0x6EDE, 0x6ABC, 0x6629, 0x6154, 0x5C68, 0x5792, 0x52FF
.hword 0x4EDD, 0x4B58, 0x489D, 0x46D8, 0x4637, 0x0000
butterfly_seg3_animindex_03005644: # 0x03005644
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x001E, 0x0001, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x001E, 0x001F, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000
butterfly_seg3_anim_03005698: # 0x03005698
.hword 0
.hword 0
.hword 7
.hword 0
.hword 0x1E
.hword 0x06
.word butterfly_seg3_animvalue_030055C8
.word butterfly_seg3_animindex_03005644
.word 0
glabel butterfly_seg3_anims_030056B0 # 0x030056B0
.word butterfly_seg3_anim_030055B0
.word butterfly_seg3_anim_03005698

View file

@ -0,0 +1,2 @@
# Cannon Barrel

View file

@ -0,0 +1,6 @@
glabel cannon_barrel_geo # 0x0F0001C0
geo_node_start
geo_open_node
geo_display_list LAYER_OPAQUE, cannon_barrel_seg8_dl_08006660
geo_close_node
geo_end

View file

@ -0,0 +1,144 @@
# Cannon Barrel
cannon_barrel_seg8_light_08005878: # 0x08005878
.byte 0x4C, 0x4C, 0x4C, 0x00, 0x4C, 0x4C, 0x4C, 0x00
cannon_barrel_seg8_light_08005880: # 0x08005880
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
cannon_barrel_seg8_light_08005890: # 0x08005890
.byte 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x0F, 0x00
cannon_barrel_seg8_light_08005898: # 0x08005898
.byte 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x32, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
cannon_barrel_seg8_texture_080058A8: # 0x080058A8
.incbin "actors/cannon_barrel/cannon_barrel.rgba16"
cannon_barrel_seg8_vertex_080060A8: # 0x080060A8
vertex -40, 236, 41, 176, 748, 0x45, 0x5D, 0xCD, 0xFF
vertex -56, 236, 0, 64, 480, 0x66, 0x49, 0x0D, 0xFF
vertex -81, 236, 0, -98, 480, 0xB8, 0x68, 0x09, 0xFF
vertex -57, 236, 58, 60, 864, 0xCC, 0x5C, 0x44, 0xFF
vertex -40, 236, -40, 176, 210, 0x2B, 0x68, 0x3A, 0xFF
vertex -57, 236, -57, 60, 94, 0xAE, 0x49, 0xC2, 0xFF
vertex 0, 236, -81, 444, -66, 0xF4, 0x5C, 0xAB, 0xFF
vertex 0, 236, -56, 444, 98, 0xF6, 0x5C, 0x56, 0xFF
vertex 41, 236, -40, 714, 210, 0xBC, 0x5D, 0x33, 0xFF
vertex 58, 236, -57, 830, 94, 0x34, 0x5C, 0xBB, 0xFF
vertex 57, 236, 0, 826, 480, 0xAA, 0x5C, 0xF6, 0xFF
vertex 82, 236, 0, 990, 480, 0x55, 0x5C, 0xF4, 0xFF
vertex 58, 236, 58, 830, 864, 0x3A, 0x68, 0x2B, 0xFF
vertex 41, 236, 41, 714, 748, 0xC3, 0x4A, 0xAE, 0xFF
vertex 0, 236, 57, 444, 860, 0x09, 0x67, 0xB8, 0xFF
vertex 0, 236, 82, 444, 1022, 0x0D, 0x49, 0x66, 0xFF
cannon_barrel_seg8_vertex_080061A8: # 0x080061A8
vertex 41, 236, 41, 0, 0, 0xC3, 0x4A, 0xAE, 0xFF
vertex 41, -19, 41, 0, 0, 0xAE, 0x4A, 0xC3, 0xFF
vertex 0, -19, 57, 0, 0, 0xF3, 0x49, 0x9A, 0xFF
vertex -40, 236, -40, 0, 0, 0x2B, 0x68, 0x3A, 0xFF
vertex -40, -19, -40, 0, 0, 0x2A, 0x73, 0x20, 0xFF
vertex 0, -19, -56, 0, 0, 0x10, 0x2A, 0x76, 0xFF
vertex -56, 236, 0, 0, 0, 0x66, 0x49, 0x0D, 0xFF
vertex -56, -19, 0, 0, 0, 0x76, 0x2A, 0xF1, 0xFF
vertex 41, -19, -40, 0, 0, 0xC3, 0x4A, 0x52, 0xFF
vertex -40, -19, 41, 0, 0, 0x3E, 0x4A, 0xAE, 0xFF
vertex 57, -19, 0, 0, 0, 0x9A, 0x49, 0x0D, 0xFF
vertex -40, 236, 41, 0, 0, 0x45, 0x5D, 0xCD, 0xFF
vertex 0, 236, 57, 0, 0, 0x09, 0x67, 0xB8, 0xFF
vertex 57, 236, 0, 0, 0, 0xAA, 0x5C, 0xF6, 0xFF
vertex 41, 236, -40, 0, 0, 0xBC, 0x5D, 0x33, 0xFF
vertex 0, 236, -56, 0, 0, 0xF6, 0x5C, 0x56, 0xFF
cannon_barrel_seg8_vertex_080062A8: # 0x080062A8
vertex 82, -19, 0, 0, 0, 0x74, 0xCE, 0x0B, 0xFF
vertex 58, -19, 58, 0, 0, 0x49, 0xCE, 0x5A, 0xFF
vertex 0, -71, 0, 0, 0, 0x00, 0x82, 0x00, 0xFF
vertex 0, -19, 82, 0, 0, 0xF4, 0xCE, 0x74, 0xFF
vertex 58, 236, 58, 0, 0, 0x3A, 0x68, 0x2B, 0xFF
vertex 0, 236, 82, 0, 0, 0x0D, 0x49, 0x66, 0xFF
vertex 82, 236, 0, 0, 0, 0x55, 0x5C, 0xF4, 0xFF
vertex -57, 236, 58, 0, 0, 0xCC, 0x5C, 0x44, 0xFF
vertex -57, -19, 58, 0, 0, 0xA6, 0xCF, 0x49, 0xFF
vertex 58, -19, -57, 0, 0, 0x5A, 0xCF, 0xB6, 0xFF
vertex 58, 236, -57, 0, 0, 0x34, 0x5C, 0xBB, 0xFF
vertex 0, -19, -81, 0, 0, 0x0B, 0xCF, 0x8C, 0xFF
vertex 0, 236, -81, 0, 0, 0xF4, 0x5C, 0xAB, 0xFF
vertex -57, -19, -57, 0, 0, 0xB6, 0xCF, 0xA6, 0xFF
vertex -81, 236, 0, 0, 0, 0xB8, 0x68, 0x09, 0xFF
vertex -57, 236, -57, 0, 0, 0xAE, 0x49, 0xC2, 0xFF
cannon_barrel_seg8_vertex_080063A8: # 0x080063A8
vertex -81, -19, 0, 0, 0, 0x8C, 0xCF, 0xF4, 0xFF
vertex -57, -19, -57, 0, 0, 0xB6, 0xCF, 0xA6, 0xFF
vertex 0, -71, 0, 0, 0, 0x00, 0x82, 0x00, 0xFF
vertex -57, 236, -57, 0, 0, 0xAE, 0x49, 0xC2, 0xFF
vertex -81, 236, 0, 0, 0, 0xB8, 0x68, 0x09, 0xFF
vertex -57, -19, 58, 0, 0, 0xA6, 0xCF, 0x49, 0xFF
glabel cannon_barrel_seg8_dl_08006408 # 0x08006408 - 0x080064C0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, cannon_barrel_seg8_texture_080058A8
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPLight cannon_barrel_seg8_light_08005880, 1
gsSPLight cannon_barrel_seg8_light_08005878, 2
gsSPVertex cannon_barrel_seg8_vertex_080060A8, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 2, 4, 5, 0x0, 2, 1, 4, 0x0
gsSP2Triangles 4, 6, 5, 0x0, 4, 7, 6, 0x0
gsSP2Triangles 7, 8, 9, 0x0, 7, 9, 6, 0x0
gsSP2Triangles 8, 10, 11, 0x0, 8, 11, 9, 0x0
gsSP2Triangles 10, 12, 11, 0x0, 10, 13, 12, 0x0
gsSP2Triangles 14, 15, 12, 0x0, 14, 3, 15, 0x0
gsSP2Triangles 14, 0, 3, 0x0, 14, 12, 13, 0x0
gsSPEndDisplayList
glabel cannon_barrel_seg8_dl_080064C0 # 0x080064C0 - 0x08006660
gsSPLight cannon_barrel_seg8_light_08005898, 1
gsSPLight cannon_barrel_seg8_light_08005890, 2
gsSPVertex cannon_barrel_seg8_vertex_080061A8, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 4, 0x0, 6, 4, 3, 0x0
gsSP2Triangles 4, 8, 5, 0x0, 4, 7, 9, 0x0
gsSP2Triangles 4, 9, 2, 0x0, 4, 2, 1, 0x0
gsSP2Triangles 4, 1, 10, 0x0, 4, 10, 8, 0x0
gsSP2Triangles 11, 9, 7, 0x0, 11, 7, 6, 0x0
gsSP2Triangles 12, 2, 9, 0x0, 12, 9, 11, 0x0
gsSP2Triangles 0, 2, 12, 0x0, 13, 10, 1, 0x0
gsSP2Triangles 13, 1, 0, 0x0, 14, 8, 10, 0x0
gsSP2Triangles 14, 10, 13, 0x0, 15, 8, 14, 0x0
gsSP2Triangles 15, 5, 8, 0x0, 3, 5, 15, 0x0
gsSPVertex cannon_barrel_seg8_vertex_080062A8, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 3, 2, 0x0
gsSP2Triangles 1, 4, 5, 0x0, 1, 5, 3, 0x0
gsSP2Triangles 0, 4, 1, 0x0, 0, 6, 4, 0x0
gsSP2Triangles 3, 5, 7, 0x0, 3, 8, 2, 0x0
gsSP2Triangles 3, 7, 8, 0x0, 9, 0, 2, 0x0
gsSP2Triangles 9, 6, 0, 0x0, 9, 10, 6, 0x0
gsSP2Triangles 11, 9, 2, 0x0, 11, 10, 9, 0x0
gsSP2Triangles 11, 12, 10, 0x0, 13, 11, 2, 0x0
gsSP2Triangles 13, 12, 11, 0x0, 8, 7, 14, 0x0
gsSP1Triangle 13, 15, 12, 0x0
gsSPVertex cannon_barrel_seg8_vertex_080063A8, 6, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSP2Triangles 0, 4, 3, 0x0, 5, 0, 2, 0x0
gsSP1Triangle 5, 4, 0, 0x0
gsSPEndDisplayList
glabel cannon_barrel_seg8_dl_08006660 # 0x08006660 - 0x080066C8
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList cannon_barrel_seg8_dl_08006408
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPDisplayList cannon_barrel_seg8_dl_080064C0
gsSPEndDisplayList

View file

@ -0,0 +1,2 @@
# Cannon Base

6
actors/cannon_base/geo.s Normal file
View file

@ -0,0 +1,6 @@
glabel cannon_base_geo # 0x0F0001A8
geo_node_start
geo_open_node
geo_display_list LAYER_OPAQUE, cannon_base_seg8_dl_080057F8
geo_close_node
geo_end

157
actors/cannon_base/model.s Normal file
View file

@ -0,0 +1,157 @@
# Cannon Base
cannon_base_seg8_light_08004988: # 0x08004988
.byte 0x4C, 0x4C, 0x4C, 0x00, 0x4C, 0x4C, 0x4C, 0x00
cannon_base_seg8_light_08004990: # 0x08004990
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
cannon_base_seg8_light_080049A0: # 0x080049A0
.byte 0x0E, 0x10, 0x4C, 0x00, 0x0E, 0x10, 0x4C, 0x00
cannon_base_seg8_light_080049A8: # 0x080049A8
.byte 0x30, 0x37, 0xFF, 0x00, 0x30, 0x37, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
cannon_base_seg8_texture_080049B8: # 0x080049B8
.incbin "actors/cannon_base/cannon_base.rgba16"
cannon_base_seg8_vertex_080051B8: # 0x080051B8
vertex 102, -101, 51, 0, 1758, 0x7F, 0x00, 0x00, 0xFF
vertex 102, -101, -50, 990, 1758, 0x7F, 0x00, 0x00, 0xFF
vertex 102, 51, -50, 990, 228, 0x7F, 0x00, 0x00, 0xFF
vertex 102, 77, 26, 224, -28, 0x7F, 0x00, 0x00, 0xFF
vertex 102, 51, 51, 0, 228, 0x7F, 0x00, 0x00, 0xFF
vertex 102, 77, -25, 734, -28, 0x7F, 0x00, 0x00, 0xFF
vertex -101, 51, -50, 0, 224, 0x81, 0x00, 0x00, 0xFF
vertex -101, 77, 26, 734, 0, 0x81, 0x00, 0x00, 0xFF
vertex -101, 77, -25, 224, 0, 0x81, 0x00, 0x00, 0xFF
vertex -101, -101, -50, 0, 1754, 0x81, 0x00, 0x00, 0xFF
vertex -101, -101, 51, 990, 1754, 0x81, 0x00, 0x00, 0xFF
vertex -101, 51, 51, 990, 224, 0x81, 0x00, 0x00, 0xFF
cannon_base_seg8_vertex_08005278: # 0x08005278
vertex -60, -101, 51, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 61, -101, 51, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 61, -101, -50, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 102, -101, -50, 0, 0, 0x00, 0x00, 0x81, 0xFF
vertex 61, 51, -50, 0, 0, 0x00, 0x00, 0x81, 0xFF
vertex 102, 51, -50, 0, 0, 0x00, 0x00, 0x81, 0xFF
vertex 61, -101, -50, 0, 0, 0x00, 0x00, 0x81, 0xFF
vertex 61, 51, -50, 0, 0, 0x81, 0x00, 0x00, 0xFF
vertex 61, -101, -50, 0, 0, 0x81, 0x00, 0x00, 0xFF
vertex 61, -101, 51, 0, 0, 0x81, 0x00, 0x00, 0xFF
vertex 61, 77, 26, 0, 0, 0x81, 0x00, 0x00, 0xFF
vertex 61, 77, -25, 0, 0, 0x81, 0x00, 0x00, 0xFF
vertex 61, 51, 51, 0, 0, 0x81, 0x00, 0x00, 0xFF
vertex 102, 51, -50, 0, 0, 0x00, 0x58, 0xA5, 0xFF
vertex 61, 51, -50, 0, 0, 0x00, 0x58, 0xA5, 0xFF
vertex 61, 77, -25, 0, 0, 0x00, 0x58, 0xA5, 0xFF
cannon_base_seg8_vertex_08005378: # 0x08005378
vertex 102, 51, -50, 0, 0, 0x00, 0x58, 0xA5, 0xFF
vertex 61, 77, -25, 0, 0, 0x00, 0x58, 0xA5, 0xFF
vertex 102, 77, -25, 0, 0, 0x00, 0x58, 0xA5, 0xFF
vertex 102, 77, -25, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 61, 77, -25, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 61, 77, 26, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 102, 77, 26, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 102, 77, 26, 0, 0, 0x00, 0x58, 0x5B, 0xFF
vertex 61, 77, 26, 0, 0, 0x00, 0x58, 0x5B, 0xFF
vertex 61, 51, 51, 0, 0, 0x00, 0x58, 0x5B, 0xFF
vertex 102, 51, 51, 0, 0, 0x00, 0x58, 0x5B, 0xFF
vertex 102, 51, 51, 0, 0, 0x00, 0x00, 0x7F, 0xFF
vertex 61, 51, 51, 0, 0, 0x00, 0x00, 0x7F, 0xFF
vertex 61, -101, 51, 0, 0, 0x00, 0x00, 0x7F, 0xFF
vertex 102, -101, 51, 0, 0, 0x00, 0x00, 0x7F, 0xFF
cannon_base_seg8_vertex_08005468: # 0x08005468
vertex -60, -101, 51, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex 61, -101, -50, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex -60, -101, -50, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex -101, 77, -25, 0, 0, 0x00, 0x58, 0xA5, 0xFF
vertex -60, 51, -50, 0, 0, 0x00, 0x58, 0xA5, 0xFF
vertex -101, 51, -50, 0, 0, 0x00, 0x58, 0xA5, 0xFF
vertex -101, 51, -50, 0, 0, 0x00, 0x00, 0x81, 0xFF
vertex -60, -101, -50, 0, 0, 0x00, 0x00, 0x81, 0xFF
vertex -101, -101, -50, 0, 0, 0x00, 0x00, 0x81, 0xFF
vertex -60, 51, -50, 0, 0, 0x00, 0x00, 0x81, 0xFF
vertex -60, -101, 51, 0, 0, 0x7F, 0x00, 0x00, 0xFF
vertex -60, -101, -50, 0, 0, 0x7F, 0x00, 0x00, 0xFF
vertex -60, 51, -50, 0, 0, 0x7F, 0x00, 0x00, 0xFF
vertex -60, 77, -25, 0, 0, 0x00, 0x58, 0xA5, 0xFF
vertex -60, 77, -25, 0, 0, 0x7F, 0x00, 0x00, 0xFF
cannon_base_seg8_vertex_08005558: # 0x08005558
vertex -101, -101, 51, 0, 0, 0x00, 0x00, 0x7F, 0xFF
vertex -60, 51, 51, 0, 0, 0x00, 0x00, 0x7F, 0xFF
vertex -101, 51, 51, 0, 0, 0x00, 0x00, 0x7F, 0xFF
vertex -60, -101, 51, 0, 0, 0x00, 0x00, 0x7F, 0xFF
vertex -60, -101, 51, 0, 0, 0x7F, 0x00, 0x00, 0xFF
vertex -60, 77, -25, 0, 0, 0x7F, 0x00, 0x00, 0xFF
vertex -60, 77, 26, 0, 0, 0x7F, 0x00, 0x00, 0xFF
vertex -60, 51, 51, 0, 0, 0x7F, 0x00, 0x00, 0xFF
vertex -101, 51, 51, 0, 0, 0x00, 0x58, 0x5B, 0xFF
vertex -60, 51, 51, 0, 0, 0x00, 0x58, 0x5B, 0xFF
vertex -60, 77, 26, 0, 0, 0x00, 0x58, 0x5B, 0xFF
vertex -101, 77, 26, 0, 0, 0x00, 0x58, 0x5B, 0xFF
vertex -101, 77, 26, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex -60, 77, 26, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex -60, 77, -25, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex -101, 77, -25, 0, 0, 0x00, 0x7F, 0x00, 0xFF
glabel cannon_base_seg8_dl_08005658 # 0x08005658 - 0x080056D0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, cannon_base_seg8_texture_080049B8
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPLight cannon_base_seg8_light_08004990, 1
gsSPLight cannon_base_seg8_light_08004988, 2
gsSPVertex cannon_base_seg8_vertex_080051B8, 12, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 4, 0x0
gsSP2Triangles 0, 2, 5, 0x0, 0, 5, 3, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 6, 9, 10, 0x0
gsSP2Triangles 6, 10, 11, 0x0, 6, 11, 7, 0x0
gsSPEndDisplayList
glabel cannon_base_seg8_dl_080056D0 # 0x080056D0 - 0x080057F8
gsSPLight cannon_base_seg8_light_080049A8, 1
gsSPLight cannon_base_seg8_light_080049A0, 2
gsSPVertex cannon_base_seg8_vertex_08005278, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 3, 6, 4, 0x0, 7, 8, 9, 0x0
gsSP2Triangles 7, 10, 11, 0x0, 7, 12, 10, 0x0
gsSP2Triangles 7, 9, 12, 0x0, 13, 14, 15, 0x0
gsSPVertex cannon_base_seg8_vertex_08005378, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 3, 5, 6, 0x0, 7, 8, 9, 0x0
gsSP2Triangles 7, 9, 10, 0x0, 11, 12, 13, 0x0
gsSP1Triangle 11, 13, 14, 0x0
gsSPVertex cannon_base_seg8_vertex_08005468, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 6, 9, 7, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 3, 13, 4, 0x0
gsSP1Triangle 10, 12, 14, 0x0
gsSPVertex cannon_base_seg8_vertex_08005558, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 10, 11, 0x0
gsSP2Triangles 12, 13, 14, 0x0, 12, 14, 15, 0x0
gsSPEndDisplayList
glabel cannon_base_seg8_dl_080057F8 # 0x080057F8 - 0x08005870
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPClearGeometryMode G_SHADING_SMOOTH
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList cannon_base_seg8_dl_08005658
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPDisplayList cannon_base_seg8_dl_080056D0
gsSPSetGeometryMode G_SHADING_SMOOTH
gsSPEndDisplayList

View file

@ -0,0 +1,15 @@
# Cannon Lid
glabel cannon_lid_seg8_collision_08004950 # 0x08004950 - 0x08004980
colInit
colVertexInit 0x4
colVertex 112, 0, -111
colVertex -111, 0, -111
colVertex -111, 0, 112
colVertex 112, 0, 112
colTriInit SURFACE_DEFAULT, 2
colTri 0, 1, 2
colTri 0, 2, 3
colTriStop
colEnd

3
actors/cannon_lid/geo.s Normal file
View file

@ -0,0 +1,3 @@
# Empty geo script
.balign 8
geo_branch_and_link NULL

44
actors/cannon_lid/model.s Normal file
View file

@ -0,0 +1,44 @@
# Cannon Lid
cannon_lid_seg8_light_08004040: # 0x08004040
.byte 0x3F, 0x3F, 0x3F, 0x00, 0x3F, 0x3F, 0x3F, 0x00
cannon_lid_seg8_light_08004048: # 0x08004048
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
cannon_lid_seg8_texture_08004058: # 0x08004058
.incbin "actors/cannon_lid/cannon_lid.rgba16"
cannon_lid_seg8_vertex_08004858: # 0x08004858
vertex 102, 0, -101, 990, 0, 0x00, 0x7F, 0x00, 0xFF
vertex -101, 0, -101, 0, 0, 0x00, 0x7F, 0x00, 0xFF
vertex -101, 0, 102, 0, 990, 0x00, 0x7F, 0x00, 0xFF
vertex 102, 0, 102, 990, 990, 0x00, 0x7F, 0x00, 0xFF
glabel cannon_lid_seg8_dl_08004898 # 0x08004898 - 0x080048E0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, cannon_lid_seg8_texture_08004058
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPLight cannon_lid_seg8_light_08004048, 1
gsSPLight cannon_lid_seg8_light_08004040, 2
gsSPVertex cannon_lid_seg8_vertex_08004858, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSPEndDisplayList
glabel cannon_lid_seg8_dl_080048E0 # 0x080048E0 - 0x08004950
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPClearGeometryMode G_SHADING_SMOOTH
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList cannon_lid_seg8_dl_08004898
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_SHADING_SMOOTH
gsSPEndDisplayList

View file

@ -0,0 +1,53 @@
# Capswitch
glabel capswitch_collision_050033D0
colInit
colVertexInit 0x8
colVertex 292, 0, 254
colVertex 292, 0, -253
colVertex 292, 353, -253
colVertex -291, 0, -253
colVertex -291, 353, -253
colVertex -291, 0, 254
colVertex -291, 353, 254
colVertex 292, 353, 254
colTriInit SURFACE_SWITCH, 10
colTri 0, 1, 2
colTri 1, 3, 4
colTri 1, 4, 2
colTri 3, 5, 6
colTri 3, 6, 4
colTri 2, 4, 6
colTri 0, 2, 7
colTri 2, 6, 7
colTri 5, 7, 6
colTri 5, 0, 7
colTriStop
colEnd
glabel capswitch_collision_05003448
colInit
colVertexInit 0x8
colVertex 292, 0, 254
colVertex 292, 0, -253
colVertex 292, 145, -253
colVertex -291, 0, -253
colVertex -291, 145, -253
colVertex -291, 0, 254
colVertex -291, 145, 254
colVertex 292, 145, 254
colTriInit SURFACE_SWITCH, 10
colTri 0, 1, 2
colTri 1, 3, 4
colTri 1, 4, 2
colTri 3, 5, 6
colTri 3, 6, 4
colTri 2, 4, 6
colTri 0, 2, 7
colTri 2, 6, 7
colTri 5, 7, 6
colTri 5, 0, 7
colTriStop
colEnd

13
actors/capswitch/geo.s Normal file
View file

@ -0,0 +1,13 @@
glabel cap_switch_geo # 0x0C000048
geo_culling_radius 600
geo_open_node
geo_display_list LAYER_TRANSPARENT_DECAL, cap_switch_exclamation_seg5_dl_05002E00
geo_switch_case 4, geo_switch_anim_state
geo_open_node
geo_display_list LAYER_OPAQUE, capswitch_seg5_dl_05003350
geo_display_list LAYER_OPAQUE, capswitch_seg5_dl_05003370
geo_display_list LAYER_OPAQUE, capswitch_seg5_dl_05003390
geo_display_list LAYER_OPAQUE, capswitch_seg5_dl_050033B0
geo_close_node
geo_close_node
geo_end

218
actors/capswitch/model.s Normal file
View file

@ -0,0 +1,218 @@
# Capswitch
.balign 8
capswitch_seg5_light_05001BB8: # 0x05001BB8
.byte 0x3F, 0x3F, 0x3F, 0x00, 0x3F, 0x3F, 0x3F, 0x00
capswitch_seg5_light_05001BC0: # 0x05001BC0
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
capswitch_seg5_light_05001BD0: # 0x05001BD0
.byte 0x3F, 0x3F, 0x3F, 0x00, 0x3F, 0x3F, 0x3F, 0x00
capswitch_seg5_light_05001BD8: # 0x05001BD8
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
capswitch_seg5_light_05001BE8: # 0x05001BE8
.byte 0x3F, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00
capswitch_seg5_light_05001BF0: # 0x05001BF0
.byte 0xFF, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
capswitch_seg5_light_05001C00: # 0x05001C00
.byte 0x01, 0x2A, 0x09, 0x00, 0x01, 0x2A, 0x09, 0x00
capswitch_seg5_light_05001C08: # 0x05001C08
.byte 0x07, 0xA9, 0x25, 0x00, 0x07, 0xA9, 0x25, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
capswitch_seg5_light_05001C18: # 0x05001C18
.byte 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x3F, 0x00
capswitch_seg5_light_05001C20: # 0x05001C20
.byte 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
capswitch_seg5_light_05001C30: # 0x05001C30
.byte 0x3F, 0x25, 0x02, 0x00, 0x3F, 0x25, 0x02, 0x00
capswitch_seg5_light_05001C38: # 0x05001C38
.byte 0xFF, 0x96, 0x08, 0x00, 0xFF, 0x96, 0x08, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
capswitch_seg5_texture_05001C48: # 0x05001C48
.incbin "actors/capswitch/cap_switch_head.ia16"
capswitch_seg5_texture_05002C48: # 0x05002C48
.incbin "actors/capswitch/cap_switch_base.rgba16"
capswitch_seg5_vertex_05002CC8: # 0x05002CC8
vertex -118, 262, -203, -130, 364, 0x00, 0x36, 0x8E, 0xFF
vertex 130, 0, -224, 1144, 2144, 0x00, 0x0A, 0x82, 0xFF
vertex -129, 0, -224, -184, 2144, 0x00, 0x0A, 0x82, 0xFF
vertex 119, 262, -203, 1088, 364, 0x00, 0x36, 0x8E, 0xFF
vertex 109, 352, -108, 1034, -252, 0x00, 0x5C, 0xA9, 0xFF
vertex -108, 352, -108, -74, -252, 0x00, 0x5C, 0xA9, 0xFF
vertex -129, 0, 225, -184, 2144, 0x00, 0x0A, 0x7E, 0xFF
vertex 119, 262, 204, 1088, 364, 0x00, 0x36, 0x72, 0xFF
vertex -118, 262, 204, -130, 364, 0x00, 0x36, 0x72, 0xFF
vertex -108, 352, 109, -74, -252, 0x00, 0x5C, 0x57, 0xFF
vertex 130, 0, 225, 1144, 2144, 0x00, 0x0A, 0x7E, 0xFF
vertex 109, 352, 109, 1034, -252, 0x00, 0x5C, 0x57, 0xFF
glabel capswitch_seg5_dl_05002D88 # 0x05002D88 - 0x05002E00
gsDPSetTextureImage G_IM_FMT_IA, G_IM_SIZ_16b, 1, capswitch_seg5_texture_05001C48
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x7FF, 0x100
gsSPLight capswitch_seg5_light_05001BC0, 1
gsSPLight capswitch_seg5_light_05001BB8, 2
gsSPVertex capswitch_seg5_vertex_05002CC8, 12, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 0, 3, 0x0
gsSP2Triangles 4, 3, 0, 0x0, 5, 4, 0, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 8, 7, 9, 0x0
gsSP2Triangles 7, 6, 10, 0x0, 11, 9, 7, 0x0
gsSPEndDisplayList
glabel cap_switch_exclamation_seg5_dl_05002E00 # 0x05002E00 - 0x05002E60
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_TEXEL0, G_ACMUX_0, G_ACMUX_SHADE, G_ACMUX_0
gsDPSetTile G_IM_FMT_IA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_IA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 6, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 252
gsSPDisplayList capswitch_seg5_dl_05002D88
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPEndDisplayList
capswitch_seg5_vertex_05002E60: # 0x05002E60
vertex 147, 0, -253, 0, 499, 0x29, 0x00, 0x88, 0xFF
vertex -146, 0, -253, 0, -436, 0xAD, 0x00, 0xA1, 0xFF
vertex -146, 137, -253, 407, -436, 0xD3, 0x48, 0xA3, 0xFF
vertex -146, 0, 254, 0, -436, 0xD7, 0x00, 0x77, 0xFF
vertex 147, 0, 254, 0, 499, 0x53, 0x00, 0x5F, 0xFF
vertex 147, 137, 254, 407, 499, 0x2D, 0x48, 0x5D, 0xFF
vertex 293, 137, 0, 407, 967, 0x68, 0x48, 0x07, 0xFF
vertex 293, 0, 0, 0, 967, 0x7C, 0x00, 0xE8, 0xFF
vertex 147, 137, -253, 407, 499, 0x3A, 0x47, 0xAA, 0xFF
vertex 111, 170, -192, 510, 386, 0x23, 0x72, 0xD7, 0xFF
vertex 222, 170, 0, 510, 741, 0x35, 0x72, 0x0A, 0xFF
vertex -146, 137, 254, 407, -436, 0xC6, 0x47, 0x56, 0xFF
vertex 111, 170, 193, 510, 386, 0x11, 0x72, 0x33, 0xFF
vertex -292, 137, 0, 407, -904, 0x98, 0x48, 0xF9, 0xFF
vertex -110, 170, 193, 510, -323, 0xDD, 0x72, 0x29, 0xFF
vertex -221, 170, 0, 510, -678, 0xCB, 0x72, 0xF6, 0xFF
capswitch_seg5_vertex_05002F60: # 0x05002F60
vertex -146, 0, -253, 0, -436, 0xAD, 0x00, 0xA1, 0xFF
vertex -292, 0, 0, 0, -904, 0x84, 0x00, 0x17, 0xFF
vertex -292, 137, 0, 407, -904, 0x98, 0x48, 0xF9, 0xFF
vertex 147, 137, -253, 407, 499, 0x3A, 0x47, 0xAA, 0xFF
vertex -146, 137, -253, 407, -436, 0xD3, 0x48, 0xA3, 0xFF
vertex -110, 170, -192, 510, -323, 0xEF, 0x72, 0xCD, 0xFF
vertex -221, 170, 0, 510, -678, 0xCB, 0x72, 0xF6, 0xFF
vertex 111, 170, -192, 510, 386, 0x23, 0x72, 0xD7, 0xFF
vertex -146, 137, 254, 407, -436, 0xC6, 0x47, 0x56, 0xFF
vertex 111, 170, 193, 510, 386, 0x11, 0x72, 0x33, 0xFF
vertex -110, 170, 193, 510, -323, 0xDD, 0x72, 0x29, 0xFF
vertex -146, 0, 254, 0, -436, 0xD7, 0x00, 0x77, 0xFF
glabel capswitch_seg5_dl_05003020 # 0x05003020 - 0x05003120
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, capswitch_seg5_texture_05002C48
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x03F, 0x200
gsSPLight capswitch_seg5_light_05001BD8, 1
gsSPLight capswitch_seg5_light_05001BD0, 2
gsSPVertex capswitch_seg5_vertex_05002E60, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 4, 6, 5, 0x0, 4, 7, 6, 0x0
gsSP2Triangles 7, 8, 6, 0x0, 6, 9, 10, 0x0
gsSP2Triangles 6, 8, 9, 0x0, 5, 6, 10, 0x0
gsSP2Triangles 11, 5, 12, 0x0, 3, 5, 11, 0x0
gsSP2Triangles 5, 10, 12, 0x0, 7, 0, 8, 0x0
gsSP2Triangles 0, 2, 8, 0x0, 13, 14, 15, 0x0
gsSP1Triangle 1, 13, 2, 0x0
gsSPVertex capswitch_seg5_vertex_05002F60, 12, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 4, 6, 5, 0x0, 4, 2, 6, 0x0
gsSP2Triangles 3, 5, 7, 0x0, 8, 9, 10, 0x0
gsSP2Triangles 1, 8, 2, 0x0, 1, 11, 8, 0x0
gsSP1Triangle 2, 8, 10, 0x0
gsSPEndDisplayList
glabel cap_switch_base_seg5_dl_05003120 # 0x05003120 - 0x05003180
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 4, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 2, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 4, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 60, 12
gsSPDisplayList capswitch_seg5_dl_05003020
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPEndDisplayList
capswitch_seg5_vertex_05003180: #0x05003180
vertex -118, 262, -203, 0, 0, 0xD9, 0x37, 0x95, 0xFF
vertex 130, 0, -224, 0, 0, 0x29, 0x0B, 0x89, 0xFF
vertex -129, 0, -224, 0, 0, 0xAE, 0x0A, 0xA0, 0xFF
vertex 119, 262, -203, 0, 0, 0x49, 0x2C, 0xA3, 0xFF
vertex 260, 0, 0, 0, 0, 0x7C, 0x0A, 0xE8, 0xFF
vertex -238, 262, 0, 0, 0, 0x8E, 0x34, 0xF4, 0xFF
vertex -108, 352, -108, 0, 0, 0xDB, 0x75, 0xE0, 0xFF
vertex 109, 352, -108, 0, 0, 0x25, 0x6D, 0xCD, 0xFF
vertex 239, 262, 0, 0, 0, 0x72, 0x34, 0x0C, 0xFF
vertex -259, 0, 0, 0, 0, 0x84, 0x0A, 0x18, 0xFF
vertex -118, 262, 204, 0, 0, 0xB7, 0x2C, 0x5D, 0xFF
vertex -108, 352, 109, 0, 0, 0xDB, 0x6D, 0x33, 0xFF
vertex -129, 0, 225, 0, 0, 0xD7, 0x0B, 0x77, 0xFF
vertex 119, 262, 204, 0, 0, 0x27, 0x37, 0x6B, 0xFF
vertex 109, 352, 109, 0, 0, 0x25, 0x75, 0x20, 0xFF
vertex 130, 0, 225, 0, 0, 0x52, 0x0A, 0x5F, 0xFF
glabel capswitch_seg5_dl_05003280 # 0x05003280 - 0x05003350
gsSPVertex capswitch_seg5_vertex_05003180, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 3, 4, 0x0
gsSP2Triangles 1, 0, 3, 0x0, 2, 5, 0, 0x0
gsSP2Triangles 0, 5, 6, 0x0, 7, 3, 0, 0x0
gsSP2Triangles 6, 7, 0, 0x0, 8, 3, 7, 0x0
gsSP2Triangles 4, 3, 8, 0x0, 9, 10, 5, 0x0
gsSP2Triangles 11, 6, 5, 0x0, 5, 10, 11, 0x0
gsSP2Triangles 5, 2, 9, 0x0, 10, 9, 12, 0x0
gsSP2Triangles 12, 13, 10, 0x0, 10, 13, 11, 0x0
gsSP2Triangles 6, 11, 14, 0x0, 14, 11, 13, 0x0
gsSP2Triangles 6, 14, 7, 0x0, 15, 8, 13, 0x0
gsSP2Triangles 13, 8, 14, 0x0, 13, 12, 15, 0x0
gsSP2Triangles 8, 15, 4, 0x0, 7, 14, 8, 0x0
gsSPEndDisplayList
glabel capswitch_seg5_dl_05003350 # 0x05003350 - 0x05003370
gsSPLight capswitch_seg5_light_05001BF0, 1
gsSPLight capswitch_seg5_light_05001BE8, 2
gsSPDisplayList capswitch_seg5_dl_05003280
gsSPEndDisplayList
glabel capswitch_seg5_dl_05003370 # 0x05003370 - 0x05003390
gsSPLight capswitch_seg5_light_05001C08, 1
gsSPLight capswitch_seg5_light_05001C00, 2
gsSPDisplayList capswitch_seg5_dl_05003280
gsSPEndDisplayList
glabel capswitch_seg5_dl_05003390 # 0x05003390 - 0x050033B0
gsSPLight capswitch_seg5_light_05001C20, 1
gsSPLight capswitch_seg5_light_05001C18, 2
gsSPDisplayList capswitch_seg5_dl_05003280
gsSPEndDisplayList
glabel capswitch_seg5_dl_050033B0 # 0x050033B0 - 0x050033D0
gsSPLight capswitch_seg5_light_05001C38, 1
gsSPLight capswitch_seg5_light_05001C30, 2
gsSPDisplayList capswitch_seg5_dl_05003280
gsSPEndDisplayList

View file

@ -0,0 +1,2 @@
# Chain Ball

6
actors/chain_ball/geo.s Normal file
View file

@ -0,0 +1,6 @@
glabel metallic_ball_geo # 0x0D0005D0
geo_shadow SHADOW_CIRCLE_4_VERTS, 0x96, 60
geo_open_node
geo_display_list LAYER_ALPHA, chain_ball_seg6_dl_060212E8
geo_close_node
geo_end

33
actors/chain_ball/model.s Normal file
View file

@ -0,0 +1,33 @@
# Chain Ball
.balign 8
chain_ball_seg6_vertex_06020AA0: # 0x06020AA0
vertex -26, -26, 0, 0, 992, 0xFF, 0xFF, 0xFF, 0xFF
vertex 26, -26, 0, 992, 992, 0xFF, 0xFF, 0xFF, 0xFF
vertex 26, 26, 0, 992, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex -26, 26, 0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
.word 0, 0 # align but balign wont here?
chain_ball_seg6_texture_06020AE8: # 0x06020AE8
.incbin "actors/chain_ball/chain_ball.rgba16"
glabel chain_ball_seg6_dl_060212E8 # 0x060212E8 - 0x06021380
gsDPPipeSync
gsSPClearGeometryMode G_LIGHTING
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_TEXEL0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_TEXEL0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, chain_ball_seg6_texture_06020AE8
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsDPPipeSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPTexture -1, -1, 0, 0, 1
gsSPVertex chain_ball_seg6_vertex_06020AA0, 4, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_LIGHTING
gsSPEndDisplayList

View file

@ -0,0 +1,2 @@
# Chain Chomp

20
actors/chain_chomp/geo.s Normal file
View file

@ -0,0 +1,20 @@
glabel chain_chomp # 0x0D0005EC
geo_shadow SHADOW_CIRCLE_4_VERTS, 0x96, 200
geo_open_node
geo_scale 0x00, 16384
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, chain_chomp_seg6_dl_06024940
geo_animated_part LAYER_OPAQUE, 0, 0, 0, chain_chomp_seg6_dl_06024FC0
geo_close_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, chain_chomp_seg6_dl_06024240
geo_animated_part LAYER_OPAQUE, 0, 0, 0, chain_chomp_seg6_dl_06024D60
geo_animated_part LAYER_ALPHA, 0, 0, 0, chain_chomp_seg6_dl_06024B00
geo_close_node
geo_close_node
geo_close_node
geo_close_node #! more close than open nodes
geo_end

530
actors/chain_chomp/model.s Normal file
View file

@ -0,0 +1,530 @@
# Chain Chomp
.balign 8
# These 6 lights are unreferenced.
chain_chomp_seg6_light_06021388: # 0x06021388
.byte 0x3F, 0x3F, 0x3F, 0x00, 0x3F, 0x3F, 0x3F, 0x00
chain_chomp_seg6_light_06021390: # 0x06021390
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
chain_chomp_seg6_light_060213A0: # 0x060213A0
.byte 0x03, 0x03, 0x05, 0x00, 0x03, 0x03, 0x05, 0x00
chain_chomp_seg6_light_060213A8: # 0x060213A8
.byte 0x0D, 0x0F, 0x16, 0x00, 0x0D, 0x0F, 0x16, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
chain_chomp_seg6_light_060213B8: # 0x060213B8
.byte 0x25, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00
chain_chomp_seg6_light_060213C0: # 0x060213C0
.byte 0x96, 0x00, 0x00, 0x00, 0x96, 0x00, 0x00, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
chain_chomp_seg6_texture_060213D0: # 0x060213D0
.incbin "actors/chain_chomp/chain_chomp_bright_shine.rgba16"
chain_chomp_seg6_texture_06021BD0: # 0x06021BD0
.incbin "actors/chain_chomp/chain_chomp_dull_shine.rgba16"
chain_chomp_seg6_texture_060223D0: # 0x060223D0
.incbin "actors/chain_chomp/chain_chomp_tongue.rgba16"
chain_chomp_seg6_texture_06022BD0: # 0x06022BD0
.incbin "actors/chain_chomp/chain_chomp_tooth.rgba16"
chain_chomp_seg6_texture_060233D0: # 0x060233D0
.incbin "actors/chain_chomp/chain_chomp_eye.rgba16"
chain_chomp_seg6_vertex_06023BD0: # 0x06023BD0
vertex 0, 0, 582, 990, 380, 0xB2, 0xB2, 0xB2, 0xFF
vertex 411, 0, -410, 118, 880, 0xB2, 0xB2, 0xB2, 0xFF
vertex 0, 0, -581, -52, 472, 0xB2, 0xB2, 0xB2, 0xFF
vertex 582, 0, 0, 496, 1020, 0xB2, 0xB2, 0xB2, 0xFF
vertex 411, 0, 411, 856, 816, 0xB2, 0xB2, 0xB2, 0xFF
chain_chomp_seg6_vertex_06023C20: # 0x06023C20
vertex 0, -581, 0, 448, -130, 0xFF, 0xFF, 0xFF, 0xFF
vertex -156, -536, -156, 334, -408, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, -536, -222, 58, -276, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, -536, 223, 818, 106, 0xFF, 0xFF, 0xFF, 0xFF
vertex -156, -536, 157, 870, -138, 0xFF, 0xFF, 0xFF, 0xFF
vertex -222, -536, 0, 670, -350, 0xFF, 0xFF, 0xFF, 0xFF
vertex 223, -536, 0, 204, 180, 0xFF, 0xFF, 0xFF, 0xFF
vertex 157, -536, 157, 542, 238, 0xFF, 0xFF, 0xFF, 0xFF
vertex 157, -536, -156, 4, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 291, -410, -290, -390, 142, 0xFF, 0xFF, 0xFF, 0xFF
vertex 411, -410, 0, -22, 534, 0xFF, 0xFF, 0xFF, 0xFF
vertex 291, -410, 291, 600, 640, 0xFF, 0xFF, 0xFF, 0xFF
vertex 370, -216, -369, -652, 368, 0xFF, 0xFF, 0xFF, 0xFF
vertex 537, -222, 0, -196, 880, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, -222, -536, -548, -222, 0xFF, 0xFF, 0xFF, 0xFF
vertex 370, -216, 370, 608, 1002, 0xFF, 0xFF, 0xFF, 0xFF
chain_chomp_seg6_vertex_06023D20: # 0x06023D20
vertex 291, -410, 291, 600, 640, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, -410, 411, 1110, 398, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, -536, 223, 818, 106, 0xFF, 0xFF, 0xFF, 0xFF
vertex 370, -216, 370, 608, 1002, 0xFF, 0xFF, 0xFF, 0xFF
vertex 411, 0, -410, -814, 606, 0xFF, 0xFF, 0xFF, 0xFF
vertex 537, -222, 0, -196, 880, 0xFF, 0xFF, 0xFF, 0xFF
vertex 370, -216, -369, -652, 368, 0xFF, 0xFF, 0xFF, 0xFF
vertex 582, 0, 0, -292, 1160, 0xFF, 0xFF, 0xFF, 0xFF
vertex 411, 0, 411, 586, 1310, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, -222, 537, 1282, 700, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 0, 582, 1306, 968, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 0, -581, -674, -30, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, -222, -536, -548, -222, 0xFF, 0xFF, 0xFF, 0xFF
vertex -410, 0, 411, 1446, 334, 0xFF, 0xFF, 0xFF, 0xFF
vertex -379, -222, 380, 1412, 114, 0xFF, 0xFF, 0xFF, 0xFF
chain_chomp_seg6_vertex_06023E10: # 0x06023E10
vertex 0, -410, -410, -290, -308, 0xFF, 0xFF, 0xFF, 0xFF
vertex 291, -410, -290, -390, 142, 0xFF, 0xFF, 0xFF, 0xFF
vertex 157, -536, -156, 4, 0, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, -222, -536, -548, -222, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, -536, -222, 58, -276, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, -410, 411, 1110, 398, 0xFF, 0xFF, 0xFF, 0xFF
vertex -156, -536, 157, 870, -138, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, -536, 223, 818, 106, 0xFF, 0xFF, 0xFF, 0xFF
vertex -290, -410, 291, 1210, -52, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, -222, 537, 1282, 700, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 0, 582, 1306, 968, 0xFF, 0xFF, 0xFF, 0xFF
vertex -379, -222, 380, 1412, 114, 0xFF, 0xFF, 0xFF, 0xFF
vertex -410, -410, 0, 840, -444, 0xFF, 0xFF, 0xFF, 0xFF
vertex -156, -536, -156, 334, -408, 0xFF, 0xFF, 0xFF, 0xFF
vertex -222, -536, 0, 670, -350, 0xFF, 0xFF, 0xFF, 0xFF
chain_chomp_seg6_vertex_06023F00: # 0x06023F00
vertex -410, 0, -410, 44, -372, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 0, -581, -674, -30, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, -222, -536, -548, -222, 0xFF, 0xFF, 0xFF, 0xFF
vertex -379, -222, -379, 116, -538, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, -410, -410, -290, -308, 0xFF, 0xFF, 0xFF, 0xFF
vertex -290, -410, -290, 218, -550, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, -536, -222, 58, -276, 0xFF, 0xFF, 0xFF, 0xFF
vertex -156, -536, -156, 334, -408, 0xFF, 0xFF, 0xFF, 0xFF
vertex -290, -410, 291, 1210, -52, 0xFF, 0xFF, 0xFF, 0xFF
vertex -222, -536, 0, 670, -350, 0xFF, 0xFF, 0xFF, 0xFF
vertex -156, -536, 157, 870, -138, 0xFF, 0xFF, 0xFF, 0xFF
vertex -410, -410, 0, 840, -444, 0xFF, 0xFF, 0xFF, 0xFF
vertex -379, -222, 380, 1412, 114, 0xFF, 0xFF, 0xFF, 0xFF
vertex -536, -222, 0, 928, -400, 0xFF, 0xFF, 0xFF, 0xFF
vertex -410, 0, 411, 1446, 334, 0xFF, 0xFF, 0xFF, 0xFF
vertex -581, 0, 0, 924, -222, 0xFF, 0xFF, 0xFF, 0xFF
glabel chain_chomp_seg6_dl_06024000 # 0x06024000 - 0x06024040
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, chain_chomp_seg6_texture_060223D0
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPVertex chain_chomp_seg6_vertex_06023BD0, 5, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSP1Triangle 0, 4, 3, 0x0
gsSPEndDisplayList
glabel chain_chomp_seg6_dl_06024040 # 0x06024040 - 0x06024240
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, chain_chomp_seg6_texture_060213D0
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPVertex chain_chomp_seg6_vertex_06023C20, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 4, 0x0
gsSP2Triangles 0, 5, 1, 0x0, 0, 4, 5, 0x0
gsSP2Triangles 0, 6, 7, 0x0, 0, 8, 6, 0x0
gsSP2Triangles 0, 2, 8, 0x0, 0, 7, 3, 0x0
gsSP2Triangles 9, 6, 8, 0x0, 9, 10, 6, 0x0
gsSP2Triangles 10, 7, 6, 0x0, 10, 11, 7, 0x0
gsSP2Triangles 11, 3, 7, 0x0, 12, 10, 9, 0x0
gsSP2Triangles 12, 13, 10, 0x0, 13, 11, 10, 0x0
gsSP2Triangles 14, 12, 9, 0x0, 13, 15, 11, 0x0
gsSPVertex chain_chomp_seg6_vertex_06023D20, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 1, 0, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 7, 5, 0x0
gsSP2Triangles 7, 3, 5, 0x0, 7, 8, 3, 0x0
gsSP2Triangles 3, 9, 1, 0x0, 8, 9, 3, 0x0
gsSP2Triangles 8, 10, 9, 0x0, 11, 4, 6, 0x0
gsSP2Triangles 11, 6, 12, 0x0, 10, 13, 14, 0x0
gsSPVertex chain_chomp_seg6_vertex_06023E10, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 1, 0, 0x0
gsSP2Triangles 0, 2, 4, 0x0, 5, 6, 7, 0x0
gsSP2Triangles 5, 8, 6, 0x0, 9, 8, 5, 0x0
gsSP2Triangles 10, 11, 9, 0x0, 9, 11, 8, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex chain_chomp_seg6_vertex_06023F00, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 3, 2, 4, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 5, 4, 6, 0x0, 5, 6, 7, 0x0
gsSP2Triangles 8, 9, 10, 0x0, 8, 11, 9, 0x0
gsSP2Triangles 12, 11, 8, 0x0, 11, 5, 7, 0x0
gsSP2Triangles 13, 5, 11, 0x0, 12, 13, 11, 0x0
gsSP2Triangles 14, 13, 12, 0x0, 14, 15, 13, 0x0
gsSP2Triangles 15, 0, 3, 0x0, 13, 3, 5, 0x0
gsSP1Triangle 15, 3, 13, 0x0
gsSPEndDisplayList
glabel chain_chomp_seg6_dl_06024240 # 0x06024240 - 0x060242D0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPClearGeometryMode G_LIGHTING
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList chain_chomp_seg6_dl_06024000
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList chain_chomp_seg6_dl_06024040
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_LIGHTING
gsSPEndDisplayList
chain_chomp_seg6_vertex_060242D0: # 0x060242D0
vertex 157, 537, 157, -1116, 776, 0xFF, 0xFF, 0xFF, 0xFF
vertex 223, 537, 0, -898, 552, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 582, 0, -1454, 552, 0xFF, 0xFF, 0xFF, 0xFF
vertex 291, 411, 291, -832, 966, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 411, 411, -1600, 1136, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 537, 223, -1532, 870, 0xFF, 0xFF, 0xFF, 0xFF
vertex 157, 537, -156, -1004, 328, 0xFF, 0xFF, 0xFF, 0xFF
vertex 411, 411, 0, -428, 552, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 537, -222, -1374, 234, 0xFF, 0xFF, 0xFF, 0xFF
vertex -156, 537, 157, -1902, 776, 0xFF, 0xFF, 0xFF, 0xFF
vertex -156, 537, -156, -1790, 328, 0xFF, 0xFF, 0xFF, 0xFF
vertex -222, 537, 0, -2008, 552, 0xFF, 0xFF, 0xFF, 0xFF
vertex 380, 223, 380, -640, 1092, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 223, 537, -1646, 1316, 0xFF, 0xFF, 0xFF, 0xFF
chain_chomp_seg6_vertex_060243B0: # 0x060243B0
vertex 0, 411, -410, -1306, -34, 0xFF, 0xFF, 0xFF, 0xFF
vertex 291, 411, -290, -624, 138, 0xFF, 0xFF, 0xFF, 0xFF
vertex 380, 223, -379, -370, 10, 0xFF, 0xFF, 0xFF, 0xFF
vertex 411, 411, 0, -428, 552, 0xFF, 0xFF, 0xFF, 0xFF
vertex 537, 223, 0, -112, 552, 0xFF, 0xFF, 0xFF, 0xFF
vertex 380, 223, 380, -640, 1092, 0xFF, 0xFF, 0xFF, 0xFF
vertex 157, 537, -156, -1004, 328, 0xFF, 0xFF, 0xFF, 0xFF
vertex 411, 0, 411, -574, 1136, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 0, 582, -1660, 1380, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 223, 537, -1646, 1316, 0xFF, 0xFF, 0xFF, 0xFF
vertex 582, 0, 0, -4, 552, 0xFF, 0xFF, 0xFF, 0xFF
vertex 411, 0, -410, -280, -34, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 223, -536, -1262, -214, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 411, 411, -1600, 1136, 0xFF, 0xFF, 0xFF, 0xFF
vertex -290, 411, 291, -2282, 966, 0xFF, 0xFF, 0xFF, 0xFF
vertex -379, 223, 380, -2538, 1092, 0xFF, 0xFF, 0xFF, 0xFF
chain_chomp_seg6_vertex_060244B0: # 0x060244B0
vertex 0, 223, -536, -1262, -214, 0xFF, 0xFF, 0xFF, 0xFF
vertex 411, 0, -410, -280, -34, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 0, -581, -1246, -278, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 537, -222, -1374, 234, 0xFF, 0xFF, 0xFF, 0xFF
vertex 157, 537, -156, -1004, 328, 0xFF, 0xFF, 0xFF, 0xFF
vertex 291, 411, -290, -624, 138, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 411, -410, -1306, -34, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 537, 223, -1532, 870, 0xFF, 0xFF, 0xFF, 0xFF
vertex -290, 411, 291, -2282, 966, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 411, 411, -1600, 1136, 0xFF, 0xFF, 0xFF, 0xFF
vertex -156, 537, 157, -1902, 776, 0xFF, 0xFF, 0xFF, 0xFF
vertex -379, 223, 380, -2538, 1092, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 223, 537, -1646, 1316, 0xFF, 0xFF, 0xFF, 0xFF
vertex -410, 0, 411, -2626, 1136, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 0, 582, -1660, 1380, 0xFF, 0xFF, 0xFF, 0xFF
vertex -379, 223, -379, -2266, 10, 0xFF, 0xFF, 0xFF, 0xFF
chain_chomp_seg6_vertex_060245B0: # 0x060245B0
vertex -290, 411, -290, -2076, 138, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 223, -536, -1262, -214, 0xFF, 0xFF, 0xFF, 0xFF
vertex -379, 223, -379, -2266, 10, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 411, -410, -1306, -34, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 0, -581, -1246, -278, 0xFF, 0xFF, 0xFF, 0xFF
vertex -410, 0, -410, -2334, -34, 0xFF, 0xFF, 0xFF, 0xFF
vertex -156, 537, -156, -1790, 328, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 537, -222, -1374, 234, 0xFF, 0xFF, 0xFF, 0xFF
vertex -156, 537, 157, -1902, 776, 0xFF, 0xFF, 0xFF, 0xFF
vertex -410, 411, 0, -2480, 552, 0xFF, 0xFF, 0xFF, 0xFF
vertex -290, 411, 291, -2282, 966, 0xFF, 0xFF, 0xFF, 0xFF
vertex -536, 223, 0, -2794, 552, 0xFF, 0xFF, 0xFF, 0xFF
vertex -379, 223, 380, -2538, 1092, 0xFF, 0xFF, 0xFF, 0xFF
vertex -581, 0, 0, -2904, 552, 0xFF, 0xFF, 0xFF, 0xFF
vertex -410, 0, 411, -2626, 1136, 0xFF, 0xFF, 0xFF, 0xFF
vertex -222, 537, 0, -2008, 552, 0xFF, 0xFF, 0xFF, 0xFF
chain_chomp_seg6_vertex_060246B0: # 0x060246B0
vertex 0, 0, -581, 1154, 138, 0xFF, 0xFF, 0xFF, 0xFF
vertex 582, 0, 0, 470, 1104, 0xFF, 0xFF, 0xFF, 0xFF
vertex 411, 0, 411, -12, 822, 0xFF, 0xFF, 0xFF, 0xFF
vertex 0, 0, 582, -210, 138, 0xFF, 0xFF, 0xFF, 0xFF
vertex 411, 0, -410, 954, 822, 0xFF, 0xFF, 0xFF, 0xFF
glabel chain_chomp_seg6_dl_06024700 # 0x06024700 - 0x06024900
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, chain_chomp_seg6_texture_06021BD0
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPVertex chain_chomp_seg6_vertex_060242D0, 14, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 0, 3, 0x0
gsSP2Triangles 0, 4, 3, 0x0, 5, 0, 2, 0x0
gsSP2Triangles 0, 5, 4, 0x0, 6, 1, 7, 0x0
gsSP2Triangles 1, 3, 7, 0x0, 1, 6, 2, 0x0
gsSP2Triangles 6, 8, 2, 0x0, 9, 5, 2, 0x0
gsSP2Triangles 8, 10, 2, 0x0, 10, 11, 2, 0x0
gsSP2Triangles 11, 9, 2, 0x0, 7, 3, 12, 0x0
gsSP2Triangles 3, 13, 12, 0x0, 3, 4, 13, 0x0
gsSPVertex chain_chomp_seg6_vertex_060243B0, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 1, 3, 4, 0x0
gsSP2Triangles 3, 5, 4, 0x0, 6, 3, 1, 0x0
gsSP2Triangles 4, 5, 7, 0x0, 5, 8, 7, 0x0
gsSP2Triangles 5, 9, 8, 0x0, 2, 4, 10, 0x0
gsSP2Triangles 1, 4, 2, 0x0, 4, 7, 10, 0x0
gsSP2Triangles 2, 10, 11, 0x0, 12, 2, 11, 0x0
gsSP2Triangles 0, 2, 12, 0x0, 13, 14, 15, 0x0
gsSPVertex chain_chomp_seg6_vertex_060244B0, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 3, 5, 6, 0x0, 7, 8, 9, 0x0
gsSP2Triangles 7, 10, 8, 0x0, 9, 11, 12, 0x0
gsSP2Triangles 12, 11, 13, 0x0, 12, 13, 14, 0x0
gsSP1Triangle 15, 0, 2, 0x0
gsSPVertex chain_chomp_seg6_vertex_060245B0, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSP2Triangles 2, 4, 5, 0x0, 6, 3, 0, 0x0
gsSP2Triangles 6, 7, 3, 0x0, 8, 9, 10, 0x0
gsSP2Triangles 9, 0, 2, 0x0, 10, 11, 12, 0x0
gsSP2Triangles 10, 9, 11, 0x0, 12, 13, 14, 0x0
gsSP2Triangles 12, 11, 13, 0x0, 11, 2, 5, 0x0
gsSP2Triangles 9, 2, 11, 0x0, 11, 5, 13, 0x0
gsSP2Triangles 15, 0, 9, 0x0, 15, 6, 0, 0x0
gsSP1Triangle 8, 15, 9, 0x0
gsSPEndDisplayList
glabel chain_chomp_seg6_dl_06024900 # 0x06024900 - 0x06024940
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, chain_chomp_seg6_texture_060223D0
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPVertex chain_chomp_seg6_vertex_060246B0, 5, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP1Triangle 0, 4, 1, 0x0
gsSPEndDisplayList
glabel chain_chomp_seg6_dl_06024940 # 0x06024940 - 0x060249D0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPClearGeometryMode G_LIGHTING
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList chain_chomp_seg6_dl_06024700
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList chain_chomp_seg6_dl_06024900
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_LIGHTING
gsSPEndDisplayList
chain_chomp_seg6_light_060249D0: # 0x060249D0
.byte 0x66, 0x66, 0x66, 0x00, 0x66, 0x66, 0x66, 0x00
chain_chomp_seg6_light_060249D8: # 0x060249D8
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
chain_chomp_seg6_vertex_060249E8: # 0x060249E8
vertex 341, -287, 410, 990, 0, 0x69, 0xE7, 0x41, 0xFF
vertex 505, -32, 246, 0, 990, 0x69, 0xE7, 0x41, 0xFF
vertex 374, -49, 450, 990, 990, 0x69, 0xE7, 0x41, 0xFF
vertex 341, -287, 410, 990, 0, 0x69, 0xE7, 0x42, 0xFF
vertex 473, -270, 206, 0, 0, 0x69, 0xE7, 0x42, 0xFF
vertex 505, -32, 246, 0, 990, 0x69, 0xE7, 0x42, 0xFF
vertex 374, -49, -449, 990, 990, 0x69, 0xE7, 0xBF, 0xFF
vertex 505, -32, -245, 0, 990, 0x69, 0xE7, 0xBF, 0xFF
vertex 341, -287, -409, 990, 0, 0x69, 0xE7, 0xBF, 0xFF
vertex 505, -32, -245, 0, 990, 0x69, 0xE7, 0xBE, 0xFF
vertex 473, -270, -205, 0, 0, 0x69, 0xE7, 0xBE, 0xFF
vertex 341, -287, -409, 990, 0, 0x69, 0xE7, 0xBE, 0xFF
glabel chain_chomp_seg6_dl_06024AA8 # 0x06024AA8 - 0x06024B00
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, chain_chomp_seg6_texture_060233D0
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPLight chain_chomp_seg6_light_060249D8, 1
gsSPLight chain_chomp_seg6_light_060249D0, 2
gsSPVertex chain_chomp_seg6_vertex_060249E8, 12, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSPEndDisplayList
glabel chain_chomp_seg6_dl_06024B00 # 0x06024B00 - 0x06024B70
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_TEXEL0, G_ACMUX_0, G_ACMUX_SHADE, G_ACMUX_0
gsSPClearGeometryMode G_SHADING_SMOOTH
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList chain_chomp_seg6_dl_06024AA8
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_SHADING_SMOOTH
gsSPEndDisplayList
chain_chomp_seg6_vertex_06024B70: # 0x06024B70
vertex 568, -6, 1, -466, -52, 0xFF, 0xFF, 0xFF, 0xFF
vertex 458, 227, 139, 756, 806, 0xFF, 0xFF, 0xFF, 0xFF
vertex 462, -6, 263, 652, -626, 0xFF, 0xFF, 0xFF, 0xFF
vertex 182, -6, -493, -90, 384, 0xFF, 0xFF, 0xFF, 0xFF
vertex 225, 72, -473, 664, 930, 0xFF, 0xFF, 0xFF, 0xFF
vertex 284, -6, -454, 666, -726, 0xFF, 0xFF, 0xFF, 0xFF
vertex 284, -6, -454, -306, 174, 0xFF, 0xFF, 0xFF, 0xFF
vertex 325, 107, -419, 680, 1044, 0xFF, 0xFF, 0xFF, 0xFF
vertex 403, -6, -403, 772, -792, 0xFF, 0xFF, 0xFF, 0xFF
vertex 403, -6, -403, -114, 10, 0xFF, 0xFF, 0xFF, 0xFF
vertex 379, 160, -332, 526, 1002, 0xFF, 0xFF, 0xFF, 0xFF
vertex 462, -6, -262, 578, -702, 0xFF, 0xFF, 0xFF, 0xFF
vertex 462, -6, -262, -172, 58, 0xFF, 0xFF, 0xFF, 0xFF
vertex 458, 227, -138, 838, 944, 0xFF, 0xFF, 0xFF, 0xFF
vertex 568, -6, 1, 916, -848, 0xFF, 0xFF, 0xFF, 0xFF
chain_chomp_seg6_vertex_06024C60: # 0x06024C60
vertex 284, -6, 455, -250, 814, 0xFF, 0xFF, 0xFF, 0xFF
vertex 225, 72, 474, 530, 1852, 0xFF, 0xFF, 0xFF, 0xFF
vertex 182, -6, 494, 764, 134, 0xFF, 0xFF, 0xFF, 0xFF
vertex 462, -6, 263, -108, 910, 0xFF, 0xFF, 0xFF, 0xFF
vertex 379, 160, 333, 930, 1682, 0xFF, 0xFF, 0xFF, 0xFF
vertex 403, -6, 404, 670, 278, 0xFF, 0xFF, 0xFF, 0xFF
vertex 403, -6, 404, -412, 892, 0xFF, 0xFF, 0xFF, 0xFF
vertex 325, 107, 420, 430, 1696, 0xFF, 0xFF, 0xFF, 0xFF
vertex 284, -6, 455, 482, 364, 0xFF, 0xFF, 0xFF, 0xFF
glabel chain_chomp_seg6_dl_06024CF0 # 0x06024CF0 - 0x06024D60
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, chain_chomp_seg6_texture_06022BD0
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPVertex chain_chomp_seg6_vertex_06024B70, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex chain_chomp_seg6_vertex_06024C60, 9, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP1Triangle 6, 7, 8, 0x0
gsSPEndDisplayList
glabel chain_chomp_seg6_dl_06024D60 # 0x06024D60 - 0x06024DD0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPClearGeometryMode G_LIGHTING | G_CULL_BACK
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList chain_chomp_seg6_dl_06024CF0
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_LIGHTING | G_CULL_BACK
gsSPEndDisplayList
chain_chomp_seg6_vertex_06024DD0: # 0x06024DD0
vertex 462, 7, 263, 1768, -234, 0xFF, 0xFF, 0xFF, 0xFF
vertex 455, -211, 139, 702, -864, 0xFF, 0xFF, 0xFF, 0xFF
vertex 568, 7, 1, 294, 704, 0xFF, 0xFF, 0xFF, 0xFF
vertex 284, 7, -454, 1636, -244, 0xFF, 0xFF, 0xFF, 0xFF
vertex 225, -71, -473, 768, -746, 0xFF, 0xFF, 0xFF, 0xFF
vertex 182, 7, -493, 594, 640, 0xFF, 0xFF, 0xFF, 0xFF
vertex 403, 7, -403, 1486, -364, 0xFF, 0xFF, 0xFF, 0xFF
vertex 325, -105, -418, 94, -766, 0xFF, 0xFF, 0xFF, 0xFF
vertex 284, 7, -454, 268, 516, 0xFF, 0xFF, 0xFF, 0xFF
vertex 462, 7, -262, 1448, -274, 0xFF, 0xFF, 0xFF, 0xFF
vertex 403, -156, -332, 112, -638, 0xFF, 0xFF, 0xFF, 0xFF
vertex 403, 7, -403, 202, 610, 0xFF, 0xFF, 0xFF, 0xFF
vertex 568, 7, 1, 1208, -184, 0xFF, 0xFF, 0xFF, 0xFF
vertex 455, -211, -138, 440, -848, 0xFF, 0xFF, 0xFF, 0xFF
vertex 462, 7, -262, 446, 714, 0xFF, 0xFF, 0xFF, 0xFF
chain_chomp_seg6_vertex_06024EC0: # 0x06024EC0
vertex 182, 7, 494, 860, 726, 0xFF, 0xFF, 0xFF, 0xFF
vertex 225, -71, 474, 378, 266, 0xFF, 0xFF, 0xFF, 0xFF
vertex 284, 7, 455, 288, 1474, 0xFF, 0xFF, 0xFF, 0xFF
vertex 403, 7, 404, 1210, 638, 0xFF, 0xFF, 0xFF, 0xFF
vertex 403, -156, 333, 294, 170, 0xFF, 0xFF, 0xFF, 0xFF
vertex 462, 7, 263, 160, 1602, 0xFF, 0xFF, 0xFF, 0xFF
vertex 284, 7, 455, 830, 718, 0xFF, 0xFF, 0xFF, 0xFF
vertex 325, -105, 419, 360, 204, 0xFF, 0xFF, 0xFF, 0xFF
vertex 403, 7, 404, 192, 1584, 0xFF, 0xFF, 0xFF, 0xFF
glabel chain_chomp_seg6_dl_06024F50 # 0x06024F50 - 0x06024FC0
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, chain_chomp_seg6_texture_06022BD0
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPVertex chain_chomp_seg6_vertex_06024DD0, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 6, 7, 8, 0x0, 9, 10, 11, 0x0
gsSP1Triangle 12, 13, 14, 0x0
gsSPVertex chain_chomp_seg6_vertex_06024EC0, 9, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP1Triangle 6, 7, 8, 0x0
gsSPEndDisplayList
glabel chain_chomp_seg6_dl_06024FC0 # 0x06024FC0 - 0x06025030
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPClearGeometryMode G_LIGHTING | G_CULL_BACK
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList chain_chomp_seg6_dl_06024F50
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_LIGHTING | G_CULL_BACK
gsSPEndDisplayList
chain_chomp_seg6_animvalue_06025030: # 0x06025030
.hword 0x0000, 0x3FFF, 0x9602, 0x9483, 0x90D2, 0x8C1B, 0x878E, 0x845A
.hword 0x83AC, 0x88AE, 0x9264, 0x9BC5, 0x9FC9, 0x9C7C, 0x950F, 0x8C27
.hword 0x846D, 0x808A, 0x8348, 0x8ABB, 0x9273, 0x9602, 0x6FB2, 0x70C6
.hword 0x7369, 0x76BA, 0x79D6, 0x7BDD, 0x7BEB, 0x7752, 0x6ED7, 0x66CA
.hword 0x6379, 0x6692, 0x6D54, 0x756C, 0x7C87, 0x8054, 0x7E7C, 0x78B0
.hword 0x728D, 0x6FB2, 0x9602, 0x9483, 0x90D2, 0x8C1B, 0x878E, 0x845A
.hword 0x83AC, 0x88AE, 0x9264, 0x9BC5, 0x9FC9, 0x9C7C, 0x950F, 0x8C27
.hword 0x846D, 0x808A, 0x8348, 0x8ABB, 0x9273, 0x9602, 0x6FB2, 0x70C6
.hword 0x7369, 0x76BA, 0x79D6, 0x7BDD, 0x7BEB, 0x7752, 0x6ED7, 0x66CA
.hword 0x6379, 0x6692, 0x6D54, 0x756C, 0x7C87, 0x8054, 0x7E7C, 0x78B0
.hword 0x728D, 0x6FB2, 0x6FB2, 0x70C6, 0x7369, 0x76BA, 0x79D6, 0x7BDD
.hword 0x7BEB, 0x7752, 0x6ED7, 0x66CA, 0x6379, 0x6692, 0x6D54, 0x756C
.hword 0x7C87, 0x8054, 0x7E7C, 0x78B0, 0x728D, 0x6FB2, 0x3FFF, 0x0000
chain_chomp_seg6_animindex_06025100: # 0x06025100
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0001, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0014, 0x002A, 0x0001, 0x0000, 0x0001, 0x0000, 0x0014, 0x0002
.hword 0x0001, 0x0000, 0x0001, 0x0066, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0014, 0x0052, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0014, 0x003E, 0x0001, 0x0000, 0x0001, 0x0000, 0x0014, 0x0016
chain_chomp_seg6_anim_06025160: # 0x06025160
.hword 0
.hword 0
.hword 0
.hword 0
.hword 0x14
.hword 0x07
.word chain_chomp_seg6_animvalue_06025030
.word chain_chomp_seg6_animindex_06025100
.word 0
glabel chain_chomp_seg6_anims_06025178 # 0x06025178
.word chain_chomp_seg6_anim_06025160
.word 0

2
actors/chair/collision.s Normal file
View file

@ -0,0 +1,2 @@
# Chair

27
actors/chair/geo.s Normal file
View file

@ -0,0 +1,27 @@
glabel haunted_chair_geo # 0x0C0000D8
geo_shadow SHADOW_CIRCLE_4_VERTS, 0x96, 100
geo_open_node
geo_scale 0x00, 16384
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, chair_seg5_dl_05005190
geo_open_node
geo_animated_part LAYER_OPAQUE, -7, -9, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, chair_seg5_dl_05005680
geo_close_node
geo_animated_part LAYER_OPAQUE, 156, -9, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, chair_seg5_dl_05005408
geo_close_node
geo_animated_part LAYER_OPAQUE, -3, 17, 0
geo_open_node
geo_animated_part LAYER_OPAQUE, 0, 0, 0, chair_seg5_dl_05004EE8
geo_close_node
geo_close_node
geo_close_node
geo_close_node
geo_close_node
geo_close_node #! more close than open nodes
geo_end

315
actors/chair/model.s Normal file
View file

@ -0,0 +1,315 @@
# Chair
# Unreferenced light
.byte 0x19, 0x0D, 0x06, 0x00, 0x19, 0x0D, 0x06, 0x00
.byte 0x64, 0x36, 0x1A, 0x00, 0x64, 0x36, 0x1A, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
chair_seg5_texture_05003060: # 0x05003060
.incbin "actors/chair/chair_front.rgba16"
chair_seg5_texture_05003860: # 0x05003860
.incbin "actors/chair/chair_leg.rgba16"
chair_seg5_texture_05004060: # 0x05004060
.incbin "actors/chair/chair_bottom.rgba16"
# unreferenced
chair_seg5_texture_05004460: # 0x05004460
.incbin "actors/chair/chair_surface_unused.rgba16"
chair_seg5_light_05004C60: # 0x05004C60
.byte 0x47, 0x47, 0x47, 0x00, 0x47, 0x47, 0x47, 0x00
chair_seg5_light_05004C68: # 0x05004C68
.byte 0xB2, 0xB2, 0xB2, 0x00, 0xB2, 0xB2, 0xB2, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
chair_seg5_vertex_05004C78: # 0x05004C78
vertex 334, -20, 1, 474, -182, 0x77, 0x00, 0xD6, 0xFF
vertex 287, -20, -132, 1212, 58, 0x77, 0x00, 0xD6, 0xFF
vertex 334, 25, 1, 474, -182, 0x77, 0x00, 0xD6, 0xFF
vertex 334, 25, 1, 474, -182, 0x77, 0x00, 0x2A, 0xFF
vertex 287, 25, 134, -262, 58, 0x77, 0x00, 0x2A, 0xFF
vertex 334, -20, 1, 474, -182, 0x77, 0x00, 0x2A, 0xFF
vertex 287, -20, 134, -262, 58, 0x77, 0x00, 0x2A, 0xFF
vertex 287, -20, -132, 1212, 58, 0x00, 0x81, 0x00, 0xFF
vertex 334, -20, 1, 474, -182, 0x00, 0x81, 0x00, 0xFF
vertex 287, -20, 134, -262, 58, 0x00, 0x81, 0x00, 0xFF
vertex -7, -20, -91, 986, 1536, 0xEF, 0x00, 0x83, 0xFF
vertex -7, 25, -91, 986, 1536, 0xEF, 0x00, 0x83, 0xFF
vertex 287, -20, -132, 1212, 58, 0xEF, 0x00, 0x83, 0xFF
vertex 287, 25, -132, 1212, 58, 0xEF, 0x00, 0x83, 0xFF
vertex 287, 25, -132, 1212, 58, 0x77, 0x00, 0xD6, 0xFF
vertex -7, -20, -91, 986, 1536, 0x00, 0x81, 0x00, 0xFF
chair_seg5_vertex_05004D78: # 0x05004D78
vertex 287, 25, 134, -262, 58, 0x00, 0x7F, 0x00, 0xFF
vertex 334, 25, 1, 474, -182, 0x00, 0x7F, 0x00, 0xFF
vertex 287, 25, -132, 1212, 58, 0x00, 0x7F, 0x00, 0xFF
vertex -7, 25, -91, 986, 1536, 0x00, 0x7F, 0x00, 0xFF
vertex -7, 25, 93, -34, 1536, 0x00, 0x7F, 0x00, 0xFF
vertex -7, -20, 93, -34, 1536, 0xEF, 0x00, 0x7D, 0xFF
vertex 287, -20, 134, -262, 58, 0xEF, 0x00, 0x7D, 0xFF
vertex 287, 25, 134, -262, 58, 0xEF, 0x00, 0x7D, 0xFF
vertex -7, 25, 93, -34, 1536, 0xEF, 0x00, 0x7D, 0xFF
vertex -7, -20, 93, -34, 1536, 0x00, 0x81, 0x00, 0xFF
vertex -7, -20, -91, 986, 1536, 0x00, 0x81, 0x00, 0xFF
vertex 287, -20, 134, -262, 58, 0x00, 0x81, 0x00, 0xFF
glabel chair_seg5_dl_05004E38 # 0x05004E38 - 0x05004EE8
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, chair_seg5_texture_05003060
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPLight chair_seg5_light_05004C68, 1
gsSPLight chair_seg5_light_05004C60, 2
gsSPVertex chair_seg5_vertex_05004C78, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 4, 6, 5, 0x0, 7, 8, 9, 0x0
gsSP2Triangles 10, 11, 12, 0x0, 11, 13, 12, 0x0
gsSP2Triangles 1, 14, 2, 0x0, 15, 7, 9, 0x0
gsSPVertex chair_seg5_vertex_05004D78, 12, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 2, 0x0
gsSP2Triangles 4, 0, 2, 0x0, 5, 6, 7, 0x0
gsSP2Triangles 8, 5, 7, 0x0, 9, 10, 11, 0x0
gsSPEndDisplayList
glabel chair_seg5_dl_05004EE8 # 0x05004EE8 - 0x05004F58
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPClearGeometryMode G_SHADING_SMOOTH
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList chair_seg5_dl_05004E38
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_SHADING_SMOOTH
gsSPEndDisplayList
chair_seg5_light_05004F58: # 0x05004F58
.byte 0x47, 0x47, 0x47, 0x00, 0x47, 0x47, 0x47, 0x00
chair_seg5_light_05004F60: # 0x05004F60
.byte 0xB2, 0xB2, 0xB2, 0x00, 0xB2, 0xB2, 0xB2, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
chair_seg5_vertex_05004F70: # 0x05004F70
vertex 208, -20, -125, 1934, 0, 0x00, 0x00, 0x81, 0xFF
vertex -38, 24, -125, 1935, 990, 0x00, 0x00, 0x81, 0xFF
vertex 208, 24, -125, 1934, 0, 0x00, 0x00, 0x81, 0xFF
vertex 208, 24, -125, 1934, 0, 0x00, 0x7F, 0x00, 0xFF
vertex -38, 24, 127, -20, 990, 0x00, 0x7F, 0x00, 0xFF
vertex 208, 24, 127, -21, 0, 0x00, 0x7F, 0x00, 0xFF
vertex -38, 24, -125, 1935, 990, 0x00, 0x7F, 0x00, 0xFF
vertex 208, -20, 127, -21, 0, 0x7F, 0x00, 0x00, 0xFF
vertex 208, 24, -125, 1934, 0, 0x7F, 0x00, 0x00, 0xFF
vertex 208, 24, 127, -21, 0, 0x7F, 0x00, 0x00, 0xFF
vertex 208, -20, -125, 1934, 0, 0x7F, 0x00, 0x00, 0xFF
vertex -38, -20, -125, 1935, 990, 0x81, 0x00, 0x00, 0xFF
vertex -38, 24, 127, -20, 990, 0x81, 0x00, 0x00, 0xFF
vertex -38, 24, -125, 1935, 990, 0x81, 0x00, 0x00, 0xFF
vertex -38, -20, 127, -20, 990, 0x81, 0x00, 0x00, 0xFF
vertex -38, -20, -125, 1935, 990, 0x00, 0x00, 0x81, 0xFF
chair_seg5_vertex_05005070: # 0x05005070
vertex 208, -20, 127, -21, 0, 0x00, 0x81, 0x00, 0xFF
vertex -38, -20, -125, 1935, 990, 0x00, 0x81, 0x00, 0xFF
vertex 208, -20, -125, 1934, 0, 0x00, 0x81, 0x00, 0xFF
vertex -38, -20, 127, -20, 990, 0x00, 0x81, 0x00, 0xFF
vertex -38, -20, 127, 577, 990, 0x00, 0x00, 0x7F, 0xFF
vertex 208, -20, 127, 511, 0, 0x00, 0x00, 0x7F, 0xFF
vertex 208, 24, 127, 511, 0, 0x00, 0x00, 0x7F, 0xFF
vertex -38, 24, 127, 577, 990, 0x00, 0x00, 0x7F, 0xFF
glabel chair_seg5_dl_050050F0 # 0x050050F0 - 0x05005190
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, chair_seg5_texture_05004060
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x1FF, 0x200
gsSPLight chair_seg5_light_05004F60, 1
gsSPLight chair_seg5_light_05004F58, 2
gsSPVertex chair_seg5_vertex_05004F70, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 3, 6, 4, 0x0, 7, 8, 9, 0x0
gsSP2Triangles 7, 10, 8, 0x0, 11, 12, 13, 0x0
gsSP2Triangles 11, 14, 12, 0x0, 0, 15, 1, 0x0
gsSPVertex chair_seg5_vertex_05005070, 8, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 3, 1, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 6, 7, 0x0
gsSPEndDisplayList
glabel chair_seg5_dl_05005190 # 0x05005190 - 0x05005200
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPClearGeometryMode G_SHADING_SMOOTH
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 4, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 4, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 60, 124
gsSPDisplayList chair_seg5_dl_050050F0
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_SHADING_SMOOTH
gsSPEndDisplayList
chair_seg5_light_05005200: # 0x05005200
.byte 0x47, 0x47, 0x47, 0x00, 0x47, 0x47, 0x47, 0x00
chair_seg5_light_05005208: # 0x05005208
.byte 0xB2, 0xB2, 0xB2, 0x00, 0xB2, 0xB2, 0xB2, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
chair_seg5_vertex_05005218: # 0x05005218
vertex 146, -22, 104, 998, 990, 0xEF, 0x00, 0x7D, 0xFF
vertex 146, 26, 104, 998, 990, 0xEF, 0x00, 0x7D, 0xFF
vertex -8, 26, 82, 886, -24, 0xEF, 0x00, 0x7D, 0xFF
vertex 146, 26, 104, 998, 990, 0x7F, 0x00, 0x00, 0xFF
vertex 146, -22, -102, 0, 990, 0x7F, 0x00, 0x00, 0xFF
vertex 146, 26, -102, 0, 990, 0x7F, 0x00, 0x00, 0xFF
vertex 146, -22, 104, 998, 990, 0x7F, 0x00, 0x00, 0xFF
vertex 146, 26, 104, 998, 990, 0x00, 0x7F, 0x00, 0xFF
vertex -8, 26, -79, 78, -24, 0x00, 0x7F, 0x00, 0xFF
vertex -8, 26, 82, 886, -24, 0x00, 0x7F, 0x00, 0xFF
vertex 146, 26, -102, 0, 990, 0x00, 0x7F, 0x00, 0xFF
vertex 146, -22, -102, 0, 990, 0x00, 0x81, 0x00, 0xFF
vertex -8, -22, 82, 886, -24, 0x00, 0x81, 0x00, 0xFF
vertex -8, -22, -79, 78, -24, 0x00, 0x81, 0x00, 0xFF
vertex 146, -22, 104, 998, 990, 0x00, 0x81, 0x00, 0xFF
chair_seg5_vertex_05005308: # 0x05005308
vertex 146, 26, -102, 0, 990, 0xEE, 0x00, 0x83, 0xFF
vertex 146, -22, -102, 0, 990, 0xEE, 0x00, 0x83, 0xFF
vertex -8, -22, -79, 78, -24, 0xEE, 0x00, 0x83, 0xFF
vertex -8, 26, -79, 78, -24, 0xEE, 0x00, 0x83, 0xFF
vertex 146, -22, 104, 998, 990, 0xEF, 0x00, 0x7D, 0xFF
vertex -8, 26, 82, 886, -24, 0xEF, 0x00, 0x7D, 0xFF
vertex -8, -22, 82, 886, -24, 0xEF, 0x00, 0x7D, 0xFF
glabel chair_seg5_dl_05005378 # 0x05005378 - 0x05005408
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, chair_seg5_texture_05003860
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPLight chair_seg5_light_05005208, 1
gsSPLight chair_seg5_light_05005200, 2
gsSPVertex chair_seg5_vertex_05005218, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 3, 6, 4, 0x0, 7, 8, 9, 0x0
gsSP2Triangles 7, 10, 8, 0x0, 11, 12, 13, 0x0
gsSP1Triangle 11, 14, 12, 0x0
gsSPVertex chair_seg5_vertex_05005308, 7, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP1Triangle 4, 5, 6, 0x0
gsSPEndDisplayList
glabel chair_seg5_dl_05005408 # 0x05005408 - 0x05005478
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPClearGeometryMode G_SHADING_SMOOTH
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList chair_seg5_dl_05005378
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_SHADING_SMOOTH
gsSPEndDisplayList
chair_seg5_light_05005478: # 0x05005478
.byte 0x47, 0x47, 0x47, 0x00, 0x47, 0x47, 0x47, 0x00
chair_seg5_light_05005480: # 0x05005480
.byte 0xB2, 0xB2, 0xB2, 0x00, 0xB2, 0xB2, 0xB2, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
chair_seg5_vertex_05005490: # 0x05005490
vertex 146, -19, 104, 998, 990, 0xEF, 0x00, 0x7D, 0xFF
vertex 146, 29, 104, 998, 990, 0xEF, 0x00, 0x7D, 0xFF
vertex -8, 29, 82, 886, -40, 0xEF, 0x00, 0x7D, 0xFF
vertex 146, 29, 104, 998, 990, 0x7F, 0x00, 0x00, 0xFF
vertex 146, -19, -102, 0, 990, 0x7F, 0x00, 0x00, 0xFF
vertex 146, 29, -102, 0, 990, 0x7F, 0x00, 0x00, 0xFF
vertex 146, -19, 104, 998, 990, 0x7F, 0x00, 0x00, 0xFF
vertex 146, 29, 104, 998, 990, 0x00, 0x7F, 0x00, 0xFF
vertex -8, 29, -79, 78, -40, 0x00, 0x7F, 0x00, 0xFF
vertex -8, 29, 82, 886, -40, 0x00, 0x7F, 0x00, 0xFF
vertex 146, 29, -102, 0, 990, 0x00, 0x7F, 0x00, 0xFF
vertex 146, -19, -102, 0, 990, 0x00, 0x81, 0x00, 0xFF
vertex -8, -19, 82, 886, -40, 0x00, 0x81, 0x00, 0xFF
vertex -8, -19, -79, 78, -40, 0x00, 0x81, 0x00, 0xFF
vertex 146, -19, 104, 998, 990, 0x00, 0x81, 0x00, 0xFF
chair_seg5_vertex_05005580: # 0x05005580
vertex 146, 29, -102, 0, 990, 0xEE, 0x00, 0x83, 0xFF
vertex 146, -19, -102, 0, 990, 0xEE, 0x00, 0x83, 0xFF
vertex -8, -19, -79, 78, -40, 0xEE, 0x00, 0x83, 0xFF
vertex -8, 29, -79, 78, -40, 0xEE, 0x00, 0x83, 0xFF
vertex 146, -19, 104, 998, 990, 0xEF, 0x00, 0x7D, 0xFF
vertex -8, 29, 82, 886, -40, 0xEF, 0x00, 0x7D, 0xFF
vertex -8, -19, 82, 886, -40, 0xEF, 0x00, 0x7D, 0xFF
glabel chair_seg5_dl_050055F0 # 0x050055F0 - 0x05005680
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, chair_seg5_texture_05003860
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPLight chair_seg5_light_05005480, 1
gsSPLight chair_seg5_light_05005478, 2
gsSPVertex chair_seg5_vertex_05005490, 15, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 3, 6, 4, 0x0, 7, 8, 9, 0x0
gsSP2Triangles 7, 10, 8, 0x0, 11, 12, 13, 0x0
gsSP1Triangle 11, 14, 12, 0x0
gsSPVertex chair_seg5_vertex_05005580, 7, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP1Triangle 4, 5, 6, 0x0
gsSPEndDisplayList
glabel chair_seg5_dl_05005680 # 0x05005680 - 0x050056F0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPClearGeometryMode G_SHADING_SMOOTH
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList chair_seg5_dl_050055F0
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_SHADING_SMOOTH
gsSPEndDisplayList
chair_seg5_animvalue_050056F0: # 0x050056F0
.hword 0x0000, 0x0099, 0xFFAA, 0xC001, 0xC001, 0xC001, 0x3FFF, 0x0000
chair_seg5_animindex_05005700: # 0x05005700
.hword 0x0001, 0x0000, 0x0001, 0x0001, 0x0001, 0x0002, 0x0001, 0x0000
.hword 0x0001, 0x0003, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0004, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0005, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000
.hword 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0006
chair_seg5_anim_0500576C: # 0x0500576C
.hword 0
.hword 0
.hword 0
.hword 0
.hword 0x64
.hword 0x08
.word chair_seg5_animvalue_050056F0
.word chair_seg5_animindex_05005700
.word 0
glabel chair_seg5_anims_05005784 # 0x05005784
.word chair_seg5_anim_0500576C

View file

@ -0,0 +1,29 @@
# Checkerboard Platform
glabel checkerboard_platform_seg8_collision_0800D710 # 0x0800D710 - 0x0800D794
colInit
colVertexInit 0x8
colVertex 256, -25, -153
colVertex 256, 26, -153
colVertex 256, 26, 154
colVertex -255, 26, -153
colVertex -255, 26, 154
colVertex -255, -25, -153
colVertex -255, -25, 154
colVertex 256, -25, 154
colTriInit SURFACE_WALL_MISC, 12
colTri 0, 1, 2
colTri 1, 3, 4
colTri 1, 4, 2
colTri 5, 3, 1
colTri 5, 1, 0
colTri 6, 4, 3
colTri 6, 3, 5
colTri 7, 4, 6
colTri 7, 2, 4
colTri 0, 2, 7
colTri 7, 6, 5
colTri 7, 5, 0
colTriStop
colEnd

View file

@ -0,0 +1,6 @@
glabel checkerboard_platform_geo # 0x0F0004E4
geo_culling_radius 400
geo_open_node
geo_display_list LAYER_OPAQUE, checkerboard_platform_seg8_dl_0800D680
geo_close_node
geo_end

View file

@ -0,0 +1,85 @@
# Checkerboard Platform
checkerboard_platform_seg8_light_0800C828: # 0x0800C828
.byte 0x3F, 0x3F, 0x3F, 0x00, 0x3F, 0x3F, 0x3F, 0x00
checkerboard_platform_seg8_light_0800C830: # 0x0800C830
.byte 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x28, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00
checkerboard_platform_seg8_texture_0800C840: # 0x0800C840
.incbin "actors/checkerboard_platform/checkerboard_platform_side.rgba16"
checkerboard_platform_seg8_texture_0800CC40: # 0x0800CC40
.incbin "actors/checkerboard_platform/checkerboard_platform.rgba16"
checkerboard_platform_seg8_vertex_0800D440: # 0x0800D440
vertex -255, -25, 154, 1504, 480, 0x81, 0x00, 0x00, 0xFF
vertex -255, 26, 154, 1504, 0, 0x81, 0x00, 0x00, 0xFF
vertex -255, 26, -153, 0, 0, 0x81, 0x00, 0x00, 0xFF
vertex -255, -25, -153, 0, 480, 0x81, 0x00, 0x00, 0xFF
vertex 256, -25, -153, 1504, 480, 0x7F, 0x00, 0x00, 0xFF
vertex 256, 26, 154, 0, 0, 0x7F, 0x00, 0x00, 0xFF
vertex 256, -25, 154, 0, 480, 0x7F, 0x00, 0x00, 0xFF
vertex 256, 26, -153, 1504, 0, 0x7F, 0x00, 0x00, 0xFF
checkerboard_platform_seg8_vertex_0800D4C0: # 0x0800D4C0
vertex 256, -25, 154, 2528, 992, 0x00, 0x81, 0x00, 0xFF
vertex -255, -25, -153, 0, -512, 0x00, 0x81, 0x00, 0xFF
vertex 256, -25, -153, 2528, -512, 0x00, 0x81, 0x00, 0xFF
vertex 256, 26, -153, 2528, -512, 0x00, 0x7F, 0x00, 0xFF
vertex -255, 26, 154, 0, 992, 0x00, 0x7F, 0x00, 0xFF
vertex 256, 26, 154, 2528, 992, 0x00, 0x7F, 0x00, 0xFF
vertex -255, 26, -153, 0, -512, 0x00, 0x7F, 0x00, 0xFF
vertex -255, -25, -153, 2528, 480, 0x00, 0x00, 0x81, 0xFF
vertex -255, 26, -153, 2528, 0, 0x00, 0x00, 0x81, 0xFF
vertex 256, 26, -153, 0, 0, 0x00, 0x00, 0x81, 0xFF
vertex 256, -25, -153, 0, 480, 0x00, 0x00, 0x81, 0xFF
vertex 256, -25, 154, 2528, 480, 0x00, 0x00, 0x7F, 0xFF
vertex -255, 26, 154, 0, 0, 0x00, 0x00, 0x7F, 0xFF
vertex -255, -25, 154, 0, 480, 0x00, 0x00, 0x7F, 0xFF
vertex 256, 26, 154, 2528, 0, 0x00, 0x00, 0x7F, 0xFF
vertex -255, -25, 154, 0, 992, 0x00, 0x81, 0x00, 0xFF
glabel checkerboard_platform_seg8_dl_0800D5C0 # 0x0800D5C0 - 0x0800D618
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, checkerboard_platform_seg8_texture_0800C840
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x1FF, 0x100
gsSPLight checkerboard_platform_seg8_light_0800C830, 1
gsSPLight checkerboard_platform_seg8_light_0800C828, 2
gsSPVertex checkerboard_platform_seg8_vertex_0800D440, 8, 0
gsSP2Triangles 0, 1, 2, 0x0, 0, 2, 3, 0x0
gsSP2Triangles 4, 5, 6, 0x0, 4, 7, 5, 0x0
gsSPEndDisplayList
glabel checkerboard_platform_seg8_dl_0800D618 # 0x0800D618 - 0x0800D680
gsDPSetTextureImage G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, checkerboard_platform_seg8_texture_0800CC40
gsDPLoadSync
gsDPLoadBlock 7, 0, 0, 0x3FF, 0x100
gsSPVertex checkerboard_platform_seg8_vertex_0800D4C0, 16, 0
gsSP2Triangles 0, 1, 2, 0x0, 3, 4, 5, 0x0
gsSP2Triangles 3, 6, 4, 0x0, 7, 8, 9, 0x0
gsSP2Triangles 7, 9, 10, 0x0, 11, 12, 13, 0x0
gsSP2Triangles 11, 14, 12, 0x0, 0, 15, 1, 0x0
gsSPEndDisplayList
glabel checkerboard_platform_seg8_dl_0800D680 # 0x0800D680 - 0x0800D710
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_TEXEL0, G_CCMUX_0, G_CCMUX_SHADE, G_CCMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPClearGeometryMode G_SHADING_SMOOTH
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD
gsSPTexture -1, -1, 0, 0, 1
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 4, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 60
gsSPDisplayList checkerboard_platform_seg8_dl_0800D5C0
gsDPTileSync
gsDPSetTile G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD
gsDPSetTileSize 0, 0, 0, 124, 124
gsSPDisplayList checkerboard_platform_seg8_dl_0800D618
gsSPTexture -1, -1, 0, 0, 0
gsDPPipeSync
gsDPSetCombineModeLERP1Cycle G_CCMUX_0, G_CCMUX_0, G_CCMUX_0, G_CCMUX_SHADE, G_ACMUX_0, G_ACMUX_0, G_ACMUX_0, G_ACMUX_SHADE
gsSPSetGeometryMode G_SHADING_SMOOTH
gsSPEndDisplayList

Some files were not shown because too many files have changed in this diff Show more