diff options
author | xCrystal <rgr.crystal@gmail.com> | 2018-02-25 18:25:57 +0100 |
---|---|---|
committer | xCrystal <rgr.crystal@gmail.com> | 2018-02-25 18:25:57 +0100 |
commit | 51b46f5e4ebbfb2d99cca76ff610b3824e98da13 (patch) | |
tree | b29b64f68e91fede93c0a3226c7f444436edcb48 | |
parent | f3b132b877428d08cea1a16dfc97bed7f169f58a (diff) |
Give generic labels to all used wram addresses and use correct space allocation (default to ds when size of address unknown)
-rw-r--r-- | src/audio/music1.asm | 2 | ||||
-rw-r--r-- | src/audio/music2.asm | 2 | ||||
-rw-r--r-- | src/engine/bank1.asm | 24 | ||||
-rw-r--r-- | src/engine/bank2.asm | 134 | ||||
-rw-r--r-- | src/engine/bank20.asm | 44 | ||||
-rw-r--r-- | src/engine/bank3.asm | 122 | ||||
-rw-r--r-- | src/engine/bank4.asm | 26 | ||||
-rw-r--r-- | src/engine/bank5.asm | 34 | ||||
-rw-r--r-- | src/engine/bank6.asm | 2 | ||||
-rw-r--r-- | src/engine/bank7.asm | 12 | ||||
-rw-r--r-- | src/engine/bank8.asm | 40 | ||||
-rw-r--r-- | src/engine/home.asm | 378 | ||||
-rw-r--r-- | src/wram.asm | 534 |
13 files changed, 981 insertions, 373 deletions
diff --git a/src/audio/music1.asm b/src/audio/music1.asm index 9db9632..86d76f4 100644 --- a/src/audio/music1.asm +++ b/src/audio/music1.asm @@ -690,7 +690,7 @@ Music1_note: ; f448c (3d:448c) add e jr .asm_f44c1 .asm_f44c7 - ld hl, $ddbb + ld hl, wddbb add hl, bc ld [hl], a pop de diff --git a/src/audio/music2.asm b/src/audio/music2.asm index d329326..41d58f8 100644 --- a/src/audio/music2.asm +++ b/src/audio/music2.asm @@ -690,7 +690,7 @@ Music2_note: ; f448c (3d:448c) add e jr .asm_f84c1 .asm_f84c7 - ld hl, $ddbb + ld hl, wddbb add hl, bc ld [hl], a pop de diff --git a/src/engine/bank1.asm b/src/engine/bank1.asm index 597cf69..a07ed92 100644 --- a/src/engine/bank1.asm +++ b/src/engine/bank1.asm @@ -67,7 +67,7 @@ Func_407a: ; 407a (1:407a) ld a, l ld [wcbe5], a ld a, h - ld [wcbe6], a + ld [wcbe5 + 1], a call ClearJoypad ld a, [wDuelTheme] call PlaySong @@ -112,7 +112,7 @@ StartDuel: ; 409f (1:409f) ld a, l ld [wcbe5], a ld a, h - ld [wcbe6], a + ld [wcbe5 + 1], a xor a ld [wCurrentDuelMenuItem], a call Func_420b @@ -453,7 +453,7 @@ Func_434e: ; 434e (1:434e) jr c, .no_cards_in_hand call $559a ld a, $09 - ld [$cbd6], a + ld [wcbd6], a jp $55f0 .no_cards_in_hand ldtx hl, NoCardsInHandText @@ -734,7 +734,7 @@ Func_478b: ; 478b (1:478b) add a ld e, a ld d, $00 - ld hl, $c511 + ld hl, wDuelTempList + 1 add hl, de ld a, [hl] or a @@ -1308,7 +1308,7 @@ LoadPlayerDeck: ; 6793 (1:6793) ; called multiple times during one ai turn AIMakeDecision: ; 67be (1:67be) ldh [hAIActionTableIndex], a - ld hl, $cbf9 + ld hl, wcbf9 ld a, [hl] ld [hl], $0 or a @@ -1321,12 +1321,12 @@ AIMakeDecision: ; 67be (1:67be) .skip_delay ldh a, [hAIActionTableIndex] - ld hl, $cbe1 + ld hl, wcbe1 ld [hl], $0 ld hl, AIActionTable call JumpToFunctionInTable ld a, [wDuelFinished] - ld hl, $cbe1 + ld hl, wcbe1 or [hl] jr nz, .turn_ended ld a, [wcbf9] @@ -1603,7 +1603,7 @@ _TossCoin: ; 71ad (1:71ad) jr z, .asm_727c ld b, $5b ld c, $30 - ld hl, $cd9d + ld hl, wcd9d inc [hl] .asm_727c @@ -1650,18 +1650,18 @@ _TossCoin: ; 71ad (1:71ad) call FillRectangle .asm_72b9 - ld hl, $cd9f + ld hl, wcd9f inc [hl] ld a, [wcd9e] or a jr z, .asm_72dc ld a, [hl] - ld hl, $cd9c + ld hl, wcd9c cp [hl] call z, WaitForWideTextBoxInput call $7324 ld a, [wcd9c] - ld hl, $cd9d + ld hl, wcd9d or [hl] jr nz, .asm_72e2 call z, WaitForWideTextBoxInput @@ -1674,7 +1674,7 @@ _TossCoin: ; 71ad (1:71ad) .asm_72e2 call Func_3b31 ld a, [wcd9f] - ld hl, $cd9c + ld hl, wcd9c cp [hl] jp c, .asm_7204 call Func_0f58 diff --git a/src/engine/bank2.asm b/src/engine/bank2.asm index 9bac4c3..8159f40 100644 --- a/src/engine/bank2.asm +++ b/src/engine/bank2.asm @@ -58,7 +58,7 @@ Func_8d56: ; 8d56 (2:4d56) INCROM $8d78, $8d9d Func_8d9d: ; 8d9d (2:4d9d) - ld de, $cfd1 + ld de, wcfd1 ld b, $7 .asm_8da2 ld a, [hli] @@ -129,17 +129,17 @@ Func_8e05: ; 8e05 (2:4e05) Func_8e1f: ; 8e1f (2:4e1f) push de - ld de, $cfb9 + ld de, wcfb9 call Func_92b4 pop de - ld hl, $cf17 + ld hl, wcf17 call Func_8cd4 ld a, $9 - ld hl, $cebb + ld hl, wcebb call Func_9843 ld a, $3c ld [wcecc], a - ld hl, $cebb + ld hl, wcebb ld [hl], a call Func_9e41 ret @@ -168,24 +168,24 @@ Func_8e42: ; 8e42 (2:4e42) call GetPointerToDeckCards ld e, l ld d, h - ld hl, $cf17 + ld hl, wcf17 call Func_8cd4 ld a, $14 - ld hl, $cfb9 + ld hl, wcfb9 call Func_9843 - ld de, $cfb9 + ld de, wcfb9 call GetPointerToDeckName call Func_92b4 call Func_9345 jr nc, .asm_8ec4 call EnableSRAM - ld hl, $cf17 + ld hl, wcf17 call Func_910a call GetPointerToDeckCards call Func_9152 ld e, l ld d, h - ld hl, $cf17 + ld hl, wcf17 ld b, $3c .asm_8ea9 ld a, [hli] @@ -196,7 +196,7 @@ Func_8e42: ; 8e42 (2:4e42) call GetPointerToDeckName ld d, h ld e, l - ld hl, $cfb9 + ld hl, wcfb9 call Func_92ad call GetPointerToDeckName ld a, [hl] @@ -215,16 +215,16 @@ Func_8e42: ; 8e42 (2:4e42) jp Func_8dbc .asm_8edb ld a, $14 - ld hl, $cfb9 + ld hl, wcfb9 call Func_9843 - ld de, $cfb9 + ld de, wcfb9 call GetPointerToDeckName call Func_92b4 call Func_8f05 call GetPointerToDeckName ld d, h ld e, l - ld hl, $cfb9 + ld hl, wcfb9 call Func_92b4 ld a, $ff call Func_9168 @@ -252,7 +252,7 @@ Func_8f05: ; 8f05 (2:4f05) .asm_8f23 ld a, $14 ld bc, $0401 - ld de, $cfb9 + ld de, wcfb9 farcall Func_1ad89 ld a, [wcfb9] or a @@ -269,7 +269,7 @@ Func_8f38: ; 8f38 (2:4f38) ld l, a ld de, wDefaultText call Func_0663 - ld hl, $cfb9 + ld hl, wcfb9 ld [hl], $6 inc hl ld [hl], $44 @@ -361,7 +361,7 @@ Func_8fe8: ; 8fe8 (2:4fe8) Func_8ff2: ; 8ff2 (2:4ff2) ld a, [wceb1] - ld hl, $ceb2 + ld hl, wceb2 ld b, $0 ld c, a add hl, bc @@ -475,7 +475,7 @@ Func_9065: ; 9065 (2:5065) jr z, .asm_90ca call PlaySFX .asm_90ca - ld hl, $cea3 + ld hl, wcea3 ld a, [hl] inc [hl] and $f @@ -582,7 +582,7 @@ Func_9168: ; 9168 (2:5168) ld hl, Unknown_9242 call Func_2c08 ld a, $4 - ld hl, $ceb2 + ld hl, wceb2 call Func_9843 ld a, [hffb5] bit 0, a @@ -642,7 +642,7 @@ Func_9168: ; 9168 (2:5168) ld b, $0 ld d, $2 .asm_921f - ld hl, $ceb2 + ld hl, wceb2 add hl, bc ld a, [hl] or a @@ -789,15 +789,15 @@ Func_b177: ; b177 (2:7177) Func_b19d: ; b19d (2:719d) xor a - ld [$cea1], a + ld [wcea1], a ld de, CheckForCGB - ld hl, $d0a2 + ld hl, wd0a2 ld [hl], e inc hl ld [hl], d call $7379 ld a, $3c - ld [$d0a5], a + ld [wd0a5], a xor a .asm_b1b3 ld hl, $76fb @@ -813,9 +813,9 @@ Func_b19d: ; b19d (2:719d) cp $ff ret z ld b, a - ld a, [$cea1] + ld a, [wcea1] add b - ld [$d088], a + ld [wd088], a call Func_905a call DrawWideTextBox ld hl, $7274 @@ -825,7 +825,7 @@ Func_b19d: ; b19d (2:719d) jp nc, $71e7 cp $ff jr nz, .asm_b1fa - ld a, [$d086] + ld a, [wd086] jp $71b3 .asm_b1fa @@ -838,17 +838,17 @@ Func_b19d: ; b19d (2:719d) call $735b jr nc, .asm_b216 call $7592 - ld a, [$d086] + ld a, [wd086] jp c, $71b3 jr .asm_b25e .asm_b216 ld hl, $0272 call YesOrNoMenuWithText - ld a, [$d086] + ld a, [wd086] jr c, .asm_b1b3 call $7592 - ld a, [$d086] + ld a, [wd086] jp c, $71b3 jr .asm_b25e @@ -858,14 +858,14 @@ Func_b19d: ; b19d (2:719d) call $735b jr c, .asm_b240 call $76ca - ld a, [$d086] + ld a, [wd086] jp c, $71b3 jr .asm_b25e .asm_b240 ld hl, WaitForVBlank call DrawWideTextBox_WaitForInput - ld a, [$d086] + ld a, [wd086] jp $71b3 .asm_b24c @@ -874,16 +874,16 @@ Func_b19d: ; b19d (2:719d) call $735b jr c, .asm_b240 call $77c6 - ld a, [$d086] + ld a, [wd086] jp nc, $71b3 .asm_b25e - ld a, [$d087] - ld [$cea1], a + ld a, [wd087] + ld [wcea1], a call $7379 call $7704 call $7545 - ld a, [$d086] + ld a, [wd086] jp $71b3 .asm_b273 @@ -899,28 +899,28 @@ Func_ba04: ; ba04 (2:7a04) ld c, a ld b, $0 add hl, bc - ld de, $d0a2 + ld de, wd0a2 ld a, [hli] ld [de], a inc de ld a, [hl] ld [de], a xor a - ld [$cea1], a + ld [wcea1], a call $7b97 ld a, $5 - ld [$d0a5], a + ld [wd0a5], a xor a ld hl, $7b6e call InitializeCursorParameters ldtx hl, PleaseSelectDeckText call DrawWideTextBox_PrintText ld a, $5 - ld [$cea9], a + ld [wcea9], a ld hl, $73fe ld d, h ld a, l - ld hl, $cece + ld hl, wcece ld [hli], a ld [hl], d .asm_ba40 @@ -935,11 +935,11 @@ Func_ba04: ; ba04 (2:7a04) ldh a, [hButtonsPressed2] and START jr z, .asm_ba40 - ld a, [$cea1] - ld [$d087], a + ld a, [wcea1] + ld [wd087], a ld b, a ld a, [wCurMenuItem] - ld [$d086], a + ld [wd086], a add b ld c, a inc a @@ -947,7 +947,7 @@ Func_ba04: ; ba04 (2:7a04) ld [wceb1], a sla c ld b, $0 - ld hl, $d00d + ld hl, wd00d add hl, bc call $7653 ld a, [hli] @@ -968,25 +968,25 @@ Func_ba04: ; ba04 (2:7a04) call $7653 call Func_8e1f call $7644 - ld a, [$d087] - ld [$cea1], a + ld a, [wd087] + ld [wcea1], a call $7b97 - ld a, [$d086] + ld a, [wd086] jp $7a25 .asm_baa3 call DrawCursor2 - ld a, [$cea1] - ld [$d087], a + ld a, [wcea1] + ld [wd087], a ld a, [wCurMenuItem] - ld [$d086], a + ld [wd086], a ldh a, [hCurrentMenuItem] cp $ff jp z, $7b0d - ld [$d088], a + ld [wd088], a call Func_905a xor a - ld [$ce5e], a + ld [wce5e], a call DrawWideTextBox ld hl, $7b76 call Func_2c08 @@ -995,7 +995,7 @@ Func_ba04: ; ba04 (2:7a04) jp nc, $7acc cp $ff jr nz, .asm_badf - ld a, [$d086] + ld a, [wd086] jp $7a25 .asm_badf @@ -1008,38 +1008,38 @@ Func_ba04: ; ba04 (2:7a04) call $7653 call $77c6 call $7644 - ld a, [$d086] + ld a, [wd086] jp nc, $7a25 - ld a, [$d087] - ld [$cea1], a + ld a, [wd087] + ld [wcea1], a call $7b97 - ld a, [$d086] + ld a, [wd086] jp $7a25 .asm_bb09 cp $1 jr nz, .asm_bb12 xor a - ld [$d0a4], a + ld [wd0a4], a ret .asm_bb12 - ld a, [$cea1] - ld [$d087], a + ld a, [wcea1] + ld [wd087], a ld b, a ld a, [wCurMenuItem] - ld [$d086], a + ld [wd086], a add b ld c, a ld [wceb1], a sla c ld b, $0 - ld hl, $d00d + ld hl, wd00d add hl, bc push hl - ld hl, $d0aa + ld hl, wd0aa add hl, bc - ld bc, $cfda + ld bc, wcfda ld a, [hli] ld [bc], a inc bc @@ -1066,10 +1066,10 @@ Func_ba04: ; ba04 (2:7a04) xor a call $6dfe call $7644 - ld a, [$d087] - ld [$cea1], a + ld a, [wd087] + ld [wcea1], a call $7b97 - ld a, [$d086] + ld a, [wd086] jp $7a25 ; 0xbb6e diff --git a/src/engine/bank20.asm b/src/engine/bank20.asm index c21deca..5a0367c 100644 --- a/src/engine/bank20.asm +++ b/src/engine/bank20.asm @@ -15,11 +15,11 @@ Func_80028: ; 80028 (20:4028) Func_80077: ; 80077 (20:4077) ld a, $1 - ld [$d292], a + ld [wd292], a jr .asm_80082 xor a - ld [$d292], a + ld [wd292], a .asm_80082 push hl @@ -32,22 +32,22 @@ Func_80077: ; 80077 (20:4077) ld [hl], d call $43b9 ld a, [wd4c6] - ld [$d23d], a - ld de, $d23e + ld [wd23d], a + ld de, wd23e ld bc, $0006 call Func_3bf5 ld l, e ld h, d ld a, [hli] - ld [$d12f], a + ld [wd12f], a ld a, [hli] - ld [$d130], a + ld [wd130], a ld a, [hli] - ld [$d23a], a + ld [wd23a], a ld a, [hli] - ld [$d23b], a + ld [wd23b], a ld a, [hli] - ld [$d23c], a + ld [wd23c], a call $40bd pop de pop bc @@ -188,11 +188,11 @@ asm_8027c ld b, a ld a, [wd4c7] ld c, a - ld hl, $d4c2 + ld hl, wd4c2 ld e, [hl] inc hl ld d, [hl] - ld hl, $d4c4 + ld hl, wd4c4 ld a, [hli] ld h, [hl] ld l, a @@ -251,7 +251,7 @@ Func_80b7a: ; 80b7a (20:4b7a) Func_80ba4: ; 80ba4 (20:4ba4) push af xor a - ld [$d292], a + ld [wd292], a pop af push hl push bc @@ -259,15 +259,15 @@ Func_80ba4: ; 80ba4 (20:4ba4) ld c, a ld a, [wd131] push af - ld a, [$d23d] + ld a, [wd23d] push af - ld a, [$d12f] + ld a, [wd12f] push af - ld a, [$d130] + ld a, [wd130] push af - ld a, [$d23a] + ld a, [wd23a] push af - ld a, [$d23b] + ld a, [wd23b] push af ld b, $0 ld hl, wd323 @@ -310,15 +310,15 @@ Func_80ba4: ; 80ba4 (20:4ba4) add hl, bc farcall $3, $438f pop af - ld [$d23b], a + ld [wd23b], a pop af - ld [$d23a], a + ld [wd23a], a pop af - ld [$d130], a + ld [wd130], a pop af - ld [$d12f], a + ld [wd12f], a pop af - ld [$d23d], a + ld [wd23d], a pop af ld [wd131], a pop de diff --git a/src/engine/bank3.asm b/src/engine/bank3.asm index b3a055d..6577a69 100644 --- a/src/engine/bank3.asm +++ b/src/engine/bank3.asm @@ -55,12 +55,12 @@ LoadMap: ; c000 (3:4000) call DoFrameIfLCDEnabled call SetScreenScroll call Func_c0ce - ld hl, $d0b4 + ld hl, wd0b4 ld a, [hl] and $d0 jr z, .asm_c092 call DoFrameIfLCDEnabled - ld hl, $d0b4 + ld hl, wd0b4 ld a, [hl] bit 4, [hl] jr z, .asm_c0b6 @@ -120,7 +120,7 @@ Func_c0f1: ; c0f1 (3:40f1) jr Func_c10a Func_c10a: ; c10a (3:410a) - ld hl, $d0c6 + ld hl, wd0c6 ld a, [hli] ld h, [hl] ld l, a @@ -147,13 +147,13 @@ CloseDialogueBox: ; c111 (3:4111) Func_c135: ; c135 (3:4135) push hl farcall Func_80028 - ld hl, $d0c1 + ld hl, wd0c1 res 0, [hl] pop hl ret Func_c141: ; c141 (3:4141) - ld hl, $d0c2 + ld hl, wd0c2 ld a, [hl] or a ret z @@ -352,7 +352,7 @@ Func_c280: ; c280 (3:4280) Func_c29b: ; c29b (3:429b) push hl - ld hl, $d0c1 + ld hl, wd0c1 or [hl] ld [hl], a pop hl @@ -403,14 +403,14 @@ Func_c2db: ; c2db (3:42db) farcall Func_80000 pop af ld [wd111], a - ld hl, $d0c1 + ld hl, wd0c1 res 0, [hl] call Func_c34e farcall Func_12c5e farcall Func_1c6f8 - ld hl, $d0c1 + ld hl, wd0c1 res 7, [hl] - ld hl, $d10f + ld hl, wd10f ld a, [hli] or [hl] jr z, .asm_c323 @@ -437,9 +437,9 @@ Func_c335: ; c335 (3:4335) ld [wd10c], a ld a, [wOBP1] ld [wd10d], a - ld hl, $cb30 - ld de, $d0cc - ld bc, $0040 + ld hl, wObjectPalettesCGB + ld de, wd0cc + ld bc, 8 * CGB_PAL_SIZE call CopyDataHLtoDE_SaveRegisters ret @@ -448,9 +448,9 @@ Func_c34e: ; c34e (3:434e) ld [wOBP0], a ld a, [wd10d] ld [wOBP1], a - ld hl, $d0cc - ld de, $cb30 - ld bc, $0040 + ld hl, wd0cc + ld de, wObjectPalettesCGB + ld bc, 8 * CGB_PAL_SIZE call CopyDataHLtoDE_SaveRegisters call SetFlushAllPalettes ret @@ -760,7 +760,7 @@ StartScriptedMovement: ; c607 (3:4607) push bc ld a, [wd336] ld [wWhichSprite], a - ld a, [$d339] + ld a, [wd339] call FindScriptedMovementWithOffset call AttemptScriptedMovement pop bc @@ -840,9 +840,9 @@ Func_c66c: ; c66c (3:466c) Func_c687: ; c687 (3:4687) push bc - ld a, [$d33a] + ld a, [wd33a] ld c, a - ld a, [$d339] + ld a, [wd339] call Func_c694 pop bc ret @@ -887,7 +887,7 @@ Func_c694: ; c694 (3:4694) Func_c6cc: ; c6cc (3:46cc) push hl - ld hl, $d332 + ld hl, wd332 add [hl] ld [hl], a pop hl @@ -895,7 +895,7 @@ Func_c6cc: ; c6cc (3:46cc) Func_c6d4: ; c6d4 (3:46d4) push hl - ld hl, $d333 + ld hl, wd333 add [hl] ld [hl], a pop hl @@ -929,11 +929,11 @@ Func_c6f7: ; c6f7 (3:46f7) Func_c70d: ; c70d (3:470d) push hl - ld hl, $d0bb + ld hl, wd0bb ld a, [wCurMap] cp [hl] jr z, .asm_c71c - ld hl, $d0b4 + ld hl, wd0b4 set 4, [hl] .asm_c71c pop hl @@ -1105,14 +1105,14 @@ Func_c891: ; c891 (3:4891) ld a, [wd0c1] bit 0, a jr z, .asm_c8a1 - ld hl, $d3b9 + ld hl, wd3b9 ld a, [hli] or [hl] call nz, Func_c135 .asm_c8a1 xor a - ld hl, $d3b9 + ld hl, wd3b9 ld [hli], a ld [hl], a pop hl @@ -1132,7 +1132,7 @@ Func_c8ba: ; c8ba (3:48ba) ld a, [wd0c1] bit 0, a jr z, .asm_c8d4 - ld hl, $d3b9 + ld hl, wd3b9 ld a, [hli] cp e jr nz, .asm_c8d1 @@ -1144,7 +1144,7 @@ Func_c8ba: ; c8ba (3:48ba) call Func_c135 .asm_c8d4 - ld hl, $d3b9 + ld hl, wd3b9 ld [hl], e inc hl ld [hl], d @@ -1173,7 +1173,7 @@ Func_c8ed: ; c8ed (3:c8ed) jr z, .asm_c90e push hl xor a - ld hl, $d3b9 + ld hl, wd3b9 ld [hli], a ld [hl], a pop hl @@ -1210,7 +1210,7 @@ Func_c926: ; c926 (3:4926) Func_c935: ; c935 (3:4935) push hl - ld hl, $d0c6 + ld hl, wd0c6 ld [hl], c inc hl ld [hl], b @@ -1233,7 +1233,7 @@ Func_c943: ; c943 (3:4943) ld [wd4c5], a ld a, $4 ld [wd4c6], a - ld de, $d3ab + ld de, wd3ab ld bc, $0006 call Func_3bf5 ld a, [wd3ab] @@ -1669,12 +1669,12 @@ GetOWSArgsAfterPointer: ; cca0 (3:4ca0) Func_ccb3: ; ccb3 (3:4cb3) ld a, $ff - ld [$d415], a + ld [wd415], a ret Func_ccb9: ; ccb9 (3:4cb9) xor a - ld [$d415], a + ld [wd415], a ret OWScript_EndScriptLoop1: ; ccbe (3:4cbe) @@ -1724,7 +1724,7 @@ OWScript_AskQuestionJump: ; cce9 (3:4ce9) ld h, b call Func_c8ed ld a, [hCurrentMenuItem] - ld [$d415], a + ld [wd415], a jr c, .asm_ccfe call GetOWSArgs3AfterPointer jr z, .asm_ccfe @@ -1745,7 +1745,7 @@ OWScript_StartBattle: ; cd01 (3:4d01) ld a, [wcc19] cp $ff jr nz, .asm_cd26 - ld a, [$d695] + ld a, [wd695] ld c, a ld b, $0 ld hl, $4d63 @@ -1759,7 +1759,7 @@ OWScript_StartBattle: ; cd01 (3:4d01) ld a, [hl] asm_cd2f ld [wd0c4], a - ld [$cc14], a + ld [wcc14], a push af farcall Func_1c557 ld [wd0c5], a @@ -1773,11 +1773,11 @@ asm_cd2f Func_cd4f: ; cd4f (3:4d4f) call Func_cd66 - ld a, [$d696] + ld a, [wd696] farcall Func_118bf ld a, $16 ld [wMatchStartTheme], a - ld a, [$d696] + ld a, [wd696] jr asm_cd2f Unknown_dd63: ; cd4f (3:4d4f) @@ -1801,7 +1801,7 @@ Func_cd76: ; cd76 (3:4d76) jp IncreaseOWScriptPointerBy1 Func_cd83: ; cd83 (3:4d83) - ld a, [$d415] + ld a, [wd415] or a jr nz, .asm_cd8c call GetOWSArgs3AfterPointer @@ -1826,7 +1826,7 @@ Unknown_cd98: jp IncreaseOWScriptPointerBy7 Func_cda8: ; cda8 (3:4da8) - ld a, [$d415] + ld a, [wd415] or a jr nz, .asm_cdb1 call GetOWSArgs3AfterPointer @@ -1859,7 +1859,7 @@ Func_cdd8: ; cdd8 (3:4dd8) push af ld a, [wd3ab] push af - ld a, [$d696] + ld a, [wd696] ld [wd3ab], a call Func_39c3 call Func_4dd1 @@ -1874,14 +1874,14 @@ Func_cdf5: ; cdf5 (3:4df5) push af ld a, [wd3ab] push af - ld a, [$d696] + ld a, [wd696] ld [wd3ab], a ld a, c - ld [$d3ac], a + ld [wd3ac], a ld a, b - ld [$d3ad], a + ld [wd3ad], a ld a, $2 - ld [$d3ae], a + ld [wd3ae], a ld a, [wd3ab] farcall Func_11857 farcall Func_1c485 @@ -1923,7 +1923,7 @@ Func_ce52: ; ce52 (3:4e52) push af ld a, [wd3ab] push af - ld a, [$d696] + ld a, [wd696] asm_ce5d ld [wd3ab], a call Func_39c3 @@ -2008,7 +2008,7 @@ Func_cee2: ; cee2 (3:4ee2) jr z, .asm_cf09 or a jr nz, .asm_cef0 - ld a, [$d697] + ld a, [wd697] .asm_cef0 push af @@ -2070,7 +2070,7 @@ Func_cf3f: ; cf3f (3:4f3f) ld a, c or a jr nz, .asm_cf46 - ld a, [$d697] + ld a, [wd697] .asm_cf46 call AddCardToCollection @@ -2262,9 +2262,9 @@ Func_d055: ; d055 (3:5055) OWScript_MovePlayer: ; 505c (3:505c) ld a, c - ld [$d339], a + ld [wd339], a ld a, b - ld [$d33a], a + ld [wd33a], a call StartScriptedMovement .asm_d067 call DoFrameIfLCDEnabled @@ -2418,7 +2418,7 @@ Func_d16b: ; d16b (3:516b) ld hl, wTxRam2 add hl, bc push hl - ld a, [$d696] + ld a, [wd696] farcall Func_11893 pop hl ld a, [wd0c8] @@ -2470,7 +2470,7 @@ asm_d1c6 ld d, $0 add hl, de ld a, [hli] - ld [$d697], a + ld [wd697], a ld a, [hli] ld [wTxRam2], a ld a, [hl] @@ -2521,7 +2521,7 @@ Func_d24c: ; d24c (3:524c) ld hl, $525e xor a call Func_d28c - ld a, [$d695] + ld a, [wd695] ld c, a call Func_ca8f halt @@ -2539,7 +2539,7 @@ Func_d271: ; d271 (3:5271) INCROM $d27b, $d28c Func_d28c: ; d28c (3:528c) - ld [$d416], a + ld [wd416], a push hl call Func_c241 call Func_c915 @@ -2566,12 +2566,12 @@ Func_d28c: ; d28c (3:528c) push hl ld h, [hl] ld l, a - ld a, [$d416] + ld a, [wd416] farcall Func_111e9 pop hl inc hl ld a, [hli] - ld [$d417], a + ld [wd417], a push hl .asm_d2c1 @@ -2581,7 +2581,7 @@ Func_d28c: ; d28c (3:528c) ld a, [hCurrentMenuItem] cp e jr z, .asm_d2d9 - ld a, [$d417] + ld a, [wd417] or a jr z, .asm_d2c1 ld e, a @@ -2618,12 +2618,12 @@ Func_d2f6: ; d2f6 (3:52f6) ld hl, $530c xor a call Func_d28c - ld a, [$d694] + ld a, [wd694] ld c, a call Func_ca8f ld [hl], l xor a - ld [$d694], a + ld [wd694], a jp IncreaseOWScriptPointerBy1 ; 0xd30c @@ -2631,9 +2631,9 @@ Func_d2f6: ; d2f6 (3:52f6) Func_d317: ; d317 (3:5317) ld hl, $532b - ld a, [$d694] + ld a, [wd694] call Func_d28c - ld a, [$d694] + ld a, [wd694] ld c, a call Func_ca8f ld [hl], l @@ -2732,7 +2732,7 @@ Func_d3d1: ; d3d1 (3:53d1) jp IncreaseOWScriptPointerBy1 Func_d3d4: ; d3d4 (3:53d4) - ld a, [$d693] + ld a, [wd693] bank1call Func_7576 jp IncreaseOWScriptPointerBy1 @@ -3179,7 +3179,7 @@ Func_f580: ; f580 (3:7580) .asm_f5ac ld [wd3ab], a - ld [$d696], a + ld [wd696], a ret ; 0xf5b3 diff --git a/src/engine/bank4.asm b/src/engine/bank4.asm index f6452c5..19d5396 100644 --- a/src/engine/bank4.asm +++ b/src/engine/bank4.asm @@ -109,7 +109,7 @@ BoosterPack_1031b: ; 1031b (4:431b) call DisableLCD call $4000 xor a - ld [wFrameType], a + ld [wTextBoxFrameType], a pop bc push bc ld b, $0 @@ -159,7 +159,7 @@ BoosterPack_1031b: ; 1031b (4:431b) ld a, $1 ld [wVBlankOAMCopyToggle], a ld a, $4 - ld [wFrameType], a + ld [wTextBoxFrameType], a farcall $1, $7599 farcall Func_c1a4 call DoFrameIfLCDEnabled @@ -179,7 +179,7 @@ Duel_Init: ; 103d3 (4:43d3) call DisableLCD call $4000 ld a, $4 - ld [wFrameType], a + ld [wTextBoxFrameType], a lb de, 0, 12 lb bc, 20, 6 call DrawRegularTextBox @@ -484,7 +484,7 @@ LoadOverworldMapSelection: ; 10f61 (4:4f61) ld [wd0bd], a ld a, $0 ld [wd0be], a - ld hl, $d0b4 + ld hl, wd0b4 set 4, [hl] pop bc pop hl @@ -681,7 +681,7 @@ Func_11102: ; 11102 (4:5102) ld [wd341], a ld e, a ld d, $0 - ld hl, $d343 + ld hl, wd343 xor a ld [hli], a bit 7, [hl] @@ -704,7 +704,7 @@ Func_11102: ; 11102 (4:5102) ld [wd345], a ld a, b ld [wd346], a - ld hl, $d344 + ld hl, wd344 ld a, $1 bit 7, [hl] jr z, .asm_1113a @@ -718,7 +718,7 @@ Func_1113e: ; 1113e (4:513e) ld [wd341], a ld e, a ld d, $0 - ld hl, $d345 + ld hl, wd345 xor a ld [hli], a bit 7, [hl] @@ -740,7 +740,7 @@ Func_1113e: ; 1113e (4:513e) ld [wd343], a ld a, b ld [wd344], a - ld hl, $d346 + ld hl, wd346 ld a, $2 bit 7, [hl] jr z, .asm_11175 @@ -784,7 +784,7 @@ Func_11184: ; 11184 (4:5184) ld [wd347], a ld a, e ld [wd348], a - ld hl, $d341 + ld hl, wd341 dec [hl] ret ; 0x111b3 @@ -859,7 +859,7 @@ Func_11857: ; 11857 (4:5857) ld a, [hli] ld [wd3ab], a ld a, [hli] - ld [$d3b3], a + ld [wd3b3], a ld a, [hli] ld [wd3b1], a ld a, [hli] @@ -1324,11 +1324,11 @@ Func_12b13: ; 12b13 (4:6b13) ld [wd4c5], a adc $0 ld [hl], a - ld de, $d23e + ld de, wd23e ld bc, $0004 call Func_3bf5 pop hl - ld de, $d23e + ld de, wd23e ld a, [de] call Func_12b6a inc de @@ -1426,7 +1426,7 @@ Func_12c05: ; 12c05 (4:6c05) ld d, $0 ld a, [wd618] ld c, a - ld hl, $d5d8 + ld hl, wd5d8 or a jr z, .asm_12c22 .asm_12c15 diff --git a/src/engine/bank5.asm b/src/engine/bank5.asm index 840307f..5820a24 100644 --- a/src/engine/bank5.asm +++ b/src/engine/bank5.asm @@ -168,7 +168,7 @@ Func_1468b: ; 1468b (5:468b) call Func_14663 ld a, $f call Func_14663 - ld a, [$ce20] + ld a, [wce20] and $4 jr z, .asm_14776 ld a, $1 @@ -226,23 +226,23 @@ Func_1468b: ; 1468b (5:468b) INCROM $14786, $15636 Func_15636: ; 15636 (5:5636) ld a, $10 - ld hl, $cda5 + ld hl, wcda5 call ZeroData ld a, $5 - ld [$cda6], a + ld [wcda6], a ld a, $ff - ld [$cda5], a + ld [wcda5], a ret Func_15649: ; 15649 (5:5649) - ld a, [$cda6] + ld a, [wcda6] inc a - ld [$cda6], a + ld [wcda6], a xor a - ld [$ce20], a - ld [$cddb], a - ld [$cddc], a - ld [$ce03], a + ld [wce20], a + ld [wcddb], a + ld [wcddc], a + ld [wce03], a ld a, [wcc10] cp $ff jr z, .asm_156b1 @@ -257,11 +257,11 @@ Func_15649: ; 15649 (5:5649) ld a, e cp MEWTWO1 ; I believe this is a check for Mewtwo1's Barrier move jr nz, .asm_156b1 - ld a, [$cda7] + ld a, [wcda7] bit 7, a jr nz, .asm_156aa inc a - ld [$cda7], a + ld [wcda7], a cp $3 jr c, .asm_156c2 ld a, DUELVARS_ARENA_CARD @@ -277,25 +277,25 @@ Func_15649: ; 15649 (5:5649) .asm_156a4 xor a - ld [$cda7], a + ld [wcda7], a jr .asm_156c2 .asm_156aa ld a, $80 - ld [$cda7], a + ld [wcda7], a jr .asm_156c2 .asm_156b1 - ld a, [$cda7] + ld a, [wcda7] bit 7, a jr z, .asm_156be inc a - ld [$cda7], a + ld [wcda7], a jr .asm_156c2 .asm_156be xor a - ld [$cda7], a + ld [wcda7], a .asm_156c2 ret diff --git a/src/engine/bank6.asm b/src/engine/bank6.asm index 9174b84..8f58133 100644 --- a/src/engine/bank6.asm +++ b/src/engine/bank6.asm @@ -99,7 +99,7 @@ Func_199e0: ; 199e0 (6:59e0) ret Func_19a12: ; 19a12 (6:5a12) - ld hl, $cce9 + ld hl, wcce9 ld a, [hli] ld h, [hl] ld l, a diff --git a/src/engine/bank7.asm b/src/engine/bank7.asm index 3ca0d2d..156d421 100644 --- a/src/engine/bank7.asm +++ b/src/engine/bank7.asm @@ -149,7 +149,7 @@ Func_1c50a: ; 1c50a (7:450a) ld [hli], a ld a, [hl] farcall $4, $69fd - ld hl, $d349 + ld hl, wd349 dec [hl] .asm_1c52c @@ -329,7 +329,7 @@ Func_1c78d: ; 1c78d (7:478d) ret Func_1c7de: ; 1c7de (7:47de) - ld a, [$d3b7] + ld a, [wc3b7] and $20 ret ; 0x1c7e4 @@ -344,7 +344,7 @@ Func_1c83d: ; 1c83d (7:483d) push bc ld b, a ld c, $a - ld hl, $d3bb + ld hl, wd3bb .asm_1c845 ld a, [hl] or a @@ -387,7 +387,7 @@ Func_1d078: ; 1d078 (7:5078) call DoFrameIfLCDEnabled call UpdateRNGSources call $5614 - ld hl, $d635 + ld hl, wd635 inc [hl] call Func_378a or a @@ -395,7 +395,7 @@ Func_1d078: ; 1d078 (7:5078) farcall Func_10ab4 jr .asm_1d07e .asm_1d0ae - ld hl, $d626 + ld hl, wd626 ld a, [hl] or a jr z, .asm_1d0b8 @@ -460,7 +460,7 @@ Func_1d11c: ; 1d11c (7:511c) jr z, .asm_1d14f ld a, $1 .asm_1d14f - ld hl, $d636 + ld hl, wd636 farcall Func_111e9 farcall $4, $4031 .asm_1d15a diff --git a/src/engine/bank8.asm b/src/engine/bank8.asm index a30e33c..ca52ca5 100644 --- a/src/engine/bank8.asm +++ b/src/engine/bank8.asm @@ -3,48 +3,48 @@ ; 0 - e4 is a big set of data, seems to be one entry for each card Func_200e5: ; 200e5 (8:40e5) - ld [$ce18], a + ld [wce18], a call CreateHandCardList ld hl, wDuelTempList - ld de, wHandCardBuffer + ld de, wTempHandCardList call CopyBuffer - ld hl, wHandCardBuffer + ld hl, wTempHandCardList ld a, [hli] - ld [$ce16], a + ld [wce16], a cp $ff ret z push hl - ld a, [$ce18] + ld a, [wce18] ld d, a ld hl, $4000 .asm_4106 xor a - ld [$ce21], a + ld [wce21], a ld a, [hli] cp $ff jp z, $41b1 cp d jp nz, .incHL5 ld a, [hli] - ld [$ce17], a - ld a, [$ce16] + ld [wce17], a + ld a, [wce16] call LoadCardDataToBuffer1_FromDeckIndex cp $d2 jr nz, .asm_2012b ld b, a - ld a, [$ce20] + ld a, [wce20] and $2 jr nz, .incHL4 ld a, b .asm_2012b ld b, a - ld a, [$ce17] + ld a, [wce17] cp b jr nz, .incHL4 push hl push de - ld a, [$ce16] + ld a, [wce16] ldh [hTempCardIndex_ff9f], a bank1call CheckCantUseTrainerDueToHeadache jp c, $41a8 @@ -62,10 +62,10 @@ Func_200e5: ; 200e5 (8:40e5) jr nc, .incHL4 inc hl inc hl - ld [$ce19], a + ld [wce19], a push de push hl - ld a, [$ce16] + ld a, [wce16] ldh [hTempCardIndex_ff9f], a ld a, $6 bank1call $67be @@ -77,22 +77,22 @@ Func_200e5: ; 200e5 (8:40e5) pop hl inc hl inc hl - ld a, [$ce20] + ld a, [wce20] ld b, a - ld a, [$ce21] + ld a, [wce21] or b - ld [$ce20], a + ld [wce20], a pop hl and $8 jp z, $40f7 call CreateHandCardList ld hl, wDuelTempList - ld de, $cf68 + ld de, wTempHandCardList call $697b - ld hl, $cf68 - ld a, [$ce20] + ld hl, wTempHandCardList + ld a, [wce20] and $f7 - ld [$ce20], a + ld [wce20], a jp $40f7 .incHL5 diff --git a/src/engine/home.asm b/src/engine/home.asm index d502bac..6d596f9 100644 --- a/src/engine/home.asm +++ b/src/engine/home.asm @@ -1442,11 +1442,11 @@ UpdateRNGSources: ; 089b (0:089b) ret Func_08bf: ; 08bf (0:08bf) - ld hl, $cad6 + ld hl, wcad6 ld [hl], e inc hl ld [hl], d - ld hl, $cad8 + ld hl, wcad8 ld [hl], $1 inc hl xor a @@ -1485,7 +1485,7 @@ Func_08de: ; 08de (0:08de) ret Func_08ef: ; 08ef (0:08ef) - ld hl, $cadc + ld hl, wcadc ld a, [hl] or a jr z, .asm_902 @@ -1503,7 +1503,7 @@ Func_08ef: ; 08ef (0:08ef) ld [bc], a ret .asm_902 - ld hl, $cad6 + ld hl, wcad6 ld c, [hl] inc hl ld b, [hl] @@ -1522,11 +1522,11 @@ Func_08ef: ; 08ef (0:08ef) ld a, [bc] inc bc jr nc, .asm_92a - ld hl, $cad6 + ld hl, wcad6 ld [hl], c inc hl ld [hl], b - ld hl, $cadd + ld hl, wcadd ld b, [hl] inc hl inc hl @@ -1536,7 +1536,7 @@ Func_08ef: ; 08ef (0:08ef) ret .asm_92a ld [wcade], a - ld hl, $cada + ld hl, wcada bit 0, [hl] jr nz, .asm_94a set 0, [hl] @@ -1550,7 +1550,7 @@ Func_08ef: ; 08ef (0:08ef) inc a ld [hli], a push hl - ld hl, $cad6 + ld hl, wcad6 ld [hl], c inc hl ld [hl], b @@ -1568,7 +1568,7 @@ Func_08ef: ; 08ef (0:08ef) Func_099c: ; 099c (0:099c) xor a ld [wcab5], a - ld hl, $ca00 + ld hl, wBufOAM ld c, $28 xor a .asm_9a6 @@ -2461,7 +2461,7 @@ DuelTransmissionError: ; 0f35 (0:0f35) call DrawWideTextBox_WaitForInput ld a, $ff ld [wd0c3], a - ld hl, $cbe5 + ld hl, wcbe5 ld a, [hli] ld h, [hl] ld l, a @@ -2481,12 +2481,12 @@ Func_0f58: ; 0f58 (0:0f58) call GetTurnDuelistVariable or a ; cp DUELIST_TYPE_PLAYER jr z, .asm_f70 - ld hl, $cbe2 + ld hl, wcbe2 ld de, wRNG1 jr .asm_f76 .asm_f70 ld hl, wRNG1 - ld de, $cbe2 + ld de, wcbe2 .asm_f76 ld c, $3 call Func_0e63 @@ -2688,7 +2688,7 @@ CopyDeckData: ; 1072 (0:1072) jr nz, .card_quantity_loop jr .next_card .done - ld hl, $cce9 + ld hl, wcce9 ld a, [de] inc de ld [hli], a @@ -3436,7 +3436,131 @@ LoadCardDataToBuffer2_FromDeckIndex: ; 138c (0:138c) ret ; 0x13a2 - INCROM $13a2, $1461 +Func_13a2: ; 13a2 (0:13a2) + ldh a, [hTempCardIndex_ff98] + ld d, a + ldh a, [hTempPlayAreaLocationOffset_ff9d] + ld e, a + call Func_13f7 + ret c + ldh a, [hTempPlayAreaLocationOffset_ff9d] + ld e, a + add DUELVARS_ARENA_CARD + call GetTurnDuelistVariable + ld [wccee], a + call LoadCardDataToBuffer2_FromDeckIndex + ldh a, [hTempCardIndex_ff98] + ld [hl], a + call LoadCardDataToBuffer1_FromDeckIndex + ldh a, [hTempCardIndex_ff98] + call PutHandCardInPlayArea + ldh a, [hTempPlayAreaLocationOffset_ff9d] + ld a, e + add DUELVARS_ARENA_CARD_HP + call GetTurnDuelistVariable + ld a, [wLoadedCard2HP] + ld c, a + ld a, [wLoadedCard1HP] + sub c + add [hl] + ld [hl], a + ld a, e + add $c2 + ld l, a + ld [hl], $00 + ld a, e + add DUELVARS_ARENA_CARD_CHANGED_TYPE + ld l, a + ld [hl], $00 + ld a, e + or a + call z, ResetStatusConditions + ldh a, [hTempPlayAreaLocationOffset_ff9d] + add DUELVARS_ARENA_CARD_STAGE + call GetTurnDuelistVariable + ld a, [wLoadedCard1Stage] + ld [hl], a + or a + ret ; ! + scf + ret +; 0x13f7 + +Func_13f7: ; 13f7 (0:13f7) + push de + ld a, e + add DUELVARS_ARENA_CARD + call GetTurnDuelistVariable + call LoadCardDataToBuffer2_FromDeckIndex + ld a, d + call LoadCardDataToBuffer1_FromDeckIndex + ld hl, wLoadedCard2Name + ld de, wLoadedCard1NonPokemonDescription + ld a, [de] + cp [hl] + jr nz, .asm_1427 + inc de + inc hl + ld a, [de] + cp [hl] + jr nz, .asm_1427 + pop de + ld a, e + add $c2 + call GetTurnDuelistVariable + and $80 + jr nz, .asm_1425 + ld a, $01 + or a + scf + ret +.asm_1425 + or a + ret +.asm_1427 + pop de + xor a + scf + ret +; 0x142b + +Func_142b: ; 142b (0:142b) + ld a, e + add $c2 + call GetTurnDuelistVariable + and $80 + jr nz, .asm_1437 + jr .asm_145e +.asm_1437 + ld a, e + add DUELVARS_ARENA_CARD + ld l, a + ld a, [hl] + call LoadCardDataToBuffer2_FromDeckIndex + ld a, d + call LoadCardDataToBuffer1_FromDeckIndex + ld hl, wLoadedCard1NonPokemonDescription + ld e, [hl] + inc hl + ld d, [hl] + call $2ecd + ld hl, wLoadedCard2Name + ld de, wLoadedCard1NonPokemonDescription + ld a, [de] + cp [hl] + jr nz, .asm_145e + inc de + inc hl + ld a, [de] + cp [hl] + jr nz, .asm_145e + or a + ret +.asm_145e + xor a + scf + ret +; 0x1461 ; init the status and all substatuses of the turn holder's arena Pokemon. ; called when sending a new Pokemon into the arena. @@ -3947,7 +4071,7 @@ CopyMoveDataAndDamage_FromDeckIndex: ; 16c0 (0:16c0) xor a ld [hl], a ld [wNoDamageOrEffect], a - ld hl, wccbf + ld hl, wTempDamage_ccbf ld [hli], a ld [hl], a ret @@ -3971,7 +4095,7 @@ Func_16f6: ; 16f6 (0:16f6) ld [wccec], a ld [wcccd], a ld [wcced], a - ld [wcce6], a + ld [wDamageToSelfMode], a ld [wccef], a ld [wccf0], a ld [wccf1], a @@ -4034,7 +4158,7 @@ Func_1730: ; 1730 (0:1730) call TryExecuteEffectCommandFunction call ApplyDamageModifiers_DamageToTarget call Func_189d - ld hl, wccbf + ld hl, wTempDamage_ccbf ld [hl], e inc hl ld [hl], d @@ -4076,7 +4200,7 @@ Func_17fb: ; 17fb (0:17fb) call TryExecuteEffectCommandFunction pop af ld [wTempNonTurnDuelistCardID], a - call HandleStrikesBack + call HandleStrikesBack_AgainstResidualMove bank1call $6df1 call Func_1bb4 bank1call $7195 @@ -4104,7 +4228,7 @@ Func_1823: ; 1823 (0:1823) DealConfusionDamageToSelf: ; 1828 (0:1828) bank1call $4f9d ld a, $1 - ld [wcce6], a + ld [wDamageToSelfMode], a ldtx hl, DamageToSelfDueToConfusionText call DrawWideTextBox_PrintText ld a, $75 @@ -4180,7 +4304,7 @@ Func_189d: ; 189d (0:189d) push de call SwapTurn xor a - ld [wcceb], a + ld [wTempPlayAreaLocationOffset_cceb], a call HandleTransparency call SwapTurn pop de @@ -4483,7 +4607,7 @@ SubstractHP: ; 1a96 (0:1a96) sbc d and $80 jr z, .no_underflow - ld [hl], $0 + ld [hl], 0 .no_underflow ld a, [hl] or a @@ -4543,7 +4667,98 @@ PrintKnockedOut: ; 1ad3 (0:1ad3) ret ; 0x1af3 - INCROM $1af3, $1b8d +; seems to be a function to deal damage to a card +Func_1af3: ; 1af3 (0:1af3) + ld a, $78 + ld [wLoadedMoveAnimation], a + ld a, b + ld [wTempPlayAreaLocationOffset_cceb], a + or a ; cp PLAY_AREA_ARENA + jr nz, .skip_no_damage_or_effect_check + ld a, [wNoDamageOrEffect] + or a + ret nz +.skip_no_damage_or_effect_check + push hl + push de + push bc + xor a + ld [wNoDamageOrEffect], a + push de + ld a, [wTempPlayAreaLocationOffset_cceb] + add DUELVARS_ARENA_CARD + call GetTurnDuelistVariable + call GetCardIDFromDeckIndex + ld a, e + ld [wTempNonTurnDuelistCardID], a + pop de + ld a, [wTempPlayAreaLocationOffset_cceb] + or a ; cp PLAY_AREA_ARENA + jr nz, .next + ld a, [wDamageToSelfMode] + or a + jr z, .turn_swapped + ld b, CARD_LOCATION_ARENA + call ApplyAttachedPluspower + jr .next +.turn_swapped + call SwapTurn + ld b, CARD_LOCATION_ARENA + call ApplyAttachedPluspower + call SwapTurn +.next + ld a, [wLoadedMoveCategory] + cp POKEMON_POWER + jr z, .skip_defender + ld a, [wTempPlayAreaLocationOffset_cceb] + or CARD_LOCATION_PLAY_AREA + ld b, a + call ApplyAttachedDefender +.skip_defender + ld a, [wTempPlayAreaLocationOffset_cceb] + or a ; cp PLAY_AREA_ARENA + jr nz, .in_bench + push de + call HandleNoDamageOrEffectSubstatus + pop de + call HandleDamageReduction +.in_bench + bit 7, d + jr z, .no_underflow + ld de, 0 +.no_underflow + call HandleDamageReductionOrNoDamageFromPkmnPowerEffects + ld a, [wTempPlayAreaLocationOffset_cceb] + ld b, a + or a ; cp PLAY_AREA_ARENA + jr nz, .benched + ; add damage at de to [wTempDamage_ccbf] + ld hl, wTempDamage_ccbf + ld a, e + add [hl] + ld [hli], a + ld a, d + adc [hl] + ld [hl], a +.benched + ld c, $00 + add DUELVARS_ARENA_CARD_HP + call GetTurnDuelistVariable + push af + bank1call $7469 + pop af + or a + jr z, .skip_knocked_out + push de + call PrintKnockedOutIfHLZero + pop de +.skip_knocked_out + call HandleStrikesBack_AgainstDamagingMove + pop bc + pop de + pop hl + ret +; 0x1b8d Func_1b8d: ; 1b8d (0:1b8d) bank1call $4f9d @@ -4591,7 +4806,7 @@ Func_1bca: ; 1bca (0:1bca) ld [hl], $0 ld hl, $0000 call LoadTxRam2 - ld hl, $ccaa + ld hl, wLoadedMoveName ld de, wTxRam2_b ld a, [hli] ld [de], a @@ -5044,7 +5259,7 @@ DrawLabeledTextBox: ; 1e00 (0:1e00) ld a, [wConsole] cp CONSOLE_SGB jr nz, .draw_top_border - ld a, [wFrameType] + ld a, [wTextBoxFrameType] or a jr z, .draw_top_border ; Console is SGB and frame type is != 0. @@ -5217,7 +5432,7 @@ ContinueDrawingTextBoxCGB: call CopyLine pop hl call BankswitchVRAM1 - ld a, [wFrameType] + ld a, [wTextBoxFrameType] ld e, a ld d, a xor a @@ -5242,7 +5457,7 @@ CopyCurrentLineTilesAndAttrCGB: ; 1efb (0:1efb) ; fallthrough CopyCurrentLineAttrCGB: call BankswitchVRAM1 - ld a, [wFrameType] ; on CGB, wFrameType determines the palette and the other attributes + ld a, [wTextBoxFrameType] ; on CGB, wTextBoxFrameType determines the palette and the other attributes ld e, a ld d, a call CopyLine @@ -5255,13 +5470,13 @@ DrawRegularTextBoxSGB: ; 1f0f (0:1f0f) call DrawRegularTextBoxDMG pop de pop bc - ld a, [wFrameType] + ld a, [wTextBoxFrameType] or a ret z ColorizeTextBoxSGB: push bc push de - ld hl, $cae0 + ld hl, wTempSGBPacket ld de, AttrBlkPacket_1f4f ld c, $10 .copy_sgb_command_loop @@ -5272,7 +5487,7 @@ ColorizeTextBoxSGB: jr nz, .copy_sgb_command_loop pop de pop bc - ld hl, $cae4 + ld hl, wTempSGBPacket + 4 ld [hl], d inc hl ld [hl], e @@ -5285,13 +5500,13 @@ ColorizeTextBoxSGB: add c dec a ld [hli], a - ld a, [wFrameType] + ld a, [wTextBoxFrameType] and $80 jr z, .asm_1f48 ld a, $2 - ld [wcae2], a + ld [wTempSGBPacket + 2], a .asm_1f48 - ld hl, $cae0 + ld hl, wTempSGBPacket call SendSGB ret @@ -5692,7 +5907,7 @@ Func_22f2: ; 22f2 (0:22f2) dec de ld l, e ld h, d - ld de, $cd05 + ld de, wcd05 ld c, 1 call SafeCopyDataDEtoHL ld hl, hffac @@ -5722,7 +5937,7 @@ Func_2325: ; 2325 (0:2325) or a ret nz ldh a, [hffa8] - ld hl, $cd04 + ld hl, wcd04 cp [hl] jr nz, .asm_2345 ldh a, [hffa9] @@ -5972,13 +6187,13 @@ Func_24ca: ; 24ca (0:24ca) call BankswitchHome push de ld a, e - ld de, $ccf4 + ld de, wccf4 call Func_24fa pop de ld a, d - ld de, $ccf5 + ld de, wccf5 call Func_24fa - ld hl, $ccf4 + ld hl, wccf4 ld b, $8 .asm_24e8 ld a, [hli] @@ -5991,7 +6206,7 @@ Func_24ca: ; 24ca (0:24ca) jr nz, .asm_24e8 call BankpopHome pop bc - ld de, $ccf4 + ld de, wccf4 ret Func_24fa: ; 24fa (0:24fa) @@ -6019,7 +6234,7 @@ Func_2510: ; 2510 (0:2510) call Func_252e pop bc Func_2518: ; 2518 (0:2518) - ld hl, $cd07 + ld hl, wcd07 ld a, b xor [hl] ld h, $0 @@ -6038,7 +6253,7 @@ Func_2518: ; 2518 (0:2518) Func_252e: ; 252e (0:252e) ld a, BANK(Fonts); BANK(DuelGraphics); BANK(VWF) call BankpushHome - ld de, $ccf4 + ld de, wccf4 push de ld c, $8 .asm_2539 @@ -6929,7 +7144,7 @@ Func_2d15: ; 2d15 (0:2d15) call EnableLCD jr .asm_2d36 .asm_2d2d - ld hl, $ce4c + ld hl, wce4c ld a, [hli] ld h, [hl] ld l, a @@ -6992,7 +7207,7 @@ Func_2d43: ; 2d43 (0:2d43) xor a ld [wcd0a], a ld de, wTxRam2 - ld hl, $ce49 + ld hl, wce49 call Func_2de0 ld a, l or h @@ -7007,7 +7222,7 @@ Func_2d43: ; 2d43 (0:2d43) .tx_ram3 call Func_2ceb ld de, wTxRam3 - ld hl, $ce4a + ld hl, wce4a call Func_2de0 call Func_2e12 call Func_2cd7 @@ -7358,7 +7573,7 @@ LoadCardGfx: ; 2fa0 (0:2fa0) set 6, h ; $4000 ≤ de ≤ $7fff call CopyGfxData ld b, CGB_PAL_SIZE - ld de, $ce23 + ld de, wce23 .copy_card_palette ld a, [hli] ld [de], a @@ -7524,7 +7739,7 @@ Func_3061: ; 3061 (0:3061) ; function that executes one or more consecutive coin tosses during a duel (a = number of coin tosses), ; displaying each result ([O] or [X]) starting from the top left corner of the screen. ; text at de is printed in a text box during the coin toss. -; returns: the number of heads in a and in $cd9d, and carry if at least one heads +; returns: the number of heads in a and in wcd9d, and carry if at least one heads TossCoinATimes: ; 3071 (0:3071) push hl ld hl, wCoinTossScreenTextID @@ -7537,8 +7752,8 @@ TossCoinATimes: ; 3071 (0:3071) ; function that executes a single coin toss during a duel. ; text at de is printed in a text box during the coin toss. -; returns: - carry, and 1 in a and in $cd9d if heads -; - nc, and 0 in a and in $cd9d if tails +; returns: - carry, and 1 in a and in wcd9d if heads +; - nc, and 0 in a and in wcd9d if tails TossCoin: ; 307d (0:307d) push hl ld hl, wCoinTossScreenTextID @@ -7547,7 +7762,7 @@ TossCoin: ; 307d (0:307d) ld [hl], d ld a, $1 bank1call _TossCoin - ld hl, $cac2 + ld hl, wcac2 ld [hl], $0 pop hl ret @@ -7654,7 +7869,7 @@ Func_311d: ; 311d (0:311d) Func_312d: ; 312d (0:312d) ; serial transfer-related push hl - ld hl, $ce64 + ld hl, wce64 ld a, $88 ld [hli], a ; [wce64] ← $88 ld a, $33 @@ -7676,7 +7891,7 @@ Func_312d: ; 312d (0:312d) ; serial transfer-related ld [hl], e ; [wce6c] ← $45 inc hl ld [hl], d ; [wce6d] ← $ff - ld hl, $ce70 + ld hl, wce70 ld [hl], $64 ; [wce70] ← $64 inc hl ld [hl], $ce ; [wce71] ← $ce @@ -7734,21 +7949,21 @@ PointerTable_3190: ; 3190 (0:3190) Func_31a8: ; 31a8 (0:31a8) call Func_31fc Func_31ab: ; 31ab (0:31ab) - ld hl, $ce63 + ld hl, wce63 inc [hl] ret Func_31b0: ; 31b0 (0:31b0) call Func_31ab - ld hl, $ce68 + ld hl, wce68 ld a, [hli] or [hl] jr nz, .asm_31bf call Func_31ab jr Func_31dd .asm_31bf - ld hl, $ce6a - ld de, $ce70 + ld hl, wce6a + ld de, wce70 ld a, [hli] ld [de], a inc de @@ -7757,7 +7972,7 @@ Func_31b0: ; 31b0 (0:31b0) Func_31ca: ; 31ca (0:31ca) call Func_31fc - ld hl, $ce68 + ld hl, wce68 ld a, [hl] dec [hl] or a @@ -7796,7 +8011,7 @@ Func_31f2: ; 31f2 (0:31f2) ret Func_31fc: ; 31fc (0:31fc) - ld hl, $ce70 + ld hl, wce70 ld e, [hl] inc hl ld d, [hl] @@ -7806,7 +8021,7 @@ Func_31fc: ; 31fc (0:31fc) dec hl ld [hl], e ld e, a - ld hl, $ce6c + ld hl, wce6c add [hl] ld [hli], a ld a, $0 @@ -7982,7 +8197,7 @@ HandleDamageReductionOrNoDamageFromPkmnPowerEffects: ; 32f7 (0:32f7) ld a, MUK call CountPokemonIDInBothPlayAreas ret c - ld a, [wcceb] + ld a, [wTempPlayAreaLocationOffset_cceb] or a call nz, HandleDamageReductionExceptSubstatus2.pkmn_power push de ; push damage from call above, which handles Invisible Wall and Kabuto Armor @@ -7995,12 +8210,14 @@ HandleDamageReductionOrNoDamageFromPkmnPowerEffects: ; 32f7 (0:32f7) ret ; 0x3317 -; very similar to HandleStrikesBack -Func_3317: ; 3317 (0:3317) +; when Machamp is damaged, if its Strikes Back is active, +; the attacking Pokemon takes 10 damage. +; used to bounce back a damaging move. +HandleStrikesBack_AgainstDamagingMove: ; 3317 (0:3317) ld a, e or d ret z - ld a, [wcce6] + ld a, [wDamageToSelfMode] or a ret nz ld a, [wTempNonTurnDuelistCardID] @@ -8012,12 +8229,12 @@ Func_3317: ; 3317 (0:3317) ld a, [wLoadedMoveCategory] cp POKEMON_POWER ret z - ld a, [wcceb] - or a - jr nz, .asm_333b + ld a, [wTempPlayAreaLocationOffset_cceb] + or a ; cp PLAY_AREA_ARENA + jr nz, .in_bench call CheckCannotUseDueToStatus ret c -.asm_333b +.in_bench push hl push de call SwapTurn @@ -8044,10 +8261,10 @@ Func_3317: ; 3317 (0:3317) pop hl pop af or a - jr z, .asm_3379 + jr z, .not_knocked_out xor a call PrintPlayAreaCardKnockedOutIfNoHP -.asm_3379 +.not_knocked_out call SwapTurn pop de pop hl @@ -8212,7 +8429,7 @@ HandleNoDamageOrEffectSubstatus: ; 3432 (0:3432) scf ret .neutralizing_shield - ld a, [wcce6] + ld a, [wDamageToSelfMode] or a ret nz ; prevent damage if attacked by a non-basic Pokemon @@ -8241,7 +8458,7 @@ HandleTransparency: ; 348a (0:348a) ld a, [wLoadedMoveCategory] cp POKEMON_POWER jr z, .done ; Transparency has no effect against Pkmn Powers - ld a, [wcceb] + ld a, [wTempPlayAreaLocationOffset_cceb] call CheckCannotUseDueToStatus_OnlyToxicGasIfANon0 jr c, .done xor a @@ -8598,8 +8815,9 @@ HandleDestinyBondSubstatus: ; 363b (0:363b) ; 0x367b ; when Machamp is damaged, if its Strikes Back is active, -; the attacking Pokemon takes 10 damage -HandleStrikesBack: ; 367b (0:367b) +; the attacking Pokemon takes 10 damage. +; used to bounce back a move of the RESIDUAL category +HandleStrikesBack_AgainstResidualMove: ; 367b (0:367b) ld a, [wTempNonTurnDuelistCardID] cp MACHAMP jr z, .strikes_back @@ -8608,7 +8826,7 @@ HandleStrikesBack: ; 367b (0:367b) ld a, [wLoadedMoveCategory] and RESIDUAL ret nz - ld a, [wccbf] + ld a, [wTempDamage_ccbf] or a ret z call SwapTurn @@ -8616,11 +8834,11 @@ HandleStrikesBack: ; 367b (0:367b) call SwapTurn ret c ld hl, 10 ; damage to be dealt to attacker - call ApplyStrikesBack + call ApplyStrikesBack_AgainstResidualMove call nc, WaitForWideTextBoxInput ret -ApplyStrikesBack: ; 36a2 (0:36a2) +ApplyStrikesBack_AgainstResidualMove: ; 36a2 (0:36a2) push hl call LoadTxRam3 ld a, [wTempTurnDuelistCardID] @@ -9093,7 +9311,7 @@ Func_39ad: ; 39ad (0:39ad) add l ld l, a ld h, $0 - ld bc, $d34a + ld bc, wd34a add hl, bc pop bc ret @@ -9107,7 +9325,7 @@ Func_39c3: ; 39c3 (0:39c3) ld b, a ld c, $8 ld de, $000c - ld hl, $d34a + ld hl, wd34a ld a, [wd3ab] .asm_39d6 cp [hl] @@ -9155,7 +9373,7 @@ Func_39fc: ; 39fc (0:39fc) pop af jr z, .asm_3a11 ld a, c - ld hl, $d112 + ld hl, wd112 cp [hl] jr z, .asm_3a1c .asm_3a11 @@ -9388,9 +9606,9 @@ Func_3b52: ; 3b52 (0:3b52) push hl push bc ld a, [wd42a] - ld hl, $d4c0 + ld hl, wd4c0 and [hl] - ld hl, $d423 + ld hl, wd423 ld c, $7 .asm_3b60 and [hl] @@ -9415,7 +9633,7 @@ Func_3b6a: ; 3b6a (0:3b6a) ld a, [wd422] cp $61 jr nc, .asm_3b90 - ld hl, $d4ad + ld hl, wd4ad ld a, [wd4ac] cp [hl] jr nz, .asm_3b90 diff --git a/src/wram.asm b/src/wram.asm index 4dafdf9..49c6e99 100644 --- a/src/wram.asm +++ b/src/wram.asm @@ -414,13 +414,34 @@ wcad4:: ; cad4 wcad5:: ; cad5 ds $1 - ds $8 +wcad6:: ; cad6 + ds $2 + +wcad8:: ; cad8 + ds $1 + +wcad9:: ; cad9 + ds $1 + +wcada:: ; cada + ds $1 + +wcadb:: ; cadb + ds $1 + +wcadc:: ; cadc + ds $1 + +wcadd:: ; cadd + ds $1 wcade:: ; cade - ds $4 + ds $1 -wcae2:: ; cae2 - ds $e + ds $1 + +wTempSGBPacket:: ; cae0 + ds $10 ; temporal CGB palette data buffer to eventually save into BGPD or OBPD registers. wBackgroundPalettesCGB:: ; caf0 @@ -477,7 +498,7 @@ wcba3:: ; cba3 wSerialRecvIndex:: ; cba4 ds $1 -wSerialRecvBuf:: ; cba5 - cbc4 +wSerialRecvBuf:: ; cba5 ds $20 ds $1 @@ -498,6 +519,7 @@ wCardPageNumber:: ; cbc7 ds $1 +; 2-byte something wcbc9:: ; cbc9 ds $2 @@ -507,6 +529,7 @@ wBenchSelectedPokemon:: ; cbcb ds $2 +; used in CheckIfEnoughEnergies for the calculation wAttachedEnergiesAccum:: ; cbce ds $1 @@ -518,22 +541,36 @@ wSelectedDuelSubMenuItem:: ; cbcf wSelectedDuelSubMenuScrollOffset:: ; cbd0 ds $1 - ds $14 + ds $5 -wcbe5:: ; cbe5 +wcbd6:: ; cbd6 ds $1 -wcbe6:: ; cbe6 + ds $a + +wcbe1:: ; cbe1 ds $1 +wcbe2:: ; cbe2 + ds $3 + +wcbe5:: ; cbe5 + ds $2 + wcbe7:: ; cbe7 - ds $6 + ds $1 + + ds $5 wcbed:: ; cbed - ds $c + ds $8 + + ds $4 wcbf9:: ; cbf9 - ds $b + ds $1 + + ds $a wcc04:: ; cc04 ds $1 @@ -591,6 +628,7 @@ wcc12:: ; cc12 wIsPracticeDuel:: ; cc13 ds $1 +wcc14:: ; cc14 ds $1 wOpponentPortrait:: ; cc15 @@ -633,15 +671,15 @@ wDamage:: ; ccb9 ds $2 ; wccbb and wccbc appear to be used for AI scoring -wccbb:: +wccbb:: ; ccbb ds $1 -wccbc:: +wccbc:: ; ccbc ds $1 ds $2 -wccbf:: ; ccbf +wTempDamage_ccbf:: ; ccbf ds $2 wDamageEffectiveness:: ; ccc1 @@ -667,26 +705,40 @@ wSelectedMoveIndex:: ; ccc6 wNoDamageOrEffect:: ; ccc7 ds $2 +; set to 1 if the coin toss in the confusion check is heads (CheckSelfConfusionDamage) wccc9:: ; ccc9 - ds $4 + ds $1 + + ds $3 wcccd:: ; cccd ds $1 +; some array used in effect functions with wcccd as the index. unknown length wccce:: ; ccce ds $18 -wcce6:: ; cce6 - ds $5 +; this is 1 (non-0) if dealing damage to self due to confusion +wDamageToSelfMode:: ; cce6 + ds $1 -wcceb:: ; cceb + ds $2 + +; used in CopyDeckData +wcce9:: ; cce9 + ds $2 + +wTempPlayAreaLocationOffset_cceb:: ; cceb ds $1 wccec:: ; ccec ds $1 wcced:: ; cced - ds $2 + ds $1 + +wccee:: ; ccee + ds $1 wccef:: ; ccef ds $1 @@ -705,10 +757,16 @@ SECTION "WRAM Engine 2", WRAM0 ; color/pattern of the text box border. Values between 0-7?. Interpreted differently depending on console type ; Note that this doesn't appear to be a selectable option, just changes with the situation. ; For example the value 4 seems to be used a lot during duels. -wFrameType:: ; ccf3 +wTextBoxFrameType:: ; ccf3 ds $1 - ds $10 +wccf4:: ; ccf4 + ds $1 + +wccf5:: ; ccf5 + ds $1 + + ds $e wcd04:: ; cd04 ds $1 @@ -769,18 +827,23 @@ wcd17:: ; cd17 ds $7f +; x coord of the leftmost item in a horizontal menu wLeftmostItemCursorX:: ; cd98 ds $1 +; used in RefreshMenuCursor_CheckPlaySFX to play a sound during any frame when this address is non-0 wRefreshMenuCursorSFX:: ; cd99 ds $1 wcd9a:: ; cd9a - ds $2 + ds $1 + + ds $1 wcd9c:: ; cd9c ds $1 +; this stores the result from a coin toss (number of heads) wcd9d:: ; cd9d ds $1 @@ -788,7 +851,53 @@ wcd9e:: ; cd9e ds $1 wcd9f:: ; cd9f - ds $83 + ds $1 + + ds $5 + +wcda5:: ; cda5 + ds $1 + +wcda6:: ; cda6 + ds $1 + +wcda7:: ; cda7 + ds $1 + + ds $33 + +wcddb:: ; cddb + ds $1 + +wcddc:: ; cddc + ds $1 + + ds $26 + +wce03:: ; ce03 + ds $1 + + ds $12 + +wce16:: ; ce16 + ds $1 + +wce17:: ; ce17 + ds $1 + +wce18:: ; ce18 + ds $1 + +wce19:: ; ce19 + ds $1 + + ds $6 + +wce20:: ; ce20 + ds $1 + +wce21:: ; ce21 + ds $1 ; During a duel, this is always $b after the first attack. ; $b is the bank where the functions associated to card or effect commands are. @@ -796,7 +905,9 @@ wcd9f:: ; cd9f wce22:: ; ce22 ds $1 - ds $8 +; LoadCardGfx loads the card's palette here +wce23:: ; ce23 + ds CGB_PAL_SIZE wce2b:: ; ce2b ds $1 @@ -832,7 +943,10 @@ wce4a:: ; ce4a ds $1 wce4b:: ; ce4b - ds $3 + ds $1 + +wce4c:: ; ce4c + ds $2 wCoinTossScreenTextID:: ; ce4e ds $2 @@ -841,16 +955,51 @@ wce50:: ; ce50 ds $1 wce51:: ; ce51 - ds $8 + ds $1 -wce59:: ; ce59 ds $7 +wce59:: ; ce59 + ds $1 + + ds $4 + +wce5e:: ; ce5e + ds $1 + + ds $1 + wce60:: ; ce60 - ds $3 + ds $1 + + ds $2 wce63:: ; ce63 - ds $9 + ds $1 + +wce64:: ; ce64 + ds $1 + +wce65:: ; ce65 + ds $1 + +wce66:: ; ce66 + ds $1 + +wce67:: ; ce67 + ds $1 + +wce68:: ; ce68 + ds $1 + +wce69:: ; ce69 + ds $1 + +wce6a:: ; ce6a + ds $1 + +wce6b:: ; ce6b + ds $1 wce6c:: ; ce6c ds $1 @@ -862,16 +1011,36 @@ wce6e:: ; ce6e ds $1 wce6f:: ; ce6f - ds $d + ds $1 + +wce70:: ; ce70 + ds $1 + +wce71:: ; ce71 + ds $1 + + ds $a ; used in CountPokemonIDInPlayArea wTempPokemonID_ce7e:: ; ce7c ds $1 - ds $26 + ds $24 + +wcea1:: ; cea1 + ds $1 + + ds $1 wcea3:: ; cea3 - ds $c + ds $1 + + ds $5 + +wcea9:: ; cea9 + ds $1 + + ds $5 wceaf:: ; ceaf ds $1 @@ -892,24 +1061,95 @@ wceb4:: ; ceb4 ds $1 wceb5:: ; ceb5 - ds $17 + ds $1 + + ds $5 + +wcebb:: ; cebb + ds $1 + + ds $10 wcecc:: ; cecc - ds $9c + ds $1 -wHandCardBuffer:: ; cf68 - ds $51 + ds $1 + +wcece:: ; cece + ds $2 + + ds $47 + +; used in bank2, probably related to wTempHandCardList (another temp list?) +wcf17:: ; cf17 + ds DECK_SIZE + + ds $15 + +; used by Func_200e5, AI related +wTempHandCardList:: ; cf68 + ds DECK_SIZE + + ds $15 wcfb9:: ; cfb9 - ds $2a + ds $1 + + ds $17 + +wcfd1:: ; cfd1 + ds $1 + + ds $8 + +wcfda:: ; cfda + ds $2 + + ds $7 wcfe3:: ; cfe3 + ds $1 + + ds $1c SECTION "WRAM1", WRAMX - ds $a9 + + ds $d + +wd00d:: ; d00d + ds $1 + + ds $78 + +wd086:: ; d086 + ds $1 + +wd087:: ; d087 + ds $1 + +wd088:: ; d088 + ds $1 + + ds $19 + +wd0a2:: ; d0a2 + ds $2 + +wd0a4:: ; d0a4 + ds $1 + +wd0a5:: ; d0a5 + ds $1 + + ds $3 wd0a9:: ; d0a9 - ds $b + ds $1 + +wd0aa:: ; d0aa + ds $1 + + ds $9 wd0b4:: ; d0b4 ds $1 @@ -981,7 +1221,10 @@ wd0ca:: ; d0ca ds $1 wd0cb:: ; d0cb - ds $41 + ds $1 + +wd0cc:: ; d0cc + ds 8 * CGB_PAL_SIZE wd10c:: ; d10c ds $1 @@ -1017,10 +1260,14 @@ wd116:: ; d116 ds $1 wd117:: ; d117 - ds $4 + ds $1 + + ds $3 wd11b:: ; d11b - ds $2 + ds $1 + + ds $1 wPCPackSelection:: ; d11d ds $1 @@ -1034,7 +1281,13 @@ wPCPacks:: ; d11e wPCLastDirectionPressed:: ; d12d ds $1 - ds $3 + ds $1 + +wd12f:: ; d12f + ds $1 + +wd130:: ; d130 + ds $1 wd131:: ; d131 ds $1 @@ -1071,7 +1324,26 @@ wd237:: ; d237 ds $1 wd238:: ; d238 - ds $57 + ds $1 + + ds $1 + +wd23a:: ; d23a + ds $1 + +wd23b:: ; d23b + ds $1 + +wd23c:: ; d23c + ds $1 + +wd23d:: ; d23d + ds $1 + +wd23e:: ; d23e + ds $1 + + ds $50 wd28f:: ; d28f ds $1 @@ -1080,13 +1352,20 @@ wd290:: ; d290 ds $1 wd291:: ; d291 - ds $92 + ds $1 + +wd292:: ; d292 + ds $1 + + ds $90 wd323:: ; d323 ds $1 wd324:: ; d324 - ds $a + ds $1 + + ds $9 wd32e:: ; d32e ds $1 @@ -1119,7 +1398,13 @@ wd337:: ; d337 ds $1 wd338:: ; d338 - ds $3 + ds $1 + +wd339:: ; d339 + ds $1 + +wd33a:: ; d33a + ds $1 wd33b:: ; d33b ds $1 @@ -1140,7 +1425,9 @@ wd340:: ; d340 ds $1 wd341:: ; d341 - ds $2 + ds $1 + + ds $1 wd343:: ; d343 ds $1 @@ -1158,13 +1445,28 @@ wd347:: ; d347 ds $1 wd348:: ; d348 - ds $62 + ds $1 + +wd349:: ; d349 + ds $1 + +wd34a:: ; d34a + ds $60 wd3aa:: ; d3aa ds $1 wd3ab:: ; d3ab - ds $4 + ds $1 + +wd3ac:: ; d3ac + ds $1 + +wd3ad:: ; d3ad + ds $1 + +wd3ae:: ; d3ae + ds $1 wd3af:: ; d3af ds $1 @@ -1176,13 +1478,29 @@ wd3b1:: ; d3b1 ds $1 wd3b2:: ; d3b2 - ds $4 + ds $1 + +wd3b3:: ; d3b3 + ds $1 -wd3b6:: ; d3b6 ds $2 +wd3b6:: ; d3b6 + ds $1 + +wc3b7:: ; d3b7 + ds $1 + wd3b8:: ; d3b8 - ds $18 + ds $1 + +wd3b9:: ; d3b9 + ds $2 + +wd3bb:: ; d3bb + ds $1 + + ds $14 wd3d0:: ; d3d0 ds $1 @@ -1203,7 +1521,16 @@ wBreakOWScriptLoop:: ; d412 wOWScriptPointer:: ; d413 ds $2 - ds $8 +wd415:: ; d415 + ds $1 + +wd416:: ; d416 + ds $1 + +wd417:: ; d417 + ds $1 + + ds $5 wd41d:: ; d41d ds $1 @@ -1221,16 +1548,33 @@ wd421:: ; d421 ds $1 wd422:: ; d422 - ds $8 + ds $1 + +wd423:: ; d423 + ds $7 wd42a:: ; d42a - ds $82 + ds $1 + + ds $81 wd4ac:: ; d4ac - ds $12 + ds $1 + +wd4ad:: ; d4ad + ds $1 + + ds $10 wd4be:: ; d4be - ds $4 + ds $1 + + ds $1 + +wd4c0:: ; d4c0 + ds $1 + + ds $1 wd4c2:: ; d4c2 ds $1 @@ -1251,14 +1595,17 @@ wd4c7:: ; d4c7 ds $1 wd4c8:: ; d4c8 - ds $2 + ds $1 + + ds $1 wd4ca:: ; d4ca ds $1 wd4cb:: ; d4cb - ds $4 + ds $1 + ds $3 ; used as an index to manipulate a sprite from wSpriteAnimBuffer wWhichSprite:: ; d4cf @@ -1286,22 +1633,35 @@ wSpriteAnimBuffer:: ; d4d0 ds $3 wd5d3:: ; d5d3 - ds $4 + ds $1 + + ds $3 wd5d7:: ; d5d7 - ds $41 + ds $1 + +wd5d8:: ; d5d8 + ds $40 wd618:: ; d618 - ds $3 + ds $1 + + ds $2 wd61b:: ; d61b - ds $3 + ds $1 + + ds $2 wd61e:: ; d61e - ds $6 + ds $1 + + ds $5 wd624:: ; d624 - ds $2 + ds $1 + + ds $1 wd626:: ; d626 ds $1 @@ -1310,13 +1670,22 @@ wd627:: ; d627 ds $1 wd628:: ; d628 - ds $b + ds $1 + + ds $a wd633:: ; d633 - ds $2 + ds $1 + + ds $1 wd635:: ; d635 - ds $34 + ds $1 + +wd636:: ; d635 + ds $1 + + ds $32 wBoosterIndex:: ; d669 ds $1 @@ -1366,7 +1735,24 @@ wBoosterDataEnergyFunctionPointer:: ; d687 wBoosterDataTypeChances:: ; d689 ds NUM_BOOSTER_CARD_TYPES - ds $6ee + ds $1 + +wd693:: ; d693 + ds $1 + +wd694:: ; d694 + ds $1 + +wd695:: ; d695 + ds $1 + +wd696:: ; d696 + ds $1 + +wd697:: ; d697 + ds $1 + + ds $6e8 SECTION "WRAM Music", WRAMX @@ -1394,7 +1780,9 @@ wMusicDuty1:: ; dd86 ds $1 wMusicDuty2:: ; dd87 - ds $3 + ds $1 + + ds $2 wMusicWave:: ; dd8a ds $1 @@ -1441,7 +1829,9 @@ wddab:: ; ddab ds $1 wddac:: ; ddac - ds $3 + ds $1 + + ds $2 wMusicOctave:: ; ddaf ds $4 |