diff options
author | PikalaxALT <PikalaxALT@gmail.com> | 2015-11-18 13:01:55 -0500 |
---|---|---|
committer | PikalaxALT <PikalaxALT@gmail.com> | 2015-11-18 13:01:55 -0500 |
commit | 3f4044cd4628c156e975971ce0655d3d51917b87 (patch) | |
tree | 28882142ed38749204c6d7a4a1199c0585907ef4 | |
parent | 6d47be8d8c02317a963c6ff5266a50a8674d285d (diff) |
engine/compose_mail.asm; ldpixel
-rw-r--r-- | constants/misc_constants.asm | 4 | ||||
-rwxr-xr-x | engine/compose_mail.asm | 498 | ||||
-rwxr-xr-x | engine/link.asm | 8 | ||||
-rwxr-xr-x | engine/mail.asm | 34 | ||||
-rwxr-xr-x | engine/namingscreen.asm | 8 | ||||
-rwxr-xr-x | engine/pokegear.asm | 4 | ||||
-rwxr-xr-x | engine/slot_machine.asm | 6 | ||||
-rwxr-xr-x | engine/sprites.asm | 2 | ||||
-rwxr-xr-x | engine/startmenu.asm | 2 | ||||
-rwxr-xr-x | event/celebi.asm | 2 | ||||
-rw-r--r-- | gfx/icon/mail2.2bpp (renamed from gfx/unknown/011ef4.2bpp) | bin | 128 -> 128 bytes | |||
-rw-r--r-- | macros.asm | 10 | ||||
-rw-r--r-- | main.asm | 564 | ||||
-rwxr-xr-x | misc/battle_tower_47.asm | 12 | ||||
-rw-r--r-- | misc/mobile_42.asm | 28 | ||||
-rw-r--r-- | misc/mobile_45.asm | 4 | ||||
-rwxr-xr-x | misc/mobile_5c.asm | 6 | ||||
-rw-r--r-- | wram.asm | 46 |
18 files changed, 630 insertions, 608 deletions
diff --git a/constants/misc_constants.asm b/constants/misc_constants.asm index 741750e34..63d46c646 100644 --- a/constants/misc_constants.asm +++ b/constants/misc_constants.asm @@ -85,8 +85,8 @@ EXP_BAR_LENGTH_PX EQU EXP_BAR_LENGTH * 8 SCREEN_WIDTH EQU 20 SCREEN_HEIGHT EQU 18 -SCREEN_WIDTH_PX EQU 160 -SCREEN_HEIGHT_PX EQU 144 +SCREEN_WIDTH_PX EQU SCREEN_WIDTH * 8 +SCREEN_HEIGHT_PX EQU SCREEN_HEIGHT * 8 BG_MAP_WIDTH EQU 32 BG_MAP_HEIGHT EQU 32 diff --git a/engine/compose_mail.asm b/engine/compose_mail.asm new file mode 100755 index 000000000..35990431e --- /dev/null +++ b/engine/compose_mail.asm @@ -0,0 +1,498 @@ +ComposeMailMessage: ; 11e75 (mail?) + ld hl, wc6d0 + ld [hl], e + inc hl + ld [hl], d + ld a, [hMapAnims] + push af + xor a + ld [hMapAnims], a + ld a, [hInMenu] + push af + ld a, $1 + ld [hInMenu], a + call .InitBlankMail + call DelayFrame + +.loop + call .DoMailEntry + jr nc, .loop + + pop af + ld [hInMenu], a + pop af + ld [hMapAnims], a + ret + +.InitBlankMail: ; 11e9a (4:5e9a) + call ClearBGPalettes + call DisableLCD + call Function11c51 + ld de, VTiles0 tile $00 + ld hl, .MailIcon + ld bc, 8 tiles + ld a, BANK(.MailIcon) + call FarCopyBytes + xor a + ld hl, wc300 + ld [hli], a + ld [hl], a + + ; init mail icon + depixel 3, 2 + ld a, SPRITE_ANIM_INDEX_00 + call _InitSpriteAnimStruct + + ld hl, $2 + add hl, bc + ld [hl], $0 + call .InitCharset + ld a, $e3 + ld [rLCDC], a + call .initwc6d3 + ld b, SCGB_08 + call GetSGBLayout + call WaitBGMap + call WaitTop + ld a, %11100100 + call DmgToCgbBGPals + ld a, %11100100 + call Functioncf8 + call Function11be0 + ld hl, wc6d0 + ld e, [hl] + inc hl + ld d, [hl] + ld hl, $10 + add hl, de + ld [hl], $4e + ret +; 11ef4 (4:5ef4) + +.MailIcon: ; 11ef4 +INCBIN "gfx/icon/mail2.2bpp" +; 11f74 + +.initwc6d3: ; 11f74 (4:5f74) + ld a, $21 + ld [wc6d3], a + ret +; 11f7a (4:5f7a) + +.Dummy: ; dummied out + db "メールを かいてね@" +; 11f84 + +.InitCharset: ; 11f84 (4:5f84) + call WaitTop + hlcoord 0, 0 + ld bc, 6 * SCREEN_WIDTH + ld a, $60 ; border + call ByteFill + hlcoord 0, 6 + ld bc, 12 * SCREEN_WIDTH + ld a, " " + call ByteFill + hlcoord 1, 1 + lb bc, 4, SCREEN_WIDTH - 2 + call ClearBox + ld de, MailEntry_Uppercase + +.PlaceMailCharset: ; 11fa9 (4:5fa9) + hlcoord 1, 7 + ld b, 6 +.next + ld c, SCREEN_WIDTH - 1 +.loop_ + ld a, [de] + ld [hli], a + inc de + dec c + jr nz, .loop_ + push de + ld de, SCREEN_WIDTH + 1 + add hl, de + pop de + dec b + jr nz, .next + ret + +.DoMailEntry: ; 11fc0 (4:5fc0) + call JoyTextDelay + ld a, [wJumptableIndex] + bit 7, a + jr nz, .exit_mail + call .DoJumptable + callba Function8cf62 + call .Update + call DelayFrame + and a + ret +.exit_mail + callab Function8cf53 + call ClearSprites + xor a + ld [hSCX], a + ld [hSCY], a + scf + ret + +.Update: ; 11feb (4:5feb) + xor a + ld [hBGMapMode], a + hlcoord 1, 1 + lb bc, 4, 18 + call ClearBox + ld hl, wc6d0 + ld e, [hl] + inc hl + ld d, [hl] + hlcoord 2, 2 + call PlaceString + ld a, $1 + ld [hBGMapMode], a + ret + +.DoJumptable: ; 12008 (4:6008) + ld a, [wJumptableIndex] + ld e, a + ld d, 0 + ld hl, .Jumptable +rept 2 + add hl, de +endr + ld a, [hli] + ld h, [hl] + ld l, a + jp [hl] + +.Jumptable: ; 12017 (4:6017) + dw .init_blinking_cursor + dw .process_joypad + + +.init_blinking_cursor: ; 1201b (4:601b) + depixel 9, 2 + ld a, SPRITE_ANIM_INDEX_09 + call _InitSpriteAnimStruct + ld a, c + ld [wc6d5], a + ld a, b + ld [wc6d6], a + ld hl, $1 + add hl, bc + ld a, [hl] + ld hl, $e + add hl, bc + ld [hl], a + ld hl, wJumptableIndex + inc [hl] + ret + +.process_joypad: ; 1203a (4:603a) + ld hl, hJoyPressed ; $ffa7 + ld a, [hl] + and A_BUTTON + jr nz, .a + ld a, [hl] + and B_BUTTON + jr nz, .b + ld a, [hl] + and START + jr nz, .start + ld a, [hl] + and SELECT + jr nz, .select + ret + +.a + call Function12185 + cp $1 + jr z, .select + cp $2 + jr z, .b + cp $3 + jr z, .finished + call Function11c11 + call Function121ac + jr c, .start + ld hl, wc6d2 + ld a, [hl] + cp $10 + ret nz + inc [hl] + call Function11bd0 + ld [hl], $f2 + dec hl + ld [hl], $4e + ret + +.start + ld hl, wc6d5 + ld c, [hl] + inc hl + ld b, [hl] + ld hl, $c + add hl, bc + ld [hl], $9 + ld hl, $d + add hl, bc + ld [hl], $5 + ret + +.b + call Function11bbc + ld hl, wc6d2 + ld a, [hl] + cp $10 + ret nz + dec [hl] + call Function11bd0 + ld [hl], $f2 + inc hl + ld [hl], $4e + ret + +.finished + call Function11bf7 + ld hl, wJumptableIndex + set 7, [hl] + ret + +.select + ld hl, wcf64 + ld a, [hl] + xor $1 + ld [hl], a + jr nz, .switch_to_lowercase + ld de, MailEntry_Uppercase + call .PlaceMailCharset + ret +.switch_to_lowercase + ld de, MailEntry_Lowercase + call .PlaceMailCharset + ret + +Function120c1: ; 120c1 (4:60c1) + call Function1210c + ld hl, SpriteAnim1Sprite0d - SpriteAnim1 + add hl, bc + ld a, [hl] + ld e, a + swap e + ld hl, SpriteAnim1YOffset - SpriteAnim1 + add hl, bc + ld [hl], e + cp $5 + ld de, Unknown_120f8 + ld a, $0 + jr nz, .asm_120df + ld de, Unknown_12102 + ld a, $1 +.asm_120df + ld hl, SpriteAnim1Sprite0e - SpriteAnim1 + add hl, bc + add [hl] + ld hl, SpriteAnim1Sprite01 - SpriteAnim1 + add hl, bc + ld [hl], a + ld hl, SpriteAnim1Sprite0c - SpriteAnim1 + add hl, bc + ld l, [hl] + ld h, SpriteAnim1Index - SpriteAnim1 + add hl, de + ld a, [hl] + ld hl, SpriteAnim1XOffset - SpriteAnim1 + add hl, bc + ld [hl], a + ret +; 120f8 (4:60f8) + +Unknown_120f8: ; 120f8 + db $00, $10, $20, $30, $40, $50, $60, $70, $80, $90 +Unknown_12102: ; 12102 + db $00, $00, $00, $30, $30, $30, $60, $60, $60, $60 +; 1210c + +Function1210c: ; 1210c (4:610c) + ld hl, hJoyLast + ld a, [hl] + and D_UP + jr nz, .up + ld a, [hl] + and D_DOWN + jr nz, .down + ld a, [hl] + and D_LEFT + jr nz, .left + ld a, [hl] + and D_RIGHT + jr nz, .right + ret +.right + call Function1218b + and a + jr nz, .asm_12138 + ld hl, $c + add hl, bc + ld a, [hl] + cp $9 + jr nc, .asm_12135 + inc [hl] + ret +.asm_12135 + ld [hl], $0 + ret +.asm_12138 + cp $3 + jr nz, .asm_1213d + xor a +.asm_1213d + ld e, a + add a + add e + ld hl, $c + add hl, bc + ld [hl], a + ret +.left + call Function1218b + and a + jr nz, .asm_12159 + ld hl, $c + add hl, bc + ld a, [hl] + and a + jr z, .asm_12156 + dec [hl] + ret +.asm_12156 + ld [hl], $9 + ret +.asm_12159 + cp $1 + jr nz, .asm_1215f + ld a, $4 +.asm_1215f +rept 2 + dec a +endr + ld e, a + add a + add e + ld hl, $c + add hl, bc + ld [hl], a + ret +.down + ld hl, $d + add hl, bc + ld a, [hl] + cp $5 + jr nc, .asm_12175 + inc [hl] + ret +.asm_12175 + ld [hl], $0 + ret +.up + ld hl, $d + add hl, bc + ld a, [hl] + and a + jr z, .asm_12182 + dec [hl] + ret +.asm_12182 + ld [hl], $5 + ret + +Function12185: ; 12185 (4:6185) + ld hl, wc6d5 + ld c, [hl] + inc hl + ld b, [hl] + +Function1218b: ; 1218b (4:618b) + ld hl, $d + add hl, bc + ld a, [hl] + cp $5 + jr nz, .asm_121aa + ld hl, $c + add hl, bc + ld a, [hl] + cp $3 + jr c, .asm_121a4 + cp $6 + jr c, .asm_121a7 + ld a, $3 + ret +.asm_121a4 + ld a, $1 + ret +.asm_121a7 + ld a, $2 + ret +.asm_121aa + xor a + ret + +Function121ac: ; 121ac (4:61ac) + ld a, [wc6d7] + jp Function11b17 +; 121b2 (4:61b2) + +Function121b2: ; unreferenced + ld a, [wc6d2] + and a + ret z + cp $11 + jr nz, .asm_121c3 + push hl + ld hl, wc6d2 +rept 2 + dec [hl] +endr + jr .asm_121c8 + +.asm_121c3 + push hl + ld hl, wc6d2 + dec [hl] + +.asm_121c8 + call Function11bd0 + ld c, [hl] + pop hl +.asm_121cd + ld a, [hli] + cp $ff + jp z, Function11b27 + cp c + jr z, .asm_121d9 + inc hl + jr .asm_121cd + +.asm_121d9 + ld a, [hl] + jp Function11b23 +; 121dd + +MailEntry_Uppercase: ; 122dd + db "A B C D E F G H I J" + db "K L M N O P Q R S T" + db "U V W X Y Z , ? !" + db "1 2 3 4 5 6 7 8 9 0" + db "<PK> <MN> <PO> <KE> é ♂ ♀ ¥ … ×" + db "lower DEL END " +; 1224f + +MailEntry_Lowercase: ; 1224f + db "a b c d e f g h i j" + db "k l m n o p q r s t" + db "u v w x y z . - /" + db "'d 'l 'm 'r 's 't 'v & ( )" + db "<``> <''> [ ] ' : ; " + db "UPPER DEL END " +; 122c1 diff --git a/engine/link.asm b/engine/link.asm index 28b420543..afc4f2d2e 100755 --- a/engine/link.asm +++ b/engine/link.asm @@ -3080,7 +3080,7 @@ Function29611: ; 29611 ; 2961b Function2961b: ; 2961b - lb de, $54, $58 + depixel 10, 11, 4, 0 ld a, $e call _InitSpriteAnimStruct call Function29114 @@ -3090,7 +3090,7 @@ Function2961b: ; 2961b ; 2962c Function2962c: ; 2962c - lb de, $54, $58 + depixel 10, 11, 4, 0 ld a, $e call _InitSpriteAnimStruct ld hl, $b @@ -3106,7 +3106,7 @@ Function2962c: ; 2962c ; 29649 Function29649: ; 29649 - lb de, $54, $58 + depixel 10, 11, 4, 0 ld a, $f call _InitSpriteAnimStruct call Function29114 @@ -3120,7 +3120,7 @@ Function29649: ; 29649 Function29660: ; 29660 ld a, $e4 call Functioncf8 - lb de, $28, $58 + depixel 5, 11 ld a, $10 call _InitSpriteAnimStruct call Function29114 diff --git a/engine/mail.asm b/engine/mail.asm index 5748536dc..c0bc591b0 100755 --- a/engine/mail.asm +++ b/engine/mail.asm @@ -286,13 +286,13 @@ DeletePartyMonMail: ; 44765 (11:4765) ; 44781 (11:4781) -Function44781: ; 44781 +IsAnyMonHoldingMail: ; 44781 ld a, [PartyCount] and a - jr z, .asm_4479e + jr z, .no_mons ld e, a ld hl, PartyMon1Item -.asm_4478b +.loop ld d, [hl] push hl push de @@ -303,9 +303,9 @@ Function44781: ; 44781 ld bc, PARTYMON_STRUCT_LENGTH add hl, bc dec e - jr nz, .asm_4478b + jr nz, .loop -.asm_4479e +.no_mons and a ret ; 447a0 @@ -327,30 +327,30 @@ _KrisMailBoxMenu: ; 0x447a0 db "@" InitMail: ; 0x447b9 -; initialize wd0f2 and beyond with incrementing values, one per mail +; initialize wMailboxCount and beyond with incrementing values, one per mail ; set z if no mail ld a, BANK(sMailboxCount) call GetSRAMBank ld a, [sMailboxCount] call CloseSRAM - ld hl, wd0f2 + ld hl, wMailboxCount ld [hli], a and a jr z, .done ; if no mail, we're done - ; load values in memory with incrementing values starting at wd0f2 + ; load values in memory with incrementing values starting at wMailboxCount ld b, a - ld a, $1 + ld a, 1 .loop ld [hli], a inc a dec b jr nz, .loop .done - ld [hl], $ff ; terminate + ld [hl], -1 ; terminate - ld a, [wd0f2] + ld a, [wMailboxCount] and a ret ; 0x447da @@ -385,7 +385,7 @@ MailboxPC: ; 0x44806 xor a ld [OBPals + 8 * 6], a ld a, $1 - ld [wd0f1], a + ld [wCurMessageIndex], a .loop call InitMail ld hl, MenuData4494c @@ -394,7 +394,8 @@ MailboxPC: ; 0x44806 ld [hBGMapMode], a call InitScrollingMenu call UpdateSprites - ld a, [wd0f1] + + ld a, [wCurMessageIndex] ld [wMenuCursorBuffer], a ld a, [OBPals + 8 * 6] ld [wd0e4], a @@ -402,7 +403,8 @@ MailboxPC: ; 0x44806 ld a, [wd0e4] ld [OBPals + 8 * 6], a ld a, [MenuSelection2] - ld [wd0f1], a + ld [wCurMessageIndex], a + ld a, [wcf73] cp $2 jr z, .exit @@ -558,7 +560,7 @@ Function4484a: ; 0x4484a MenuData4494c: ; 0x4494c db %01000000 ; flags db 1, 8 ; start coords - db $a, $12 ; end coords + db 10, 18 ; end coords dw .MenuData2 db 1 ; default option @@ -566,7 +568,7 @@ MenuData4494c: ; 0x4494c db %00010000 ; flags db 4, 0 ; rows/columns? db 1 ; horizontal spacing? - dbw 0,wd0f2 ; text pointer + dbw 0, wMailboxCount ; text pointer dba Function447fb dbw 0,0 dbw 0,0 diff --git a/engine/namingscreen.asm b/engine/namingscreen.asm index 3b381a016..c62dc1a0f 100755 --- a/engine/namingscreen.asm +++ b/engine/namingscreen.asm @@ -173,7 +173,7 @@ Function117f5: ; 117f5 (4:57f5) ld hl, wc300 ld [hli], a ld [hl], a - lb de, $24, $20 + depixel 4, 4, 4, 0 ld a, SPRITE_ANIM_INDEX_0A call _InitSpriteAnimStruct ld hl, $1 @@ -230,7 +230,7 @@ Function11847: ; 11847 (4:5847) ld b, SPRITE_ANIM_INDEX_1E .asm_11873 ld a, b - lb de, $24, $20 + depixel 4, 4, 4, 0 call _InitSpriteAnimStruct ret @@ -400,10 +400,10 @@ Jumptable_11977: ; 11977 (4:5977) Function1197b: ; 1197b (4:597b) - lb de, $50, $18 + depixel 10, 3 call Function1189c jr nz, .asm_11985 - ld d, $40 + ld d, 8 * 8 .asm_11985 ld a, SPRITE_ANIM_INDEX_02 call _InitSpriteAnimStruct diff --git a/engine/pokegear.asm b/engine/pokegear.asm index 02684aaab..424669b20 100755 --- a/engine/pokegear.asm +++ b/engine/pokegear.asm @@ -149,7 +149,7 @@ INCBIN "gfx/misc/fast_ship.2bpp" ; 90d32 Function90d32: ; 90d32 (24:4d32) - lb de, $24, $10 + depixel 4, 2, 4, 0 ld a, SPRITE_ANIM_INDEX_0D call _InitSpriteAnimStruct ld hl, $3 @@ -762,7 +762,7 @@ Function910e8: ; 910e8 Function910f9: ; 910f9 (24:50f9) call Function90da8 - lb de, $24, $54 + depixel 4, 10, 4, 4 ld a, SPRITE_ANIM_INDEX_14 call _InitSpriteAnimStruct ld hl, $3 diff --git a/engine/slot_machine.asm b/engine/slot_machine.asm index 8318942fe..6f53bb6b3 100755 --- a/engine/slot_machine.asm +++ b/engine/slot_machine.asm @@ -1037,7 +1037,7 @@ Function92d20: ; 92d20 call Function92fc0 push bc push af - lb de, $60, $68 + depixel 12, 13 ld a, SPRITE_ANIM_INDEX_06 call _InitSpriteAnimStruct ld hl, $e @@ -1096,7 +1096,7 @@ Function92d7e: ; 92d7e add hl, bc ld [hl], $0 push bc - lb de, $60, $00 + depixel 12, 0 ld a, SPRITE_ANIM_INDEX_07 call _InitSpriteAnimStruct pop bc @@ -2063,7 +2063,7 @@ Function932fc: ; 932fc (24:72fc) add hl, bc dec [hl] push bc - lb de, $60, $6c + depixel 12, 13, 0, 4 ld a, SPRITE_ANIM_INDEX_08 call _InitSpriteAnimStruct pop bc diff --git a/engine/sprites.asm b/engine/sprites.asm index e95894292..b8b4b2a47 100755 --- a/engine/sprites.asm +++ b/engine/sprites.asm @@ -615,7 +615,7 @@ endr dw .nine dw .ten dw .eleven - dw .twelve + dw .twelve ; blinking cursor dw .thirteen dw .fourteen dw .fifteen diff --git a/engine/startmenu.asm b/engine/startmenu.asm index ae6358014..94082ccad 100755 --- a/engine/startmenu.asm +++ b/engine/startmenu.asm @@ -1069,7 +1069,7 @@ StartMenuYesNo: ; 12cf5 Function12cfe: ; 12cfe (4:6cfe) ld de, wd002 - callba Function11e75 + callba ComposeMailMessage ld hl, PlayerName ld de, wd023 ld bc, NAME_LENGTH - 1 diff --git a/event/celebi.asm b/event/celebi.asm index cf930c2f8..46c78ed91 100755 --- a/event/celebi.asm +++ b/event/celebi.asm @@ -5,7 +5,7 @@ Special_CelebiShrineEvent: ; 4989a xor a ld [VramState], a call LoadCelebiGFX - lb de, $07, $50 + depixel 0, 10, 7, 0 ld a, SPRITE_ANIM_INDEX_2C call _InitSpriteAnimStruct ld hl, $3 diff --git a/gfx/unknown/011ef4.2bpp b/gfx/icon/mail2.2bpp Binary files differindex 188926899..188926899 100644 --- a/gfx/unknown/011ef4.2bpp +++ b/gfx/icon/mail2.2bpp diff --git a/macros.asm b/macros.asm index 1d23392fa..5129e2960 100644 --- a/macros.asm +++ b/macros.asm @@ -211,3 +211,13 @@ endr ENDM palettes EQUS "* 8" + +ldpixel: MACRO +if _NARG == 5 + lb \1, \2 * 8 + \4, \3 * 8 + \5 +else + lb \1, \2 * 8, \3 * 8 +endc + endm + +depixel EQUS "ldpixel de," @@ -9795,29 +9795,29 @@ InitNickname: ; e3de ; e3fd _BillsPC: ; e3fd - call Functione40a + call .CheckCanUsePC ret c - call Functione41c - call Functione443 - jp Functione43f + call .LogIn + call .UseBillsPC + jp .LogOut -Functione40a: ; e40a (3:640a) +.CheckCanUsePC: ; e40a (3:640a) ld a, [PartyCount] and a ret nz - ld hl, UnknownText_0xe417 + ld hl, .Text_GottaHavePokemon call MenuTextBoxBackup scf ret ; e417 (3:6417) -UnknownText_0xe417: ; 0xe417 +.Text_GottaHavePokemon: ; 0xe417 ; You gotta have #MON to call! text_jump UnknownText_0x1c1006 db "@" ; 0xe41c -Functione41c: ; e41c (3:641c) +.LogIn: ; e41c (3:641c) xor a ld [hBGMapMode], a call LoadStandardMenuDataHeader @@ -9826,7 +9826,7 @@ Functione41c: ; e41c (3:641c) ld a, [hl] push af set NO_TEXT_SCROLL, [hl] - ld hl, UnknownText_0xe43a + ld hl, .Text_What call PrintText pop af ld [Options], a @@ -9834,17 +9834,17 @@ Functione41c: ; e41c (3:641c) ret ; e43a (3:643a) -UnknownText_0xe43a: ; 0xe43a +.Text_What: ; 0xe43a ; What? text_jump UnknownText_0x1c1024 db "@" ; 0xe43f -Functione43f: ; e43f (3:643f) +.LogOut: ; e43f (3:643f) call ReturnToCallingMenu ret -Functione443: ; e443 (3:6443) +.UseBillsPC: ; e443 (3:6443) ld hl, .MenuDataHeader call LoadMenuDataHeader ld a, $1 @@ -9917,9 +9917,9 @@ BillsPC_SeeYa: ; e4cb BillsPC_MovePKMNMenu: ; e4cd call LoadStandardMenuDataHeader - callba Function44781 + callba IsAnyMonHoldingMail jr nc, .no_mail - ld hl, UnknownText_0xe4f9 + ld hl, .Text_MonHoldingMail call PrintText jr .quit @@ -9936,7 +9936,7 @@ BillsPC_MovePKMNMenu: ; e4cd ret ; e4f9 -UnknownText_0xe4f9: ; 0xe4f9 +.Text_MonHoldingMail: ; 0xe4f9 ; There is a #MON holding MAIL. Please remove the MAIL. text_jump UnknownText_0x1c102b db "@" @@ -9955,32 +9955,32 @@ BillsPC_DepositMenu: ; e4fe (3:64fe) Functione512: ; unused ld a, [PartyCount] and a - jr z, .asm_e51e + jr z, .no_pkmn cp 2 - jr c, .asm_e526 + jr c, .only_one_pkmn and a ret -.asm_e51e - ld hl, UnknownText_0xe52e +.no_pkmn + ld hl, .Text_NoPKMN call MenuTextBoxBackup scf ret -.asm_e526 - ld hl, UnknownText_0xe533 +.only_one_pkmn + ld hl, .Text_ItsYourLastPKMN call MenuTextBoxBackup scf ret ; e52e -UnknownText_0xe52e: ; 0xe52e +.Text_NoPKMN: ; 0xe52e ; You don't have a single #MON! text_jump UnknownText_0x1c1062 db "@" ; 0xe533 -UnknownText_0xe533: ; 0xe533 +.Text_ItsYourLastPKMN: ; 0xe533 ; You can't deposit your last #MON! text_jump UnknownText_0x1c1080 db "@" @@ -10407,506 +10407,10 @@ UnknownText_0xfa06: ; 0xfa06 SECTION "bank4", ROMX, BANK[$4] INCLUDE "engine/pack.asm" - INCLUDE "engine/time.asm" - INCLUDE "engine/tmhm.asm" - INCLUDE "engine/namingscreen.asm" - -Function11e75: ; 11e75 (mail?) - ld hl, wc6d0 - ld [hl], e - inc hl - ld [hl], d - ld a, [hMapAnims] - push af - xor a - ld [hMapAnims], a - ld a, [hInMenu] - push af - ld a, $1 - ld [hInMenu], a - call Function11e9a - call DelayFrame -.asm_11e8e - call Function11fc0 - jr nc, .asm_11e8e - pop af - ld [hInMenu], a - pop af - ld [hMapAnims], a - ret - -Function11e9a: ; 11e9a (4:5e9a) - call ClearBGPalettes - call DisableLCD - call Function11c51 - ld de, VTiles0 tile $00 - ld hl, GFX_11ef4 - ld bc, $80 - ld a, BANK(GFX_11ef4) - call FarCopyBytes - xor a - ld hl, wc300 - ld [hli], a - ld [hl], a - lb de, $18, $10 - ld a, SPRITE_ANIM_INDEX_00 - call _InitSpriteAnimStruct - ld hl, $2 - add hl, bc - ld [hl], $0 - call Function11f84 - ld a, $e3 - ld [rLCDC], a - call Function11f74 - ld b, SCGB_08 - call GetSGBLayout - call WaitBGMap - call WaitTop - ld a, %11100100 - call DmgToCgbBGPals - ld a, %11100100 - call Functioncf8 - call Function11be0 - ld hl, wc6d0 - ld e, [hl] - inc hl - ld d, [hl] - ld hl, $10 - add hl, de - ld [hl], $4e - ret -; 11ef4 (4:5ef4) - -GFX_11ef4: ; 11ef4 -INCBIN "gfx/unknown/011ef4.2bpp" -; 11f74 - -Function11f74: ; 11f74 (4:5f74) - ld a, $21 - ld [wc6d3], a - ret -; 11f7a (4:5f7a) - -String_11f7a: ; dummied out - db "メールを かいてね@" -; 11f84 - -Function11f84: ; 11f84 (4:5f84) - call WaitTop - hlcoord 0, 0 - ld bc, 6 * SCREEN_WIDTH - ld a, $60 - call ByteFill - hlcoord 0, 6 - ld bc, 12 * SCREEN_WIDTH - ld a, " " - call ByteFill - hlcoord 1, 1 - lb bc, 4, SCREEN_WIDTH - 2 - call ClearBox - ld de, String_121dd - -Function11fa9: ; 11fa9 (4:5fa9) - hlcoord 1, 7 - ld b, 6 -.next - ld c, SCREEN_WIDTH - 1 -.loop - ld a, [de] - ld [hli], a - inc de - dec c - jr nz, .loop - push de - ld de, 21 - add hl, de - pop de - dec b - jr nz, .next - ret - -Function11fc0: ; 11fc0 (4:5fc0) - call JoyTextDelay - ld a, [wJumptableIndex] - bit 7, a - jr nz, .asm_11fdb - call Function12008 - callba Function8cf62 - call Function11feb - call DelayFrame - and a - ret -.asm_11fdb - callab Function8cf53 - call ClearSprites - xor a - ld [hSCX], a - ld [hSCY], a - scf - ret - -Function11feb: ; 11feb (4:5feb) - xor a - ld [hBGMapMode], a - hlcoord 1, 1 - lb bc, 4, 18 - call ClearBox - ld hl, wc6d0 - ld e, [hl] - inc hl - ld d, [hl] - hlcoord 2, 2 - call PlaceString - ld a, $1 - ld [hBGMapMode], a - ret - -Function12008: ; 12008 (4:6008) - ld a, [wJumptableIndex] - ld e, a - ld d, 0 - ld hl, Jumptable_12017 -rept 2 - add hl, de -endr - ld a, [hli] - ld h, [hl] - ld l, a - jp [hl] - -Jumptable_12017: ; 12017 (4:6017) - dw Function1201b - dw Function1203a - - -Function1201b: ; 1201b (4:601b) - lb de, $48, $10 - ld a, SPRITE_ANIM_INDEX_09 - call _InitSpriteAnimStruct - ld a, c - ld [wc6d5], a - ld a, b - ld [wc6d6], a - ld hl, $1 - add hl, bc - ld a, [hl] - ld hl, $e - add hl, bc - ld [hl], a - ld hl, wJumptableIndex - inc [hl] - ret - -Function1203a: ; 1203a (4:603a) - ld hl, hJoyPressed ; $ffa7 - ld a, [hl] - and A_BUTTON - jr nz, .a - ld a, [hl] - and B_BUTTON - jr nz, .b - ld a, [hl] - and START - jr nz, .start - ld a, [hl] - and SELECT - jr nz, .select - ret - -.a - call Function12185 - cp $1 - jr z, .select - cp $2 - jr z, .b - cp $3 - jr z, .asm_120a1 - call Function11c11 - call Function121ac - jr c, .start - ld hl, wc6d2 - ld a, [hl] - cp $10 - ret nz - inc [hl] - call Function11bd0 - ld [hl], $f2 - dec hl - ld [hl], $4e - ret - -.start - ld hl, wc6d5 - ld c, [hl] - inc hl - ld b, [hl] - ld hl, $c - add hl, bc - ld [hl], $9 - ld hl, $d - add hl, bc - ld [hl], $5 - ret - -.b - call Function11bbc - ld hl, wc6d2 - ld a, [hl] - cp $10 - ret nz - dec [hl] - call Function11bd0 - ld [hl], $f2 - inc hl - ld [hl], $4e - ret - -.asm_120a1 - call Function11bf7 - ld hl, wJumptableIndex - set 7, [hl] - ret - -.select - ld hl, wcf64 - ld a, [hl] - xor $1 - ld [hl], a - jr nz, .asm_120ba - ld de, String_121dd - call Function11fa9 - ret -.asm_120ba - ld de, String_1224f - call Function11fa9 - ret - -Function120c1: ; 120c1 (4:60c1) - call Function1210c - ld hl, $d - add hl, bc - ld a, [hl] - ld e, a - swap e - ld hl, $7 - add hl, bc - ld [hl], e - cp $5 - ld de, Unknown_120f8 - ld a, $0 - jr nz, .asm_120df - ld de, Unknown_12102 - ld a, $1 -.asm_120df - ld hl, $e - add hl, bc - add [hl] - ld hl, $1 - add hl, bc - ld [hl], a - ld hl, $c - add hl, bc - ld l, [hl] - ld h, $0 - add hl, de - ld a, [hl] - ld hl, $6 - add hl, bc - ld [hl], a - ret -; 120f8 (4:60f8) - -Unknown_120f8: ; 120f8 - db $00, $10, $20, $30, $40, $50, $60, $70, $80, $90 -Unknown_12102: ; 12102 - db $00, $00, $00, $30, $30, $30, $60, $60, $60, $60 -; 1210c - -Function1210c: ; 1210c (4:610c) - ld hl, hJoyLast - ld a, [hl] - and D_UP - jr nz, .up - ld a, [hl] - and D_DOWN - jr nz, .down - ld a, [hl] - and D_LEFT - jr nz, .left - ld a, [hl] - and D_RIGHT - jr nz, .right - ret -.right - call Function1218b - and a - jr nz, .asm_12138 - ld hl, $c - add hl, bc - ld a, [hl] - cp $9 - jr nc, .asm_12135 - inc [hl] - ret -.asm_12135 - ld [hl], $0 - ret -.asm_12138 - cp $3 - jr nz, .asm_1213d - xor a -.asm_1213d - ld e, a - add a - add e - ld hl, $c - add hl, bc - ld [hl], a - ret -.left - call Function1218b - and a - jr nz, .asm_12159 - ld hl, $c - add hl, bc - ld a, [hl] - and a - jr z, .asm_12156 - dec [hl] - ret -.asm_12156 - ld [hl], $9 - ret -.asm_12159 - cp $1 - jr nz, .asm_1215f - ld a, $4 -.asm_1215f -rept 2 - dec a -endr - ld e, a - add a - add e - ld hl, $c - add hl, bc - ld [hl], a - ret -.down - ld hl, $d - add hl, bc - ld a, [hl] - cp $5 - jr nc, .asm_12175 - inc [hl] - ret -.asm_12175 - ld [hl], $0 - ret -.up - ld hl, $d - add hl, bc - ld a, [hl] - and a - jr z, .asm_12182 - dec [hl] - ret -.asm_12182 - ld [hl], $5 - ret - -Function12185: ; 12185 (4:6185) - ld hl, wc6d5 - ld c, [hl] - inc hl - ld b, [hl] - -Function1218b: ; 1218b (4:618b) - ld hl, $d - add hl, bc - ld a, [hl] - cp $5 - jr nz, .asm_121aa - ld hl, $c - add hl, bc - ld a, [hl] - cp $3 - jr c, .asm_121a4 - cp $6 - jr c, .asm_121a7 - ld a, $3 - ret -.asm_121a4 - ld a, $1 - ret -.asm_121a7 - ld a, $2 - ret -.asm_121aa - xor a - ret - -Function121ac: ; 121ac (4:61ac) - ld a, [wc6d7] - jp Function11b17 -; 121b2 (4:61b2) - -Function121b2: ; unreferenced - ld a, [wc6d2] - and a - ret z - cp $11 - jr nz, .asm_121c3 - push hl - ld hl, wc6d2 -rept 2 - dec [hl] -endr - jr .asm_121c8 - -.asm_121c3 - push hl - ld hl, wc6d2 - dec [hl] - -.asm_121c8 - call Function11bd0 - ld c, [hl] - pop hl -.asm_121cd - ld a, [hli] - cp $ff - jp z, Function11b27 - cp c - jr z, .asm_121d9 - inc hl - jr .asm_121cd - -.asm_121d9 - ld a, [hl] - jp Function11b23 -; 121dd - -String_121dd: ; 122dd - db "A B C D E F G H I J" - db "K L M N O P Q R S T" - db "U V W X Y Z , ? !" - db "1 2 3 4 5 6 7 8 9 0" - db "<PK> <MN> <PO> <KE> é ♂ ♀ ¥ … ×" - db "lower DEL END " -; 1224f - -String_1224f: ; 1224f - db "a b c d e f g h i j" - db "k l m n o p q r s t" - db "u v w x y z . - /" - db "'d 'l 'm 'r 's 't 'v & ( )" - db "<``> <''> [ ] ' : ; " - db "UPPER DEL END " -; 122c1 +INCLUDE "engine/compose_mail.asm" Script_AbortBugContest: ; 0x122c1 checkflag ENGINE_BUG_CONTEST_TIMER @@ -30083,7 +29587,7 @@ Function8caed: ; 8caed xor a ld [VramState], a call Function8cb9b - lb de, $54, $50 + depixel 10, 10, 4, 0 ld a, SPRITE_ANIM_INDEX_0A call _InitSpriteAnimStruct ld hl, $3 @@ -30117,7 +29621,7 @@ Function8cb33: ; 8cb33 xor a ld [VramState], a call Function8cb9b - lb de, $fc, $50 + depixel 31, 10, 4, 0 ld a, SPRITE_ANIM_INDEX_0A call _InitSpriteAnimStruct ld hl, $3 @@ -32438,7 +31942,7 @@ Functione45e8: ; e45e8 ld [rSVBK], a callba Function8cf53 - lb de, $54, $58 + depixel 10, 11, 4, 0 ld a, SPRITE_ANIM_INDEX_03 call _InitSpriteAnimStruct ld hl, $7 @@ -33118,7 +32622,7 @@ IntroScene7: ; e4b3f (39:4b3f) ld [hWY], a call Functione5516 callba Function8cf53 - lb de, $6c, $d8 + depixel 13, 27, 4, 0 ld a, SPRITE_ANIM_INDEX_26 call _InitSpriteAnimStruct ld a, $f0 @@ -33206,7 +32710,7 @@ IntroScene10: ; e4c4f (39:4c4f) ret .pichu - lb de, $a9, $80 + depixel 21, 16, 1, 0 ld a, SPRITE_ANIM_INDEX_27 call _InitSpriteAnimStruct ld de, SFX_INTRO_PICHU @@ -33214,7 +32718,7 @@ IntroScene10: ; e4c4f (39:4c4f) ret .wooper - lb de, $b0, $30 + depixel 22, 6 ld a, SPRITE_ANIM_INDEX_28 call _InitSpriteAnimStruct ld de, SFX_INTRO_PICHU @@ -33392,7 +32896,7 @@ IntroScene13: ; e4d6d (39:4d6d) ld a, $90 ld [hWY], a callba Function8cf53 - lb de, $6c, $58 + depixel 13, 11, 4, 0 ld a, SPRITE_ANIM_INDEX_26 call _InitSpriteAnimStruct ld de, MUSIC_CRYSTAL_OPENING @@ -33503,10 +33007,10 @@ IntroScene15: ; e4e40 (39:4e40) ld [hWY], a callba Function8cf53 call Functione549e - lb de, $40, $28 + depixel 8, 5 ld a, SPRITE_ANIM_INDEX_2A call _InitSpriteAnimStruct - lb de, $60, $00 + depixel 12, 0 ld a, SPRITE_ANIM_INDEX_2B call _InitSpriteAnimStruct xor a @@ -33655,7 +33159,7 @@ IntroScene19: ; e4f7e (39:4f7e) ld [hli], a ld [hl], $7f call Functione549e - lb de, $60, $00 + depixel 12, 0 ld a, SPRITE_ANIM_INDEX_2B call _InitSpriteAnimStruct xor a diff --git a/misc/battle_tower_47.asm b/misc/battle_tower_47.asm index 014e79586..37620212a 100755 --- a/misc/battle_tower_47.asm +++ b/misc/battle_tower_47.asm @@ -494,38 +494,38 @@ Jumptable_11c2bb: ; 11c2bb (47:42bb) Function11c2e9: ; 11c2e9 (47:42e9) - lb de, $1a, $0d + depixel 3, 1, 2, 5 ld a, SPRITE_ANIM_INDEX_1D call _InitSpriteAnimStruct - lb de, $42, $0d + depixel 8, 1, 2, 5 ld a, SPRITE_ANIM_INDEX_1D call _InitSpriteAnimStruct ld hl, $c add hl, bc ld a, $1 ld [hl], a - lb de, $4a, $10 + depixel 9, 2, 2, 0 ld a, SPRITE_ANIM_INDEX_1D call _InitSpriteAnimStruct ld hl, $c add hl, bc ld a, $3 ld [hl], a - lb de, $50, $80 + depixel 10, 16 ld a, SPRITE_ANIM_INDEX_1D call _InitSpriteAnimStruct ld hl, $c add hl, bc ld a, $4 ld [hl], a - lb de, $50, $20 + depixel 10, 4 ld a, SPRITE_ANIM_INDEX_1D call _InitSpriteAnimStruct ld hl, $c add hl, bc ld a, $5 ld [hl], a - lb de, $50, $10 + depixel 10, 2 ld a, SPRITE_ANIM_INDEX_1D call _InitSpriteAnimStruct ld hl, $c diff --git a/misc/mobile_42.asm b/misc/mobile_42.asm index f4bed3f26..0253d4c1c 100644 --- a/misc/mobile_42.asm +++ b/misc/mobile_42.asm @@ -492,7 +492,7 @@ Function10830e: ; 10830e ld c, $50 call DelayFrames call Function108bec - lb de, $54, $58 + depixel 10, 11, 4, 0 ld a, SPRITE_ANIM_INDEX_20 call _InitSpriteAnimStruct ld de, SFX_BALL_POOF @@ -527,7 +527,7 @@ Function10839b: ; 10839b ld [hWX], a ld a, $90 ld [hWY], a - lb de, $54, $58 + depixel 10, 11, 4, 0 ld a, SPRITE_ANIM_INDEX_21 call _InitSpriteAnimStruct call Function108b45 @@ -627,7 +627,7 @@ Function10842c: ; 10842c ld c, $50 call DelayFrames call Function108c2b - lb de, $54, $58 + depixel 10, 11, 4, 0 ld a, SPRITE_ANIM_INDEX_20 call _InitSpriteAnimStruct ld de, SFX_BALL_POOF @@ -671,7 +671,7 @@ Function1084d7: ; 1084d7 ld [hWX], a ld a, $90 ld [hWY], a - lb de, $54, $58 + depixel 10, 11, 4, 0 ld a, SPRITE_ANIM_INDEX_21 call _InitSpriteAnimStruct call Function108b45 @@ -740,7 +740,7 @@ Function108589: ; 108589 ld [hWX], a ld a, $90 ld [hWY], a - lb de, $54, $58 + depixel 10, 11, 4, 0 ld a, SPRITE_ANIM_INDEX_21 call _InitSpriteAnimStruct call Function108b45 @@ -927,7 +927,7 @@ endr ld [hSCX], a cp $f8 jr nz, .asm_10878a - lb de, $54, $58 + depixel 10, 11, 4, 0 ld a, SPRITE_ANIM_INDEX_22 call _InitSpriteAnimStruct @@ -953,7 +953,7 @@ endr jr .asm_1087c4 .asm_1087a9 - lb de, $54, $58 + depixel 10, 11, 4, 0 ld a, SPRITE_ANIM_INDEX_22 call _InitSpriteAnimStruct xor a @@ -985,7 +985,7 @@ Function1087cf: ; 1087cf call Function1082f0 call Function108af4 call Function108b5a - lb de, $4a, $50 + depixel 9, 10, 2, 0 ld a, SPRITE_ANIM_INDEX_25 call _InitSpriteAnimStruct ld de, SFX_FORESIGHT @@ -994,7 +994,7 @@ Function1087cf: ; 1087cf call Function1082cc xor a ld [wcf64], a - lb de, $4a, $50 + depixel 9, 10, 2, 0 ld a, SPRITE_ANIM_INDEX_23 call _InitSpriteAnimStruct .asm_1087fc @@ -1021,7 +1021,7 @@ Function108811: ; 108811 call PlaySFX ld c, $3c call Function1082cc - lb de, $f2, $50 + depixel 30, 10, 2, 0 ld a, SPRITE_ANIM_INDEX_24 call _InitSpriteAnimStruct call Function1082b7 @@ -1044,7 +1044,7 @@ Function108838: ; 108838 Function10884c: ; 10884c ld c, 80 call DelayFrames - lb de, $f2, $50 + depixel 30, 10, 2, 0 ld a, SPRITE_ANIM_INDEX_24 call _InitSpriteAnimStruct call Function1082b7 @@ -1068,7 +1068,7 @@ Function108863: ; 108863 .asm_108879 callba Function8d03d - lb de, $4a, $50 + depixel 9, 10, 2, 0 ld a, SPRITE_ANIM_INDEX_25 call _InitSpriteAnimStruct ld de, SFX_GLASS_TING_2 @@ -1105,13 +1105,13 @@ endr jr .asm_1088e7 .asm_1088c5 - lb de, $54, $58 + depixel 10, 11, 4, 0 ld a, SPRITE_ANIM_INDEX_22 call _InitSpriteAnimStruct jr .asm_1088e7 .asm_1088cf - lb de, $54, $58 + depixel 10, 11, 4, 0 ld a, SPRITE_ANIM_INDEX_22 call _InitSpriteAnimStruct xor a diff --git a/misc/mobile_45.asm b/misc/mobile_45.asm index 8855bdcfc..da4cadc6d 100644 --- a/misc/mobile_45.asm +++ b/misc/mobile_45.asm @@ -7757,14 +7757,14 @@ Jumptable_117728: ; 117728 (45:7728) Function117738: ; 117738 (45:7738) callba Function171ccd - lb de, $30, $18 + depixel 6, 3 ld a, $1d call _InitSpriteAnimStruct ld hl, $c add hl, bc ld a, $6 ld [hl], a - lb de, $48, $20 + depixel 9, 4 ld a, $1d call _InitSpriteAnimStruct ld hl, $c diff --git a/misc/mobile_5c.asm b/misc/mobile_5c.asm index df4827808..8501aab7e 100755 --- a/misc/mobile_5c.asm +++ b/misc/mobile_5c.asm @@ -1859,21 +1859,21 @@ Function171b42: ; 171b42 (5c:5b42) jr Function171b42 Function171b4b: ; 171b4b (5c:5b4b) - lb de, $40, $10 + depixel 8, 2 ld a, SPRITE_ANIM_INDEX_1D call _InitSpriteAnimStruct ld hl, $c add hl, bc ld a, $8 ld [hl], a - lb de, $40, $98 + depixel 8, 19 ld a, SPRITE_ANIM_INDEX_1D call _InitSpriteAnimStruct ld hl, $c add hl, bc ld a, $9 ld [hl], a - lb de, $8a, $70 + depixel 17, 14, 2, 0 ld a, SPRITE_ANIM_INDEX_1D call _InitSpriteAnimStruct ld hl, $c @@ -387,18 +387,22 @@ wc313:: ds 1 wSpriteAnimationStructs:: sprite_anim_struct: MACRO -\1Index:: ds 1 - ds 1 -\1AnimSeqID:: ds 1 -\1TileID:: ds 1 -\1XCoord:: ds 1 -\1YCoord:: ds 1 -\1XOffset:: ds 1 -\1YOffset:: ds 1 -\1FrameTimer:: ds 1 - ds 1 -\1FrameIndex:: ds 1 - ds 5 +\1Index:: ds 1 ; 0 +\1Sprite01:: ds 1 ; 1 +\1AnimSeqID:: ds 1 ; 2 +\1TileID:: ds 1 ; 3 +\1XCoord:: ds 1 ; 4 +\1YCoord:: ds 1 ; 5 +\1XOffset:: ds 1 ; 6 +\1YOffset:: ds 1 ; 7 +\1FrameTimer:: ds 1 ; 8 +\1Sprite09:: ds 1 ; 9 +\1FrameIndex:: ds 1 ; a +\1Sprite0b:: ds 1 +\1Sprite0c:: ds 1 +\1Sprite0d:: ds 1 +\1Sprite0e:: ds 1 +\1Sprite0f:: ds 1 ENDM ; Field 0: Index @@ -1658,15 +1662,19 @@ VramState:: ; d0ed wBattleResult:: ds 1 wd0ef:: ds 1 -wd0f0:: -CurMart:: ; d0f0 - ; ds 16 - ds 1 -wd0f1:: ds 1 -wd0f2:: ds 14 +CurMart:: ds 16 + ds CurMart - @ +wd0f0:: ds 1 +wd0f1:: +wCurMessageIndex:: ds 1 +wd0f2:: +wMailboxCount:: ds 1 +wMailboxItems:: ds MAILBOX_CAPACITY +wMailboxEnd:: ds 1 ; d1fe + ds 2 CurMartEnd:: -wd100:: ds 1 +wd100:: ds 1 wd101:: ds 1 wd102:: ds 1 wd103:: ds 1 |