Merge pull request #346 from luckytyphlosion/master

Match (almost) all of pokemon_summary_screen.c
This commit is contained in:
PikalaxALT
2020-07-08 16:01:56 -04:00
committed by GitHub
28 changed files with 5404 additions and 14638 deletions
+4
View File
@@ -12,6 +12,10 @@ Makefile text eol=lf
*.sed text eol=lf
*.sh text eol=lf
*.json text eol=lf
.gitignore text eol=lf
.gitattributes text eol=lf
*.yml text eol=lf
*.py text eol=lf
*.png binary
*.bin binary
+5 -5
View File
@@ -36,7 +36,7 @@ include config.mk
GCC_VER = $(shell $(CC) -dumpversion)
ifeq ($(MODERN),0)
CC1 := tools/agbcc/bin/agbcc
CC1 := tools/agbcc/bin/agbcc$(EXE)
override CFLAGS += -mthumb-interwork -Wimplicit -Wparentheses -Werror -O2 -fhex-asm
LIBPATH := -L ../../tools/agbcc/lib
else
@@ -132,7 +132,7 @@ MID_OBJS := $(patsubst $(MID_SUBDIR)/%.mid,$(MID_BUILDDIR)/%.o,$(MID_SRCS))
OBJS := $(C_OBJS) $(ASM_OBJS) $(DATA_ASM_OBJS) $(SONG_OBJS) $(MID_OBJS)
OBJS_REL := $(patsubst $(OBJ_DIR)/%,%,$(OBJS))
TOOLDIRS := $(filter-out tools/agbcc tools/binutils,$(wildcard tools/*))
TOOLDIRS := $(filter-out tools/agbcc tools/binutils tools/analyze_source,$(wildcard tools/*))
TOOLBASE = $(TOOLDIRS:tools/%=%)
TOOLS = $(foreach tool,$(TOOLBASE),tools/$(tool)/$(tool)$(EXE))
@@ -209,15 +209,15 @@ $(C_BUILDDIR)/agb_flash.o: CFLAGS := -O -mthumb-interwork
$(C_BUILDDIR)/agb_flash_1m.o: CFLAGS := -O -mthumb-interwork
$(C_BUILDDIR)/agb_flash_mx.o: CFLAGS := -O -mthumb-interwork
$(C_BUILDDIR)/m4a.o: CC1 := tools/agbcc/bin/old_agbcc
$(C_BUILDDIR)/m4a.o: CC1 := tools/agbcc/bin/old_agbcc$(EXE)
$(C_BUILDDIR)/isagbprn.o: CC1 := tools/agbcc/bin/old_agbcc
$(C_BUILDDIR)/isagbprn.o: CC1 := tools/agbcc/bin/old_agbcc$(EXE)
$(C_BUILDDIR)/isagbprn.o: CFLAGS := -mthumb-interwork
$(C_BUILDDIR)/trainer_tower.o: CFLAGS += -ffreestanding
$(C_BUILDDIR)/flying.o: CFLAGS += -ffreestanding
$(C_BUILDDIR)/librfu_intr.o: CC1 := tools/agbcc/bin/agbcc_arm
$(C_BUILDDIR)/librfu_intr.o: CC1 := tools/agbcc/bin/agbcc_arm$(EXE)
$(C_BUILDDIR)/librfu_intr.o: CFLAGS := -O2 -mthumb-interwork -quiet
else
$(C_BUILDDIR)/berry_crush_2.o: CFLAGS += -Wno-address-of-packed-member
File diff suppressed because it is too large Load Diff
+11
View File
@@ -0,0 +1,11 @@
#!/bin/bash
# Compares baserom.gba and pokefirered.gba
# create baserom_compare.dump if necessary
if [ ! -f baserom_compare.dump ]; then
hexdump -C baserom.gba > baserom_compare.dump # can create an empty baserom_compare.dump if no baserom.gba
fi
hexdump -C pokefirered.gba > pokefirered_compare.dump
diff -u baserom_compare.dump pokefirered_compare.dump | less
-2
View File
@@ -3,8 +3,6 @@
.set NULL, 0
.set MOVE_NAME_LENGTH, 13
.set SPRITE_SIZE_8x8, (OAM_SIZE_0 >> 28) | (OAM_SQUARE >> 14)
.set SPRITE_SIZE_16x16, (OAM_SIZE_1 >> 28) | (OAM_SQUARE >> 14)
.set SPRITE_SIZE_32x32, (OAM_SIZE_2 >> 28) | (OAM_SQUARE >> 14)
-439
View File
@@ -1,439 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.section .rodata
.align 2
gUnknown_84636C0:: @ 84636C0
.incbin "graphics/interface/pokesummary_unk_84636C0.gbapal"
gUnknown_84636E0:: @ 84636E0
.incbin "graphics/interface/pokesummary_unk_84636E0.gbapal"
gUnknown_8463700:: @ 8463700
.incbin "graphics/interface/pokesummary_unk_8463700.gbapal"
gUnknown_8463720:: @ 8463720
.incbin "graphics/interface/pokesummary_unk_8463720.gbapal"
gUnknown_8463740:: @ 8463740
.incbin "graphics/interface/pokesummary_unk_8463740.4bpp.lz"
gUnknown_846386C:: @ 846386C
.incbin "graphics/interface/pokesummary_unk_846386C.4bpp.lz"
gUnknown_846398C:: @ 846398C
.4byte 0xc0004000, 0x00000000
gUnknown_8463994:: @ 8463994
obj_image_anim_frame 0x0000, 20
obj_image_anim_jump 0
gUnknown_846399C:: @ 846399C
obj_image_anim_frame 0x0020, 20
obj_image_anim_jump 0
gUnknown_84639A4:: @ 84639A4
.4byte gUnknown_8463994
.4byte gUnknown_846399C
gUnknown_84639AC:: @ 84639AC
.4byte 0x40004000, 0x00000000
gUnknown_84639B4:: @ 84639B4
obj_image_anim_frame 0x0000, 20
obj_image_anim_jump 0
gUnknown_84639BC:: @ 84639BC
obj_image_anim_frame 0x0004, 20
obj_image_anim_jump 0
gUnknown_84639C4:: @ 84639C4
obj_image_anim_frame 0x0008, 20
obj_image_anim_jump 0
gUnknown_84639CC:: @ 84639CC
obj_image_anim_frame 0x000c, 20
obj_image_anim_jump 0
gUnknown_84639D4:: @ 84639D4
obj_image_anim_frame 0x0010, 20
obj_image_anim_jump 0
gUnknown_84639DC:: @ 84639DC
obj_image_anim_frame 0x0014, 20
obj_image_anim_jump 0
gUnknown_84639E4:: @ 84639E4
obj_image_anim_frame 0x0018, 20
obj_image_anim_jump 0
gUnknown_84639EC:: @ 84639EC
obj_image_anim_frame 0x001c, 20
obj_image_anim_jump 0
gUnknown_84639F4:: @ 84639F4
.4byte gUnknown_84639B4
.4byte gUnknown_84639BC
.4byte gUnknown_84639C4
.4byte gUnknown_84639CC
.4byte gUnknown_84639D4
.4byte gUnknown_84639DC
.4byte gUnknown_84639E4
.4byte gUnknown_84639EC
gUnknown_8463A14:: @ 8463A14
.4byte 0x00000000, 0x00000000
gUnknown_8463A1C:: @ 8463A1C
obj_image_anim_frame 0x0000, 20
obj_image_anim_jump 0
gUnknown_8463A24:: @ 8463A24
obj_image_anim_frame 0x0001, 20
obj_image_anim_jump 0
gUnknown_8463A2C:: @ 8463A2C
obj_image_anim_frame 0x0002, 20
obj_image_anim_jump 0
gUnknown_8463A34:: @ 8463A34
obj_image_anim_frame 0x0003, 20
obj_image_anim_jump 0
gUnknown_8463A3C:: @ 8463A3C
obj_image_anim_frame 0x0004, 20
obj_image_anim_jump 0
gUnknown_8463A44:: @ 8463A44
obj_image_anim_frame 0x0005, 20
obj_image_anim_jump 0
gUnknown_8463A4C:: @ 8463A4C
obj_image_anim_frame 0x0006, 20
obj_image_anim_jump 0
gUnknown_8463A54:: @ 8463A54
obj_image_anim_frame 0x0007, 20
obj_image_anim_jump 0
gUnknown_8463A5C:: @ 8463A5C
obj_image_anim_frame 0x0008, 20
obj_image_anim_jump 0
gUnknown_8463A64:: @ 8463A64
obj_image_anim_frame 0x0009, 20
obj_image_anim_jump 0
gUnknown_8463A6C:: @ 8463A6C
obj_image_anim_frame 0x000a, 20
obj_image_anim_jump 0
gUnknown_8463A74:: @ 8463A74
obj_image_anim_frame 0x000b, 20
obj_image_anim_jump 0
gUnknown_8463A7C:: @ 8463A7C
.4byte gUnknown_8463A1C
.4byte gUnknown_8463A24
.4byte gUnknown_8463A2C
.4byte gUnknown_8463A34
.4byte gUnknown_8463A3C
.4byte gUnknown_8463A44
.4byte gUnknown_8463A4C
.4byte gUnknown_8463A54
.4byte gUnknown_8463A5C
.4byte gUnknown_8463A64
.4byte gUnknown_8463A6C
.4byte gUnknown_8463A74
gUnknown_8463AAC:: @ 8463AAC
.incbin "graphics/interface/pokesummary_unk_8463AAC.gbapal"
gUnknown_8463ACC:: @ 8463ACC
.incbin "graphics/interface/pokesummary_unk_8463ACC.gbapal"
gUnknown_8463AEC:: @ 8463AEC
.4byte 0x00000000, 0x00000000
gUnknown_8463AF4:: @ 8463AF4
obj_image_anim_frame 0x0000, 20
obj_image_anim_jump 0
gUnknown_8463AFC:: @ 8463AFC
.4byte gUnknown_8463AF4
gUnknown_8463B00:: @ 8463B00
.incbin "graphics/interface/pokesummary_unk_8463B00.gbapal"
gUnknown_8463B20:: @ 8463B20
.incbin "graphics/interface/pokesummary_unk_8463B20.4bpp.lz"
gUnknown_8463B30:: @ 8463B30
.4byte 0x00000000, 0x00000000
gUnknown_8463B38:: @ 8463B38
obj_image_anim_frame 0x0001, 20
obj_image_anim_jump 0
gUnknown_8463B40:: @ 8463B40
.4byte gUnknown_8463B38
gUnknown_8463B44:: @ 8463B44
.incbin "graphics/interface/pokesummary_unk_8463B44.gbapal"
gUnknown_8463B64:: @ 8463B64
.incbin "graphics/interface/pokesummary_unk_8463B64.4bpp.lz"
gUnknown_8463B88:: @ 8463B88
.incbin "graphics/interface/pokesummary_unk_8463B88.bin.lz"
gUnknown_8463C80:: @ 8463C80
.incbin "graphics/interface/pokesummary_unk_8463C80.bin.lz"
gUnknown_8463DBC:: @ 8463DBC
.string "HARDY$"
gUnknown_8463DC2:: @ 8463DC2
.string "LONELY$"
gUnknown_8463DC9:: @ 8463DC9
.string "BRAVE$"
gUnknown_8463DCF:: @ 8463DCF
.string "ADAMANT$"
gUnknown_8463DD7:: @ 8463DD7
.string "NAUGHTY$"
gUnknown_8463DDF:: @ 8463DDF
.string "BOLD$"
gUnknown_8463DE4:: @ 8463DE4
.string "DOCILE$"
gUnknown_8463DEB:: @ 8463DEB
.string "RELAXED$"
gUnknown_8463DF3:: @ 8463DF3
.string "IMPISH$"
gUnknown_8463DFA:: @ 8463DFA
.string "LAX$"
gUnknown_8463DFE:: @ 8463DFE
.string "TIMID$"
gUnknown_8463E04:: @ 8463E04
.string "HASTY$"
gUnknown_8463E0A:: @ 8463E0A
.string "SERIOUS$"
gUnknown_8463E12:: @ 8463E12
.string "JOLLY$"
gUnknown_8463E18:: @ 8463E18
.string "NAIVE$"
gUnknown_8463E1E:: @ 8463E1E
.string "MODEST$"
gUnknown_8463E25:: @ 8463E25
.string "MILD$"
gUnknown_8463E2A:: @ 8463E2A
.string "QUIET$"
gUnknown_8463E30:: @ 8463E30
.string "BASHFUL$"
gUnknown_8463E38:: @ 8463E38
.string "RASH$"
gUnknown_8463E3D:: @ 8463E3D
.string "CALM$"
gUnknown_8463E42:: @ 8463E42
.string "GENTLE$"
gUnknown_8463E49:: @ 8463E49
.string "SASSY$"
gUnknown_8463E4F:: @ 8463E4F
.string "CAREFUL$"
gUnknown_8463E57:: @ 8463E57
.string "QUIRKY$"
.align 2
gNatureNamePointers:: @ 8463E60 dataptr
.4byte gUnknown_8463DBC
.4byte gUnknown_8463DC2
.4byte gUnknown_8463DC9
.4byte gUnknown_8463DCF
.4byte gUnknown_8463DD7
.4byte gUnknown_8463DDF
.4byte gUnknown_8463DE4
.4byte gUnknown_8463DEB
.4byte gUnknown_8463DF3
.4byte gUnknown_8463DFA
.4byte gUnknown_8463DFE
.4byte gUnknown_8463E04
.4byte gUnknown_8463E0A
.4byte gUnknown_8463E12
.4byte gUnknown_8463E18
.4byte gUnknown_8463E1E
.4byte gUnknown_8463E25
.4byte gUnknown_8463E2A
.4byte gUnknown_8463E30
.4byte gUnknown_8463E38
.4byte gUnknown_8463E3D
.4byte gUnknown_8463E42
.4byte gUnknown_8463E49
.4byte gUnknown_8463E4F
.4byte gUnknown_8463E57
gUnknown_8463EC4:: @ 8463EC4
.4byte gUnknown_8419B44
.4byte gUnknown_8419B7B
.4byte gUnknown_8419BAE
.4byte gUnknown_8419BDB
gUnknown_8463ED4:: @ 8463ED4
.4byte gUnknown_8419A3D
.4byte gUnknown_8419B18
.4byte gUnknown_8419A6E
.4byte gUnknown_8419B18
.4byte gUnknown_8419AA2
.4byte gUnknown_8419ADE
.4byte gUnknown_8419B18
gUnknown_8463EF0:: @ 8463EF0
.byte 0x00, 0x07, 0x08, 0x00, 0x01, 0x02, 0x00, 0x03, 0x04, 0x00, 0x05, 0x06
gUnknown_8463EFC:: @ 8463EFC
.4byte 0x000002e0
@ {
@ .bg = 0,
@ .charBaseIndex = 0,
@ .mapBaseIndex = 14,
@ .screenSize = 1,
@ .paletteMode = 0,
@ .priority = 0,
@ .baseTile = 0x0000
@ }
.4byte 0x000012aa
@ {
@ .bg = 2,
@ .charBaseIndex = 2,
@ .mapBaseIndex = 10,
@ .screenSize = 1,
@ .paletteMode = 0,
@ .priority = 1,
@ .baseTile = 0x0000
@ }
.4byte 0x0000309b
@ {
@ .bg = 3,
@ .charBaseIndex = 2,
@ .mapBaseIndex = 9,
@ .screenSize = 0,
@ .paletteMode = 0,
@ .priority = 3,
@ .baseTile = 0x0000
@ }
.4byte 0x000022c9
@ {
@ .bg = 1,
@ .charBaseIndex = 2,
@ .mapBaseIndex = 12,
@ .screenSize = 1,
@ .paletteMode = 0,
@ .priority = 2,
@ .baseTile = 0x0000
@ }
gUnknown_8463F0C:: @ 8463F0C
.byte 1, 0, 0, 13, 2, 7
.2byte 0x0258
.byte 1, 19, 0, 11, 2, 7
.2byte 0x0272
.byte 1, 0, 2, 15, 2, 7
.2byte 0x0288
gUnknown_8463F24:: @ 8463F24
.byte 2, 0, 0, 13, 2, 7
.2byte 0x0258
.byte 2, 19, 0, 11, 2, 7
.2byte 0x0272
.byte 2, 0, 2, 15, 2, 7
.2byte 0x0288
gUnknown_8463F3C:: @ 8463F3C
.byte 0, 15, 2, 15, 12, 6
.2byte 0x0001
.byte 0, 1, 14, 28, 6, 6
.2byte 0x00b5
.byte 0, 0, 0, 0, 0, 0
.2byte 0x0000
.byte 0, 0, 0, 0, 0, 0
.2byte 0x0000
gUnknown_8463F5C:: @ 8463F5C
.byte 0, 20, 2, 10, 14, 6
.2byte 0x0001
.byte 0, 6, 12, 14, 4, 6
.2byte 0x008d
.byte 0, 1, 16, 29, 4, 6
.2byte 0x00c5
.byte 0, 0, 0, 0, 0, 0
.2byte 0x0000
gUnknown_8463F7C:: @ 8463F7C
.byte 0, 20, 2, 10, 18, 8
.2byte 0x0001
.byte 0, 0, 7, 15, 13, 6
.2byte 0x00b5
.byte 0, 15, 2, 5, 18, 6
.2byte 0x0178
.byte 0, 6, 4, 9, 2, 6
.2byte 0x01d2
gUnknown_8463F9C:: @ 8463F9C
.byte 255, 0, 0, 0, 0, 0
.2byte 0x0000
gUnknown_8463FA4:: @ 8463FA4
.byte 0x00, 0x0e, 0x0a
gUnknown_8463FA7:: @ 8463FA7
.byte 0x00, 0x01, 0x02, 0x00, 0x09, 0x08, 0x00, 0x05, 0x04, 0x00, 0x02, 0x03, 0x00, 0x0b, 0x0a, 0x00, 0x00
gUnknown_8463FB8:: @ 8463FB8
.byte 0x00, 0x02, 0x03, 0x01, 0x04, 0x05
gUnknown_8463FBE:: @ 8463FBE
.byte 0xff, 0x00, 0x01
gUnknown_8463FC1:: @ 8463FC1
.byte 0xfe, 0xff, 0x00, 0x01, 0x02
gUnknown_8463FC6:: @ 8463FC6
.byte 0xfd, 0xfe, 0xff, 0x00, 0x01, 0x02, 0x03
gUnknown_8463FCD:: @ 8463FCD
.byte 0xfb, 0xfd, 0xff, 0x00, 0x01, 0x03, 0x05
gUnknown_8463FD4:: @ 8463FD4
.byte 0x01, 0x01, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0x01, 0x01
gUnknown_8463FDF:: @ 8463FDF
.byte 0x02, 0x01, 0x00, 0xff, 0xfe, 0x00, 0xfe, 0xff, 0x00, 0x01, 0x02
gUnknown_8463FEA:: @ 8463FEA
.byte 0x02, 0x01, 0x01, 0x00, 0xff, 0xff, 0xfe, 0x00, 0xfe, 0xff, 0xff, 0x00, 0x01, 0x01, 0x02, 0x00, 0x00, 0x00
gUnknown_8463FFC:: @ 8463FFC
.4byte gUnknown_8E9B578
.4byte gUnknown_8463AAC
.4byte gUnknown_8463ACC
+1
View File
@@ -6,6 +6,7 @@
#define ITEM_NAME_LENGTH 14
#define POKEMON_NAME_LENGTH 10
#define OT_NAME_LENGTH 7
#define MOVE_NAME_LENGTH 12
#define VERSION_SAPPHIRE 1
#define VERSION_RUBY 2
+2 -2
View File
@@ -1,12 +1,12 @@
#ifndef GUARD_MAIN_H
#define GUARD_MAIN_H
#include "global.h"
typedef void (*MainCallback)(void);
typedef void (*IntrCallback)(void);
typedef void (*IntrFunc)(void);
#include "global.h"
extern IntrFunc gIntrTable[];
struct Main
+1 -1
View File
@@ -15,7 +15,7 @@ struct YesNoFuncTable
};
bool16 RunTextPrinters_CheckActive(u8 textPrinterId);
bool32 MenuHelpers_CallLinkSomething(void);
bool8 MenuHelpers_CallLinkSomething(void);
bool8 sub_80BF748(void);
bool8 MenuHelpers_LinkSomething(void);
void SetVBlankHBlankCallbacksToNull(void);
+2
View File
@@ -30,5 +30,7 @@ u8 GetMonIconPaletteIndexFromSpecies(u16 species);
u16 GetIconSpecies(u16 species, u32 personality);
void LoadMonIconPalettesAt(u16 offset);
u8 GetValidMonIconPalIndex(u16 species);
void SafeLoadMonIconPalette(u16 species);
void SafeFreeMonIconPalette(u16 species);
#endif // GUARD_POKEMON_ICON_H
+42 -11
View File
@@ -3,16 +3,16 @@
#include "main.h"
extern u8 gLastViewedMonIndex;
extern const u8 *const gMoveDescriptionPointers[];
extern const u8 *const gNatureNamePointers[];
extern const u8 * const gMoveDescriptionPointers[];
extern const u8 * const gNatureNamePointers[];
void ShowSelectMovePokemonSummaryScreen(struct Pokemon *, u8, u8, MainCallback, u16);
void ShowPokemonSummaryScreenSet40EF(u8 mode, struct BoxPokemon *mons, u8 monIndex, u8 maxMonIndex, void (*callback)(void));
u8 GetMoveSlotToReplace(void);
void SummaryScreen_SetUnknownTaskId(u8 a0);
void SummaryScreen_DestroyUnknownTask(void);
u8 GetLastViewedMonIndex(void);
void ShowPokemonSummaryScreen(struct Pokemon * party, u8 cursorPos, u8 lastIdx, void (*callback)(void), u8 a4);
void sub_8138B38(u8);
// The Pokemon Summary Screen can operate in different modes. Certain features,
// such as move re-ordering, are available in the different modes.
@@ -20,20 +20,51 @@ enum PokemonSummaryScreenMode
{
PSS_MODE_NORMAL,
PSS_MODE_UNK1,
PSS_MODE_BOX,
PSS_MODE_SELECT_MOVE,
PSS_MODE_FORGET_MOVE,
PSS_MODE_UNK4,
PSS_MODE_BOX,
};
enum PokemonSummaryScreenPage
{
PSS_PAGE_INFO,
PSS_PAGE_SKILLS,
PSS_PAGE_BATTLE_MOVES,
PSS_PAGE_CONTEST_MOVES,
PSS_PAGE_MOVES,
PSS_PAGE_MOVES_INFO,
PSS_PAGE_UNK4,
PSS_PAGE_MOVE_DELETER,
};
s32 GetLastViewedMonIndex(void);
void ShowPokemonSummaryScreen(struct Pokemon * party, u8 cursorPos, u8 lastIdx, void (*callback)(void), u8 a4);
void sub_8138B38(u8);
enum PokemonSummaryScreenState3270
{
PSS_STATE3270_0,
PSS_STATE3270_1,
PSS_STATE3270_2,
PSS_STATE3270_3,
PSS_STATE3270_4,
PSS_STATE3270_5,
PSS_STATE3270_6
};
enum PokemonSummaryScreenStat
{
PSS_STAT_ATK,
PSS_STAT_DEF,
PSS_STAT_SPA,
PSS_STAT_SPD,
PSS_STAT_SPE
};
#define TAG_PSS_UNK_64 0x64
#define TAG_PSS_UNK_65 0x65
#define TAG_PSS_UNK_66 0x66
#define TAG_PSS_UNK_67 0x67
#define TAG_PSS_UNK_6E 0x6E
#define TAG_PSS_UNK_78 0x78
#define TAG_PSS_UNK_82 0x82
#define TAG_PSS_UNK_8C 0x8C
#define TAG_PSS_UNK_96 0x96
#define TAG_PSS_UNK_A0 0xA0
#endif // GUARD_POKEMON_SUMMARY_SCREEN_H
+48
View File
@@ -1468,4 +1468,52 @@ extern const u8 gText_PokemonOnHook[];
extern const u8 gText_NotEvenANibble[];
extern const u8 gText_ItGotAway[];
// pokemon_summary_screen
extern const u8 gUnknown_8419C39[];
extern const u8 gUnknown_8419C92[];
extern const u8 gUnknown_8419CA2[];
extern const u8 gUnknown_8419C45[];
extern const u8 gUnknown_8419C82[];
extern const u8 gUnknown_8416202[];
extern const u8 gUnknown_84161EF[];
extern const u8 gUnknown_841620E[];
extern const u8 gUnknown_8416210[];
extern const u8 gUnknown_8416238[];
extern const u8 gUnknown_8419C13[];
extern const u8 gUnknown_8419C0B[];
extern const u8 gUnknown_841996D[];
extern const u8 gUnknown_841992F[];
extern const u8 gUnknown_84198D5[];
extern const u8 gUnknown_84198B4[];
extern const u8 gUnknown_84197ED[];
extern const u8 gUnknown_84197B8[];
extern const u8 gUnknown_8419841[];
extern const u8 gUnknown_8419822[];
extern const u8 gUnknown_841979D[];
extern const u8 gUnknown_8419782[];
extern const u8 gUnknown_84199F4[];
extern const u8 gUnknown_84199AB[];
extern const u8 gUnknown_8419860[];
extern const u8 gUnknown_841988A[];
extern const u8 gUnknown_8419C4D[];
extern const u8 gUnknown_8419C59[];
extern const u8 gUnknown_8419C1D[];
extern const u8 gUnknown_8419C62[];
extern const u8 gUnknown_8419C72[];
extern const u8 gUnknown_8419C2A[];
extern const u8 gUnknown_8419C7B[];
extern const u8 gUnknown_8419CA9[];
extern const u8 gUnknown_8419CB9[];
extern const u8 gUnknown_8419B44[];
extern const u8 gUnknown_8419B7B[];
extern const u8 gUnknown_8419BAE[];
extern const u8 gUnknown_8419BDB[];
extern const u8 gUnknown_8419A3D[];
extern const u8 gUnknown_8419B18[];
extern const u8 gUnknown_8419A6E[];
extern const u8 gUnknown_8419B18[];
extern const u8 gUnknown_8419AA2[];
extern const u8 gUnknown_8419ADE[];
extern const u8 gUnknown_8419B18[];
#endif //GUARD_STRINGS_H
+1
View File
@@ -141,6 +141,7 @@
#define NUM_TEXT_PRINTERS 32
#define TEXT_SPEED_INSTANT 0
#define TEXT_SPEED_FF 0xFF
enum
+1
View File
@@ -17,5 +17,6 @@ void CB2_ReturnFromLinkTrade(void);
s32 Trade_CalcLinkPlayerCompatibilityParam(void);
s32 CanRegisterMonForTradingBoard(struct GFtgtGnameSub rfuPlayer, u16 species2, u16 species, u8 isObedientBitSet);
s32 GetUnionRoomTradeMessageId(struct GFtgtGnameSub rfuPlayer, struct GFtgtGnameSub rfuPartner, u16 playerSpecies2, u16 partnerSpecies, u8 requestedType, u16 playerSpecies, u8 isObedientBitSet);
void CB2_ReturnToTradeMenuFromSummary(void);
#endif //GUARD_TRADE_H
+2
View File
@@ -17,5 +17,7 @@ u16 FreeAndDestroyTrainerPicSprite(u16);
u16 PlayerGenderToFrontTrainerPicId_Debug(u8 gender, bool8 getClass);
u16 CreateMonPicSprite_HandleDeoxys(u16 species, u32 otId, u32 personality, bool8 isFrontPic, s16 x, s16 y, u8 paletteSlot, u16 paletteTag);
u16 LoadMonPicInWindow(u16 species, u32 otId, u32 personality, bool8 isFrontPic, u8 paletteSlot, u8 windowId);
u16 CreateMonPicSprite(u16 species, u32 otId, u32 personality, bool8 isFrontPic, s16 x, s16 y, u8 paletteSlot, u16 paletteTag, bool8 ignoreDeoxys);
u16 CreateMonPicSprite_HandleDeoxys(u16 species, u32 otId, u32 personality, bool8 isFrontPic, s16 x, s16 y, u8 paletteSlot, u16 paletteTag);
#endif // GUARD_TRAINER_POKEMON_SPRITES_H
+2 -2
View File
@@ -268,7 +268,7 @@ SECTIONS {
src/tm_case.o(.text);
src/menu_indicators.o(.text);
src/pokedex_area_markers.o(.text);
asm/pokemon_summary_screen.o(.text);
src/pokemon_summary_screen.o(.text);
src/help_system.o(.text);
src/wild_pokemon_area.o(.text);
src/dynamic_placeholder_text_util.o(.text);
@@ -572,7 +572,7 @@ SECTIONS {
src/tm_case.o(.rodata);
src/menu_indicators.o(.rodata);
src/pokedex_area_markers.o(.rodata);
data/pokemon_summary_screen.o(.rodata);
src/pokemon_summary_screen.o(.rodata);
src/help_system.o(.rodata);
src/wild_pokemon_area.o(.rodata);
src/dynamic_placeholder_text_util.o(.rodata);
-14
View File
@@ -12,20 +12,6 @@ SECTIONS {
. = 0x1C000;
*(ewram_data);
/* pokemon_summary_screen.o */
. = ALIGN(4);
gUnknown_203B140 = .; . += 0x4;
gUnknown_203B144 = .; . += 0x4;
gUnknown_203B148 = .; . += 0x10;
gUnknown_203B158 = .; . += 0x4;
gUnknown_203B15C = .; . += 0x4;
gUnknown_203B160 = .; . += 0x4;
gUnknown_203B164 = .; . += 0x4;
gUnknown_203B168 = .; . += 0x4;
gLastViewedMonIndex = .; . += 0x1;
gUnknown_203B16D = .; . += 0x1;
gUnknown_203B16E = .; . += 0x2;
gUnknown_203B170 = .; . += 0x4;
. = 0x40000;
}
+9
View File
@@ -0,0 +1,9 @@
#!/bin/bash
# $1: phrase to find
# $2: phrase to replace $1
if [ "$1" = "" -o "$2" = "" ]; then
echo "Usage: replace.sh [PHRASE TO FIND] [PHRASE TO REPLACE PHRASE TO FIND]"
exit 0
fi
sed -i 's/\<'"$1"'\>/'"$2"'/' $(grep -lwr --include="*.s" --include="*.h" --include="*.c" --include="*.inc" --include="*.json" --include="*.txt" --exclude-dir="tools" --exclude-dir=".git" --exclude-dir="build" --exclude-dir="berry_fix/build" --exclude-dir="berry_fix/payload/build" --exclude-dir=".travis" "$1")
+3 -3
View File
@@ -457,7 +457,7 @@ static void CB2_InitBerryPouch(void)
{
while (1)
{
if ((u8)MenuHelpers_CallLinkSomething() == TRUE)
if (MenuHelpers_CallLinkSomething() == TRUE)
break;
if (RunBerryPouchInit() == TRUE)
break;
@@ -934,7 +934,7 @@ static void Task_BerryPouchMain(u8 taskId)
{
s16 * data = gTasks[taskId].data;
s32 menuInput;
if (!gPaletteFade.active && (u8)MenuHelpers_CallLinkSomething() != TRUE)
if (!gPaletteFade.active && MenuHelpers_CallLinkSomething() != TRUE)
{
menuInput = ListMenu_ProcessInput(data[0]);
ListMenuGetScrollAndRow(data[0], &sStaticCnt.listMenuScrollOffset, &sStaticCnt.listMenuSelectedRow);
@@ -1040,7 +1040,7 @@ static void Task_NormalContextMenu(u8 taskId)
static void Task_NormalContextMenu_HandleInput(u8 taskId)
{
s8 input;
if ((u8)MenuHelpers_CallLinkSomething() != TRUE)
if (MenuHelpers_CallLinkSomething() != TRUE)
{
input = Menu_ProcessInputNoWrapAround();
switch (input)
+54
View File
@@ -0,0 +1,54 @@
static const u8 sHardyNatureName[] = _("HARDY");
static const u8 sLonelyNatureName[] = _("LONELY");
static const u8 sBraveNatureName[] = _("BRAVE");
static const u8 sAdamantNatureName[] = _("ADAMANT");
static const u8 sNaughtyNatureName[] = _("NAUGHTY");
static const u8 sBoldNatureName[] = _("BOLD");
static const u8 sDocileNatureName[] = _("DOCILE");
static const u8 sRelaxedNatureName[] = _("RELAXED");
static const u8 sImpishNatureName[] = _("IMPISH");
static const u8 sLaxNatureName[] = _("LAX");
static const u8 sTimidNatureName[] = _("TIMID");
static const u8 sHastyNatureName[] = _("HASTY");
static const u8 sSeriousNatureName[] = _("SERIOUS");
static const u8 sJollyNatureName[] = _("JOLLY");
static const u8 sNaiveNatureName[] = _("NAIVE");
static const u8 sModestNatureName[] = _("MODEST");
static const u8 sMildNatureName[] = _("MILD");
static const u8 sQuietNatureName[] = _("QUIET");
static const u8 sBashfulNatureName[] = _("BASHFUL");
static const u8 sRashNatureName[] = _("RASH");
static const u8 sCalmNatureName[] = _("CALM");
static const u8 sGentleNatureName[] = _("GENTLE");
static const u8 sSassyNatureName[] = _("SASSY");
static const u8 sCarefulNatureName[] = _("CAREFUL");
static const u8 sQuirkyNatureName[] = _("QUIRKY");
const u8 *const gNatureNamePointers[] =
{
[NATURE_HARDY] = sHardyNatureName,
[NATURE_LONELY] = sLonelyNatureName,
[NATURE_BRAVE] = sBraveNatureName,
[NATURE_ADAMANT] = sAdamantNatureName,
[NATURE_NAUGHTY] = sNaughtyNatureName,
[NATURE_BOLD] = sBoldNatureName,
[NATURE_DOCILE] = sDocileNatureName,
[NATURE_RELAXED] = sRelaxedNatureName,
[NATURE_IMPISH] = sImpishNatureName,
[NATURE_LAX] = sLaxNatureName,
[NATURE_TIMID] = sTimidNatureName,
[NATURE_HASTY] = sHastyNatureName,
[NATURE_SERIOUS] = sSeriousNatureName,
[NATURE_JOLLY] = sJollyNatureName,
[NATURE_NAIVE] = sNaiveNatureName,
[NATURE_MODEST] = sModestNatureName,
[NATURE_MILD] = sMildNatureName,
[NATURE_QUIET] = sQuietNatureName,
[NATURE_BASHFUL] = sBashfulNatureName,
[NATURE_RASH] = sRashNatureName,
[NATURE_CALM] = sCalmNatureName,
[NATURE_GENTLE] = sGentleNatureName,
[NATURE_SASSY] = sSassyNatureName,
[NATURE_CAREFUL] = sCarefulNatureName,
[NATURE_QUIRKY] = sQuirkyNatureName,
};
+4 -4
View File
@@ -377,7 +377,7 @@ static void CB2_OpenBagMenu(void)
{
while (1)
{
if ((u8)MenuHelpers_CallLinkSomething() == TRUE)
if (MenuHelpers_CallLinkSomething() == TRUE)
break;
if (LoadBagMenuGraphics() == TRUE)
break;
@@ -1050,7 +1050,7 @@ static void Task_BagMenu_HandleInput(u8 taskId)
return;
if (FuncIsActiveTask(Task_AnimateWin0v) == TRUE)
return;
if ((u8)MenuHelpers_CallLinkSomething() == TRUE)
if (MenuHelpers_CallLinkSomething() == TRUE)
return;
switch (ProcessPocketSwitchInput(taskId, gBagMenuState.pocket))
{
@@ -1244,7 +1244,7 @@ static void Task_MoveItemInPocket_HandleInput(u8 taskId)
s32 input;
u16 itemsAbove;
u16 cursorPos;
if ((u8)MenuHelpers_CallLinkSomething() == TRUE)
if (MenuHelpers_CallLinkSomething() == TRUE)
return;
input = ListMenu_ProcessInput(data[0]);
ListMenuGetScrollAndRow(data[0], &gBagMenuState.cursorPos[gBagMenuState.pocket], &gBagMenuState.itemsAbove[gBagMenuState.pocket]);
@@ -1447,7 +1447,7 @@ static void Task_ItemContext_FieldOrBattle(u8 taskId)
static void Task_FieldItemContextMenuHandleInput(u8 taskId)
{
s8 input;
if ((u8)MenuHelpers_CallLinkSomething() != TRUE)
if (MenuHelpers_CallLinkSomething() != TRUE)
{
input = Menu_ProcessInputNoWrapAround();
switch (input)
+1 -1
View File
@@ -379,7 +379,7 @@ static bool8 ItemPc_DoGfxSetup(void)
gMain.state++;
break;
case 20:
if ((u8)MenuHelpers_CallLinkSomething() != TRUE)
if (MenuHelpers_CallLinkSomething() != TRUE)
gMain.state++;
break;
default:
+2 -2
View File
@@ -120,7 +120,7 @@ bool8 MenuHelpers_LinkSomething(void)
return FALSE;
}
bool32 MenuHelpers_CallLinkSomething(void)
bool8 MenuHelpers_CallLinkSomething(void)
{
if (!MenuHelpers_LinkSomething())
return FALSE;
@@ -130,7 +130,7 @@ bool32 MenuHelpers_CallLinkSomething(void)
bool8 sub_80BF748(void)
{
if ((u8)MenuHelpers_CallLinkSomething() == TRUE)
if (MenuHelpers_CallLinkSomething() == TRUE)
return TRUE;
else if (sub_800B270() != TRUE)
return FALSE;
+4 -2
View File
@@ -3,7 +3,6 @@
#include "scanline_effect.h"
#include "text_window_graphics.h"
#include "menu.h"
#include "menu_helpers.h"
#include "task.h"
#include "overworld.h"
#include "help_system.h"
@@ -12,6 +11,9 @@
#include "field_fadetransition.h"
#include "gba/m4a_internal.h"
// can't include the one in menu_helpers.h since Task_OptionMenu needs bool32 for matching
bool32 MenuHelpers_CallLinkSomething(void);
// Menu items
enum
{
@@ -369,7 +371,7 @@ static void Task_OptionMenu(u8 taskId)
sOptionMenuPtr->loadState++;
break;
case 2:
if (MenuHelpers_CallLinkSomething() == TRUE)
if (((bool32)MenuHelpers_CallLinkSomething()) == TRUE)
break;
switch (OptionMenu_ProcessInput())
{
+3 -3
View File
@@ -138,7 +138,7 @@ void SetBoxWallpaper(u8 boxId, u8 wallpaperId)
gPokemonStoragePtr->boxWallpapers[boxId] = wallpaperId;
}
s16 SeekToNextMonInBox(struct BoxPokemon * boxMons, s8 currIndex, u8 maxIndex, u8 flags)
s16 SeekToNextMonInBox(struct BoxPokemon * boxMons, s8 curIndex, u8 maxIndex, u8 flags)
{
// flags:
// bit 0: Allow eggs
@@ -152,7 +152,7 @@ s16 SeekToNextMonInBox(struct BoxPokemon * boxMons, s8 currIndex, u8 maxIndex, u
if (flags == 1 || flags == 3)
{
for (i = currIndex + adder; i >= 0 && i <= maxIndex; i += adder)
for (i = curIndex + adder; i >= 0 && i <= maxIndex; i += adder)
{
if (GetBoxMonData(&boxMons[i], MON_DATA_SPECIES) != SPECIES_NONE)
return i;
@@ -160,7 +160,7 @@ s16 SeekToNextMonInBox(struct BoxPokemon * boxMons, s8 currIndex, u8 maxIndex, u
}
else
{
for (i = currIndex + adder; i >= 0 && i <= maxIndex; i += adder)
for (i = curIndex + adder; i >= 0 && i <= maxIndex; i += adder)
{
if (GetBoxMonData(&boxMons[i], MON_DATA_SPECIES) != SPECIES_NONE
&& !GetBoxMonData(&boxMons[i], MON_DATA_IS_EGG))
File diff suppressed because it is too large Load Diff
+3 -3
View File
@@ -298,7 +298,7 @@ static void CB2_SetUpTMCaseUI_Blocking(void)
{
while (1)
{
if ((u8)MenuHelpers_CallLinkSomething() == TRUE)
if (MenuHelpers_CallLinkSomething() == TRUE)
break;
if (DoSetUpTMCaseUI() == TRUE)
break;
@@ -727,7 +727,7 @@ static void Task_TMCaseMain(u8 taskId)
if (!gPaletteFade.active)
{
if ((u8)MenuHelpers_CallLinkSomething() != TRUE)
if (MenuHelpers_CallLinkSomething() != TRUE)
{
input = ListMenu_ProcessInput(data[0]);
ListMenuGetScrollAndRow(data[0], &sTMCaseStaticResources.scrollOffset, &sTMCaseStaticResources.selectedRow);
@@ -808,7 +808,7 @@ static void Task_TMContextMenu_HandleInput(u8 taskId)
{
s8 input;
if ((u8)MenuHelpers_CallLinkSomething() != TRUE)
if (MenuHelpers_CallLinkSomething() != TRUE)
{
input = Menu_ProcessInputNoWrapAround();
switch (input)
+1 -38
View File
@@ -232,45 +232,8 @@
.include "src/tm_case.o"
.align 2
.include "src/menu_indicators.o"
.align 2
@ .include "src/pokemon_summary_screen.o"
gUnknown_203B140: @ 203B140
.space 0x4
gUnknown_203B144: @ 203B144
.space 0x4
gUnknown_203B148: @ 203B148
.space 0x10
gUnknown_203B158: @ 203B158
.space 0x4
gUnknown_203B15C: @ 203B15C
.space 0x4
gUnknown_203B160: @ 203B160
.space 0x4
gUnknown_203B164: @ 203B164
.space 0x4
gUnknown_203B168: @ 203B168
.space 0x4
gLastViewedMonIndex: @ 203B16C
.space 0x1
gUnknown_203B16D: @ 203B16D
.space 0x1
gUnknown_203B16E: @ 203B16E
.space 0x2
gUnknown_203B170: @ 203B170
.space 0x4
.include "src/pokemon_summary_screen.o"
.align 2
.include "src/help_system.o"
.align 2