diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/battle_transition.h | 32 | ||||
-rw-r--r-- | include/bg.h | 2 | ||||
-rw-r--r-- | include/field_camera.h | 1 | ||||
-rw-r--r-- | include/field_effect.h | 1 | ||||
-rw-r--r-- | include/gba/io_reg.h | 55 | ||||
-rw-r--r-- | include/overworld.h | 2 | ||||
-rw-r--r-- | include/unk_transition.h | 13 |
7 files changed, 89 insertions, 17 deletions
diff --git a/include/battle_transition.h b/include/battle_transition.h index 84b5e37ec..0d6ef3c83 100644 --- a/include/battle_transition.h +++ b/include/battle_transition.h @@ -1,12 +1,27 @@ #ifndef GUARD_BATTLE_TRANSITION_H #define GUARD_BATTLE_TRANSITION_H -void sub_8149DFC(u8 a1); -void BattleTransition_StartOnField(u8 transitionID); -void BattleTransition_Start(u8 transitionID); +void TestBattleTransition(u8 transitionId); +void BattleTransition_StartOnField(u8 transitionId); +void BattleTransition_Start(u8 transitionId); bool8 IsBattleTransitionDone(void); +bool8 FldEff_Pokeball(void); +void TransitionPhase1_Task_RunFuncs(u8 taskId); +void sub_8149F58(u16 **a0, u16 **a1); -// credits for the names go to Dyskinesia and Tetrable +extern const struct SpritePalette gFieldEffectObjectPaletteInfo10; + +enum // TRANSITION_MUGSHOT +{ + MUGSHOT_SYDNEY, + MUGSHOT_PHOEBE, + MUGSHOT_GLACIA, + MUGSHOT_DRAKE, + MUGSHOT_CHAMPION, + MUGSHOTS_COUNT +}; + +// credits for the names go to Dyskinesia, Tetrable and Farore // names are naturally subject to change #define B_TRANSITION_BLUR 0 @@ -35,10 +50,10 @@ bool8 IsBattleTransitionDone(void); #define B_TRANSITION_KYOGRE 22 #define B_TRANSITION_GROUDON 23 #define B_TRANSITION_RAYQUAZA 24 -#define B_TRANSITION_25 25 -#define B_TRANSITION_26 26 -#define B_TRANSITION_27 27 -#define B_TRANSITION_28 28 +#define B_TRANSITION_SHRED_SPLIT 25 +#define B_TRANSITION_BLACKHOLE1 26 +#define B_TRANSITION_BLACKHOLE2 27 +#define B_TRANSITION_RECTANGULAR_SPIRAL 28 #define B_TRANSITION_29 29 #define B_TRANSITION_30 30 #define B_TRANSITION_31 31 @@ -52,5 +67,6 @@ bool8 IsBattleTransitionDone(void); #define B_TRANSITION_39 39 #define B_TRANSITION_40 40 #define B_TRANSITION_41 41 +#define B_TRANSITION_COUNT 42 #endif // GUARD_BATTLE_TRANSITION_H diff --git a/include/bg.h b/include/bg.h index 0c6b4ac26..de3897fa4 100644 --- a/include/bg.h +++ b/include/bg.h @@ -70,7 +70,7 @@ void CopyToBgTilemapBuffer(u8 bg, const void *src, u16 mode, u16 destOffset); void CopyBgTilemapBufferToVram(u8 bg); void CopyToBgTilemapBufferRect(u8 bg, void* src, u8 destX, u8 destY, u8 width, u8 height); void CopyToBgTilemapBufferRect_ChangePalette(u8 bg, void *src, u8 destX, u8 destY, u8 rectWidth, u8 rectHeight, u8 palette); -void CopyRectToBgTilemapBufferRect(u8 bg, void* src, u8 srcX, u8 srcY, u8 srcWidth, u8 srcHeight, u8 destX, u8 destY, u8 rectWidth, u8 rectHeight, u8 palette1, u16 tileOffset, u16 palette2); +void CopyRectToBgTilemapBufferRect(u8 bg, const void *src, u8 srcX, u8 srcY, u8 srcWidth, u8 srcHeight, u8 destX, u8 destY, u8 rectWidth, u8 rectHeight, u8 palette1, u16 tileOffset, u16 palette2); void FillBgTilemapBufferRect_Palette0(u8 bg, u16 tileNum, u8 x, u8 y, u8 width, u8 height); void FillBgTilemapBufferRect(u8 bg, u16 tileNum, u8 x, u8 y, u8 width, u8 height, u8 palette); void WriteSequenceToBgTilemapBuffer(u8 bg, u16 firstTileNum, u8 x, u8 y, u8 width, u8 height, u8 paletteSlot, s16 tileNumDelta); diff --git a/include/field_camera.h b/include/field_camera.h index f68c67854..6daa9a8a2 100644 --- a/include/field_camera.h +++ b/include/field_camera.h @@ -24,6 +24,7 @@ extern u16 gUnknown_03005DE8; void DrawWholeMapView(void); void CurrentMapDrawMetatileAt(int x, int y); +void sub_8089C08(s16 *a0, s16 *a1); void DrawDoorMetatileAt(int x, int y, u16 *arr); #endif //GUARD_FIELD_CAMERA_H diff --git a/include/field_effect.h b/include/field_effect.h index fb0f20f6f..1fdcbe22c 100644 --- a/include/field_effect.h +++ b/include/field_effect.h @@ -75,6 +75,7 @@ u32 FieldEffectStart(u8); bool8 FieldEffectActiveListContains(u8 id); void sub_80B69DC(void); void FieldEffectStop(struct Sprite *sprite, u8 id); +u8 CreateTrainerSprite(u8 trainerSpriteID, s16 x, s16 y, u8 subpriority, u8 *buffer); void sub_80B7FC8(void); void FieldEffectActiveListRemove(u8 id); diff --git a/include/gba/io_reg.h b/include/gba/io_reg.h index f86f2434c..0364c38bc 100644 --- a/include/gba/io_reg.h +++ b/include/gba/io_reg.h @@ -501,12 +501,12 @@ // I/O register fields // DISPCNT -#define DISPCNT_MODE_0 0x0000 -#define DISPCNT_MODE_1 0x0001 -#define DISPCNT_MODE_2 0x0002 -#define DISPCNT_MODE_3 0x0003 -#define DISPCNT_MODE_4 0x0004 -#define DISPCNT_MODE_5 0x0005 +#define DISPCNT_MODE_0 0x0000 // BG0: text, BG1: text, BG2: text, BG3: text +#define DISPCNT_MODE_1 0x0001 // BG0: text, BG1: text, BG2: affine, BG3: off +#define DISPCNT_MODE_2 0x0002 // BG0: off, BG1: off, BG2: affine, BG3: affine +#define DISPCNT_MODE_3 0x0003 // Bitmap mode, 240x160, BGR555 color +#define DISPCNT_MODE_4 0x0004 // Bitmap mode, 240x160, 256 color palette +#define DISPCNT_MODE_5 0x0005 // Bitmap mode, 160x128, BGR555 color #define DISPCNT_OBJ_1D_MAP 0x0040 #define DISPCNT_FORCED_BLANK 0x0080 #define DISPCNT_BG0_ON 0x0100 @@ -527,7 +527,46 @@ #define DISPSTAT_HBLANK_INTR 0x0010 // H-Blank interrupt enabled #define DISPSTAT_VCOUNT_INTR 0x0020 // V-Count interrupt enabled +// BGCNT +#define BGCNT_PRIORITY(n) (n) // Values 0 - 3. Lower priority BGs will be drawn on top of higher priority BGs. +#define BGCNT_CHARBASE(n) ((n) << 2) // Values 0 - 3. Base block for tile pixel data. +#define BGCNT_MOSAIC 0x0040 +#define BGCNT_16COLOR 0x0000 // 4 bits per pixel +#define BGCNT_256COLOR 0x0080 // 8 bits per pixel +#define BGCNT_SCREENBASE(n) ((n) << 8) // Values 0 - 31. Base block for tile map. +#define BGCNT_WRAP 0x2000 // Only affects affine BGs. Text BGs wrap by default. +#define BGCNT_TXT256x256 0x0000 // Internal screen size size of text mode BG in pixels. +#define BGCNT_TXT512x256 0x4000 +#define BGCNT_TXT256x512 0x8000 +#define BGCNT_TXT512x512 0xC000 +#define BGCNT_AFF128x128 0x0000 // Internal screen size size of affine mode BG in pixels. +#define BGCNT_AFF256x256 0x4000 +#define BGCNT_AFF512x512 0x8000 +#define BGCNT_AFF1024x1024 0xC000 + // BLDCNT +// Bits 0-5 select layers for the 1st target +#define BLDCNT_TGT1_BG0 (1 << 0) +#define BLDCNT_TGT1_BG1 (1 << 1) +#define BLDCNT_TGT1_BG2 (1 << 2) +#define BLDCNT_TGT1_BG3 (1 << 3) +#define BLDCNT_TGT1_OBJ (1 << 4) +#define BLDCNT_TGT1_BD (1 << 5) +// Bits 6-7 select the special effect +#define BLDCNT_EFFECT_NONE (0 << 6) // no special effect +#define BLDCNT_EFFECT_BLEND (1 << 6) // 1st+2nd targets mixed (controlled by BLDALPHA) +#define BLDCNT_EFFECT_LIGHTEN (2 << 6) // 1st target becomes whiter (controlled by BLDY) +#define BLDCNT_EFFECT_DARKEN (3 << 6) // 1st target becomes blacker (controlled by BLDY) +// Bits 8-13 select layers for the 2nd target +#define BLDCNT_TGT2_BG0 (1 << 8) +#define BLDCNT_TGT2_BG1 (1 << 9) +#define BLDCNT_TGT2_BG2 (1 << 10) +#define BLDCNT_TGT2_BG3 (1 << 11) +#define BLDCNT_TGT2_OBJ (1 << 12) +#define BLDCNT_TGT2_BD (1 << 13) + +// BLDALPHA +#define BLDALPHA_BLEND(target1, target2) (((target2) << 8) | (target1)) // SOUNDCNT_H #define SOUND_CGB_MIX_QUARTER 0x0000 @@ -627,8 +666,8 @@ #define KEY_INTR_ENABLE 0x0400 #define KEY_OR_INTR 0x0000 #define KEY_AND_INTR 0x8000 - -#define DPAD_ANY ((DPAD_RIGHT | DPAD_LEFT | DPAD_UP | DPAD_DOWN)) +#define DPAD_ANY ((DPAD_RIGHT | DPAD_LEFT | DPAD_UP | DPAD_DOWN)) +#define JOY_EXCL_DPAD 0x030F // interrupt flags #define INTR_FLAG_VBLANK (1 << 0) diff --git a/include/overworld.h b/include/overworld.h index d6f90b666..597a160ed 100644 --- a/include/overworld.h +++ b/include/overworld.h @@ -74,4 +74,6 @@ void mapldr_default(void); void IncrementGameStat(u8); u32 GetGameStat(u8); +void CB2_OverworldBasic(void); + #endif //GUARD_ROM4_H diff --git a/include/unk_transition.h b/include/unk_transition.h new file mode 100644 index 000000000..a9caac419 --- /dev/null +++ b/include/unk_transition.h @@ -0,0 +1,13 @@ +#ifndef GUARD_UNK_TRANSITION_H +#define GUARD_UNK_TRANSITION_H + +void Phase2Task_34(u8 taskId); +void Phase2Task_35(u8 taskId); +void Phase2Task_36(u8 taskId); +void Phase2Task_37(u8 taskId); +void Phase2Task_38(u8 taskId); +void Phase2Task_39(u8 taskId); +void Phase2Task_40(u8 taskId); +void Phase2Task_41(u8 taskId); + +#endif // GUARD_UNK_TRANSITION_H |