mirror of
https://github.com/pmret/papermario.git
synced 2024-10-18 10:42:43 +02:00
some JP decomp (#1149)
* main segment cleanup * engine1 * engine4 * evt * entity * engine2 msg split * engine2 draft * identify all gu functions * font_width + charset * update msg ids * os stuff * msg stuffs * msg_copy_to_print_buffer * popup_menu_draw_menu_contents * appendGfx_message * cleanup * building fixed * Change exceptasm symbols to not be global --------- Co-authored-by: Ethan <ethteck@gmail.com>
This commit is contained in:
parent
1589a30e26
commit
bfe9a42b06
@ -1168,6 +1168,12 @@ typedef struct ItemEntity {
|
||||
/* 0x58 */ s32 sparkleHeight;
|
||||
} ItemEntity; // size = 0x5C
|
||||
|
||||
#if VERSION_JP
|
||||
#define PRINT_BUFFER_SIZE 1024
|
||||
#else
|
||||
#define PRINT_BUFFER_SIZE 1088 // slightly larger than source buffer
|
||||
#endif
|
||||
|
||||
typedef struct MessagePrintState {
|
||||
/* 0x000 */ u8* srcBuffer;
|
||||
/* 0x004 */ u16 printBufferPos;
|
||||
@ -1175,7 +1181,7 @@ typedef struct MessagePrintState {
|
||||
/* 0x008 */ s32 msgID;
|
||||
/* 0x00C */ u16 srcBufferPos;
|
||||
/* 0x00E */ u16 curPrintDelay;
|
||||
/* 0x010 */ u8 printBuffer[1088]; // slightly larger than source buffer
|
||||
/* 0x010 */ u8 printBuffer[PRINT_BUFFER_SIZE];
|
||||
/* 0x450 */ s16 printBufferSize;
|
||||
/* 0x452 */ u16 effectFrameCounter;
|
||||
/* 0x454 */ u8 font;
|
||||
@ -1258,8 +1264,10 @@ typedef struct MessagePrintState {
|
||||
/* 0x548 */ PAL_PTR letterBackgroundPal;
|
||||
/* 0x54C */ IMG_PTR letterContentImg;
|
||||
/* 0x550 */ PAL_PTR letterContentPal;
|
||||
#if !VERSION_JP
|
||||
/* 0x554 */ char unk_554[0x4];
|
||||
} MessagePrintState; // size = 0x558
|
||||
#endif
|
||||
} MessagePrintState; // size = 0x558, JP size = 0x514
|
||||
|
||||
typedef struct MessageDrawState {
|
||||
/* 0x00 */ s32 clipX[2]; // characters beyond this pos get skipped
|
||||
|
368
include/enums.h
368
include/enums.h
@ -5444,6 +5444,373 @@ enum MsgPalettes {
|
||||
};
|
||||
|
||||
enum MsgChars {
|
||||
#if VERSION_JP
|
||||
// Variant 0 - Hiragana, Katakana, Numeric, Fullwidth Symbols
|
||||
MSG_CHAR_HIRAGANA_A = 0x00,
|
||||
MSG_CHAR_HIRAGANA_I = 0x01,
|
||||
MSG_CHAR_HIRAGANA_U = 0x02,
|
||||
MSG_CHAR_HIRAGANA_E = 0x03,
|
||||
MSG_CHAR_HIRAGANA_O = 0x04,
|
||||
MSG_CHAR_HIRAGANA_KA = 0x05,
|
||||
MSG_CHAR_HIRAGANA_KI = 0x06,
|
||||
MSG_CHAR_HIRAGANA_KU = 0x07,
|
||||
MSG_CHAR_HIRAGANA_KE = 0x08,
|
||||
MSG_CHAR_HIRAGANA_KO = 0x09,
|
||||
MSG_CHAR_HIRAGANA_SA = 0x0A,
|
||||
MSG_CHAR_HIRAGANA_SI = 0x0B,
|
||||
MSG_CHAR_HIRAGANA_SU = 0x0C,
|
||||
MSG_CHAR_HIRAGANA_SE = 0x0D,
|
||||
MSG_CHAR_HIRAGANA_SO = 0x0E,
|
||||
MSG_CHAR_HIRAGANA_TA = 0x0F,
|
||||
MSG_CHAR_HIRAGANA_TI = 0x10,
|
||||
MSG_CHAR_HIRAGANA_TU = 0x11,
|
||||
MSG_CHAR_HIRAGANA_TE = 0x12,
|
||||
MSG_CHAR_HIRAGANA_TO = 0x13,
|
||||
MSG_CHAR_HIRAGANA_NA = 0x14,
|
||||
MSG_CHAR_HIRAGANA_NI = 0x15,
|
||||
MSG_CHAR_HIRAGANA_NU = 0x16,
|
||||
MSG_CHAR_HIRAGANA_NE = 0x17,
|
||||
MSG_CHAR_HIRAGANA_NO = 0x18,
|
||||
MSG_CHAR_HIRAGANA_HA = 0x19,
|
||||
MSG_CHAR_HIRAGANA_HI = 0x1A,
|
||||
MSG_CHAR_HIRAGANA_HU = 0x1B,
|
||||
MSG_CHAR_HIRAGANA_HE = 0x1C,
|
||||
MSG_CHAR_HIRAGANA_HO = 0x1D,
|
||||
MSG_CHAR_HIRAGANA_MA = 0x1E,
|
||||
MSG_CHAR_HIRAGANA_MI = 0x1F,
|
||||
MSG_CHAR_HIRAGANA_MU = 0x20,
|
||||
MSG_CHAR_HIRAGANA_ME = 0x21,
|
||||
MSG_CHAR_HIRAGANA_MO = 0x22,
|
||||
MSG_CHAR_HIRAGANA_YA = 0x23,
|
||||
MSG_CHAR_HIRAGANA_YU = 0x24,
|
||||
MSG_CHAR_HIRAGANA_YO = 0x25,
|
||||
MSG_CHAR_HIRAGANA_RA = 0x26,
|
||||
MSG_CHAR_HIRAGANA_RI = 0x27,
|
||||
MSG_CHAR_HIRAGANA_RU = 0x28,
|
||||
MSG_CHAR_HIRAGANA_RE = 0x29,
|
||||
MSG_CHAR_HIRAGANA_RO = 0x2A,
|
||||
MSG_CHAR_HIRAGANA_WA = 0x2B,
|
||||
MSG_CHAR_HIRAGANA_WO = 0x2C,
|
||||
MSG_CHAR_HIRAGANA_N = 0x2D,
|
||||
MSG_CHAR_HIRAGANA_VU = 0x2E,
|
||||
MSG_CHAR_HIRAGANA_GA = 0x2F,
|
||||
MSG_CHAR_HIRAGANA_GI = 0x30,
|
||||
MSG_CHAR_HIRAGANA_GU = 0x31,
|
||||
MSG_CHAR_HIRAGANA_GE = 0x32,
|
||||
MSG_CHAR_HIRAGANA_GO = 0x33,
|
||||
MSG_CHAR_HIRAGANA_ZA = 0x34,
|
||||
MSG_CHAR_HIRAGANA_ZI = 0x35,
|
||||
MSG_CHAR_HIRAGANA_ZU = 0x36,
|
||||
MSG_CHAR_HIRAGANA_ZE = 0x37,
|
||||
MSG_CHAR_HIRAGANA_ZO = 0x38,
|
||||
MSG_CHAR_HIRAGANA_DA = 0x39,
|
||||
MSG_CHAR_HIRAGANA_DI = 0x3A,
|
||||
MSG_CHAR_HIRAGANA_DU = 0x3B,
|
||||
MSG_CHAR_HIRAGANA_DE = 0x3C,
|
||||
MSG_CHAR_HIRAGANA_DO = 0x3D,
|
||||
MSG_CHAR_HIRAGANA_BA = 0x3E,
|
||||
MSG_CHAR_HIRAGANA_BI = 0x3F,
|
||||
MSG_CHAR_HIRAGANA_BU = 0x40,
|
||||
MSG_CHAR_HIRAGANA_BE = 0x41,
|
||||
MSG_CHAR_HIRAGANA_BO = 0x42,
|
||||
MSG_CHAR_HIRAGANA_PA = 0x43,
|
||||
MSG_CHAR_HIRAGANA_PI = 0x44,
|
||||
MSG_CHAR_HIRAGANA_PU = 0x45,
|
||||
MSG_CHAR_HIRAGANA_PE = 0x46,
|
||||
MSG_CHAR_HIRAGANA_PO = 0x47,
|
||||
MSG_CHAR_HIRAGANA_SMALL_A = 0x48,
|
||||
MSG_CHAR_HIRAGANA_SMALL_I = 0x49,
|
||||
MSG_CHAR_HIRAGANA_SMALL_U = 0x4A,
|
||||
MSG_CHAR_HIRAGANA_SMALL_E = 0x4B,
|
||||
MSG_CHAR_HIRAGANA_SMALL_O = 0x4C,
|
||||
MSG_CHAR_HIRAGANA_SMALL_TU = 0x4D,
|
||||
MSG_CHAR_HIRAGANA_SMALL_YA = 0x4E,
|
||||
MSG_CHAR_HIRAGANA_SMALL_YU = 0x4F,
|
||||
MSG_CHAR_HIRAGANA_SMALL_YO = 0x50,
|
||||
MSG_CHAR_KATAKANA_A = 0x51,
|
||||
MSG_CHAR_KATAKANA_I = 0x52,
|
||||
MSG_CHAR_KATAKANA_U = 0x53,
|
||||
MSG_CHAR_KATAKANA_E = 0x54,
|
||||
MSG_CHAR_KATAKANA_O = 0x55,
|
||||
MSG_CHAR_KATAKANA_KA = 0x56,
|
||||
MSG_CHAR_KATAKANA_KI = 0x57,
|
||||
MSG_CHAR_KATAKANA_KU = 0x58,
|
||||
MSG_CHAR_KATAKANA_KE = 0x59,
|
||||
MSG_CHAR_KATAKANA_KO = 0x5A,
|
||||
MSG_CHAR_KATAKANA_SA = 0x5B,
|
||||
MSG_CHAR_KATAKANA_SI = 0x5C,
|
||||
MSG_CHAR_KATAKANA_SU = 0x5D,
|
||||
MSG_CHAR_KATAKANA_SE = 0x5E,
|
||||
MSG_CHAR_KATAKANA_SO = 0x5F,
|
||||
MSG_CHAR_KATAKANA_TA = 0x60,
|
||||
MSG_CHAR_KATAKANA_TI = 0x61,
|
||||
MSG_CHAR_KATAKANA_TU = 0x62,
|
||||
MSG_CHAR_KATAKANA_TE = 0x63,
|
||||
MSG_CHAR_KATAKANA_TO = 0x64,
|
||||
MSG_CHAR_KATAKANA_NA = 0x65,
|
||||
MSG_CHAR_KATAKANA_NI = 0x66,
|
||||
MSG_CHAR_KATAKANA_NU = 0x67,
|
||||
MSG_CHAR_KATAKANA_NE = 0x68,
|
||||
MSG_CHAR_KATAKANA_NO = 0x69,
|
||||
MSG_CHAR_KATAKANA_HA = 0x6A,
|
||||
MSG_CHAR_KATAKANA_HI = 0x6B,
|
||||
MSG_CHAR_KATAKANA_HU = 0x6C,
|
||||
MSG_CHAR_KATAKANA_HE = 0x6D,
|
||||
MSG_CHAR_KATAKANA_HO = 0x6E,
|
||||
MSG_CHAR_KATAKANA_MA = 0x6F,
|
||||
MSG_CHAR_KATAKANA_MI = 0x70,
|
||||
MSG_CHAR_KATAKANA_MU = 0x71,
|
||||
MSG_CHAR_KATAKANA_ME = 0x72,
|
||||
MSG_CHAR_KATAKANA_MO = 0x73,
|
||||
MSG_CHAR_KATAKANA_YA = 0x74,
|
||||
MSG_CHAR_KATAKANA_YU = 0x75,
|
||||
MSG_CHAR_KATAKANA_YO = 0x76,
|
||||
MSG_CHAR_KATAKANA_RA = 0x77,
|
||||
MSG_CHAR_KATAKANA_RI = 0x78,
|
||||
MSG_CHAR_KATAKANA_RU = 0x79,
|
||||
MSG_CHAR_KATAKANA_RE = 0x7A,
|
||||
MSG_CHAR_KATAKANA_RO = 0x7B,
|
||||
MSG_CHAR_KATAKANA_WA = 0x7C,
|
||||
MSG_CHAR_KATAKANA_WO = 0x7D,
|
||||
MSG_CHAR_KATAKANA_N = 0x7E,
|
||||
MSG_CHAR_KATAKANA_VU = 0x7F,
|
||||
MSG_CHAR_KATAKANA_GA = 0x80,
|
||||
MSG_CHAR_KATAKANA_GI = 0x81,
|
||||
MSG_CHAR_KATAKANA_GU = 0x82,
|
||||
MSG_CHAR_KATAKANA_GE = 0x83,
|
||||
MSG_CHAR_KATAKANA_GO = 0x84,
|
||||
MSG_CHAR_KATAKANA_ZA = 0x85,
|
||||
MSG_CHAR_KATAKANA_ZI = 0x86,
|
||||
MSG_CHAR_KATAKANA_ZU = 0x87,
|
||||
MSG_CHAR_KATAKANA_ZE = 0x88,
|
||||
MSG_CHAR_KATAKANA_ZO = 0x89,
|
||||
MSG_CHAR_KATAKANA_DA = 0x8A,
|
||||
MSG_CHAR_KATAKANA_DI = 0x8B,
|
||||
MSG_CHAR_KATAKANA_DU = 0x8C,
|
||||
MSG_CHAR_KATAKANA_DE = 0x8D,
|
||||
MSG_CHAR_KATAKANA_DO = 0x8E,
|
||||
MSG_CHAR_KATAKANA_BA = 0x8F,
|
||||
MSG_CHAR_KATAKANA_BI = 0x90,
|
||||
MSG_CHAR_KATAKANA_BU = 0x91,
|
||||
MSG_CHAR_KATAKANA_BE = 0x92,
|
||||
MSG_CHAR_KATAKANA_BO = 0x93,
|
||||
MSG_CHAR_KATAKANA_PA = 0x94,
|
||||
MSG_CHAR_KATAKANA_PI = 0x95,
|
||||
MSG_CHAR_KATAKANA_PU = 0x96,
|
||||
MSG_CHAR_KATAKANA_PE = 0x97,
|
||||
MSG_CHAR_KATAKANA_PO = 0x98,
|
||||
MSG_CHAR_KATAKANA_SMALL_A = 0x99,
|
||||
MSG_CHAR_KATAKANA_SMALL_I = 0x9A,
|
||||
MSG_CHAR_KATAKANA_SMALL_U = 0x9B,
|
||||
MSG_CHAR_KATAKANA_SMALL_E = 0x9C,
|
||||
MSG_CHAR_KATAKANA_SMALL_O = 0x9D,
|
||||
MSG_CHAR_KATAKANA_SMALL_TU = 0x9E,
|
||||
MSG_CHAR_KATAKANA_SMALL_YA = 0x9F,
|
||||
MSG_CHAR_KATAKANA_SMALL_YU = 0xA0,
|
||||
MSG_CHAR_KATAKANA_SMALL_YO = 0xA1,
|
||||
MSG_CHAR_PROLONGED_SOUND = 0xA2,
|
||||
MSG_CHAR_TILDE = 0xA3,
|
||||
MSG_CHAR_LONGDASH_0 = 0xA4,
|
||||
MSG_CHAR_LONGDASH_1 = 0xA5,
|
||||
MSG_CHAR_LONGDASH_2 = 0xA6,
|
||||
MSG_CHAR_DIGIT_0 = 0xA7,
|
||||
MSG_CHAR_DIGIT_1 = 0xA8,
|
||||
MSG_CHAR_DIGIT_2 = 0xA9,
|
||||
MSG_CHAR_DIGIT_3 = 0xAA,
|
||||
MSG_CHAR_DIGIT_4 = 0xAB,
|
||||
MSG_CHAR_DIGIT_5 = 0xAC,
|
||||
MSG_CHAR_DIGIT_6 = 0xAD,
|
||||
MSG_CHAR_DIGIT_7 = 0xAE,
|
||||
MSG_CHAR_DIGIT_8 = 0xAF,
|
||||
MSG_CHAR_DIGIT_9 = 0xB0,
|
||||
MSG_CHAR_UP = 0xB1,
|
||||
MSG_CHAR_DOWN = 0xB2,
|
||||
MSG_CHAR_LEFT = 0xB3,
|
||||
MSG_CHAR_RIGHT = 0xB4,
|
||||
MSG_CHAR_EXCLAMATION = 0xB5,
|
||||
MSG_CHAR_QUESTION = 0xB6,
|
||||
MSG_CHAR_PLUS = 0xB7,
|
||||
MSG_CHAR_MINUS = 0xB8,
|
||||
MSG_CHAR_FORWARDSLASH = 0xB9,
|
||||
MSG_CHAR_PERIOD = 0xBA,
|
||||
MSG_CHAR_AND = 0xBB,
|
||||
MSG_CHAR_HASH = 0xBC,
|
||||
MSG_CHAR_HEART = 0xBD,
|
||||
MSG_CHAR_STAR = 0xBE,
|
||||
MSG_CHAR_LPAREN = 0xBF,
|
||||
MSG_CHAR_RPAREN = 0xC0,
|
||||
MSG_CHAR_TLBRACKET = 0xC1,
|
||||
MSG_CHAR_BRBRACKET = 0xC2,
|
||||
MSG_CHAR_MIDDLE_DOT = 0xC3,
|
||||
MSG_CHAR_HIRAGANA_SMALL_N = 0xC4,
|
||||
MSG_CHAR_KATAKANA_SMALL_N = 0xC5,
|
||||
MSG_CHAR_KANJI_C6 = 0xC6,
|
||||
MSG_CHAR_KANJI_C7 = 0xC7,
|
||||
|
||||
// Variant 1 - Latin Alphabet
|
||||
MSG_CHAR_UPPER_A = 0x00,
|
||||
MSG_CHAR_UPPER_B = 0x01,
|
||||
MSG_CHAR_UPPER_C = 0x02,
|
||||
MSG_CHAR_UPPER_D = 0x03,
|
||||
MSG_CHAR_UPPER_E = 0x04,
|
||||
MSG_CHAR_UPPER_F = 0x05,
|
||||
MSG_CHAR_UPPER_G = 0x06,
|
||||
MSG_CHAR_UPPER_H = 0x07,
|
||||
MSG_CHAR_UPPER_I = 0x08,
|
||||
MSG_CHAR_UPPER_J = 0x09,
|
||||
MSG_CHAR_UPPER_K = 0x0A,
|
||||
MSG_CHAR_UPPER_L = 0x0B,
|
||||
MSG_CHAR_UPPER_M = 0x0C,
|
||||
MSG_CHAR_UPPER_N = 0x0D,
|
||||
MSG_CHAR_UPPER_O = 0x0E,
|
||||
MSG_CHAR_UPPER_P = 0x0F,
|
||||
MSG_CHAR_UPPER_Q = 0x10,
|
||||
MSG_CHAR_UPPER_R = 0x11,
|
||||
MSG_CHAR_UPPER_S = 0x12,
|
||||
MSG_CHAR_UPPER_T = 0x13,
|
||||
MSG_CHAR_UPPER_U = 0x14,
|
||||
MSG_CHAR_UPPER_V = 0x15,
|
||||
MSG_CHAR_UPPER_W = 0x16,
|
||||
MSG_CHAR_UPPER_X = 0x17,
|
||||
MSG_CHAR_UPPER_Y = 0x18,
|
||||
MSG_CHAR_UPPER_Z = 0x19,
|
||||
MSG_CHAR_LOWER_Z = 0x1A,
|
||||
|
||||
// Variant 2 - Kanji (Chinese) characters
|
||||
MSG_CHAR_KANJI_00 = 0x00,
|
||||
MSG_CHAR_KANJI_01 = 0x01,
|
||||
MSG_CHAR_KANJI_02 = 0x02,
|
||||
MSG_CHAR_KANJI_03 = 0x03,
|
||||
MSG_CHAR_KANJI_04 = 0x04,
|
||||
MSG_CHAR_KANJI_05 = 0x05,
|
||||
MSG_CHAR_KANJI_06 = 0x06,
|
||||
MSG_CHAR_KANJI_07 = 0x07,
|
||||
MSG_CHAR_KANJI_08 = 0x08,
|
||||
MSG_CHAR_KANJI_09 = 0x09,
|
||||
MSG_CHAR_KANJI_0A = 0x0A,
|
||||
MSG_CHAR_KANJI_0B = 0x0B,
|
||||
MSG_CHAR_KANJI_0C = 0x0C,
|
||||
MSG_CHAR_KANJI_0D = 0x0D,
|
||||
MSG_CHAR_KANJI_0E = 0x0E,
|
||||
MSG_CHAR_KANJI_0F = 0x0F,
|
||||
MSG_CHAR_KANJI_10 = 0x10,
|
||||
MSG_CHAR_KANJI_11 = 0x11,
|
||||
MSG_CHAR_KANJI_12 = 0x12,
|
||||
MSG_CHAR_KANJI_13 = 0x13,
|
||||
MSG_CHAR_KANJI_14 = 0x14,
|
||||
MSG_CHAR_KANJI_15 = 0x15,
|
||||
MSG_CHAR_KANJI_16 = 0x16,
|
||||
MSG_CHAR_KANJI_17 = 0x17,
|
||||
MSG_CHAR_KANJI_18 = 0x18,
|
||||
MSG_CHAR_KANJI_19 = 0x19,
|
||||
MSG_CHAR_KANJI_1A = 0x1A,
|
||||
MSG_CHAR_KANJI_1B = 0x1B,
|
||||
MSG_CHAR_KANJI_1C = 0x1C,
|
||||
MSG_CHAR_KANJI_1D = 0x1D,
|
||||
MSG_CHAR_KANJI_1E = 0x1E,
|
||||
MSG_CHAR_KANJI_1F = 0x1F,
|
||||
MSG_CHAR_KANJI_20 = 0x20,
|
||||
MSG_CHAR_KANJI_21 = 0x21,
|
||||
MSG_CHAR_KANJI_22 = 0x22,
|
||||
MSG_CHAR_KANJI_23 = 0x23,
|
||||
MSG_CHAR_KANJI_24 = 0x24,
|
||||
MSG_CHAR_KANJI_25 = 0x25,
|
||||
MSG_CHAR_KANJI_26 = 0x26,
|
||||
MSG_CHAR_KANJI_27 = 0x27,
|
||||
MSG_CHAR_KANJI_28 = 0x28,
|
||||
MSG_CHAR_KANJI_29 = 0x29,
|
||||
MSG_CHAR_KANJI_2A = 0x2A,
|
||||
MSG_CHAR_KANJI_2B = 0x2B,
|
||||
MSG_CHAR_KANJI_2C = 0x2C,
|
||||
MSG_CHAR_KANJI_2D = 0x2D,
|
||||
MSG_CHAR_KANJI_2E = 0x2E,
|
||||
MSG_CHAR_KANJI_2F = 0x2F,
|
||||
MSG_CHAR_KANJI_30 = 0x30,
|
||||
MSG_CHAR_KANJI_31 = 0x31,
|
||||
MSG_CHAR_KANJI_32 = 0x32,
|
||||
MSG_CHAR_KANJI_33 = 0x33,
|
||||
MSG_CHAR_KANJI_34 = 0x34,
|
||||
MSG_CHAR_KANJI_35 = 0x35,
|
||||
MSG_CHAR_KANJI_36 = 0x36,
|
||||
MSG_CHAR_KANJI_37 = 0x37,
|
||||
MSG_CHAR_KANJI_38 = 0x38,
|
||||
MSG_CHAR_KANJI_39 = 0x39,
|
||||
MSG_CHAR_KANJI_3A = 0x3A,
|
||||
MSG_CHAR_KANJI_3B = 0x3B,
|
||||
MSG_CHAR_KANJI_3C = 0x3C,
|
||||
MSG_CHAR_KANJI_3D = 0x3D,
|
||||
MSG_CHAR_KANJI_3E = 0x3E,
|
||||
MSG_CHAR_KANJI_3F = 0x3F,
|
||||
MSG_CHAR_KANJI_40 = 0x40,
|
||||
MSG_CHAR_KANJI_41 = 0x41,
|
||||
MSG_CHAR_KANJI_42 = 0x42,
|
||||
MSG_CHAR_KANJI_43 = 0x43,
|
||||
MSG_CHAR_KANJI_44 = 0x44,
|
||||
MSG_CHAR_KANJI_45 = 0x45,
|
||||
MSG_CHAR_KANJI_46 = 0x46,
|
||||
MSG_CHAR_KANJI_47 = 0x47,
|
||||
MSG_CHAR_KANJI_48 = 0x48,
|
||||
MSG_CHAR_KANJI_49 = 0x49,
|
||||
MSG_CHAR_KANJI_4A = 0x4A,
|
||||
MSG_CHAR_KANJI_4B = 0x4B,
|
||||
MSG_CHAR_KANJI_4C = 0x4C,
|
||||
MSG_CHAR_KANJI_4D = 0x4D,
|
||||
MSG_CHAR_KANJI_4E = 0x4E,
|
||||
MSG_CHAR_KANJI_4F = 0x4F,
|
||||
MSG_CHAR_KANJI_50 = 0x50,
|
||||
MSG_CHAR_KANJI_51 = 0x51,
|
||||
MSG_CHAR_KANJI_52 = 0x52,
|
||||
MSG_CHAR_KANJI_53 = 0x53,
|
||||
MSG_CHAR_KANJI_54 = 0x54,
|
||||
MSG_CHAR_KANJI_55 = 0x55,
|
||||
MSG_CHAR_KANJI_56 = 0x56,
|
||||
MSG_CHAR_KANJI_57 = 0x57,
|
||||
MSG_CHAR_KANJI_58 = 0x58,
|
||||
MSG_CHAR_KANJI_59 = 0x59,
|
||||
MSG_CHAR_KANJI_5A = 0x5A,
|
||||
MSG_CHAR_KANJI_5B = 0x5B,
|
||||
MSG_CHAR_KANJI_5C = 0x5C,
|
||||
MSG_CHAR_KANJI_5D = 0x5D,
|
||||
MSG_CHAR_KANJI_5E = 0x5E,
|
||||
MSG_CHAR_KANJI_5F = 0x5F,
|
||||
MSG_CHAR_KANJI_60 = 0x60,
|
||||
MSG_CHAR_CIRCLE = 0x61,
|
||||
MSG_CHAR_CROSS = 0x62,
|
||||
MSG_CHAR_KANJI_63 = 0x63,
|
||||
MSG_CHAR_KANJI_64 = 0x64,
|
||||
MSG_CHAR_KANJI_65 = 0x65,
|
||||
MSG_CHAR_KANJI_66 = 0x66,
|
||||
MSG_CHAR_KANJI_67 = 0x67,
|
||||
MSG_CHAR_KANJI_68 = 0x68,
|
||||
MSG_CHAR_KANJI_69 = 0x69,
|
||||
MSG_CHAR_NOTE = 0x6A,
|
||||
MSG_CHAR_KANJI_6B = 0x6B,
|
||||
MSG_CHAR_KANJI_6C = 0x6C,
|
||||
MSG_CHAR_KANJI_6D = 0x6D,
|
||||
MSG_CHAR_KANJI_6E = 0x6E,
|
||||
MSG_CHAR_KANJI_6F = 0x6F,
|
||||
MSG_CHAR_KANJI_70 = 0x70,
|
||||
MSG_CHAR_KANJI_71 = 0x71,
|
||||
MSG_CHAR_KANJI_72 = 0x72,
|
||||
MSG_CHAR_KANJI_73 = 0x73,
|
||||
MSG_CHAR_KANJI_74 = 0x74,
|
||||
MSG_CHAR_KANJI_75 = 0x75,
|
||||
MSG_CHAR_KANJI_76 = 0x76,
|
||||
MSG_CHAR_KANJI_77 = 0x77,
|
||||
MSG_CHAR_LOWER_X = 0x78,
|
||||
|
||||
// Variant 3 - N64 Button Icons
|
||||
MSG_CHAR_BUTTON_A = 0x00,
|
||||
MSG_CHAR_BUTTON_B = 0x01,
|
||||
MSG_CHAR_BUTTON_START = 0x02,
|
||||
MSG_CHAR_BUTTON_C_UP = 0x03,
|
||||
MSG_CHAR_BUTTON_C_DOWN = 0x04,
|
||||
MSG_CHAR_BUTTON_C_LEFT = 0x05,
|
||||
MSG_CHAR_BUTTON_C_RIGHT = 0x06,
|
||||
MSG_CHAR_BUTTON_Z = 0x07,
|
||||
MSG_CHAR_BUTTON_L = 0x08,
|
||||
MSG_CHAR_BUTTON_R = 0x09,
|
||||
#else
|
||||
MSG_CHAR_NOTE = 0x00,
|
||||
MSG_CHAR_EXCLAMTION = 0x01,
|
||||
MSG_CHAR_BACKSLASH = 0x02,
|
||||
@ -5611,6 +5978,7 @@ enum MsgChars {
|
||||
MSG_CHAR_SINGLE_QUOTE_OPEN = 0xA4,
|
||||
MSG_CHAR_SINGLE_QUOTE_CLOSE = 0xA5,
|
||||
// 0xA6 to 0xEF are unused
|
||||
#endif
|
||||
|
||||
#if VERSION_IQUE
|
||||
// All US characters are in the rom, but their range is used for multibyte characters
|
||||
|
@ -10,6 +10,8 @@
|
||||
#define SPRITE_ROM_START 0x1943000 + 0x10
|
||||
#elif VERSION_PAL
|
||||
#define SPRITE_ROM_START 0x1DF0000 + 0x10
|
||||
#elif VERSION_JP
|
||||
#define SPRITE_ROM_START 0x1A40000 + 0x10
|
||||
#endif
|
||||
|
||||
extern s32 spr_allocateBtlComponentsOnWorldHeap;
|
||||
|
@ -17,6 +17,33 @@ extern HudScript HES_PartnerRank2B;
|
||||
HudScript* D_80109890[] = { &HES_PartnerRank1A, &HES_PartnerRank2A };
|
||||
HudScript* D_80109898[] = { &HES_PartnerRank1B, &HES_PartnerRank2B };
|
||||
|
||||
#if VERSION_JP
|
||||
#define WINDOW_KEY_WIDTH 242
|
||||
#define ALREADY_PARTNER_HEIGHT 32
|
||||
#define EMPTY_BAR_X 67
|
||||
#define DIARY_PAGE_X 0
|
||||
#define PARTNER_LIST_X1 50
|
||||
#define PARTNER_LIST_X2 66
|
||||
#define BADGE_PRICE_X 108
|
||||
#define ITEM_PRICE_X 106
|
||||
#define MENU_OFFSET_Y1 9
|
||||
#define MENU_OFFSET_Y2 7
|
||||
#define POPUP_PARTNER_WIDTH 80
|
||||
#else
|
||||
#define WINDOW_KEY_WIDTH 280
|
||||
#define ALREADY_PARTNER_HEIGHT 40
|
||||
#define EMPTY_BAR_X 73
|
||||
#define DIARY_PAGE_X 8
|
||||
#define PARTNER_LIST_X1 85
|
||||
#define PARTNER_LIST_X2 91
|
||||
#define BADGE_PRICE_X 115
|
||||
#define ITEM_PRICE_X 121
|
||||
#define MENU_OFFSET_Y1 8
|
||||
#define MENU_OFFSET_Y2 6
|
||||
#define POPUP_PARTNER_WIDTH 100
|
||||
#endif
|
||||
|
||||
#if !VERSION_JP
|
||||
s16 PopupWorldStartX[] = {
|
||||
[POPUP_MENU_USE_ITEM] 140,
|
||||
[POPUP_MENU_SWITCH_PARTNER] 140,
|
||||
@ -50,6 +77,7 @@ s16 PopupContentScissorWidths[] = {
|
||||
[POPUP_MENU_USEKEY] 137,
|
||||
[POPUP_MENU_POST_OFFICE] 137,
|
||||
};
|
||||
#endif
|
||||
|
||||
SHIFT_BSS s32 gPopupState;
|
||||
SHIFT_BSS s32 D_8010D644;
|
||||
@ -339,19 +367,62 @@ s32 popup_menu_update(void) {
|
||||
|
||||
switch (gPopupState) {
|
||||
case POPUP_STATE_INIT:
|
||||
#if VERSION_JP
|
||||
D_8010D67C = 32;
|
||||
D_8010D67E = 72;
|
||||
D_8010D680 = 32;
|
||||
PopupMenu_StarPieceCounterPosX = 32;
|
||||
#else
|
||||
D_8010D67C = 20;
|
||||
D_8010D67E = 72;
|
||||
D_8010D680 = 20;
|
||||
#endif
|
||||
D_8010D682 = 186;
|
||||
D_8010D684 = 16;
|
||||
D_8010D686 = 88;
|
||||
#if !VERSION_JP
|
||||
PopupMenu_StarPieceCounterPosX = 32;
|
||||
#endif
|
||||
PopupMenu_StarPieceCounterPosY = 164;
|
||||
if (PopupNotBattle) {
|
||||
#if VERSION_JP
|
||||
|
||||
switch (gPopupMenu->popupType) {
|
||||
case POPUP_MENU_USE_ITEM:
|
||||
case POPUP_MENU_THROW_AWAY_ITEM:
|
||||
case POPUP_MENU_CHECK_ITEM:
|
||||
case POPUP_MENU_CLAIM_ITEM:
|
||||
case POPUP_MENU_READ_LETTER:
|
||||
case POPUP_MENU_TAKE_FROM_CHEST:
|
||||
case POPUP_MENU_USEKEY:
|
||||
D_8010D67C += 144;
|
||||
break;
|
||||
case POPUP_MENU_TRADE_FOR_BADGE:
|
||||
D_8010D67C += 122;
|
||||
break;
|
||||
case POPUP_MENU_UPGRADE_PARTNER:
|
||||
D_8010D67C += 134;
|
||||
break;
|
||||
case POPUP_MENU_SELL_ITEM:
|
||||
D_8010D67C += 122;
|
||||
break;
|
||||
case POPUP_MENU_SWITCH_PARTNER:
|
||||
case POPUP_MENU_READ_DIARY_PAGE:
|
||||
case POPUP_MENU_READ_POSTCARD:
|
||||
case POPUP_MENU_POST_OFFICE:
|
||||
D_8010D67C += 160;
|
||||
break;
|
||||
}
|
||||
#else
|
||||
D_8010D67C = PopupWorldStartX[gPopupMenu->popupType] + 20;
|
||||
#endif
|
||||
}
|
||||
if (PopupMenu_MaxDisplayableEntryCount >= 7) {
|
||||
#if VERSION_JP
|
||||
D_8010D67E -= 10;
|
||||
#else
|
||||
D_8010D67E = 62;
|
||||
#endif
|
||||
}
|
||||
D_8010D68C = 0;
|
||||
elementID = hud_element_create(&HES_EmptyBar);
|
||||
@ -540,6 +611,68 @@ s32 popup_menu_update(void) {
|
||||
set_window_update(WINDOW_ID_15, 2);
|
||||
set_window_update(WINDOW_ID_17, 1);
|
||||
}
|
||||
#elif VERSION_JP
|
||||
switch (gPopupMenu->popupType) {
|
||||
case POPUP_MENU_USE_ITEM:
|
||||
case POPUP_MENU_THROW_AWAY_ITEM:
|
||||
case POPUP_MENU_CHECK_ITEM:
|
||||
case POPUP_MENU_CLAIM_ITEM:
|
||||
case POPUP_MENU_TAKE_FROM_CHEST:
|
||||
case POPUP_MENU_USEKEY:
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 130, (PopupMenu_DisplayedEntryCount * LINE_HEIGHT) + 26, WINDOW_PRIORITY_20, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_15, 12, -6, 106, 16, WINDOW_PRIORITY_21, popup_menu_draw_title_contents, NULL, WINDOW_ID_14);
|
||||
set_window_update(WINDOW_ID_15, WINDOW_UPDATE_SHOW);
|
||||
set_window_update(WINDOW_ID_17, WINDOW_UPDATE_HIDE);
|
||||
break;
|
||||
case POPUP_MENU_SWITCH_PARTNER:
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 104, (PopupMenu_DisplayedEntryCount * LINE_HEIGHT) + 26, WINDOW_PRIORITY_20, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_17, 14, -6, 72, 16, WINDOW_PRIORITY_21, popup_menu_draw_title_contents, NULL, WINDOW_ID_14);
|
||||
set_window_update(WINDOW_ID_15, WINDOW_UPDATE_HIDE);
|
||||
set_window_update(WINDOW_ID_17, WINDOW_UPDATE_SHOW);
|
||||
break;
|
||||
case POPUP_MENU_TRADE_FOR_BADGE:
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 152, (PopupMenu_DisplayedEntryCount * LINE_HEIGHT) + 26, WINDOW_PRIORITY_20, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_15, 12, -6, 106, 16, WINDOW_PRIORITY_21, popup_menu_draw_title_contents, NULL, WINDOW_ID_14);
|
||||
set_window_update(WINDOW_ID_15, WINDOW_UPDATE_SHOW);
|
||||
set_window_update(WINDOW_ID_17, WINDOW_UPDATE_HIDE);
|
||||
break;
|
||||
case POPUP_MENU_UPGRADE_PARTNER:
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 126, (PopupMenu_DisplayedEntryCount * LINE_HEIGHT) + 26, WINDOW_PRIORITY_20, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_17, 12, -6, 66, 16, WINDOW_PRIORITY_21, popup_menu_draw_title_contents, NULL, WINDOW_ID_14);
|
||||
set_window_update(WINDOW_ID_15, WINDOW_UPDATE_HIDE);
|
||||
set_window_update(WINDOW_ID_17, WINDOW_UPDATE_SHOW);
|
||||
break;
|
||||
case POPUP_MENU_SELL_ITEM:
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 152, (PopupMenu_DisplayedEntryCount * LINE_HEIGHT) + 26, WINDOW_PRIORITY_20, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_15, 12, -6, 106, 16, WINDOW_PRIORITY_21, popup_menu_draw_title_contents, NULL, WINDOW_ID_14);
|
||||
set_window_update(WINDOW_ID_15, WINDOW_UPDATE_SHOW);
|
||||
set_window_update(WINDOW_ID_17, WINDOW_UPDATE_HIDE);
|
||||
break;
|
||||
case POPUP_MENU_READ_LETTER:
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 120, (PopupMenu_DisplayedEntryCount * LINE_HEIGHT) + 26, WINDOW_PRIORITY_20, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_15, 24, -6, 72, 16, WINDOW_PRIORITY_21, popup_menu_draw_title_contents, NULL, WINDOW_ID_14);
|
||||
set_window_update(WINDOW_ID_15, WINDOW_UPDATE_SHOW);
|
||||
set_window_update(WINDOW_ID_17, WINDOW_UPDATE_HIDE);
|
||||
break;
|
||||
case POPUP_MENU_READ_DIARY_PAGE:
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 108, (PopupMenu_DisplayedEntryCount * LINE_HEIGHT) + 26, WINDOW_PRIORITY_20, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_15, 12, -6, 84, 16, WINDOW_PRIORITY_21, popup_menu_draw_title_contents, NULL, WINDOW_ID_14);
|
||||
set_window_update(WINDOW_ID_15, WINDOW_UPDATE_SHOW);
|
||||
set_window_update(WINDOW_ID_17, WINDOW_UPDATE_HIDE);
|
||||
break;
|
||||
case POPUP_MENU_READ_POSTCARD:
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 124, (PopupMenu_DisplayedEntryCount * LINE_HEIGHT) + 26, WINDOW_PRIORITY_20, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_15, 12, -6, 100, 16, WINDOW_PRIORITY_21, popup_menu_draw_title_contents, NULL, WINDOW_ID_14);
|
||||
set_window_update(WINDOW_ID_15, WINDOW_UPDATE_SHOW);
|
||||
set_window_update(WINDOW_ID_17, WINDOW_UPDATE_HIDE);
|
||||
break;
|
||||
case POPUP_MENU_POST_OFFICE:
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 96, (PopupMenu_DisplayedEntryCount * LINE_HEIGHT) + 26, WINDOW_PRIORITY_20, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_17, 10, -6, 72, 16, WINDOW_PRIORITY_21, popup_menu_draw_title_contents, NULL, WINDOW_ID_14);
|
||||
set_window_update(WINDOW_ID_15, WINDOW_UPDATE_HIDE);
|
||||
set_window_update(WINDOW_ID_17, WINDOW_UPDATE_SHOW);
|
||||
break;
|
||||
}
|
||||
#else
|
||||
switch (gPopupMenu->popupType) {
|
||||
case POPUP_MENU_USE_ITEM:
|
||||
@ -613,6 +746,19 @@ s32 popup_menu_update(void) {
|
||||
}
|
||||
#endif
|
||||
|
||||
#if VERSION_JP
|
||||
switch (gPopupMenu->popupType) {
|
||||
case POPUP_MENU_UPGRADE_PARTNER:
|
||||
set_window_properties(WINDOW_ID_18, 84, -6, 40, 16, WINDOW_PRIORITY_21, popup_draw_cost_icon, NULL, WINDOW_ID_14);
|
||||
break;
|
||||
case POPUP_MENU_TRADE_FOR_BADGE:
|
||||
set_window_properties(WINDOW_ID_16, 116, -14, 32, 32, WINDOW_PRIORITY_21, popup_draw_cost_icon, NULL, WINDOW_ID_14);
|
||||
break;
|
||||
case POPUP_MENU_SELL_ITEM:
|
||||
set_window_properties(WINDOW_ID_16, 116, -14, 32, 32, WINDOW_PRIORITY_21, popup_draw_cost_icon, NULL, WINDOW_ID_14);
|
||||
break;
|
||||
}
|
||||
#else
|
||||
switch (gPopupMenu->popupType) {
|
||||
case POPUP_MENU_TRADE_FOR_BADGE:
|
||||
set_window_properties(WINDOW_ID_16, 126, -14, 32, 32, WINDOW_PRIORITY_21, popup_draw_cost_icon, NULL, WINDOW_ID_14);
|
||||
@ -621,6 +767,7 @@ s32 popup_menu_update(void) {
|
||||
set_window_properties(WINDOW_ID_16, 131, -14, 32, 32, WINDOW_PRIORITY_21, popup_draw_cost_icon, NULL, WINDOW_ID_14);
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (gPopupMenu->popupType == POPUP_MENU_TRADE_FOR_BADGE) {
|
||||
posX = PopupMenu_StarPieceCounterPosX;
|
||||
@ -650,7 +797,7 @@ s32 popup_menu_update(void) {
|
||||
{
|
||||
posX = D_8010D680;
|
||||
posY = D_8010D682;
|
||||
set_window_properties(WINDOW_ID_19, posX, posY, 280, 32, WINDOW_PRIORITY_20, func_800F48F4, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_19, posX, posY, WINDOW_KEY_WIDTH, 32, WINDOW_PRIORITY_20, func_800F48F4, NULL, -1);
|
||||
}
|
||||
|
||||
posX = D_8010D684;
|
||||
@ -664,6 +811,40 @@ s32 popup_menu_update(void) {
|
||||
set_window_properties(WINDOW_ID_21, posX, posY, gPopupMenu->unk_340 + 144, height, WINDOW_PRIORITY_20, func_800F4944, NULL, -1);
|
||||
#else
|
||||
switch (gPopupMenu->popupType) {
|
||||
#if VERSION_JP
|
||||
case POPUP_MENU_USE_ITEM:
|
||||
case POPUP_MENU_SWITCH_PARTNER:
|
||||
case POPUP_MENU_THROW_AWAY_ITEM:
|
||||
case POPUP_MENU_CHECK_ITEM:
|
||||
case POPUP_MENU_CLAIM_ITEM:
|
||||
case POPUP_MENU_READ_LETTER:
|
||||
case POPUP_MENU_TAKE_FROM_CHEST:
|
||||
case POPUP_MENU_READ_DIARY_PAGE:
|
||||
case POPUP_MENU_READ_POSTCARD:
|
||||
case POPUP_MENU_USEKEY:
|
||||
case POPUP_MENU_POST_OFFICE:
|
||||
switch (gPopupMenu->dipMode) {
|
||||
case 0:
|
||||
set_window_properties(WINDOW_ID_21, D_8010D684, D_8010D686, 152, 32, WINDOW_PRIORITY_20, func_800F4944, NULL, -1);
|
||||
break;
|
||||
case 1:
|
||||
set_window_properties(WINDOW_ID_21, D_8010D684, D_8010D686, 152, 32, WINDOW_PRIORITY_20, func_800F4944, NULL, -1);
|
||||
break;
|
||||
case 2:
|
||||
set_window_properties(WINDOW_ID_21, D_8010D684, D_8010D686, 152, 32, WINDOW_PRIORITY_20, func_800F4944, NULL, -1);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case POPUP_MENU_TRADE_FOR_BADGE:
|
||||
set_window_properties(WINDOW_ID_21, D_8010D684, D_8010D686, 136, 32, WINDOW_PRIORITY_20, func_800F4944, NULL, -1);
|
||||
break;
|
||||
case POPUP_MENU_UPGRADE_PARTNER:
|
||||
set_window_properties(WINDOW_ID_21, D_8010D684, D_8010D686, 136, 48, WINDOW_PRIORITY_20, func_800F4944, NULL, -1);
|
||||
break;
|
||||
case POPUP_MENU_SELL_ITEM:
|
||||
set_window_properties(WINDOW_ID_21, D_8010D684, D_8010D686, 120, 32, WINDOW_PRIORITY_20, func_800F4944, NULL, -1);
|
||||
break;
|
||||
#else
|
||||
case POPUP_MENU_USE_ITEM:
|
||||
case POPUP_MENU_CHECK_ITEM:
|
||||
case POPUP_MENU_CLAIM_ITEM:
|
||||
@ -690,6 +871,7 @@ s32 popup_menu_update(void) {
|
||||
case POPUP_MENU_SELL_ITEM:
|
||||
set_window_properties(WINDOW_ID_21, posX, posY, 120, 32, WINDOW_PRIORITY_20, func_800F4944, NULL, -1);
|
||||
break;
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -1041,7 +1223,7 @@ s32 popup_menu_update(void) {
|
||||
set_window_properties(WINDOW_ID_BATTLE_POPUP, 160 - (width / 2), posY, width, 40, WINDOW_PRIORITY_20, popup_draw_already_have_partner, NULL, -1);
|
||||
#else
|
||||
width = get_msg_width(MSG_Menus_006B, 0) + 23;
|
||||
set_window_properties(WINDOW_ID_BATTLE_POPUP, 160 - (width / 2), 80, width, 40, WINDOW_PRIORITY_20, popup_draw_already_have_partner, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_BATTLE_POPUP, 160 - (width / 2), 80, width, ALREADY_PARTNER_HEIGHT, WINDOW_PRIORITY_20, popup_draw_already_have_partner, NULL, -1);
|
||||
#endif
|
||||
set_window_update(WINDOW_ID_BATTLE_POPUP, WINDOW_UPDATE_SHOW);
|
||||
D_8010D644 = 60;
|
||||
@ -1267,6 +1449,9 @@ void popup_menu_draw_menu_contents(s32* userData, s32 baseX, s32 baseY, s32 widt
|
||||
y1 = y + PopupMenu_DisplayedEntryCount * LINE_HEIGHT + 4;
|
||||
switch (gPopupMenu->popupType) {
|
||||
case POPUP_MENU_USE_ITEM:
|
||||
#if VERSION_JP
|
||||
case POPUP_MENU_THROW_AWAY_ITEM:
|
||||
#endif
|
||||
case POPUP_MENU_TRADE_FOR_BADGE:
|
||||
case POPUP_MENU_SELL_ITEM:
|
||||
case POPUP_MENU_CHECK_ITEM:
|
||||
@ -1283,9 +1468,11 @@ void popup_menu_draw_menu_contents(s32* userData, s32 baseX, s32 baseY, s32 widt
|
||||
case POPUP_MENU_UPGRADE_PARTNER:
|
||||
gDPSetScissor(gMainGfxPos++, G_SC_NON_INTERLACE, x, y, x + 90, y1);
|
||||
break;
|
||||
#if !VERSION_JP
|
||||
case POPUP_MENU_THROW_AWAY_ITEM:
|
||||
gDPSetScissor(gMainGfxPos++, G_SC_NON_INTERLACE, x, y, x + 160, y1);
|
||||
break;
|
||||
#endif
|
||||
}
|
||||
|
||||
y = baseY + D_8010D658 + 8;
|
||||
@ -1293,7 +1480,7 @@ void popup_menu_draw_menu_contents(s32* userData, s32 baseX, s32 baseY, s32 widt
|
||||
y = baseY + D_8010D658 + 21;
|
||||
}
|
||||
id = PopupMenu_EmptybarHEID;
|
||||
hud_element_set_render_pos(id, baseX + 73, y - 3);
|
||||
hud_element_set_render_pos(id, baseX + EMPTY_BAR_X, y - 3);
|
||||
hud_element_set_alpha(id, PopupMenu_Alpha);
|
||||
if (PopupMenu_MaxDisplayableEntryCount < gPopupMenu->numEntries) {
|
||||
hud_element_draw_without_clipping(id);
|
||||
@ -1305,10 +1492,41 @@ void popup_menu_draw_menu_contents(s32* userData, s32 baseX, s32 baseY, s32 widt
|
||||
y = baseY;
|
||||
y1++;
|
||||
}
|
||||
|
||||
#if VERSION_JP
|
||||
switch (gPopupMenu->popupType) {
|
||||
case POPUP_MENU_USE_ITEM:
|
||||
case POPUP_MENU_THROW_AWAY_ITEM:
|
||||
case POPUP_MENU_CHECK_ITEM:
|
||||
case POPUP_MENU_CLAIM_ITEM:
|
||||
case POPUP_MENU_READ_LETTER:
|
||||
case POPUP_MENU_TAKE_FROM_CHEST:
|
||||
case POPUP_MENU_READ_DIARY_PAGE:
|
||||
case POPUP_MENU_READ_POSTCARD:
|
||||
case POPUP_MENU_USEKEY:
|
||||
case POPUP_MENU_POST_OFFICE:
|
||||
gDPSetScissor(gMainGfxPos++, G_SC_NON_INTERLACE, x, y, x + 112, y1);
|
||||
break;
|
||||
case POPUP_MENU_SWITCH_PARTNER:
|
||||
gDPSetScissor(gMainGfxPos++, G_SC_NON_INTERLACE, x, y, x + 98, y1);
|
||||
break;
|
||||
case POPUP_MENU_TRADE_FOR_BADGE:
|
||||
gDPSetScissor(gMainGfxPos++, G_SC_NON_INTERLACE, x, y, x + 144, y1);
|
||||
break;
|
||||
case POPUP_MENU_UPGRADE_PARTNER:
|
||||
gDPSetScissor(gMainGfxPos++, G_SC_NON_INTERLACE, x, y, x + 144, y1);
|
||||
break;
|
||||
case POPUP_MENU_SELL_ITEM:
|
||||
gDPSetScissor(gMainGfxPos++, G_SC_NON_INTERLACE, x, y, x + 140, y1);
|
||||
break;
|
||||
}
|
||||
#else
|
||||
gDPSetScissor(gMainGfxPos++, G_SC_NON_INTERLACE, x, y, x + PopupContentScissorWidths[gPopupMenu->popupType], y1);
|
||||
offset = 0;
|
||||
#endif
|
||||
|
||||
x = baseX + 32;
|
||||
y = baseY + D_8010D658 + 2;
|
||||
offset = 0;
|
||||
if (gPopupMenu->popupType == POPUP_MENU_THROW_AWAY_ITEM) {
|
||||
y = baseY + D_8010D658;
|
||||
offset = 2;
|
||||
@ -1316,7 +1534,7 @@ void popup_menu_draw_menu_contents(s32* userData, s32 baseX, s32 baseY, s32 widt
|
||||
|
||||
t = 0;
|
||||
for (i = 0; i < gPopupMenu->numEntries; i++, t++) {
|
||||
if (i < sp28 - 1 || i > sp28 + PopupMenu_DisplayedEntryCount) {
|
||||
if (sp28 - 1 > i || sp28 + PopupMenu_DisplayedEntryCount < i) {
|
||||
y += LINE_HEIGHT;
|
||||
if (i == 0) {
|
||||
y += offset;
|
||||
@ -1358,7 +1576,7 @@ void popup_menu_draw_menu_contents(s32* userData, s32 baseX, s32 baseY, s32 widt
|
||||
msgPal = MSG_PAL_STANDARD;
|
||||
}
|
||||
set_message_int_var(gPopupMenu->userIndex[t] + 1, 0);
|
||||
draw_msg(MSG_Menus_00CD, x + 8, y, PopupMenu_Alpha, msgPal, DRAW_MSG_STYLE_MENU);
|
||||
draw_msg(MSG_Menus_00CD, x + DIARY_PAGE_X, y, PopupMenu_Alpha, msgPal, DRAW_MSG_STYLE_MENU);
|
||||
break;
|
||||
case POPUP_MENU_READ_POSTCARD:
|
||||
if (gPopupMenu->value[t] != 0) {
|
||||
@ -1382,9 +1600,9 @@ void popup_menu_draw_menu_contents(s32* userData, s32 baseX, s32 baseY, s32 widt
|
||||
hud_element_set_script(id, D_80109898[j]);
|
||||
}
|
||||
if (gPopupMenu->popupType == POPUP_MENU_SWITCH_PARTNER) {
|
||||
hud_element_set_render_pos(id, x + 85 + j * 13, y + 10);
|
||||
hud_element_set_render_pos(id, x + PARTNER_LIST_X1 + j * 13, y + 10);
|
||||
} else {
|
||||
hud_element_set_render_pos(id, x + 91 + j * 13, y + 10);
|
||||
hud_element_set_render_pos(id, x + PARTNER_LIST_X2 + j * 13, y + 10);
|
||||
}
|
||||
if (j < gPopupMenu->value[i]) {
|
||||
hud_element_draw_next(id);
|
||||
@ -1392,10 +1610,10 @@ void popup_menu_draw_menu_contents(s32* userData, s32 baseX, s32 baseY, s32 widt
|
||||
}
|
||||
break;
|
||||
case POPUP_MENU_TRADE_FOR_BADGE:
|
||||
draw_number(gPopupMenu->value[t], x + 115, y, 1, msgPal, PopupMenu_Alpha, DRAW_NUMBER_STYLE_MONOSPACE_RIGHT);
|
||||
draw_number(gPopupMenu->value[t], x + BADGE_PRICE_X, y, 1, msgPal, PopupMenu_Alpha, DRAW_NUMBER_STYLE_MONOSPACE_RIGHT);
|
||||
break;
|
||||
case POPUP_MENU_SELL_ITEM:
|
||||
draw_number(gPopupMenu->value[t], x + 121, y, 1, msgPal, PopupMenu_Alpha, DRAW_NUMBER_STYLE_MONOSPACE_RIGHT);
|
||||
draw_number(gPopupMenu->value[t], x + ITEM_PRICE_X, y, 1, msgPal, PopupMenu_Alpha, DRAW_NUMBER_STYLE_MONOSPACE_RIGHT);
|
||||
break;
|
||||
}
|
||||
y += LINE_HEIGHT;
|
||||
@ -1406,10 +1624,10 @@ void popup_menu_draw_menu_contents(s32* userData, s32 baseX, s32 baseY, s32 widt
|
||||
}
|
||||
|
||||
x = baseX + 24;
|
||||
y = baseY + D_8010D658 + 8;
|
||||
y = baseY + D_8010D658 + MENU_OFFSET_Y1;
|
||||
offset = 0;
|
||||
if (gPopupMenu->popupType == POPUP_MENU_THROW_AWAY_ITEM) {
|
||||
y = baseY + D_8010D658 + 6;
|
||||
y = baseY + D_8010D658 + MENU_OFFSET_Y2;
|
||||
offset = 2;
|
||||
}
|
||||
|
||||
@ -1522,11 +1740,43 @@ void popup_menu_draw_menu_contents(s32* userData, s32 baseX, s32 baseY, s32 widt
|
||||
break;
|
||||
case POPUP_MENU_SWITCH_PARTNER:
|
||||
case POPUP_MENU_UPGRADE_PARTNER:
|
||||
gDPSetScissor(gMainGfxPos++, G_SC_NON_INTERLACE, x, y, x + 100, y1);
|
||||
gDPSetScissor(gMainGfxPos++, G_SC_NON_INTERLACE, x, y, x + POPUP_PARTNER_WIDTH, y1);
|
||||
break;
|
||||
}
|
||||
|
||||
switch (gPopupMenu->popupType) {
|
||||
#if VERSION_JP
|
||||
case POPUP_MENU_TRADE_FOR_BADGE:
|
||||
offset = 31;
|
||||
break;
|
||||
case POPUP_MENU_UPGRADE_PARTNER:
|
||||
offset = 32;
|
||||
break;
|
||||
case POPUP_MENU_SELL_ITEM:
|
||||
offset = 31;
|
||||
break;
|
||||
default:
|
||||
offset = 31;
|
||||
break;
|
||||
case POPUP_MENU_CLAIM_ITEM:
|
||||
case POPUP_MENU_READ_LETTER:
|
||||
case POPUP_MENU_TAKE_FROM_CHEST:
|
||||
offset = 31;
|
||||
break;
|
||||
case POPUP_MENU_USEKEY:
|
||||
offset = 31;
|
||||
break;
|
||||
case POPUP_MENU_READ_DIARY_PAGE:
|
||||
offset = 13;
|
||||
break;
|
||||
case POPUP_MENU_READ_POSTCARD:
|
||||
offset = 21;
|
||||
break;
|
||||
case POPUP_MENU_SWITCH_PARTNER:
|
||||
case POPUP_MENU_POST_OFFICE:
|
||||
offset = 14;
|
||||
break;
|
||||
#else
|
||||
case POPUP_MENU_SWITCH_PARTNER:
|
||||
offset = 35;
|
||||
break;
|
||||
@ -1558,6 +1808,7 @@ void popup_menu_draw_menu_contents(s32* userData, s32 baseX, s32 baseY, s32 widt
|
||||
case POPUP_MENU_POST_OFFICE:
|
||||
offset = 30;
|
||||
break;
|
||||
#endif
|
||||
}
|
||||
|
||||
if (PopupMenu_FirstDisplayIndex > 0) {
|
||||
@ -1572,7 +1823,8 @@ void popup_menu_draw_menu_contents(s32* userData, s32 baseX, s32 baseY, s32 widt
|
||||
if (PopupMenu_LastDisplayIndex < gPopupMenu->numEntries) {
|
||||
id = PopupMenu_DownArrowHEID;
|
||||
x = baseX + offset;
|
||||
y = baseY + PopupMenu_MaxDisplayableEntryCount * LINE_HEIGHT;
|
||||
y = baseY;
|
||||
y += PopupMenu_MaxDisplayableEntryCount * LINE_HEIGHT;
|
||||
hud_element_set_render_pos(id, x + 35, y + 5);
|
||||
hud_element_set_alpha(id, PopupMenu_Alpha);
|
||||
hud_element_draw_without_clipping(id);
|
||||
@ -1609,6 +1861,29 @@ void popup_menu_draw_title_contents(s32* userData, s32 baseX, s32 baseY, s32 wid
|
||||
}
|
||||
}
|
||||
#else
|
||||
|
||||
#if VERSION_JP
|
||||
#define POPUP_ITEM_X 35
|
||||
#define POPUP_ITEMDIP_NUMBER_X 82
|
||||
#define POPUP_ITEMDIP_X 102
|
||||
#define POPUP_TRIPLE_DIP_X 4
|
||||
#define POPUP_BADGE_X 38
|
||||
#define POPUP_CHEST_X 31
|
||||
#define POPUP_POSTCARD_X 16
|
||||
#define POPUP_ITEM_KEY_X 35
|
||||
#define POPUP_POSTOFFICE_X 23
|
||||
#else
|
||||
#define POPUP_ITEM_X 26
|
||||
#define POPUP_ITEMDIP_NUMBER_X 94
|
||||
#define POPUP_ITEMDIP_X 114
|
||||
#define POPUP_TRIPLE_DIP_X 6
|
||||
#define POPUP_BADGE_X 27
|
||||
#define POPUP_CHEST_X 4
|
||||
#define POPUP_POSTCARD_X 6
|
||||
#define POPUP_ITEM_KEY_X 27
|
||||
#define POPUP_POSTOFFICE_X 8
|
||||
#endif
|
||||
|
||||
void popup_menu_draw_title_contents(
|
||||
s32* userData, s32 baseX, s32 baseY, s32 width, s32 height, s32 opacity, s32 darkening)
|
||||
{
|
||||
@ -1620,45 +1895,60 @@ void popup_menu_draw_title_contents(
|
||||
case POPUP_MENU_CLAIM_ITEM:
|
||||
switch (gPopupMenu->dipMode) {
|
||||
case 0:
|
||||
draw_msg(MSG_Menus_Items, baseX + 26, baseY + 2, PopupMenu_Alpha, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
#if VERSION_JP
|
||||
draw_msg(MSG_Menus_JP_004F, baseX + POPUP_ITEM_X, baseY + 2, PopupMenu_Alpha, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
#else
|
||||
draw_msg(MSG_Menus_Items, baseX + POPUP_ITEM_X, baseY + 2, PopupMenu_Alpha, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
#endif
|
||||
break;
|
||||
case 1:
|
||||
draw_msg(MSG_Menus_DoubleDip, baseX + 4, baseY + 2, PopupMenu_Alpha, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
draw_number(gPopupMenu->titleNumber, baseX + 94, baseY + 2, DRAW_NUMBER_CHARSET_THIN, MSG_PAL_32,
|
||||
draw_number(gPopupMenu->titleNumber, baseX + POPUP_ITEMDIP_NUMBER_X, baseY + 2, DRAW_NUMBER_CHARSET_THIN, MSG_PAL_32,
|
||||
PopupMenu_Alpha, DRAW_NUMBER_STYLE_MONOSPACE | DRAW_NUMBER_STYLE_ALIGN_RIGHT);
|
||||
draw_number(2, baseX + 114, baseY + 2, DRAW_NUMBER_CHARSET_THIN, MSG_PAL_32, PopupMenu_Alpha, DRAW_NUMBER_STYLE_MONOSPACE | DRAW_NUMBER_STYLE_ALIGN_RIGHT);
|
||||
draw_number(2, baseX + POPUP_ITEMDIP_X, baseY + 2, DRAW_NUMBER_CHARSET_THIN, MSG_PAL_32, PopupMenu_Alpha, DRAW_NUMBER_STYLE_MONOSPACE | DRAW_NUMBER_STYLE_ALIGN_RIGHT);
|
||||
break;
|
||||
case 2:
|
||||
draw_msg(MSG_Menus_TripleDip, baseX + 6, baseY + 2, PopupMenu_Alpha, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
draw_number(gPopupMenu->titleNumber, baseX + 94, baseY + 2, DRAW_NUMBER_CHARSET_THIN, MSG_PAL_32,
|
||||
draw_msg(MSG_Menus_TripleDip, baseX + POPUP_TRIPLE_DIP_X, baseY + 2, PopupMenu_Alpha, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
draw_number(gPopupMenu->titleNumber, baseX + POPUP_ITEMDIP_NUMBER_X, baseY + 2, DRAW_NUMBER_CHARSET_THIN, MSG_PAL_32,
|
||||
PopupMenu_Alpha, DRAW_NUMBER_STYLE_MONOSPACE | DRAW_NUMBER_STYLE_ALIGN_RIGHT);
|
||||
draw_number(3, baseX + 114, baseY + 2, DRAW_NUMBER_CHARSET_THIN, MSG_PAL_32, PopupMenu_Alpha,
|
||||
draw_number(3, baseX + POPUP_ITEMDIP_X, baseY + 2, DRAW_NUMBER_CHARSET_THIN, MSG_PAL_32, PopupMenu_Alpha,
|
||||
DRAW_NUMBER_STYLE_MONOSPACE | DRAW_NUMBER_STYLE_ALIGN_RIGHT);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case POPUP_MENU_TRADE_FOR_BADGE:
|
||||
draw_msg(MSG_MenuTip_0032, baseX + 27, baseY + 2, PopupMenu_Alpha, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
draw_msg(MSG_MenuTip_0032, baseX + POPUP_BADGE_X, baseY + 2, PopupMenu_Alpha, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
break;
|
||||
#if VERSION_JP
|
||||
case POPUP_MENU_UPGRADE_PARTNER:
|
||||
draw_msg(MSG_Menus_PartyMember, baseX + 20, baseY + 2, PopupMenu_Alpha, MSG_PAL_34, DRAW_MSG_STYLE_MENU);
|
||||
break;
|
||||
#endif
|
||||
case POPUP_MENU_READ_LETTER:
|
||||
draw_msg(MSG_MenuTip_0033, baseX + 23, baseY + 2, PopupMenu_Alpha, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
break;
|
||||
case POPUP_MENU_TAKE_FROM_CHEST:
|
||||
draw_msg(MSG_Menus_00D7, baseX + 4, baseY + 2, PopupMenu_Alpha, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
draw_msg(MSG_Menus_00D7, baseX + POPUP_CHEST_X, baseY + 2, PopupMenu_Alpha, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
break;
|
||||
case POPUP_MENU_READ_DIARY_PAGE:
|
||||
draw_msg(MSG_Menus_00CE, baseX + 8, baseY + 2, PopupMenu_Alpha, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
break;
|
||||
case POPUP_MENU_READ_POSTCARD:
|
||||
draw_msg(MSG_Menus_00D0, baseX + 6, baseY + 2, PopupMenu_Alpha, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
draw_msg(MSG_Menus_00D0, baseX + POPUP_POSTCARD_X, baseY + 2, PopupMenu_Alpha, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
break;
|
||||
case POPUP_MENU_USEKEY:
|
||||
draw_msg(MSG_Menus_Items, baseX + 27, baseY + 2, PopupMenu_Alpha, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
#if VERSION_JP
|
||||
draw_msg(MSG_Menus_KeyItems, baseX + POPUP_ITEM_KEY_X, baseY + 2, PopupMenu_Alpha, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
#else
|
||||
draw_msg(MSG_Menus_Items, baseX + POPUP_ITEM_KEY_X, baseY + 2, PopupMenu_Alpha, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
#endif
|
||||
break;
|
||||
case POPUP_MENU_SWITCH_PARTNER:
|
||||
#if !VERSION_JP
|
||||
case POPUP_MENU_UPGRADE_PARTNER:
|
||||
#endif
|
||||
case POPUP_MENU_POST_OFFICE:
|
||||
draw_msg(MSG_Menus_PartyMember, baseX + 8, baseY + 2, PopupMenu_Alpha, MSG_PAL_34, DRAW_MSG_STYLE_MENU);
|
||||
draw_msg(MSG_Menus_PartyMember, baseX + POPUP_POSTOFFICE_X, baseY + 2, PopupMenu_Alpha, MSG_PAL_34, DRAW_MSG_STYLE_MENU);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -1686,6 +1976,84 @@ void func_800F4944(s32* userData, s32 baseX, s32 baseY, s32 width, s32 height, s
|
||||
void func_800F4944(s32* userData, s32 baseX, s32 baseY, s32 width, s32 height, s32 opacity, s32 darkening) {
|
||||
s32 msgWidth;
|
||||
|
||||
#if VERSION_JP
|
||||
baseY += 6;
|
||||
|
||||
if (PopupNotBattle) {
|
||||
switch (gPopupMenu->popupType) {
|
||||
case POPUP_MENU_USE_ITEM:
|
||||
msgWidth = get_msg_width(MSG_Menus_0061, 0) + 18;
|
||||
baseX += 76 - (msgWidth / 2);
|
||||
draw_msg(MSG_Menus_0061, baseX + 6, baseY + 2, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_SWITCH_PARTNER:
|
||||
msgWidth = get_msg_width(MSG_Menus_0063, 0) + 18;
|
||||
baseX += 76 - (msgWidth / 2);
|
||||
draw_msg(MSG_Menus_0063, baseX + 8, baseY + 2, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_THROW_AWAY_ITEM:
|
||||
msgWidth = get_msg_width(MSG_Menus_0064, 0) + 18;
|
||||
baseX += 76 - (msgWidth / 2);
|
||||
draw_msg(MSG_Menus_0064, baseX + 4, baseY + 2, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_TRADE_FOR_BADGE:
|
||||
msgWidth = get_msg_width(MSG_Menus_0070, 0) + 18;
|
||||
baseX += 76 - (msgWidth / 2);
|
||||
draw_msg(MSG_Menus_0070, baseX + 4, baseY + 2, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_UPGRADE_PARTNER:
|
||||
msgWidth = get_msg_width(MSG_Menus_006A, 0) + 18;
|
||||
baseX += 76 - (msgWidth / 2);
|
||||
draw_msg(MSG_Menus_006A, baseX + 4, baseY + 2, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_SELL_ITEM:
|
||||
msgWidth = get_msg_width(MSG_Menus_0065, 0) + 18;
|
||||
baseX += 76 - (msgWidth / 2);
|
||||
draw_msg(MSG_Menus_0065, baseX - 4, baseY + 2, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_CHECK_ITEM:
|
||||
msgWidth = get_msg_width(MSG_Menus_0066, 0) + 18;
|
||||
baseX += 76 - (msgWidth / 2);
|
||||
draw_msg(MSG_Menus_0066, baseX + 6, baseY + 2, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_CLAIM_ITEM:
|
||||
msgWidth = get_msg_width(MSG_Menus_0067, 0) + 18;
|
||||
baseX += 76 - (msgWidth / 2);
|
||||
draw_msg(MSG_Menus_0067, baseX + 6, baseY + 2, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_READ_LETTER:
|
||||
msgWidth = get_msg_width(MSG_Menus_JP_0081, 0) + 18;
|
||||
baseX += 76 - (msgWidth / 2);
|
||||
draw_msg(MSG_Menus_JP_0081, baseX + 6, baseY + 2, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_TAKE_FROM_CHEST:
|
||||
msgWidth = get_msg_width(MSG_Menus_00D6, 0) + 18;
|
||||
baseX += 76 - (msgWidth / 2);
|
||||
draw_msg(MSG_Menus_00D6, baseX + 6, baseY + 2, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_READ_DIARY_PAGE:
|
||||
msgWidth = get_msg_width(MSG_Menus_006C, 0) + 18;
|
||||
baseX += 76 - (msgWidth / 2);
|
||||
draw_msg(MSG_Menus_006C, baseX + 6, baseY + 2, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_READ_POSTCARD:
|
||||
msgWidth = get_msg_width(MSG_Menus_006D, 0) + 18;
|
||||
baseX += 76 - (msgWidth / 2);
|
||||
draw_msg(MSG_Menus_006D, baseX + 6, baseY + 2, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_USEKEY:
|
||||
msgWidth = get_msg_width(MSG_Menus_0062, 0) + 18;
|
||||
baseX += 76 - (msgWidth / 2);
|
||||
draw_msg(MSG_Menus_0062, baseX + 6, baseY + 2, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_POST_OFFICE:
|
||||
msgWidth = get_msg_width(MSG_Menus_006F, 0) + 18;
|
||||
baseX += 76 - (msgWidth / 2);
|
||||
draw_msg(MSG_Menus_006F, baseX + 6, baseY + 2, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
}
|
||||
}
|
||||
#else
|
||||
baseY += 7;
|
||||
|
||||
if (PopupNotBattle) {
|
||||
@ -1762,6 +2130,7 @@ void func_800F4944(s32* userData, s32 baseX, s32 baseY, s32 width, s32 height, s
|
||||
break;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -1801,6 +2170,11 @@ void popup_draw_cost_icon(s32* userData, s32 x, s32 y) {
|
||||
hudElement = PopupMenu_TitleIconHEID;
|
||||
yPos = y + 16;
|
||||
break;
|
||||
#if VERSION_JP
|
||||
case POPUP_TYPE_UPGRADE_PARTNER:
|
||||
draw_msg(MSG_Menus_006E, x + 7, y + 2, PopupMenu_Alpha, MSG_PAL_34, 1);
|
||||
return;
|
||||
#endif
|
||||
case POPUP_TYPE_SELL_ITEM:
|
||||
xPos = x + 17;
|
||||
hudElement = PopupMenu_TitleIconHEID;
|
||||
@ -1816,7 +2190,11 @@ void popup_draw_cost_icon(s32* userData, s32 x, s32 y) {
|
||||
}
|
||||
|
||||
void popup_draw_already_have_partner(s32* userData, s32 x, s32 y) {
|
||||
#if VERSION_JP
|
||||
draw_msg(MSG_Menus_006B, x + 11, y + 8, 255, MSG_PAL_0F, 0);
|
||||
#else
|
||||
draw_msg(MSG_Menus_006B, x + 16, y + 2, 255, MSG_PAL_0F, 0);
|
||||
#endif
|
||||
}
|
||||
|
||||
void func_800F4D28(s32* userData, s32 x, s32 y) {
|
||||
|
@ -20,6 +20,15 @@ extern Addr WorldEntityHeapBase;
|
||||
#define entity_default_VRAM (void*) 0x802BAE00
|
||||
#endif
|
||||
|
||||
#if VERSION_JP // TODO remove once segments are split
|
||||
extern Addr entity_default_ROM_END;
|
||||
extern Addr entity_default_ROM_START;
|
||||
extern Addr entity_jan_iwa_ROM_END;
|
||||
extern Addr entity_jan_iwa_ROM_START;
|
||||
extern Addr entity_sbk_omo_ROM_END;
|
||||
extern Addr entity_sbk_omo_ROM_START;
|
||||
#endif
|
||||
|
||||
s32 D_8014AFB0 = 255;
|
||||
|
||||
SHIFT_BSS s32 CreateEntityVarArgBuffer[4];
|
||||
|
@ -3,6 +3,25 @@
|
||||
#include "ld_addrs.h"
|
||||
#include "entity.h"
|
||||
|
||||
#if VERSION_JP // TODO remove once segments are split
|
||||
extern Addr entity_model_BrickBlock_ROM_END;
|
||||
extern Addr entity_model_BrickBlock_ROM_START;
|
||||
extern Addr entity_model_Hammer1Block_ROM_END;
|
||||
extern Addr entity_model_Hammer1Block_ROM_START;
|
||||
extern Addr entity_model_Hammer2Block_ROM_END;
|
||||
extern Addr entity_model_Hammer2Block_ROM_START;
|
||||
extern Addr entity_model_Hammer3Block_ROM_END;
|
||||
extern Addr entity_model_Hammer3Block_ROM_START;
|
||||
extern Addr entity_model_InertRedBlock_ROM_END;
|
||||
extern Addr entity_model_InertRedBlock_ROM_START;
|
||||
extern Addr entity_model_InertYellowBlock_ROM_END;
|
||||
extern Addr entity_model_InertYellowBlock_ROM_START;
|
||||
extern Addr entity_model_PowBlock_ROM_END;
|
||||
extern Addr entity_model_PowBlock_ROM_START;
|
||||
extern Addr entity_model_PushBlock_ROM_END;
|
||||
extern Addr entity_model_PushBlock_ROM_START;
|
||||
#endif
|
||||
|
||||
extern Gfx Entity_InertYellowBlock_Render[];
|
||||
extern Gfx Entity_InertRedBlock_Render[];
|
||||
extern Gfx Entity_BrickBlock_Render[];
|
||||
|
@ -5,6 +5,11 @@
|
||||
#include "entity.h"
|
||||
#include "sprite/player.h"
|
||||
|
||||
#if VERSION_JP // TODO remove once segments are split
|
||||
extern Addr entity_model_BlueWarpPipe_ROM_END;
|
||||
extern Addr entity_model_BlueWarpPipe_ROM_START;
|
||||
#endif
|
||||
|
||||
extern Gfx Entity_BlueWarpPipe_RenderPipe[];
|
||||
extern Gfx Entity_BlueWarpPipe_RenderBase[];
|
||||
|
||||
|
@ -4,6 +4,11 @@
|
||||
#include "entity.h"
|
||||
#include "sprite/player.h"
|
||||
|
||||
#if VERSION_JP // TODO remove once segments are split
|
||||
extern Addr entity_model_Chest_ROM_END;
|
||||
extern Addr entity_model_Chest_ROM_START;
|
||||
#endif
|
||||
|
||||
extern EntityScript Entity_Chest_ScriptOpened;
|
||||
|
||||
extern Gfx Entity_Chest_RenderBox[];
|
||||
|
@ -4,6 +4,13 @@
|
||||
#include "ld_addrs.h"
|
||||
#include "entity.h"
|
||||
|
||||
#if VERSION_JP // TODO remove once segments are split
|
||||
extern Addr entity_model_HeartBlockContent_ROM_END;
|
||||
extern Addr entity_model_HeartBlockContent_ROM_START;
|
||||
extern Addr entity_model_HeartBlock_ROM_END;
|
||||
extern Addr entity_model_HeartBlock_ROM_START;
|
||||
#endif
|
||||
|
||||
extern EntityModelScript Entity_HeartBlockContent_RenderScriptIdle;
|
||||
extern EntityModelScript Entity_HeartBlockContent_RenderScriptAfterHit;
|
||||
extern EntityModelScript Entity_HeartBlockContent_RenderScriptHit;
|
||||
|
@ -2,6 +2,11 @@
|
||||
#include "ld_addrs.h"
|
||||
#include "entity.h"
|
||||
|
||||
#if VERSION_JP // TODO remove once segments are split
|
||||
extern Addr entity_model_HiddenPanel_ROM_END;
|
||||
extern Addr entity_model_HiddenPanel_ROM_START;
|
||||
#endif
|
||||
|
||||
s32 entity_HiddenPanel_is_item_on_top(Entity*);
|
||||
void entity_HiddenPanel_flip_over(Entity*);
|
||||
|
||||
|
@ -5,6 +5,25 @@
|
||||
#include "entity.h"
|
||||
#include "model.h"
|
||||
|
||||
#if VERSION_JP // TODO remove once segments are split
|
||||
extern Addr entity_model_HitFloatingYellowBlock_anim_ROM_END;
|
||||
extern Addr entity_model_HitFloatingYellowBlock_anim_ROM_START;
|
||||
extern Addr entity_model_HitFloatingYellowBlock_gfx_ROM_END;
|
||||
extern Addr entity_model_HitFloatingYellowBlock_gfx_ROM_START;
|
||||
extern Addr entity_model_HitRedBlock_anim_ROM_END;
|
||||
extern Addr entity_model_HitRedBlock_anim_ROM_START;
|
||||
extern Addr entity_model_HitRedBlock_gfx_ROM_END;
|
||||
extern Addr entity_model_HitRedBlock_gfx_ROM_START;
|
||||
extern Addr entity_model_HitYellowBlock_anim_ROM_END;
|
||||
extern Addr entity_model_HitYellowBlock_anim_ROM_START;
|
||||
extern Addr entity_model_HitYellowBlock_gfx_ROM_END;
|
||||
extern Addr entity_model_HitYellowBlock_gfx_ROM_START;
|
||||
extern Addr entity_model_RedBlock_ROM_END;
|
||||
extern Addr entity_model_RedBlock_ROM_START;
|
||||
extern Addr entity_model_YellowBlock_ROM_END;
|
||||
extern Addr entity_model_YellowBlock_ROM_START;
|
||||
#endif
|
||||
|
||||
extern Gfx Entity_YellowBlock_Render[];
|
||||
extern Gfx Entity_RedBlock_Render[];
|
||||
extern AnimScript Entity_HitYellowBlock_AnimationHit;
|
||||
|
@ -4,6 +4,11 @@
|
||||
#include "entity.h"
|
||||
#include "message_ids.h"
|
||||
|
||||
#if VERSION_JP // TODO remove once segments are split
|
||||
extern Addr entity_model_SaveBlock_ROM_END;
|
||||
extern Addr entity_model_SaveBlock_ROM_START;
|
||||
#endif
|
||||
|
||||
extern Mtx Entity_SaveBlock_Mtx;
|
||||
extern Gfx Entity_SaveBlock_RenderContent[];
|
||||
extern Gfx Entity_SaveBlock_RenderBlock[];
|
||||
|
@ -2,6 +2,17 @@
|
||||
#include "ld_addrs.h"
|
||||
#include "entity.h"
|
||||
|
||||
#if VERSION_JP // TODO remove once segments are split
|
||||
extern Addr entity_model_ShatteringBrickBlock_ROM_END;
|
||||
extern Addr entity_model_ShatteringBrickBlock_ROM_START;
|
||||
extern Addr entity_model_ShatteringHammer1Block_ROM_END;
|
||||
extern Addr entity_model_ShatteringHammer1Block_ROM_START;
|
||||
extern Addr entity_model_ShatteringHammer2Block_ROM_END;
|
||||
extern Addr entity_model_ShatteringHammer2Block_ROM_START;
|
||||
extern Addr entity_model_ShatteringHammer3Block_ROM_END;
|
||||
extern Addr entity_model_ShatteringHammer3Block_ROM_START;
|
||||
#endif
|
||||
|
||||
extern Mtx Entity_ShatteringHammer1Block_FragmentsMatrices[];
|
||||
extern Gfx* Entity_ShatteringHammer1Block_FragmentsRender[];
|
||||
extern Mtx Entity_ShatteringHammer2Block_FragmentsMatrices[];
|
||||
|
@ -2,6 +2,11 @@
|
||||
#include "ld_addrs.h"
|
||||
#include "entity.h"
|
||||
|
||||
#if VERSION_JP // TODO remove once segments are split
|
||||
extern Addr entity_model_Signpost_ROM_END;
|
||||
extern Addr entity_model_Signpost_ROM_START;
|
||||
#endif
|
||||
|
||||
extern Gfx Entity_Signpost_Render[];
|
||||
|
||||
void entity_Signpost_idle(Entity* entity) {
|
||||
|
@ -3,6 +3,17 @@
|
||||
#include "animation_script.h"
|
||||
#include "ld_addrs.h"
|
||||
|
||||
#if VERSION_JP // TODO remove once segments are split
|
||||
extern Addr entity_model_ScriptSpring_anim_ROM_END;
|
||||
extern Addr entity_model_ScriptSpring_anim_ROM_START;
|
||||
extern Addr entity_model_ScriptSpring_gfx_ROM_END;
|
||||
extern Addr entity_model_ScriptSpring_gfx_ROM_START;
|
||||
extern Addr entity_model_SimpleSpring_anim_ROM_END;
|
||||
extern Addr entity_model_SimpleSpring_anim_ROM_START;
|
||||
extern Addr entity_model_SimpleSpring_gfx_ROM_END;
|
||||
extern Addr entity_model_SimpleSpring_gfx_ROM_START;
|
||||
#endif
|
||||
|
||||
extern StaticAnimatorNode* Entity_ScriptSpring_Mesh[];
|
||||
extern AnimScript Entity_ScriptSpring_AnimLaunch;
|
||||
extern AnimScript Entity_ScriptSpring_AnimIdle;
|
||||
|
@ -3,6 +3,17 @@
|
||||
#include "ld_addrs.h"
|
||||
#include "entity.h"
|
||||
|
||||
#if VERSION_JP // TODO remove once segments are split
|
||||
extern Addr entity_model_SuperBlockContent_ROM_END;
|
||||
extern Addr entity_model_SuperBlockContent_ROM_START;
|
||||
extern Addr entity_model_SuperBlock_ROM_END;
|
||||
extern Addr entity_model_SuperBlock_ROM_START;
|
||||
extern Addr entity_model_UltraBlockContent_ROM_END;
|
||||
extern Addr entity_model_UltraBlockContent_ROM_START;
|
||||
extern Addr entity_model_UltraBlock_ROM_END;
|
||||
extern Addr entity_model_UltraBlock_ROM_START;
|
||||
#endif
|
||||
|
||||
extern EntityBlueprint Entity_SuperBlockContent;
|
||||
|
||||
extern Gfx Entity_SuperBlock_Render[];
|
||||
|
@ -3,6 +3,15 @@
|
||||
#include "ld_addrs.h"
|
||||
#include "entity.h"
|
||||
|
||||
#if VERSION_JP // TODO remove once segments are split
|
||||
extern Addr entity_model_BlueSwitch_ROM_END;
|
||||
extern Addr entity_model_BlueSwitch_ROM_START;
|
||||
extern Addr entity_model_GreenStompSwitch_ROM_END;
|
||||
extern Addr entity_model_GreenStompSwitch_ROM_START;
|
||||
extern Addr entity_model_RedSwitch_ROM_END;
|
||||
extern Addr entity_model_RedSwitch_ROM_START;
|
||||
#endif
|
||||
|
||||
#define REFLECTED_SWITCH_HIDDEN 1
|
||||
#define REFLECTED_SWITCH_LINKED 2
|
||||
|
||||
|
@ -3,6 +3,11 @@
|
||||
#include "ld_addrs.h"
|
||||
#include "entity.h"
|
||||
|
||||
#if VERSION_JP // TODO remove once segments are split
|
||||
extern Addr entity_model_WoodenCrate_ROM_END;
|
||||
extern Addr entity_model_WoodenCrate_ROM_START;
|
||||
#endif
|
||||
|
||||
extern Gfx Entity_RenderNone[];
|
||||
extern Gfx Entity_WoodenCrate_Render[];
|
||||
extern Gfx* Entity_WoodenCrate_FragmentsRender[];
|
||||
|
@ -1,6 +1,11 @@
|
||||
#include "common.h"
|
||||
#include "ld_addrs.h"
|
||||
|
||||
#if VERSION_JP // TODO remove once this part is split
|
||||
#define SHADING_NONE 0xFFFFFFFF
|
||||
extern Addr sprite_shading_profiles_ROM_START;
|
||||
#endif
|
||||
|
||||
// TODO: not sure where these go
|
||||
u8 D_802D9D70 = 254;
|
||||
u8 D_802D9D71 = 254;
|
||||
|
@ -3,6 +3,11 @@
|
||||
#include "sprite.h"
|
||||
#include "imgfx.h"
|
||||
|
||||
|
||||
#if VERSION_JP // TODO remove once segments are split
|
||||
extern Addr imgfx_data_ROM_START;
|
||||
#endif
|
||||
|
||||
typedef union ImgFXIntVars {
|
||||
s32 raw[2][4];
|
||||
struct {
|
||||
|
@ -37,7 +37,9 @@ SHIFT_BSS ItemEntity* BattleItemEntities[MAX_ITEM_ENTITIES];
|
||||
SHIFT_BSS ItemEntity** gCurrentItemEntities;
|
||||
SHIFT_BSS s16 isPickingUpItem;
|
||||
SHIFT_BSS s16 ItemSpawnWithinPlayerPickupDelay;
|
||||
#if !VERSION_JP
|
||||
SHIFT_BSS s16 D_801565A8;
|
||||
#endif
|
||||
SHIFT_BSS PopupMenu ItemPickupMenu;
|
||||
SHIFT_BSS s32 ItemPickupIconID;
|
||||
SHIFT_BSS s32 ItemPickupStateDelay;
|
||||
@ -110,8 +112,10 @@ Gfx D_8014C6A0[] = {
|
||||
|
||||
Lights1 ItemEntityLights = gdSPDefLights1(255, 255, 255, 0, 0, 0, 0, 0, 0);
|
||||
|
||||
#if !VERSION_JP
|
||||
s16 PickupHeaderWindowHeight[] = { 32, 40 };
|
||||
s16 PickupMessageWindowYOffsets[] = { 8, 4 };
|
||||
#endif
|
||||
|
||||
void sparkle_script_init(ItemEntity* item, SparkleScript* script) {
|
||||
item->sparkleReadPos = (s32*)script;
|
||||
@ -258,7 +262,9 @@ void clear_item_entity_data(void) {
|
||||
create_worker_world(NULL, draw_item_entities);
|
||||
create_worker_frontUI(NULL, draw_ui_item_entities);
|
||||
isPickingUpItem = FALSE;
|
||||
#if !VERSION_JP
|
||||
D_801565A8 = FALSE;
|
||||
#endif
|
||||
}
|
||||
|
||||
void init_item_entity_list(void) {
|
||||
@ -269,7 +275,9 @@ void init_item_entity_list(void) {
|
||||
}
|
||||
|
||||
isPickingUpItem = FALSE;
|
||||
#if !VERSION_JP
|
||||
D_801565A8 = FALSE;
|
||||
#endif
|
||||
ItemEntitiesCreated = 0;
|
||||
ItemEntityAlternatingSpawn = 0;
|
||||
}
|
||||
@ -1526,9 +1534,11 @@ void set_item_entity_flags(s32 index, s32 flags) {
|
||||
ItemEntity* item = gCurrentItemEntities[index];
|
||||
|
||||
item->flags |= flags;
|
||||
#if !VERSION_JP
|
||||
if (item->flags & ITEM_ENTITY_FLAG_CANT_COLLECT) {
|
||||
D_801565A8 = TRUE;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void clear_item_entity_flags(s32 index, s32 flags) {
|
||||
@ -1545,12 +1555,16 @@ void auto_collect_item_entity(s32 index) {
|
||||
|
||||
/// @returns TRUE when "you got X" popup is on-screen
|
||||
b32 is_picking_up_item(void) {
|
||||
#if VERSION_JP
|
||||
return isPickingUpItem;
|
||||
#else
|
||||
b32 ret = D_801565A8 != FALSE;
|
||||
|
||||
if (isPickingUpItem) {
|
||||
ret = TRUE;
|
||||
}
|
||||
return ret;
|
||||
#endif
|
||||
}
|
||||
|
||||
void set_item_entity_position(s32 itemEntityIndex, f32 x, f32 y, f32 z) {
|
||||
@ -2003,7 +2017,9 @@ void update_item_entity_collectable(ItemEntity* item) {
|
||||
sfx_play_sound_at_position(SOUND_HEART_PICKUP, SOUND_SPACE_DEFAULT, item->pos.x, item->pos.y, item->pos.z);
|
||||
break;
|
||||
}
|
||||
#if !VERSION_JP
|
||||
D_801565A8 = FALSE;
|
||||
#endif
|
||||
gOverrideFlags &= ~GLOBAL_OVERRIDES_40;
|
||||
remove_item_entity_by_reference(item);
|
||||
}
|
||||
@ -2013,7 +2029,9 @@ void update_item_entity_collectable(ItemEntity* item) {
|
||||
// when the script is done executing, destroy these items
|
||||
if (item->state == ITEM_PHYSICS_STATE_04) {
|
||||
if (!does_script_exist(UnusedItemPhysicsScriptID)) {
|
||||
#if !VERSION_JP
|
||||
D_801565A8 = FALSE;
|
||||
#endif
|
||||
remove_item_entity_by_reference(item);
|
||||
resume_all_group(EVT_GROUP_02);
|
||||
}
|
||||
@ -2023,7 +2041,9 @@ void update_item_entity_collectable(ItemEntity* item) {
|
||||
isPickingUpItem = TRUE;
|
||||
item->spawnType = ITEM_SPAWN_AT_PLAYER;
|
||||
item->state = ITEM_PICKUP_STATE_INIT;
|
||||
#if !VERSION_JP
|
||||
D_801565A8 = FALSE;
|
||||
#endif
|
||||
gOverrideFlags |= GLOBAL_OVERRIDES_40;
|
||||
}
|
||||
}
|
||||
@ -2059,7 +2079,9 @@ void update_item_entity_stationary(ItemEntity* item) {
|
||||
isPickingUpItem = TRUE;
|
||||
item->spawnType = ITEM_SPAWN_AT_PLAYER;
|
||||
item->state = ITEM_PICKUP_STATE_INIT;
|
||||
#if !VERSION_JP
|
||||
D_801565A8 = FALSE;
|
||||
#endif
|
||||
gOverrideFlags |= GLOBAL_OVERRIDES_40;
|
||||
}
|
||||
}
|
||||
@ -2458,6 +2480,22 @@ block_47: // TODO required to match
|
||||
}
|
||||
}
|
||||
|
||||
#if VERSION_JP
|
||||
#define WD_VAR1 44
|
||||
#define WD_VAR2 25
|
||||
#define WD_VAR3 20
|
||||
#define X_VAR1 32
|
||||
#define HT_VAR1 40
|
||||
#define WD_VAR4 242
|
||||
#else
|
||||
#define WD_VAR1 54
|
||||
#define WD_VAR2 30
|
||||
#define WD_VAR3 30
|
||||
#define X_VAR1 20
|
||||
#define HT_VAR1 height
|
||||
#define WD_VAR4 280
|
||||
#endif
|
||||
|
||||
void func_801363A0(ItemEntity* item) {
|
||||
ItemData* itemData = &gItemTable[item->itemID];
|
||||
s32 itemMsg;
|
||||
@ -2494,9 +2532,9 @@ void func_801363A0(ItemEntity* item) {
|
||||
item->itemID != ITEM_STAR_PIECE &&
|
||||
!(gItemTable[item->itemID].typeFlags & ITEM_TYPE_FLAG_GEAR) &&
|
||||
!(item->pickupMsgFlags & (ITEM_PICKUP_FLAG_1_COIN | ITEM_PICKUP_FLAG_3_STAR_PIECES))) {
|
||||
width = get_msg_width(itemMsg, 0) + 54;
|
||||
width = get_msg_width(itemMsg, 0) + WD_VAR1;
|
||||
} else {
|
||||
width = get_msg_width(itemMsg, 0) + 30;
|
||||
width = get_msg_width(itemMsg, 0) + WD_VAR2;
|
||||
}
|
||||
posX = 160 - width / 2;
|
||||
posY = 76;
|
||||
@ -2518,11 +2556,13 @@ void func_801363A0(ItemEntity* item) {
|
||||
}
|
||||
|
||||
set_message_text_var(itemData->nameMsg, 0);
|
||||
width = get_msg_width(itemMsg, 0) + 30;
|
||||
width = get_msg_width(itemMsg, 0) + WD_VAR3;
|
||||
posX = 160 - width / 2;
|
||||
posY = 76;
|
||||
}
|
||||
#if !VERSION_JP
|
||||
height = PickupHeaderWindowHeight[get_msg_lines(itemMsg) - 1];
|
||||
#endif
|
||||
if (item->state != ITEM_PICKUP_STATE_SHOW_GOT_ITEM) {
|
||||
offsetY = 28;
|
||||
} else {
|
||||
@ -2534,16 +2574,17 @@ void func_801363A0(ItemEntity* item) {
|
||||
&& item->itemID != ITEM_STAR_PIECE)
|
||||
) {
|
||||
set_window_properties(WINDOW_ID_12, posX, posY - 24 + offsetY, width,
|
||||
height, WINDOW_PRIORITY_0, draw_content_pickup_item_header, item, -1);
|
||||
HT_VAR1, WINDOW_PRIORITY_0, draw_content_pickup_item_header, item, -1);
|
||||
} else if (gItemTable[item->itemID].typeFlags & ITEM_TYPE_FLAG_WORLD_USABLE){
|
||||
set_window_properties(WINDOW_ID_12, posX, posY - 24 + offsetY, width,
|
||||
height, WINDOW_PRIORITY_0, draw_content_pickup_item_header, item, -1);
|
||||
HT_VAR1, WINDOW_PRIORITY_0, draw_content_pickup_item_header, item, -1);
|
||||
} else {
|
||||
set_window_properties(WINDOW_ID_12, posX, posY - 24 + offsetY, width,
|
||||
height, WINDOW_PRIORITY_0, draw_content_pickup_item_header, item, -1);
|
||||
HT_VAR1, WINDOW_PRIORITY_0, draw_content_pickup_item_header, item, -1);
|
||||
}
|
||||
if (item->itemID != ITEM_STAR_PIECE && item->itemID != ITEM_COIN) {
|
||||
set_window_properties(WINDOW_ID_19, 20, 186, 280, 32, WINDOW_PRIORITY_0, draw_content_pickup_item_desc, item, -1);
|
||||
posX = X_VAR1;
|
||||
set_window_properties(WINDOW_ID_19, posX, 186, WD_VAR4, 32, WINDOW_PRIORITY_0, draw_content_pickup_item_desc, item, -1);
|
||||
}
|
||||
if (item->state != ITEM_PICKUP_STATE_SHOW_GOT_ITEM) {
|
||||
width = get_msg_width(MSG_Menus_0060, 0) + 24;
|
||||
@ -2553,13 +2594,33 @@ void func_801363A0(ItemEntity* item) {
|
||||
break;
|
||||
case ITEM_PICKUP_STATE_AWAIT_THROW_AWAY:
|
||||
set_message_text_var(itemData->nameMsg, 0);
|
||||
#if VERSION_JP
|
||||
width = get_msg_width(gItemTable[ThrowAwayItemID].nameMsg, 0) + 104;
|
||||
#else
|
||||
width = get_msg_width(MSG_Menus_005F, 0) + 54;
|
||||
#endif
|
||||
posX = 160 - width / 2;
|
||||
set_window_properties(WINDOW_ID_12, 160 - width / 2, 76, width, 40, WINDOW_PRIORITY_0, draw_content_pickup_item_header, item, -1);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
#if VERSION_JP
|
||||
#define X_PICKUP_ITEM_1 12
|
||||
#define X_PICKUP_ITEM_2 36
|
||||
#define X_PICKUP_THREW 36
|
||||
#define Y_PICKUP_ITEM_1 12
|
||||
#define Y_PICKUP_ITEM_2 12
|
||||
#define Y_PICKUP_THREW 12
|
||||
#else
|
||||
#define X_PICKUP_ITEM_1 15
|
||||
#define X_PICKUP_ITEM_2 40
|
||||
#define X_PICKUP_THREW 40
|
||||
#define Y_PICKUP_ITEM_1 offsetY
|
||||
#define Y_PICKUP_ITEM_2 offsetY
|
||||
#define Y_PICKUP_THREW 4
|
||||
#endif
|
||||
|
||||
void draw_content_pickup_item_header(ItemEntity* item, s32 posX, s32 posY) {
|
||||
ItemData* itemData = &gItemTable[item->itemID];
|
||||
s32 itemMsg;
|
||||
@ -2607,7 +2668,9 @@ void draw_content_pickup_item_header(ItemEntity* item, s32 posX, s32 posY) {
|
||||
set_message_text_var(itemData->nameMsg, 0);
|
||||
}
|
||||
|
||||
#if !VERSION_JP
|
||||
offsetY = PickupMessageWindowYOffsets[get_msg_lines(itemMsg) - 1];
|
||||
#endif
|
||||
|
||||
if ((gItemTable[item->itemID].typeFlags & ITEM_TYPE_FLAG_BADGE)
|
||||
|| (gItemTable[item->itemID].typeFlags & ITEM_TYPE_FLAG_KEY)
|
||||
@ -2615,9 +2678,9 @@ void draw_content_pickup_item_header(ItemEntity* item, s32 posX, s32 posY) {
|
||||
|| (gItemTable[item->itemID].typeFlags & ITEM_TYPE_FLAG_GEAR)
|
||||
|| (item->pickupMsgFlags & (ITEM_PICKUP_FLAG_1_COIN | ITEM_PICKUP_FLAG_3_STAR_PIECES))
|
||||
) {
|
||||
draw_msg(itemMsg, posX + 15, posY + offsetY, 255, MSG_PAL_2F, 0);
|
||||
draw_msg(itemMsg, posX + X_PICKUP_ITEM_1, posY + Y_PICKUP_ITEM_1, 255, MSG_PAL_2F, 0);
|
||||
} else {
|
||||
draw_msg(itemMsg, posX + 40, posY + offsetY, 255, MSG_PAL_2F, 0);
|
||||
draw_msg(itemMsg, posX + X_PICKUP_ITEM_2, posY + Y_PICKUP_ITEM_2, 255, MSG_PAL_2F, 0);
|
||||
if (!(item->pickupMsgFlags & (ITEM_PICKUP_FLAG_1_COIN | ITEM_PICKUP_FLAG_3_STAR_PIECES))) {
|
||||
hud_element_set_render_pos(ItemPickupIconID, posX + 20, posY + 20);
|
||||
hud_element_draw_next(ItemPickupIconID);
|
||||
@ -2627,7 +2690,7 @@ void draw_content_pickup_item_header(ItemEntity* item, s32 posX, s32 posY) {
|
||||
case ITEM_PICKUP_STATE_SHOW_THREW_AWAY:
|
||||
case ITEM_PICKUP_STATE_HIDE_THREW_AWAY:
|
||||
set_message_text_var(gItemTable[ThrowAwayItemID].nameMsg, 0);
|
||||
draw_msg(MSG_Menus_005F, posX + 40, posY + 4, 255, MSG_PAL_2F, 0);
|
||||
draw_msg(MSG_Menus_005F, posX + X_PICKUP_THREW, posY + Y_PICKUP_THREW, 255, MSG_PAL_2F, 0);
|
||||
hud_element_set_render_pos(ItemPickupIconID, posX + 20, posY + 20);
|
||||
hud_element_draw_next(ItemPickupIconID);
|
||||
break;
|
||||
|
611
src/msg_data.c
611
src/msg_data.c
@ -4,7 +4,563 @@
|
||||
extern IMG_BIN MsgCharImgTitle[];
|
||||
extern IMG_BIN MsgCharImgSubtitle[];
|
||||
extern IMG_BIN MsgCharImgNormal[];
|
||||
extern IMG_BIN MsgCharImgMenuLatin[];
|
||||
extern IMG_BIN MsgCharImgMenuKana[];
|
||||
extern IMG_BIN MsgCharImgKana[];
|
||||
extern IMG_BIN MsgCharImgLatin[];
|
||||
|
||||
#if VERSION_JP
|
||||
u8 MsgCharWidthKana[] = {
|
||||
[MSG_CHAR_HIRAGANA_A] 11,
|
||||
[MSG_CHAR_HIRAGANA_I] 11,
|
||||
[MSG_CHAR_HIRAGANA_U] 10,
|
||||
[MSG_CHAR_HIRAGANA_E] 10,
|
||||
[MSG_CHAR_HIRAGANA_O] 11,
|
||||
[MSG_CHAR_HIRAGANA_KA] 11,
|
||||
[MSG_CHAR_HIRAGANA_KI] 9,
|
||||
[MSG_CHAR_HIRAGANA_KU] 9,
|
||||
[MSG_CHAR_HIRAGANA_KE] 11,
|
||||
[MSG_CHAR_HIRAGANA_KO] 10,
|
||||
[MSG_CHAR_HIRAGANA_SA] 10,
|
||||
[MSG_CHAR_HIRAGANA_SI] 9,
|
||||
[MSG_CHAR_HIRAGANA_SU] 11,
|
||||
[MSG_CHAR_HIRAGANA_SE] 11,
|
||||
[MSG_CHAR_HIRAGANA_SO] 10,
|
||||
[MSG_CHAR_HIRAGANA_TA] 11,
|
||||
[MSG_CHAR_HIRAGANA_TI] 11,
|
||||
[MSG_CHAR_HIRAGANA_TU] 11,
|
||||
[MSG_CHAR_HIRAGANA_TE] 11,
|
||||
[MSG_CHAR_HIRAGANA_TO] 10,
|
||||
[MSG_CHAR_HIRAGANA_NA] 11,
|
||||
[MSG_CHAR_HIRAGANA_NI] 11,
|
||||
[MSG_CHAR_HIRAGANA_NU] 11,
|
||||
[MSG_CHAR_HIRAGANA_NE] 11,
|
||||
[MSG_CHAR_HIRAGANA_NO] 11,
|
||||
[MSG_CHAR_HIRAGANA_HA] 11,
|
||||
[MSG_CHAR_HIRAGANA_HI] 11,
|
||||
[MSG_CHAR_HIRAGANA_HU] 11,
|
||||
[MSG_CHAR_HIRAGANA_HE] 11,
|
||||
[MSG_CHAR_HIRAGANA_HO] 11,
|
||||
[MSG_CHAR_HIRAGANA_MA] 9,
|
||||
[MSG_CHAR_HIRAGANA_MI] 11,
|
||||
[MSG_CHAR_HIRAGANA_MU] 11,
|
||||
[MSG_CHAR_HIRAGANA_ME] 11,
|
||||
[MSG_CHAR_HIRAGANA_MO] 11,
|
||||
[MSG_CHAR_HIRAGANA_YA] 11,
|
||||
[MSG_CHAR_HIRAGANA_YU] 11,
|
||||
[MSG_CHAR_HIRAGANA_YO] 11,
|
||||
[MSG_CHAR_HIRAGANA_RA] 11,
|
||||
[MSG_CHAR_HIRAGANA_RI] 11,
|
||||
[MSG_CHAR_HIRAGANA_RU] 11,
|
||||
[MSG_CHAR_HIRAGANA_RE] 11,
|
||||
[MSG_CHAR_HIRAGANA_RO] 11,
|
||||
[MSG_CHAR_HIRAGANA_WA] 11,
|
||||
[MSG_CHAR_HIRAGANA_WO] 11,
|
||||
[MSG_CHAR_HIRAGANA_N] 11,
|
||||
[MSG_CHAR_HIRAGANA_VU] 11,
|
||||
[MSG_CHAR_HIRAGANA_GA] 11,
|
||||
[MSG_CHAR_HIRAGANA_GI] 11,
|
||||
[MSG_CHAR_HIRAGANA_GU] 11,
|
||||
[MSG_CHAR_HIRAGANA_GE] 11,
|
||||
[MSG_CHAR_HIRAGANA_GO] 12,
|
||||
[MSG_CHAR_HIRAGANA_ZA] 11,
|
||||
[MSG_CHAR_HIRAGANA_ZI] 10,
|
||||
[MSG_CHAR_HIRAGANA_ZU] 11,
|
||||
[MSG_CHAR_HIRAGANA_ZE] 11,
|
||||
[MSG_CHAR_HIRAGANA_ZO] 11,
|
||||
[MSG_CHAR_HIRAGANA_DA] 11,
|
||||
[MSG_CHAR_HIRAGANA_DI] 11,
|
||||
[MSG_CHAR_HIRAGANA_DU] 11,
|
||||
[MSG_CHAR_HIRAGANA_DE] 11,
|
||||
[MSG_CHAR_HIRAGANA_DO] 11,
|
||||
[MSG_CHAR_HIRAGANA_BA] 12,
|
||||
[MSG_CHAR_HIRAGANA_BI] 11,
|
||||
[MSG_CHAR_HIRAGANA_BU] 11,
|
||||
[MSG_CHAR_HIRAGANA_BE] 11,
|
||||
[MSG_CHAR_HIRAGANA_BO] 11,
|
||||
[MSG_CHAR_HIRAGANA_PA] 12,
|
||||
[MSG_CHAR_HIRAGANA_PI] 11,
|
||||
[MSG_CHAR_HIRAGANA_PU] 11,
|
||||
[MSG_CHAR_HIRAGANA_PE] 11,
|
||||
[MSG_CHAR_HIRAGANA_PO] 11,
|
||||
[MSG_CHAR_HIRAGANA_SMALL_A] 9,
|
||||
[MSG_CHAR_HIRAGANA_SMALL_I] 8,
|
||||
[MSG_CHAR_HIRAGANA_SMALL_U] 8,
|
||||
[MSG_CHAR_HIRAGANA_SMALL_E] 8,
|
||||
[MSG_CHAR_HIRAGANA_SMALL_O] 9,
|
||||
[MSG_CHAR_HIRAGANA_SMALL_TU] 9,
|
||||
[MSG_CHAR_HIRAGANA_SMALL_YA] 9,
|
||||
[MSG_CHAR_HIRAGANA_SMALL_YU] 9,
|
||||
[MSG_CHAR_HIRAGANA_SMALL_YO] 8,
|
||||
[MSG_CHAR_KATAKANA_A] 11,
|
||||
[MSG_CHAR_KATAKANA_I] 10,
|
||||
[MSG_CHAR_KATAKANA_U] 10,
|
||||
[MSG_CHAR_KATAKANA_E] 11,
|
||||
[MSG_CHAR_KATAKANA_O] 11,
|
||||
[MSG_CHAR_KATAKANA_KA] 11,
|
||||
[MSG_CHAR_KATAKANA_KI] 11,
|
||||
[MSG_CHAR_KATAKANA_KU] 10,
|
||||
[MSG_CHAR_KATAKANA_KE] 11,
|
||||
[MSG_CHAR_KATAKANA_KO] 11,
|
||||
[MSG_CHAR_KATAKANA_SA] 11,
|
||||
[MSG_CHAR_KATAKANA_SI] 11,
|
||||
[MSG_CHAR_KATAKANA_SU] 11,
|
||||
[MSG_CHAR_KATAKANA_SE] 11,
|
||||
[MSG_CHAR_KATAKANA_SO] 11,
|
||||
[MSG_CHAR_KATAKANA_TA] 11,
|
||||
[MSG_CHAR_KATAKANA_TI] 11,
|
||||
[MSG_CHAR_KATAKANA_TU] 11,
|
||||
[MSG_CHAR_KATAKANA_TE] 11,
|
||||
[MSG_CHAR_KATAKANA_TO] 8,
|
||||
[MSG_CHAR_KATAKANA_NA] 11,
|
||||
[MSG_CHAR_KATAKANA_NI] 9,
|
||||
[MSG_CHAR_KATAKANA_NU] 11,
|
||||
[MSG_CHAR_KATAKANA_NE] 10,
|
||||
[MSG_CHAR_KATAKANA_NO] 11,
|
||||
[MSG_CHAR_KATAKANA_HA] 11,
|
||||
[MSG_CHAR_KATAKANA_HI] 11,
|
||||
[MSG_CHAR_KATAKANA_HU] 11,
|
||||
[MSG_CHAR_KATAKANA_HE] 11,
|
||||
[MSG_CHAR_KATAKANA_HO] 11,
|
||||
[MSG_CHAR_KATAKANA_MA] 11,
|
||||
[MSG_CHAR_KATAKANA_MI] 10,
|
||||
[MSG_CHAR_KATAKANA_MU] 11,
|
||||
[MSG_CHAR_KATAKANA_ME] 10,
|
||||
[MSG_CHAR_KATAKANA_MO] 11,
|
||||
[MSG_CHAR_KATAKANA_YA] 11,
|
||||
[MSG_CHAR_KATAKANA_YU] 11,
|
||||
[MSG_CHAR_KATAKANA_YO] 10,
|
||||
[MSG_CHAR_KATAKANA_RA] 11,
|
||||
[MSG_CHAR_KATAKANA_RI] 10,
|
||||
[MSG_CHAR_KATAKANA_RU] 11,
|
||||
[MSG_CHAR_KATAKANA_RE] 10,
|
||||
[MSG_CHAR_KATAKANA_RO] 10,
|
||||
[MSG_CHAR_KATAKANA_WA] 10,
|
||||
[MSG_CHAR_KATAKANA_WO] 10,
|
||||
[MSG_CHAR_KATAKANA_N] 11,
|
||||
[MSG_CHAR_KATAKANA_VU] 11,
|
||||
[MSG_CHAR_KATAKANA_GA] 11,
|
||||
[MSG_CHAR_KATAKANA_GI] 11,
|
||||
[MSG_CHAR_KATAKANA_GU] 11,
|
||||
[MSG_CHAR_KATAKANA_GE] 11,
|
||||
[MSG_CHAR_KATAKANA_GO] 11,
|
||||
[MSG_CHAR_KATAKANA_ZA] 11,
|
||||
[MSG_CHAR_KATAKANA_ZI] 11,
|
||||
[MSG_CHAR_KATAKANA_ZU] 11,
|
||||
[MSG_CHAR_KATAKANA_ZE] 11,
|
||||
[MSG_CHAR_KATAKANA_ZO] 11,
|
||||
[MSG_CHAR_KATAKANA_DA] 11,
|
||||
[MSG_CHAR_KATAKANA_DI] 11,
|
||||
[MSG_CHAR_KATAKANA_DU] 9,
|
||||
[MSG_CHAR_KATAKANA_DE] 11,
|
||||
[MSG_CHAR_KATAKANA_DO] 11,
|
||||
[MSG_CHAR_KATAKANA_BA] 11,
|
||||
[MSG_CHAR_KATAKANA_BI] 11,
|
||||
[MSG_CHAR_KATAKANA_BU] 11,
|
||||
[MSG_CHAR_KATAKANA_BE] 11,
|
||||
[MSG_CHAR_KATAKANA_BO] 11,
|
||||
[MSG_CHAR_KATAKANA_PA] 11,
|
||||
[MSG_CHAR_KATAKANA_PI] 11,
|
||||
[MSG_CHAR_KATAKANA_PU] 11,
|
||||
[MSG_CHAR_KATAKANA_PE] 11,
|
||||
[MSG_CHAR_KATAKANA_PO] 11,
|
||||
[MSG_CHAR_KATAKANA_SMALL_A] 9,
|
||||
[MSG_CHAR_KATAKANA_SMALL_I] 8,
|
||||
[MSG_CHAR_KATAKANA_SMALL_U] 8,
|
||||
[MSG_CHAR_KATAKANA_SMALL_E] 9,
|
||||
[MSG_CHAR_KATAKANA_SMALL_O] 9,
|
||||
[MSG_CHAR_KATAKANA_SMALL_TU] 9,
|
||||
[MSG_CHAR_KATAKANA_SMALL_YA] 9,
|
||||
[MSG_CHAR_KATAKANA_SMALL_YU] 9,
|
||||
[MSG_CHAR_KATAKANA_SMALL_YO] 8,
|
||||
[MSG_CHAR_PROLONGED_SOUND] 11,
|
||||
[MSG_CHAR_TILDE] 11,
|
||||
[MSG_CHAR_LONGDASH_0] 12,
|
||||
[MSG_CHAR_LONGDASH_1] 12,
|
||||
[MSG_CHAR_LONGDASH_2] 11,
|
||||
[MSG_CHAR_DIGIT_0] 11,
|
||||
[MSG_CHAR_DIGIT_1] 8,
|
||||
[MSG_CHAR_DIGIT_2] 10,
|
||||
[MSG_CHAR_DIGIT_3] 11,
|
||||
[MSG_CHAR_DIGIT_4] 11,
|
||||
[MSG_CHAR_DIGIT_5] 10,
|
||||
[MSG_CHAR_DIGIT_6] 11,
|
||||
[MSG_CHAR_DIGIT_7] 11,
|
||||
[MSG_CHAR_DIGIT_8] 11,
|
||||
[MSG_CHAR_DIGIT_9] 11,
|
||||
[MSG_CHAR_UP] 11,
|
||||
[MSG_CHAR_DOWN] 11,
|
||||
[MSG_CHAR_LEFT] 12,
|
||||
[MSG_CHAR_RIGHT] 12,
|
||||
[MSG_CHAR_EXCLAMATION] 11,
|
||||
[MSG_CHAR_QUESTION] 10,
|
||||
[MSG_CHAR_PLUS] 9,
|
||||
[MSG_CHAR_MINUS] 9,
|
||||
[MSG_CHAR_FORWARDSLASH] 11,
|
||||
[MSG_CHAR_PERIOD] 8,
|
||||
[MSG_CHAR_AND] 10,
|
||||
[MSG_CHAR_HASH] 11,
|
||||
[MSG_CHAR_HEART] 11,
|
||||
[MSG_CHAR_STAR] 11,
|
||||
[MSG_CHAR_LPAREN] 9,
|
||||
[MSG_CHAR_RPAREN] 9,
|
||||
[MSG_CHAR_TLBRACKET] 11,
|
||||
[MSG_CHAR_BRBRACKET] 11,
|
||||
[MSG_CHAR_MIDDLE_DOT] 8,
|
||||
[MSG_CHAR_HIRAGANA_SMALL_N] 9,
|
||||
[MSG_CHAR_KATAKANA_SMALL_N] 9,
|
||||
[MSG_CHAR_KANJI_C6] 11,
|
||||
};
|
||||
|
||||
u8 MsgCharWidthLatin[] = {
|
||||
[MSG_CHAR_UPPER_A] 11,
|
||||
[MSG_CHAR_UPPER_B] 10,
|
||||
[MSG_CHAR_UPPER_C] 10,
|
||||
[MSG_CHAR_UPPER_D] 10,
|
||||
[MSG_CHAR_UPPER_E] 11,
|
||||
[MSG_CHAR_UPPER_F] 10,
|
||||
[MSG_CHAR_UPPER_G] 11,
|
||||
[MSG_CHAR_UPPER_H] 10,
|
||||
[MSG_CHAR_UPPER_I] 8,
|
||||
[MSG_CHAR_UPPER_J] 9,
|
||||
[MSG_CHAR_UPPER_K] 10,
|
||||
[MSG_CHAR_UPPER_L] 11,
|
||||
[MSG_CHAR_UPPER_M] 11,
|
||||
[MSG_CHAR_UPPER_N] 11,
|
||||
[MSG_CHAR_UPPER_O] 11,
|
||||
[MSG_CHAR_UPPER_P] 11,
|
||||
[MSG_CHAR_UPPER_Q] 11,
|
||||
[MSG_CHAR_UPPER_R] 10,
|
||||
[MSG_CHAR_UPPER_S] 11,
|
||||
[MSG_CHAR_UPPER_T] 11,
|
||||
[MSG_CHAR_UPPER_U] 11,
|
||||
[MSG_CHAR_UPPER_V] 11,
|
||||
[MSG_CHAR_UPPER_W] 11,
|
||||
[MSG_CHAR_UPPER_X] 11,
|
||||
[MSG_CHAR_UPPER_Y] 11,
|
||||
[MSG_CHAR_UPPER_Z] 10,
|
||||
[MSG_CHAR_LOWER_Z] 9,
|
||||
};
|
||||
|
||||
u8 MsgCharWidthKanji[] = {
|
||||
[MSG_CHAR_KANJI_00 ... MSG_CHAR_KANJI_77] = 11,
|
||||
[MSG_CHAR_LOWER_X] 7,
|
||||
};
|
||||
|
||||
u8 MsgCharWidthButtons[] = {
|
||||
[MSG_CHAR_BUTTON_A] 13,
|
||||
[MSG_CHAR_BUTTON_B] 13,
|
||||
[MSG_CHAR_BUTTON_START] 16,
|
||||
[MSG_CHAR_BUTTON_C_UP] 13,
|
||||
[MSG_CHAR_BUTTON_C_DOWN] 13,
|
||||
[MSG_CHAR_BUTTON_C_LEFT] 13,
|
||||
[MSG_CHAR_BUTTON_C_RIGHT] 13,
|
||||
[MSG_CHAR_BUTTON_Z] 12,
|
||||
[MSG_CHAR_BUTTON_L] 14,
|
||||
[MSG_CHAR_BUTTON_R] 14,
|
||||
};
|
||||
|
||||
u8 MsgCharWidthMenuKana[] = {
|
||||
[MSG_CHAR_HIRAGANA_A] 9,
|
||||
[MSG_CHAR_HIRAGANA_I] 9,
|
||||
[MSG_CHAR_HIRAGANA_U] 9,
|
||||
[MSG_CHAR_HIRAGANA_E] 9,
|
||||
[MSG_CHAR_HIRAGANA_O] 9,
|
||||
[MSG_CHAR_HIRAGANA_KA] 9,
|
||||
[MSG_CHAR_HIRAGANA_KI] 9,
|
||||
[MSG_CHAR_HIRAGANA_KU] 9,
|
||||
[MSG_CHAR_HIRAGANA_KE] 9,
|
||||
[MSG_CHAR_HIRAGANA_KO] 9,
|
||||
[MSG_CHAR_HIRAGANA_SA] 9,
|
||||
[MSG_CHAR_HIRAGANA_SI] 9,
|
||||
[MSG_CHAR_HIRAGANA_SU] 9,
|
||||
[MSG_CHAR_HIRAGANA_SE] 9,
|
||||
[MSG_CHAR_HIRAGANA_SO] 9,
|
||||
[MSG_CHAR_HIRAGANA_TA] 9,
|
||||
[MSG_CHAR_HIRAGANA_TI] 9,
|
||||
[MSG_CHAR_HIRAGANA_TU] 9,
|
||||
[MSG_CHAR_HIRAGANA_TE] 9,
|
||||
[MSG_CHAR_HIRAGANA_TO] 9,
|
||||
[MSG_CHAR_HIRAGANA_NA] 9,
|
||||
[MSG_CHAR_HIRAGANA_NI] 9,
|
||||
[MSG_CHAR_HIRAGANA_NU] 9,
|
||||
[MSG_CHAR_HIRAGANA_NE] 9,
|
||||
[MSG_CHAR_HIRAGANA_NO] 9,
|
||||
[MSG_CHAR_HIRAGANA_HA] 9,
|
||||
[MSG_CHAR_HIRAGANA_HI] 9,
|
||||
[MSG_CHAR_HIRAGANA_HU] 9,
|
||||
[MSG_CHAR_HIRAGANA_HE] 9,
|
||||
[MSG_CHAR_HIRAGANA_HO] 9,
|
||||
[MSG_CHAR_HIRAGANA_MA] 9,
|
||||
[MSG_CHAR_HIRAGANA_MI] 9,
|
||||
[MSG_CHAR_HIRAGANA_MU] 9,
|
||||
[MSG_CHAR_HIRAGANA_ME] 9,
|
||||
[MSG_CHAR_HIRAGANA_MO] 9,
|
||||
[MSG_CHAR_HIRAGANA_YA] 9,
|
||||
[MSG_CHAR_HIRAGANA_YU] 9,
|
||||
[MSG_CHAR_HIRAGANA_YO] 9,
|
||||
[MSG_CHAR_HIRAGANA_RA] 9,
|
||||
[MSG_CHAR_HIRAGANA_RI] 9,
|
||||
[MSG_CHAR_HIRAGANA_RU] 9,
|
||||
[MSG_CHAR_HIRAGANA_RE] 9,
|
||||
[MSG_CHAR_HIRAGANA_RO] 9,
|
||||
[MSG_CHAR_HIRAGANA_WA] 9,
|
||||
[MSG_CHAR_HIRAGANA_WO] 9,
|
||||
[MSG_CHAR_HIRAGANA_N] 9,
|
||||
[MSG_CHAR_HIRAGANA_VU] 9,
|
||||
[MSG_CHAR_HIRAGANA_GA] 9,
|
||||
[MSG_CHAR_HIRAGANA_GI] 9,
|
||||
[MSG_CHAR_HIRAGANA_GU] 9,
|
||||
[MSG_CHAR_HIRAGANA_GE] 9,
|
||||
[MSG_CHAR_HIRAGANA_GO] 9,
|
||||
[MSG_CHAR_HIRAGANA_ZA] 9,
|
||||
[MSG_CHAR_HIRAGANA_ZI] 9,
|
||||
[MSG_CHAR_HIRAGANA_ZU] 9,
|
||||
[MSG_CHAR_HIRAGANA_ZE] 9,
|
||||
[MSG_CHAR_HIRAGANA_ZO] 9,
|
||||
[MSG_CHAR_HIRAGANA_DA] 9,
|
||||
[MSG_CHAR_HIRAGANA_DI] 9,
|
||||
[MSG_CHAR_HIRAGANA_DU] 9,
|
||||
[MSG_CHAR_HIRAGANA_DE] 9,
|
||||
[MSG_CHAR_HIRAGANA_DO] 9,
|
||||
[MSG_CHAR_HIRAGANA_BA] 9,
|
||||
[MSG_CHAR_HIRAGANA_BI] 9,
|
||||
[MSG_CHAR_HIRAGANA_BU] 9,
|
||||
[MSG_CHAR_HIRAGANA_BE] 9,
|
||||
[MSG_CHAR_HIRAGANA_BO] 9,
|
||||
[MSG_CHAR_HIRAGANA_PA] 9,
|
||||
[MSG_CHAR_HIRAGANA_PI] 9,
|
||||
[MSG_CHAR_HIRAGANA_PU] 9,
|
||||
[MSG_CHAR_HIRAGANA_PE] 9,
|
||||
[MSG_CHAR_HIRAGANA_PO] 9,
|
||||
[MSG_CHAR_HIRAGANA_SMALL_A] 9,
|
||||
[MSG_CHAR_HIRAGANA_SMALL_I] 8,
|
||||
[MSG_CHAR_HIRAGANA_SMALL_U] 8,
|
||||
[MSG_CHAR_HIRAGANA_SMALL_E] 8,
|
||||
[MSG_CHAR_HIRAGANA_SMALL_O] 8,
|
||||
[MSG_CHAR_HIRAGANA_SMALL_TU] 8,
|
||||
[MSG_CHAR_HIRAGANA_SMALL_YA] 8,
|
||||
[MSG_CHAR_HIRAGANA_SMALL_YU] 8,
|
||||
[MSG_CHAR_HIRAGANA_SMALL_YO] 8,
|
||||
[MSG_CHAR_KATAKANA_A] 9,
|
||||
[MSG_CHAR_KATAKANA_I] 8,
|
||||
[MSG_CHAR_KATAKANA_U] 9,
|
||||
[MSG_CHAR_KATAKANA_E] 9,
|
||||
[MSG_CHAR_KATAKANA_O] 9,
|
||||
[MSG_CHAR_KATAKANA_KA] 9,
|
||||
[MSG_CHAR_KATAKANA_KI] 9,
|
||||
[MSG_CHAR_KATAKANA_KU] 9,
|
||||
[MSG_CHAR_KATAKANA_KE] 9,
|
||||
[MSG_CHAR_KATAKANA_KO] 9,
|
||||
[MSG_CHAR_KATAKANA_SA] 9,
|
||||
[MSG_CHAR_KATAKANA_SI] 9,
|
||||
[MSG_CHAR_KATAKANA_SU] 9,
|
||||
[MSG_CHAR_KATAKANA_SE] 9,
|
||||
[MSG_CHAR_KATAKANA_SO] 9,
|
||||
[MSG_CHAR_KATAKANA_TA] 9,
|
||||
[MSG_CHAR_KATAKANA_TI] 9,
|
||||
[MSG_CHAR_KATAKANA_TU] 9,
|
||||
[MSG_CHAR_KATAKANA_TE] 9,
|
||||
[MSG_CHAR_KATAKANA_TO] 9,
|
||||
[MSG_CHAR_KATAKANA_NA] 9,
|
||||
[MSG_CHAR_KATAKANA_NI] 9,
|
||||
[MSG_CHAR_KATAKANA_NU] 9,
|
||||
[MSG_CHAR_KATAKANA_NE] 9,
|
||||
[MSG_CHAR_KATAKANA_NO] 9,
|
||||
[MSG_CHAR_KATAKANA_HA] 9,
|
||||
[MSG_CHAR_KATAKANA_HI] 9,
|
||||
[MSG_CHAR_KATAKANA_HU] 9,
|
||||
[MSG_CHAR_KATAKANA_HE] 9,
|
||||
[MSG_CHAR_KATAKANA_HO] 9,
|
||||
[MSG_CHAR_KATAKANA_MA] 9,
|
||||
[MSG_CHAR_KATAKANA_MI] 9,
|
||||
[MSG_CHAR_KATAKANA_MU] 9,
|
||||
[MSG_CHAR_KATAKANA_ME] 9,
|
||||
[MSG_CHAR_KATAKANA_MO] 9,
|
||||
[MSG_CHAR_KATAKANA_YA] 9,
|
||||
[MSG_CHAR_KATAKANA_YU] 9,
|
||||
[MSG_CHAR_KATAKANA_YO] 9,
|
||||
[MSG_CHAR_KATAKANA_RA] 9,
|
||||
[MSG_CHAR_KATAKANA_RI] 9,
|
||||
[MSG_CHAR_KATAKANA_RU] 9,
|
||||
[MSG_CHAR_KATAKANA_RE] 9,
|
||||
[MSG_CHAR_KATAKANA_RO] 9,
|
||||
[MSG_CHAR_KATAKANA_WA] 9,
|
||||
[MSG_CHAR_KATAKANA_WO] 9,
|
||||
[MSG_CHAR_KATAKANA_N] 9,
|
||||
[MSG_CHAR_KATAKANA_VU] 9,
|
||||
[MSG_CHAR_KATAKANA_GA] 9,
|
||||
[MSG_CHAR_KATAKANA_GI] 9,
|
||||
[MSG_CHAR_KATAKANA_GU] 9,
|
||||
[MSG_CHAR_KATAKANA_GE] 9,
|
||||
[MSG_CHAR_KATAKANA_GO] 9,
|
||||
[MSG_CHAR_KATAKANA_ZA] 9,
|
||||
[MSG_CHAR_KATAKANA_ZI] 9,
|
||||
[MSG_CHAR_KATAKANA_ZU] 9,
|
||||
[MSG_CHAR_KATAKANA_ZE] 9,
|
||||
[MSG_CHAR_KATAKANA_ZO] 9,
|
||||
[MSG_CHAR_KATAKANA_DA] 9,
|
||||
[MSG_CHAR_KATAKANA_DI] 9,
|
||||
[MSG_CHAR_KATAKANA_DU] 9,
|
||||
[MSG_CHAR_KATAKANA_DE] 9,
|
||||
[MSG_CHAR_KATAKANA_DO] 9,
|
||||
[MSG_CHAR_KATAKANA_BA] 9,
|
||||
[MSG_CHAR_KATAKANA_BI] 9,
|
||||
[MSG_CHAR_KATAKANA_BU] 9,
|
||||
[MSG_CHAR_KATAKANA_BE] 9,
|
||||
[MSG_CHAR_KATAKANA_BO] 9,
|
||||
[MSG_CHAR_KATAKANA_PA] 9,
|
||||
[MSG_CHAR_KATAKANA_PI] 9,
|
||||
[MSG_CHAR_KATAKANA_PU] 9,
|
||||
[MSG_CHAR_KATAKANA_PE] 9,
|
||||
[MSG_CHAR_KATAKANA_PO] 9,
|
||||
[MSG_CHAR_KATAKANA_SMALL_A] 8,
|
||||
[MSG_CHAR_KATAKANA_SMALL_I] 8,
|
||||
[MSG_CHAR_KATAKANA_SMALL_U] 8,
|
||||
[MSG_CHAR_KATAKANA_SMALL_E] 8,
|
||||
[MSG_CHAR_KATAKANA_SMALL_O] 8,
|
||||
[MSG_CHAR_KATAKANA_SMALL_TU] 8,
|
||||
[MSG_CHAR_KATAKANA_SMALL_YA] 8,
|
||||
[MSG_CHAR_KATAKANA_SMALL_YU] 8,
|
||||
[MSG_CHAR_KATAKANA_SMALL_YO] 8,
|
||||
[MSG_CHAR_PROLONGED_SOUND] 9,
|
||||
[MSG_CHAR_TILDE] 9,
|
||||
[MSG_CHAR_LONGDASH_0] 9,
|
||||
[MSG_CHAR_LONGDASH_1] 9,
|
||||
[MSG_CHAR_LONGDASH_2] 11,
|
||||
[MSG_CHAR_DIGIT_0] 9,
|
||||
[MSG_CHAR_DIGIT_1] 8,
|
||||
[MSG_CHAR_DIGIT_2] 9,
|
||||
[MSG_CHAR_DIGIT_3] 9,
|
||||
[MSG_CHAR_DIGIT_4] 9,
|
||||
[MSG_CHAR_DIGIT_5] 9,
|
||||
[MSG_CHAR_DIGIT_6] 9,
|
||||
[MSG_CHAR_DIGIT_7] 9,
|
||||
[MSG_CHAR_DIGIT_8] 9,
|
||||
[MSG_CHAR_DIGIT_9] 9,
|
||||
[MSG_CHAR_UP] 9,
|
||||
[MSG_CHAR_DOWN] 9,
|
||||
[MSG_CHAR_LEFT] 9,
|
||||
[MSG_CHAR_RIGHT] 9,
|
||||
[MSG_CHAR_EXCLAMATION] 9,
|
||||
[MSG_CHAR_QUESTION] 9,
|
||||
[MSG_CHAR_PLUS] 9,
|
||||
[MSG_CHAR_MINUS] 9,
|
||||
[MSG_CHAR_FORWARDSLASH] 10,
|
||||
[MSG_CHAR_PERIOD] 7,
|
||||
[MSG_CHAR_AND] 9,
|
||||
[MSG_CHAR_HASH] 9,
|
||||
[MSG_CHAR_HEART] 9,
|
||||
[MSG_CHAR_STAR] 9,
|
||||
[MSG_CHAR_LPAREN] 9,
|
||||
[MSG_CHAR_RPAREN] 9,
|
||||
[MSG_CHAR_TLBRACKET] 9,
|
||||
[MSG_CHAR_BRBRACKET] 9,
|
||||
[MSG_CHAR_MIDDLE_DOT] 7,
|
||||
[MSG_CHAR_HIRAGANA_SMALL_N] 8,
|
||||
[MSG_CHAR_KATAKANA_SMALL_N] 8,
|
||||
[MSG_CHAR_KANJI_C6] 11,
|
||||
[MSG_CHAR_KANJI_C7] 11,
|
||||
};
|
||||
|
||||
u8 MsgCharWidthMenuLatin[] = {
|
||||
[MSG_CHAR_UPPER_A] 9,
|
||||
[MSG_CHAR_UPPER_B] 9,
|
||||
[MSG_CHAR_UPPER_C] 9,
|
||||
[MSG_CHAR_UPPER_D] 9,
|
||||
[MSG_CHAR_UPPER_E] 9,
|
||||
[MSG_CHAR_UPPER_F] 9,
|
||||
[MSG_CHAR_UPPER_G] 9,
|
||||
[MSG_CHAR_UPPER_H] 9,
|
||||
[MSG_CHAR_UPPER_I] 8,
|
||||
[MSG_CHAR_UPPER_J] 9,
|
||||
[MSG_CHAR_UPPER_K] 9,
|
||||
[MSG_CHAR_UPPER_L] 9,
|
||||
[MSG_CHAR_UPPER_M] 9,
|
||||
[MSG_CHAR_UPPER_N] 9,
|
||||
[MSG_CHAR_UPPER_O] 9,
|
||||
[MSG_CHAR_UPPER_P] 9,
|
||||
[MSG_CHAR_UPPER_Q] 9,
|
||||
[MSG_CHAR_UPPER_R] 9,
|
||||
[MSG_CHAR_UPPER_S] 9,
|
||||
[MSG_CHAR_UPPER_T] 9,
|
||||
[MSG_CHAR_UPPER_U] 9,
|
||||
[MSG_CHAR_UPPER_V] 9,
|
||||
[MSG_CHAR_UPPER_W] 9,
|
||||
[MSG_CHAR_UPPER_X] 9,
|
||||
[MSG_CHAR_UPPER_Y] 9,
|
||||
[MSG_CHAR_UPPER_Z] 9,
|
||||
[MSG_CHAR_LOWER_Z] 9,
|
||||
};
|
||||
|
||||
MessageCharData MsgCharDataNormal[] = {
|
||||
{
|
||||
.raster = MsgCharImgKana,
|
||||
.charWidthTable = MsgCharWidthKana,
|
||||
.monospaceWidth = 11,
|
||||
.baseHeightOffset = 0,
|
||||
},
|
||||
{
|
||||
.raster = MsgCharImgLatin,
|
||||
.charWidthTable = MsgCharWidthLatin,
|
||||
.monospaceWidth = 11,
|
||||
.baseHeightOffset = 2,
|
||||
},
|
||||
{
|
||||
.raster = MsgCharImgTitle,
|
||||
.charWidthTable = MsgCharWidthKanji,
|
||||
.monospaceWidth = 12,
|
||||
.baseHeightOffset = 0,
|
||||
},
|
||||
{
|
||||
.raster = MsgCharImgSubtitle,
|
||||
.charWidthTable = MsgCharWidthButtons,
|
||||
.monospaceWidth = 14,
|
||||
.baseHeightOffset = 0,
|
||||
},
|
||||
{}
|
||||
};
|
||||
|
||||
MessageCharset MsgCharsetNormal = {
|
||||
.texSize = { 16, 14 },
|
||||
.unk_02 = 14,
|
||||
.newLineY = 16,
|
||||
.charRasterSize = 112,
|
||||
.rasters = MsgCharDataNormal
|
||||
};
|
||||
|
||||
MessageCharData MsgCharDataMenu[] = {
|
||||
{
|
||||
.raster = MsgCharImgMenuKana,
|
||||
.charWidthTable = MsgCharWidthMenuKana,
|
||||
.monospaceWidth = 9,
|
||||
.baseHeightOffset = 0,
|
||||
},
|
||||
{
|
||||
.raster = MsgCharImgMenuLatin,
|
||||
.charWidthTable = MsgCharWidthMenuLatin,
|
||||
.monospaceWidth = 9,
|
||||
.baseHeightOffset = 0,
|
||||
},
|
||||
{}
|
||||
};
|
||||
|
||||
MessageCharset MsgCharsetMenu = {
|
||||
.texSize = { 12, 12 },
|
||||
.unk_02 = 10,
|
||||
.newLineY = 12,
|
||||
.charRasterSize = 72,
|
||||
.rasters = MsgCharDataMenu
|
||||
};
|
||||
|
||||
MessageCharset MsgCharsetMenu2 = {
|
||||
.texSize = { 12, 12 },
|
||||
.unk_02 = 10,
|
||||
.newLineY = 16,
|
||||
.charRasterSize = 72,
|
||||
.rasters = MsgCharDataMenu
|
||||
};
|
||||
#else
|
||||
u8 MsgCharWidthNormal[] = {
|
||||
[MSG_CHAR_NOTE] 11,
|
||||
[MSG_CHAR_EXCLAMTION] 8,
|
||||
@ -249,6 +805,7 @@ MessageCharset MsgCharsetMenu = {
|
||||
.charRasterSize = 128,
|
||||
.rasters = MsgCharDataMenu
|
||||
};
|
||||
#endif
|
||||
|
||||
u8 MsgCharWidthTitle[] = {
|
||||
8, 8, 8, 9, 8, 8, 8, 8,
|
||||
@ -307,38 +864,44 @@ MessageCharset MsgCharsetSubtitle = {
|
||||
MessageCharset* MsgCharsets[] = {
|
||||
[MSG_FONT_NORMAL] &MsgCharsetNormal,
|
||||
[MSG_FONT_MENU] &MsgCharsetMenu,
|
||||
#if VERSION_JP
|
||||
[MSG_FONT_2] &MsgCharsetMenu2,
|
||||
#else
|
||||
[MSG_FONT_2] &MsgCharsetMenu,
|
||||
#endif
|
||||
[MSG_FONT_TITLE] &MsgCharsetTitle,
|
||||
[MSG_FONT_SUBTITLE] &MsgCharsetSubtitle,
|
||||
NULL
|
||||
};
|
||||
|
||||
u8 *MsgLetterRasterOffsets[] = {
|
||||
charset_letter_content_1_OFFSET,
|
||||
charset_letter_content_2_OFFSET,
|
||||
charset_letter_content_3_OFFSET,
|
||||
charset_letter_content_4_OFFSET,
|
||||
charset_letter_content_5_OFFSET,
|
||||
charset_letter_content_6_OFFSET,
|
||||
charset_letter_content_7_OFFSET,
|
||||
charset_letter_content_8_OFFSET,
|
||||
charset_letter_content_9_OFFSET,
|
||||
charset_letter_content_10_OFFSET,
|
||||
charset_letter_content_11_OFFSET,
|
||||
charset_letter_content_12_OFFSET,
|
||||
s32 MsgLetterRasterOffsets[] = {
|
||||
(s32) charset_letter_content_1_OFFSET,
|
||||
(s32) charset_letter_content_2_OFFSET,
|
||||
(s32) charset_letter_content_3_OFFSET,
|
||||
(s32) charset_letter_content_4_OFFSET,
|
||||
(s32) charset_letter_content_5_OFFSET,
|
||||
(s32) charset_letter_content_6_OFFSET,
|
||||
(s32) charset_letter_content_7_OFFSET,
|
||||
(s32) charset_letter_content_8_OFFSET,
|
||||
(s32) charset_letter_content_9_OFFSET,
|
||||
(s32) charset_letter_content_10_OFFSET,
|
||||
(s32) charset_letter_content_11_OFFSET,
|
||||
(s32) charset_letter_content_12_OFFSET,
|
||||
};
|
||||
|
||||
// TODO: palette offsets
|
||||
s32 MsgLetterPaletteOffsets[] = {
|
||||
#if VERSION_IQUE
|
||||
0x00058890, 0x0005A490, 0x0005C090, 0x0005DC90,
|
||||
0x0005F890, 0x00061490, 0x00063090, 0x00064C90,
|
||||
0x00066890, 0x00068490, 0x0006A090, 0x0006BC90,
|
||||
#else
|
||||
0x0000EB78, 0x00010778, 0x00012378, 0x00013F78,
|
||||
0x00015B78, 0x00017778, 0x00019378, 0x0001AF78,
|
||||
0x0001CB78, 0x0001E778, 0x00020378, 0x00021F78,
|
||||
#endif
|
||||
(s32) charset_letter_content_1_pal_OFFSET + 6,
|
||||
(s32) charset_letter_content_2_pal_OFFSET + 6,
|
||||
(s32) charset_letter_content_3_pal_OFFSET + 6,
|
||||
(s32) charset_letter_content_4_pal_OFFSET + 6,
|
||||
(s32) charset_letter_content_5_pal_OFFSET + 6,
|
||||
(s32) charset_letter_content_6_pal_OFFSET + 6,
|
||||
(s32) charset_letter_content_7_pal_OFFSET + 6,
|
||||
(s32) charset_letter_content_8_pal_OFFSET + 6,
|
||||
(s32) charset_letter_content_9_pal_OFFSET + 6,
|
||||
(s32) charset_letter_content_10_pal_OFFSET + 6,
|
||||
(s32) charset_letter_content_11_pal_OFFSET + 6,
|
||||
(s32) charset_letter_content_12_pal_OFFSET + 6,
|
||||
};
|
||||
|
||||
MsgVoice MsgVoices[] = {
|
||||
@ -359,6 +922,7 @@ MsgVoice MsgVoices[] = {
|
||||
},
|
||||
};
|
||||
|
||||
#if !VERSION_JP
|
||||
s16 MsgStyleVerticalLineOffsets[] = {
|
||||
[MSG_STYLE_NONE] 0,
|
||||
[MSG_STYLE_RIGHT] -4,
|
||||
@ -377,3 +941,4 @@ s16 MsgStyleVerticalLineOffsets[] = {
|
||||
[MSG_STYLE_EPILOGUE] -4,
|
||||
[MSG_STYLE_F] 0,
|
||||
};
|
||||
#endif
|
||||
|
2225
src/msg_draw.c
Normal file
2225
src/msg_draw.c
Normal file
File diff suppressed because it is too large
Load Diff
@ -76,6 +76,17 @@ INCLUDE_PAL("ui/msg/rewind_arrow.pal", ui_msg_rewind_arrow_pal);
|
||||
INCLUDE_IMG("ui/msg/star.png", ui_msg_star_png);
|
||||
INCLUDE_IMG("ui/msg/star_silhouette.png", ui_msg_star_silhouette_png);
|
||||
|
||||
#if VERSION_JP
|
||||
BSS IMG_BIN MsgCharImgMenuLatin[0x798] ALIGNED(16);
|
||||
BSS IMG_BIN MsgCharImgMenuKana[0x37F8] ALIGNED(16);
|
||||
// in JP button icons uses this, which has smaller size to store the credits subtitle character set. What's going on here?
|
||||
BSS IMG_BIN MsgCharImgSubtitle[0x460] ALIGNED(16);
|
||||
BSS IMG_BIN MsgCharImgKana[0x5710] ALIGNED(16);
|
||||
BSS PAL_BIN D_802F4560[80][8];
|
||||
BSS IMG_BIN MsgCharImgLatin[0xBD0] ALIGNED(16);
|
||||
// in JP kanji chars also uses this
|
||||
BSS IMG_BIN MsgCharImgTitle[0x34F0] ALIGNED(16);
|
||||
#else
|
||||
BSS IMG_BIN MsgCharImgTitle[0xF60];
|
||||
BSS IMG_BIN MsgCharImgNormal[0x5100];
|
||||
BSS IMG_BIN MsgCharImgSubtitle[0xB88];
|
||||
@ -84,5 +95,6 @@ BSS PAL_BIN D_802F4560[80][8]
|
||||
ALIGNED(16)
|
||||
#endif
|
||||
;
|
||||
#endif
|
||||
|
||||
MATCHING_BSS(0x6DA0);
|
||||
|
@ -41,12 +41,6 @@ u32 __kmc_pt_mode;
|
||||
void* __printfunc = NULL;
|
||||
#endif
|
||||
|
||||
#if !VERSION_IQUE
|
||||
s32 D_80095904[3] = { 0 }; // padding?
|
||||
s32 D_80095910[10] = { 0 };
|
||||
s32 D_80095938[2] = { 0 };
|
||||
#endif
|
||||
|
||||
void __createSpeedParam(void) {
|
||||
__Dom1SpeedParam.type = DEVICE_TYPE_INIT;
|
||||
__Dom1SpeedParam.latency = IO_READ(PI_BSD_DOM1_LAT_REG);
|
||||
|
@ -1,6 +1,12 @@
|
||||
# This file describes what to name messages when splitting.
|
||||
|
||||
- [0x00, 0x0000, NONE]
|
||||
- [0x20, 0x0000, Menus_Tutorial_SaveBlock]
|
||||
- [0x20, 0x0001, Menus_Tutorial_HeartBlock]
|
||||
- [0x20, 0x0002, Menus_Tutorial_GotItem]
|
||||
- [0x20, 0x0003, Menus_Tutorial_GotStarPiece]
|
||||
- [0x20, 0x0004, Menus_SavePrompt]
|
||||
- [0x20, 0x0005, Menus_SaveComplete]
|
||||
- [0x20, 0x000E, Menus_Party_Goombario]
|
||||
- [0x20, 0x000F, Menus_Party_Kooper]
|
||||
- [0x20, 0x0010, Menus_Party_Bombette]
|
||||
@ -34,15 +40,55 @@
|
||||
- [0x20, 0x002E, Menus_StarPowerDesc_UpAndAway]
|
||||
- [0x20, 0x002F, Menus_StarPowerDesc_StarBeam]
|
||||
- [0x20, 0x0030, Menus_StarPowerDesc_PeachBeam]
|
||||
- [0x20, 0x004D, Menus_PartyMember]
|
||||
- [0x20, 0x004F, Menus_JP_004F] # duplicate of Menus_Items
|
||||
- [0x20, 0x0050, Menus_KeyItems]
|
||||
- [0x20, 0x0051, Menus_DoubleDip]
|
||||
- [0x20, 0x0052, Menus_TripleDip]
|
||||
- [0x20, 0x0069, Menus_Jump]
|
||||
- [0x20, 0x006A, Menus_Hammer]
|
||||
- [0x20, 0x006B, Menus_Items]
|
||||
- [0x20, 0x006C, Menus_0058]
|
||||
- [0x20, 0x006D, Menus_0059]
|
||||
- [0x20, 0x006E, Menus_005A]
|
||||
- [0x20, 0x006F, Menus_005B]
|
||||
- [0x20, 0x0070, Menus_005C]
|
||||
- [0x20, 0x0071, Menus_005D]
|
||||
- [0x20, 0x0072, Menus_005E]
|
||||
- [0x20, 0x0073, Menus_005F]
|
||||
- [0x20, 0x0074, Menus_0060]
|
||||
- [0x20, 0x0075, Menus_0061]
|
||||
- [0x20, 0x0076, Menus_0062]
|
||||
- [0x20, 0x0077, Menus_0063]
|
||||
- [0x20, 0x0078, Menus_0064]
|
||||
- [0x20, 0x0079, Menus_0065]
|
||||
- [0x20, 0x007A, Menus_0066]
|
||||
- [0x20, 0x007B, Menus_0067]
|
||||
- [0x20, 0x007C, Menus_0068]
|
||||
- [0x20, 0x007D, Menus_0069]
|
||||
- [0x20, 0x007E, Menus_0070]
|
||||
- [0x20, 0x007F, Menus_006A]
|
||||
- [0x20, 0x0080, Menus_006B]
|
||||
- [0x20, 0x0081, Menus_JP_0081] # duplicate of Menus_006D
|
||||
- [0x20, 0x0082, Menus_006C]
|
||||
- [0x20, 0x0083, Menus_006D]
|
||||
- [0x20, 0x0084, Menus_006E]
|
||||
- [0x20, 0x0085, Menus_006F]
|
||||
- [0x20, 0x0089, Menus_Merlee_IncreaseCoins]
|
||||
- [0x20, 0x008A, Menus_Merlee_Exhausted]
|
||||
- [0x20, 0x00BB, Menus_Action_UseItem]
|
||||
- [0x20, 0x00C4, Menus_PlayerFirstStrike]
|
||||
- [0x20, 0x00C5, Menus_PartnerFirstStrike]
|
||||
- [0x20, 0x00C6, Menus_EnemyFirstStrike]
|
||||
- [0x20, 0x00E7, Menus_00CD]
|
||||
- [0x20, 0x00E8, Menus_00CE]
|
||||
- [0x20, 0x00EA, Menus_00D0]
|
||||
- [0x20, 0x00F0, Menus_00D6]
|
||||
- [0x20, 0x00F1, Menus_00D7]
|
||||
- [0x21, 0x000A, Choice_000A]
|
||||
- [0x21, 0x001D, Choice_001D]
|
||||
- [0x22, 0x0001, MenuTip_0032]
|
||||
- [0x22, 0x0014, MenuTip_0033]
|
||||
- [0x28, 0x0000, ItemShortDesc_FireFlower]
|
||||
- [0x28, 0x0001, ItemShortDesc_SnowmanDoll]
|
||||
- [0x28, 0x0002, ItemShortDesc_ThunderRage]
|
||||
|
@ -36,6 +36,27 @@ def get_palette_idx(charset_name, char_id):
|
||||
pal_id = 0x13
|
||||
elif char_id == 0xA1:
|
||||
pal_id = 0x12
|
||||
elif charset_name == "buttons":
|
||||
if char_id == 0x00:
|
||||
pal_id = 0x10
|
||||
elif char_id == 0x01:
|
||||
pal_id = 0x11
|
||||
elif char_id == 0x02:
|
||||
pal_id = 0x12
|
||||
elif char_id == 0x03:
|
||||
pal_id = 0x13
|
||||
elif char_id == 0x04:
|
||||
pal_id = 0x13
|
||||
elif char_id == 0x05:
|
||||
pal_id = 0x13
|
||||
elif char_id == 0x06:
|
||||
pal_id = 0x13
|
||||
elif char_id == 0x07:
|
||||
pal_id = 0x14
|
||||
elif char_id == 0x08:
|
||||
pal_id = 0x14
|
||||
elif char_id == 0x09:
|
||||
pal_id = 0x14
|
||||
return pal_id
|
||||
|
||||
|
||||
@ -43,14 +64,18 @@ class N64SegPm_charset(N64Segment):
|
||||
def scan(self, rom_bytes):
|
||||
data = rom_bytes[self.rom_start : self.rom_end]
|
||||
|
||||
# start, type, name, WIDTH, HEIGHT, NUM_RASTERS
|
||||
# start, type, name, WIDTH, HEIGHT, NUM_RASTERS, palette
|
||||
self.width = self.yaml[3]
|
||||
self.height = self.yaml[4]
|
||||
if len(self.yaml) > 6:
|
||||
self.palette = self.yaml[6]
|
||||
else:
|
||||
self.palette = self.name
|
||||
|
||||
# pm_charset_palettes sibling
|
||||
self.sibling = next(
|
||||
filter(
|
||||
lambda s: s.type == "pm_charset_palettes" and s.name == self.name,
|
||||
lambda s: s.type == "pm_charset_palettes" and s.name == self.palette,
|
||||
self.parent.subsegments,
|
||||
)
|
||||
)
|
||||
|
@ -20,13 +20,16 @@ class N64SegPm_charset_palettes(N64Segment):
|
||||
def scan(self, rom_bytes):
|
||||
data = rom_bytes[self.rom_start : self.rom_end]
|
||||
|
||||
# pm_charset sibling
|
||||
self.sibling = next(
|
||||
filter(
|
||||
lambda s: s.type == "pm_charset" and s.name == self.name,
|
||||
self.parent.subsegments,
|
||||
)
|
||||
)
|
||||
# pm_charset siblings
|
||||
self.siblings = []
|
||||
for s in self.parent.subsegments:
|
||||
if s.type == "pm_charset":
|
||||
if len(s.yaml) > 6:
|
||||
charset_pal = s.yaml[6]
|
||||
else:
|
||||
charset_pal = s.name
|
||||
if self.name == charset_pal:
|
||||
self.siblings.append(s)
|
||||
|
||||
self.palettes = []
|
||||
|
||||
@ -39,9 +42,9 @@ class N64SegPm_charset_palettes(N64Segment):
|
||||
fs_dir.mkdir(parents=True, exist_ok=True)
|
||||
|
||||
for i, palette in enumerate(self.palettes):
|
||||
raster = self.sibling.rasters[0]
|
||||
raster = self.siblings[0].rasters[0]
|
||||
|
||||
w = png.Writer(self.sibling.width, self.sibling.height, palette=palette)
|
||||
w = png.Writer(self.siblings[0].width, self.siblings[0].height, palette=palette)
|
||||
with open(fs_dir / f"{i:02X}.png", "wb") as f:
|
||||
w.write_array(f, raster)
|
||||
|
||||
|
@ -7,7 +7,7 @@
|
||||
|
||||
.section .rodata
|
||||
|
||||
glabel __osIntOffTable
|
||||
__osIntOffTable:
|
||||
/* 73CB0 800988B0 */ .byte 0x00
|
||||
/* 73CB1 800988B1 */ .byte 0x14
|
||||
/* 73CB2 800988B2 */ .byte 0x18
|
||||
@ -42,7 +42,7 @@ glabel __osIntOffTable
|
||||
/* 73CCF 800988CF */ .byte 0x10
|
||||
.size __osIntOffTable, . - __osIntOffTable
|
||||
|
||||
glabel __osIntTable
|
||||
__osIntTable:
|
||||
/* 73CD0 800988D0 80066894 */ .word .LIQUE_80066894
|
||||
/* 73CD4 800988D4 80066858 */ .word .LIQUE_80066858
|
||||
/* 73CD8 800988D8 80066834 */ .word .LIQUE_80066834
|
||||
@ -59,7 +59,7 @@ glabel __osIntTable
|
||||
|
||||
.section .data
|
||||
|
||||
glabel __osHwIntTable
|
||||
__osHwIntTable:
|
||||
/* 6F8F0 800944F0 */ .word 0x00000000
|
||||
/* 6F8F4 800944F4 */ .word 0x00000000
|
||||
/* 6F8F8 800944F8 */ .word 0x00000000
|
||||
@ -72,7 +72,7 @@ glabel __osHwIntTable
|
||||
/* 6F914 80094514 */ .word 0x00000000
|
||||
.size __osHwIntTable, . - __osHwIntTable
|
||||
|
||||
glabel __osPiIntTable
|
||||
__osPiIntTable:
|
||||
/* 6F918 80094518 */ .word 0x00000000
|
||||
/* 6F91C 8009451C */ .word 0x00000000
|
||||
.size __osPiIntTable, . - __osPiIntTable
|
||||
|
@ -843,6 +843,7 @@ segments:
|
||||
- [auto, c, entity_model]
|
||||
- [auto, c, worker]
|
||||
- [auto, c, msg]
|
||||
- [auto, c, msg_draw]
|
||||
- [auto, c, draw_img_util]
|
||||
- [auto, c, item_entity]
|
||||
- [auto, c, screen_overlays]
|
||||
@ -863,6 +864,7 @@ segments:
|
||||
- [auto, .data, animator]
|
||||
- [auto, .data, entity_model]
|
||||
- [auto, .data, msg]
|
||||
- [auto, .data, msg_draw]
|
||||
- [auto, .data, draw_img_util]
|
||||
- [auto, .data, item_entity]
|
||||
- start: 0xE1D60
|
||||
|
682
ver/jp/asm/bss3.s
Normal file
682
ver/jp/asm/bss3.s
Normal file
@ -0,0 +1,682 @@
|
||||
.include "macro.inc"
|
||||
|
||||
# assembler directives
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
.set gp=64 # allow use of 64-bit general purpose registers
|
||||
|
||||
#ifndef SHIFT
|
||||
|
||||
.section .bss
|
||||
|
||||
dlabel gAuxSpriteShadingProfile
|
||||
.space 4
|
||||
|
||||
dlabel gHudElementsNumber
|
||||
.space 4
|
||||
|
||||
dlabel gCurrentCustomModelGfxBuildersPtr
|
||||
.space 4
|
||||
|
||||
dlabel D_801512BC
|
||||
.space 4
|
||||
|
||||
dlabel entity_numEntities
|
||||
.space 4
|
||||
|
||||
dlabel gEntityHeapBase
|
||||
.space 4
|
||||
|
||||
dlabel gHudElementCacheTableRaster
|
||||
.space 4
|
||||
|
||||
dlabel gCurrentModels
|
||||
.space 4
|
||||
|
||||
dlabel gHudElementCacheTablePalette
|
||||
.space 4
|
||||
|
||||
dlabel gAnimCount
|
||||
.space 4
|
||||
|
||||
dlabel gMsgBGScrollAmtX
|
||||
.space 4
|
||||
|
||||
dlabel D_801512DC
|
||||
.space 4
|
||||
|
||||
dlabel gCurrentTransformGroups
|
||||
.space 4
|
||||
|
||||
dlabel gMsgGlobalWaveCounter
|
||||
.space 4
|
||||
|
||||
dlabel gCurrentCustomModelGfxPtr
|
||||
.space 4
|
||||
|
||||
dlabel gLastCreatedEntityIndex
|
||||
.space 4
|
||||
|
||||
dlabel gBackgroundTintModePtr
|
||||
.space 4
|
||||
|
||||
dlabel gMsgVarImages
|
||||
.space 4
|
||||
|
||||
dlabel ItemEntitiesCreated
|
||||
.space 4
|
||||
|
||||
dlabel gCurrentModelTreeRoot
|
||||
.space 4
|
||||
|
||||
dlabel gEntityHeapBottom
|
||||
.space 4
|
||||
|
||||
dlabel D_80151304
|
||||
.space 4
|
||||
|
||||
dlabel gCurrentRoomDoorSounds
|
||||
.space 4
|
||||
|
||||
dlabel gMsgBGScrollAmtY
|
||||
.space 2
|
||||
|
||||
dlabel D_8015130E
|
||||
.space 2
|
||||
|
||||
dlabel gEntityHideMode
|
||||
.space 4
|
||||
|
||||
dlabel gHudElementCacheBuffer
|
||||
.space 4
|
||||
|
||||
dlabel gEntityModelCount
|
||||
.space 4
|
||||
|
||||
dlabel D_8015131C
|
||||
.space 4
|
||||
|
||||
dlabel D_80151320
|
||||
.space 4
|
||||
|
||||
dlabel entity_numShadows
|
||||
.space 4
|
||||
|
||||
dlabel gSpriteShadingProfile
|
||||
.space 4
|
||||
|
||||
dlabel isAreaSpecificEntityDataLoaded
|
||||
.space 4
|
||||
|
||||
dlabel entity_updateCounter
|
||||
.space 4
|
||||
|
||||
dlabel gTriggerCount
|
||||
.space 4
|
||||
|
||||
dlabel D_80151338
|
||||
.space 4
|
||||
|
||||
dlabel gHudElementCacheSize
|
||||
.space 4
|
||||
|
||||
dlabel gCurrentDoorSounds
|
||||
.space 4
|
||||
|
||||
dlabel D_80151344
|
||||
.space 4
|
||||
|
||||
dlabel D_80151348
|
||||
.space 0x00000018
|
||||
|
||||
dlabel gWorldEntityList
|
||||
.space 0x00000078
|
||||
|
||||
dlabel gBattleEntityList
|
||||
.space 0x00000078
|
||||
|
||||
dlabel gCurrentEntityListPtr
|
||||
.space 4
|
||||
|
||||
dlabel D_80151474
|
||||
.space 4
|
||||
|
||||
dlabel gWorldShadowList
|
||||
.space 0x000000f0
|
||||
|
||||
dlabel gBattleShadowList
|
||||
.space 0x000000f0
|
||||
|
||||
dlabel gCurrentShadowListPtr
|
||||
.space 4
|
||||
|
||||
dlabel wEntityDataLoadedSize
|
||||
.space 4
|
||||
|
||||
dlabel bEntityDataLoadedSize
|
||||
.space 4
|
||||
|
||||
dlabel D_80151664
|
||||
.space 4
|
||||
|
||||
dlabel wEntityBlueprint
|
||||
.space 0x00000078
|
||||
|
||||
.space 8
|
||||
|
||||
dlabel bEntityBlueprint
|
||||
.space 0x00000014
|
||||
|
||||
dlabel D_801516FC
|
||||
.space 4
|
||||
|
||||
dlabel gMainGameMode
|
||||
.space 0x00000040
|
||||
|
||||
dlabel gCurrentTextureHeader
|
||||
.space 0x00000030
|
||||
|
||||
dlabel wModelList
|
||||
.space 0x00000400
|
||||
|
||||
dlabel bModelList
|
||||
.space 0x00000400
|
||||
|
||||
dlabel wTransformGroups
|
||||
.space 0x00000010
|
||||
|
||||
dlabel bTransformGroups
|
||||
.space 0x00000010
|
||||
|
||||
dlabel wCustomModelGfx
|
||||
.space 0x00000080
|
||||
|
||||
dlabel bCustomModelGfx
|
||||
.space 0x00000080
|
||||
|
||||
dlabel wCustomModelGfxBuilders
|
||||
.space 0x00000080
|
||||
|
||||
dlabel bCustomModelGfxBuilders
|
||||
.space 0x00000080
|
||||
|
||||
dlabel wModelLocalVtxBuffers
|
||||
.space 0x00000040
|
||||
|
||||
dlabel bModelLocalVtxBuffers
|
||||
.space 0x00000040
|
||||
|
||||
dlabel gCurrentModelLocalVtxBuffers
|
||||
.space 4
|
||||
|
||||
dlabel wModelTreeRoot
|
||||
.space 4
|
||||
|
||||
dlabel bModelTreeRoot
|
||||
.space 4
|
||||
|
||||
dlabel D_8015221C
|
||||
.space 4
|
||||
|
||||
dlabel wModelTreeNodeInfo
|
||||
.space 0x00000800
|
||||
|
||||
dlabel bModelTreeNodeInfo
|
||||
.space 0x00000800
|
||||
|
||||
dlabel wBackgroundTintMode
|
||||
.space 1
|
||||
|
||||
dlabel bBackgroundTintMode
|
||||
.space 1
|
||||
|
||||
dlabel D_80153222
|
||||
.space 1
|
||||
|
||||
dlabel D_80153223
|
||||
.space 1
|
||||
|
||||
dlabel TreeIterPos
|
||||
.space 4
|
||||
|
||||
dlabel wFogSettings
|
||||
.space 0x00000020
|
||||
|
||||
dlabel bFogSettings
|
||||
.space 0x0000001c
|
||||
|
||||
dlabel gFogSettings
|
||||
.space 4
|
||||
|
||||
dlabel texPannerMainU
|
||||
.space 0x00000040
|
||||
|
||||
dlabel texPannerMainV
|
||||
.space 0x00000040
|
||||
|
||||
dlabel texPannerAuxU
|
||||
.space 0x00000040
|
||||
|
||||
dlabel texPannerAuxV
|
||||
.space 0x00000040
|
||||
|
||||
dlabel TextureHeapPos
|
||||
.space 4
|
||||
|
||||
dlabel mtg_IterIdx
|
||||
.space 2
|
||||
|
||||
dlabel mtg_SearchModelID
|
||||
.space 2
|
||||
|
||||
dlabel mtg_FoundModelNode
|
||||
.space 4
|
||||
|
||||
dlabel mtg_MinChild
|
||||
.space 2
|
||||
|
||||
dlabel mtg_MaxChild
|
||||
.space 2
|
||||
|
||||
dlabel D_80153378
|
||||
.space 8
|
||||
|
||||
dlabel DepthCopyBuffer
|
||||
.space 0x00000020
|
||||
|
||||
dlabel RenderTaskLists
|
||||
.space 0x0000000c
|
||||
|
||||
dlabel RenderTaskListIdx
|
||||
.space 4
|
||||
|
||||
dlabel RenderTaskCount
|
||||
.space 0x00000010
|
||||
|
||||
dlabel D_801533C0
|
||||
.space 0x00000300
|
||||
|
||||
dlabel D_801536C0
|
||||
.space 0x00000300
|
||||
|
||||
dlabel D_801539C0
|
||||
.space 0x00000040
|
||||
|
||||
dlabel D_80153A00
|
||||
.space 0x00000040
|
||||
|
||||
dlabel gCurrentAnimMeshListPtr
|
||||
.space 4
|
||||
|
||||
dlabel gAnimModelFogEnabled
|
||||
.space 4
|
||||
|
||||
dlabel gAnimModelFogR
|
||||
.space 4
|
||||
|
||||
dlabel gAnimModelFogG
|
||||
.space 4
|
||||
|
||||
dlabel gAnimModelFogB
|
||||
.space 4
|
||||
|
||||
dlabel gAnimModelFogA
|
||||
.space 4
|
||||
|
||||
dlabel gAnimModelFogStart
|
||||
.space 4
|
||||
|
||||
dlabel gAnimModelFogEnd
|
||||
.space 4
|
||||
|
||||
dlabel gAnimVtxSegment
|
||||
.space 4
|
||||
|
||||
dlabel D_80153A64
|
||||
.space 4
|
||||
|
||||
dlabel gAnimRotMtx
|
||||
.space 0x00000040
|
||||
|
||||
dlabel gAnimScaleMtx
|
||||
.space 0x00000040
|
||||
|
||||
dlabel gAnimTranslateMtx
|
||||
.space 0x00000040
|
||||
|
||||
dlabel gAnimRotScaleMtx
|
||||
.space 0x00000040
|
||||
|
||||
dlabel gAnimTreeRoot
|
||||
.space 8
|
||||
|
||||
dlabel gWorldEntityModelList
|
||||
.space 0x00000400
|
||||
|
||||
dlabel gBattleEntityModelList
|
||||
.space 0x00000400
|
||||
|
||||
dlabel gCurrentEntityModelList
|
||||
.space 4
|
||||
|
||||
dlabel D_80154374
|
||||
.space 4
|
||||
|
||||
dlabel entity_fog_enabled
|
||||
.space 4
|
||||
|
||||
dlabel entity_fog_red
|
||||
.space 4
|
||||
|
||||
dlabel entity_fog_green
|
||||
.space 4
|
||||
|
||||
dlabel entity_fog_blue
|
||||
.space 4
|
||||
|
||||
dlabel entity_fog_alpha
|
||||
.space 4
|
||||
|
||||
dlabel entity_fog_dist_min
|
||||
.space 4
|
||||
|
||||
dlabel entity_fog_dist_max
|
||||
.space 4
|
||||
|
||||
dlabel D_80154394
|
||||
.space 0x0000000c
|
||||
|
||||
dlabel gWorldWorkerList
|
||||
.space 0x00000040
|
||||
|
||||
dlabel gBattleWorkerList
|
||||
.space 0x00000040
|
||||
|
||||
dlabel gCurrentWorkerListPtr
|
||||
.space 4
|
||||
|
||||
dlabel D_80154424
|
||||
.space 0x0000000c
|
||||
|
||||
dlabel gMessageBuffers
|
||||
.space 0x00000800
|
||||
|
||||
dlabel gMessagePrinters
|
||||
.space 0x00000F40
|
||||
|
||||
dlabel gMessageMsgVars
|
||||
.space 0x00000060
|
||||
|
||||
dlabel D_80155C98
|
||||
.space 8
|
||||
|
||||
dlabel gMessageWindowProjMatrix
|
||||
.space 0x00000080
|
||||
|
||||
dlabel D_JP_8015AC98_pad
|
||||
.space 8
|
||||
|
||||
dlabel D_80155D20
|
||||
.space 4
|
||||
|
||||
dlabel D_8015DD24
|
||||
.space 0x00000050
|
||||
|
||||
dlabel msg_drawState
|
||||
.space 4
|
||||
|
||||
dlabel D_8015DD78
|
||||
.space 8
|
||||
|
||||
dlabel UnusedItemPhysicsScriptID
|
||||
.space 4
|
||||
|
||||
dlabel ItemEntityAlternatingSpawn
|
||||
.space 4
|
||||
|
||||
dlabel ItemEntityRenderGroup
|
||||
.space 4
|
||||
|
||||
dlabel CoinSparkleCenterX
|
||||
.space 2
|
||||
|
||||
dlabel CoinSparkleCenterY
|
||||
.space 2
|
||||
|
||||
dlabel CoinSparkleCenterZ
|
||||
.space 2
|
||||
|
||||
dlabel pad_ItemEntity
|
||||
.space 0x000000E
|
||||
|
||||
dlabel WorldItemEntities
|
||||
.space 0x00000400
|
||||
|
||||
dlabel BattleItemEntities
|
||||
.space 0x00000400
|
||||
|
||||
dlabel gCurrentItemEntities
|
||||
.space 4
|
||||
|
||||
dlabel isPickingUpItem
|
||||
.space 2
|
||||
|
||||
dlabel ItemSpawnWithinPlayerPickupDelay
|
||||
.space 2
|
||||
|
||||
dlabel ItemPickupMenu
|
||||
.space 0x00000330
|
||||
|
||||
dlabel ItemPickupIconID
|
||||
.space 4
|
||||
|
||||
dlabel ItemPickupStateDelay
|
||||
.space 4
|
||||
|
||||
dlabel ThrowAwayMenuIdx
|
||||
.space 4
|
||||
|
||||
dlabel ThrowAwayItemID
|
||||
.space 4
|
||||
|
||||
dlabel ItemPickupGotOutline
|
||||
.space 4
|
||||
|
||||
dlabel GotItemTutorialPrinter
|
||||
.space 4
|
||||
|
||||
dlabel GotItemTutorialClosed
|
||||
.space 4
|
||||
|
||||
dlabel D_801568FC
|
||||
.space 0xC
|
||||
|
||||
dlabel screen_overlay_frontType
|
||||
.space 4
|
||||
|
||||
dlabel screen_overlay_frontZoom
|
||||
.space 4
|
||||
|
||||
dlabel screen_overlay_backType
|
||||
.space 4
|
||||
|
||||
dlabel screen_overlay_backZoom
|
||||
.space 4
|
||||
|
||||
dlabel D_80156910
|
||||
.space 0x00000010
|
||||
|
||||
dlabel ImgFXCurrentTexture
|
||||
.space 0x00000028
|
||||
|
||||
dlabel ImgFXVtxBuffers
|
||||
.space 8
|
||||
|
||||
dlabel imgfx_vtxBuf
|
||||
.space 4
|
||||
|
||||
dlabel ImgFXInstances
|
||||
.space 4
|
||||
|
||||
dlabel D_80156958
|
||||
.space 8
|
||||
|
||||
dlabel D_80156960
|
||||
.space 8
|
||||
|
||||
dlabel D_80156968
|
||||
.space 8
|
||||
|
||||
dlabel D_80156970
|
||||
.space 0x00000010
|
||||
|
||||
dlabel ImgFXAnimHeaders
|
||||
.space 0x000005a0
|
||||
|
||||
dlabel ImgFXDataCache
|
||||
.space 0x00000040
|
||||
|
||||
dlabel gHudElementsWorld
|
||||
.space 0x00000500
|
||||
|
||||
dlabel gHudElementsBattle
|
||||
.space 0x00000500
|
||||
|
||||
dlabel gHudElements
|
||||
.space 4
|
||||
|
||||
dlabel gHudElementCacheBufferWorld
|
||||
.space 4
|
||||
|
||||
dlabel gHudElementCacheSizeWorld
|
||||
.space 4
|
||||
|
||||
dlabel D_8015796C
|
||||
.space 4
|
||||
|
||||
dlabel gHudElementCacheTableRasterWorld
|
||||
.space 0x00000600
|
||||
|
||||
dlabel gHudElementCacheTablePaletteWorld
|
||||
.space 0x00000600
|
||||
|
||||
dlabel gHudElementCacheBufferBattle
|
||||
.space 4
|
||||
|
||||
dlabel gHudElementCacheSizeBattle
|
||||
.space 4
|
||||
|
||||
dlabel D_80158578
|
||||
.space 8
|
||||
|
||||
dlabel gHudElementCacheTableRasterBattle
|
||||
.space 0x00000600
|
||||
|
||||
dlabel gHudElementCacheTablePaletteBattle
|
||||
.space 0x00000600
|
||||
|
||||
dlabel D_80159180
|
||||
.space 0x00000010
|
||||
|
||||
dlabel wTriggerList
|
||||
.space 0x00000100
|
||||
|
||||
dlabel bTriggerList
|
||||
.space 0x00000100
|
||||
|
||||
dlabel gCurrentTriggerListPtr
|
||||
.space 4
|
||||
|
||||
dlabel D_80159394
|
||||
.space 0x0000000c
|
||||
|
||||
dlabel gBackgroundPalette
|
||||
.space 0x00000200
|
||||
|
||||
dlabel gBackroundLastScrollValue
|
||||
.space 0x00000020
|
||||
|
||||
dlabel wSpriteShadingProfile
|
||||
.space 0x000000b0
|
||||
|
||||
dlabel bSpriteShadingProfile
|
||||
.space 0x000000b0
|
||||
|
||||
dlabel wSpriteShadingProfileAux
|
||||
.space 0x000000b0
|
||||
|
||||
dlabel bSpriteShadingProfileAux
|
||||
.space 0x000000b0
|
||||
|
||||
dlabel SpriteShadingPalette
|
||||
.space 0x00000020
|
||||
|
||||
dlabel wEnvSounds
|
||||
.space 0x00000118
|
||||
|
||||
dlabel bEnvSounds
|
||||
.space 0x00000118
|
||||
|
||||
dlabel gCurrentEnvSounds
|
||||
.space 4
|
||||
|
||||
dlabel SfxReverbMode
|
||||
.space 4
|
||||
|
||||
dlabel D_80159AD8
|
||||
.space 8
|
||||
|
||||
dlabel MusicDefaultVolume
|
||||
.space 2
|
||||
|
||||
dlabel MusicTargetVolume
|
||||
.space 2
|
||||
|
||||
dlabel MusicMaxVolume
|
||||
.space 2
|
||||
|
||||
dlabel MusicCurrentVolume
|
||||
.space 2
|
||||
|
||||
dlabel D_80159AE8
|
||||
.space 8
|
||||
|
||||
dlabel gMusicSettings
|
||||
.space 0x00000060
|
||||
|
||||
dlabel D_80159B50
|
||||
.space 0x00000200
|
||||
|
||||
dlabel gWindows
|
||||
.space 0x00000800
|
||||
|
||||
dlabel gCollisionStatus
|
||||
.space 0x00000028
|
||||
|
||||
dlabel gCurrentHiddenPanels
|
||||
.space 0x10
|
||||
|
||||
.space 8
|
||||
|
||||
dlabel TextureHandles
|
||||
.space 0x00002200
|
||||
|
||||
dlabel ScreenOverlays
|
||||
.space 0x00000030
|
||||
|
||||
dlabel AmbientSoundData
|
||||
.space 0x00000010
|
||||
|
||||
dlabel CreateEntityVarArgBuffer
|
||||
.space 0x00000010
|
||||
|
||||
dlabel D_8015C7E0
|
||||
.space 0x20
|
||||
|
||||
dlabel D_8015C800
|
||||
.space 0x2880
|
||||
|
||||
dlabel D_80164000
|
||||
.space 0x32C60
|
||||
|
||||
#endif
|
@ -1,54 +0,0 @@
|
||||
.include "macro.inc"
|
||||
|
||||
.section .rodata
|
||||
|
||||
/* Generated by spimdisasm 1.11.1 */
|
||||
|
||||
glabel D_JP_80099D60
|
||||
/* 75160 80099D60 */ .byte 0x00
|
||||
/* 75161 80099D61 */ .byte 0x14
|
||||
/* 75162 80099D62 */ .byte 0x18
|
||||
/* 75163 80099D63 */ .byte 0x18
|
||||
/* 75164 80099D64 */ .byte 0x1C
|
||||
/* 75165 80099D65 */ .byte 0x1C
|
||||
/* 75166 80099D66 */ .byte 0x1C
|
||||
/* 75167 80099D67 */ .byte 0x1C
|
||||
/* 75168 80099D68 */ .byte 0x20
|
||||
/* 75169 80099D69 */ .byte 0x20
|
||||
/* 7516A 80099D6A */ .byte 0x20
|
||||
/* 7516B 80099D6B */ .byte 0x20
|
||||
/* 7516C 80099D6C */ .byte 0x20
|
||||
/* 7516D 80099D6D */ .byte 0x20
|
||||
/* 7516E 80099D6E */ .byte 0x20
|
||||
/* 7516F 80099D6F */ .byte 0x20
|
||||
/* 75170 80099D70 */ .byte 0x00
|
||||
/* 75171 80099D71 */ .byte 0x04
|
||||
/* 75172 80099D72 */ .byte 0x08
|
||||
/* 75173 80099D73 */ .byte 0x08
|
||||
/* 75174 80099D74 */ .byte 0x0C
|
||||
/* 75175 80099D75 */ .byte 0x0C
|
||||
/* 75176 80099D76 */ .byte 0x0C
|
||||
/* 75177 80099D77 */ .byte 0x0C
|
||||
/* 75178 80099D78 */ .byte 0x10
|
||||
/* 75179 80099D79 */ .byte 0x10
|
||||
/* 7517A 80099D7A */ .byte 0x10
|
||||
/* 7517B 80099D7B */ .byte 0x10
|
||||
/* 7517C 80099D7C */ .byte 0x10
|
||||
/* 7517D 80099D7D */ .byte 0x10
|
||||
/* 7517E 80099D7E */ .byte 0x10
|
||||
/* 7517F 80099D7F */ .byte 0x10
|
||||
|
||||
.align 3
|
||||
glabel jtbl_JP_80099D80
|
||||
/* 75180 80099D80 8006AEE0 */ .word .LJP_8006AEE0
|
||||
/* 75184 80099D84 8006AEA4 */ .word .LJP_8006AEA4
|
||||
/* 75188 80099D88 8006AE80 */ .word .LJP_8006AE80
|
||||
/* 7518C 80099D8C 8006ACA8 */ .word .LJP_8006ACA8
|
||||
/* 75190 80099D90 8006AC60 */ .word .LJP_8006AC60
|
||||
/* 75194 80099D94 8006AE1C */ .word .LJP_8006AE1C
|
||||
/* 75198 80099D98 8006AC24 */ .word .LJP_8006AC24
|
||||
/* 7519C 80099D9C 8006AC30 */ .word .LJP_8006AC30
|
||||
/* 751A0 80099DA0 8006AC3C */ .word .LJP_8006AC3C
|
||||
/* 751A4 80099DA4 00000000 */ .word 0x00000000
|
||||
/* 751A8 80099DA8 00000000 */ .word 0x00000000
|
||||
/* 751AC 80099DAC 00000000 */ .word 0x00000000
|
@ -1,71 +0,0 @@
|
||||
.include "macro.inc"
|
||||
|
||||
.section .rodata
|
||||
|
||||
/* Generated by spimdisasm 1.11.1 */
|
||||
|
||||
glabel D_80099AA0
|
||||
/* 74E80 80099A80 */ .short 0x0555
|
||||
/* 74E82 80099A82 */ .short 0x0556
|
||||
/* 74E84 80099A84 */ .short 0x0559
|
||||
/* 74E86 80099A86 */ .short 0x055A
|
||||
/* 74E88 80099A88 */ .short 0x0565
|
||||
/* 74E8A 80099A8A */ .short 0x0566
|
||||
/* 74E8C 80099A8C */ .short 0x0569
|
||||
/* 74E8E 80099A8E */ .short 0x056A
|
||||
/* 74E90 80099A90 */ .short 0x0595
|
||||
/* 74E92 80099A92 */ .short 0x0596
|
||||
/* 74E94 80099A94 */ .short 0x0599
|
||||
/* 74E96 80099A96 */ .short 0x059A
|
||||
/* 74E98 80099A98 */ .short 0x05A5
|
||||
/* 74E9A 80099A9A */ .short 0x05A6
|
||||
/* 74E9C 80099A9C */ .short 0x05A9
|
||||
/* 74E9E 80099A9E */ .short 0x05AA
|
||||
/* 74EA0 80099AA0 */ .short 0x0655
|
||||
/* 74EA2 80099AA2 */ .short 0x0656
|
||||
/* 74EA4 80099AA4 */ .short 0x0659
|
||||
/* 74EA6 80099AA6 */ .short 0x065A
|
||||
/* 74EA8 80099AA8 */ .short 0x0665
|
||||
/* 74EAA 80099AAA */ .short 0x0666
|
||||
/* 74EAC 80099AAC */ .short 0x0669
|
||||
/* 74EAE 80099AAE */ .short 0x066A
|
||||
/* 74EB0 80099AB0 */ .short 0x0695
|
||||
/* 74EB2 80099AB2 */ .short 0x0696
|
||||
/* 74EB4 80099AB4 */ .short 0x0699
|
||||
/* 74EB6 80099AB6 */ .short 0x069A
|
||||
/* 74EB8 80099AB8 */ .short 0x06A5
|
||||
/* 74EBA 80099ABA */ .short 0x06A6
|
||||
/* 74EBC 80099ABC */ .short 0x06A9
|
||||
/* 74EBE 80099ABE */ .short 0x06AA
|
||||
/* 74EC0 80099AC0 */ .short 0x0955
|
||||
/* 74EC2 80099AC2 */ .short 0x0956
|
||||
/* 74EC4 80099AC4 */ .short 0x0959
|
||||
/* 74EC6 80099AC6 */ .short 0x095A
|
||||
/* 74EC8 80099AC8 */ .short 0x0965
|
||||
/* 74ECA 80099ACA */ .short 0x0966
|
||||
/* 74ECC 80099ACC */ .short 0x0969
|
||||
/* 74ECE 80099ACE */ .short 0x096A
|
||||
/* 74ED0 80099AD0 */ .short 0x0995
|
||||
/* 74ED2 80099AD2 */ .short 0x0996
|
||||
/* 74ED4 80099AD4 */ .short 0x0999
|
||||
/* 74ED6 80099AD6 */ .short 0x099A
|
||||
/* 74ED8 80099AD8 */ .short 0x09A5
|
||||
/* 74EDA 80099ADA */ .short 0x09A6
|
||||
/* 74EDC 80099ADC */ .short 0x09A9
|
||||
/* 74EDE 80099ADE */ .short 0x09AA
|
||||
/* 74EE0 80099AE0 */ .short 0x0A55
|
||||
/* 74EE2 80099AE2 */ .short 0x0A56
|
||||
/* 74EE4 80099AE4 */ .short 0x0A59
|
||||
/* 74EE6 80099AE6 */ .short 0x0A5A
|
||||
/* 74EE8 80099AE8 */ .short 0x0A65
|
||||
/* 74EEA 80099AEA */ .short 0x0A66
|
||||
/* 74EEC 80099AEC */ .short 0x0A69
|
||||
/* 74EEE 80099AEE */ .short 0x0A6A
|
||||
/* 74EF0 80099AF0 */ .short 0x0A95
|
||||
/* 74EF2 80099AF2 */ .short 0x0A96
|
||||
/* 74EF4 80099AF4 */ .short 0x0A99
|
||||
/* 74EF6 80099AF6 */ .short 0x0A9A
|
||||
/* 74EF8 80099AF8 */ .short 0x0AA5
|
||||
/* 74EFA 80099AFA */ .short 0x0AA6
|
||||
/* 74EFC 80099AFC */ .short 0x0AA9
|
||||
/* 74EFE 80099AFE */ .short 0x0AAA
|
@ -10,7 +10,7 @@
|
||||
/* Generated by spimdisasm 1.11.1 */
|
||||
|
||||
# Handwritten function
|
||||
glabel func_JP_8006C650
|
||||
glabel __osGetSR
|
||||
/* 47A50 8006C650 40026000 */ mfc0 $v0, $12 # handwritten instruction
|
||||
/* 47A54 8006C654 03E00008 */ jr $ra
|
||||
/* 47A58 8006C658 00000000 */ nop
|
||||
|
@ -5,6 +5,78 @@
|
||||
.set noreorder /* don't insert nops after branches */
|
||||
.set gp=64 /* allow use of 64-bit general purpose registers */
|
||||
|
||||
.section .rodata
|
||||
|
||||
__osIntOffTable:
|
||||
/* 75160 80099D60 */ .byte 0x00
|
||||
/* 75161 80099D61 */ .byte 0x14
|
||||
/* 75162 80099D62 */ .byte 0x18
|
||||
/* 75163 80099D63 */ .byte 0x18
|
||||
/* 75164 80099D64 */ .byte 0x1C
|
||||
/* 75165 80099D65 */ .byte 0x1C
|
||||
/* 75166 80099D66 */ .byte 0x1C
|
||||
/* 75167 80099D67 */ .byte 0x1C
|
||||
/* 75168 80099D68 */ .byte 0x20
|
||||
/* 75169 80099D69 */ .byte 0x20
|
||||
/* 7516A 80099D6A */ .byte 0x20
|
||||
/* 7516B 80099D6B */ .byte 0x20
|
||||
/* 7516C 80099D6C */ .byte 0x20
|
||||
/* 7516D 80099D6D */ .byte 0x20
|
||||
/* 7516E 80099D6E */ .byte 0x20
|
||||
/* 7516F 80099D6F */ .byte 0x20
|
||||
/* 75170 80099D70 */ .byte 0x00
|
||||
/* 75171 80099D71 */ .byte 0x04
|
||||
/* 75172 80099D72 */ .byte 0x08
|
||||
/* 75173 80099D73 */ .byte 0x08
|
||||
/* 75174 80099D74 */ .byte 0x0C
|
||||
/* 75175 80099D75 */ .byte 0x0C
|
||||
/* 75176 80099D76 */ .byte 0x0C
|
||||
/* 75177 80099D77 */ .byte 0x0C
|
||||
/* 75178 80099D78 */ .byte 0x10
|
||||
/* 75179 80099D79 */ .byte 0x10
|
||||
/* 7517A 80099D7A */ .byte 0x10
|
||||
/* 7517B 80099D7B */ .byte 0x10
|
||||
/* 7517C 80099D7C */ .byte 0x10
|
||||
/* 7517D 80099D7D */ .byte 0x10
|
||||
/* 7517E 80099D7E */ .byte 0x10
|
||||
/* 7517F 80099D7F */ .byte 0x10
|
||||
|
||||
.align 3
|
||||
__osIntTable:
|
||||
/* 75180 80099D80 8006AEE0 */ .word .LJP_8006AEE0
|
||||
/* 75184 80099D84 8006AEA4 */ .word .LJP_8006AEA4
|
||||
/* 75188 80099D88 8006AE80 */ .word .LJP_8006AE80
|
||||
/* 7518C 80099D8C 8006ACA8 */ .word .LJP_8006ACA8
|
||||
/* 75190 80099D90 8006AC60 */ .word .LJP_8006AC60
|
||||
/* 75194 80099D94 8006AE1C */ .word .LJP_8006AE1C
|
||||
/* 75198 80099D98 8006AC24 */ .word .LJP_8006AC24
|
||||
/* 7519C 80099D9C 8006AC30 */ .word .LJP_8006AC30
|
||||
/* 751A0 80099DA0 8006AC3C */ .word .LJP_8006AC3C
|
||||
/* 751A4 80099DA4 00000000 */ .word 0x00000000
|
||||
/* 751A8 80099DA8 00000000 */ .word 0x00000000
|
||||
/* 751AC 80099DAC 00000000 */ .word 0x00000000
|
||||
.size __osIntTable, . - __osIntTable
|
||||
|
||||
.section .data
|
||||
|
||||
__osHwIntTable:
|
||||
.word 0x00000000
|
||||
.word 0x00000000
|
||||
.word 0x00000000
|
||||
.word 0x00000000
|
||||
.word 0x00000000
|
||||
.word 0x00000000
|
||||
.word 0x00000000
|
||||
.word 0x00000000
|
||||
.word 0x00000000
|
||||
.word 0x00000000
|
||||
.size __osHwIntTable, . - __osHwIntTable
|
||||
|
||||
__osPiIntTable:
|
||||
.word 0x00000000
|
||||
.word 0x00000000
|
||||
.size __osPiIntTable, . - __osPiIntTable
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
/* Generated by spimdisasm 1.11.1 */
|
||||
@ -160,12 +232,12 @@ glabel osExceptionPreamble
|
||||
/* 45FFC 8006ABFC 00095202 */ srl $t2, $t1, 8
|
||||
/* 46000 8006AC00 214A0010 */ addi $t2, $t2, 0x10 # handwritten instruction
|
||||
.LJP_8006AC04:
|
||||
/* 46004 8006AC04 3C01800A */ lui $at, %hi(D_JP_80099D60)
|
||||
/* 46004 8006AC04 3C01800A */ lui $at, %hi(__osIntOffTable)
|
||||
/* 46008 8006AC08 002A0821 */ addu $at, $at, $t2
|
||||
/* 4600C 8006AC0C 902A9D60 */ lbu $t2, %lo(D_JP_80099D60)($at)
|
||||
/* 46010 8006AC10 3C01800A */ lui $at, %hi(jtbl_JP_80099D80)
|
||||
/* 4600C 8006AC0C 902A9D60 */ lbu $t2, %lo(__osIntOffTable)($at)
|
||||
/* 46010 8006AC10 3C01800A */ lui $at, %hi(__osIntTable)
|
||||
/* 46014 8006AC14 002A0821 */ addu $at, $at, $t2
|
||||
/* 46018 8006AC18 8C2A9D80 */ lw $t2, %lo(jtbl_JP_80099D80)($at)
|
||||
/* 46018 8006AC18 8C2A9D80 */ lw $t2, %lo(__osIntTable)($at)
|
||||
/* 4601C 8006AC1C 01400008 */ jr $t2
|
||||
/* 46020 8006AC20 00000000 */ nop
|
||||
glabel .LJP_8006AC24
|
||||
@ -279,8 +351,8 @@ glabel .LJP_8006ACA8
|
||||
/* 461A8 8006ADA8 24090002 */ addiu $t1, $zero, 0x2
|
||||
/* 461AC 8006ADAC 3C01A460 */ lui $at, %hi(D_A4600010)
|
||||
/* 461B0 8006ADB0 AC290010 */ sw $t1, %lo(D_A4600010)($at)
|
||||
/* 461B4 8006ADB4 3C098009 */ lui $t1, %hi(D_80095938)
|
||||
/* 461B8 8006ADB8 252958C8 */ addiu $t1, $t1, %lo(D_80095938)
|
||||
/* 461B4 8006ADB4 3C098009 */ lui $t1, %hi(__osPiIntTable)
|
||||
/* 461B8 8006ADB8 252958C8 */ addiu $t1, $t1, %lo(__osPiIntTable)
|
||||
/* 461BC 8006ADBC 8D2A0000 */ lw $t2, 0x0($t1)
|
||||
/* 461C0 8006ADC0 11400006 */ beqz $t2, .LJP_8006ADDC
|
||||
/* 461C4 8006ADC4 00000000 */ nop
|
||||
|
@ -10,7 +10,7 @@
|
||||
/* Generated by spimdisasm 1.11.1 */
|
||||
|
||||
# Handwritten function
|
||||
glabel func_JP_80067420
|
||||
glabel guMtxIdent
|
||||
/* 42820 80067420 20080001 */ addi $t0, $zero, 0x1 # handwritten instruction
|
||||
/* 42824 80067424 00084C00 */ sll $t1, $t0, 16
|
||||
/* 42828 80067428 AC890000 */ sw $t1, 0x0($a0)
|
||||
|
@ -9,7 +9,7 @@
|
||||
|
||||
/* Generated by spimdisasm 1.11.1 */
|
||||
|
||||
glabel func_JP_800676E0
|
||||
glabel guScale
|
||||
/* 42AE0 800676E0 3C014780 */ lui $at, (0x47800000 >> 16)
|
||||
/* 42AE4 800676E4 44812000 */ mtc1 $at, $f4
|
||||
/* 42AE8 800676E8 44853000 */ mtc1 $a1, $f6
|
||||
|
@ -9,7 +9,7 @@
|
||||
|
||||
/* Generated by spimdisasm 1.11.1 */
|
||||
|
||||
glabel func_JP_80067800
|
||||
glabel guTranslate
|
||||
/* 42C00 80067800 3C014780 */ lui $at, (0x47800000 >> 16)
|
||||
/* 42C04 80067804 44812000 */ mtc1 $at, $f4
|
||||
/* 42C08 80067808 44853000 */ mtc1 $a1, $f6
|
||||
|
@ -5,6 +5,74 @@
|
||||
.set noreorder /* don't insert nops after branches */
|
||||
.set gp=64 /* allow use of 64-bit general purpose registers */
|
||||
|
||||
.section .rodata
|
||||
|
||||
glabel D_80099AA0
|
||||
/* 74E80 80099A80 */ .short 0x0555
|
||||
/* 74E82 80099A82 */ .short 0x0556
|
||||
/* 74E84 80099A84 */ .short 0x0559
|
||||
/* 74E86 80099A86 */ .short 0x055A
|
||||
/* 74E88 80099A88 */ .short 0x0565
|
||||
/* 74E8A 80099A8A */ .short 0x0566
|
||||
/* 74E8C 80099A8C */ .short 0x0569
|
||||
/* 74E8E 80099A8E */ .short 0x056A
|
||||
/* 74E90 80099A90 */ .short 0x0595
|
||||
/* 74E92 80099A92 */ .short 0x0596
|
||||
/* 74E94 80099A94 */ .short 0x0599
|
||||
/* 74E96 80099A96 */ .short 0x059A
|
||||
/* 74E98 80099A98 */ .short 0x05A5
|
||||
/* 74E9A 80099A9A */ .short 0x05A6
|
||||
/* 74E9C 80099A9C */ .short 0x05A9
|
||||
/* 74E9E 80099A9E */ .short 0x05AA
|
||||
/* 74EA0 80099AA0 */ .short 0x0655
|
||||
/* 74EA2 80099AA2 */ .short 0x0656
|
||||
/* 74EA4 80099AA4 */ .short 0x0659
|
||||
/* 74EA6 80099AA6 */ .short 0x065A
|
||||
/* 74EA8 80099AA8 */ .short 0x0665
|
||||
/* 74EAA 80099AAA */ .short 0x0666
|
||||
/* 74EAC 80099AAC */ .short 0x0669
|
||||
/* 74EAE 80099AAE */ .short 0x066A
|
||||
/* 74EB0 80099AB0 */ .short 0x0695
|
||||
/* 74EB2 80099AB2 */ .short 0x0696
|
||||
/* 74EB4 80099AB4 */ .short 0x0699
|
||||
/* 74EB6 80099AB6 */ .short 0x069A
|
||||
/* 74EB8 80099AB8 */ .short 0x06A5
|
||||
/* 74EBA 80099ABA */ .short 0x06A6
|
||||
/* 74EBC 80099ABC */ .short 0x06A9
|
||||
/* 74EBE 80099ABE */ .short 0x06AA
|
||||
/* 74EC0 80099AC0 */ .short 0x0955
|
||||
/* 74EC2 80099AC2 */ .short 0x0956
|
||||
/* 74EC4 80099AC4 */ .short 0x0959
|
||||
/* 74EC6 80099AC6 */ .short 0x095A
|
||||
/* 74EC8 80099AC8 */ .short 0x0965
|
||||
/* 74ECA 80099ACA */ .short 0x0966
|
||||
/* 74ECC 80099ACC */ .short 0x0969
|
||||
/* 74ECE 80099ACE */ .short 0x096A
|
||||
/* 74ED0 80099AD0 */ .short 0x0995
|
||||
/* 74ED2 80099AD2 */ .short 0x0996
|
||||
/* 74ED4 80099AD4 */ .short 0x0999
|
||||
/* 74ED6 80099AD6 */ .short 0x099A
|
||||
/* 74ED8 80099AD8 */ .short 0x09A5
|
||||
/* 74EDA 80099ADA */ .short 0x09A6
|
||||
/* 74EDC 80099ADC */ .short 0x09A9
|
||||
/* 74EDE 80099ADE */ .short 0x09AA
|
||||
/* 74EE0 80099AE0 */ .short 0x0A55
|
||||
/* 74EE2 80099AE2 */ .short 0x0A56
|
||||
/* 74EE4 80099AE4 */ .short 0x0A59
|
||||
/* 74EE6 80099AE6 */ .short 0x0A5A
|
||||
/* 74EE8 80099AE8 */ .short 0x0A65
|
||||
/* 74EEA 80099AEA */ .short 0x0A66
|
||||
/* 74EEC 80099AEC */ .short 0x0A69
|
||||
/* 74EEE 80099AEE */ .short 0x0A6A
|
||||
/* 74EF0 80099AF0 */ .short 0x0A95
|
||||
/* 74EF2 80099AF2 */ .short 0x0A96
|
||||
/* 74EF4 80099AF4 */ .short 0x0A99
|
||||
/* 74EF6 80099AF6 */ .short 0x0A9A
|
||||
/* 74EF8 80099AF8 */ .short 0x0AA5
|
||||
/* 74EFA 80099AFA */ .short 0x0AA6
|
||||
/* 74EFC 80099AFC */ .short 0x0AA9
|
||||
/* 74EFE 80099AFE */ .short 0x0AAA
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
/* Generated by spimdisasm 1.11.1 */
|
||||
|
@ -1,36 +1,37 @@
|
||||
.include "macro.inc"
|
||||
|
||||
/* assembler directives */
|
||||
.set noat /* allow manual use of $at */
|
||||
.set noreorder /* don't insert nops after branches */
|
||||
.set gp=64 /* allow use of 64-bit general purpose registers */
|
||||
# assembler directives
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
.set gp=64 # allow use of 64-bit general purpose registers
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
/* Generated by spimdisasm 1.11.1 */
|
||||
.globl leoBootID
|
||||
leoBootID = 0x800001a0
|
||||
|
||||
glabel func_JP_8006A5B0
|
||||
/* 459B0 8006A5B0 00000000 */ nop
|
||||
/* 459B4 8006A5B4 00000000 */ nop
|
||||
/* 459B8 8006A5B8 00000000 */ nop
|
||||
/* 459BC 8006A5BC 00000000 */ nop
|
||||
/* 459C0 8006A5C0 00000000 */ nop
|
||||
/* 459C4 8006A5C4 00000000 */ nop
|
||||
/* 459C8 8006A5C8 00000000 */ nop
|
||||
/* 459CC 8006A5CC 00000000 */ nop
|
||||
/* 459D0 8006A5D0 00000000 */ nop
|
||||
/* 459D4 8006A5D4 00000000 */ nop
|
||||
/* 459D8 8006A5D8 00000000 */ nop
|
||||
/* 459DC 8006A5DC 00000000 */ nop
|
||||
/* 459E0 8006A5E0 00000000 */ nop
|
||||
/* 459E4 8006A5E4 00000000 */ nop
|
||||
/* 459E8 8006A5E8 00000000 */ nop
|
||||
/* 459EC 8006A5EC 00000000 */ nop
|
||||
/* 459F0 8006A5F0 00000000 */ nop
|
||||
/* 459F4 8006A5F4 00000000 */ nop
|
||||
/* 459F8 8006A5F8 00000000 */ nop
|
||||
/* 459FC 8006A5FC 00000000 */ nop
|
||||
/* 45A00 8006A600 00000000 */ nop
|
||||
/* 45A04 8006A604 00000000 */ nop
|
||||
/* 45A08 8006A608 00000000 */ nop
|
||||
/* 45A0C 8006A60C 00000000 */ nop
|
||||
.globl osTvType
|
||||
osTvType = 0x80000300
|
||||
|
||||
.globl osRomType
|
||||
osRomType = 0x80000304
|
||||
|
||||
.globl osRomBase
|
||||
osRomBase = 0x80000308
|
||||
|
||||
.globl osResetType
|
||||
osResetType = 0x8000030C
|
||||
|
||||
.globl osCicId
|
||||
osCicId = 0x80000310
|
||||
|
||||
.globl osVersion
|
||||
osVersion = 0x80000314
|
||||
|
||||
.globl osMemSize
|
||||
osMemSize = 0x80000318
|
||||
|
||||
.globl osAppNMIBuffer
|
||||
osAppNMIBuffer = 0x8000031C
|
||||
|
||||
.fill 0x60
|
||||
|
@ -383,6 +383,7 @@ segments:
|
||||
- [auto, .data, os/contpfs]
|
||||
- [auto, .data, os/contramread]
|
||||
- [auto, .data, os/initialize]
|
||||
- [auto, .data, os/exceptasm]
|
||||
- [auto, .data, os/xlitob]
|
||||
- [auto, .data, os/vi]
|
||||
- [auto, .data, os/vimodepallan1]
|
||||
@ -392,54 +393,6 @@ segments:
|
||||
- [0x72A40, bin, gspF3DEX2kawase_fifo_data]
|
||||
- [0x72E60, bin, n_aspMain_data]
|
||||
- [0x73110]
|
||||
- [auto, .rodata, is_debug]
|
||||
- [auto, .rodata, main_loop]
|
||||
- [auto, .rodata, 43F0]
|
||||
- [auto, .rodata, curtains]
|
||||
- [auto, .rodata, crash_screen]
|
||||
- [auto, .rodata, cam_main]
|
||||
- [auto, .rodata, cam_mode_5]
|
||||
- [auto, .rodata, cam_mode_zone_interp]
|
||||
- [auto, .rodata, cam_math]
|
||||
- [auto, .rodata, state_logos]
|
||||
- [auto, .rodata, state_file_select]
|
||||
- [auto, .rodata, 111f0_len_860]
|
||||
- [auto, .rodata, state_intro]
|
||||
- [auto, .rodata, state_title_screen]
|
||||
- [auto, .rodata, state_demo]
|
||||
- [auto, .rodata, npc]
|
||||
- [auto, .rodata, encounter]
|
||||
- [auto, .rodata, status_icons]
|
||||
- [auto, .rodata, 23680]
|
||||
- [auto, .rodata, audio/28910_len_5090]
|
||||
- [auto, .rodata, audio/2e230_len_2190]
|
||||
- [auto, .rodata, audio/30450]
|
||||
- [auto, .rodata, audio/33450]
|
||||
- [auto, .rodata, audio/reverb]
|
||||
|
||||
- [auto, .rodata, 5B320]
|
||||
- [auto, .rodata, world/world]
|
||||
- [0x74E80, rodata, os/osSetIntMask]
|
||||
- [0x74F00]
|
||||
- [auto, .rodata, os/devmgr]
|
||||
- [auto, .rodata, os/aisetfrequency]
|
||||
- [auto, .rodata, os/guLookAt]
|
||||
- [auto, .rodata, os/lookathil]
|
||||
- [auto, .rodata, os/lookatref]
|
||||
- [auto, .rodata, os/perspective]
|
||||
- [auto, .rodata, os/xprintf]
|
||||
- [auto, .rodata, os/viswapcontext]
|
||||
|
||||
- [0x75160, rodata, os/exceptasm]
|
||||
- [0x751B0]
|
||||
- [auto, .rodata, os/xlitob]
|
||||
- [auto, .rodata, os/xldtob]
|
||||
- [auto, .rodata, gcc/divdi3]
|
||||
- [auto, .rodata, gcc/moddi3]
|
||||
- [auto, .rodata, gcc/udivdi3]
|
||||
- [auto, .rodata, gcc/umoddi3]
|
||||
- [auto, .rodata, battle/battle]
|
||||
- [0x75990]
|
||||
|
||||
- name: engine1
|
||||
type: code
|
||||
@ -458,41 +411,493 @@ segments:
|
||||
- [auto, c, world/partners]
|
||||
- [auto, hasm, bss2_2]
|
||||
- [auto, c, 891b0_len_fb0]
|
||||
- [0x8A0F0, bin]
|
||||
- [0x91170, .data, npc_collision]
|
||||
- [auto, c, 8a160_len_700]
|
||||
- [auto, c, 8a860_len_3f30]
|
||||
- [auto, c, draw_box]
|
||||
- [auto, .data, npc_collision]
|
||||
- [auto, .data, world/actions]
|
||||
- [auto, .data, world/partners]
|
||||
- [0x91B40, bin]
|
||||
- [0xA2AC0, .data, 891b0_len_fb0]
|
||||
- [0xA2AF0, bin]
|
||||
- [0xA5250, .rodata, 77480]
|
||||
- [auto, .rodata, 7B440]
|
||||
- [auto, .rodata, 7BB60]
|
||||
- [auto, .rodata, 7E9D0]
|
||||
- [auto, .rodata, world/menus]
|
||||
- [auto, .rodata, inventory]
|
||||
- [auto, .rodata, world/partners]
|
||||
- [auto, .rodata, 891b0_len_fb0]
|
||||
- [0xA5910, bin, A5910]
|
||||
- [0xA5F90]
|
||||
- start: 0x91B40
|
||||
type: .data
|
||||
name: global_hud_scripts
|
||||
subsegments:
|
||||
- [auto, ci4, ui/input/a_button_unpressed, 48, 40]
|
||||
- [auto, palette, ui/input/a_button_unpressed]
|
||||
- [auto, ci4, ui/input/a_button_pressed, 48, 40]
|
||||
- [auto, palette, ui/input/a_button_pressed]
|
||||
- [auto, ci4, ui/input/analog_stick, 32, 32]
|
||||
- [auto, palette, ui/input/analog_stick]
|
||||
- [auto, ci4, ui/input/analog_stick_left, 40, 32]
|
||||
- [auto, palette, ui/input/analog_stick_left]
|
||||
- [auto, ci4, ui/input/analog_stick2, 32, 32]
|
||||
- [auto, palette, ui/input/analog_stick2]
|
||||
- [auto, ci4, ui/input/analog_stick_right, 40, 32]
|
||||
- [auto, palette, ui/input/analog_stick_right]
|
||||
- [auto, ci4, ui/input/analog_stick3, 32, 32]
|
||||
- [auto, palette, ui/input/analog_stick3]
|
||||
- [auto, ci4, ui/input/analog_stick_down, 32, 32]
|
||||
- [auto, palette, ui/input/analog_stick_down]
|
||||
- [auto, ci4, ui/input/analog_stick_up, 32, 32]
|
||||
- [auto, palette, ui/input/analog_stick_up]
|
||||
- [auto, ci4, ui/unk_bar, 72, 16]
|
||||
- [auto, palette, ui/unk_bar]
|
||||
- [auto, ci4, ui/ok, 24, 16]
|
||||
- [auto, palette, ui/ok]
|
||||
- [auto, ci4, ui/input/start_button, 48, 40]
|
||||
- [auto, palette, ui/input/start_button]
|
||||
- [auto, ci4, ui/input/start_button2, 48, 40]
|
||||
- [auto, palette, ui/input/start_button2]
|
||||
- [auto, ci4, ui/input/start_text, 24, 8]
|
||||
- [auto, palette, ui/input/start_text]
|
||||
- [auto, ci4, ui/hammer, 32, 32]
|
||||
- [auto, palette, ui/hammer]
|
||||
- [auto, palette, ui/hammer.disabled]
|
||||
- [auto, ci4, ui/super_hammer, 32, 32]
|
||||
- [auto, palette, ui/super_hammer]
|
||||
- [auto, palette, ui/super_hammer.disabled]
|
||||
- [auto, ci4, ui/ultra_hammer, 32, 32]
|
||||
- [auto, palette, ui/ultra_hammer]
|
||||
- [auto, palette, ui/ultra_hammer.disabled]
|
||||
- [auto, ci4, ui/boots, 32, 32]
|
||||
- [auto, palette, ui/boots]
|
||||
- [auto, palette, ui/boots.disabled]
|
||||
- [auto, ci4, ui/super_boots, 32, 32]
|
||||
- [auto, palette, ui/super_boots]
|
||||
- [auto, palette, ui/super_boots.disabled]
|
||||
- [auto, ci4, ui/ultra_boots, 32, 32]
|
||||
- [auto, palette, ui/ultra_boots]
|
||||
- [auto, palette, ui/ultra_boots.disabled]
|
||||
- [auto, ci4, ui/item, 32, 32]
|
||||
- [auto, palette, ui/item]
|
||||
- [auto, palette, ui/item.disabled]
|
||||
- [auto, ci4, ui/star_spirit, 32, 32]
|
||||
- [auto, palette, ui/star_spirit]
|
||||
- [auto, palette, ui/star_spirit.disabled]
|
||||
- [auto, ci4, ui/arrow_left, 16, 16]
|
||||
- [auto, palette, ui/arrow_left]
|
||||
- [auto, ci4, ui/arrow_right, 16, 16]
|
||||
- [auto, palette, ui/arrow_right]
|
||||
- [auto, ci4, ui/point_right, 16, 16]
|
||||
- [auto, palette, ui/point_right]
|
||||
- [auto, ci4, ui/pip, 8, 8]
|
||||
- [auto, palette, ui/pip]
|
||||
- [auto, ci4, ui/pip2, 8, 8]
|
||||
- [auto, palette, ui/pip2]
|
||||
- [auto, ci4, ui/coin_sparkle_0, 8, 8]
|
||||
- [auto, palette, ui/coin_sparkle_0]
|
||||
- [auto, ci4, ui/coin_sparkle_1, 8, 8]
|
||||
- [auto, palette, ui/coin_sparkle_1]
|
||||
- [auto, ci4, ui/coin_sparkle_2, 8, 8]
|
||||
- [auto, palette, ui/coin_sparkle_2]
|
||||
- [auto, ci4, ui/coin_sparkle_3, 8, 8]
|
||||
- [auto, palette, ui/coin_sparkle_3]
|
||||
- [auto, ci4, ui/coin_sparkle_4, 8, 8]
|
||||
- [auto, palette, ui/coin_sparkle_4]
|
||||
- [auto, ci4, ui/coin_sparkle_5, 8, 8]
|
||||
- [auto, palette, ui/coin_sparkle_5]
|
||||
- [auto, ci4, ui/coin_sparkle_none, 8, 8]
|
||||
- [auto, palette, ui/coin_sparkle_none]
|
||||
- [auto, ia8, ui/status/star_point_shine, 24, 24]
|
||||
- [auto, ci4, ui/status/star_piece_0, 16, 16]
|
||||
- [auto, palette, ui/status/star_piece_0]
|
||||
- [auto, ci4, ui/status/star_piece_1, 16, 16]
|
||||
- [auto, palette, ui/status/star_piece_1]
|
||||
- [auto, ci4, ui/status/star_piece_2, 16, 16]
|
||||
- [auto, palette, ui/status/star_piece_2]
|
||||
- [auto, ci4, ui/menu_times, 8, 8]
|
||||
- [auto, palette, ui/menu_times]
|
||||
- [auto, ci4, ui/fp_cost, 16, 8]
|
||||
- [auto, palette, ui/fp_cost]
|
||||
- [auto, palette, ui/fp_cost.reduced]
|
||||
- [auto, palette, ui/fp_cost.reduced_twice]
|
||||
- [auto, palette, ui/fp_cost.notenough]
|
||||
- [auto, ci4, ui/pow_cost, 16, 8]
|
||||
- [auto, palette, ui/pow_cost]
|
||||
- [auto, palette, ui/pow_cost.reduced]
|
||||
- [auto, palette, ui/pow_cost.reduced_twice]
|
||||
- [auto, palette, ui/pow_cost.notenough]
|
||||
- [auto, ci4, ui/green_arrow_down, 16, 8]
|
||||
- [auto, palette, ui/green_arrow_down]
|
||||
- [auto, ci4, ui/green_arrow_up, 16, 8]
|
||||
- [auto, palette, ui/green_arrow_up]
|
||||
- [auto, ci4, ui/kaime, 56, 24]
|
||||
- [auto, palette, ui/kaime]
|
||||
- [auto, ci4, ui/unused_1, 16, 16]
|
||||
- [auto, palette, ui/unused_1]
|
||||
- [auto, ci4, ui/unused_2, 16, 16]
|
||||
- [auto, palette, ui/unused_2]
|
||||
- [auto, ci4, ui/unused_3, 16, 16]
|
||||
- [auto, palette, ui/unused_3]
|
||||
- [auto, ci4, ui/red_bar1, 112, 8]
|
||||
- [auto, palette, ui/red_bar1]
|
||||
- [auto, ci4, ui/empty_bar, 112, 8]
|
||||
- [auto, palette, ui/empty_bar]
|
||||
- [auto, ci4, ui/red_bar2, 104, 8]
|
||||
- [auto, palette, ui/red_bar2]
|
||||
- [auto, ci4, ui/eldstar, 32, 32]
|
||||
- [auto, palette, ui/eldstar]
|
||||
- [auto, palette, ui/eldstar.disabled]
|
||||
- [auto, ci4, ui/mamar, 32, 32]
|
||||
- [auto, palette, ui/mamar]
|
||||
- [auto, palette, ui/mamar.disabled]
|
||||
- [auto, ci4, ui/skolar, 32, 32]
|
||||
- [auto, palette, ui/skolar]
|
||||
- [auto, palette, ui/skolar.disabled]
|
||||
- [auto, ci4, ui/muskular, 32, 32]
|
||||
- [auto, palette, ui/muskular]
|
||||
- [auto, palette, ui/muskular.disabled]
|
||||
- [auto, ci4, ui/misstar, 32, 32]
|
||||
- [auto, palette, ui/misstar]
|
||||
- [auto, palette, ui/misstar.disabled]
|
||||
- [auto, ci4, ui/klevar, 32, 32]
|
||||
- [auto, palette, ui/klevar]
|
||||
- [auto, palette, ui/klevar.disabled]
|
||||
- [auto, ci4, ui/kalmar, 32, 32]
|
||||
- [auto, palette, ui/kalmar]
|
||||
- [auto, palette, ui/kalmar.disabled]
|
||||
- [auto, ci4, ui/star_beam, 32, 32]
|
||||
- [auto, palette, ui/star_beam]
|
||||
- [auto, palette, ui/star_beam.disabled]
|
||||
- [auto, ci4, ui/peach_beam, 32, 32]
|
||||
- [auto, palette, ui/peach_beam]
|
||||
- [auto, palette, ui/peach_beam.disabled]
|
||||
- [auto, ci4, ui/mario_head, 16, 16]
|
||||
- [auto, palette, ui/mario_head]
|
||||
- [auto, ci4, ui/partner0, 32, 32]
|
||||
- [auto, palette, ui/partner0]
|
||||
- [auto, palette, ui/partner0.disabled]
|
||||
- [auto, ci4, ui/goombario, 32, 32]
|
||||
- [auto, palette, ui/goombario]
|
||||
- [auto, palette, ui/goombario.disabled]
|
||||
- [auto, ci4, ui/kooper, 32, 32]
|
||||
- [auto, palette, ui/kooper]
|
||||
- [auto, palette, ui/kooper.disabled]
|
||||
- [auto, ci4, ui/bombette, 32, 32]
|
||||
- [auto, palette, ui/bombette]
|
||||
- [auto, palette, ui/bombette.disabled]
|
||||
- [auto, ci4, ui/parakarry, 32, 32]
|
||||
- [auto, palette, ui/parakarry]
|
||||
- [auto, palette, ui/parakarry.disabled]
|
||||
- [auto, ci4, ui/bow, 32, 32]
|
||||
- [auto, palette, ui/bow]
|
||||
- [auto, palette, ui/bow.disabled]
|
||||
- [auto, ci4, ui/watt, 32, 32]
|
||||
- [auto, palette, ui/watt]
|
||||
- [auto, palette, ui/watt.disabled]
|
||||
- [auto, ci4, ui/sushie, 32, 32]
|
||||
- [auto, palette, ui/sushie]
|
||||
- [auto, palette, ui/sushie.disabled]
|
||||
- [auto, ci4, ui/lakilester, 32, 32]
|
||||
- [auto, palette, ui/lakilester]
|
||||
- [auto, palette, ui/lakilester.disabled]
|
||||
- [auto, ci4, ui/partner9, 32, 32]
|
||||
- [auto, palette, ui/partner9]
|
||||
- [auto, palette, ui/partner9.disabled]
|
||||
- [auto, ci4, ui/partner10, 32, 32]
|
||||
- [auto, palette, ui/partner10]
|
||||
- [auto, palette, ui/partner10.disabled]
|
||||
- [auto, ci4, ui/partner11, 32, 32]
|
||||
- [auto, palette, ui/partner11]
|
||||
- [auto, palette, ui/partner11.disabled]
|
||||
- [auto, ci4, ui/status/text_times, 8, 8]
|
||||
- [auto, palette, ui/status/text_times]
|
||||
- [auto, ci4, ui/status/text_slash, 8, 16]
|
||||
- [auto, palette, ui/status/text_slash]
|
||||
- [auto, ci4, ui/status/text_0, 16, 16]
|
||||
- [auto, palette, ui/status/text_0]
|
||||
- [auto, ci4, ui/status/text_1, 16, 16]
|
||||
- [auto, palette, ui/status/text_1]
|
||||
- [auto, ci4, ui/status/text_2, 16, 16]
|
||||
- [auto, palette, ui/status/text_2]
|
||||
- [auto, ci4, ui/status/text_3, 16, 16]
|
||||
- [auto, palette, ui/status/text_3]
|
||||
- [auto, ci4, ui/status/text_4, 16, 16]
|
||||
- [auto, palette, ui/status/text_4]
|
||||
- [auto, ci4, ui/status/text_5, 16, 16]
|
||||
- [auto, palette, ui/status/text_5]
|
||||
- [auto, ci4, ui/status/text_6, 16, 16]
|
||||
- [auto, palette, ui/status/text_6]
|
||||
- [auto, ci4, ui/status/text_7, 16, 16]
|
||||
- [auto, palette, ui/status/text_7]
|
||||
- [auto, ci4, ui/status/text_8, 16, 16]
|
||||
- [auto, palette, ui/status/text_8]
|
||||
- [auto, ci4, ui/status/text_9, 16, 16]
|
||||
- [auto, palette, ui/status/text_9]
|
||||
- [auto, ci4, ui/status/text_hp, 16, 16]
|
||||
- [auto, palette, ui/status/text_hp]
|
||||
- [auto, ci4, ui/status/text_fp, 16, 16]
|
||||
- [auto, palette, ui/status/text_fp]
|
||||
- [auto, ci4, ui/status/pow_unit_1, 8, 8]
|
||||
- [auto, palette, ui/status/pow_unit_1]
|
||||
- [auto, ci4, ui/status/pow_unit_2, 8, 8]
|
||||
- [auto, palette, ui/status/pow_unit_2]
|
||||
- [auto, ci4, ui/status/pow_unit_3, 8, 8]
|
||||
- [auto, palette, ui/status/pow_unit_3]
|
||||
- [auto, ci4, ui/status/pow_unit_4, 8, 8]
|
||||
- [auto, palette, ui/status/pow_unit_4]
|
||||
- [auto, ci4, ui/status/pow_unit_5, 8, 8]
|
||||
- [auto, palette, ui/status/pow_unit_5]
|
||||
- [auto, ci4, ui/status/pow_unit_6, 8, 8]
|
||||
- [auto, palette, ui/status/pow_unit_6]
|
||||
- [auto, ci4, ui/status/pow_unit_7, 8, 8]
|
||||
- [auto, palette, ui/status/pow_unit_7]
|
||||
- [auto, ci4, ui/status/pow_unit_empty, 8, 8]
|
||||
- [auto, palette, ui/status/pow_unit_empty]
|
||||
- [auto, ci4, ui/status/pow_star_1, 8, 8]
|
||||
- [auto, palette, ui/status/pow_star_1]
|
||||
- [auto, ci4, ui/status/pow_star_2, 8, 8]
|
||||
- [auto, palette, ui/status/pow_star_2]
|
||||
- [auto, ci4, ui/status/pow_star_3, 8, 8]
|
||||
- [auto, palette, ui/status/pow_star_3]
|
||||
- [auto, ci4, ui/status/pow_star_4, 8, 8]
|
||||
- [auto, palette, ui/status/pow_star_4]
|
||||
- [auto, ci4, ui/status/pow_star_5, 8, 8]
|
||||
- [auto, palette, ui/status/pow_star_5]
|
||||
- [auto, ci4, ui/status/pow_star_6, 8, 8]
|
||||
- [auto, palette, ui/status/pow_star_6]
|
||||
- [auto, ci4, ui/status/pow_star_7, 8, 8]
|
||||
- [auto, palette, ui/status/pow_star_7]
|
||||
- [auto, ci4, ui/status/pow_star_empty, 8, 8]
|
||||
- [auto, palette, ui/status/pow_star_empty]
|
||||
- [auto, ci4, ui/status/coin_0, 16, 16]
|
||||
- [auto, palette, ui/status/coin_0]
|
||||
- [auto, ci4, ui/status/coin_1, 16, 16]
|
||||
- [auto, palette, ui/status/coin_1]
|
||||
- [auto, ci4, ui/status/coin_2, 16, 16]
|
||||
- [auto, palette, ui/status/coin_2]
|
||||
- [auto, ci4, ui/status/coin_3, 16, 16]
|
||||
- [auto, palette, ui/status/coin_3]
|
||||
- [auto, ci4, ui/status/coin_4, 16, 16]
|
||||
- [auto, palette, ui/status/coin_4]
|
||||
- [auto, ci4, ui/status/coin_5, 16, 16]
|
||||
- [auto, palette, ui/status/coin_5]
|
||||
- [auto, ci4, ui/status/coin_6, 16, 16]
|
||||
- [auto, palette, ui/status/coin_6]
|
||||
- [auto, ci4, ui/status/coin_7, 16, 16]
|
||||
- [auto, palette, ui/status/coin_7]
|
||||
- [auto, ci4, ui/status/coin_8, 16, 16]
|
||||
- [auto, palette, ui/status/coin_8]
|
||||
- [auto, ci4, ui/status/coin_9, 16, 16]
|
||||
- [auto, palette, ui/status/coin_9]
|
||||
- [auto, ci4, ui/status/star_point_0, 16, 16]
|
||||
- [auto, palette, ui/status/star_point_0]
|
||||
- [auto, ci4, ui/status/star_point_1, 16, 16]
|
||||
- [auto, palette, ui/status/star_point_1]
|
||||
- [auto, ci4, ui/status/star_point_2, 16, 16]
|
||||
- [auto, palette, ui/status/star_point_2]
|
||||
- [auto, ci4, ui/status/star_point_3, 16, 16]
|
||||
- [auto, palette, ui/status/star_point_3]
|
||||
- [auto, ci4, ui/status/star_point_4, 16, 16]
|
||||
- [auto, palette, ui/status/star_point_4]
|
||||
- [auto, ci4, ui/status/star_point_5, 16, 16]
|
||||
- [auto, palette, ui/status/star_point_5]
|
||||
- [auto, ci4, ui/status/star_point_6, 16, 16]
|
||||
- [auto, palette, ui/status/star_point_6]
|
||||
- [auto, ci4, ui/status/star_point_7, 16, 16]
|
||||
- [auto, palette, ui/status/star_point_7]
|
||||
- [auto, ci4, ui/bluepip, 16, 16]
|
||||
- [auto, palette, ui/bluepip]
|
||||
- [auto, ci4, ui/bluepip2, 16, 16]
|
||||
- [auto, palette, ui/bluepip2]
|
||||
- [auto, ci4, ui/battle/status/charge_jump, 24, 24]
|
||||
- [auto, palette, ui/battle/status/charge_jump]
|
||||
- [auto, ci4, ui/battle/status/charge_hammer, 24, 24]
|
||||
- [auto, palette, ui/battle/status/charge_hammer]
|
||||
- [auto, ci4, ui/battle/status/charge_goombario, 24, 24]
|
||||
- [auto, palette, ui/battle/status/charge_goombario]
|
||||
- [auto, ci4, ui/battle/status/exclamation, 24, 24]
|
||||
- [auto, palette, ui/battle/status/exclamation]
|
||||
- [auto, ci4, ui/battle/status/sleep_0, 16, 16]
|
||||
- [auto, palette, ui/battle/status/sleep_0]
|
||||
- [auto, ci4, ui/battle/status/sleep_1, 16, 16]
|
||||
- [auto, palette, ui/battle/status/sleep_1]
|
||||
- [auto, ci4, ui/battle/status/sleep_2, 16, 16]
|
||||
- [auto, palette, ui/battle/status/sleep_2]
|
||||
- [auto, ci4, ui/battle/status/static_0, 16, 16]
|
||||
- [auto, palette, ui/battle/status/static_0]
|
||||
- [auto, ci4, ui/battle/status/static_1, 16, 16]
|
||||
- [auto, palette, ui/battle/status/static_1]
|
||||
- [auto, ci4, ui/battle/status/paralyze_0, 16, 16]
|
||||
- [auto, palette, ui/battle/status/paralyze_0]
|
||||
- [auto, ci4, ui/battle/status/paralyze_1, 16, 16]
|
||||
- [auto, palette, ui/battle/status/paralyze_1]
|
||||
- [auto, ci4, ui/battle/status/dizzy_0, 16, 16]
|
||||
- [auto, palette, ui/battle/status/dizzy_0]
|
||||
- [auto, ci4, ui/battle/status/dizzy_1, 16, 16]
|
||||
- [auto, palette, ui/battle/status/dizzy_1]
|
||||
- [auto, ci4, ui/battle/status/dizzy_2, 16, 16]
|
||||
- [auto, palette, ui/battle/status/dizzy_2]
|
||||
- [auto, ci4, ui/battle/status/dizzy_3, 16, 16]
|
||||
- [auto, palette, ui/battle/status/dizzy_3]
|
||||
- [auto, ci4, ui/battle/status/poison_0, 16, 16]
|
||||
- [auto, palette, ui/battle/status/poison_0]
|
||||
- [auto, ci4, ui/battle/status/poison_1, 16, 16]
|
||||
- [auto, palette, ui/battle/status/poison_1]
|
||||
- [auto, ci4, ui/battle/status/frozen_0, 16, 16]
|
||||
- [auto, palette, ui/battle/status/frozen_0]
|
||||
- [auto, ci4, ui/battle/status/frozen_1, 16, 16]
|
||||
- [auto, palette, ui/battle/status/frozen_1]
|
||||
- [auto, ci4, ui/battle/status/frozen_2, 16, 16]
|
||||
- [auto, palette, ui/battle/status/frozen_2]
|
||||
- [auto, ci4, ui/battle/status/frozen_3, 16, 16]
|
||||
- [auto, palette, ui/battle/status/frozen_3]
|
||||
- [auto, ci4, ui/battle/status/stop_0, 16, 16]
|
||||
- [auto, palette, ui/battle/status/stop_0]
|
||||
- [auto, ci4, ui/battle/status/stop_1, 16, 16]
|
||||
- [auto, palette, ui/battle/status/stop_1]
|
||||
- [auto, ci4, ui/battle/status/stop_2, 16, 16]
|
||||
- [auto, palette, ui/battle/status/stop_2]
|
||||
- [auto, ci4, ui/battle/status/stop_3, 16, 16]
|
||||
- [auto, palette, ui/battle/status/stop_3]
|
||||
- [auto, ci4, ui/battle/status/pdown_0, 16, 16]
|
||||
- [auto, palette, ui/battle/status/pdown_0]
|
||||
- [auto, ci4, ui/battle/status/pdown_1, 16, 16]
|
||||
- [auto, palette, ui/battle/status/pdown_1]
|
||||
- [auto, ci4, ui/battle/status/shrink_0, 16, 16]
|
||||
- [auto, palette, ui/battle/status/shrink_0]
|
||||
- [auto, ci4, ui/battle/status/shrink_1, 16, 16]
|
||||
- [auto, palette, ui/battle/status/shrink_1]
|
||||
- [auto, ci4, ui/battle/status/shrink_2, 16, 16]
|
||||
- [auto, palette, ui/battle/status/shrink_2]
|
||||
- [auto, ci4, ui/battle/status/shrink_3, 16, 16]
|
||||
- [auto, palette, ui/battle/status/shrink_3]
|
||||
- [auto, ci4, ui/battle/status/transparent_0, 16, 16]
|
||||
- [auto, palette, ui/battle/status/transparent_0]
|
||||
- [auto, ci4, ui/battle/status/transparent_1, 16, 16]
|
||||
- [auto, palette, ui/battle/status/transparent_1]
|
||||
- [auto, ci4, ui/battle/status/transparent_2, 16, 16]
|
||||
- [auto, palette, ui/battle/status/transparent_2]
|
||||
- [auto, ci4, ui/battle/status/transparent_3, 16, 16]
|
||||
- [auto, palette, ui/battle/status/transparent_3]
|
||||
- [auto, ci4, ui/battle/status/transparent_4, 16, 16]
|
||||
- [auto, palette, ui/battle/status/transparent_4]
|
||||
- [auto, ci4, ui/battle/status/transparent_5, 16, 16]
|
||||
- [auto, palette, ui/battle/status/transparent_5]
|
||||
- [auto, ci4, ui/battle/status/peril, 40, 16]
|
||||
- [auto, palette, ui/battle/status/peril]
|
||||
- [auto, ci4, ui/battle/status/danger, 40, 16]
|
||||
- [auto, palette, ui/battle/status/danger]
|
||||
- [auto, ci4, ui/battle/status/refund, 40, 24]
|
||||
- [auto, palette, ui/battle/status/refund]
|
||||
- [auto, ci4, ui/battle/status/happy, 40, 16]
|
||||
- [auto, palette, ui/battle/status/happy]
|
||||
- [auto, ci4, ui/battle/status/hp_drain, 40, 16]
|
||||
- [auto, palette, ui/battle/status/hp_drain]
|
||||
- [auto, ci4, ui/move_basic, 32, 32]
|
||||
- [auto, palette, ui/move_basic]
|
||||
- [auto, palette, ui/move_basic.disabled]
|
||||
- [auto, ci4, ui/move_partner_1, 32, 32]
|
||||
- [auto, palette, ui/move_partner_1]
|
||||
- [auto, palette, ui/move_partner_1.disabled]
|
||||
- [auto, ci4, ui/move_partner_2, 32, 32]
|
||||
- [auto, palette, ui/move_partner_2]
|
||||
- [auto, palette, ui/move_partner_2.disabled]
|
||||
- [auto, ci4, ui/move_partner_3, 32, 32]
|
||||
- [auto, palette, ui/move_partner_3]
|
||||
- [auto, palette, ui/move_partner_3.disabled]
|
||||
- [0x9D7E0]
|
||||
- [0x9D7E8, rgba32, ui/stat_heart, 16, 16]
|
||||
- [0x9DBE8]
|
||||
- [0x9DBF0, rgba32, ui/stat_flower, 16, 16]
|
||||
- [0x9DFF0]
|
||||
- [auto, .data, 891b0_len_fb0]
|
||||
- [auto, .data, 8a160_len_700]
|
||||
- start: 0xA2AF0
|
||||
type: .data
|
||||
name: 8a160_len_700
|
||||
subsegments:
|
||||
- [0xA2AF0, ia8, A2960, 32, 16]
|
||||
- [0xA2CF0] # Vp
|
||||
- [0xA2D00, vtx, A2B70]
|
||||
- [0xA2D50, gfx, A2BC0]
|
||||
- [0xA2E18, gfx, A2C88]
|
||||
- [0xA2E40]
|
||||
- [auto, .data, 8a860_len_3f30]
|
||||
- start: 0xA2EE0
|
||||
type: .data
|
||||
name: draw_box
|
||||
subsegments:
|
||||
- [0xA2EE0]
|
||||
- [0xA2FE0, ia8, ui/box/corners9, 16, 64]
|
||||
- [auto, ia8, ui/box/corners8, 24, 96]
|
||||
- [auto, ia8, ui/box/corners6, 16, 40]
|
||||
- [auto, ia8, ui/box/corners7, 16, 32]
|
||||
- [auto, ia8, ui/box/corners3, 16, 96]
|
||||
- [auto, ia8, ui/box/corners5, 16, 32]
|
||||
- [auto, ia8, ui/box/corners4, 8, 32]
|
||||
- [auto, i4, ui/box/bg_tile, 16, 16]
|
||||
- [auto, ia8, ui/box/corners1, 16, 64]
|
||||
- [auto, i4, ui/box/corners2, 16, 64]
|
||||
- [auto, i4, ui/box/bg_flat, 16, 1]
|
||||
- [0xA50E8]
|
||||
- [0xA51C8, vtx, vtx/drawbox1]
|
||||
- [0xA5208]
|
||||
- [0xA5250]
|
||||
|
||||
- name: engine4
|
||||
dir: engine4
|
||||
type: code
|
||||
start: 0xA5F90
|
||||
vram: 0x8010f890
|
||||
subsegments:
|
||||
- [0xA5F90, bin]
|
||||
- [0xa9770]
|
||||
- [auto, c, sprite]
|
||||
- [auto, c, 101b90_len_8f0]
|
||||
|
||||
- name: engine2
|
||||
dir: engine2
|
||||
type: code
|
||||
start: 0xa9770
|
||||
vram: 0x801148e0
|
||||
subsegments:
|
||||
- [0xa9770, bin]
|
||||
- [0xeb1a0]
|
||||
- [auto, hasm, bss3]
|
||||
- [auto, c, entity]
|
||||
- [auto, c, game_states]
|
||||
- [auto, c, model]
|
||||
- [auto, c, animator]
|
||||
- [auto, c, entity_model]
|
||||
- [auto, c, worker]
|
||||
- [auto, c, msg]
|
||||
- [auto, c, msg_draw]
|
||||
- [auto, c, draw_img_util]
|
||||
- [auto, c, item_entity]
|
||||
- [auto, c, screen_overlays]
|
||||
- [auto, c, screen_render_util]
|
||||
- [auto, c, imgfx]
|
||||
- [auto, c, hud_element]
|
||||
- [auto, c, vars_access]
|
||||
- [auto, c, trigger]
|
||||
- [auto, c, background]
|
||||
- [auto, c, audio/ambience]
|
||||
- [auto, c, windows]
|
||||
- [auto, c, sprite_shading]
|
||||
- [auto, c, audio/sfx]
|
||||
- [auto, c, audio/e0b30_len_b80]
|
||||
- [auto, .data, entity]
|
||||
- [auto, .data, model]
|
||||
- [auto, .data, animator]
|
||||
- [auto, .data, entity_model]
|
||||
- [auto, .data, msg]
|
||||
- [auto, .data, msg_draw]
|
||||
- [auto, .data, item_entity]
|
||||
- start: 0xE6620
|
||||
type: .data
|
||||
name: screen_overlays
|
||||
subsegments:
|
||||
- [0xE6620]
|
||||
- [0xE6630, i4, ui/stencil/star, 32, 64]
|
||||
- [0xE6A30, i4, ui/stencil/mario, 64, 64]
|
||||
- [0xE7230, i4, ui/stencil/sharp_circle, 32, 32]
|
||||
- [0xE7430, i8, ui/stencil/blurry_circle, 64, 64]
|
||||
- [0xE8430, vtx, vtx/stencil1]
|
||||
- [0xE84D0]
|
||||
- [0xE86A0, vtx, vtx/stencil2]
|
||||
- [0xE8820]
|
||||
- [auto, .data, screen_render_util]
|
||||
- [auto, .data, imgfx]
|
||||
- [auto, .data, hud_element]
|
||||
- [auto, .data, background]
|
||||
- [auto, .data, audio/ambience]
|
||||
- [auto, .data, windows]
|
||||
- [auto, .data, audio/sfx]
|
||||
- [auto, .data, audio/e0b30_len_b80]
|
||||
|
||||
- name: evt
|
||||
dir: evt
|
||||
@ -500,26 +905,233 @@ segments:
|
||||
start: 0xeb1a0
|
||||
vram: 0x802c3000
|
||||
subsegments:
|
||||
- [0xeb1a0, bin]
|
||||
- [0x102620]
|
||||
- [auto, c, script_list]
|
||||
- [auto, c, evt]
|
||||
- [auto, c, map_api]
|
||||
- [auto, c, cam_api]
|
||||
- [auto, c, model_api]
|
||||
- [auto, c, npc_api]
|
||||
- [auto, c, msg_api]
|
||||
- [auto, c, player_api]
|
||||
- [auto, c, virtual_entity]
|
||||
- [auto, c, f8f60_len_1560]
|
||||
- [auto, c, audio_api]
|
||||
- [auto, c, item_api]
|
||||
- [auto, c, fx_api]
|
||||
- [auto, c, demo_api]
|
||||
|
||||
- name: entity
|
||||
type: code
|
||||
start: 0x102620
|
||||
vram: 0x802dbd40
|
||||
subsegments:
|
||||
- [0x102620, bin]
|
||||
- [0x10cc20]
|
||||
- [auto, c, entity/Shadow]
|
||||
- [auto, c, entity/SaveBlock]
|
||||
- [auto, c, entity/Switch]
|
||||
- [auto, c, entity/ShatteringBlock_common]
|
||||
- [auto, c, entity/ShatteringBlock]
|
||||
- [auto, c, entity/Block]
|
||||
- [auto, c, entity/ItemBlock]
|
||||
- [auto, c, entity/HeartBlock]
|
||||
- [auto, c, entity/SuperBlock]
|
||||
- [auto, c, entity/SimpleSpring]
|
||||
- [auto, c, entity/HiddenPanel]
|
||||
- [auto, c, entity/Chest]
|
||||
- [auto, c, entity/WoodenCrate]
|
||||
- [auto, c, entity/BlueWarpPipe]
|
||||
- [auto, c, entity/Signpost]
|
||||
- start: 0x10AA00
|
||||
type: .data
|
||||
name: entity/Shadow
|
||||
subsegments:
|
||||
- [0x10AA00, i4, entity/shadow/square, 16, 16]
|
||||
- [0x10AA80, i4, entity/shadow/circle, 16, 16]
|
||||
- [0x10AB00, vtx, entity/vtx/shadow1]
|
||||
- [0x10AB40, vtx, entity/vtx/shadow2]
|
||||
- [0x10AB80, i4, entity/shadow/square_big, 32, 32]
|
||||
- [0x10AD80, i4, entity/shadow/circle_big, 32, 32]
|
||||
- [0x10AF80]
|
||||
- [auto, .data, entity/SaveBlock]
|
||||
- [auto, .data, entity/Switch]
|
||||
- [auto, .data, entity/ShatteringBlock_common]
|
||||
- [auto, .data, entity/ShatteringBlock]
|
||||
- [auto, .data, entity/Block]
|
||||
- [auto, .data, entity/ItemBlock]
|
||||
- [auto, .data, entity/HeartBlock]
|
||||
- [auto, .data, entity/SuperBlock]
|
||||
- [auto, .data, entity/SimpleSpring]
|
||||
- [auto, .data, entity/HiddenPanel]
|
||||
- [auto, .data, entity/Chest]
|
||||
- [auto, .data, entity/WoodenCrate]
|
||||
- [auto, .data, entity/BlueWarpPipe]
|
||||
- [auto, .data, entity/Signpost]
|
||||
|
||||
- name: font_width
|
||||
type: code
|
||||
start: 0x10cc20
|
||||
vram: 0x802e6380
|
||||
subsegments:
|
||||
- [0x10cc20, bin]
|
||||
- [0x10f330]
|
||||
|
||||
- [0x10f330, bin]
|
||||
- [auto, c, msg_data]
|
||||
- [auto, c, msg_img]
|
||||
- [auto, .data, msg_data]
|
||||
- start: 0x10D030
|
||||
type: .data
|
||||
name: msg_img
|
||||
subsegments:
|
||||
- [auto, ci4, ui/msg/bubble_left, 32, 64, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/bubble_mid, 8, 64, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/bubble_right, 32, 64, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/arrow, 16, 16, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_a_1_1, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_a_1_2, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_a_1_3, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_a_1_4, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_a_1_5, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_a_2_1, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_a_2_5, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_a_3_1, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_a_3_5, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_a_4_1, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_a_4_5, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_a_5_1, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_a_5_2, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_a_5_3, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_a_5_4, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_a_5_5, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_b_1_1, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_b_1_2, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_b_1_3, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_b_1_4, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_b_1_5, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_b_2_1, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_b_2_5, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_b_3_1, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_b_3_5, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_b_4_1, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_b_4_5, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_b_5_1, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_b_5_2, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_b_5_3, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_b_5_4, 8, 8, ui/msg/bubble_left]
|
||||
- [auto, ci4, ui/msg/frame_b_5_5, 8, 8, ui/msg/bubble_left]
|
||||
# all 16 following palettes can be applied to all images above
|
||||
- {start: auto, type: palette, name: ui/msg/bubble_left, size: 0x200}
|
||||
#- [auto, palette, ui/msg/palette_0]
|
||||
#- [auto, palette, ui/msg/palette_1]
|
||||
#- [auto, palette, ui/msg/palette_2]
|
||||
#- [auto, palette, ui/msg/palette_3]
|
||||
#- [auto, palette, ui/msg/palette_4]
|
||||
#- [auto, palette, ui/msg/palette_5]
|
||||
#- [auto, palette, ui/msg/palette_6]
|
||||
#- [auto, palette, ui/msg/palette_7]
|
||||
#- [auto, palette, ui/msg/palette_8]
|
||||
#- [auto, palette, ui/msg/palette_9]
|
||||
#- [auto, palette, ui/msg/palette_A]
|
||||
#- [auto, palette, ui/msg/palette_B]
|
||||
#- [auto, palette, ui/msg/palette_C]
|
||||
#- [auto, palette, ui/msg/palette_D]
|
||||
#- [auto, palette, ui/msg/palette_E]
|
||||
#- [auto, palette, ui/msg/palette_F]
|
||||
- [auto, ci4, ui/msg/sign_corner_topleft, 16, 16, ui/msg/sign_corner_topleft]
|
||||
- [auto, ci4, ui/msg/sign_corner_topright, 16, 16, ui/msg/sign_corner_topleft]
|
||||
- [auto, ci4, ui/msg/sign_corner_bottomleft, 16, 16, ui/msg/sign_corner_topleft]
|
||||
- [auto, ci4, ui/msg/sign_corner_bottomright, 16, 16, ui/msg/sign_corner_topleft]
|
||||
- [auto, ci4, ui/msg/lamppost_corner_bottomright, 16, 16, ui/msg/lamppost_corner_bottomright]
|
||||
- [auto, ci4, ui/msg/sign_side_top, 32, 16, ui/msg/sign_corner_topleft]
|
||||
- [auto, ci4, ui/msg/sign_side_left, 16, 40, ui/msg/sign_corner_topleft]
|
||||
- [auto, ci4, ui/msg/sign_side_right, 16, 40, ui/msg/sign_corner_topleft]
|
||||
- [auto, ci4, ui/msg/sign_side_bottom, 32, 16, ui/msg/sign_corner_topleft]
|
||||
- [auto, ci4, ui/msg/sign_fill, 8, 8, ui/msg/sign_corner_topleft]
|
||||
# these two palettes can be applied to all sign and lamppost frame images
|
||||
- [auto, palette, ui/msg/sign_corner_topleft]
|
||||
- [auto, palette, ui/msg/lamppost_corner_bottomright]
|
||||
- [auto, i4, ui/msg/background, 64, 64]
|
||||
- [auto, ci4, ui/msg/rewind_arrow, 24, 24]
|
||||
- [auto, palette, ui/msg/rewind_arrow]
|
||||
- [auto, rgba16, ui/msg/star, 16, 18]
|
||||
- [auto, i4, ui/msg/star_silhouette, 16, 20]
|
||||
- type: group
|
||||
dir: charset
|
||||
vram: 0
|
||||
start: 0x10F330
|
||||
subsegments:
|
||||
- [0x10F330, linker_offset, kana]
|
||||
- [0x10F330, pm_charset, kana, 16, 14, 0xC7, standard]
|
||||
- [0x114A40, linker_offset, latin]
|
||||
- [0x114A40, pm_charset, latin, 16, 14, 0x1B, standard]
|
||||
- [0x115610, linker_offset, kanji]
|
||||
- [0x115610, pm_charset, kanji, 16, 14, 0x79, standard]
|
||||
- [0x118B00, linker_offset, buttons]
|
||||
- [0x118B00, pm_charset, buttons, 16, 14, 0xA, standard]
|
||||
- [0x118F60, linker_offset, menu_kana]
|
||||
- [0x118F60, pm_charset, menu_kana, 12, 12, 0xC8, standard]
|
||||
- [0x11C7A0, linker_offset, menu_latin]
|
||||
- [0x11C7A0, pm_charset, menu_latin, 12, 12, 0x1B, standard]
|
||||
- [0x11CF38, linker_offset, standard_pal]
|
||||
- [0x11CF38, pm_charset_palettes, standard, 0x50]
|
||||
- [0x11D438, linker_offset, title]
|
||||
- [0x11D438, pm_charset, title, 12, 15, 0x29]
|
||||
- [0x11E398, linker_offset, subtitle]
|
||||
- [0x11E398, pm_charset, subtitle, 12, 12, 0x29]
|
||||
- [0x11EF20, linker_offset, credits_pal]
|
||||
- [0x11EF20, pm_charset_palettes, subtitle, 1]
|
||||
- [0x11EF30, pm_charset_palettes, title, 1]
|
||||
- [0x11EF40, ci8, peach_letter, 150, 105]
|
||||
- [0x122CC8, palette, peach_letter]
|
||||
- [0x122EC8, linker_offset, postcard]
|
||||
- [0x122EC8, ci4, postcard, 150, 105]
|
||||
- [0x124D90, linker_offset, postcard_pal]
|
||||
- [0x124D90, palette, postcard]
|
||||
- [0x124DB0, linker_offset, letter_content_1]
|
||||
- [0x124DB0, ci8, letter_content_1, 70, 95]
|
||||
- [0x1267B0, linker_offset, letter_content_1_pal]
|
||||
- [0x1267B0, palette, letter_content_1]
|
||||
- [0x1269B0, linker_offset, letter_content_2]
|
||||
- [0x1269B0, ci8, letter_content_2, 70, 95]
|
||||
- [0x1283B0, linker_offset, letter_content_2_pal]
|
||||
- [0x1283B0, palette, letter_content_2]
|
||||
- [0x1285B0, linker_offset, letter_content_3]
|
||||
- [0x1285B0, ci8, letter_content_3, 70, 95]
|
||||
- [0x129FB0, linker_offset, letter_content_3_pal]
|
||||
- [0x129FB0, palette, letter_content_3]
|
||||
- [0x12A1B0, linker_offset, letter_content_4]
|
||||
- [0x12A1B0, ci8, letter_content_4, 70, 95]
|
||||
- [0x12BBB0, linker_offset, letter_content_4_pal]
|
||||
- [0x12BBB0, palette, letter_content_4]
|
||||
- [0x12BDB0, linker_offset, letter_content_5]
|
||||
- [0x12BDB0, ci8, letter_content_5, 70, 95]
|
||||
- [0x12D7B0, linker_offset, letter_content_5_pal]
|
||||
- [0x12D7B0, palette, letter_content_5]
|
||||
- [0x12D9B0, linker_offset, letter_content_6]
|
||||
- [0x12D9B0, ci8, letter_content_6, 70, 95]
|
||||
- [0x12F3B0, linker_offset, letter_content_6_pal]
|
||||
- [0x12F3B0, palette, letter_content_6]
|
||||
- [0x12F5B0, linker_offset, letter_content_7]
|
||||
- [0x12F5B0, ci8, letter_content_7, 70, 95]
|
||||
- [0x130FB0, linker_offset, letter_content_7_pal]
|
||||
- [0x130FB0, palette, letter_content_7]
|
||||
- [0x1311B0, linker_offset, letter_content_8]
|
||||
- [0x1311B0, ci8, letter_content_8, 70, 95]
|
||||
- [0x132BB0, linker_offset, letter_content_8_pal]
|
||||
- [0x132BB0, palette, letter_content_8]
|
||||
- [0x132DB0, linker_offset, letter_content_9]
|
||||
- [0x132DB0, ci8, letter_content_9, 70, 95]
|
||||
- [0x1347B0, linker_offset, letter_content_9_pal]
|
||||
- [0x1347B0, palette, letter_content_9]
|
||||
- [0x1349B0, linker_offset, letter_content_10]
|
||||
- [0x1349B0, ci8, letter_content_10, 70, 95]
|
||||
- [0x1363B0, linker_offset, letter_content_10_pal]
|
||||
- [0x1363B0, palette, letter_content_10]
|
||||
- [0x1365B0, linker_offset, letter_content_11]
|
||||
- [0x1365B0, ci8, letter_content_11, 70, 95]
|
||||
- [0x137FB0, linker_offset, letter_content_11_pal]
|
||||
- [0x137FB0, palette, letter_content_11]
|
||||
- [0x1381B0, linker_offset, letter_content_12]
|
||||
- [0x1381B0, ci8, letter_content_12, 70, 95]
|
||||
- [0x139BB0, linker_offset, letter_content_12_pal]
|
||||
- [0x139BB0, palette, letter_content_12]
|
||||
- [0x139DB0]
|
||||
- [0x139DB0, bin]
|
||||
|
||||
- name: battle_code
|
||||
type: bin
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -7,8 +7,6 @@ D_A450000C = 0xA450000C;
|
||||
D_A4600010 = 0xA4600010;
|
||||
D_A4800018 = 0xA4800018;
|
||||
|
||||
obfuscated_obfuscation_shims_ROM_START = 0xF79E611F;
|
||||
|
||||
filemenu_ROM_START = 0x0016B550;
|
||||
filemenu_ROM_END = 0x01749F0;
|
||||
filemenu_VRAM = 0x80242370;
|
||||
@ -29,233 +27,15 @@ pause_RODATA_END = 0x8026F790;
|
||||
pause_BSS_START = 0x8026F790;
|
||||
pause_BSS_END = 0x80277D00;
|
||||
|
||||
sprite_shading_profiles_data_ROM_START = sprite_shading_profiles_ROM_START + 0x1D0;
|
||||
battle_heap_create_obfuscated_ROM_START = 0x31F1A0;
|
||||
obfuscation_shims_ROM_START = 0x31F340;
|
||||
battle_heap_create_obfuscated_ROM_END = 0x31F340;
|
||||
obfuscation_shims_ROM_END = 0x31F430;
|
||||
obfuscated_obfuscation_shims_VRAM = 0x7599F6D8;
|
||||
|
||||
osViModeNtscLan1 = 0x80095800;
|
||||
|
||||
osMemSize = 0x80000318;
|
||||
osTvType = 0x80000300;
|
||||
osMemSize = 0x80000318;
|
||||
osRomBase = 0x80000308;
|
||||
osResetType = 0x8000030C;
|
||||
osAppNMIBuffer = 0x8000031C;
|
||||
|
||||
// main.data
|
||||
|
||||
__osGetSR = 0x8006C650;
|
||||
__osHwIntTable = 0x800958A0;
|
||||
D_80074010 = 0x80073FF0;
|
||||
|
||||
// main.bss
|
||||
obfuscated_obfuscation_shims_ROM_START = 0xF79E611F;
|
||||
|
||||
// subsequent segments
|
||||
draw_box = 0x800F5470;
|
||||
HES_AsleepBegin = 0x80104E54;
|
||||
HES_AsleepEnd = 0x80104FF4;
|
||||
HES_ElectrifiedBegin = 0x80105238;
|
||||
HES_ElectrifiedEnd = 0x80105468;
|
||||
HES_ParalyzedBegin = 0x801056AC;
|
||||
HES_ParalyzedEnd = 0x801058DC;
|
||||
HES_DizzyBegin = 0x80105A90;
|
||||
HES_DizzyEnd = 0x80105C30;
|
||||
HES_PoisonedBegin = 0x80105DE4;
|
||||
HES_PoisonedEnd = 0x80105F84;
|
||||
HES_FrozenBegin = 0x80106138;
|
||||
HES_FrozenEnd = 0x801062D8;
|
||||
HES_WeakenedLoop = 0x80106430;
|
||||
HES_WeakenedBegin = 0x8010646C;
|
||||
HES_WeakenedEnd = 0x801065EC;
|
||||
HES_StoppedBegin = 0x801067A0;
|
||||
HES_StoppedEnd = 0x80106940;
|
||||
HES_ShrunkBegin = 0x80106AF4;
|
||||
HES_ShrunkEnd = 0x80106C94;
|
||||
HES_TransparentBegin = 0x80106E68;
|
||||
HES_TransparentEnd = 0x80107028;
|
||||
HES_BoostJumpBegin = 0x801071AC;
|
||||
HES_BoostJumpEnd = 0x8010730C;
|
||||
HES_BoostHammerBegin = 0x801074A4;
|
||||
HES_BoostHammerEnd = 0x80107604;
|
||||
HES_BoostPartner = 0x80107770;
|
||||
HES_Surprise = 0x8010779C;
|
||||
HES_Partner0 = 0x80107E38;
|
||||
HES_Partner0Disabled = 0x80107E60;
|
||||
HES_Goombario = 0x80107E88;
|
||||
HES_GoombarioDisabled = 0x80107EB0;
|
||||
HES_Kooper = 0x80107ED8;
|
||||
HES_KooperDisabled = 0x80107F00;
|
||||
HES_Bombette = 0x80107F28;
|
||||
HES_BombetteDisabled = 0x80107F50;
|
||||
HES_Parakarry = 0x80107F78;
|
||||
HES_ParakarryDisabled = 0x80107FA0;
|
||||
HES_Bow = 0x80107FC8;
|
||||
HES_BowDisabled = 0x80107FF0;
|
||||
HES_Watt = 0x80108018;
|
||||
HES_WattDisabled = 0x80108040;
|
||||
HES_Sushie = 0x80108068;
|
||||
HES_SushieDisabled = 0x80108090;
|
||||
HES_Lakilester = 0x801080B8;
|
||||
HES_LakilesterDisabled = 0x801080E0;
|
||||
HES_Partner9 = 0x80108108;
|
||||
HES_Partner9Disabled = 0x80108130;
|
||||
HES_PartnerA = 0x80108158;
|
||||
HES_PartnerADisabled = 0x80108180;
|
||||
HES_PartnerB = 0x801081A8;
|
||||
HES_PartnerBDisabled = 0x801081D0;
|
||||
HES_Peril = 0x80108B54;
|
||||
HES_Danger = 0x80108BA4;
|
||||
HES_MoveDiamond = 0x801094C8;
|
||||
HES_MoveDiamond_disabled = 0x80109568;
|
||||
spr_init_sprites = 0x80111448;
|
||||
spr_render_init = 0x801115B0;
|
||||
spr_update_player_sprite = 0x801115DC;
|
||||
spr_draw_player_sprite = 0x80111790;
|
||||
func_802DDEC4 = 0x80111A14;
|
||||
spr_load_npc_sprite = 0x80111C3C;
|
||||
spr_update_sprite = 0x80111DFC;
|
||||
spr_draw_npc_sprite = 0x80111F28;
|
||||
spr_get_notify_value = 0x80112118;
|
||||
spr_free_sprite = 0x80112138;
|
||||
set_npc_imgfx_all = 0x801123E4;
|
||||
spr_get_npc_palettes = 0x80112590;
|
||||
spr_get_npc_color_variations = 0x801125BC;
|
||||
update_entities = 0x801148E0;
|
||||
render_entities = 0x801150C4;
|
||||
get_entity_by_index = 0x801157F8;
|
||||
get_shadow_by_index = 0x80115814;
|
||||
clear_entity_data = 0x80115EC8;
|
||||
init_entity_data = 0x80116068;
|
||||
create_shadow_type = 0x80117470;
|
||||
delete_shadow = 0x80117538;
|
||||
entity_raycast_down = 0x801177F8;
|
||||
set_npc_shadow_scale = 0x80117B10;
|
||||
clear_game_modes = 0x80117DA8;
|
||||
set_game_mode_slot = 0x080117EB8;
|
||||
game_mode_set_fpDrawAuxUI = 0x80117F94;
|
||||
step_current_game_mode = 0x80118088;
|
||||
state_render_backUI = 0x80118168;
|
||||
state_render_frontUI = 0x801181D4;
|
||||
mdl_load_all_textures = 0x8011AE34;
|
||||
clear_model_data = 0x8011AF54;
|
||||
init_model_data = 0x8011B1F8;
|
||||
mdl_calculate_model_sizes = 0x8011B33C;
|
||||
iterate_models = 0x8011B884;
|
||||
mdl_update_transform_matrices = 0x8011B8A8;
|
||||
render_models = 0x8011BDA0;
|
||||
get_model_from_list_index = 0x8011FF40;
|
||||
load_data_for_models = 0x8011FF58;
|
||||
mdl_reset_transform_flags = 0x80120CF8;
|
||||
mdl_set_shroud_tint_params = 0x8012106C;
|
||||
mdl_get_shroud_tint_params = 0x80121090;
|
||||
mdl_set_all_tint_type = 0x80122A3C;
|
||||
clear_render_tasks = 0x80122AA0;
|
||||
queue_render_task = 0x80122B20;
|
||||
execute_render_tasks = 0x80122BC8;
|
||||
clear_animator_list = 0x80123434;
|
||||
reset_animator_list = 0x80123520;
|
||||
clear_entity_models = 0x80125DC0;
|
||||
init_entity_models = 0x80125E68;
|
||||
get_entity_model = 0x80127FEC;
|
||||
clear_worker_list = 0x801282C8;
|
||||
init_worker_list = 0x80128324;
|
||||
create_worker_world = 0x80128368;
|
||||
update_workers = 0x80128614;
|
||||
render_workers_world = 0x80128680;
|
||||
render_workers_frontUI = 0x801286F0;
|
||||
render_workers_backUI = 0x80128760;
|
||||
clear_character_set = 0x80128870;
|
||||
clear_printers = 0x80128884;
|
||||
update_messages = 0x80128A60;
|
||||
render_messages = 0x8012948C;
|
||||
get_msg_width = 0x8012B6D4;
|
||||
draw_msg = 0x8012B710;
|
||||
clear_item_entity_data = 0x80136170;
|
||||
init_item_entity_list = 0x80136244;
|
||||
make_item_entity = 0x80136564;
|
||||
make_item_entity_delayed = 0x80136C38;
|
||||
update_item_entities = 0x8013705C;
|
||||
render_item_entities = 0x80137FC4;
|
||||
is_picking_up_item = 0x8013933C;
|
||||
_render_transition_stencil = 0x8013BB30;
|
||||
set_screen_overlay_params_front = 0x8013CE38;
|
||||
set_screen_overlay_params_back = 0x8013CE54;
|
||||
set_screen_overlay_color = 0x8013CEC0;
|
||||
set_screen_overlay_center = 0x8013CEFC;
|
||||
set_screen_overlay_alpha = 0x8013D184;
|
||||
clear_screen_overlays = 0x8013D1B8;
|
||||
func_80138188 = 0x8013D238;
|
||||
func_80138198 = 0x8013D248;
|
||||
render_screen_overlay_frontUI = 0x8013D250;
|
||||
render_screen_overlay_backUI = 0x8013D2D0;
|
||||
set_map_transition_effect = 0x8013D350;
|
||||
update_exit_map_screen_overlay = 0x8013D35C;
|
||||
update_enter_map_screen_overlay = 0x8013D684;
|
||||
imgfx_update_cache = 0x8013F798;
|
||||
hud_element_clear_cache = 0x801461B0;
|
||||
init_hud_element_list = 0x801463B0;
|
||||
hud_element_create = 0x80146554;
|
||||
update_hud_elements = 0x801466C0;
|
||||
render_hud_elements_backUI = 0x801472C0;
|
||||
render_hud_elements_frontUI = 0x801477CC;
|
||||
render_transformed_hud_elements = 0x80148764;
|
||||
hud_element_draw_next = 0x80149874;
|
||||
hud_element_set_script = 0x801498AC;
|
||||
get_hud_element = 0x80149984;
|
||||
hud_element_free = 0x801499A4;
|
||||
hud_element_set_render_pos = 0x80149A34;
|
||||
hud_element_set_flags = 0x80149AB0;
|
||||
hud_element_clear_flags = 0x80149ADC;
|
||||
hud_element_set_aux_cache = 0x8014A398;
|
||||
clear_saved_variables = 0x8014A3D0;
|
||||
clear_area_flags = 0x8014A440;
|
||||
set_global_flag = 0x8014A500;
|
||||
get_global_flag = 0x8014A56C;
|
||||
clear_trigger_data = 0x8014A730;
|
||||
init_trigger_list = 0x8014A7D8;
|
||||
update_triggers = 0x8014A910;
|
||||
load_map_bg = 0x8014AE20;
|
||||
reset_background_settings = 0x8014AEA8;
|
||||
set_background = 0x8014AED8;
|
||||
set_background_size = 0x8014AF20;
|
||||
appendGfx_background_texture = 0x8014AF70;
|
||||
reset_ambient_sounds = 0x8014C2E0;
|
||||
update_ambient_sounds = 0x8014C314;
|
||||
clear_windows = 0x8014C4A0;
|
||||
update_windows = 0x8014C4C4;
|
||||
render_window_root = 0x8014CB74;
|
||||
set_window_properties = 0x8014CD78;
|
||||
set_window_update = 0x8014CF2C;
|
||||
set_windows_visible = 0x8014CF74;
|
||||
clear_sprite_shading_data = 0x8014D0F0;
|
||||
init_sprite_shading_data = 0x8014D1A0;
|
||||
sfx_reset_door_sounds = 0x8014E6B0;
|
||||
sfx_clear_sounds = 0x8014E6C8;
|
||||
sfx_clear_env_sounds = 0x8014E720;
|
||||
sfx_update_env_sound_params = 0x8014E7E4;
|
||||
sfx_set_reverb_mode = 0x8014E8AC;
|
||||
sfx_get_reverb_mode = 0x8014E8D8;
|
||||
sfx_stop_env_sounds = 0x8014E8E8;
|
||||
sfx_stop_sound = 0x8014ED1C;
|
||||
sfx_play_sound = 0x8014ED64;
|
||||
sfx_play_sound_at_position = 0x8014EE0C;
|
||||
bgm_reset_sequence_players = 0x8014F548;
|
||||
bgm_reset_volume = 0x8014F5DC;
|
||||
bgm_update_music_settings = 0x8014F5F8;
|
||||
bgm_set_song = 0x8014F9C8;
|
||||
bgm_init_music_players = 0x8014FCB8;
|
||||
bgm_quiet_max_volume = 0x8014FD0C;
|
||||
bgm_reset_max_volume = 0x8014FD20;
|
||||
bgm_pop_battle_song = 0x8014FF1C;
|
||||
bgm_push_battle_song = 0x8014FFA8;
|
||||
bgm_set_battle_song = 0x8015003C;
|
||||
gLastRenderTaskCount = 0x801508A0;
|
||||
D_8014C248 = 0x801512F8;
|
||||
gBackgroundTintModePtr = 0x80156350;
|
||||
gWindows = 0x8015ECD0;
|
||||
D_80164000 = 0x80164000;
|
||||
D_80197000 = 0x80197000;
|
||||
D_801A6000 = 0x801A6000;
|
||||
AuHeapBase = 0x801AA000;
|
||||
@ -280,71 +60,6 @@ shim_create_audio_system_obfuscated = 0x802B2000;
|
||||
shim_load_engine_data_obfuscated = 0x802B203C;
|
||||
shim_general_heap_create_obfuscated = 0x802B2078;
|
||||
shim_battle_heap_create_obfuscated = 0x802B20B4;
|
||||
clear_script_list = 0x802C31DC;
|
||||
init_script_list = 0x802C32EC;
|
||||
start_script = 0x802C33E0;
|
||||
start_script_in_group = 0x802C35D0;
|
||||
update_scripts = 0x802C3D74;
|
||||
func_802C3EE4 = 0x802C3EE4;
|
||||
kill_script = 0x802C3F3C;
|
||||
kill_script_by_ID = 0x802C40AC;
|
||||
does_script_exist = 0x802C4164;
|
||||
suspend_all_script = 0x802C4420;
|
||||
resume_all_script = 0x802C448C;
|
||||
suspend_all_group = 0x802C45E8;
|
||||
resume_all_group = 0x802C4648;
|
||||
get_script_by_id = 0x802C47A8;
|
||||
set_script_flags = 0x802C47E8;
|
||||
clear_script_flags = 0x802C4880;
|
||||
evt_get_variable = 0x802C7ABC;
|
||||
evt_set_variable = 0x802C8098;
|
||||
evt_get_float_variable = 0x802C842C;
|
||||
resolve_npc = 0x802CDAC0;
|
||||
CreateNpc = 0x802CDBA4;
|
||||
DeleteNpc = 0x802CDC1C ;
|
||||
SetNpcPos = 0x802CDCB0;
|
||||
SetNpcRotation = 0x802CDDB0;
|
||||
SetNpcAnimation = 0x802CE0F4;
|
||||
SetNpcYaw = 0x802CEA84;
|
||||
SetNpcFlagBits = 0x802CF060;
|
||||
GetNpcPos = 0x802CF0F4;
|
||||
SetNpcImgFXParams = 0x802CFD30;
|
||||
GetPlayerPos = 0x802D1DFC;
|
||||
PlaySound = 0x802D6150;
|
||||
D_802D9D70 = 0x802D9D70;
|
||||
D_802D9D71 = 0x802D9D71;
|
||||
ui_msg_frame_a_1_1_png = 0x802E7110;
|
||||
ui_msg_frame_a_1_2_png = 0x802E7130;
|
||||
ui_msg_frame_a_1_3_png = 0x802E7150;
|
||||
ui_msg_frame_a_1_4_png = 0x802E7170;
|
||||
ui_msg_frame_a_1_5_png = 0x802E7190;
|
||||
ui_msg_frame_a_2_1_png = 0x802E71B0;
|
||||
ui_msg_frame_a_2_5_png = 0x802E71D0;
|
||||
ui_msg_frame_a_3_1_png = 0x802E71F0;
|
||||
ui_msg_frame_a_3_5_png = 0x802E7210;
|
||||
ui_msg_frame_a_4_1_png = 0x802E7230;
|
||||
ui_msg_frame_a_4_5_png = 0x802E7250;
|
||||
ui_msg_frame_a_5_1_png = 0x802E7270;
|
||||
ui_msg_frame_a_5_2_png = 0x802E7290;
|
||||
ui_msg_frame_a_5_3_png = 0x802E72B0;
|
||||
ui_msg_frame_a_5_4_png = 0x802E72D0;
|
||||
ui_msg_frame_a_5_5_png = 0x802E72F0;
|
||||
ui_msg_frame_b_1_1_png = 0x802E7310;
|
||||
ui_msg_frame_b_1_2_png = 0x802E7330;
|
||||
ui_msg_frame_b_1_3_png = 0x802E7350;
|
||||
ui_msg_frame_b_1_4_png = 0x802E7370;
|
||||
ui_msg_frame_b_1_5_png = 0x802E7390;
|
||||
ui_msg_frame_b_2_1_png = 0x802E73B0;
|
||||
ui_msg_frame_b_2_5_png = 0x802E73D0;
|
||||
ui_msg_frame_b_3_1_png = 0x802E73F0;
|
||||
ui_msg_frame_b_3_5_png = 0x802E7410;
|
||||
ui_msg_frame_b_4_1_png = 0x802E7430;
|
||||
ui_msg_frame_b_4_5_png = 0x802E7450;
|
||||
ui_msg_frame_b_5_1_png = 0x802E7470;
|
||||
ui_msg_frame_b_5_2_png = 0x802E7490;
|
||||
ui_msg_frame_b_5_3_png = 0x802E74B0;
|
||||
ui_msg_frame_b_5_4_png = 0x802E74D0;
|
||||
ui_msg_frame_b_5_5_png = 0x802E74F0;
|
||||
heap_generalHead = 0x802FB800;
|
||||
gFrameBuf0 = 0x8038F800;
|
||||
gFrameBuf1 = 0x803B5000;
|
||||
@ -1053,51 +768,17 @@ pulse_stone_ROM_END = 0xE2B440;
|
||||
i_spy_ROM_START = 0xE2B440;
|
||||
i_spy_ROM_END = 0xE2C0F0;
|
||||
|
||||
set_player_imgfx_comp = 0x80111A34;
|
||||
set_player_imgfx_all = 0x80111B48;
|
||||
WorldTattleInteractionID = 0x802BDF60;
|
||||
set_standard_shadow_scale = 0x80117A6C;
|
||||
set_peach_shadow_scale = 0x80117BE4;
|
||||
gCollisionStatus = 0x8015F4D0;
|
||||
should_collider_allow_interact = 0x8014AD98;
|
||||
interact_inspect_setup = 0x802B70B4;
|
||||
appendGfx_interact_prompt = 0x802B71E8;
|
||||
gCurrentHiddenPanels = 0x8015F4F8;
|
||||
ispy_notification_setup = 0x802b72c0;
|
||||
world_watt_sync_held_position = 0x802BE06C;
|
||||
get_entity_type = 0x801158B4;
|
||||
appendGfx_speech_bubble = 0x802B71C8;
|
||||
interact_speech_setup = 0x802B70B4;
|
||||
appendGfx_pulse_stone_icon = 0x802B71D4;
|
||||
appendGfx_ispy_icon = 0x802b7000;
|
||||
exec_ShakeCam1 = 0x802CB56C;
|
||||
pulse_stone_notification_setup = 0x802B7140;
|
||||
sfx_play_sound_at_player = 0x8014ED88;
|
||||
world_lakilester_can_dismount = 0x802BD7DC;
|
||||
hide_popup_menu = 0x800f1340;
|
||||
destroy_popup_menu = 0x800f14c8;
|
||||
create_standard_popup_menu = 0x800f4fd4;
|
||||
HES_StatusHP = 0x801083D8;
|
||||
HES_StatusHeart = 0x801086A8;
|
||||
HES_StatusFP = 0x80108400;
|
||||
HES_StatusFlower = 0x801086C8;
|
||||
HES_StatusCoin = 0x801086E8;
|
||||
HES_StatusStarPoint = 0x8010883C;
|
||||
HES_StatusSPShine = 0x80104D7C;
|
||||
func_800F0D5C = 0x800F0CEC;
|
||||
HES_StatusSPEmptyIncrement = 0x80108540;
|
||||
HES_StatusStarEmpty = 0x80108680;
|
||||
copy_world_hud_element_ref_to_battle = 0x8014a364;
|
||||
hud_element_set_tint = 0x80149fac;
|
||||
get_worker = 0x8012884c;
|
||||
create_worker_frontUI = 0x8012844c;
|
||||
func_800F0CB0 = 0x800f0c40;
|
||||
func_800F102C = 0x800F0FBC;
|
||||
func_800F0D80 = 0x800F0D10;
|
||||
hud_element_draw_clipped = 0x80149858;
|
||||
draw_number = 0x8012c8b0;
|
||||
basic_hidden_window_update = 0x8014C624;
|
||||
basic_window_update = 0x8014C524;
|
||||
|
||||
action_update_idle = 0x802B6000;
|
||||
world_action_idle_ROM_START = 0xE2C0F0;
|
||||
@ -1166,39 +847,6 @@ action_update_ride = 0x802B6000;
|
||||
action_update_step_up = 0x802B6000;
|
||||
action_update_state_23 = 0x802B609C;
|
||||
|
||||
HES_MenuTimes = 0x80109400;
|
||||
|
||||
HES_StatusDigit0 = 0x80108248;
|
||||
HES_StatusDigit1 = 0x80108270;
|
||||
HES_StatusDigit2 = 0x80108298;
|
||||
HES_StatusDigit3 = 0x801082C0;
|
||||
HES_StatusDigit4 = 0x801082E8;
|
||||
HES_StatusDigit5 = 0x80108310;
|
||||
HES_StatusDigit6 = 0x80108338;
|
||||
HES_StatusDigit7 = 0x80108360;
|
||||
HES_StatusDigit8 = 0x80108388;
|
||||
HES_StatusDigit9 = 0x801083B0;
|
||||
|
||||
HES_StatusSlash = 0x80108220;
|
||||
HES_StatusTimes = 0x801081F8;
|
||||
|
||||
HES_StatusSPIncrement1 = 0x80108428;
|
||||
HES_StatusSPIncrement2 = 0x80108450;
|
||||
HES_StatusSPIncrement3 = 0x80108478;
|
||||
HES_StatusSPIncrement4 = 0x801084A0;
|
||||
HES_StatusSPIncrement5 = 0x801084C8;
|
||||
HES_StatusSPIncrement6 = 0x801084F0;
|
||||
HES_StatusSPIncrement7 = 0x80108518;
|
||||
HES_StatusSPIncrement8 = 0x80108540;
|
||||
|
||||
HES_StatusStar1 = 0x80108568;
|
||||
HES_StatusStar2 = 0x80108590;
|
||||
HES_StatusStar3 = 0x801085B8;
|
||||
HES_StatusStar4 = 0x801085E0;
|
||||
HES_StatusStar5 = 0x80108608;
|
||||
HES_StatusStar6 = 0x80108630;
|
||||
HES_StatusStar7 = 0x80108658;
|
||||
|
||||
world_use_item_ROM_START = 0x32d500;
|
||||
world_use_item_ROM_END = 0x32ddd0;
|
||||
world_use_item_VRAM = 0x802C0000;
|
||||
@ -1324,4 +972,181 @@ EVS_WorldTwink_Update = 0x802BD20C;
|
||||
EVS_WorldTwink_UseAbility = 0x802BD228;
|
||||
EVS_WorldTwink_PutAway = 0x802BD244;
|
||||
|
||||
D_80109610_JP = 0x80109610;
|
||||
heap_spriteHead = 0x8034F800;
|
||||
gCurrentModelTreeNodeInfo = 0x8009A5D4;
|
||||
sprite_shading_profiles_ROM_START = 0x0031DF90;
|
||||
Entity_UltraBlockContent_Render = 0x0A000800;
|
||||
entity_model_SimpleSpring_gfx_ROM_END = 0x00E72BD0;
|
||||
Entity_SaveBlock_RenderNone = 0x0A003508;
|
||||
entity_model_BlueSwitch_ROM_END = 0x00E6D750;
|
||||
Entity_HitYellowBlock_Mesh = 0x00000084;
|
||||
entity_model_Hammer3Block_ROM_END = 0x00E3B2A0;
|
||||
entity_model_SimpleSpring_anim_ROM_END = 0x00E74030;
|
||||
Entity_SuperBlockContent_Render2 = 0x0A000380;
|
||||
Entity_Chest_RenderBox = 0x0A000EB8;
|
||||
Entity_InertYellowBlock_Render = 0x0A0004E0;
|
||||
entity_model_HitYellowBlock_gfx_ROM_END = 0x00E4FC90;
|
||||
Entity_SaveBlock_RenderBlock = 0x0A0034F0;
|
||||
entity_model_UltraBlockContent_ROM_END = 0x00E54160;
|
||||
Entity_HitFloatingYellowBlock_AnimationIdle = 0x0000022C;
|
||||
entity_model_PowBlock_ROM_START = 0x00E4C9A0;
|
||||
entity_model_ShatteringHammer1Block_ROM_END = 0x00E3E4F0;
|
||||
Entity_Signpost_Render = 0x0A000A68;
|
||||
entity_model_BlueWarpPipe_ROM_END = 0x00E62300;
|
||||
entity_model_Hammer1Block_ROM_START = 0x00E3A3B0;
|
||||
entity_model_HitRedBlock_anim_ROM_END = 0x00E52CC0;
|
||||
D_0A000240_E4A8E0 = 0x0A000240;
|
||||
entity_model_WoodenCrate_ROM_START = 0x00E5A4C0;
|
||||
entity_model_Hammer2Block_ROM_END = 0x00E3ADB0;
|
||||
Entity_HeartBlock_Render = 0x0A000918;
|
||||
Entity_Hammer2Block_Render = 0x0A0004F0;
|
||||
Entity_HitRedBlock_AnimationHit = 0x00000094;
|
||||
Entity_BrickBlock_Render = 0x0A0004A0;
|
||||
Entity_SuperBlockContent_Render = 0x0A000328;
|
||||
entity_model_SuperBlockContent_ROM_START = 0x00E53520;
|
||||
entity_model_InertRedBlock_ROM_START = 0x00E4B5C0;
|
||||
entity_model_SuperBlockContent_ROM_END = 0x00E53900;
|
||||
entity_model_Hammer3Block_ROM_START = 0x00E3ADB0;
|
||||
Entity_ScriptSpring_AnimLaunch = 0x000001E4;
|
||||
entity_model_Chest_ROM_START = 0x00E6D750;
|
||||
Entity_GreenStompSwitch_Render = 0x0A000740;
|
||||
entity_model_HiddenPanel_ROM_END = 0x00E5FCE0;
|
||||
entity_model_ShatteringBrickBlock_ROM_END = 0x00E4B0C0;
|
||||
Entity_Chest_LidMtx = 0x0A000C48;
|
||||
Entity_HeartBlockContent_RenderHeartHappy = 0x0A000808;
|
||||
entity_model_GreenStompSwitch_ROM_END = 0x00E6B940;
|
||||
Entity_HeartBlockContent_RenderHeartSleeping = 0x0A000700;
|
||||
entity_model_RedBlock_ROM_END = 0x00E45C50;
|
||||
Entity_SaveBlock_RenderContent = 0x0A0034E0;
|
||||
Entity_HeartBlockContent_RenderHeartAwake = 0x0A0007B0;
|
||||
D_0A000220_E4A8C0 = 0x0A000220;
|
||||
entity_model_PowBlock_ROM_END = 0x00E4D680;
|
||||
entity_model_ShatteringBrickBlock_ROM_START = 0x00E470E0;
|
||||
Entity_HitYellowBlock_AnimationHit = 0x00000094;
|
||||
entity_model_YellowBlock_ROM_END = 0x00E451A0;
|
||||
entity_model_HitFloatingYellowBlock_anim_ROM_START = 0x00E51370;
|
||||
Entity_PushBlock_Render = 0x0A000338;
|
||||
entity_model_ScriptSpring_gfx_ROM_START = 0x00E6E620;
|
||||
Entity_InertRedBlock_Render = 0x0A000A90;
|
||||
entity_model_ShatteringHammer3Block_ROM_START = 0x00E41710;
|
||||
Entity_Hammer3Block_Render = 0x0A0004E0;
|
||||
entity_model_Chest_ROM_END = 0x00E6E620;
|
||||
entity_model_RedBlock_ROM_START = 0x00E451A0;
|
||||
entity_model_BrickBlock_ROM_START = 0x00E46C30;
|
||||
entity_model_HitFloatingYellowBlock_anim_ROM_END = 0x00E51600;
|
||||
entity_model_InertYellowBlock_ROM_END = 0x00E4B5C0;
|
||||
Entity_WoodenCrate_Render = 0x0A004338;
|
||||
entity_model_ShatteringHammer3Block_ROM_END = 0x00E446F0;
|
||||
entity_model_HitYellowBlock_anim_ROM_START = 0x00E4FC90;
|
||||
entity_model_HitRedBlock_gfx_ROM_END = 0x00E52A60;
|
||||
entity_model_UltraBlock_ROM_START = 0x00E4DF90;
|
||||
entity_model_BrickBlock_ROM_END = 0x00E470E0;
|
||||
entity_model_HeartBlockContent_ROM_END = 0x00E53520;
|
||||
Entity_SuperBlock_Render = 0x0A0008F8;
|
||||
Gfx_HiddenPanel_Render = 0x0A000280;
|
||||
entity_model_HitRedBlock_anim_ROM_START = 0x00E52A60;
|
||||
Entity_ShatteringHammer1Block_FragmentsMatrices = 0x0A001508;
|
||||
entity_model_HeartBlock_ROM_START = 0x00E4C070;
|
||||
Entity_ShatteringHammer3Block_FragmentsRender = 0x0A002F78;
|
||||
Entity_UltraBlockContent_Render2 = 0x0A000750;
|
||||
Entity_Chest_RenderLid = 0x0A000DC0;
|
||||
Entity_WoodenCrate_FragmentsMatrices = 0x0A0026F0;
|
||||
Entity_SimpleSpring_Mesh = 0x000001B8;
|
||||
entity_model_ShatteringHammer2Block_ROM_END = 0x00E41710;
|
||||
entity_model_SaveBlock_ROM_END = 0x00E57670;
|
||||
entity_model_GreenStompSwitch_ROM_START = 0x00E6B1F0;
|
||||
entity_model_ShatteringHammer1Block_ROM_START = 0x00E3B2A0;
|
||||
Gfx_AltHiddenPanel_RenderTop = 0x0A0001B0;
|
||||
entity_model_SimpleSpring_anim_ROM_START = 0x00E72BD0;
|
||||
entity_model_Hammer2Block_ROM_START = 0x00E3A8B0;
|
||||
entity_model_PushBlock_ROM_END = 0x00E46C30;
|
||||
entity_model_InertRedBlock_ROM_END = 0x00E4C070;
|
||||
Entity_BlueSwitch_Render = 0x0A000EF8;
|
||||
entity_model_PushBlock_ROM_START = 0x00E468E0;
|
||||
entity_model_BlueSwitch_ROM_START = 0x00E6C840;
|
||||
Entity_RedBlock_Render = 0x0A000A90;
|
||||
Entity_RedSwitch_Render = 0x0A000EE8;
|
||||
entity_model_HitFloatingYellowBlock_gfx_ROM_END = 0x00E51370;
|
||||
entity_model_HitYellowBlock_anim_ROM_END = 0x00E4FF30;
|
||||
entity_model_HitRedBlock_gfx_ROM_START = 0x00E51600;
|
||||
entity_model_HitFloatingYellowBlock_gfx_ROM_START = 0x00E4FF30;
|
||||
Entity_BlueWarpPipe_RenderBase = 0x0A000680;
|
||||
entity_model_ScriptSpring_anim_ROM_END = 0x00E71400;
|
||||
Entity_ShatteringHammer2Block_FragmentsRender = 0x0A0031B0;
|
||||
entity_model_HeartBlock_ROM_END = 0x00E4C9A0;
|
||||
Gfx_HiddenPanel_Render2 = 0x0A0002A0;
|
||||
entity_model_Hammer1Block_ROM_END = 0x00E3A8B0;
|
||||
entity_model_Signpost_ROM_END = 0x00E62D80;
|
||||
entity_model_SuperBlock_ROM_END = 0x00E4DF90;
|
||||
entity_model_ScriptSpring_gfx_ROM_END = 0x00E6FFA0;
|
||||
entity_model_Signpost_ROM_START = 0x00E62300;
|
||||
entity_model_UltraBlockContent_ROM_START = 0x00E53900;
|
||||
entity_model_InertYellowBlock_ROM_START = 0x00E4B0C0;
|
||||
Entity_ShatteringBrickBlock_FragmentsRender = 0x0A003F70;
|
||||
entity_model_SuperBlock_ROM_START = 0x00E4D680;
|
||||
Entity_PowBlock_Render = 0x0A000CC8;
|
||||
Entity_ShatteringBrickBlock_FragmentsMatrices = 0x0A002318;
|
||||
Entity_Hammer1Block_Render = 0x0A0004F0;
|
||||
entity_model_UltraBlock_ROM_END = 0x00E4E870;
|
||||
entity_model_YellowBlock_ROM_START = 0x00E446F0;
|
||||
Gfx_HiddenPanel_RenderHole = 0x0A000230;
|
||||
entity_model_HeartBlockContent_ROM_START = 0x00E52CC0;
|
||||
D_0A000260_E4A900 = 0x0A000260;
|
||||
Entity_ScriptSpring_AnimIdle = 0x0000131C;
|
||||
entity_model_BlueWarpPipe_ROM_START = 0x00E61B50;
|
||||
Entity_HitRedBlock_Mesh = 0x00000084;
|
||||
Entity_BlueWarpPipe_RenderPipe = 0x0A0006B8;
|
||||
Entity_SimpleSpring_AnimLaunch = 0x000001E4;
|
||||
Entity_YellowBlock_Render = 0x0A000A90;
|
||||
entity_model_WoodenCrate_ROM_END = 0x00E5E8C0;
|
||||
entity_model_HitYellowBlock_gfx_ROM_START = 0x00E4E870;
|
||||
Entity_ShatteringHammer3Block_FragmentsMatrices = 0x0A001218;
|
||||
Entity_ShatteringHammer1Block_FragmentsRender = 0x0A0031E0;
|
||||
Gfx_HiddenPanel_RenderTop = 0x0A000180;
|
||||
entity_model_ScriptSpring_anim_ROM_START = 0x00E6FFA0;
|
||||
entity_model_HiddenPanel_ROM_START = 0x00E5FA20;
|
||||
Entity_UltraBlock_Render = 0x0A0008C8;
|
||||
Entity_HitFloatingYellowBlock_Mesh = 0x00000084;
|
||||
entity_model_RedSwitch_ROM_END = 0x00E6C840;
|
||||
Entity_ShatteringHammer2Block_FragmentsMatrices = 0x0A0014D8;
|
||||
Entity_HitYellowBlock_AnimationIdle = 0x0000023C;
|
||||
Entity_ScriptSpring_Mesh = 0x000001B8;
|
||||
Entity_SimpleSpring_AnimIdle = 0x0000131C;
|
||||
Entity_SaveBlock_Mtx = 0x0A003260;
|
||||
D_0A000200_E4A8A0 = 0x0A000200;
|
||||
entity_model_RedSwitch_ROM_START = 0x00E6B940;
|
||||
entity_model_SimpleSpring_gfx_ROM_START = 0x00E71400;
|
||||
Entity_WoodenCrate_FragmentsRender = 0x0A004350;
|
||||
entity_model_ShatteringHammer2Block_ROM_START = 0x00E3E4F0;
|
||||
entity_model_SaveBlock_ROM_START = 0x00E54160;
|
||||
|
||||
entity_default_ROM_START = 0x00E343B0;
|
||||
BattleEntityHeapBottom = 0x801A7000;
|
||||
entity_jan_iwa_ROM_START = 0x00E365B0;
|
||||
entity_sbk_omo_ROM_END = 0x00E3A3B0;
|
||||
ClearRenderTaskLists = 0x802B7E00;
|
||||
entity_default_ROM_END = 0x00E365B0;
|
||||
entity_sbk_omo_ROM_START = 0x00E385D0;
|
||||
TextureHeap = 0x8028E000;
|
||||
entity_jan_iwa_ROM_END = 0x00E385D0;
|
||||
flip_card_1_header = 0x000C0490;
|
||||
horizontal_pipe_curl_header = 0x0001E830;
|
||||
shock_header = 0x00014358;
|
||||
tutankoopa_swirl_2_header = 0x000A1820;
|
||||
flutter_down_header = 0x000314E0;
|
||||
tutankoopa_swirl_1_header = 0x000ACDE8;
|
||||
unused_1_header = 0x0005B7A8;
|
||||
tutankoopa_gather_header = 0x00096258;
|
||||
imgfx_data_ROM_START = 0x00253C00;
|
||||
vertical_pipe_curl_header = 0x0001A858;
|
||||
flip_card_2_header = 0x000C49B8;
|
||||
flip_card_3_header = 0x000C6150;
|
||||
shuffle_cards_header = 0x000BBF68;
|
||||
unfurl_header = 0x00033498;
|
||||
spirit_capture_header = 0x00039228;
|
||||
unused_2_header = 0x0007CF10;
|
||||
unused_3_header = 0x00086490;
|
||||
cymbal_crush_header = 0x000CA380;
|
||||
startle_header = 0x00029458;
|
||||
get_in_bed_header = 0x00038988;
|
||||
shiver_header = 0x00018200;
|
||||
|
@ -557,6 +557,7 @@ segments:
|
||||
- [auto, c, entity_model]
|
||||
- [auto, c, worker]
|
||||
- [auto, c, msg]
|
||||
- [auto, c, msg_draw]
|
||||
- [auto, c, draw_img_util]
|
||||
- [auto, c, item_entity]
|
||||
- [auto, c, screen_overlays]
|
||||
@ -577,6 +578,7 @@ segments:
|
||||
- [auto, .data, animator]
|
||||
- [auto, .data, entity_model]
|
||||
- [auto, .data, msg]
|
||||
- [auto, .data, msg_draw]
|
||||
- [auto, .data, draw_img_util]
|
||||
- [auto, .data, item_entity]
|
||||
- start: 0xE1610
|
||||
|
@ -7,11 +7,75 @@
|
||||
|
||||
.section .rodata
|
||||
|
||||
dlabel jtbl_80099D80
|
||||
.word 0x141818, 0x1C1C1C1C, 0x20202020, 0x20202020, 0x40808, 0xC0C0C0C, 0x10101010, 0x10101010
|
||||
__osIntOffTable:
|
||||
.byte 0x00
|
||||
.byte 0x14
|
||||
.byte 0x18
|
||||
.byte 0x18
|
||||
.byte 0x1C
|
||||
.byte 0x1C
|
||||
.byte 0x1C
|
||||
.byte 0x1C
|
||||
.byte 0x20
|
||||
.byte 0x20
|
||||
.byte 0x20
|
||||
.byte 0x20
|
||||
.byte 0x20
|
||||
.byte 0x20
|
||||
.byte 0x20
|
||||
.byte 0x20
|
||||
.byte 0x00
|
||||
.byte 0x04
|
||||
.byte 0x08
|
||||
.byte 0x08
|
||||
.byte 0x0C
|
||||
.byte 0x0C
|
||||
.byte 0x0C
|
||||
.byte 0x0C
|
||||
.byte 0x10
|
||||
.byte 0x10
|
||||
.byte 0x10
|
||||
.byte 0x10
|
||||
.byte 0x10
|
||||
.byte 0x10
|
||||
.byte 0x10
|
||||
.byte 0x10
|
||||
.size __osIntOffTable, . - __osIntOffTable
|
||||
|
||||
dlabel jtbl_80099DA0
|
||||
.word .L8006AF00_46300, .L8006AEC4_462C4, .L8006AEA0_462A0, .L8006ACC8_460C8, .L8006AC80_46080, .L8006AE3C_4623C, .L8006AC44_46044, .L8006AC50_46050, .L8006AC5C_4605C, 0, 0, 0
|
||||
__osIntTable:
|
||||
.word .L8006AF00_46300
|
||||
.word .L8006AEC4_462C4
|
||||
.word .L8006AEA0_462A0
|
||||
.word .L8006ACC8_460C8
|
||||
.word .L8006AC80_46080
|
||||
.word .L8006AE3C_4623C
|
||||
.word .L8006AC44_46044
|
||||
.word .L8006AC50_46050
|
||||
.word .L8006AC5C_4605C
|
||||
.word 0x00000000
|
||||
.word 0x00000000
|
||||
.word 0x00000000
|
||||
.size __osIntTable, . - __osIntTable
|
||||
|
||||
.section .data
|
||||
|
||||
__osHwIntTable:
|
||||
.word 0x00000000
|
||||
.word 0x00000000
|
||||
.word 0x00000000
|
||||
.word 0x00000000
|
||||
.word 0x00000000
|
||||
.word 0x00000000
|
||||
.word 0x00000000
|
||||
.word 0x00000000
|
||||
.word 0x00000000
|
||||
.word 0x00000000
|
||||
.size __osHwIntTable, . - __osHwIntTable
|
||||
|
||||
__osPiIntTable:
|
||||
.word 0x00000000
|
||||
.word 0x00000000
|
||||
.size __osPiIntTable, . - __osPiIntTable
|
||||
|
||||
.section .text, "ax"
|
||||
|
||||
@ -166,12 +230,12 @@ glabel func_8006AA34
|
||||
/* 4601C 8006AC1C 00095202 */ srl $t2, $t1, 8
|
||||
/* 46020 8006AC20 214A0010 */ addi $t2, $t2, 0x10
|
||||
.L8006AC24:
|
||||
/* 46024 8006AC24 3C01800A */ lui $at, %hi(jtbl_80099D80)
|
||||
/* 46024 8006AC24 3C01800A */ lui $at, %hi(__osIntOffTable)
|
||||
/* 46028 8006AC28 002A0821 */ addu $at, $at, $t2
|
||||
/* 4602C 8006AC2C 902A9D80 */ lbu $t2, %lo(jtbl_80099D80)($at)
|
||||
/* 46030 8006AC30 3C01800A */ lui $at, %hi(jtbl_80099DA0)
|
||||
/* 4602C 8006AC2C 902A9D80 */ lbu $t2, %lo(__osIntOffTable)($at)
|
||||
/* 46030 8006AC30 3C01800A */ lui $at, %hi(__osIntTable)
|
||||
/* 46034 8006AC34 002A0821 */ addu $at, $at, $t2
|
||||
/* 46038 8006AC38 8C2A9DA0 */ lw $t2, %lo(jtbl_80099DA0)($at)
|
||||
/* 46038 8006AC38 8C2A9DA0 */ lw $t2, %lo(__osIntTable)($at)
|
||||
/* 4603C 8006AC3C 01400008 */ jr $t2
|
||||
/* 46040 8006AC40 00000000 */ nop
|
||||
.L8006AC44_46044:
|
||||
@ -195,8 +259,8 @@ glabel func_8006AA34
|
||||
.L8006AC80_46080:
|
||||
/* 46080 8006AC80 2401F7FF */ addiu $at, $zero, -0x801
|
||||
/* 46084 8006AC84 02018024 */ and $s0, $s0, $at
|
||||
/* 46088 8006AC88 3C098009 */ lui $t1, %hi(D_80095910)
|
||||
/* 4608C 8006AC8C 25295910 */ addiu $t1, $t1, %lo(D_80095910)
|
||||
/* 46088 8006AC88 3C098009 */ lui $t1, %hi(__osHwIntTable)
|
||||
/* 4608C 8006AC8C 25295910 */ addiu $t1, $t1, %lo(__osHwIntTable)
|
||||
/* 46090 8006AC90 21290008 */ addi $t1, $t1, 8
|
||||
/* 46094 8006AC94 8D2A0000 */ lw $t2, ($t1)
|
||||
/* 46098 8006AC98 11400007 */ beqz $t2, .L8006ACB8
|
||||
@ -285,8 +349,8 @@ glabel func_8006AA34
|
||||
/* 461C8 8006ADC8 24090002 */ addiu $t1, $zero, 2
|
||||
/* 461CC 8006ADCC 3C01A460 */ lui $at, %hi(D_A4600010)
|
||||
/* 461D0 8006ADD0 AC290010 */ sw $t1, %lo(D_A4600010)($at)
|
||||
/* 461D4 8006ADD4 3C098009 */ lui $t1, %hi(D_80095938)
|
||||
/* 461D8 8006ADD8 25295938 */ addiu $t1, $t1, %lo(D_80095938)
|
||||
/* 461D4 8006ADD4 3C098009 */ lui $t1, %hi(__osPiIntTable)
|
||||
/* 461D8 8006ADD8 25295938 */ addiu $t1, $t1, %lo(__osPiIntTable)
|
||||
/* 461DC 8006ADDC 8D2A0000 */ lw $t2, ($t1)
|
||||
/* 461E0 8006ADE0 11400006 */ beqz $t2, .L8006ADFC
|
||||
/* 461E4 8006ADE4 00000000 */ nop
|
||||
|
@ -427,6 +427,7 @@ segments:
|
||||
- [auto, .data, os/contpfs]
|
||||
- [auto, .data, os/contramread]
|
||||
- [auto, .data, os/initialize]
|
||||
- [auto, .data, os/exceptasm]
|
||||
- [auto, .data, os/xlitob]
|
||||
- [auto, .data, os/vi]
|
||||
- [auto, .data, os/pfsisplug]
|
||||
@ -888,6 +889,7 @@ segments:
|
||||
- [auto, c, entity_model]
|
||||
- [auto, c, worker]
|
||||
- [auto, c, msg]
|
||||
- [auto, c, msg_draw]
|
||||
- [auto, c, draw_img_util]
|
||||
- [auto, c, item_entity]
|
||||
- [auto, c, screen_overlays]
|
||||
@ -908,6 +910,7 @@ segments:
|
||||
- [auto, .data, animator]
|
||||
- [auto, .data, entity_model]
|
||||
- [auto, .data, msg]
|
||||
- [auto, .data, msg_draw]
|
||||
- [auto, .data, draw_img_util]
|
||||
- [auto, .data, item_entity]
|
||||
- start: 0xE2DF0
|
||||
|
Loading…
Reference in New Issue
Block a user