summaryrefslogtreecommitdiff
path: root/predef
diff options
context:
space:
mode:
Diffstat (limited to 'predef')
-rw-r--r--predef/cgb.asm543
-rwxr-xr-xpredef/crystal.asm614
-rw-r--r--predef/sgb.asm389
3 files changed, 1081 insertions, 465 deletions
diff --git a/predef/cgb.asm b/predef/cgb.asm
index 300ca9f9a..9a24dfce1 100644
--- a/predef/cgb.asm
+++ b/predef/cgb.asm
@@ -11,15 +11,14 @@ Predef_LoadSGBLayoutCGB: ; 8d59
cp SCGB_RAM
jr nz, .not_ram
ld a, [SGBPredef]
-
.not_ram
- cp SCGB_FC
- jp z, Function96f3
+ cp SCGB_PARTY_MENU_HP_PALS
+ jp z, CGB_ApplyPartyMenuHPPals
call Function9673
ld l, a
ld h, 0
add hl, hl
- ld de, .jumptable
+ ld de, .dw
add hl, de
ld a, [hli]
ld h, [hl]
@@ -33,17 +32,17 @@ Predef_LoadSGBLayoutCGB: ; 8d59
ret
; 8d7a
-.jumptable: ; 8d7a
- dw _CGB00
- dw _CGB01
- dw _CGB02
- dw _CGB03
+.dw: ; 8d7a
+ dw _CGB_BattleGrayscale
+ dw _CGB_BattleColors
+ dw _CGB_PokegearPals
+ dw _CGB_StatsScreenHPPals
dw _CGB04
- dw _CGB05
+ dw _CGB_SlotMachine
dw _CGB06
dw _CGB07
dw _CGB08
- dw _CGB09
+ dw _CGB_MapPals
dw _CGB0a
dw _CGB0b
dw _CGB0c
@@ -54,73 +53,70 @@ Predef_LoadSGBLayoutCGB: ; 8d59
dw _CGB11
dw _CGB12
dw _CGB13
- dw _CGB14
- dw _CGB15
+ dw _CGB_PackPals
+ dw _CGB_TrainerCard
dw _CGB16
dw _CGB17
dw _CGB18
dw _CGB19
dw _CGB1a
dw _CGB1b
- dw _CGB1c
+ dw _CGB_FrontpicPals
dw _CGB1d
dw _CGB1e
; 8db8
-_CGB00: ; 8db8
+_CGB_BattleGrayscale: ; 8db8
ld hl, PalPacket_9c66 + 1
ld de, UnknBGPals
ld c, $4
call CopyPalettes
ld hl, PalPacket_9c66 + 1
- ld de, UnknBGPals + $20
+ ld de, UnknBGPals + 4 palettes
ld c, $4
call CopyPalettes
ld hl, PalPacket_9c66 + 1
ld de, UnknOBPals
ld c, $2
call CopyPalettes
- jr Function8e23
+ jr _CGB_FinishBattleScreenLayout
-_CGB01: ; 8ddb
+_CGB_BattleColors: ; 8ddb
ld de, UnknBGPals
- call Function9729
+ call GetBattlemonBackpicPalettePointer
push hl
- call Function9643
- call Function973a
+ call LoadPalette_White_Col1_Col2_Black
+ call GetEnemyFrontpicPalettePointer
push hl
- call Function9643
+ call LoadPalette_White_Col1_Col2_Black
ld a, [EnemyHPPal]
ld l, a
ld h, $0
-rept 2
add hl, hl
-endr
+ add hl, hl
ld bc, Palettes_a8be
add hl, bc
- call Function9643
+ call LoadPalette_White_Col1_Col2_Black
ld a, [PlayerHPPal]
ld l, a
ld h, $0
-rept 2
add hl, hl
-endr
+ add hl, hl
ld bc, Palettes_a8be
add hl, bc
- call Function9643
+ call LoadPalette_White_Col1_Col2_Black
ld hl, Palettes_a8ca
- call Function9643
+ call LoadPalette_White_Col1_Col2_Black
ld de, UnknOBPals
pop hl
- call Function9643
+ call LoadPalette_White_Col1_Col2_Black
pop hl
- call Function9643
- ld a, SCGB_01
+ call LoadPalette_White_Col1_Col2_Black
+ ld a, SCGB_BATTLE_COLORS
ld [SGBPredef], a
- call Function96a4
-
-Function8e23: ; 8e23
- call Function8e85
+ call ApplyPals
+_CGB_FinishBattleScreenLayout: ; 8e23
+ call InitPartyMenuBGPal7
hlcoord 0, 0, AttrMap
ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
ld a, $2
@@ -150,111 +146,112 @@ Function8e23: ; 8e23
ld a, $7
call ByteFill
ld hl, Palettes_979c
- ld de, UnknOBPals + $10
- ld bc, $0030
+ ld de, UnknOBPals + 2 palettes
+ ld bc, 6 palettes
ld a, $5
call FarCopyWRAM
- call Function96b3
+ call ApplyAttrMap
ret
; 8e85
-Function8e85: ; 8e85
+InitPartyMenuBGPal7: ; 8e85
callba Function100dc0
-
-Function8e8b: ; 8e8b
+Mobile_InitPartyMenuBGPal7: ; 8e8b
ld hl, Palette_b311
- jr nc, .asm_8e93
+ jr nc, .not_mobile
ld hl, Palette_b309
-
-.asm_8e93
+.not_mobile
ld de, UnknBGPals + 8 * 7
- ld bc, $0008
+ ld bc, 1 palettes
ld a, $5
call FarCopyWRAM
ret
; 8e9f
-Function8e9f: ; 8e9f
+InitPartyMenuBGPal0: ; 8e9f
callba Function100dc0
ld hl, Palette_b311
- jr nc, .asm_8ead
+ jr nc, .not_mobile
ld hl, Palette_b309
-
-.asm_8ead
+.not_mobile
ld de, UnknBGPals
- ld bc, $0008
+ ld bc, 1 palettes
ld a, $5
call FarCopyWRAM
ret
; 8eb9
-_CGB02: ; 8eb9
+_CGB_PokegearPals: ; 8eb9
ld a, [PlayerGender]
bit 0, a
- jr z, .asm_8ec5
- ld hl, Palettes_b759
- jr .asm_8ec8
-
-.asm_8ec5
- ld hl, Palettes_b729
+ jr z, .male
+ ld hl, FemalePokegearPals
+ jr .got_pals
-.asm_8ec8
+.male
+ ld hl, MalePokegearPals
+.got_pals
ld de, UnknBGPals
- ld bc, $0030
+ ld bc, 6 palettes
ld a, $5
call FarCopyWRAM
- call Function96a4
+ call ApplyPals
ld a, $1
ld [hCGBPalUpdate], a
ret
; 8edb
-_CGB03: ; 8edb
+_CGB_StatsScreenHPPals: ; 8edb
ld de, UnknBGPals
ld a, [wcda1]
ld l, a
ld h, $0
-rept 2
add hl, hl
-endr
+ add hl, hl
ld bc, Palettes_a8be
add hl, bc
- call Function9643
+ call LoadPalette_White_Col1_Col2_Black
ld a, [CurPartySpecies]
ld bc, TempMonDVs
- call Function974b
- call Function9643
+ call GetPlayerOrMonPalettePointer
+ call LoadPalette_White_Col1_Col2_Black
ld hl, Palettes_a8ca
- call Function9643
+ call LoadPalette_White_Col1_Col2_Black
ld hl, Palette8f52
ld de, UnknBGPals + 8 * 3
- ld bc, $0018
+ ld bc, 3 palettes
ld a, $5
call FarCopyWRAM
- call Function9699
+ call WipeAttrMap
+
hlcoord 0, 0, AttrMap
lb bc, 8, SCREEN_WIDTH
ld a, $1
call FillBoxCGB
+
hlcoord 10, 16, AttrMap
- ld bc, $000a
+ ld bc, 10
ld a, $2
call ByteFill
+
hlcoord 13, 5, AttrMap
lb bc, 2, 2
ld a, $3
call FillBoxCGB
+
hlcoord 15, 5, AttrMap
lb bc, 2, 2
ld a, $4
call FillBoxCGB
+
hlcoord 17, 5, AttrMap
lb bc, 2, 2
ld a, $5
call FillBoxCGB
- call Function96b3
- call Function96a4
+
+ call ApplyAttrMap
+ call ApplyPals
ld a, $1
ld [hCGBPalUpdate], a
ret
@@ -277,7 +274,7 @@ Palette8f52: ; 8f52
RGB 00, 00, 00
; 8f6a
-Unknown_8f6a: ; 8f6a
+StatsScreenPals: ; 8f6a
RGB 31, 19, 31
RGB 21, 31, 14
@@ -288,33 +285,32 @@ Unknown_8f6a: ; 8f6a
_CGB04: ; 8f70
ld de, UnknBGPals
ld a, $1d
- call GetAthPalletFromPalettes9df6
+ call GetPredefPal
call LoadHLPaletteIntoDE
ld a, [CurPartySpecies]
cp $ff
- jr nz, .asm_8f8a
+ jr nz, .is_pokemon
ld hl, Palette8fba
call LoadHLPaletteIntoDE
- jr .asm_8f90
+ jr .got_palette
-.asm_8f8a
- call Function9775
- call Function9643
-
-.asm_8f90
- call Function9699
+.is_pokemon
+ call GetMonPalettePointer_
+ call LoadPalette_White_Col1_Col2_Black
+.got_palette
+ call WipeAttrMap
hlcoord 1, 1, AttrMap
lb bc, 7, 7
ld a, $1
call FillBoxCGB
- call Function971a
+ call InitPartyMenuOBPals
ld hl, Palette8fc2
- ld de, UnknOBPals + $38
- ld bc, $0008
+ ld de, UnknOBPals + 7 palettes
+ ld bc, 1 palettes
ld a, $5
call FarCopyWRAM
- call Function96b3
- call Function96a4
+ call ApplyAttrMap
+ call ApplyPals
ld a, $1
ld [hCGBPalUpdate], a
ret
@@ -336,29 +332,28 @@ Palette8fc2: ; 8fc2
_CGB17: ; 8fca
ld de, UnknBGPals
ld a, $1d
- call GetAthPalletFromPalettes9df6
+ call GetPredefPal
call LoadHLPaletteIntoDE
ld a, [CurPartySpecies]
cp $ff
- jr nz, .asm_8fe4
+ jr nz, .GetMonPalette
ld hl, Palette9036
call LoadHLPaletteIntoDE
- jr .asm_8fed
+ jr .Resume
-.asm_8fe4
+.GetMonPalette
ld bc, TempMonDVs
- call Function974b
- call Function9643
-
-.asm_8fed
- call Function9699
+ call GetPlayerOrMonPalettePointer
+ call LoadPalette_White_Col1_Col2_Black
+.Resume
+ call WipeAttrMap
hlcoord 1, 4, AttrMap
lb bc, 7, 7
ld a, $1
call FillBoxCGB
- call Function971a
- call Function96b3
- call Function96a4
+ call InitPartyMenuOBPals
+ call ApplyAttrMap
+ call ApplyPals
ld a, $1
ld [hCGBPalUpdate], a
ret
@@ -369,19 +364,19 @@ Function9009: ; 9009
call LoadHLPaletteIntoDE
jr .asm_901a
+.unused
ld bc, TempMonDVs
- call Function974b
- call Function9643
-
+ call GetPlayerOrMonPalettePointer
+ call LoadPalette_White_Col1_Col2_Black
.asm_901a
- call Function9699
+ call WipeAttrMap
hlcoord 1, 1, AttrMap
lb bc, 7, 7
ld a, $1
call FillBoxCGB
- call Function971a
- call Function96b3
- call Function96a4
+ call InitPartyMenuOBPals
+ call ApplyAttrMap
+ call ApplyPals
ld a, $1
ld [hCGBPalUpdate], a
ret
@@ -397,31 +392,31 @@ Palette9036: ; 9036
_CGB16: ; 903e
ld de, UnknBGPals
ld a, $1d
- call GetAthPalletFromPalettes9df6
+ call GetPredefPal
call LoadHLPaletteIntoDE
ld a, [CurPartySpecies]
- call Function9775
- call Function9643
- call Function9699
+ call GetMonPalettePointer_
+ call LoadPalette_White_Col1_Col2_Black
+ call WipeAttrMap
hlcoord 7, 5, AttrMap
lb bc, 7, 7
ld a, $1
call FillBoxCGB
- call Function971a
- call Function96b3
- call Function96a4
+ call InitPartyMenuOBPals
+ call ApplyAttrMap
+ call ApplyPals
ld a, $1
ld [hCGBPalUpdate], a
ret
; 906e
-_CGB05: ; 906e
+_CGB_SlotMachine: ; 906e
ld hl, Palettes_b7a9
ld de, UnknBGPals
- ld bc, $0080
+ ld bc, $80
ld a, $5
call FarCopyWRAM
- call Function9699
+ call WipeAttrMap
hlcoord 0, 2, AttrMap
lb bc, 10, 3
ld a, $2
@@ -459,11 +454,11 @@ _CGB05: ; 906e
ld a, $1
call FillBoxCGB
hlcoord 0, 12, AttrMap
- ld bc, $0078
+ ld bc, $78
ld a, $7
call ByteFill
- call Function96b3
- call Function96a4
+ call ApplyAttrMap
+ call ApplyPals
ld a, $1
ld [hCGBPalUpdate], a
ret
@@ -472,17 +467,17 @@ _CGB05: ; 906e
_CGB06: ; 90f8
ld hl, PalPacket_9ca6 + 1
call CopyFourPalettes
- call Function9699
+ call WipeAttrMap
ld de, UnknOBPals
ld a, $3c
- call GetAthPalletFromPalettes9df6
+ call GetPredefPal
call LoadHLPaletteIntoDE
hlcoord 0, 6, AttrMap
lb bc, 12, SCREEN_WIDTH
ld a, $1
call FillBoxCGB
- call Function96b3
- call Function96a4
+ call ApplyAttrMap
+ call ApplyPals
ld a, $1
ld [hCGBPalUpdate], a
ret
@@ -491,9 +486,8 @@ _CGB06: ; 90f8
_CGB07: ; 9122
ld b, 0
ld hl, Jumptable_912d
-rept 2
add hl, bc
-endr
+ add hl, bc
ld a, [hli]
ld h, [hl]
ld l, a
@@ -512,10 +506,10 @@ Function9133: ; 9133
call LoadHLPaletteIntoDE
ld hl, Palette_9156
ld de, UnknOBPals
- ld bc, $0010
+ ld bc, 2 palettes
ld a, $5
call FarCopyWRAM
- call Function9699
+ call WipeAttrMap
ret
; 914e
@@ -540,13 +534,14 @@ Palette_9156: ; 9156
Function9166: ; 9166
ld de, UnknBGPals
ld a, $38
- call GetAthPalletFromPalettes9df6
+ call GetPredefPal
call LoadHLPaletteIntoDE
+
ld de, UnknOBPals
ld a, $39
- call GetAthPalletFromPalettes9df6
+ call GetPredefPal
call LoadHLPaletteIntoDE
- call Function9699
+ call WipeAttrMap
ret
; 9180
@@ -555,40 +550,41 @@ Function9180: ; 9180
call CopyFourPalettes
ld de, UnknOBPals
ld a, $3a
- call GetAthPalletFromPalettes9df6
+ call GetPredefPal
call LoadHLPaletteIntoDE
- call Function9699
+ call WipeAttrMap
ret
; 9195
_CGB11: ; 9195
ld hl, Palettes_b789
ld de, UnknBGPals
- ld bc, $0028
+ ld bc, 5 palettes
ld a, $5
call FarCopyWRAM
- call Function96a4
- call Function9699
- call Function96b3
+ call ApplyPals
+ call WipeAttrMap
+ call ApplyAttrMap
ret
; 91ad
_CGB08: ; 91ad
ld hl, Palettes_b641
ld de, UnknBGPals
- ld bc, $0080
+ ld bc, 16 palettes
ld a, $5
call FarCopyWRAM
+
ld hl, PalPacket_9cb6 + 1
call CopyFourPalettes
- call Function9699
- call Function96b3
+ call WipeAttrMap
+ call ApplyAttrMap
ret
; 91c8
-_CGB09: ; 91c8
- call Functionb1de
- ld a, SCGB_09
+_CGB_MapPals: ; 91c8
+ call LoadMapPals
+ ld a, SCGB_MAPPALS
ld [SGBPredef], a
ret
; 91d1
@@ -596,10 +592,10 @@ _CGB09: ; 91c8
_CGB0a: ; 91d1
ld hl, PalPacket_9c56 + 1
call CopyFourPalettes
- call Function8e9f
- call Function8e85
- call Function971a
- call Function96b3
+ call InitPartyMenuBGPal0
+ call InitPartyMenuBGPal7
+ call InitPartyMenuOBPals
+ call ApplyAttrMap
ret
; 91e4
@@ -607,13 +603,13 @@ _CGB0b: ; 91e4
ld de, UnknBGPals
ld a, c
and a
- jr z, .asm_91f5
+ jr z, .pokemon
ld a, $1a
- call GetAthPalletFromPalettes9df6
+ call GetPredefPal
call LoadHLPaletteIntoDE
- jr .asm_921a
+ jr .got_palette
-.asm_91f5
+.pokemon
ld hl, PartyMon1DVs
ld bc, PARTYMON_STRUCT_LENGTH
ld a, [CurPartyMon]
@@ -621,18 +617,18 @@ _CGB0b: ; 91e4
ld c, l
ld b, h
ld a, [PlayerHPPal]
- call Function974b
- call Function9643
+ call GetPlayerOrMonPalettePointer
+ call LoadPalette_White_Col1_Col2_Black
ld hl, Palettes_979c
- ld de, UnknOBPals + $10
- ld bc, $0030
+ ld de, UnknOBPals + 2 palettes
+ ld bc, 6 palettes
ld a, $5
call FarCopyWRAM
-.asm_921a
- call Function9699
- call Function96b3
- call Function96a4
+.got_palette
+ call WipeAttrMap
+ call ApplyAttrMap
+ call ApplyPals
ld a, $1
ld [hCGBPalUpdate], a
ret
@@ -641,17 +637,17 @@ _CGB0b: ; 91e4
_CGB0c: ; 9228
ld hl, Palettes_b6f1
ld de, UnknBGPals
- ld bc, $0028
+ ld bc, 5 palettes
ld a, $5
call FarCopyWRAM
ld hl, Palettes_b719
ld de, UnknOBPals
- ld bc, $0010
+ ld bc, 2 palettes
ld a, $5
call FarCopyWRAM
ld a, SCGB_08
ld [SGBPredef], a
- call Function96a4
+ call ApplyPals
ld a, $1
ld [hCGBPalUpdate], a
ret
@@ -660,8 +656,8 @@ _CGB0c: ; 9228
_CGB0d: ; 9251
ld hl, PalPacket_9cb6 + 1
call CopyFourPalettes
- call Function9699
- call Function96b3
+ call WipeAttrMap
+ call ApplyAttrMap
ret
; 925e
@@ -670,7 +666,7 @@ _CGB18: ; 925e
call CopyFourPalettes
ld de, UnknOBPals
ld a, $4c
- call GetAthPalletFromPalettes9df6
+ call GetPredefPal
call LoadHLPaletteIntoDE
ld a, [rSVBK]
push af
@@ -683,59 +679,58 @@ _CGB18: ; 925e
ld [hl], a
pop af
ld [rSVBK], a
- call Function9699
- call Function96b3
+ call WipeAttrMap
+ call ApplyAttrMap
ret
; 9289
-_CGB15: ; 9289
+_CGB_TrainerCard: ; 9289
ld de, UnknBGPals
xor a
- call Function976b
- call Function9643
+ call GetTrainerPalettePointer
+ call LoadPalette_White_Col1_Col2_Black
ld a, $1
- call Function976b
- call Function9643
+ call GetTrainerPalettePointer
+ call LoadPalette_White_Col1_Col2_Black
ld a, $3
- call Function976b
- call Function9643
+ call GetTrainerPalettePointer
+ call LoadPalette_White_Col1_Col2_Black
ld a, $2
- call Function976b
- call Function9643
+ call GetTrainerPalettePointer
+ call LoadPalette_White_Col1_Col2_Black
ld a, $4
- call Function976b
- call Function9643
+ call GetTrainerPalettePointer
+ call LoadPalette_White_Col1_Col2_Black
ld a, $7
- call Function976b
- call Function9643
+ call GetTrainerPalettePointer
+ call LoadPalette_White_Col1_Col2_Black
ld a, $6
- call Function976b
- call Function9643
+ call GetTrainerPalettePointer
+ call LoadPalette_White_Col1_Col2_Black
ld a, $5
- call Function976b
- call Function9643
+ call GetTrainerPalettePointer
+ call LoadPalette_White_Col1_Col2_Black
ld a, $24
- call GetAthPalletFromPalettes9df6
+ call GetPredefPal
call LoadHLPaletteIntoDE
+
hlcoord 0, 0, AttrMap
ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
ld a, [PlayerGender]
and a
ld a, $1
- jr z, .asm_92e3
+ jr z, .got_gender
ld a, $0
-
-.asm_92e3
+.got_gender
call ByteFill
hlcoord 14, 1, AttrMap
lb bc, 7, 5
ld a, [PlayerGender]
and a
ld a, $0
- jr z, .asm_92f6
+ jr z, .got_gender2
ld a, $1
-
-.asm_92f6
+.got_gender2
call FillBoxCGB
hlcoord 18, 1, AttrMap
ld [hl], $1
@@ -770,24 +765,22 @@ _CGB15: ; 9289
ld a, [PlayerGender]
and a
push af
- jr z, .asm_935d
+ jr z, .got_gender3
hlcoord 14, 14, AttrMap
lb bc, 2, 4
ld a, $1
call FillBoxCGB
-
-.asm_935d
+.got_gender3
pop af
ld c, $0
- jr nz, .asm_9363
+ jr nz, .got_gender4
inc c
-
-.asm_9363
+.got_gender4
ld a, c
hlcoord 18, 1, AttrMap
ld [hl], a
- call Function96b3
- call Function96a4
+ call ApplyAttrMap
+ call ApplyPals
ld a, $1
ld [hCGBPalUpdate], a
ret
@@ -796,24 +789,23 @@ _CGB15: ; 9289
_CGB0e: ; 9373
ld de, UnknBGPals
ld a, $10
- call GetAthPalletFromPalettes9df6
+ call GetPredefPal
call LoadHLPaletteIntoDE
ld a, [PlayerHPPal]
ld l, a
ld h, 0
-rept 2
add hl, hl
-endr
+ add hl, hl
ld bc, Palettes_a8be
add hl, bc
- call Function9643
- call Function9699
+ call LoadPalette_White_Col1_Col2_Black
+ call WipeAttrMap
hlcoord 11, 1, AttrMap
lb bc, 2, 9
ld a, $1
call FillBoxCGB
- call Function96b3
- call Function96a4
+ call ApplyAttrMap
+ call ApplyPals
ld a, $1
ld [hCGBPalUpdate], a
ret
@@ -822,9 +814,9 @@ endr
_CGB0f: ; 93a6
ld hl, PalPacket_9c46 + 1
call CopyFourPalettes
- call Function9699
- call Function96b3
- call Function96a4
+ call WipeAttrMap
+ call ApplyAttrMap
+ call ApplyPals
ld a, $1
ld [hCGBPalUpdate], a
ret
@@ -833,37 +825,38 @@ _CGB0f: ; 93a6
_CGB10: ; 93ba
ld de, UnknBGPals
ld a, $1d
- call GetAthPalletFromPalettes9df6
+ call GetPredefPal
call LoadHLPaletteIntoDE
- call Function9699
- call Function96b3
- call Function96a4
+ call WipeAttrMap
+ call ApplyAttrMap
+ call ApplyPals
ld a, $1
ld [hCGBPalUpdate], a
ret
; 93d3
-_CGB14: ; 93d3
+_CGB_PackPals: ; 93d3
+; pack pals
ld a, [BattleType]
cp BATTLETYPE_TUTORIAL
- jr z, .asm_93e6
+ jr z, .tutorial_male
ld a, [PlayerGender]
bit 0, a
- jr z, .asm_93e6
+ jr z, .tutorial_male
- ld hl, Palettes_9469
- jr .asm_93e9
+ ld hl, .KrisPackPals
+ jr .got_gender
-.asm_93e6
- ld hl, Palettes_9439
+.tutorial_male
+ ld hl, .ChrisPackPals
-.asm_93e9
+.got_gender
ld de, UnknBGPals
- ld bc, $0040
+ ld bc, 8 palettes ; 6 palettes?
ld a, $5
call FarCopyWRAM
- call Function9699
+ call WipeAttrMap
hlcoord 0, 0, AttrMap
lb bc, 1, 10
ld a, $1
@@ -884,61 +877,71 @@ _CGB14: ; 93d3
lb bc, 3, 5
ld a, $5
call FillBoxCGB
- call Function96b3
- call Function96a4
+ call ApplyAttrMap
+ call ApplyPals
ld a, $1
ld [hCGBPalUpdate], a
ret
; 9439
-Palettes_9439: ; 9439
+.ChrisPackPals: ; 9439
RGB 31, 31, 31
RGB 15, 15, 31
RGB 00, 00, 31
RGB 00, 00, 00
+
RGB 31, 31, 31
RGB 15, 15, 31
RGB 00, 00, 31
RGB 00, 00, 00
+
RGB 31, 11, 31
RGB 15, 15, 31
RGB 00, 00, 31
RGB 00, 00, 00
+
RGB 31, 31, 31
RGB 15, 15, 31
RGB 00, 00, 31
RGB 31, 00, 00
+
RGB 31, 31, 31
RGB 15, 15, 31
RGB 31, 00, 00
RGB 00, 00, 00
+
RGB 31, 31, 31
RGB 07, 19, 07
RGB 07, 19, 07
RGB 00, 00, 00
; 9469
-Palettes_9469: ; 9469
+.KrisPackPals: ; 9469
RGB 31, 31, 31
RGB 31, 14, 31
RGB 31, 07, 31
RGB 00, 00, 00
+
RGB 31, 31, 31
RGB 31, 14, 31
RGB 31, 07, 31
RGB 00, 00, 00
+
RGB 15, 15, 31
RGB 31, 14, 31
RGB 31, 07, 31
RGB 00, 00, 00
+
RGB 31, 31, 31
RGB 31, 14, 31
RGB 31, 07, 31
RGB 31, 00, 00
+
RGB 31, 31, 31
RGB 31, 14, 31
RGB 31, 00, 00
RGB 00, 00, 00
+
RGB 31, 31, 31
RGB 07, 19, 07
RGB 07, 19, 07
@@ -946,18 +949,18 @@ Palettes_9469: ; 9469
; 9499
_CGB12: ; 9499
- call _CGB09
- ld de, $0014
+ call _CGB_MapPals
+ ld de, SCREEN_WIDTH
hlcoord 0, 0, AttrMap
ld a, [wMenuBorderTopCoord]
-.asm_94a5
+.loop
and a
- jr z, .asm_94ac
+ jr z, .found_top
dec a
add hl, de
- jr .asm_94a5
+ jr .loop
-.asm_94ac
+.found_top
ld a, [wMenuBorderLeftCoord]
ld e, a
ld d, $0
@@ -976,14 +979,14 @@ _CGB12: ; 9499
ld c, a
ld a, $0
call FillBoxCGB
- call Function96b3
+ call ApplyAttrMap
ret
; 94d0
_CGB13: ; 94d0
ld hl, PalPacket_9ba6 + 1
call CopyFourPalettes
- call Function9699
+ call WipeAttrMap
hlcoord 0, 4, AttrMap
lb bc, 10, SCREEN_WIDTH
ld a, $2
@@ -992,8 +995,8 @@ _CGB13: ; 94d0
lb bc, 6, SCREEN_WIDTH
ld a, $1
call FillBoxCGB
- call Function96b3
- call Function96a4
+ call ApplyAttrMap
+ call ApplyPals
ld a, $1
ld [hCGBPalUpdate], a
ret
@@ -1002,21 +1005,21 @@ _CGB13: ; 94d0
_CGB19: ; 94fa
ld de, UnknBGPals
ld a, $4e
- call GetAthPalletFromPalettes9df6
+ call GetPredefPal
call LoadHLPaletteIntoDE
- ld hl, Palette_9521
+ ld hl, .Palette
ld de, UnknOBPals
call LoadHLPaletteIntoDE
- ld hl, Palette_9521
- ld de, UnknOBPals + 8
+ ld hl, .Palette
+ ld de, UnknOBPals + 1 palettes
call LoadHLPaletteIntoDE
- call Function9699
- call Function96b3
- call Function96a4
+ call WipeAttrMap
+ call ApplyAttrMap
+ call ApplyPals
ret
; 9521
-Palette_9521: ; 9521
+.Palette: ; 9521
RGB 31, 31, 31
RGB 13, 11, 00
RGB 23, 12, 28
@@ -1027,21 +1030,21 @@ _CGB1a: ; 9529
ld de, UnknBGPals
ld a, [CurPartySpecies]
ld bc, TempMonDVs
- call Function974b
- call Function9643
- call Function9699
- call Function96b3
- call Function96a4
+ call GetPlayerOrMonPalettePointer
+ call LoadPalette_White_Col1_Col2_Black
+ call WipeAttrMap
+ call ApplyAttrMap
+ call ApplyPals
ret
; 9542
_CGB1e: ; 9542
ld de, UnknBGPals
ld a, [CurPartySpecies]
- call Function9775
- call Function9643
- call Function9699
- call Function96b3
+ call GetMonPalettePointer_
+ call LoadPalette_White_Col1_Col2_Black
+ call WipeAttrMap
+ call ApplyAttrMap
ret
; 9555
@@ -1050,37 +1053,37 @@ _CGB1b: ; 9555
call CopyFourPalettes
ld hl, Palettes_b681
ld de, UnknOBPals
- ld bc, $0008
+ ld bc, 1 palettes
ld a, $5
call FarCopyWRAM
- ld de, UnknOBPals + $38
+ ld de, UnknOBPals + 7 palettes
ld a, $1c
- call GetAthPalletFromPalettes9df6
+ call GetPredefPal
call LoadHLPaletteIntoDE
- call Function9699
+ call WipeAttrMap
ret
; 9578
-_CGB1c: ; 9578
+_CGB_FrontpicPals: ; 9578
ld de, UnknBGPals
ld a, [CurPartySpecies]
ld bc, TempMonDVs
- call Function9764
- call Function9643
- call Function9699
- call Function96b3
- call Function96a4
+ call GetFrontpicPalettePointer
+ call LoadPalette_White_Col1_Col2_Black
+ call WipeAttrMap
+ call ApplyAttrMap
+ call ApplyPals
ret
; 9591
_CGB1d: ; 9591
- ld hl, Palette95e0
+ ld hl, .Palettes
ld de, UnknBGPals
- ld bc, $0010
+ ld bc, 2 palettes
ld a, $5
call FarCopyWRAM
- call Function96a4
- call Function9699
+ call ApplyPals
+ call WipeAttrMap
hlcoord 3, 7, AttrMap
lb bc, 8, 14
ld a, $1
@@ -1101,11 +1104,11 @@ _CGB1d: ; 9591
lb bc, 12, 1
ld a, $1
call FillBoxCGB
- call Function96b3
+ call ApplyAttrMap
ret
; 95e0
-Palette95e0: ; 95e0
+.Palettes: ; 95e0
RGB 31, 31, 31
RGB 16, 31, 14
RGB 05, 14, 21
diff --git a/predef/crystal.asm b/predef/crystal.asm
new file mode 100755
index 000000000..083a5a522
--- /dev/null
+++ b/predef/crystal.asm
@@ -0,0 +1,614 @@
+GetMysteryGift_MobileAdapterLayout: ; 4930f (mobile)
+ ld a, b
+ cp SCGB_RAM
+ jr nz, .not_ram
+ ld a, [SGBPredef]
+.not_ram
+ push af
+ callba Function9673
+ pop af
+ ld l, a
+ ld h, 0
+ add hl, hl
+ ld de, .dw
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld de, .done
+ push de
+ jp [hl]
+.done
+ ret
+; 49330 (12:5330)
+
+.dw: ; 49330
+
+ dw MG_Mobile_Layout00
+ dw MG_Mobile_Layout01
+ dw MG_Mobile_Layout02
+; 49336
+
+MG_Mobile_Layout_FillBox: ; 49336
+.row
+ push bc
+ push hl
+.col
+ ld [hli], a
+ dec c
+ jr nz, .col
+ pop hl
+ ld bc, SCREEN_WIDTH
+ add hl, bc
+ pop bc
+ dec b
+ jr nz, .row
+ ret
+; 49346
+
+MG_Mobile_Layout_WipeAttrMap: ; 49346 (12:5346)
+ hlcoord 0, 0, AttrMap
+ ld bc, SCREEN_HEIGHT * SCREEN_WIDTH
+ xor a
+ call ByteFill
+ ret
+
+MG_Mobile_Layout_LoadPals: ; 49351 (12:5351)
+ ld de, UnknBGPals
+ ld hl, Palette_493e1
+ ld bc, 5 palettes
+ ld a, $5 ; BANK(UnknBGPals)
+ call FarCopyWRAM
+ ld de, UnknBGPals + 7 palettes
+ ld hl, Palette_TextBG7
+ ld bc, 1 palettes
+ ld a, $5 ; BANK(UnknBGPals)
+ call FarCopyWRAM
+ ret
+
+MG_Mobile_Layout00: ; 4936e (12:536e)
+ call MG_Mobile_Layout_LoadPals
+ call MG_Mobile_Layout_WipeAttrMap
+ call MG_Mobile_Layout_CreatePalBoxes
+ callba ApplyAttrMap
+ callba ApplyPals
+ ret
+
+MG_Mobile_Layout_CreatePalBoxes: ; 49384 (12:5384)
+ hlcoord 0, 0, AttrMap
+ lb bc, 4, 1
+ ld a, $1
+ call MG_Mobile_Layout_FillBox
+ lb bc, 2, 1
+ ld a, $2
+ call MG_Mobile_Layout_FillBox
+ lb bc, 6, 1
+ ld a, $3
+ call MG_Mobile_Layout_FillBox
+ hlcoord 1, 0, AttrMap
+ ld a, $1
+ lb bc, 3, 18
+ call MG_Mobile_Layout_FillBox
+ lb bc, 2, 18
+ ld a, $2
+ call MG_Mobile_Layout_FillBox
+ lb bc, 12, 18
+ ld a, $3
+ call MG_Mobile_Layout_FillBox
+ hlcoord 19, 0, AttrMap
+ lb bc, 4, 1
+ ld a, $1
+ call MG_Mobile_Layout_FillBox
+ lb bc, 2, 1
+ ld a, $2
+ call MG_Mobile_Layout_FillBox
+ lb bc, 6, 1
+ ld a, $3
+ call MG_Mobile_Layout_FillBox
+ hlcoord 0, 12, AttrMap
+ ld bc, 6 * SCREEN_WIDTH
+ ld a, $7
+ call ByteFill
+ ret
+; 493e1 (12:53e1)
+
+Palette_493e1: ; 493e1
+ RGB 03, 07, 09
+ RGB 26, 31, 00
+ RGB 20, 16, 03
+ RGB 31, 31, 31
+
+ RGB 13, 24, 29
+ RGB 11, 16, 30
+ RGB 07, 11, 22
+ RGB 05, 06, 18
+
+ RGB 31, 31, 31
+ RGB 20, 26, 31
+ RGB 13, 24, 29
+ RGB 11, 16, 30
+
+ RGB 31, 31, 31
+ RGB 20, 26, 31
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 31, 31, 31
+ RGB 20, 16, 08
+ RGB 31, 00, 00
+ RGB 00, 00, 00
+; 49409
+
+LoadOW_BGPal7:: ; 49409
+ ld hl, Palette_TextBG7
+ ld de, UnknBGPals + 8 * 7
+ ld bc, 8
+ ld a, $5
+ call FarCopyWRAM
+ ret
+; 49418
+
+Palette_TextBG7: ; 49418
+ RGB 31, 31, 31
+ RGB 08, 19, 28
+ RGB 05, 05, 16
+ RGB 00, 00, 00
+; 49420
+
+Function49420:: ; 49420 (12:5420)
+ ld hl, MansionPalette4
+ ld de, UnknBGPals + $30
+ ld bc, $8
+ ld a, $5 ; BANK(UnknBGPals)
+ call FarCopyWRAM
+ ret
+; 4942f (12:542f)
+
+MG_Mobile_Layout01: ; 4942f
+ call MG_Mobile_Layout_LoadPals
+ ld de, UnknBGPals + $38
+ ld hl, Palette_49478
+ ld bc, $8
+ ld a, $5 ; BANK(UnknBGPals)
+ call FarCopyWRAM
+ call MG_Mobile_Layout_WipeAttrMap
+ hlcoord 0, 0, AttrMap
+ ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
+ xor a
+ call ByteFill
+ hlcoord 0, 14, AttrMap
+ ld bc, 4 * SCREEN_WIDTH
+ ld a, $7
+ call ByteFill
+ ld a, [wd002]
+ bit 6, a
+ jr z, .asm_49464
+ call Function49480
+ jr .asm_49467
+
+.asm_49464
+ call Function49496
+
+.asm_49467
+ callba ApplyAttrMap
+ callba ApplyPals
+ ld a, $1
+ ld [hCGBPalUpdate], a
+ ret
+; 49478
+
+Palette_49478: ; 49478
+ RGB 31, 31, 31
+ RGB 26, 31, 00
+ RGB 20, 16, 03
+ RGB 00, 00, 00
+; 49480
+
+Function49480: ; 49480
+ hlcoord 0, 0, AttrMap
+ lb bc, 4, SCREEN_WIDTH
+ ld a, $7
+ call MG_Mobile_Layout_FillBox
+ hlcoord 0, 2, AttrMap
+ ld a, $4
+ ld [hl], a
+ hlcoord 19, 2, AttrMap
+ ld [hl], a
+ ret
+; 49496
+
+Function49496: ; 49496
+ hlcoord 0, 0, AttrMap
+ lb bc, 2, SCREEN_WIDTH
+ ld a, $7
+ call MG_Mobile_Layout_FillBox
+ hlcoord 0, 1, AttrMap
+ ld a, $4
+ ld [hl], a
+ hlcoord 19, 1, AttrMap
+ ld [hl], a
+ ret
+; 494ac
+
+LoadSpecialMapPalette: ; 494ac
+ ld a, [wTileset]
+ cp TILESET_POKECOM_CENTER
+ jr z, .pokecom_2f
+ cp TILESET_BATTLE_TOWER
+ jr z, .battle_tower
+ cp TILESET_ICE_PATH
+ jr z, .ice_path
+ cp TILESET_HOUSE_1
+ jr z, .house
+ cp TILESET_RADIO_TOWER
+ jr z, .radio_tower
+ cp TILESET_CELADON_MANSION
+ jr z, .mansion_mobile
+ jr .do_nothing
+
+.pokecom_2f
+ call LoadPokeComPalette
+ scf
+ ret
+
+.battle_tower
+ call LoadBattleTowerPalette
+ scf
+ ret
+
+.ice_path
+ ld a, [wPermission] ; permission
+ and 7
+ cp 3 ; Hall of Fame
+ jr z, .do_nothing
+ call LoadIcePathPalette
+ scf
+ ret
+
+.house
+ call LoadHousePalette
+ scf
+ ret
+
+.radio_tower
+ call LoadRadioTowerPalette
+ scf
+ ret
+
+.mansion_mobile
+ call LoadMansionPalette
+ scf
+ ret
+
+.do_nothing
+ and a
+ ret
+; 494f2
+
+LoadPokeComPalette: ; 494f2
+ ld a, $5
+ ld de, UnknBGPals
+ ld hl, PokeComPalette
+ ld bc, 8 palettes
+ call FarCopyWRAM
+ ret
+; 49501
+
+PokeComPalette: ; 49501
+INCLUDE "tilesets/pokecom.pal"
+; 49541
+
+LoadBattleTowerPalette: ; 49541
+ ld a, $5
+ ld de, UnknBGPals
+ ld hl, BattleTowerPalette
+ ld bc, 8 palettes
+ call FarCopyWRAM
+ ret
+; 49550
+
+BattleTowerPalette: ; 49550
+INCLUDE "tilesets/battle_tower.pal"
+; 49590
+
+LoadIcePathPalette: ; 49590
+ ld a, $5
+ ld de, UnknBGPals
+ ld hl, IcePathPalette
+ ld bc, 8 palettes
+ call FarCopyWRAM
+ ret
+; 4959f
+
+IcePathPalette: ; 4959f
+INCLUDE "tilesets/ice_path.pal"
+; 495df
+
+LoadHousePalette: ; 495df
+ ld a, $5
+ ld de, UnknBGPals
+ ld hl, HousePalette
+ ld bc, 8 palettes
+ call FarCopyWRAM
+ ret
+; 495ee
+
+HousePalette: ; 495ee
+INCLUDE "tilesets/house.pal"
+; 4962e
+
+LoadRadioTowerPalette: ; 4962e
+ ld a, $5
+ ld de, UnknBGPals
+ ld hl, RadioTowerPalette
+ ld bc, 8 palettes
+ call FarCopyWRAM
+ ret
+; 4963d
+
+RadioTowerPalette: ; 4963d
+INCLUDE "tilesets/radio_tower.pal"
+; 4967d
+
+MansionPalette1: ; 4967d
+ RGB 30, 28, 26
+ RGB 19, 19, 19
+ RGB 13, 13, 13
+ RGB 07, 07, 07
+
+ RGB 30, 28, 26
+ RGB 31, 19, 24
+ RGB 30, 10, 06
+ RGB 07, 07, 07
+
+ RGB 18, 24, 09
+ RGB 15, 20, 01
+ RGB 09, 13, 00
+ RGB 07, 07, 07
+
+ RGB 30, 28, 26
+ RGB 15, 16, 31
+ RGB 09, 09, 31
+ RGB 07, 07, 07
+
+ RGB 30, 28, 26
+ RGB 31, 31, 07
+ RGB 31, 16, 01
+ RGB 07, 07, 07
+
+ RGB 26, 24, 17
+ RGB 21, 17, 07
+ RGB 16, 13, 03
+ RGB 07, 07, 07
+
+MansionPalette3: ; 496ad
+ RGB 30, 28, 26
+ RGB 17, 19, 31
+ RGB 14, 16, 31
+ RGB 07, 07, 07
+
+ RGB 31, 31, 16
+ RGB 31, 31, 16
+ RGB 14, 09, 00
+ RGB 00, 00, 00
+; 496bd
+
+MansionPalette4: ; 496bd
+ RGB 05, 05, 16
+ RGB 08, 19, 28
+ RGB 00, 00, 00
+ RGB 31, 31, 31
+; 496c5
+
+LoadMansionPalette: ; 496c5
+ ld a, $5
+ ld de, UnknBGPals
+ ld hl, MansionPalette1
+ ld bc, 8 palettes
+ call FarCopyWRAM
+ ld a, $5
+ ld de, UnknBGPals + 4 palettes
+ ld hl, MansionPalette2
+ ld bc, 1 palettes
+ call FarCopyWRAM
+ ld a, $5
+ ld de, UnknBGPals + 3 palettes
+ ld hl, MansionPalette3
+ ld bc, 1 palettes
+ call FarCopyWRAM
+ ld a, $5
+ ld de, UnknBGPals + 6 palettes
+ ld hl, MansionPalette4
+ ld bc, 1 palettes
+ call FarCopyWRAM
+ ret
+; 496fe
+
+MansionPalette2: ; 496fe
+ RGB 25, 24, 23
+ RGB 20, 19, 19
+ RGB 14, 16, 31
+ RGB 07, 07, 07
+; 49706
+
+MG_Mobile_Layout02: ; 49706
+ ld hl, Palette_49732
+ ld de, UnknBGPals
+ ld bc, 1 palettes
+ ld a, $5
+ call FarCopyWRAM
+ callba ApplyPals
+ call MG_Mobile_Layout_WipeAttrMap
+ callba ApplyAttrMap
+ ld hl, Palette_4973a
+ ld de, UnknOBPals
+ ld bc, 1 palettes
+ ld a, $5
+ call FarCopyWRAM
+ ret
+; 49732
+
+Palette_49732: ; 49732
+ RGB 31, 31, 31
+ RGB 23, 16, 07
+ RGB 23, 07, 07
+ RGB 03, 07, 20
+; 4973a
+
+Palette_4973a: ; 4973a
+ RGB 00, 00, 00
+ RGB 07, 05, 31
+ RGB 14, 18, 31
+ RGB 31, 31, 31
+; 49742
+
+Function49742: ; 49742
+ ld hl, Palette_49757
+ ld de, UnknBGPals
+ ld bc, $40
+ ld a, $5
+ call FarCopyWRAM
+ callba ApplyPals
+ ret
+; 49757
+
+Palette_49757: ; 49757
+ RGB 31, 31, 63
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 31, 31, 63
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 04, 02, 15
+ RGB 21, 00, 21
+ RGB 31, 00, 00
+ RGB 31, 31, 31
+
+ RGB 04, 02, 15
+ RGB 21, 00, 21
+ RGB 30, 16, 26
+ RGB 31, 31, 31
+
+ RGB 04, 02, 15
+ RGB 21, 00, 21
+ RGB 16, 16, 16
+ RGB 31, 31, 31
+
+ RGB 04, 02, 15
+ RGB 21, 00, 21
+ RGB 31, 12, 12
+ RGB 31, 31, 31
+
+ RGB 04, 02, 15
+ RGB 21, 00, 21
+ RGB 07, 08, 31
+ RGB 31, 31, 31
+
+ RGB 04, 02, 15
+ RGB 21, 00, 21
+ RGB 29, 28, 09
+ RGB 31, 31, 31
+; 49797
+
+_InitMG_Mobile_LinkTradePalMap: ; 49797
+ hlcoord 0, 0, AttrMap
+ lb bc, 16, 2
+ ld a, $4
+ call MG_Mobile_Layout_FillBox
+ ld a, $3
+ ldcoord_a 0, 1, AttrMap
+ ldcoord_a 0, 14, AttrMap
+ hlcoord 2, 0, AttrMap
+ lb bc, 8, 18
+ ld a, $5
+ call MG_Mobile_Layout_FillBox
+ hlcoord 2, 8, AttrMap
+ lb bc, 8, 18
+ ld a, $6
+ call MG_Mobile_Layout_FillBox
+ hlcoord 0, 16, AttrMap
+ lb bc, 2, SCREEN_WIDTH
+ ld a, $4
+ call MG_Mobile_Layout_FillBox
+ ld a, $3
+ lb bc, 6, 1
+ hlcoord 6, 1, AttrMap
+ call MG_Mobile_Layout_FillBox
+ ld a, $3
+ lb bc, 6, 1
+ hlcoord 17, 1, AttrMap
+ call MG_Mobile_Layout_FillBox
+ ld a, $3
+ lb bc, 6, 1
+ hlcoord 6, 9, AttrMap
+ call MG_Mobile_Layout_FillBox
+ ld a, $3
+ lb bc, 6, 1
+ hlcoord 17, 9, AttrMap
+ call MG_Mobile_Layout_FillBox
+ ld a, $2
+ hlcoord 2, 16, AttrMap
+ ld [hli], a
+ ld a, $7
+rept 3
+ ld [hli], a
+endr
+ ld a, $2
+ ld [hl], a
+ hlcoord 2, 17, AttrMap
+ ld a, $3
+ ld bc, 6
+ call ByteFill
+ ret
+; 49811
+
+Function49811: ; 49811
+ ld hl, Palette_49826
+ ld de, UnknBGPals + $10
+ ld bc, $30
+ ld a, $5
+ call FarCopyWRAM
+ callba ApplyPals
+ ret
+; 49826
+
+Palette_49826: ; 49826
+ RGB 04, 02, 15
+ RGB 07, 09, 31
+ RGB 31, 00, 00
+ RGB 31, 31, 31
+
+ RGB 04, 02, 15
+ RGB 07, 09, 31
+ RGB 15, 23, 30
+ RGB 31, 31, 31
+
+ RGB 04, 02, 15
+ RGB 07, 09, 31
+ RGB 16, 16, 16
+ RGB 31, 31, 31
+
+ RGB 04, 02, 15
+ RGB 07, 09, 31
+ RGB 25, 07, 04
+ RGB 31, 31, 31
+
+ RGB 04, 02, 15
+ RGB 07, 09, 31
+ RGB 03, 22, 08
+ RGB 31, 31, 31
+
+ RGB 04, 02, 15
+ RGB 07, 09, 31
+ RGB 29, 28, 09
+ RGB 31, 31, 31
+; 49856
+
+InitMG_Mobile_LinkTradePalMap: ; 49856
+ call _InitMG_Mobile_LinkTradePalMap
+ ret
+; 4985a
diff --git a/predef/sgb.asm b/predef/sgb.asm
index c10e84d1e..be44adc63 100644
--- a/predef/sgb.asm
+++ b/predef/sgb.asm
@@ -7,10 +7,9 @@ Predef_LoadSGBLayout: ; 864c
cp SCGB_RAM
jr nz, .not_ram
ld a, [SGBPredef]
-
.not_ram
- cp SCGB_FC
- jp z, Function8ade
+ cp SCGB_PARTY_MENU_HP_PALS
+ jp z, SGB_ApplyPartyMenuHPPals
ld l, a
ld h, 0
add hl, hl
@@ -25,16 +24,16 @@ Predef_LoadSGBLayout: ; 864c
; 866f
.Jumptable: ; 866f
- dw .SGB00
- dw .SGB01
- dw .SGB02
- dw .SGB03
+ dw .SGB_BattleGrayscale
+ dw .SGB_BattleColors
+ dw .SGB_PokegearPals
+ dw .SGB_StatsScreenHPPals
dw .SGB04
- dw .SGB05
+ dw .SGB_SlotMachine
dw .SGB06
dw .SGB07
dw .SGB08
- dw .SGB09
+ dw .SGB_MapPals
dw .SGB0a
dw .SGB0b
dw .SGB0c
@@ -45,32 +44,32 @@ Predef_LoadSGBLayout: ; 864c
dw .SGB11
dw .SGB12
dw .SGB13
- dw .SGB14
- dw .SGB15
+ dw .SGB_PackPals
+ dw .SGB_TrainerCard
dw .SGB16
dw .SGB17
dw .SGB18
dw .SGB19
dw .SGB1a
dw .SGB1b
- dw .SGB1c
+ dw .SGB_FrontpicPals
dw .SGB1d
dw .SGB1e
; 86ad
-.SGB00: ; 86ad
+.SGB_BattleGrayscale: ; 86ad
ld hl, PalPacket_9c66
ld de, BlkPacket_9aa6
ret
; 86b4
-.SGB01: ; 86b4
+.SGB_BattleColors: ; 86b4
ld hl, BlkPacket_9aa6
call Function9809
ld hl, PalPacket_9ce6
- ld de, wcda9
- ld bc, $0010
+ ld de, wSGBPals
+ ld bc, $10
call CopyBytes
ld a, [PlayerHPPal]
@@ -83,17 +82,17 @@ endr
add hl, de
ld a, [hli]
- ld [wcda9 + 3], a
+ ld [wSGBPals + 3], a
ld a, [hli]
- ld [wcda9 + 4], a
+ ld [wSGBPals + 4], a
ld a, [hli]
- ld [wcda9 + 5], a
+ ld [wSGBPals + 5], a
ld a, [hl]
- ld [wcda9 + 6], a
+ ld [wSGBPals + 6], a
ld a, [EnemyHPPal]
ld l, a
- ld h, $0
+ ld h, 0
rept 2
add hl, hl
endr
@@ -101,53 +100,53 @@ endr
ld de, Palettes_a8be
add hl, de
ld a, [hli]
- ld [wcda9 + 9], a
+ ld [wSGBPals + 9], a
ld a, [hli]
- ld [wcda9 + 10], a
+ ld [wSGBPals + 10], a
ld a, [hli]
- ld [wcda9 + 11], a
+ ld [wSGBPals + 11], a
ld a, [hl]
- ld [wcda9 + 12], a
+ ld [wSGBPals + 12], a
ld hl, PalPacket_9cf6
- ld de, wcda9 + $10
- ld bc, $0010
+ ld de, wSGBPals + $10
+ ld bc, $10
call CopyBytes
- call Function9729
+ call GetBattlemonBackpicPalettePointer
ld a, [hli]
- ld [wcda9 + $13], a
+ ld [wSGBPals + $13], a
ld a, [hli]
- ld [wcda9 + $14], a
+ ld [wSGBPals + $14], a
ld a, [hli]
- ld [wcda9 + $15], a
+ ld [wSGBPals + $15], a
ld a, [hl]
- ld [wcda9 + $16], a
- call Function973a
+ ld [wSGBPals + $16], a
+ call GetEnemyFrontpicPalettePointer
ld a, [hli]
- ld [wcda9 + $19], a
+ ld [wSGBPals + $19], a
ld a, [hli]
- ld [wcda9 + $1a], a
+ ld [wSGBPals + $1a], a
ld a, [hli]
- ld [wcda9 + $1b], a
+ ld [wSGBPals + $1b], a
ld a, [hl]
- ld [wcda9 + $1c], a
+ ld [wSGBPals + $1c], a
- ld hl, wcda9
- ld de, wcda9 + $10
- ld a, SCGB_01
+ ld hl, wSGBPals
+ ld de, wSGBPals + $10
+ ld a, SCGB_BATTLE_COLORS
ld [SGBPredef], a
ret
; 873c
.SGB0e: ; 873c
ld hl, PalPacket_9bd6
- ld de, wcda9
- ld bc, $0010
+ ld de, wSGBPals
+ ld bc, $10
call CopyBytes
- ld hl, wcda9 + 1
+ ld hl, wSGBPals + 1
ld [hl], $10
rept 2
inc hl
@@ -156,66 +155,66 @@ endr
ld a, [PlayerHPPal]
add $2f
ld [hl], a
- ld hl, wcda9
+ ld hl, wSGBPals
ld de, BlkPacket_9ad6
ret
; 875c
-.SGB02: ; 875c
+.SGB_PokegearPals: ; 875c
ld hl, PalPacket_9c76
ld de, BlkPacket_9a86
ret
; 8763
-.SGB03: ; 8763
+.SGB_StatsScreenHPPals: ; 8763
ld hl, PalPacket_9ce6
- ld de, wcda9
- ld bc, $0010
+ ld de, wSGBPals
+ ld bc, $10
call CopyBytes
ld a, [wcda1]
ld l, a
- ld h, $0
+ ld h, 0
rept 2
add hl, hl
endr
ld de, Palettes_a8be
add hl, de
ld a, [hli]
- ld [wcda9 + 3], a
+ ld [wSGBPals + 3], a
ld a, [hli]
- ld [wcda9 + 4], a
+ ld [wSGBPals + 4], a
ld a, [hli]
- ld [wcda9 + 5], a
+ ld [wSGBPals + 5], a
ld a, [hl]
- ld [wcda9 + 6], a
+ ld [wSGBPals + 6], a
ld a, [CurPartySpecies]
- ld bc, wd10e + 21
- call Function974b
+ ld bc, TempMonDVs
+ call GetPlayerOrMonPalettePointer
ld a, [hli]
- ld [wcda9 + 9], a
+ ld [wSGBPals + 9], a
ld a, [hli]
- ld [wcda9 + 10], a
+ ld [wSGBPals + 10], a
ld a, [hli]
- ld [wcda9 + 11], a
+ ld [wSGBPals + 11], a
ld a, [hl]
- ld [wcda9 + 12], a
- ld hl, wcda9
+ ld [wSGBPals + 12], a
+ ld hl, wSGBPals
ld de, BlkPacket_9ac6
ret
; 87ab
.SGB0a: ; 87ab
ld hl, PalPacket_9c56
- ld de, wcda9 + 1
+ ld de, wSGBPals + 1
ret
; 87b2
.SGB04: ; 87b2
ld hl, PalPacket_9ce6
- ld de, wcda9
- ld bc, $0010
+ ld de, wSGBPals
+ ld bc, $10
call CopyBytes
- ld hl, wcda9 + 3
+ ld hl, wSGBPals + 3
ld [hl], $9f
inc hl
ld [hl], $2a
@@ -224,26 +223,26 @@ endr
inc hl
ld [hl], $19
ld a, [CurPartySpecies]
- call Function9775
+ call GetMonPalettePointer_
ld a, [hli]
- ld [wcda9 + 9], a
+ ld [wSGBPals + 9], a
ld a, [hli]
- ld [wcda9 + 10], a
+ ld [wSGBPals + 10], a
ld a, [hli]
- ld [wcda9 + 11], a
+ ld [wSGBPals + 11], a
ld a, [hl]
- ld [wcda9 + 12], a
- ld hl, wcda9
+ ld [wSGBPals + 12], a
+ ld hl, wSGBPals
ld de, BlkPacket_9ae6
ret
; 87e9
.SGB17: ; 87e9
ld hl, PalPacket_9ce6
- ld de, wcda9
- ld bc, $0010
+ ld de, wSGBPals
+ ld bc, $10
call CopyBytes
- ld hl, wcda9 + 3
+ ld hl, wSGBPals + 3
ld [hl], $9f
inc hl
ld [hl], $2a
@@ -252,17 +251,17 @@ endr
inc hl
ld [hl], $19
ld a, [CurPartySpecies]
- ld bc, wd10e + 21
- call Function974b
+ ld bc, TempMonDVs
+ call GetPlayerOrMonPalettePointer
ld a, [hli]
- ld [wcda9 + 9], a
+ ld [wSGBPals + 9], a
ld a, [hli]
- ld [wcda9 + 10], a
+ ld [wSGBPals + 10], a
ld a, [hli]
- ld [wcda9 + 11], a
+ ld [wSGBPals + 11], a
ld a, [hl]
- ld [wcda9 + 12], a
- ld hl, wcda9
+ ld [wSGBPals + 12], a
+ ld hl, wSGBPals
ld de, BlkPacket_9ae6
ret
; 8823
@@ -275,10 +274,10 @@ endr
.SGB10: ; 882a
ld hl, PalPacket_9ce6
- ld de, wcda9
- ld bc, $0010
+ ld de, wSGBPals
+ ld bc, $10
call CopyBytes
- ld hl, wcda9 + 3
+ ld hl, wSGBPals + 3
ld [hl], $9f
inc hl
ld [hl], $2a
@@ -286,18 +285,18 @@ endr
ld [hl], $5a
inc hl
ld [hl], $19
- ld hl, wcda9
+ ld hl, wSGBPals
ld de, BlkPacket_9a86
ret
; 884b
-.SGB14: ; 884b
+.SGB_PackPals: ; 884b
ld hl, PalPacket_9c36
ld de, BlkPacket_9a86
ret
; 8852
-.SGB05: ; 8852
+.SGB_SlotMachine: ; 8852
ld hl, PalPacket_9c96
ld de, BlkPacket_9b06
ret
@@ -361,23 +360,23 @@ endr
.SGB11: ; 889e
ld hl, BlkPacket_9a86
ld de, PlayerLightScreenCount
- ld bc, $0010
+ ld bc, $10
call CopyBytes
ld hl, PalPacket_9bb6
ld de, BlkPacket_9a86
ret
; 88b1
-.SGB09: ; 88b1
+.SGB_MapPals: ; 88b1
ld hl, PalPacket_9bd6
- ld de, wcda9
- ld bc, $0010
+ ld de, wSGBPals
+ ld bc, $10
call CopyBytes
- call .GetPermission
- ld hl, wcda9 + 1
+ call .GetMapPalsIndex
+ ld hl, wSGBPals + 1
ld [hld], a
ld de, BlkPacket_9a86
- ld a, SCGB_09
+ ld a, SCGB_MAPPALS
ld [SGBPredef], a
ret
; 88cd
@@ -385,14 +384,14 @@ endr
.SGB0b: ; 88cd
push bc
ld hl, PalPacket_9ce6
- ld de, wcda9
- ld bc, $0010
+ ld de, wSGBPals
+ ld bc, $10
call CopyBytes
pop bc
ld a, c
and a
- jr z, .asm_88ef
- ld hl, wcda9 + 3
+ jr z, .partymon
+ ld hl, wSGBPals + 3
ld [hl], $e7
inc hl
ld [hl], $1c
@@ -400,34 +399,34 @@ endr
ld [hl], $62
inc hl
ld [hl], $c
- jr .asm_8913
+ jr .done
-.asm_88ef
+.partymon
ld hl, PartyMon1DVs
- ld bc, $0030
+ ld bc, PARTYMON_STRUCT_LENGTH
ld a, [CurPartyMon]
call AddNTimes
ld c, l
ld b, h
ld a, [PlayerHPPal]
- call Function974b
+ call GetPlayerOrMonPalettePointer
ld a, [hli]
- ld [wcda9 + 3], a
+ ld [wSGBPals + 3], a
ld a, [hli]
- ld [wcda9 + 4], a
+ ld [wSGBPals + 4], a
ld a, [hli]
- ld [wcda9 + 5], a
+ ld [wSGBPals + 5], a
ld a, [hl]
- ld [wcda9 + 6], a
+ ld [wSGBPals + 6], a
-.asm_8913
- ld hl, wcda9
+.done
+ ld hl, wSGBPals
ld de, BlkPacket_9a86
ret
; 891a
.SGB0d:
-.SGB15: ; 891a
+.SGB_TrainerCard: ; 891a
ld hl, PalPacket_9cb6
ld de, BlkPacket_9a86
ret
@@ -441,20 +440,20 @@ endr
.SGB12: ; 8928
ld hl, PalPacket_9bd6
- ld de, wcda9
- ld bc, $0010
+ ld de, wSGBPals
+ ld bc, $10
call CopyBytes
ld hl, BlkPacket_9a86
- ld de, wcda9 + $10
- ld bc, $0010
+ ld de, wSGBPals + $10
+ ld bc, $10
call CopyBytes
- call .GetPermission
- ld hl, wcda9 + 1
+ call .GetMapPalsIndex
+ ld hl, wSGBPals + 1
ld [hl], a
- ld hl, wcda9 + 3
+ ld hl, wSGBPals + 3
ld [hl], $2e
- ld hl, wcda9 + $13
- ld a, $5
+ ld hl, wSGBPals + $13
+ ld a, 5
ld [hli], a
ld a, [wMenuBorderLeftCoord]
ld [hli], a
@@ -464,15 +463,15 @@ endr
ld [hli], a
ld a, [wMenuBorderBottomCoord]
ld [hl], a
- ld hl, wcda9
- ld de, wcda9 + $10
+ ld hl, wSGBPals
+ ld de, wSGBPals + $10
ret
; 8969
.SGB1e: ; 8969
ld hl, PalPacket_9ce6
- ld de, wcda9
- ld bc, $0010
+ ld de, wSGBPals
+ ld bc, $10
call CopyBytes
ld a, [CurPartySpecies]
ld l, a
@@ -490,14 +489,14 @@ endr
ld b, 0
add hl, bc
ld a, [hli]
- ld [wcda9 + 3], a
+ ld [wSGBPals + 3], a
ld a, [hli]
- ld [wcda9 + 4], a
+ ld [wSGBPals + 4], a
ld a, [hli]
- ld [wcda9 + 5], a
+ ld [wSGBPals + 5], a
ld a, [hl]
- ld [wcda9 + 6], a
- ld hl, wcda9
+ ld [wSGBPals + 6], a
+ ld hl, wSGBPals
ld de, BlkPacket_9a86
ret
; 89a6
@@ -510,21 +509,21 @@ endr
.SGB1a: ; 89ad
ld hl, PalPacket_9ce6
- ld de, wcda9
- ld bc, $0010
+ ld de, wSGBPals
+ ld bc, $10
call CopyBytes
ld a, [CurPartySpecies]
- ld bc, wd10e + 21
- call Function974b
+ ld bc, TempMonDVs
+ call GetPlayerOrMonPalettePointer
ld a, [hli]
- ld [wcda9 + 3], a
+ ld [wSGBPals + 3], a
ld a, [hli]
- ld [wcda9 + 4], a
+ ld [wSGBPals + 4], a
ld a, [hli]
- ld [wcda9 + 5], a
+ ld [wSGBPals + 5], a
ld a, [hl]
- ld [wcda9 + 6], a
- ld hl, wcda9
+ ld [wSGBPals + 6], a
+ ld hl, wSGBPals
ld de, BlkPacket_9a86
ret
; 89d9
@@ -535,99 +534,99 @@ endr
ret
; 89e0
-.SGB1c: ; 89e0
+.SGB_FrontpicPals: ; 89e0
ld hl, PalPacket_9ce6
- ld de, wcda9
- ld bc, $0010
+ ld de, wSGBPals
+ ld bc, $10
call CopyBytes
ld a, [CurPartySpecies]
- ld bc, wd10e + 21
- call Function9764
+ ld bc, TempMonDVs
+ call GetFrontpicPalettePointer
ld a, [hli]
- ld [wcda9 + 3], a
+ ld [wSGBPals + 3], a
ld a, [hli]
- ld [wcda9 + 4], a
+ ld [wSGBPals + 4], a
ld a, [hli]
- ld [wcda9 + 5], a
+ ld [wSGBPals + 5], a
ld a, [hl]
- ld [wcda9 + 6], a
- ld hl, wcda9
+ ld [wSGBPals + 6], a
+ ld hl, wSGBPals
ld de, BlkPacket_9a86
ret
; 8a0c
-.GetPermission: ; 8a0c
+.GetMapPalsIndex: ; 8a0c
ld a, [TimeOfDayPal]
- cp $2
- jr c, .asm_8a16
+ cp NITE
+ jr c, .morn_day
ld a, $19
ret
-.asm_8a16
+.morn_day
ld a, [wPermission]
- cp $2
- jr z, .asm_8a39
- cp $4
- jr z, .asm_8a3c
- cp $7
- jr z, .asm_8a3c
- cp $5
- jr z, .asm_8a3f
- cp $6
- jr z, .asm_8a42
+ cp ROUTE
+ jr z, .route
+ cp CAVE
+ jr z, .cave
+ cp DUNGEON
+ jr z, .cave
+ cp PERM_5
+ jr z, .perm5
+ cp GATE
+ jr z, .gate
ld a, [MapGroup]
ld e, a
ld d, 0
- ld hl, .Unknown_8a45
+ ld hl, .SGBRoofPalInds
add hl, de
ld a, [hl]
ret
-.asm_8a39
- ld a, $0
+.route
+ ld a, $00
ret
-.asm_8a3c
+.cave
ld a, $18
ret
-.asm_8a3f
- ld a, $6
+.perm5
+ ld a, $06
ret
-.asm_8a42
- ld a, $3
+.gate
+ ld a, $03
ret
; 8a45
-.Unknown_8a45: ; 8a45
- db $00
- db $12
- db $14
- db $18
- db $11
- db $15
- db $09
- db $04
- db $0f
- db $16
- db $0e
- db $10
- db $06
- db $01
- db $03
- db $06
- db $0b
- db $08
- db $05
- db $17
- db $08
- db $07
- db $13
- db $02
- db $0c
- db $0a
- db $0d
+.SGBRoofPalInds: ; 8a45
+ db $00 ; Unused
+ db $12 ; Olivine
+ db $14 ; Mahogany
+ db $18 ; Various Dungeons
+ db $11 ; Ecruteak
+ db $15 ; Blackthorn
+ db $09 ; Cinnabar
+ db $04 ; Cerulean
+ db $0f ; Azalea
+ db $16 ; Lake Of Rage
+ db $0e ; Violet
+ db $10 ; Goldenrod
+ db $06 ; Vermilion
+ db $01 ; Palette
+ db $03 ; Pewter
+ db $06 ; Fast Ship
+ db $0b ; Indigo Plateau
+ db $08 ; Fuchsia
+ db $05 ; Lavender
+ db $17 ; Silver Cave Outside
+ db $08 ; Pokemon Center 2F
+ db $07 ; Celadon
+ db $13 ; Cianwood
+ db $02 ; Viridian
+ db $0c ; New Bark
+ db $0a ; Saffron
+ db $0d ; Cherrygrove
; 8a60
.Finish: ; 8a60