Review changes for #819 and merge

This commit is contained in:
GriffinR 2019-10-02 12:40:00 -04:00
commit 2ac3ad3e60
160 changed files with 1524 additions and 911 deletions

View File

@ -43,6 +43,7 @@ ELF = $(ROM:.gba=.elf)
MAP = $(ROM:.gba=.map)
C_SUBDIR = src
GFLIB_SUBDIR = gflib
ASM_SUBDIR = asm
DATA_SRC_SUBDIR = src/data
DATA_ASM_SUBDIR = data
@ -50,6 +51,7 @@ SONG_SUBDIR = sound/songs
MID_SUBDIR = sound/songs/midi
C_BUILDDIR = $(OBJ_DIR)/$(C_SUBDIR)
GFLIB_BUILDDIR = $(OBJ_DIR)/$(GFLIB_SUBDIR)
ASM_BUILDDIR = $(OBJ_DIR)/$(ASM_SUBDIR)
DATA_ASM_BUILDDIR = $(OBJ_DIR)/$(DATA_ASM_SUBDIR)
SONG_BUILDDIR = $(OBJ_DIR)/$(SONG_SUBDIR)
@ -73,14 +75,14 @@ OBJ_DIR := build/modern
LIBPATH := -L $(TOOLCHAIN)/lib/gcc/arm-none-eabi/$(GCC_VER)/thumb -L $(TOOLCHAIN)/arm-none-eabi/lib/thumb
endif
CPPFLAGS := -iquote include -Wno-trigraphs -DMODERN=$(MODERN)
CPPFLAGS := -iquote include -iquote $(GFLIB_SUBDIR) -Wno-trigraphs -DMODERN=$(MODERN)
ifeq ($(MODERN),0)
CPPFLAGS += -I tools/agbcc/include -I tools/agbcc
endif
LDFLAGS = -Map ../../$(MAP)
LIB := $(LIBPATH) -lgcc -lc
LIB := $(LIBPATH) -lgcc -lc -L../../libagbsyscall -lagbsyscall
SHA1 := $(shell { command -v sha1sum || command -v shasum; } 2>/dev/null) -c
GFX := tools/gbagfx/gbagfx$(EXE)
@ -109,7 +111,7 @@ MAKEFLAGS += --no-print-directory
# Secondary expansion is required for dependency variables in object rules.
.SECONDEXPANSION:
.PHONY: all rom clean compare tidy tools mostlyclean clean-tools $(TOOLDIRS) berry_fix
.PHONY: all rom clean compare tidy tools mostlyclean clean-tools $(TOOLDIRS) berry_fix libagbsyscall
infoshell = $(foreach line, $(shell $1 | sed "s/ /__SPACE__/g"), $(info $(subst __SPACE__, ,$(line))))
@ -125,6 +127,9 @@ C_SRCS_IN := $(wildcard $(C_SUBDIR)/*.c $(C_SUBDIR)/*/*.c $(C_SUBDIR)/*/*/*.c)
C_SRCS := $(foreach src,$(C_SRCS_IN),$(if $(findstring .inc.c,$(src)),,$(src)))
C_OBJS := $(patsubst $(C_SUBDIR)/%.c,$(C_BUILDDIR)/%.o,$(C_SRCS))
GFLIB_SRCS := $(wildcard $(GFLIB_SUBDIR)/*.c)
GFLIB_OBJS := $(patsubst $(GFLIB_SUBDIR)/%.c,$(GFLIB_BUILDDIR)/%.o,$(GFLIB_SRCS))
C_ASM_SRCS += $(wildcard $(C_SUBDIR)/*.s $(C_SUBDIR)/*/*.s $(C_SUBDIR)/*/*/*.s)
C_ASM_OBJS := $(patsubst $(C_SUBDIR)/%.s,$(C_BUILDDIR)/%.o,$(C_ASM_SRCS))
@ -140,7 +145,7 @@ SONG_OBJS := $(patsubst $(SONG_SUBDIR)/%.s,$(SONG_BUILDDIR)/%.o,$(SONG_SRCS))
MID_SRCS := $(wildcard $(MID_SUBDIR)/*.mid)
MID_OBJS := $(patsubst $(MID_SUBDIR)/%.mid,$(MID_BUILDDIR)/%.o,$(MID_SRCS))
OBJS := $(C_OBJS) $(C_ASM_OBJS) $(ASM_OBJS) $(DATA_ASM_OBJS) $(SONG_OBJS) $(MID_OBJS)
OBJS := $(C_OBJS) $(GFLIB_OBJS) $(C_ASM_OBJS) $(ASM_OBJS) $(DATA_ASM_OBJS) $(SONG_OBJS) $(MID_OBJS)
OBJS_REL := $(patsubst $(OBJ_DIR)/%,%,$(OBJS))
SUBDIRS := $(sort $(dir $(OBJS)))
@ -156,7 +161,7 @@ tools: $(TOOLDIRS)
$(TOOLDIRS):
@$(MAKE) -C $@ CC=$(HOSTCC) CXX=$(HOSTCXX)
rom: berry_fix $(ROM)
rom: $(ROM)
ifeq ($(COMPARE),1)
@$(SHA1) rom.sha1
endif
@ -178,6 +183,7 @@ mostlyclean: tidy
find $(DATA_ASM_SUBDIR)/maps \( -iname 'connections.inc' -o -iname 'events.inc' -o -iname 'header.inc' \) -exec rm {} +
rm -f $(AUTO_GEN_TARGETS)
@$(MAKE) clean -C berry_fix
@$(MAKE) clean -C libagbsyscall
tidy:
rm -f $(ROM) $(ELF) $(MAP)
@ -230,7 +236,7 @@ endif
ifeq ($(NODEP),1)
$(C_BUILDDIR)/%.o: c_dep :=
else
$(C_BUILDDIR)/%.o: c_dep = $(shell [[ -f $(C_SUBDIR)/$*.c ]] && $(SCANINC) -I include -I tools/agbcc/include $(C_SUBDIR)/$*.c)
$(C_BUILDDIR)/%.o: c_dep = $(shell [[ -f $(C_SUBDIR)/$*.c ]] && $(SCANINC) -I include -I tools/agbcc/include -I gflib $(C_SUBDIR)/$*.c)
endif
ifeq ($(DINFO),1)
@ -243,6 +249,18 @@ $(C_BUILDDIR)/%.o : $(C_SUBDIR)/%.c $$(c_dep)
@echo -e ".text\n\t.align\t2, 0\n" >> $(C_BUILDDIR)/$*.s
$(AS) $(ASFLAGS) -o $@ $(C_BUILDDIR)/$*.s
ifeq ($(NODEP),1)
$(GFLIB_BUILDDIR)/%.o: c_dep :=
else
$(GFLIB_BUILDDIR)/%.o: c_dep = $(shell [[ -f $(GFLIB_SUBDIR)/$*.c ]] && $(SCANINC) -I include -I tools/agbcc/include -I gflib $(GFLIB_SUBDIR)/$*.c)
endif
$(GFLIB_BUILDDIR)/%.o : $(GFLIB_SUBDIR)/%.c $$(c_dep)
@$(CPP) $(CPPFLAGS) $< -o $(GFLIB_BUILDDIR)/$*.i
@$(PREPROC) $(GFLIB_BUILDDIR)/$*.i charmap.txt | $(CC1) $(CFLAGS) -o $(GFLIB_BUILDDIR)/$*.s
@echo -e ".text\n\t.align\t2, 0\n" >> $(GFLIB_BUILDDIR)/$*.s
$(AS) $(ASFLAGS) -o $@ $(GFLIB_BUILDDIR)/$*.s
ifeq ($(NODEP),1)
$(C_BUILDDIR)/%.o: c_asm_dep :=
else
@ -293,7 +311,7 @@ endif
$(OBJ_DIR)/ld_script.ld: $(LD_SCRIPT) $(LD_SCRIPT_DEPS)
cd $(OBJ_DIR) && sed "s#tools/#../../tools/#g" ../../$(LD_SCRIPT) > ld_script.ld
$(ELF): $(OBJ_DIR)/ld_script.ld $(OBJS)
$(ELF): $(OBJ_DIR)/ld_script.ld $(OBJS) berry_fix libagbsyscall
cd $(OBJ_DIR) && $(LD) $(LDFLAGS) -T ld_script.ld -o ../../$@ $(OBJS_REL) $(LIB)
$(FIX) $@ -t"$(TITLE)" -c$(GAME_CODE) -m$(MAKER_CODE) -r$(REVISION) --silent
@ -306,4 +324,7 @@ modern: ; @$(MAKE) MODERN=1
berry_fix/berry_fix.gba: berry_fix
berry_fix:
@$(MAKE) -C berry_fix COMPARE=$(COMPARE)
@$(MAKE) -C berry_fix COMPARE=$(COMPARE) TOOLCHAIN=$(TOOLCHAIN)
libagbsyscall:
@$(MAKE) -C libagbsyscall TOOLCHAIN=$(TOOLCHAIN)

View File

@ -1,7 +1,29 @@
include $(DEVKITARM)/base_tools
TOOLCHAIN := $(DEVKITARM)
COMPARE ?= 0
ifeq ($(CC),)
HOSTCC := gcc
else
HOSTCC := $(CC)
endif
ifeq ($(CXX),)
HOSTCXX := g++
else
HOSTCXX := $(CXX)
endif
ifneq (,$(wildcard $(TOOLCHAIN)/base_tools))
include $(TOOLCHAIN)/base_tools
else
export PATH := $(TOOLCHAIN)/bin:$(PATH)
PREFIX := arm-none-eabi-
OBJCOPY := $(PREFIX)objcopy
export CC := $(PREFIX)gcc
export AS := $(PREFIX)as
endif
export CPP := $(PREFIX)cpp
export LD := $(PREFIX)ld
COMPARE ?= 0
ifeq ($(OS),Windows_NT)
EXE := .exe
@ -144,7 +166,7 @@ $(DATA_ASM_BUILDDIR)/%.o: data_dep = $(shell $(SCANINC) $(DATA_ASM_SUBDIR)/$*.s)
endif
payload:
@$(MAKE) -C payload COMPARE=$(COMPARE)
@$(MAKE) -C payload COMPARE=$(COMPARE) TOOLCHAIN=$(TOOLCHAIN)
payload/payload.gba: payload

View File

@ -1,7 +1,29 @@
include $(DEVKITARM)/base_tools
TOOLCHAIN := $(DEVKITARM)
COMPARE ?= 0
ifeq ($(CC),)
HOSTCC := gcc
else
HOSTCC := $(CC)
endif
ifeq ($(CXX),)
HOSTCXX := g++
else
HOSTCXX := $(CXX)
endif
ifneq (,$(wildcard $(TOOLCHAIN)/base_tools))
include $(TOOLCHAIN)/base_tools
else
export PATH := $(TOOLCHAIN)/bin:$(PATH)
PREFIX := arm-none-eabi-
OBJCOPY := $(PREFIX)objcopy
export CC := $(PREFIX)gcc
export AS := $(PREFIX)as
endif
export CPP := $(PREFIX)cpp
export LD := $(PREFIX)ld
COMPARE ?= 0
ifeq ($(OS),Windows_NT)
EXE := .exe

View File

@ -771,213 +771,213 @@ EventScript_SetBrineyLocation_Route108:: @ 8271918
.include "data/scripts/pkmn_center_nurse.inc"
Std_ObtainItem:: @ 8271AD3
giveitem VAR_0x8000, VAR_0x8001
copyvar VAR_0x8007, VAR_RESULT
call EventScript_271AE3
return
giveitem VAR_0x8000, VAR_0x8001
copyvar VAR_0x8007, VAR_RESULT
call EventScript_271AE3
return
EventScript_271AE3:: @ 8271AE3
bufferitemnameplural 1, VAR_0x8000, VAR_0x8001
checkitemtype VAR_0x8000
call EventScript_BufferStdString
compare VAR_0x8007, 1
call_if_eq EventScript_271B95
compare VAR_0x8007, 0
call_if_eq EventScript_271BA9
return
bufferitemnameplural 1, VAR_0x8000, VAR_0x8001
checkitemtype VAR_0x8000
call EventScript_BufferStdString
compare VAR_0x8007, 1
call_if_eq EventScript_271B95
compare VAR_0x8007, 0
call_if_eq EventScript_271BA9
return
EventScript_BufferStdString:: @ 8271B08
switch VAR_RESULT
case POCKET_ITEMS, EventScript_StdStringItem
case POCKET_KEY_ITEMS, EventScript_StdStringKeyItems
case POCKET_POKE_BALLS, EventScript_StdStringPokeballs
case POCKET_TM_HM, EventScript_StdStringTMHMS
case POCKET_BERRIES, EventScript_StdStringBerries
end
switch VAR_RESULT
case POCKET_ITEMS, EventScript_StdStringItem
case POCKET_KEY_ITEMS, EventScript_StdStringKeyItems
case POCKET_POKE_BALLS, EventScript_StdStringPokeballs
case POCKET_TM_HM, EventScript_StdStringTMHMS
case POCKET_BERRIES, EventScript_StdStringBerries
end
EventScript_StdStringItem:: @ 8271B45
bufferstdstring 2, STDSTRING_ITEMS
compare VAR_0x8007, 1
call_if_eq EventScript_PlayFanfare4
return
bufferstdstring 2, STDSTRING_ITEMS
compare VAR_0x8007, 1
call_if_eq EventScript_PlayFanfare4
return
EventScript_StdStringKeyItems:: @ 8271B55
bufferstdstring 2, STDSTRING_KEYITEMS
compare VAR_0x8007, 1
call_if_eq EventScript_PlayFanfare4
return
bufferstdstring 2, STDSTRING_KEYITEMS
compare VAR_0x8007, 1
call_if_eq EventScript_PlayFanfare4
return
EventScript_StdStringPokeballs:: @ 8271B65
bufferstdstring 2, STDSTRING_POKEBALLS
compare VAR_0x8007, 1
call_if_eq EventScript_PlayFanfare4
return
bufferstdstring 2, STDSTRING_POKEBALLS
compare VAR_0x8007, 1
call_if_eq EventScript_PlayFanfare4
return
EventScript_StdStringTMHMS:: @ 8271B75
bufferstdstring 2, STDSTRING_TMHMS
compare VAR_0x8007, 1
call_if_eq EventScript_271BB3
return
bufferstdstring 2, STDSTRING_TMHMS
compare VAR_0x8007, 1
call_if_eq EventScript_271BB3
return
EventScript_StdStringBerries:: @ 8271B85
bufferstdstring 2, STDSTRING_BERRIES
compare VAR_0x8007, 1
call_if_eq EventScript_PlayFanfare4
return
bufferstdstring 2, STDSTRING_BERRIES
compare VAR_0x8007, 1
call_if_eq EventScript_PlayFanfare4
return
EventScript_271B95:: @ 8271B95
message gText_ObtainedTheItem
waitfanfare
msgbox gText_PutItemInPocket, MSGBOX_DEFAULT
setvar VAR_RESULT, 1
return
message gText_ObtainedTheItem
waitfanfare
msgbox gText_PutItemInPocket, MSGBOX_DEFAULT
setvar VAR_RESULT, 1
return
EventScript_271BA9:: @ 8271BA9
setvar VAR_RESULT, 0
return
setvar VAR_RESULT, 0
return
EventScript_PlayFanfare4:: @ 8271BAF
playfanfare MUS_FANFA4
return
playfanfare MUS_FANFA4
return
EventScript_271BB3:: @ 8271BB3
playfanfare MUS_ME_WAZA
return
playfanfare MUS_ME_WAZA
return
Std_ObtainDecoration:: @ 8271BB7
givedecoration VAR_0x8000
copyvar VAR_0x8007, VAR_RESULT
call EventScript_271BC5
return
givedecoration VAR_0x8000
copyvar VAR_0x8007, VAR_RESULT
call EventScript_271BC5
return
EventScript_271BC5:: @ 8271BC5
bufferdecorationname 1, VAR_0x8000
compare VAR_0x8007, 1
call_if_eq EventScript_271BE0
compare VAR_0x8007, 0
call_if_eq EventScript_271BF7
return
bufferdecorationname 1, VAR_0x8000
compare VAR_0x8007, 1
call_if_eq EventScript_271BE0
compare VAR_0x8007, 0
call_if_eq EventScript_271BF7
return
EventScript_271BE0:: @ 8271BE0
playfanfare MUS_FANFA4
message gText_ObtainedTheMon
waitfanfare
msgbox gText_TheMonWasTransferredToThePC, MSGBOX_DEFAULT
setvar VAR_RESULT, 1
return
playfanfare MUS_FANFA4
message gText_ObtainedTheMon
waitfanfare
msgbox gText_TheMonWasTransferredToThePC, MSGBOX_DEFAULT
setvar VAR_RESULT, 1
return
EventScript_271BF7:: @ 8271BF7
setvar VAR_RESULT, 0
return
setvar VAR_RESULT, 0
return
Std_FindItem:: @ 8271BFD
lock
faceplayer
waitse
copyvar VAR_0x8004, VAR_0x8000
copyvar VAR_0x8005, VAR_0x8001
checkitemspace VAR_0x8000, VAR_0x8001
copyvar VAR_0x8007, VAR_RESULT
bufferitemnameplural 1, VAR_0x8000, VAR_0x8001
checkitemtype VAR_0x8000
call EventScript_BufferStdString
compare VAR_0x8007, 1
call_if_eq EventScript_PickItemUp
compare VAR_0x8007, 0
call_if_eq EventScript_271CA1
release
return
lock
faceplayer
waitse
copyvar VAR_0x8004, VAR_0x8000
copyvar VAR_0x8005, VAR_0x8001
checkitemspace VAR_0x8000, VAR_0x8001
copyvar VAR_0x8007, VAR_RESULT
bufferitemnameplural 1, VAR_0x8000, VAR_0x8001
checkitemtype VAR_0x8000
call EventScript_BufferStdString
compare VAR_0x8007, 1
call_if_eq EventScript_PickItemUp
compare VAR_0x8007, 0
call_if_eq EventScript_271CA1
release
return
EventScript_PickItemUp:: @ 8271C3A
removeobject VAR_LAST_TALKED
giveitem VAR_0x8004, VAR_0x8005
specialvar VAR_RESULT, BufferTMHMMoveName
copyvar VAR_0x8008, VAR_RESULT
compare VAR_0x8008, 1
call_if_eq EventScript_271C8F
compare VAR_0x8008, 0
call_if_eq EventScript_271C9B
waitfanfare
waitmessage
bufferitemnameplural 1, VAR_0x8004, VAR_0x8005
setvar VAR_0x8004, 12
special CallBattlePyramidFunction
compare VAR_RESULT, 1
goto_if_eq EventScript_271C86
msgbox gText_PutItemInPocket, MSGBOX_DEFAULT
return
removeobject VAR_LAST_TALKED
giveitem VAR_0x8004, VAR_0x8005
specialvar VAR_RESULT, BufferTMHMMoveName
copyvar VAR_0x8008, VAR_RESULT
compare VAR_0x8008, 1
call_if_eq EventScript_271C8F
compare VAR_0x8008, 0
call_if_eq EventScript_271C9B
waitfanfare
waitmessage
bufferitemnameplural 1, VAR_0x8004, VAR_0x8005
setvar VAR_0x8004, 12
special CallBattlePyramidFunction
compare VAR_RESULT, 1
goto_if_eq EventScript_271C86
msgbox gText_PutItemInPocket, MSGBOX_DEFAULT
return
EventScript_271C86:: @ 8271C86
msgbox gText_PlayerPutItemInBag, MSGBOX_DEFAULT
return
msgbox gText_PlayerPutItemInBag, MSGBOX_DEFAULT
return
EventScript_271C8F:: @ 8271C8F
bufferitemnameplural 0, VAR_0x8004, VAR_0x8005
message gText_PlayerFoundOneItemTwoLines
return
bufferitemnameplural 0, VAR_0x8004, VAR_0x8005
message gText_PlayerFoundOneItemTwoLines
return
EventScript_271C9B:: @ 8271C9B
message gText_PlayerFoundOneItem
return
message gText_PlayerFoundOneItem
return
EventScript_271CA1:: @ 8271CA1
msgbox gText_ObtainedTheItem, MSGBOX_DEFAULT
msgbox gText_TooBadBagIsFull, MSGBOX_DEFAULT
setvar VAR_RESULT, 0
return
msgbox gText_ObtainedTheItem, MSGBOX_DEFAULT
msgbox gText_TooBadBagIsFull, MSGBOX_DEFAULT
setvar VAR_RESULT, 0
return
EventScript_HiddenItemScript:: @ 8271CB7
lockall
waitse
giveitem VAR_0x8005, 1
copyvar VAR_0x8007, VAR_RESULT
bufferitemnameplural 1, VAR_0x8005, 1
checkitemtype VAR_0x8005
call EventScript_BufferStdString
compare VAR_0x8007, 1
goto_if_eq EventScript_271CE8
compare VAR_0x8007, 0
goto_if_eq EventScript_271D47
end
lockall
waitse
giveitem VAR_0x8005, 1
copyvar VAR_0x8007, VAR_RESULT
bufferitemnameplural 1, VAR_0x8005, 1
checkitemtype VAR_0x8005
call EventScript_BufferStdString
compare VAR_0x8007, 1
goto_if_eq EventScript_271CE8
compare VAR_0x8007, 0
goto_if_eq EventScript_271D47
end
EventScript_271CE8:: @ 8271CE8
copyvar VAR_0x8008, VAR_0x8004
copyvar VAR_0x8004, VAR_0x8005
specialvar VAR_RESULT, BufferTMHMMoveName
compare VAR_RESULT, 1
goto_if_eq EventScript_271D0E
compare VAR_RESULT, 0
goto_if_eq EventScript_271D1F
end
copyvar VAR_0x8008, VAR_0x8004
copyvar VAR_0x8004, VAR_0x8005
specialvar VAR_RESULT, BufferTMHMMoveName
compare VAR_RESULT, 1
goto_if_eq EventScript_271D0E
compare VAR_RESULT, 0
goto_if_eq EventScript_271D1F
end
EventScript_271D0E:: @ 8271D0E
bufferitemnameplural 0, VAR_0x8004, 1
message gText_PlayerFoundOneItemTwoLines
goto EventScript_271D2A
end
bufferitemnameplural 0, VAR_0x8004, 1
message gText_PlayerFoundOneItemTwoLines
goto EventScript_271D2A
end
EventScript_271D1F:: @ 8271D1F
message gText_PlayerFoundOneItem
goto EventScript_271D2A
end
message gText_PlayerFoundOneItem
goto EventScript_271D2A
end
EventScript_271D2A:: @ 8271D2A
waitmessage
waitfanfare
bufferitemnameplural 1, VAR_0x8004, 1
copyvar VAR_0x8004, VAR_0x8008
msgbox gText_PutItemInPocket, MSGBOX_DEFAULT
special sub_80EDCE8
special SetFlagInVar
releaseall
end
waitmessage
waitfanfare
bufferitemnameplural 1, VAR_0x8004, 1
copyvar VAR_0x8004, VAR_0x8008
msgbox gText_PutItemInPocket, MSGBOX_DEFAULT
special sub_80EDCE8
special SetFlagInVar
releaseall
end
EventScript_271D47:: @ 8271D47
msgbox gText_PlayerFoundOneItem, MSGBOX_DEFAULT
msgbox gText_TooBadBagIsFull, MSGBOX_DEFAULT
setvar VAR_RESULT, 0
releaseall
end
msgbox gText_PlayerFoundOneItem, MSGBOX_DEFAULT
msgbox gText_TooBadBagIsFull, MSGBOX_DEFAULT
setvar VAR_RESULT, 0
releaseall
end
EventScript_271D5E:: @ 8271D5E
lock

View File

@ -6,7 +6,7 @@ BattleFrontier_BattleArenaBattleRoom_MapScripts:: @ 8257487
.byte 0
BattleFrontier_BattleArenaBattleRoom_MapScript1_25749C: @ 825749C
special sub_8139980
special OffsetCameraForBattle
end
BattleFrontier_BattleArenaBattleRoom_MapScript1_2574A0: @ 82574A0

View File

@ -329,8 +329,8 @@ BattleFrontier_BattlePikeCorridor_EventScript_25BB49:: @ 825BB49
BattleFrontier_BattlePikeLobby_EventScript_25BB49:: @ 825BB49
BattleFrontier_BattlePikeRandomRoom1_EventScript_25BB49:: @ 825BB49
BattleFrontier_BattlePikeThreePathRoom_EventScript_25BB49:: @ 825BB49
playse 267
special sub_813B880
playse SE_CURTAIN
special CloseBattlePikeCurtain
waitstate
waitse
return

View File

@ -36,7 +36,7 @@ BattleFrontier_BattleTowerCorridor2_EventScript_248D9F:: @ 8248D9F
hideobjectat EVENT_OBJ_ID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_TOWER_CORRIDOR2
hideobjectat 1, MAP_BATTLE_FRONTIER_BATTLE_TOWER_CORRIDOR2
hideobjectat 4, MAP_BATTLE_FRONTIER_BATTLE_TOWER_CORRIDOR2
special sub_8139980
special OffsetCameraForBattle
end
BattleFrontier_BattleTowerCorridor2_MapScript2_248DB2: @ 8248DB2

View File

@ -42,19 +42,19 @@ JaggedPass_EventScript_2306A8:: @ 82306A8
JaggedPass_EventScript_2306BB:: @ 82306BB
lockall
setvar VAR_0x8004, 1
setvar VAR_0x8005, 1
setvar VAR_0x8006, 8
setvar VAR_0x8007, 5
special sub_8139560
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 1 @ horizontal pan
setvar VAR_0x8006, 8 @ num shakes
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
msgbox JaggedPass_Text_230DBA, MSGBOX_DEFAULT
closemessage
setvar VAR_0x8004, 1
setvar VAR_0x8005, 1
setvar VAR_0x8006, 16
setvar VAR_0x8007, 3
special sub_8139560
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 1 @ horizontal pan
setvar VAR_0x8006, 16 @ num shakes
setvar VAR_0x8007, 3 @ shake delay
special ShakeCamera
waitstate
playse SE_KOUKA_M
setmetatile 16, 17, METATILE_Lavaridge_CaveEntrance_Top, 1

View File

@ -29,21 +29,21 @@ MagmaHideout_4F_EventScript_23A560:: @ 823A560
waitmovement 0
special sub_80B058C
waitstate
setvar VAR_0x8004, 1
setvar VAR_0x8005, 1
setvar VAR_0x8006, 8
setvar VAR_0x8007, 5
special sub_8139560
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 1 @ horizontal pan
setvar VAR_0x8006, 8 @ num shakes
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
applymovement 1, MagmaHideout_4F_Movement_23A67D
waitmovement 0
removeobject 1
delay 4
setvar VAR_0x8004, 2
setvar VAR_0x8005, 2
setvar VAR_0x8006, 8
setvar VAR_0x8007, 5
special sub_8139560
setvar VAR_0x8004, 2 @ vertical pan
setvar VAR_0x8005, 2 @ horizontal pan
setvar VAR_0x8006, 8 @ num shakes
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
delay 30
applymovement 6, MagmaHideout_4F_Movement_23A680

View File

@ -44,11 +44,11 @@ MirageTower_4F_EventScript_23ADC0:: @ 823ADC0
end
MirageTower_4F_EventScript_23ADCA:: @ 823ADCA
setvar VAR_0x8004, 1
setvar VAR_0x8005, 1
setvar VAR_0x8006, 32
setvar VAR_0x8007, 2
special sub_8139560
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 1 @ horizontal pan
setvar VAR_0x8006, 32 @ num shakes
setvar VAR_0x8007, 2 @ shake delay
special ShakeCamera
waitstate
special DoMirageTowerCeilingCrumble
waitstate

View File

@ -34,18 +34,18 @@ NavelRock_Bottom_EventScript_2692A2:: @ 82692A2
waitse
delay 20
playse SE_T_AME_E
setvar VAR_0x8004, 0
setvar VAR_0x8005, 3
setvar VAR_0x8006, 4
setvar VAR_0x8007, 2
special sub_8139560
setvar VAR_0x8004, 0 @ vertical pan
setvar VAR_0x8005, 3 @ horizontal pan
setvar VAR_0x8006, 4 @ num shakes
setvar VAR_0x8007, 2 @ shake delay
special ShakeCamera
delay 30
playse SE_T_AME_E
setvar VAR_0x8004, 0
setvar VAR_0x8005, 3
setvar VAR_0x8006, 4
setvar VAR_0x8007, 2
special sub_8139560
setvar VAR_0x8004, 0 @ vertical pan
setvar VAR_0x8005, 3 @ horizontal pan
setvar VAR_0x8006, 4 @ num shakes
setvar VAR_0x8007, 2 @ shake delay
special ShakeCamera
delay 30
delay 50
waitse

View File

@ -35,9 +35,9 @@ NavelRock_Top_EventScript_26916F:: @ 826916F
lockall
setvar VAR_TEMP_1, 1
special SpawnCameraObject
setvar VAR_0x8004, 3
setvar VAR_0x8005, 35
special sub_813B80C
setvar VAR_0x8004, 3 @ num loops
setvar VAR_0x8005, 35 @ delay
special LoopWingFlapSE
applymovement 1, NavelRock_Top_Movement_269243
applymovement EVENT_OBJ_ID_CAMERA, NavelRock_Top_Movement_269230
waitmovement 0
@ -49,9 +49,9 @@ NavelRock_Top_EventScript_26916F:: @ 826916F
delay 30
waitmoncry
delay 60
setvar VAR_0x8004, 3
setvar VAR_0x8005, 35
special sub_813B80C
setvar VAR_0x8004, 3 @ num loops
setvar VAR_0x8005, 35 @ delay
special LoopWingFlapSE
applymovement EVENT_OBJ_ID_CAMERA, NavelRock_Top_Movement_269234
applymovement 1, NavelRock_Top_Movement_26923A
waitmovement 0

View File

@ -281,8 +281,8 @@ PetalburgWoods_EventScript_22E284:: @ 822E284
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, 1
goto_if_eq PetalburgWoods_EventScript_22E31B
setvar VAR_0x8004, 621
specialvar VAR_RESULT, sub_813B4E0
setvar VAR_0x8004, TRAINER_JAMES_1
specialvar VAR_RESULT, IsTrainerRegistered
compare VAR_RESULT, 0
goto_if_eq PetalburgWoods_EventScript_22E2EF
msgbox PetalburgWoods_Text_22E889, MSGBOX_DEFAULT

View File

@ -22,8 +22,8 @@ Route102_EventScript_1EC105:: @ 81EC105
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, 1
goto_if_eq Route102_EventScript_1EC19C
setvar VAR_0x8004, 318
specialvar VAR_RESULT, sub_813B4E0
setvar VAR_0x8004, TRAINER_CALVIN_1
specialvar VAR_RESULT, IsTrainerRegistered
compare VAR_RESULT, 0
goto_if_eq Route102_EventScript_1EC170
msgbox Route102_Text_2945AC, MSGBOX_DEFAULT

View File

@ -870,8 +870,8 @@ Route104_EventScript_1ED38D:: @ 81ED38D
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, 1
goto_if_eq Route104_EventScript_1ED424
setvar VAR_0x8004, 604
specialvar VAR_RESULT, sub_813B4E0
setvar VAR_0x8004, TRAINER_HALEY_1
specialvar VAR_RESULT, IsTrainerRegistered
compare VAR_RESULT, 0
goto_if_eq Route104_EventScript_1ED3F8
msgbox Route104_Text_295689, MSGBOX_DEFAULT
@ -913,8 +913,8 @@ Route104_EventScript_1ED43B:: @ 81ED43B
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, 1
goto_if_eq Route104_EventScript_1ED4D2
setvar VAR_0x8004, 136
specialvar VAR_RESULT, sub_813B4E0
setvar VAR_0x8004, TRAINER_WINSTON_1
specialvar VAR_RESULT, IsTrainerRegistered
compare VAR_RESULT, 0
goto_if_eq Route104_EventScript_1ED4A6
msgbox Route104_Text_2958C1, MSGBOX_DEFAULT
@ -956,8 +956,8 @@ Route104_EventScript_1ED4E9:: @ 81ED4E9
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, 1
goto_if_eq Route104_EventScript_1ED580
setvar VAR_0x8004, 114
specialvar VAR_RESULT, sub_813B4E0
setvar VAR_0x8004, TRAINER_CINDY_1
specialvar VAR_RESULT, IsTrainerRegistered
compare VAR_RESULT, 0
goto_if_eq Route104_EventScript_1ED554
msgbox Route104_Text_295AC3, MSGBOX_DEFAULT

View File

@ -258,8 +258,8 @@ Route116_EventScript_1F2EB7:: @ 81F2EB7
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, 1
goto_if_eq Route116_EventScript_1F2F4E
setvar VAR_0x8004, 273
specialvar VAR_RESULT, sub_813B4E0
setvar VAR_0x8004, TRAINER_JERRY_1
specialvar VAR_RESULT, IsTrainerRegistered
compare VAR_RESULT, 0
goto_if_eq Route116_EventScript_1F2F22
msgbox Route116_Text_29BD92, MSGBOX_DEFAULT
@ -311,8 +311,8 @@ Route116_EventScript_1F2F93:: @ 81F2F93
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, 1
goto_if_eq Route116_EventScript_1F302A
setvar VAR_0x8004, 280
specialvar VAR_RESULT, sub_813B4E0
setvar VAR_0x8004, TRAINER_KAREN_1
specialvar VAR_RESULT, IsTrainerRegistered
compare VAR_RESULT, 0
goto_if_eq Route116_EventScript_1F2FFE
msgbox Route116_Text_29C010, MSGBOX_DEFAULT

View File

@ -59,21 +59,21 @@ SeafloorCavern_Room9_EventScript_234DC9:: @ 8234DC9
waitmovement 0
special sub_80B058C
waitstate
setvar VAR_0x8004, 1
setvar VAR_0x8005, 1
setvar VAR_0x8006, 8
setvar VAR_0x8007, 5
special sub_8139560
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 1 @ horizontal pan
setvar VAR_0x8006, 8 @ num shakes
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
applymovement 1, SeafloorCavern_Room9_Movement_23504B
waitmovement 0
removeobject 1
delay 4
setvar VAR_0x8004, 2
setvar VAR_0x8005, 2
setvar VAR_0x8006, 8
setvar VAR_0x8007, 5
special sub_8139560
setvar VAR_0x8004, 2 @ vertical pan
setvar VAR_0x8005, 2 @ horizontal pan
setvar VAR_0x8006, 8 @ num shakes
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
delay 30
setvar VAR_0x8004, 2

View File

@ -41,11 +41,11 @@ SkyPillar_Outside_EventScript_239304:: @ 8239304
msgbox SkyPillar_Outside_Text_239416, MSGBOX_DEFAULT
closemessage
delay 30
setvar VAR_0x8004, 1
setvar VAR_0x8005, 1
setvar VAR_0x8006, 8
setvar VAR_0x8007, 3
special sub_8139560
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 1 @ horizontal pan
setvar VAR_0x8006, 8 @ num shakes
setvar VAR_0x8007, 3 @ shake delay
special ShakeCamera
waitstate
delay 40
msgbox SkyPillar_Outside_Text_2394BC, MSGBOX_DEFAULT
@ -53,11 +53,11 @@ SkyPillar_Outside_EventScript_239304:: @ 8239304
applymovement EVENT_OBJ_ID_PLAYER, SkyPillar_Outside_Movement_2393EB
applymovement 1, SkyPillar_Outside_Movement_2393DE
waitmovement 0
setvar VAR_0x8004, 1
setvar VAR_0x8005, 3
setvar VAR_0x8006, 20
setvar VAR_0x8007, 5
special sub_8139560
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 3 @ horizontal pan
setvar VAR_0x8006, 20 @ num shakes
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
delay 20
applymovement 1, Common_Movement_WalkInPlaceLeft

View File

@ -104,19 +104,19 @@ SkyPillar_Top_EventScript_23979A:: @ 823979A
waitmovement 0
waitse
playmoncry SPECIES_RAYQUAZA, 2
setvar VAR_0x8004, 1
setvar VAR_0x8005, 1
setvar VAR_0x8006, 8
setvar VAR_0x8007, 3
special sub_8139560
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 1 @ horizontal pan
setvar VAR_0x8006, 8 @ num shakes
setvar VAR_0x8007, 3 @ shake delay
special ShakeCamera
waitstate
waitse
playmoncry SPECIES_RAYQUAZA, 2
setvar VAR_0x8004, 1
setvar VAR_0x8005, 2
setvar VAR_0x8006, 8
setvar VAR_0x8007, 5
special sub_8139560
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 2 @ horizontal pan
setvar VAR_0x8006, 8 @ num shakes
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
waitmoncry
applymovement 1, SkyPillar_Top_Movement_23984B

View File

@ -228,11 +228,11 @@ SootopolisCity_EventScript_1E5946:: @ 81E5946
applymovement 10, SootopolisCity_Movement_1E5BB8
applymovement 9, SootopolisCity_Movement_1E5BE5
waitmovement 0
setvar VAR_0x8004, 1
setvar VAR_0x8005, 1
setvar VAR_0x8006, 8
setvar VAR_0x8007, 5
special sub_8139560
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 1 @ horizontal pan
setvar VAR_0x8006, 8 @ num shakes
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
applymovement 10, SootopolisCity_Movement_1E5BCF
applymovement 9, SootopolisCity_Movement_1E5BF0
@ -242,11 +242,11 @@ SootopolisCity_EventScript_1E5946:: @ 81E5946
applymovement 10, SootopolisCity_Movement_1E5BC2
applymovement 9, SootopolisCity_Movement_1E5BDD
waitmovement 0
setvar VAR_0x8004, 1
setvar VAR_0x8005, 1
setvar VAR_0x8006, 8
setvar VAR_0x8007, 5
special sub_8139560
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 1 @ horizontal pan
setvar VAR_0x8006, 8 @ num shakes
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
applymovement 10, SootopolisCity_Movement_1E5BCF
applymovement 9, SootopolisCity_Movement_1E5BF0
@ -256,11 +256,11 @@ SootopolisCity_EventScript_1E5946:: @ 81E5946
applymovement 10, SootopolisCity_Movement_1E5BB8
applymovement 9, SootopolisCity_Movement_1E5BE5
waitmovement 0
setvar VAR_0x8004, 1
setvar VAR_0x8005, 1
setvar VAR_0x8006, 8
setvar VAR_0x8007, 5
special sub_8139560
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 1 @ horizontal pan
setvar VAR_0x8006, 8 @ num shakes
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
applymovement 10, SootopolisCity_Movement_1E5BCF
applymovement 9, SootopolisCity_Movement_1E5BF0
@ -328,11 +328,11 @@ SootopolisCity_EventScript_1E5A82:: @ 81E5A82
applymovement 10, SootopolisCity_Movement_1E5BB8
applymovement 9, SootopolisCity_Movement_1E5BE5
waitmovement 0
setvar VAR_0x8004, 1
setvar VAR_0x8005, 1
setvar VAR_0x8006, 8
setvar VAR_0x8007, 5
special sub_8139560
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 1 @ horizontal pan
setvar VAR_0x8006, 8 @ num shakes
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
applymovement 10, SootopolisCity_Movement_1E5BCF
applymovement 9, SootopolisCity_Movement_1E5BF0
@ -342,11 +342,11 @@ SootopolisCity_EventScript_1E5A82:: @ 81E5A82
applymovement 10, SootopolisCity_Movement_1E5BC2
applymovement 9, SootopolisCity_Movement_1E5BDD
waitmovement 0
setvar VAR_0x8004, 1
setvar VAR_0x8005, 1
setvar VAR_0x8006, 8
setvar VAR_0x8007, 5
special sub_8139560
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 1 @ horizontal pan
setvar VAR_0x8006, 8 @ num shakes
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
applymovement 10, SootopolisCity_Movement_1E5BCF
applymovement 9, SootopolisCity_Movement_1E5BF0
@ -356,11 +356,11 @@ SootopolisCity_EventScript_1E5A82:: @ 81E5A82
applymovement 10, SootopolisCity_Movement_1E5BB8
applymovement 9, SootopolisCity_Movement_1E5BE5
waitmovement 0
setvar VAR_0x8004, 1
setvar VAR_0x8005, 1
setvar VAR_0x8006, 8
setvar VAR_0x8007, 5
special sub_8139560
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 1 @ horizontal pan
setvar VAR_0x8006, 8 @ num shakes
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
applymovement 10, SootopolisCity_Movement_1E5BCF
applymovement 9, SootopolisCity_Movement_1E5BF0
@ -517,19 +517,19 @@ SootopolisCity_EventScript_1E5C1E:: @ 81E5C1E
waitmovement 0
waitse
playmoncry SPECIES_RAYQUAZA, 2
setvar VAR_0x8004, 1
setvar VAR_0x8005, 1
setvar VAR_0x8006, 8
setvar VAR_0x8007, 3
special sub_8139560
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 1 @ horizontal pan
setvar VAR_0x8006, 8 @ num shakes
setvar VAR_0x8007, 3 @ shake delay
special ShakeCamera
waitstate
waitse
playmoncry SPECIES_RAYQUAZA, 2
setvar VAR_0x8004, 1
setvar VAR_0x8005, 2
setvar VAR_0x8006, 8
setvar VAR_0x8007, 5
special sub_8139560
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 2 @ horizontal pan
setvar VAR_0x8006, 8 @ num shakes
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
waitmoncry
setweather WEATHER_NONE
@ -570,19 +570,19 @@ SootopolisCity_EventScript_1E5CCE:: @ 81E5CCE
waitmovement 0
waitse
playmoncry SPECIES_RAYQUAZA, 2
setvar VAR_0x8004, 1
setvar VAR_0x8005, 1
setvar VAR_0x8006, 8
setvar VAR_0x8007, 3
special sub_8139560
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 1 @ horizontal pan
setvar VAR_0x8006, 8 @ num shakes
setvar VAR_0x8007, 3 @ shake delay
special ShakeCamera
waitstate
waitse
playmoncry SPECIES_RAYQUAZA, 2
setvar VAR_0x8004, 1
setvar VAR_0x8005, 2
setvar VAR_0x8006, 8
setvar VAR_0x8007, 5
special sub_8139560
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 2 @ horizontal pan
setvar VAR_0x8006, 8 @ num shakes
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
waitmoncry
setweather WEATHER_NONE

View File

@ -27,11 +27,11 @@ EventScript_27229B:: @ 827229B
end
EventScript_2722A7:: @ 82722A7
setvar VAR_0x8004, 1
setvar VAR_0x8005, 1
setvar VAR_0x8006, 8
setvar VAR_0x8007, 5
special sub_8139560
setvar VAR_0x8004, 1 @ vertical pan
setvar VAR_0x8005, 1 @ horizontal pan
setvar VAR_0x8006, 8 @ num shakes
setvar VAR_0x8007, 5 @ shake delay
special ShakeCamera
waitstate
releaseall
end

View File

@ -320,7 +320,7 @@ gSpecials:: @ 81DBA64
def_special GetShieldToyTVDecorationInfo
def_special IsPokerusInParty
def_special SetSootopolisGymCrackedIceMetatiles
def_special sub_8139560
def_special ShakeCamera
def_special StartGroudonKyogreBattle
def_special BattleSetup_StartLegendaryBattle
def_special StartRegiBattle
@ -414,7 +414,7 @@ gSpecials:: @ 81DBA64
def_special GetContestLadyMonSpecies
def_special GetContestLadyCategory
def_special PutLilycoveContestLadyShowOnTheAir
def_special sub_813B880
def_special CloseBattlePikeCurtain
def_special CallApprenticeFunction
def_special ShouldTryGetTrainerScript
def_special ShowMapNamePopup
@ -440,7 +440,7 @@ gSpecials:: @ 81DBA64
def_special sub_802E3C4
def_special sub_8027A5C
def_special sub_8027AAC
def_special sub_8139980
def_special OffsetCameraForBattle
def_special GetDeptStoreDefaultFloorChoice
def_special BufferVarsForIVRater
def_special sub_80F905C
@ -505,7 +505,7 @@ gSpecials:: @ 81DBA64
def_special sub_80A08CC
def_special Unused_SetWeatherSunny
def_special sub_81AFDA0
def_special sub_813B4E0
def_special IsTrainerRegistered
def_special ShouldDoBrailleRegicePuzzle
def_special EnableNationalPokedex
def_special ScriptMenu_CreateLilycoveSSTidalMultichoice
@ -517,7 +517,7 @@ gSpecials:: @ 81DBA64
def_special sub_813B534
def_special CallTrainerHillFunction
def_special Script_DoRayquazaScene @ Listed twice
def_special sub_813B80C
def_special LoopWingFlapSE
def_special sub_81D4BEC
def_special sub_80224D0
def_special TryBufferWaldaPhrase

View File

@ -5,142 +5,142 @@
.align 2
gUnknown_862B810:: @ 862B810
gText_EasyChatKeyboard_ABCDEFothers:: @ 862B810
.string "{CLEAR 11}A{CLEAR 6}B{CLEAR 6}C{CLEAR 26}D{CLEAR 6}E{CLEAR 6}F{CLEAR 26}others$"
gUnknown_862B832:: @ 862B832
gText_EasyChatKeyboard_GHIJKL:: @ 862B832
.string "{CLEAR 11}G{CLEAR 6}H{CLEAR 6}I{CLEAR 26}J{CLEAR 6}K{CLEAR 6}L$"
gUnknown_862B84B:: @ 862B84B
gText_EasyChatKeyboard_MNOPQRS:: @ 862B84B
.string "{CLEAR 11}M{CLEAR 6}N{CLEAR 6}O{CLEAR 26}P{CLEAR 6}Q{CLEAR 6}R{CLEAR 6}S{CLEAR 26} $"
gUnknown_862B86C:: @ 862B86C
gText_EasyChatKeyboard_TUVWXYZ:: @ 862B86C
.string "{CLEAR 11}T{CLEAR 6}U{CLEAR 6}V{CLEAR 26}W{CLEAR 6}X{CLEAR 6}Y{CLEAR 6}Z{CLEAR 26} $"
gUnknown_0862B88D:: @ 862B88D
gText_NamingScreenKeyboard_abcdef:: @ 862B88D
.string "{CLEAR 11}a{CLEAR 6}b{CLEAR 6}c{CLEAR 26}d{CLEAR 6}e{CLEAR 6}f{CLEAR 6} {CLEAR 30}.$"
gUnknown_0862B8AE:: @ 862B8AE
gText_NamingScreenKeyboard_ghijkl:: @ 862B8AE
.string "{CLEAR 11}g{CLEAR 6}h{CLEAR 7}i{CLEAR 27}j{CLEAR 7}k{CLEAR 7}l{CLEAR 7} {CLEAR 30},$"
gUnknown_0862B8CF:: @ 862B8CF
gText_NamingScreenKeyboard_mnopqrs:: @ 862B8CF
.string "{CLEAR 11}m{CLEAR 6}n{CLEAR 6}o{CLEAR 26}p{CLEAR 6}q{CLEAR 7}r{CLEAR 6}s{CLEAR 27} $"
gUnknown_0862B8F0:: @ 862B8F0
gText_NamingScreenKeyboard_tuvwxyz:: @ 862B8F0
.string "{CLEAR 11}t{CLEAR 6}u{CLEAR 6}v{CLEAR 26}w{CLEAR 6}x{CLEAR 6}y{CLEAR 6}z{CLEAR 26} $"
gUnknown_0862B911:: @ 862B911
gText_NamingScreenKeyboard_ABCDEF:: @ 862B911
.string "{CLEAR 11}A{CLEAR 6}B{CLEAR 6}C{CLEAR 26}D{CLEAR 6}E{CLEAR 6}F{CLEAR 6} {CLEAR 30}.$"
gUnknown_0862B932:: @ 862B932
gText_NamingScreenKeyboard_GHIJKL:: @ 862B932
.string "{CLEAR 11}G{CLEAR 6}H{CLEAR 6}I{CLEAR 26}J{CLEAR 6}K{CLEAR 6}L{CLEAR 6} {CLEAR 30},$"
gUnknown_0862B953:: @ 862B953
gText_NamingScreenKeyboard_MNOPQRS:: @ 862B953
.string "{CLEAR 11}M{CLEAR 6}N{CLEAR 6}O{CLEAR 26}P{CLEAR 6}Q{CLEAR 6}R{CLEAR 6}S{CLEAR 26} $"
gUnknown_0862B974:: @ 862B974
gText_NamingScreenKeyboard_TUVWXYZ:: @ 862B974
.string "{CLEAR 11}T{CLEAR 6}U{CLEAR 6}V{CLEAR 26}W{CLEAR 6}X{CLEAR 6}Y{CLEAR 6}Z{CLEAR 26} $"
gUnknown_0862B995:: @ 862B995
gText_NamingScreenKeyboard_01234:: @ 862B995
.string "{CLEAR 11}0{CLEAR 16}1{CLEAR 16}2{CLEAR 16}3{CLEAR 16}4{CLEAR 16} $"
gUnknown_0862B9AE:: @ 862B9AE
gText_NamingScreenKeyboard_56789:: @ 862B9AE
.string "{CLEAR 11}5{CLEAR 16}6{CLEAR 16}7{CLEAR 16}8{CLEAR 16}9{CLEAR 16} $"
gUnknown_0862B9C7:: @ 862B9C7
gText_NamingScreenKeyboard_Symbols1:: @ 862B9C7
.string "{CLEAR 12}!{CLEAR 17}?{CLEAR 16}{CLEAR 16}{CLEAR 16}/{CLEAR 17}-$"
gUnknown_0862B9E0:: @ 862B9E0
gText_NamingScreenKeyboard_Symbols2:: @ 862B9E0
.string "{CLEAR 11}{CLEAR 16}{CLEAR 16}{CLEAR 18}{CLEAR 19}'{CLEAR 18} $"
gUnknown_0862B9F9:: @ 862B9F9
gText_UnionRoomChatKeyboard_ABCDE:: @ 862B9F9
.string "ABCDE$"
gUnknown_0862B9FF:: @ 862B9FF
gText_UnionRoomChatKeyboard_FGHIJ:: @ 862B9FF
.string "FGHIJ$"
gUnknown_0862BA05:: @ 862BA05
gText_UnionRoomChatKeyboard_KLMNO:: @ 862BA05
.string "KLMNO$"
gUnknown_0862BA0B:: @ 862BA0B
gText_UnionRoomChatKeyboard_PQRST:: @ 862BA0B
.string "PQRST$"
gUnknown_0862BA11:: @ 862BA11
gText_UnionRoomChatKeyboard_UVWXY:: @ 862BA11
.string "UVWXY$"
gUnknown_0862BA17:: @ 862BA17
gText_UnionRoomChatKeyboard_Z:: @ 862BA17
.string "Z $"
gUnknown_0862BA1D:: @ 862BA1D
gText_UnionRoomChatKeyboard_01234Upper:: @ 862BA1D
.string "01234$"
gUnknown_0862BA23:: @ 862BA23
gText_UnionRoomChatKeyboard_56789Upper:: @ 862BA23
.string "56789$"
gUnknown_0862BA29:: @ 862BA29
gText_UnionRoomChatKeyboard_PunctuationUpper:: @ 862BA29
.string ".,!? $"
gUnknown_0862BA2F:: @ 862BA2F
gText_UnionRoomChatKeyboard_SymbolsUpper:: @ 862BA2F
.string "-/& $"
gUnknown_0862BA35:: @ 862BA35
gText_UnionRoomChatKeyboard_abcde:: @ 862BA35
.string "abcde$"
gUnknown_0862BA3B:: @ 862BA3B
gText_UnionRoomChatKeyboard_fghij:: @ 862BA3B
.string "fghij$"
gUnknown_0862BA41:: @ 862BA41
gText_UnionRoomChatKeyboard_klmno:: @ 862BA41
.string "klmno$"
gUnknown_0862BA47:: @ 862BA47
gText_UnionRoomChatKeyboard_pqrst:: @ 862BA47
.string "pqrst$"
gUnknown_0862BA4D:: @ 862BA4D
gText_UnionRoomChatKeyboard_uvwxy:: @ 862BA4D
.string "uvwxy$"
gUnknown_0862BA53:: @ 862BA53
gText_UnionRoomChatKeyboard_z:: @ 862BA53
.string "z $"
gUnknown_0862BA59:: @ 862BA59
gText_UnionRoomChatKeyboard_01234Lower:: @ 862BA59
.string "01234$"
gUnknown_0862BA5F:: @ 862BA5F
gText_UnionRoomChatKeyboard_56789Lower:: @ 862BA5F
.string "56789$"
gUnknown_0862BA65:: @ 862BA65
gText_UnionRoomChatKeyboard_PunctuationLower:: @ 862BA65
.string ".,!? $"
gUnknown_0862BA6B:: @ 862BA6B
gText_UnionRoomChatKeyboard_SymbolsLower:: @ 862BA6B
.string "-/& $"
.string "$$$$$$$$"
gUnknown_0862BA79:: @ 862BA79
gText_UnionRoomChatKeyboard_Emoji1:: @ 862BA79
.string "{EMOJI_MISCHIEVOUS}{EMOJI_HAPPY}{EMOJI_ANGRY}{EMOJI_SURPRISED}{EMOJI_BIGANGER}$"
gUnknown_0862BA84:: @ 862BA84
gText_UnionRoomChatKeyboard_Emoji2:: @ 862BA84
.string "{EMOJI_BIGSMILE}{EMOJI_EVIL}{EMOJI_NEUTRAL}{EMOJI_TIRED}{EMOJI_SHOCKED}$"
gUnknown_0862BA8F:: @ 862BA8F
gText_UnionRoomChatKeyboard_Emoji3:: @ 862BA8F
.string "{EMOJI_LEAF}{EMOJI_FIRE}{EMOJI_WATER}{EMOJI_BOLT}{EMOJI_BALL}$"
gUnknown_0862BA9A:: @ 862BA9A
gText_UnionRoomChatKeyboard_Emoji4:: @ 862BA9A
.string "{EMOJI_LEFT_PAREN}{EMOJI_RIGHT_PAREN}{EMOJI_TILDE}$"
gUnknown_0862BAA3:: @ 862BAA3
gText_UnionRoomChatKeyboard_Emoji5:: @ 862BAA3
.string "{EMOJI_LEFT_EYE}{EMOJI_RIGHT_EYE}{EMOJI_SMALLWHEEL}{EMOJI_SPHERE}{EMOJI_IRRITATED}$"
gUnknown_0862BAAE:: @ 862BAAE
gText_UnionRoomChatKeyboard_Emoji6:: @ 862BAAE
.string "{EMOJI_AT}{EMOJI_BIGWHEEL}{EMOJI_TONGUE}{EMOJI_ACUTE}{EMOJI_GRAVE}$"
gUnknown_0862BAB9:: @ 862BAB9
gText_UnionRoomChatKeyboard_Emoji7:: @ 862BAB9
.string "{EMOJI_RIGHT_FIST}{EMOJI_LEFT_FIST}{EMOJI_TRIANGLE_OUTLINE}{EMOJI_UNION}{EMOJI_GREATER_THAN}$"
gUnknown_0862BAC4:: @ 862BAC4
gText_UnionRoomChatKeyboard_Emoji8:: @ 862BAC4
.string "{EMOJI_CIRCLE}{EMOJI_TRIANGLE}{EMOJI_SQUARE}{EMOJI_HEART}{EMOJI_MOON}$"
gUnknown_0862BACF:: @ 862BACF
gText_UnionRoomChatKeyboard_Emoji9:: @ 862BACF
.string "{EMOJI_NOTE}{EMOJI_PLUS}{EMOJI_MINUS}{EMOJI_EQUALS}{EMOJI_PIPE}$"
gUnknown_0862BADA:: @ 862BADA
gText_UnionRoomChatKeyboard_Emoji10:: @ 862BADA
.string "{EMOJI_HIGHBAR}{EMOJI_UNDERSCORE};: $"

View File

@ -1,6 +1,6 @@
#include "global.h"
#include "window.h"
#include "alloc.h"
#include "malloc.h"
#include "bg.h"
#include "blit.h"

View File

@ -9,6 +9,16 @@
#define KBEVENT_PRESSED_SELECT 8
#define KBEVENT_PRESSED_START 9
#define KBROW_COUNT 4
enum
{
KBPAGE_LETTERS_LOWER,
KBPAGE_LETTERS_UPPER,
KBPAGE_SYMBOLS,
KBPAGE_COUNT,
};
enum
{
NAMING_SCREEN_PLAYER,
@ -57,12 +67,6 @@ struct NamingScreenData {
/*0x1E3C*/ MainCallback returnCallback;
};
enum
{
PAGE_OTHERS,
PAGE_UPPER,
PAGE_LOWER,
};
enum
{

View File

@ -2512,52 +2512,53 @@ extern const u8 gEasyChatGroupName_Move2[];
extern const u8 gEasyChatGroupName_TrendySaying[];
extern const u8 gEasyChatGroupName_Pokemon2[];
extern const u8 gUnknown_862B810[];
extern const u8 gUnknown_862B832[];
extern const u8 gUnknown_862B84B[];
extern const u8 gUnknown_862B86C[];
extern const u8 gUnknown_0862B88D[];
extern const u8 gUnknown_0862B8AE[];
extern const u8 gUnknown_0862B8CF[];
extern const u8 gUnknown_0862B8F0[];
extern const u8 gUnknown_0862B911[];
extern const u8 gUnknown_0862B932[];
extern const u8 gUnknown_0862B953[];
extern const u8 gUnknown_0862B974[];
extern const u8 gUnknown_0862B995[];
extern const u8 gUnknown_0862B9AE[];
extern const u8 gUnknown_0862B9C7[];
extern const u8 gUnknown_0862B9E0[];
extern const u8 gUnknown_0862B9F9[];
extern const u8 gUnknown_0862B9FF[];
extern const u8 gUnknown_0862BA05[];
extern const u8 gUnknown_0862BA0B[];
extern const u8 gUnknown_0862BA11[];
extern const u8 gUnknown_0862BA17[];
extern const u8 gUnknown_0862BA1D[];
extern const u8 gUnknown_0862BA23[];
extern const u8 gUnknown_0862BA29[];
extern const u8 gUnknown_0862BA2F[];
extern const u8 gUnknown_0862BA35[];
extern const u8 gUnknown_0862BA3B[];
extern const u8 gUnknown_0862BA41[];
extern const u8 gUnknown_0862BA47[];
extern const u8 gUnknown_0862BA4D[];
extern const u8 gUnknown_0862BA53[];
extern const u8 gUnknown_0862BA59[];
extern const u8 gUnknown_0862BA5F[];
extern const u8 gUnknown_0862BA65[];
extern const u8 gUnknown_0862BA6B[];
extern const u8 gUnknown_0862BA79[];
extern const u8 gUnknown_0862BA84[];
extern const u8 gUnknown_0862BA8F[];
extern const u8 gUnknown_0862BA9A[];
extern const u8 gUnknown_0862BAA3[];
extern const u8 gUnknown_0862BAAE[];
extern const u8 gUnknown_0862BAB9[];
extern const u8 gUnknown_0862BAC4[];
extern const u8 gUnknown_0862BACF[];
extern const u8 gUnknown_0862BADA[];
// Text Input Strings
extern const u8 gText_EasyChatKeyboard_ABCDEFothers[];
extern const u8 gText_EasyChatKeyboard_GHIJKL[];
extern const u8 gText_EasyChatKeyboard_MNOPQRS[];
extern const u8 gText_EasyChatKeyboard_TUVWXYZ[];
extern const u8 gText_NamingScreenKeyboard_abcdef[];
extern const u8 gText_NamingScreenKeyboard_ghijkl[];
extern const u8 gText_NamingScreenKeyboard_mnopqrs[];
extern const u8 gText_NamingScreenKeyboard_tuvwxyz[];
extern const u8 gText_NamingScreenKeyboard_ABCDEF[];
extern const u8 gText_NamingScreenKeyboard_GHIJKL[];
extern const u8 gText_NamingScreenKeyboard_MNOPQRS[];
extern const u8 gText_NamingScreenKeyboard_TUVWXYZ[];
extern const u8 gText_NamingScreenKeyboard_01234[];
extern const u8 gText_NamingScreenKeyboard_56789[];
extern const u8 gText_NamingScreenKeyboard_Symbols1[];
extern const u8 gText_NamingScreenKeyboard_Symbols2[];
extern const u8 gText_UnionRoomChatKeyboard_ABCDE[];
extern const u8 gText_UnionRoomChatKeyboard_FGHIJ[];
extern const u8 gText_UnionRoomChatKeyboard_KLMNO[];
extern const u8 gText_UnionRoomChatKeyboard_PQRST[];
extern const u8 gText_UnionRoomChatKeyboard_UVWXY[];
extern const u8 gText_UnionRoomChatKeyboard_Z[];
extern const u8 gText_UnionRoomChatKeyboard_01234Upper[];
extern const u8 gText_UnionRoomChatKeyboard_56789Upper[];
extern const u8 gText_UnionRoomChatKeyboard_PunctuationUpper[];
extern const u8 gText_UnionRoomChatKeyboard_SymbolsUpper[];
extern const u8 gText_UnionRoomChatKeyboard_abcde[];
extern const u8 gText_UnionRoomChatKeyboard_fghij[];
extern const u8 gText_UnionRoomChatKeyboard_klmno[];
extern const u8 gText_UnionRoomChatKeyboard_pqrst[];
extern const u8 gText_UnionRoomChatKeyboard_uvwxy[];
extern const u8 gText_UnionRoomChatKeyboard_z[];
extern const u8 gText_UnionRoomChatKeyboard_01234Lower[];
extern const u8 gText_UnionRoomChatKeyboard_56789Lower[];
extern const u8 gText_UnionRoomChatKeyboard_PunctuationLower[];
extern const u8 gText_UnionRoomChatKeyboard_SymbolsLower[];
extern const u8 gText_UnionRoomChatKeyboard_Emoji1[];
extern const u8 gText_UnionRoomChatKeyboard_Emoji2[];
extern const u8 gText_UnionRoomChatKeyboard_Emoji3[];
extern const u8 gText_UnionRoomChatKeyboard_Emoji4[];
extern const u8 gText_UnionRoomChatKeyboard_Emoji5[];
extern const u8 gText_UnionRoomChatKeyboard_Emoji6[];
extern const u8 gText_UnionRoomChatKeyboard_Emoji7[];
extern const u8 gText_UnionRoomChatKeyboard_Emoji8[];
extern const u8 gText_UnionRoomChatKeyboard_Emoji9[];
extern const u8 gText_UnionRoomChatKeyboard_Emoji10[];
// E-Reader
extern const u8 gUnknown_085EDFD6[];

View File

@ -1,6 +1,17 @@
#ifndef GUARD_UNION_ROOM_CHAT_H
#define GUARD_UNION_ROOM_CHAT_H
enum
{
UNION_ROOM_KB_PAGE_UPPER,
UNION_ROOM_KB_PAGE_LOWER,
UNION_ROOM_KB_PAGE_EMOJI,
UNION_ROOM_KB_PAGE_COUNT
};
#define UNION_ROOM_KB_ROW_COUNT 10
void sub_801DD98(void);
void copy_strings_to_sav1(void);

View File

@ -49,15 +49,15 @@ SECTIONS {
{
src/crt0.o(.text);
src/main.o(.text);
src/alloc.o(.text);
src/dma3_manager.o(.text);
src/gpu_regs.o(.text);
src/bg.o(.text);
src/blit.o(.text);
src/window.o(.text);
src/text.o(.text);
src/sprite.o(.text);
src/string_util.o(.text);
gflib/malloc.o(.text);
gflib/dma3_manager.o(.text);
gflib/gpu_regs.o(.text);
gflib/bg.o(.text);
gflib/blit.o(.text);
gflib/window.o(.text);
gflib/text.o(.text);
gflib/sprite.o(.text);
gflib/string_util.o(.text);
src/link.o(.text);
src/link_rfu.o(.text);
src/union_room.o(.text);
@ -361,7 +361,21 @@ SECTIONS {
src/librfu_rfu.o(.text);
asm/librfu.o(.text);
src/libisagbprn.o(.text);
src/libagbsyscall.o(.text);
*libagbsyscall.a:ArcTan2.o(.text);
*libagbsyscall.a:BgAffineSet.o(.text);
*libagbsyscall.a:CpuFastSet.o(.text);
*libagbsyscall.a:CpuSet.o(.text);
*libagbsyscall.a:Div.o(.text);
*libagbsyscall.a:LZ77UnCompVram.o(.text);
*libagbsyscall.a:LZ77UnCompWram.o(.text);
*libagbsyscall.a:MultiBoot.o(.text);
*libagbsyscall.a:ObjAffineSet.o(.text);
*libagbsyscall.a:RLUnCompVram.o(.text);
*libagbsyscall.a:RLUnCompWram.o(.text);
*libagbsyscall.a:RegisterRamReset.o(.text);
*libagbsyscall.a:SoftReset.o(.text);
*libagbsyscall.a:Sqrt.o(.text);
*libagbsyscall.a:VBlankIntrWait.o(.text);
*libgcc.a:_call_via_rX.o(.text);
*libgcc.a:_divdi3.o(.text);
*libgcc.a:_divsi3.o(.text);
@ -420,12 +434,12 @@ SECTIONS {
ALIGN(4)
{
src/main.o(.rodata);
src/bg.o(.rodata);
src/window.o(.rodata);
src/text.o(.rodata);
src/sprite.o(.rodata);
gflib/bg.o(.rodata);
gflib/window.o(.rodata);
gflib/text.o(.rodata);
gflib/sprite.o(.rodata);
data/io_reg.o(.rodata);
src/string_util.o(.rodata);
gflib/string_util.o(.rodata);
src/link.o(.rodata);
src/link.o(.rodata.str1.4);
src/link_rfu.o(.rodata);

View File

@ -14,6 +14,7 @@ SECTIONS {
. = 0x1C000;
src/*.o(ewram_data);
gflib/*.o(ewram_data);
. = 0x40000;
}
@ -25,12 +26,14 @@ SECTIONS {
{
/* .bss starts at 0x3000000 */
src/*.o(.bss);
gflib/*.o(.bss);
/* .bss.code starts at 0x3001AA8 */
src/m4a.o(.bss.code);
/* COMMON starts at 0x30022A8 */
src/*.o(COMMON);
gflib/*.o(COMMON);
*libc.a:sbrkr.o(COMMON);
end = .;
. = 0x8000;
@ -43,6 +46,7 @@ SECTIONS {
{
src/crt0.o(.text);
src/*.o(.text);
gflib/*.o(.text);
asm/*.o(.text);
} =0
@ -67,7 +71,7 @@ SECTIONS {
asm/librfu_intr.o(.text);
src/librfu_rfu.o(.text);
asm/librfu.o(.text);
src/libagbsyscall.o(.text);
*libagbsyscall.a:*.o(.text*);
*libgcc.a:*.o(.text*);
*libc.a:*.o(.text*);
src/libisagbprn.o(.text);
@ -77,6 +81,7 @@ SECTIONS {
ALIGN(4)
{
src/*.o(.rodata*);
gflib/*.o(.rodata*);
data/*.o(.rodata*);
} =0

98
libagbsyscall/Makefile Normal file
View File

@ -0,0 +1,98 @@
TOOLCHAIN := $(DEVKITARM)
COMPARE ?= 0
ifeq ($(CC),)
HOSTCC := gcc
else
HOSTCC := $(CC)
endif
ifeq ($(CXX),)
HOSTCXX := g++
else
HOSTCXX := $(CXX)
endif
ifneq (,$(wildcard $(TOOLCHAIN)/base_tools))
include $(TOOLCHAIN)/base_tools
else
export PATH := $(TOOLCHAIN)/bin:$(PATH)
PREFIX := arm-none-eabi-
OBJCOPY := $(PREFIX)objcopy
export CC := $(PREFIX)gcc
export AS := $(PREFIX)as
endif
export CPP := $(PREFIX)cpp
export LD := $(PREFIX)ld
ifeq ($(OS),Windows_NT)
EXE := .exe
else
EXE :=
endif
ASFLAGS := -mcpu=arm7tdmi
ARFLAGS := rc
SYSCALLS := IntrWait \
RegisterRamReset \
Sqrt \
MusicPlayerOpen \
SoundBiasReset \
SoundDriverVSyncOn \
Mod \
VBlankIntrWait \
MusicPlayerStart \
SoundDriverVSyncOff \
HuffUnComp \
SoftResetExram \
MusicPlayerFadeOut \
LZ77UnCompWram \
SoundDriverMain \
SoundBiasChange \
LZ77UnCompVram \
ArcTan2 \
MusicPlayerStop \
DivArm \
ModArm \
SoundDriverVSync \
SoundDriverInit \
BgAffineSet \
Diff8bitUnFilterWram \
MultiBoot \
MidiKey2Freq \
Div \
Diff8bitUnFilterVram \
ArcTan \
ObjAffineSet \
SoftResetRom \
SoundDriverMode \
RLUnCompWram \
BitUnPack \
SoundChannelClear \
CpuFastSet \
CpuSet \
Diff16bitUnFilter \
SoundBiasSet \
MusicPlayerContinue \
SoftReset \
RLUnCompVram
ASM_SRCS := libagbsyscall.s
ASM_OBJS := $(foreach syscall, $(SYSCALLS), $(syscall).o)
LIB := libagbsyscall.a
.PHONY: all clean
all: $(LIB)
@:
clean:
rm -f $(LIB) $(ASM_OBJS)
$(LIB): $(ASM_OBJS)
$(AR) $(ARFLAGS) $@ $^
$(ASM_OBJS): libagbsyscall.s
$(AS) $(ASFLAGS) --defsym L_$(*F)=1 -o $@ $<

View File

@ -0,0 +1,432 @@
.include "../constants/gba_constants.inc"
.include "../asm/macros/function.inc"
.text
.set SOFT_RESET_DIRECT_BUF, 0x03007FFA
.set RESET_EX_WRAM_FLAG, 0x1
.ifdef NO_GRANULAR_AGBSYSCALL
.set L_IntrWait, 1
.set L_RegisterRamReset, 1
.set L_Sqrt, 1
.set L_MusicPlayerOpen, 1
.set L_SoundBiasReset, 1
.set L_SoundDriverVSyncOn, 1
.set L_Mod, 1
.set L_VBlankIntrWait, 1
.set L_MusicPlayerStart, 1
.set L_SoundDriverVSyncOff, 1
.set L_HuffUnComp, 1
.set L_SoftResetExram, 1
.set L_MusicPlayerFadeOut, 1
.set L_LZ77UnCompWram, 1
.set L_SoundDriverMain, 1
.set L_SoundBiasChange, 1
.set L_LZ77UnCompVram, 1
.set L_ArcTan2, 1
.set L_MusicPlayerStop, 1
.set L_DivArm, 1
.set L_ModArm, 1
.set L_SoundDriverVSync, 1
.set L_SoundDriverInit, 1
.set L_BgAffineSet, 1
.set L_Diff8bitUnFilterWram, 1
.set L_MultiBoot, 1
.set L_MidiKey2Freq, 1
.set L_Div, 1
.set L_Diff8bitUnFilterVram, 1
.set L_ArcTan, 1
.set L_ObjAffineSet, 1
.set L_SoftResetRom, 1
.set L_SoundDriverMode, 1
.set L_RLUnCompWram, 1
.set L_BitUnPack, 1
.set L_SoundChannelClear, 1
.set L_CpuFastSet, 1
.set L_CpuSet, 1
.set L_Diff16bitUnFilter, 1
.set L_SoundBiasSet, 1
.set L_MusicPlayerContinue, 1
.set L_SoftReset, 1
.set L_RLUnCompVram, 1
.endif
.ifdef L_IntrWait
thumb_func_start IntrWait
IntrWait:
mov r2, #0
swi 4
bx lr
thumb_func_end IntrWait
.endif
.ifdef L_RegisterRamReset
thumb_func_start RegisterRamReset
RegisterRamReset:
swi 1
bx lr
thumb_func_end RegisterRamReset
.endif
.ifdef L_Sqrt
thumb_func_start Sqrt
Sqrt:
swi 8
bx lr
thumb_func_end Sqrt
.endif
.ifdef L_MusicPlayerOpen
thumb_func_start MusicPlayerOpen
MusicPlayerOpen:
swi 32
bx lr
thumb_func_end MusicPlayerOpen
.endif
.ifdef L_SoundBiasReset
thumb_func_start SoundBiasReset
SoundBiasReset:
mov r0, #0
swi 25
bx lr
thumb_func_end SoundBiasReset
.endif
.ifdef L_SoundDriverVSyncOn
thumb_func_start SoundDriverVSyncOn
SoundDriverVSyncOn:
swi 41
bx lr
thumb_func_end SoundDriverVSyncOn
.endif
.ifdef L_Mod
thumb_func_start Mod
Mod:
swi 6
mov r0, r1
bx lr
thumb_func_end Mod
.endif
.ifdef L_VBlankIntrWait
thumb_func_start VBlankIntrWait
VBlankIntrWait:
mov r2, #0
swi 5
bx lr
thumb_func_end VBlankIntrWait
.endif
.ifdef L_MusicPlayerStart
thumb_func_start MusicPlayerStart
MusicPlayerStart:
swi 33
bx lr
thumb_func_end MusicPlayerStart
.endif
.ifdef L_SoundDriverVSyncOff
thumb_func_start SoundDriverVSyncOff
SoundDriverVSyncOff:
swi 40
bx lr
thumb_func_end SoundDriverVSyncOff
.endif
.ifdef L_HuffUnComp
thumb_func_start HuffUnComp
HuffUnComp:
swi 19
bx lr
thumb_func_end HuffUnComp
.endif
.ifdef L_SoftResetExram
thumb_func_start SoftResetExram
SoftResetExram:
ldr r3, =REG_IME
mov r2, #0
strb r2, [r3, #0]
ldr r3, =SOFT_RESET_DIRECT_BUF
mov r2, #1
strb r2, [r3, #0]
sub r3, #SOFT_RESET_DIRECT_BUF - 0x3007f00
mov sp, r3
mov r2, #RESET_EX_WRAM_FLAG
bic r0, r2
swi 1
swi 0
.pool
thumb_func_end SoftResetExram
.endif
.ifdef L_MusicPlayerFadeOut
thumb_func_start MusicPlayerFadeOut
MusicPlayerFadeOut:
swi 36
bx lr
thumb_func_end MusicPlayerFadeOut
.endif
.ifdef L_LZ77UnCompWram
thumb_func_start LZ77UnCompWram
LZ77UnCompWram:
swi 17
bx lr
thumb_func_end LZ77UnCompWram
.endif
.ifdef L_SoundDriverMain
thumb_func_start SoundDriverMain
SoundDriverMain:
swi 28
bx lr
thumb_func_end SoundDriverMain
.endif
.ifdef L_SoundBiasChange
thumb_func_start SoundBiasChange
SoundBiasChange:
swi 25
bx lr
thumb_func_end SoundBiasChange
.endif
.ifdef L_LZ77UnCompVram
thumb_func_start LZ77UnCompVram
LZ77UnCompVram:
swi 18
bx lr
thumb_func_end LZ77UnCompVram
.endif
.ifdef L_ArcTan2
thumb_func_start ArcTan2
ArcTan2:
swi 10
bx lr
thumb_func_end ArcTan2
.endif
.ifdef L_MusicPlayerStop
thumb_func_start MusicPlayerStop
MusicPlayerStop:
swi 34
bx lr
thumb_func_end MusicPlayerStop
.endif
.ifdef L_DivArm
thumb_func_start DivArm
DivArm:
swi 7
bx lr
thumb_func_end DivArm
.endif
.ifdef L_ModArm
thumb_func_start ModArm
ModArm:
swi 7
mov r0, r1
bx lr
thumb_func_end ModArm
.endif
.ifdef L_SoundDriverVSync
thumb_func_start SoundDriverVSync
SoundDriverVSync:
swi 29
bx lr
thumb_func_end SoundDriverVSync
.endif
.ifdef L_SoundDriverInit
thumb_func_start SoundDriverInit
SoundDriverInit:
swi 26
bx lr
thumb_func_end SoundDriverInit
.endif
.ifdef L_BgAffineSet
thumb_func_start BgAffineSet
BgAffineSet:
swi 14
bx lr
thumb_func_end BgAffineSet
.endif
.ifdef L_Diff8bitUnFilterWram
thumb_func_start Diff8bitUnFilterWram
Diff8bitUnFilterWram:
swi 22
bx lr
thumb_func_end Diff8bitUnFilterWram
.endif
.ifdef L_MultiBoot
thumb_func_start MultiBoot
MultiBoot:
mov r1, #1
swi 37
bx lr
thumb_func_end MultiBoot
.endif
.ifdef L_MidiKey2Freq
thumb_func_start MidiKey2Freq
MidiKey2Freq:
swi 31
bx lr
thumb_func_end MidiKey2Freq
.endif
.ifdef L_Div
thumb_func_start Div
Div:
swi 6
bx lr
thumb_func_end Div
.endif
.ifdef L_Diff8bitUnFilterVram
thumb_func_start Diff8bitUnFilterVram
Diff8bitUnFilterVram:
swi 23
bx lr
thumb_func_end Diff8bitUnFilterVram
.endif
.ifdef L_ArcTan
thumb_func_start ArcTan
ArcTan:
swi 9
bx lr
thumb_func_end ArcTan
.endif
.ifdef L_ObjAffineSet
thumb_func_start ObjAffineSet
ObjAffineSet:
swi 15
bx lr
thumb_func_end ObjAffineSet
.endif
.ifdef L_SoftResetRom
thumb_func_start SoftResetRom
SoftResetRom:
ldr r3, =REG_IME
mov r2, #0
strb r2, [r3, #0]
ldr r3, =SOFT_RESET_DIRECT_BUF
mov r2, #0
strb r2, [r3, #0]
sub r3, #SOFT_RESET_DIRECT_BUF - 0x3007f00
mov sp, r3
swi 1
swi 0
.pool
thumb_func_end SoftResetRom
.endif
.ifdef L_SoundDriverMode
thumb_func_start SoundDriverMode
SoundDriverMode:
swi 27
bx lr
thumb_func_end SoundDriverMode
.endif
.ifdef L_RLUnCompWram
thumb_func_start RLUnCompWram
RLUnCompWram:
swi 20
bx lr
thumb_func_end RLUnCompWram
.endif
.ifdef L_BitUnPack
thumb_func_start BitUnPack
BitUnPack:
swi 16
bx lr
thumb_func_end BitUnPack
.endif
.ifdef L_SoundChannelClear
thumb_func_start SoundChannelClear
SoundChannelClear:
swi 30
bx lr
thumb_func_end SoundChannelClear
.endif
.ifdef L_CpuFastSet
thumb_func_start CpuFastSet
CpuFastSet:
swi 12
bx lr
thumb_func_end CpuFastSet
.endif
.ifdef L_CpuSet
thumb_func_start CpuSet
CpuSet:
swi 11
bx lr
thumb_func_end CpuSet
.endif
.ifdef L_Diff16bitUnFilter
thumb_func_start Diff16bitUnFilter
Diff16bitUnFilter:
swi 24
bx lr
thumb_func_end Diff16bitUnFilter
.endif
.ifdef L_SoundBiasSet
thumb_func_start SoundBiasSet
SoundBiasSet:
mov r0, #1
swi 25
bx lr
thumb_func_end SoundBiasSet
.endif
.ifdef L_MusicPlayerContinue
thumb_func_start MusicPlayerContinue
MusicPlayerContinue:
swi 35
bx lr
thumb_func_end MusicPlayerContinue
.endif
.ifdef L_SoftReset
thumb_func_start SoftReset
SoftReset:
ldr r3, =REG_IME
mov r2, #0
strb r2, [r3, #0]
ldr r1, =0x3007f00
mov sp, r1
swi 1
swi 0
.pool
thumb_func_end SoftReset
.endif
.ifdef L_RLUnCompVram
thumb_func_start RLUnCompVram
RLUnCompVram:
swi 21
bx lr
thumb_func_end RLUnCompVram
.endif
.align 2, 0 @ Don't pad with nop

View File

@ -10,7 +10,7 @@
#include "item.h"
#include "item_menu.h"
#include "main.h"
#include "alloc.h"
#include "malloc.h"
#include "menu.h"
#include "new_game.h"
#include "party_menu.h"

View File

@ -1,5 +1,5 @@
#include "global.h"
#include "alloc.h"
#include "malloc.h"
#include "battle_anim.h"
#include "battle_interface.h"
#include "decompress.h"

View File

@ -1,5 +1,5 @@
#include "global.h"
#include "alloc.h"
#include "malloc.h"
#include "battle_anim.h"
#include "battle_interface.h"
#include "decompress.h"

View File

@ -1,5 +1,5 @@
#include "global.h"
#include "alloc.h"
#include "malloc.h"
#include "battle.h"
#include "battle_anim.h"
#include "bg.h"

View File

@ -7,7 +7,7 @@
#include "decompress.h"
#include "dma3.h"
#include "gpu_regs.h"
#include "alloc.h"
#include "malloc.h"
#include "palette.h"
#include "pokemon_icon.h"
#include "sprite.h"

View File

@ -3,7 +3,7 @@
#include "contest.h"
#include "gpu_regs.h"
#include "graphics.h"
#include "alloc.h"
#include "malloc.h"
#include "palette.h"
#include "sound.h"
#include "sprite.h"

View File

@ -8,7 +8,7 @@
#include "event_data.h"
#include "overworld.h"
#include "util.h"
#include "alloc.h"
#include "malloc.h"
#include "string_util.h"
#include "random.h"
#include "task.h"

View File

@ -11,7 +11,7 @@
#include "palette.h"
#include "task.h"
#include "main.h"
#include "alloc.h"
#include "malloc.h"
#include "bg.h"
#include "gpu_regs.h"
#include "string_util.h"

View File

@ -6,7 +6,7 @@
#include "constants/battle_anim.h"
#include "battle_interface.h"
#include "main.h"
#include "alloc.h"
#include "malloc.h"
#include "graphics.h"
#include "random.h"
#include "util.h"

View File

@ -26,7 +26,7 @@
#include "link_rfu.h"
#include "load_save.h"
#include "main.h"
#include "alloc.h"
#include "malloc.h"
#include "m4a.h"
#include "palette.h"
#include "party_menu.h"

View File

@ -2759,7 +2759,7 @@ static void ExpandBattleTextBuffPlaceholders(const u8 *src, u8 *dst)
value = T1_READ_32(&src[srcID + 3]);
break;
}
ConvertIntToDecimalStringN(dst, value, 0, src[srcID + 2]);
ConvertIntToDecimalStringN(dst, value, STR_CONV_MODE_LEFT_ALIGN, src[srcID + 2]);
srcID += src[srcID + 1] + 3;
break;
case B_BUFF_MOVE: // move name

View File

@ -9,7 +9,7 @@
#include "task.h"
#include "battle_tower.h"
#include "party_menu.h"
#include "alloc.h"
#include "malloc.h"
#include "palette.h"
#include "script.h"
#include "battle_setup.h"

View File

@ -23,7 +23,7 @@
#include "main.h"
#include "load_save.h"
#include "script.h"
#include "alloc.h"
#include "malloc.h"
#include "overworld.h"
#include "event_scripts.h"
#include "constants/battle_frontier.h"

View File

@ -17,7 +17,7 @@
#include "list_menu.h"
#include "mail.h"
#include "main.h"
#include "alloc.h"
#include "malloc.h"
#include "menu.h"
#include "menu_helpers.h"
#include "overworld.h"

View File

@ -18,7 +18,7 @@
#include "international_string_util.h"
#include "sound.h"
#include "constants/songs.h"
#include "alloc.h"
#include "malloc.h"
#include "gpu_regs.h"
#include "constants/game_stat.h"
#include "trainer_hill.h"

View File

@ -8524,7 +8524,7 @@ static void atkAD_tryspiteppreduce(void)
PREPARE_MOVE_BUFFER(gBattleTextBuff1, gLastMoves[gBattlerTarget])
ConvertIntToDecimalStringN(gBattleTextBuff2, ppToDeduct, 0, 1);
ConvertIntToDecimalStringN(gBattleTextBuff2, ppToDeduct, STR_CONV_MODE_LEFT_ALIGN, 1);
PREPARE_BYTE_NUMBER_BUFFER(gBattleTextBuff2, 1, ppToDeduct)

View File

@ -9,7 +9,7 @@
#include "field_weather.h"
#include "gpu_regs.h"
#include "main.h"
#include "alloc.h"
#include "malloc.h"
#include "overworld.h"
#include "palette.h"
#include "random.h"

View File

@ -2,7 +2,7 @@
#include "battle.h"
#include "battle_anim.h"
#include "battle_controllers.h"
#include "alloc.h"
#include "malloc.h"
#include "pokemon.h"
#include "trainer_hill.h"
#include "party_menu.h"

View File

@ -12,7 +12,7 @@
#include "bg.h"
#include "palette.h"
#include "decompress.h"
#include "alloc.h"
#include "malloc.h"
#include "gpu_regs.h"
#include "text.h"
#include "text_window.h"

View File

@ -1,5 +1,5 @@
#include "global.h"
#include "alloc.h"
#include "malloc.h"
#include "berry_powder.h"
#include "bg.h"
#include "event_data.h"

View File

@ -1,7 +1,7 @@
#include "global.h"
#include "gpu_regs.h"
#include "multiboot.h"
#include "alloc.h"
#include "malloc.h"
#include "bg.h"
#include "graphics.h"
#include "main.h"

View File

@ -19,7 +19,7 @@
#include "string_util.h"
#include "strings.h"
#include "bg.h"
#include "alloc.h"
#include "malloc.h"
#include "scanline_effect.h"
#include "gpu_regs.h"
#include "graphics.h"
@ -401,7 +401,7 @@ static void PrintAllBerryData(void)
static void PrintBerryNumberAndName(void)
{
const struct Berry *berry = GetBerryInfo(sBerryTag->berryId);
ConvertIntToDecimalStringN(gStringVar1, sBerryTag->berryId, 2, 2);
ConvertIntToDecimalStringN(gStringVar1, sBerryTag->berryId, STR_CONV_MODE_LEADING_ZEROS, 2);
StringCopy(gStringVar2, berry->name);
StringExpandPlaceholders(gStringVar4, gText_UnkF908Var1Var2);
PrintTextInBerryTagScreen(WIN_BERRY_NAME, gStringVar4, 0, 1, 0, 0);
@ -421,8 +421,8 @@ static void PrintBerrySize(void)
fraction = (inches % 100) / 10;
inches /= 100;
ConvertIntToDecimalStringN(gStringVar1, inches, 0, 2);
ConvertIntToDecimalStringN(gStringVar2, fraction, 0, 2);
ConvertIntToDecimalStringN(gStringVar1, inches, STR_CONV_MODE_LEFT_ALIGN, 2);
ConvertIntToDecimalStringN(gStringVar2, fraction, STR_CONV_MODE_LEFT_ALIGN, 2);
StringExpandPlaceholders(gStringVar4, gText_Var1DotVar2);
AddTextPrinterParameterized(WIN_SIZE_FIRM, 1, gStringVar4, 0x28, 1, 0, NULL);
}

View File

@ -6,7 +6,7 @@
#include "field_weather.h"
#include "gpu_regs.h"
#include "graphics.h"
#include "alloc.h"
#include "malloc.h"
#include "main.h"
#include "menu.h"
#include "overworld.h"

View File

@ -1,7 +1,7 @@
#include "global.h"
#include "gpu_regs.h"
#include "bg.h"
#include "alloc.h"
#include "malloc.h"
#include "constants/items.h"
#include "constants/event_objects.h"
#include "constants/moves.h"

View File

@ -1,5 +1,5 @@
#include "global.h"
#include "alloc.h"
#include "malloc.h"
#include "battle.h"
#include "battle_gfx_sfx_util.h"
#include "bg.h"

View File

@ -1,5 +1,5 @@
#include "global.h"
#include "alloc.h"
#include "malloc.h"
#include "battle.h"
#include "battle_gfx_sfx_util.h"
#include "bg.h"

View File

@ -3,7 +3,7 @@
#include "main.h"
#include "task.h"
#include "bg.h"
#include "alloc.h"
#include "malloc.h"
#include "window.h"
#include "text.h"
#include "menu.h"

View File

@ -1,5 +1,5 @@
#include "global.h"
#include "alloc.h"
#include "malloc.h"
#include "battle.h"
#include "data.h"
#include "graphics.h"

View File

@ -1,5 +1,5 @@
#include "global.h"
#include "alloc.h"
#include "malloc.h"
#include "data.h"
#include "decompress.h"
#include "pokemon.h"

View File

@ -1,5 +1,5 @@
#include "global.h"
#include "alloc.h"
#include "malloc.h"
#include "decompress.h"
#include "decoration.h"
#include "decoration_inventory.h"

View File

@ -3,7 +3,7 @@
#include "easy_chat.h"
#include "event_data.h"
#include "link.h"
#include "alloc.h"
#include "malloc.h"
#include "random.h"
#include "text.h"
#include "tv.h"

View File

@ -5,7 +5,7 @@
#include "gpu_regs.h"
#include "scanline_effect.h"
#include "task.h"
#include "alloc.h"
#include "malloc.h"
#include "decompress.h"
#include "bg.h"
#include "window.h"

View File

@ -1,5 +1,5 @@
#include "global.h"
#include "alloc.h"
#include "malloc.h"
#include "bg.h"
#include "dodrio_berry_picking.h"
#include "dynamic_placeholder_text_util.h"

View File

@ -1,5 +1,5 @@
#include "global.h"
#include "alloc.h"
#include "malloc.h"
#include "bard_music.h"
#include "bg.h"
#include "data.h"
@ -209,7 +209,7 @@ static void sub_811D830(void);
static void sub_811D058(u8, u8, const u8 *, u8, u8, u8, u8, u8, u8);
static void sub_811DD84(void);
static void sub_811D6F4(void);
static void sub_811D758(void);
static void PrintEasyChatKeyboardText(void);
static void sub_811D794(void);
static const u8 *GetEasyChatWordGroupName(u8);
static void sub_811D864(u8, u8);
@ -698,11 +698,12 @@ static const struct WindowTemplate sEasyChatYesNoWindowTemplate = {
static const u8 sText_Clear17[] = _("{CLEAR 17}");
static const u8 *const sUnknown_08597C90[] = {
gUnknown_862B810,
gUnknown_862B832,
gUnknown_862B84B,
gUnknown_862B86C,
static const u8 *const sEasyChatKeyboardText[] =
{
gText_EasyChatKeyboard_ABCDEFothers,
gText_EasyChatKeyboard_GHIJKL,
gText_EasyChatKeyboard_MNOPQRS,
gText_EasyChatKeyboard_TUVWXYZ,
};
static const struct SpriteSheet sEasyChatSpriteSheets[] = {
@ -3967,7 +3968,7 @@ static void sub_811D698(u32 arg0)
sub_811D6F4();
break;
case 1:
sub_811D758();
PrintEasyChatKeyboardText();
break;
case 2:
sub_811D794();
@ -4010,12 +4011,12 @@ static void sub_811D6F4(void)
}
}
static void sub_811D758(void)
static void PrintEasyChatKeyboardText(void)
{
u32 i;
for (i = 0; i < ARRAY_COUNT(sUnknown_08597C90); i++)
sub_811D028(2, 1, sUnknown_08597C90[i], 10, 97 + i * 16, 0xFF, NULL);
for (i = 0; i < ARRAY_COUNT(sEasyChatKeyboardText); i++)
sub_811D028(2, 1, sEasyChatKeyboardText[i], 10, 97 + i * 16, 0xFF, NULL);
}
static void sub_811D794(void)

View File

@ -17,7 +17,7 @@
#include "menu.h"
#include "trig.h"
#include "random.h"
#include "alloc.h"
#include "malloc.h"
#include "dma3.h"
#include "gpu_regs.h"
#include "bg.h"

View File

@ -1,5 +1,5 @@
#include "global.h"
#include "alloc.h"
#include "malloc.h"
#include "decompress.h"
#include "ereader_helpers.h"
#include "link.h"

View File

@ -1,5 +1,5 @@
#include "global.h"
#include "alloc.h"
#include "malloc.h"
#include "decompress.h"
#include "ereader_helpers.h"
#include "link.h"

View File

@ -1,5 +1,5 @@
#include "global.h"
#include "alloc.h"
#include "malloc.h"
#include "battle_pyramid.h"
#include "berry.h"
#include "decoration.h"

View File

@ -1,5 +1,5 @@
#include "global.h"
#include "alloc.h"
#include "malloc.h"
#include "battle.h"
#include "battle_message.h"
#include "bg.h"

View File

@ -3,7 +3,7 @@
#include "gpu_regs.h"
#include "international_string_util.h"
#include "main.h"
#include "alloc.h"
#include "malloc.h"
#include "menu.h"
#include "palette.h"
#include "region_map.h"

View File

@ -1,5 +1,5 @@
#include "global.h"
#include "alloc.h"
#include "malloc.h"
#include "battle.h"
#include "battle_tower.h"
#include "cable_club.h"
@ -103,8 +103,8 @@ static void PCTurnOnEffect_1(s16, s8, s8);
static void PCTurnOffEffect(void);
static void Task_LotteryCornerComputerEffect(u8);
static void LotteryCornerComputerEffect(struct Task *);
static void sub_81395BC(u8 taskId);
static void sub_8139620(u8 taskId);
static void Task_ShakeCamera(u8 taskId);
static void StopCameraShake(u8 taskId);
static void Task_MoveElevator(u8 taskId);
static void MoveElevatorWindowLights(u16 floorDelta, bool8 descending);
static void Task_MoveElevatorWindowLights(u8 taskId);
@ -126,8 +126,8 @@ static void Task_DeoxysRockInteraction(u8 taskId);
static void ChangeDeoxysRockLevel(u8 a0);
static void WaitForDeoxysRockMovement(u8 taskId);
static void sub_813B57C(u8 taskId);
static void sub_813B824(u8 taskId);
static void _fwalk(u8 taskId);
static void Task_LoopWingFlapSE(u8 taskId);
static void Task_CloseBattlePikeCurtain(u8 taskId);
static u8 sub_813BF44(void);
static void sub_813BD84(void);
static u16 sub_813BB74(void);
@ -1493,44 +1493,56 @@ bool8 IsPokerusInParty(void)
return TRUE;
}
void sub_8139560(void)
#define horizontalPan data[0]
#define delayCounter data[1]
#define numShakes data[2]
#define delay data[3]
#define verticalPan data[4]
void ShakeCamera(void)
{
u8 taskId = CreateTask(sub_81395BC, 9);
gTasks[taskId].data[0] = gSpecialVar_0x8005;
gTasks[taskId].data[1] = 0;
gTasks[taskId].data[2] = gSpecialVar_0x8006;
gTasks[taskId].data[3] = gSpecialVar_0x8007;
gTasks[taskId].data[4] = gSpecialVar_0x8004;
u8 taskId = CreateTask(Task_ShakeCamera, 9);
gTasks[taskId].horizontalPan = gSpecialVar_0x8005;
gTasks[taskId].delayCounter = 0;
gTasks[taskId].numShakes = gSpecialVar_0x8006;
gTasks[taskId].delay = gSpecialVar_0x8007;
gTasks[taskId].verticalPan = gSpecialVar_0x8004;
SetCameraPanningCallback(NULL);
PlaySE(SE_W070);
}
static void sub_81395BC(u8 taskId)
static void Task_ShakeCamera(u8 taskId)
{
s16 *data = gTasks[taskId].data;
data[1]++;
if (data[1] % data[3] == 0)
delayCounter++;
if (delayCounter % delay == 0)
{
data[1] = 0;
data[2]--;
data[0] = -data[0];
data[4] = -data[4];
SetCameraPanning(data[0], data[4]);
if (data[2] == 0)
delayCounter = 0;
numShakes--;
horizontalPan = -horizontalPan;
verticalPan = -verticalPan;
SetCameraPanning(horizontalPan, verticalPan);
if (numShakes == 0)
{
sub_8139620(taskId);
StopCameraShake(taskId);
InstallCameraPanAheadCallback();
}
}
}
static void sub_8139620(u8 taskId)
static void StopCameraShake(u8 taskId)
{
DestroyTask(taskId);
EnableBothScriptContexts();
}
#undef horizontalPan
#undef delayCounter
#undef numShakes
#undef delay
#undef verticalPan
bool8 FoundBlackGlasses(void)
{
return FlagGet(FLAG_HIDDEN_ITEM_ROUTE_116_BLACK_GLASSES);
@ -1621,20 +1633,20 @@ void BufferLottoTicketNumber(void)
else if (gSpecialVar_Result >= 1000)
{
gStringVar1[0] = CHAR_0;
ConvertIntToDecimalStringN(gStringVar1 + 1, gSpecialVar_Result, 0, CountDigits(gSpecialVar_Result));
ConvertIntToDecimalStringN(gStringVar1 + 1, gSpecialVar_Result, STR_CONV_MODE_LEFT_ALIGN, CountDigits(gSpecialVar_Result));
}
else if (gSpecialVar_Result >= 100)
{
gStringVar1[0] = CHAR_0;
gStringVar1[1] = CHAR_0;
ConvertIntToDecimalStringN(gStringVar1 + 2, gSpecialVar_Result, 0, CountDigits(gSpecialVar_Result));
ConvertIntToDecimalStringN(gStringVar1 + 2, gSpecialVar_Result, STR_CONV_MODE_LEFT_ALIGN, CountDigits(gSpecialVar_Result));
}
else if (gSpecialVar_Result >= 10)
{
gStringVar1[0] = CHAR_0;
gStringVar1[1] = CHAR_0;
gStringVar1[2] = CHAR_0;
ConvertIntToDecimalStringN(gStringVar1 + 3, gSpecialVar_Result, 0, CountDigits(gSpecialVar_Result));
ConvertIntToDecimalStringN(gStringVar1 + 3, gSpecialVar_Result, STR_CONV_MODE_LEFT_ALIGN, CountDigits(gSpecialVar_Result));
}
else
{
@ -1642,7 +1654,7 @@ void BufferLottoTicketNumber(void)
gStringVar1[1] = CHAR_0;
gStringVar1[2] = CHAR_0;
gStringVar1[3] = CHAR_0;
ConvertIntToDecimalStringN(gStringVar1 + 4, gSpecialVar_Result, 0, CountDigits(gSpecialVar_Result));
ConvertIntToDecimalStringN(gStringVar1 + 4, gSpecialVar_Result, STR_CONV_MODE_LEFT_ALIGN, CountDigits(gSpecialVar_Result));
}
}
@ -1699,7 +1711,7 @@ bool8 InMultiBattleRoom(void)
return FALSE;
}
void sub_8139980(void)
void OffsetCameraForBattle(void)
{
SetCameraPanningCallback(NULL);
SetCameraPanning(8, 0);
@ -3713,7 +3725,7 @@ u32 GetMartEmployeeObjectEventId(void)
return 1;
}
bool32 sub_813B4E0(void)
bool32 IsTrainerRegistered(void)
{
int index = GetRematchIdxByTrainerIdx(gSpecialVar_0x8004);
if (index >= 0)
@ -3889,40 +3901,46 @@ void Script_DoRayquazaScene(void)
}
}
void sub_813B80C(void)
#define playCount data[0]
#define delay data[1]
void LoopWingFlapSE(void)
{
CreateTask(sub_813B824, 8);
CreateTask(Task_LoopWingFlapSE, 8);
PlaySE(SE_W017);
}
static void sub_813B824(u8 taskId)
static void Task_LoopWingFlapSE(u8 taskId)
{
s16 *data = gTasks[taskId].data;
data[1]++;
if (data[1] == gSpecialVar_0x8005)
delay++;
if (delay == gSpecialVar_0x8005)
{
data[0]++;
data[1] = 0;
playCount++;
delay = 0;
PlaySE(SE_W017);
}
if (data[0] == gSpecialVar_0x8004 - 1)
if (playCount == gSpecialVar_0x8004 - 1)
{
DestroyTask(taskId);
}
}
void sub_813B880(void)
#undef playCount
#undef delay
void CloseBattlePikeCurtain(void)
{
u8 taskId = CreateTask(_fwalk, 8);
u8 taskId = CreateTask(Task_CloseBattlePikeCurtain, 8);
gTasks[taskId].data[0] = 4;
gTasks[taskId].data[1] = 4;
gTasks[taskId].data[2] = 4;
gTasks[taskId].data[3] = 0;
}
static void _fwalk(u8 taskId)
static void Task_CloseBattlePikeCurtain(u8 taskId)
{
u8 x, y;
s16 *data = gTasks[taskId].data;
@ -3934,7 +3952,7 @@ static void _fwalk(u8 taskId)
{
for (x = 0; x < 3; x++)
{
MapGridSetMetatileIdAt(gSaveBlock1Ptr->pos.x + x + 6, gSaveBlock1Ptr->pos.y + y + 4, x + 0x201 + y * 8 + data[3] * 32);
MapGridSetMetatileIdAt(gSaveBlock1Ptr->pos.x + x + 6, gSaveBlock1Ptr->pos.y + y + 4, x + 513 + y * 8 + data[3] * 32);
}
}
DrawWholeMapView();

View File

@ -7,7 +7,7 @@
#include "field_player_avatar.h"
#include "fieldmap.h"
#include "fldeff.h"
#include "alloc.h"
#include "malloc.h"
#include "metatile_behavior.h"
#include "overworld.h"
#include "party_menu.h"

View File

@ -5,7 +5,7 @@
#include "battle_anim.h"
#include "event_data.h"
#include "recorded_battle.h"
#include "alloc.h"
#include "malloc.h"
#include "sprite.h"
#include "scanline_effect.h"
#include "text_window.h"

View File

@ -24,7 +24,7 @@
#include "data.h"
#include "record_mixing.h"
#include "strings.h"
#include "alloc.h"
#include "malloc.h"
#include "save.h"
#include "load_save.h"
#include "battle_dome.h"

View File

@ -6,7 +6,7 @@
#include "pokemon.h"
#include "text.h"
#include "text_window.h"
#include "alloc.h"
#include "malloc.h"
#include "gpu_regs.h"
#include "graphics.h"
#include "main.h"

View File

@ -5,7 +5,7 @@
#include "task.h"
#include "title_screen.h"
#include "libgcnmultiboot.h"
#include "alloc.h"
#include "malloc.h"
#include "gpu_regs.h"
#include "link.h"
#include "multiboot_pokemon_colosseum.h"

View File

@ -4,7 +4,7 @@
#include "string_util.h"
#include "text.h"
#include "event_data.h"
#include "alloc.h"
#include "malloc.h"
#include "secret_base.h"
#include "item_menu.h"
#include "strings.h"

View File

@ -2,7 +2,7 @@
#include "decompress.h"
#include "graphics.h"
#include "item_icon.h"
#include "alloc.h"
#include "malloc.h"
#include "sprite.h"
#include "constants/items.h"

View File

@ -25,7 +25,7 @@
#include "link.h"
#include "mail.h"
#include "main.h"
#include "alloc.h"
#include "malloc.h"
#include "map_name_popup.h"
#include "menu.h"
#include "money.h"
@ -790,17 +790,17 @@ void GetItemName(s8 *dest, u16 itemId)
StringCopy(gStringVar2, gMoveNames[ItemIdToBattleMoveId(itemId)]);
if (itemId >= ITEM_HM01)
{
ConvertIntToDecimalStringN(gStringVar1, itemId - ITEM_HM01 + 1, 2, 1);
ConvertIntToDecimalStringN(gStringVar1, itemId - ITEM_HM01 + 1, STR_CONV_MODE_LEADING_ZEROS, 1);
StringExpandPlaceholders(dest, gText_ClearTo11Var1Clear5Var2);
}
else
{
ConvertIntToDecimalStringN(gStringVar1, itemId - ITEM_TM01 + 1, 2, 2);
ConvertIntToDecimalStringN(gStringVar1, itemId - ITEM_TM01 + 1, STR_CONV_MODE_LEADING_ZEROS, 2);
StringExpandPlaceholders(dest, gText_UnkF908Var1Clear7Var2);
}
break;
case BERRIES_POCKET:
ConvertIntToDecimalStringN(gStringVar1, itemId - ITEM_CHERI_BERRY + 1, 2, 2);
ConvertIntToDecimalStringN(gStringVar1, itemId - ITEM_CHERI_BERRY + 1, STR_CONV_MODE_LEADING_ZEROS, 2);
CopyItemName(itemId, gStringVar2);
StringExpandPlaceholders(dest, gText_UnkF908Var1Clear7Var2);
break;
@ -851,14 +851,14 @@ void PrintItemQuantityPlusGFX(u8 rboxId, s32 item_index_in_pocket, u8 a)
BlitBitmapToWindow(rboxId, gBagMenuHMIcon_Gfx, 8, a - 1, 16, 16);
if (gBagPositionStruct.pocket == BERRIES_POCKET)
{
ConvertIntToDecimalStringN(gStringVar1, itemQuantity, 1, 3);
ConvertIntToDecimalStringN(gStringVar1, itemQuantity, STR_CONV_MODE_RIGHT_ALIGN, 3);
StringExpandPlaceholders(gStringVar4, gText_xVar1);
offset = GetStringRightAlignXOffset(7, gStringVar4, 0x77);
BagMenu_Print(rboxId, 7, gStringVar4, offset, a, 0, 0, -1, 0);
}
else if (gBagPositionStruct.pocket != KEYITEMS_POCKET && (unique = ItemId_GetImportance(itemId)) == FALSE)
{
ConvertIntToDecimalStringN(gStringVar1, itemQuantity, 1, 2);
ConvertIntToDecimalStringN(gStringVar1, itemQuantity, STR_CONV_MODE_RIGHT_ALIGN, 2);
StringExpandPlaceholders(gStringVar4, gText_xVar1);
offset = GetStringRightAlignXOffset(7, gStringVar4, 0x77);
BagMenu_Print(rboxId, 7, gStringVar4, offset, a, unique, unique, -1, unique);
@ -1053,21 +1053,21 @@ void sub_81ABC3C(u8 a)
PrintItemDepositAmount(BagMenu_AddWindow(a), 1);
}
void PrintItemDepositAmount(u8 a, s16 b)
void PrintItemDepositAmount(u8 windowId, s16 numDeposited)
{
u8 r3 = (gBagPositionStruct.pocket == BERRIES_POCKET) ? 3 : 2;
ConvertIntToDecimalStringN(gStringVar1, b, 2, r3);
u8 numDigits = (gBagPositionStruct.pocket == BERRIES_POCKET) ? 3 : 2;
ConvertIntToDecimalStringN(gStringVar1, numDeposited, STR_CONV_MODE_LEADING_ZEROS, numDigits);
StringExpandPlaceholders(gStringVar4, gText_xVar1);
AddTextPrinterParameterized(a, 1, gStringVar4, GetStringCenterAlignXOffset(1, gStringVar4, 0x28), 2, 0, 0);
AddTextPrinterParameterized(windowId, 1, gStringVar4, GetStringCenterAlignXOffset(1, gStringVar4, 0x28), 2, 0, 0);
}
void sub_81ABCC0(int a, int b, int c)
void PrintItemSoldAmount(int windowId, int numSold, int moneyEarned)
{
u8 r3 = (gBagPositionStruct.pocket == BERRIES_POCKET) ? 3 : 2;
ConvertIntToDecimalStringN(gStringVar1, b, 2, r3);
u8 numDigits = (gBagPositionStruct.pocket == BERRIES_POCKET) ? 3 : 2;
ConvertIntToDecimalStringN(gStringVar1, numSold, STR_CONV_MODE_LEADING_ZEROS, numDigits);
StringExpandPlaceholders(gStringVar4, gText_xVar1);
AddTextPrinterParameterized(a, 1, gStringVar4, 0, 1, -1, 0);
PrintMoneyAmount(a, 0x26, 1, c, 0);
AddTextPrinterParameterized(windowId, 1, gStringVar4, 0, 1, -1, 0);
PrintMoneyAmount(windowId, 38, 1, moneyEarned, 0);
}
void Task_BagMenu(u8 taskId)
@ -1682,7 +1682,7 @@ void BagMenu_TossItems(u8 taskId)
s16* data = gTasks[taskId].data;
CopyItemName(gSpecialVar_ItemId, gStringVar1);
ConvertIntToDecimalStringN(gStringVar2, data[8], 0, 3);
ConvertIntToDecimalStringN(gStringVar2, data[8], STR_CONV_MODE_LEFT_ALIGN, 3);
StringExpandPlaceholders(gStringVar4, gText_ConfirmTossItems);
FillWindowPixelBuffer(1, PIXEL_FILL(0));
BagMenu_Print(1, 1, gStringVar4, 3, 1, 0, 0, 0, 0);
@ -1725,7 +1725,7 @@ void BagMenu_ConfirmToss(u8 taskId)
s16* data = gTasks[taskId].data;
CopyItemName(gSpecialVar_ItemId, gStringVar1);
ConvertIntToDecimalStringN(gStringVar2, data[8], 0, 3);
ConvertIntToDecimalStringN(gStringVar2, data[8], STR_CONV_MODE_LEFT_ALIGN, 3);
StringExpandPlaceholders(gStringVar4, gText_ThrewAwayVar2Var1s);
FillWindowPixelBuffer(1, PIXEL_FILL(0));
BagMenu_Print(1, 1, gStringVar4, 3, 1, 0, 0, 0, 0);
@ -1936,7 +1936,7 @@ void sub_81AD680(u8 taskId)
{
s16* data = gTasks[taskId].data;
ConvertIntToDecimalStringN(gStringVar1, (ItemId_GetPrice(gSpecialVar_ItemId) / 2) * data[8], 0, 6);
ConvertIntToDecimalStringN(gStringVar1, (ItemId_GetPrice(gSpecialVar_ItemId) / 2) * data[8], STR_CONV_MODE_LEFT_ALIGN, 6);
StringExpandPlaceholders(gStringVar4, gText_ICanPayVar1);
DisplayItemMessage(taskId, 1, gStringVar4, sub_81AD6E4);
}
@ -1961,7 +1961,7 @@ void sub_81AD730(u8 taskId)
s16* data = gTasks[taskId].data;
u8 windowId = BagMenu_AddWindow(8);
sub_81ABCC0(windowId, 1, (ItemId_GetPrice(gSpecialVar_ItemId) / 2) * data[8]);
PrintItemSoldAmount(windowId, 1, (ItemId_GetPrice(gSpecialVar_ItemId) / 2) * data[8]);
bag_menu_AddMoney_window();
gTasks[taskId].func = sub_81AD794;
}
@ -1972,7 +1972,7 @@ void sub_81AD794(u8 taskId)
if (AdjustQuantityAccordingToDPadInput(&data[8], data[2]) == TRUE)
{
sub_81ABCC0(gBagMenu->unk818, data[8], (ItemId_GetPrice(gSpecialVar_ItemId) / 2) * data[8]);
PrintItemSoldAmount(gBagMenu->unk818, data[8], (ItemId_GetPrice(gSpecialVar_ItemId) / 2) * data[8]);
}
else if (gMain.newKeys & A_BUTTON)
{
@ -1996,7 +1996,7 @@ void BagMenu_ConfirmSell(u8 taskId)
s16* data = gTasks[taskId].data;
CopyItemName(gSpecialVar_ItemId, gStringVar2);
ConvertIntToDecimalStringN(gStringVar1, (ItemId_GetPrice(gSpecialVar_ItemId) / 2) * data[8], 0, 6);
ConvertIntToDecimalStringN(gStringVar1, (ItemId_GetPrice(gSpecialVar_ItemId) / 2) * data[8], STR_CONV_MODE_LEFT_ALIGN, 6);
StringExpandPlaceholders(gStringVar4, gText_TurnedOverVar1ForVar2);
DisplayItemMessage(taskId, 1, gStringVar4, sub_81AD8C8);
}
@ -2087,7 +2087,7 @@ void sub_81ADB14(u8 taskId)
else if (AddPCItem(gSpecialVar_ItemId, data[8]) == TRUE)
{
CopyItemName(gSpecialVar_ItemId, gStringVar1);
ConvertIntToDecimalStringN(gStringVar2, data[8], 0, 3);
ConvertIntToDecimalStringN(gStringVar2, data[8], STR_CONV_MODE_LEFT_ALIGN, 3);
StringExpandPlaceholders(gStringVar4, gText_DepositedVar2Var1s);
BagMenu_Print(1, 1, gStringVar4, 3, 1, 0, 0, 0, 0);
gTasks[taskId].func = Task_ActuallyToss;
@ -2398,7 +2398,7 @@ void PrintTMHMMoveData(u16 itemId)
}
else
{
ConvertIntToDecimalStringN(gStringVar1, gBattleMoves[moveId].power, 1, 3);
ConvertIntToDecimalStringN(gStringVar1, gBattleMoves[moveId].power, STR_CONV_MODE_RIGHT_ALIGN, 3);
text = gStringVar1;
}
BagMenu_Print(4, 1, text, 7, 12, 0, 0, -1, 4);
@ -2408,11 +2408,11 @@ void PrintTMHMMoveData(u16 itemId)
}
else
{
ConvertIntToDecimalStringN(gStringVar1, gBattleMoves[moveId].accuracy, 1, 3);
ConvertIntToDecimalStringN(gStringVar1, gBattleMoves[moveId].accuracy, STR_CONV_MODE_RIGHT_ALIGN, 3);
text = gStringVar1;
}
BagMenu_Print(4, 1, text, 7, 24, 0, 0, -1, 4);
ConvertIntToDecimalStringN(gStringVar1, gBattleMoves[moveId].pp, 1, 3);
ConvertIntToDecimalStringN(gStringVar1, gBattleMoves[moveId].pp, STR_CONV_MODE_RIGHT_ALIGN, 3);
BagMenu_Print(4, 1, gStringVar1, 7, 36, 0, 0, -1, 4);
CopyWindowToVram(4, 2);
}

View File

@ -623,7 +623,7 @@ void sub_80FDC00(u8 taskId)
void ItemUseOutOfBattle_CoinCase(u8 taskId)
{
ConvertIntToDecimalStringN(gStringVar1, GetCoins(), 0, 4);
ConvertIntToDecimalStringN(gStringVar1, GetCoins(), STR_CONV_MODE_LEFT_ALIGN, 4);
StringExpandPlaceholders(gStringVar4, gText_CoinCase);
if (!gTasks[taskId].data[3])
@ -638,7 +638,7 @@ void ItemUseOutOfBattle_CoinCase(u8 taskId)
void ItemUseOutOfBattle_PowderJar(u8 taskId)
{
ConvertIntToDecimalStringN(gStringVar1, GetBerryPowder(), 0, 5);
ConvertIntToDecimalStringN(gStringVar1, GetBerryPowder(), STR_CONV_MODE_LEFT_ALIGN, 5);
StringExpandPlaceholders(gStringVar4, gText_PowderQty);
if (!gTasks[taskId].data[3])

View File

@ -1,116 +0,0 @@
.include "constants/gba_constants.inc"
.include "asm/macros.inc"
.syntax unified
.text
thumb_func_start ArcTan2
ArcTan2: @ 82E7078
swi 0xA
bx lr
thumb_func_end ArcTan2
thumb_func_start BgAffineSet
@ void BgAffineSet(BgAffineSet_src_data *src, BgAffineSet_dest_data *dest, int entry_count)
BgAffineSet: @ 82E707C
swi 0xE
bx lr
thumb_func_end BgAffineSet
thumb_func_start CpuFastSet
@ void CpuFastSet(void *src, void *dest, unsigned int mode)
CpuFastSet: @ 82E7080
swi 0xC
bx lr
thumb_func_end CpuFastSet
thumb_func_start CpuSet
@ void CpuSet(void *src, void *dest, unsigned int mode)
CpuSet: @ 82E7084
swi 0xB
bx lr
thumb_func_end CpuSet
thumb_func_start Div
Div: @ 82E7088
swi 0x6
bx lr
thumb_func_end Div
thumb_func_start LZ77UnCompVram
@ void LZ77UnCompVram(void *src, void *dest)
LZ77UnCompVram: @ 82E708C
swi 0x12
bx lr
thumb_func_end LZ77UnCompVram
thumb_func_start LZ77UnCompWram
@ void LZ77UnCompWram(void *src, void *dest)
LZ77UnCompWram: @ 82E7090
swi 0x11
bx lr
thumb_func_end LZ77UnCompWram
thumb_func_start MultiBoot
@ s32 MultiBoot(struct MultiBootParam *mp)
MultiBoot: @ 82E7094
movs r1, 0x1
swi 0x25
bx lr
thumb_func_end MultiBoot
thumb_func_start ObjAffineSet
ObjAffineSet: @ 82E709C
swi 0xF
bx lr
thumb_func_end ObjAffineSet
thumb_func_start RLUnCompVram
RLUnCompVram: @ 82E70A0
swi 0x15
bx lr
thumb_func_end RLUnCompVram
thumb_func_start RLUnCompWram
RLUnCompWram: @ 82E70A4
swi 0x14
bx lr
thumb_func_end RLUnCompWram
thumb_func_start RegisterRamReset
@ void RegisterRamReset(int ResetFlags)
RegisterRamReset: @ 82E70A8
swi 0x1
bx lr
thumb_func_end RegisterRamReset
thumb_func_start SoftReset
@ void SoftReset()
SoftReset: @ 82E70AC
ldr r3, =REG_IME
movs r2, 0
strb r2, [r3]
ldr r1, =0x3007F00
mov sp, r1
swi 0x1
swi 0
.pool
thumb_func_end SoftReset
thumb_func_start Sqrt
@ s16 Sqrt(int)
Sqrt: @ 82E70C4
swi 0x8
bx lr
thumb_func_end Sqrt
thumb_func_start VBlankIntrWait
@ void VBlankIntrWait()
VBlankIntrWait: @ 82E70C8
movs r2, 0
swi 0x5
bx lr
thumb_func_end VBlankIntrWait
.align 2, 0 @ Don't pad with nop.

View File

@ -2,7 +2,7 @@
// Includes
#include "global.h"
#include "m4a.h"
#include "alloc.h"
#include "malloc.h"
#include "reset_save_heap.h"
#include "save.h"
#include "bg.h"

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