ref: 609e2d055298e86187456d0c8729d74fc8d4717b
dir: /misc/crystal_misc.asm/
INCLUDE "includes.asm" SECTION "Misc Crystal", ROMX, BANK[MISC_CRYSTAL] MobileAdapterGFX: INCBIN "gfx/misc/mobile_adapter.2bpp" ; no known jump sources Function17a68f: ; 17a68f (5e:668f) call Function17a6a8 call Function17a751 ld hl, $d088 bit 5, [hl] jr z, .asm_17a6a6 ld de, StringBuffer1 ; $d073 push de call Function17a721 pop de xor a ret .asm_17a6a6 scf ret ; known jump sources: 17a68f (5e:668f) Function17a6a8: ; 17a6a8 (5e:66a8) push de push bc ld hl, StringBuffer2 ; $d086 ld bc, $a xor a call ByteFill ld hl, Buffer1 ; $d1ea (aliases: MagikarpLength) ld bc, $10 ld a, $ff call ByteFill pop bc ld a, c and a jr z, .asm_17a6c9 ld hl, $d088 set 4, [hl] .asm_17a6c9 pop de call Function17a6f5 call Function17aba0 callba Function106464 call Function17ac0c callba Function104000 call Function17abcf callba Function49409 callba Function49420 call Function32f9 call DelayFrame ret ; known jump sources: 17a6ca (5e:66ca) Function17a6f5: ; 17a6f5 (5e:66f5) ld hl, Buffer1 ; $d1ea (aliases: MagikarpLength) ld c, $0 ld b, $8 .asm_17a6fc ld a, [de] call Function17a713 jr c, .asm_17a70e ld a, [de] swap a call Function17a713 jr c, .asm_17a70e inc de dec b jr nz, .asm_17a6fc .asm_17a70e ld a, c ld [$d08c], a ret ; known jump sources: 17a6fd (5e:66fd), 17a705 (5e:6705) Function17a713: ; 17a713 (5e:6713) and $f cp $a jr nc, .asm_17a71d ld [hli], a inc c and a ret .asm_17a71d ld [hl], $ff scf ret ; known jump sources: 17a6a0 (5e:66a0) Function17a721: ; 17a721 (5e:6721) push de ld h, d ld l, e ld bc, $8 ld a, $ff call ByteFill pop de ld hl, Buffer1 ; $d1ea (aliases: MagikarpLength) ld b, $8 .asm_17a732 ld c, $0 ld a, [hli] cp $a jr nc, .asm_17a748 ld c, a ld a, [hli] cp $a jr nc, .asm_17a74c swap a or c ld [de], a inc de dec b jr nz, .asm_17a732 ret .asm_17a748 ld a, $ff ld [de], a ret .asm_17a74c ld a, $f0 or c ld [de], a ret ; known jump sources: 17a692 (5e:6692) Function17a751: ; 17a751 (5e:6751) xor a ld [$d087], a .asm_17a755 call Function17a781 call Function17a7ae call Function17a97b call Function17a770 call Function17a78f ld hl, $d08f inc [hl] ld a, [$d087] bit 7, a jr z, .asm_17a755 ret ; known jump sources: 17a75e (5e:675e) Function17a770: ; 17a770 (5e:6770) ld a, [hOAMUpdate] ; $ff00+$d8 push af ld a, $1 ld [hOAMUpdate], a ; $ff00+$d8 call HideSprites call Function17a9cb pop af ld [hOAMUpdate], a ; $ff00+$d8 ret ; known jump sources: 17a755 (5e:6755) Function17a781: ; 17a781 (5e:6781) ld a, [$FF00+$aa] push af ld a, $1 ld [$FF00+$aa], a call Functiona57 pop af ld [$FF00+$aa], a ret ; known jump sources: 17a761 (5e:6761) Function17a78f: ; 17a78f (5e:678f) ld hl, $d088 bit 7, [hl] res 7, [hl] jr nz, .asm_17a79f callba Function10402d ret .asm_17a79f callba Function104061 ret ; 17a7a6 (5e:67a6) INCBIN "baserom.gbc",$17a7a6,$17a7ae - $17a7a6 ; known jump sources: 17a758 (5e:6758) Function17a7ae: ; 17a7ae (5e:67ae) ld a, [$d087] ld hl, $67b6 rst $28 ret ; no known jump sources Jumptable_17a7b6: ; 17a7b6 (5e:67b6) dw Function17a7c2 dw Function17a7cd dw Function17a7d8 dw Function17a7ff dw Function17a81a dw Function17a7f4 ; no known jump sources Function17a7c2: ; 17a7c2 (5e:67c2) ld a, $4 call Function17aad3 ld a, $1 ld [$d087], a ret ; no known jump sources Function17a7cd: ; 17a7cd (5e:67cd) call Function17a83c call Function17a8ae ret c call Function17a848 ret ; no known jump sources Function17a7d8: ; 17a7d8 (5e:67d8) call Function17a83c call Function17a848 ld hl, $d08b dec [hl] ret nz call Function17ac1d call Function17ac2a ld hl, $d088 set 7, [hl] ld a, $1 ld [$d087], a ret ; no known jump sources Function17a7f4: ; 17a7f4 (5e:67f4) ld hl, $d08b dec [hl] ret nz ld hl, $d087 set 7, [hl] ret ; no known jump sources Function17a7ff: ; 17a7ff (5e:67ff) ld hl, $d08b dec [hl] ret nz call Function17ac1d call Function17ac2a ld hl, $d088 set 7, [hl] ld hl, $d088 set 5, [hl] ld hl, $d087 set 7, [hl] ret ; no known jump sources Function17a81a: ; 17a81a (5e:681a) call Function3c74 ret nc ld a, [hJoyPressed] ; $ff00+$a7 and $3 ret z call Function1c07 call Function17ac1d call Function17ac2a ld hl, $d088 set 7, [hl] ld hl, $d088 res 6, [hl] ld a, $1 ld [$d087], a ret ; known jump sources: 17a7cd (5e:67cd), 17a7d8 (5e:67d8) Function17a83c: ; 17a83c (5e:683c) ld a, [$FF00+$a9] and $f0 ld c, a ld a, [hJoyPressed] ; $ff00+$a7 and $b or c ld c, a ret ; known jump sources: 17a7d4 (5e:67d4), 17a7db (5e:67db) Function17a848: ; 17a848 (5e:6848) ld a, c and $60 cp $60 jr z, .asm_17a876 ld a, c and $50 cp $50 jr z, .asm_17a87d ld a, c and $a0 cp $a0 jr z, .asm_17a884 ld a, c and $90 cp $90 jr z, .asm_17a88b bit 6, c jr nz, .asm_17a892 bit 7, c jr nz, .asm_17a899 bit 5, c jr nz, .asm_17a8a0 bit 4, c jr nz, .asm_17a8a7 xor a ret .asm_17a876 ld a, $9 call Function17aad0 scf ret .asm_17a87d ld a, $a call Function17aad0 scf ret .asm_17a884 ld a, $b call Function17aad0 scf ret .asm_17a88b ld a, $c call Function17aad0 scf ret .asm_17a892 ld a, $5 call Function17aad0 scf ret .asm_17a899 ld a, $6 call Function17aad0 scf ret .asm_17a8a0 ld a, $7 call Function17aad0 scf ret .asm_17a8a7 ld a, $8 call Function17aad0 scf ret ; known jump sources: 17a7d0 (5e:67d0) Function17a8ae: ; 17a8ae (5e:68ae) bit 1, c jr nz, .asm_17a8bc bit 0, c jr nz, .asm_17a8cc bit 3, c jr nz, .asm_17a8d7 xor a ret .asm_17a8bc ld a, $b ld [$d08a], a call Function17aa98 call Function17a943 call Function17aa88 scf ret .asm_17a8cc call Function17aad7 call Function17aa98 call Function17a8de scf ret .asm_17a8d7 ld a, $c call Function17aad3 scf ret ; known jump sources: 17a8d2 (5e:68d2) Function17a8de: ; 17a8de (5e:68de) ld a, $2 call Function17aae0 ld a, [hl] cp $f1 jr z, .asm_17a8fd cp $f0 jr z, .asm_17a904 cp $f2 jr z, .asm_17a911 ld e, a call Function17a964 ld a, $2 ld [$d087], a call Function17aa88 ret .asm_17a8fd call Function17a943 call Function17aa88 ret .asm_17a904 call Function17aad7 call Function17aa98 call Function17a91e call Function17aa88 ret .asm_17a911 call Function17aa98 ld a, $5 ld [$d087], a xor a call Function17aa88 ret ; known jump sources: 17a90a (5e:690a) Function17a91e: ; 17a91e (5e:691e) ld a, [$d08c] cp $7 jr c, .asm_17a92c ld a, $3 ld [$d087], a xor a ret .asm_17a92c call Function1d6e call Function17a99e ld hl, $d088 set 7, [hl] ld hl, $d088 set 6, [hl] ld a, $4 ld [$d087], a scf ret ; known jump sources: 17a8c4 (5e:68c4), 17a8fd (5e:68fd) Function17a943: ; 17a943 (5e:6943) ld a, [$d08c] and a jr z, .asm_17a95d dec a ld [$d08c], a ld c, a ld b, $0 ld hl, Buffer1 ; $d1ea (aliases: MagikarpLength) add hl, bc ld [hl], $ff ld a, $2 ld [$d087], a and a ret .asm_17a95d ld a, $5 ld [$d087], a xor a ret ; known jump sources: 17a8f1 (5e:68f1) Function17a964: ; 17a964 (5e:6964) ld a, [$d08c] cp $10 jr nc, .asm_17a979 ld c, a ld b, $0 inc a ld [$d08c], a ld hl, Buffer1 ; $d1ea (aliases: MagikarpLength) add hl, bc ld [hl], e and a ret .asm_17a979 scf ret ; known jump sources: 17a75b (5e:675b) Function17a97b: ; 17a97b (5e:697b) ld hl, $c4b5 ld bc, $212 call ClearBox ld hl, $c4cb ld de, Buffer1 ; $d1ea (aliases: MagikarpLength) ld a, [$d08c] and a ret z ld c, a .asm_17a990 ld a, [de] inc de cp $a jr nc, .asm_17a99d add $f6 ld [hli], a dec c jr nz, .asm_17a990 ret .asm_17a99d ret ; known jump sources: 17a92f (5e:692f) Function17a99e: ; 17a99e (5e:699e) ld hl, $c590 ld b, $4 ld c, $12 call Function17ac46 ld hl, $c5ba ld de, $69b2 call PlaceString ret ; 17a9b2 (5e:69b2) INCBIN "baserom.gbc",$17a9b2,$17a9cb - $17a9b2 ; known jump sources: 17a77a (5e:677a) Function17a9cb: ; 17a9cb (5e:69cb) ld de, Sprites ; $c400 ld hl, $d088 bit 6, [hl] jr nz, .asm_17a9df call Function17a9e3 call Function17aa22 call Function17a9f5 ret .asm_17a9df call Function17a9e3 ret ; known jump sources: 17a9d5 (5e:69d5), 17a9df (5e:69df) Function17a9e3: ; 17a9e3 (5e:69e3) ld a, $3 ld [$d08e], a ld hl, $6a77 ld b, $8 ld c, $8 ld a, $5 call Function17aa4a ret ; known jump sources: 17a9db (5e:69db) Function17a9f5: ; 17a9f5 (5e:69f5) ld a, [$d08c] cp $10 ret nc ld a, [$d08f] swap a and $1 add $1 ld [$d08e], a ld a, [$d08c] cp $10 jr c, .asm_17aa0f dec a .asm_17aa0f ld c, $8 call SimpleMultiply add $18 ld b, a ld c, $11 ld hl, $6a72 ld a, $4 call Function17aa4a ret ; known jump sources: 17a9d8 (5e:69d8) Function17aa22: ; 17aa22 (5e:6a22) ld a, $0 ld [$d08e], a push de ld a, $3 call Function17aae0 add a add a add a add $0 push af ld a, $4 call Function17aae0 add a add a add a add $8 ld c, a pop af ld b, a pop de ld a, $0 ld hl, $6a77 call Function17aa4a ret ; known jump sources: 17a9f1 (5e:69f1), 17aa1e (5e:6a1e), 17aa46 (5e:6a46) Function17aa4a: ; 17aa4a (5e:6a4a) ld [$d08d], a ld a, b add $8 ld b, a ld a, c add $10 ld c, a ld a, [hli] .asm_17aa56 push af ld a, [hli] add c ld [de], a inc de ld a, [hli] add b ld [de], a inc de ld a, [$d08d] add [hl] inc hl ld [de], a inc de ld a, [$d08e] or [hl] inc hl ld [de], a inc de pop af dec a jr nz, .asm_17aa56 ret ; 17aa72 (5e:6a72) INCBIN "baserom.gbc",$17aa72,$17aa88 - $17aa72 ; known jump sources: 17a8c7 (5e:68c7), 17a8f9 (5e:68f9), 17a900 (5e:6900), 17a90d (5e:690d), 17a91a (5e:691a) Function17aa88: ; 17aa88 (5e:6a88) jr c, asm_17aa91 ld de, $20 call PlaySFX ret ; known jump sources: 17aa88 (5e:6a88) asm_17aa91: ; 17aa91 (5e:6a91) ld de, $19 call PlaySFX ret ; known jump sources: 17a8c1 (5e:68c1), 17a8cf (5e:68cf), 17a907 (5e:6907), 17a911 (5e:6911) Function17aa98: ; 17aa98 (5e:6a98) ld a, $5 ld [$d08b], a call Function17aaa9 call Function17aac3 ld hl, $d088 set 7, [hl] ret ; known jump sources: 17aa9d (5e:6a9d) Function17aaa9: ; 17aaa9 (5e:6aa9) ld a, $3 call Function17aae3 ld c, a ld b, $0 ld hl, AttrMap ; $cdd9 add hl, bc push hl ld a, $4 call Function17aae3 ld bc, $14 pop hl call AddNTimes ret ; known jump sources: 17aaa0 (5e:6aa0) Function17aac3: ; 17aac3 (5e:6ac3) ld a, $b push hl ld [hli], a ld [hli], a pop hl ld de, $14 add hl, de ld [hli], a ld [hli], a ret ; known jump sources: 17a878 (5e:6878), 17a87f (5e:687f), 17a886 (5e:6886), 17a88d (5e:688d), 17a894 (5e:6894), 17a89b (5e:689b), 17a8a2 (5e:68a2), 17a8a9 (5e:68a9) Function17aad0: ; 17aad0 (5e:6ad0) call Function17aae0 ; known jump sources: 17a7c4 (5e:67c4), 17a8d9 (5e:68d9) Function17aad3: ; 17aad3 (5e:6ad3) ld [$d089], a ret ; known jump sources: 17a8cc (5e:68cc), 17a904 (5e:6904), 17aae0 (5e:6ae0) Function17aad7: ; 17aad7 (5e:6ad7) push af ld a, [$d089] ld [$d08a], a pop af ret ; known jump sources: 17a8e0 (5e:68e0), 17aa2a (5e:6a2a), 17aa35 (5e:6a35), 17aad0 (5e:6ad0) Function17aae0: ; 17aae0 (5e:6ae0) call Function17aad7 ; known jump sources: 17aaab (5e:6aab), 17aab8 (5e:6ab8) Function17aae3: ; 17aae3 (5e:6ae3) push af ld a, [$d08a] ld bc, $d ld hl, $6af7 call AddNTimes pop af ld c, a ld b, $0 add hl, bc ld a, [hl] ret ; 17aaf7 (5e:6af7) INCBIN "baserom.gbc",$17aaf7,$17aba0 - $17aaf7 ; known jump sources: 17a6cd (5e:66cd) Function17aba0: ; 17aba0 (5e:6ba0) ld a, [rVBK] ; $ff00+$4f push af ld a, $1 ld [rVBK], a ; $ff00+$4f ld hl, $9000 ld de, $6fa5 ld bc, $5e80 call Get2bpp pop af ld [rVBK], a ; $ff00+$4f ld hl, $8000 ld de, $7465 ld bc, $5e05 call Get2bpp ld hl, $8050 ld de, $601a ld bc, $4504 call Get2bpp ret ; known jump sources: 17a6df (5e:66df) Function17abcf: ; 17abcf (5e:6bcf) ld a, [rSVBK] ; $ff00+$70 push af ld a, $5 ld [rSVBK], a ; $ff00+$70 ld hl, $6c55 ld de, Unkn1Pals ; $d000 ld bc, $30 call CopyBytes ld hl, $6c95 ld de, MartPointer ; $d040 (aliases: Unkn2Pals) ld bc, $40 call CopyBytes ld hl, $74b5 ld de, $d048 ld bc, $10 call CopyBytes ld hl, $7471 ld de, $d058 ld bc, $8 ld a, $2 call FarCopyBytes pop af ld [rSVBK], a ; $ff00+$70 ret ; known jump sources: 17a6d6 (5e:66d6) Function17ac0c: ; 17ac0c (5e:6c0c) call Function17ac1d call Function17ac2a ld hl, TileMap ; $c4a0 (aliases: SpritesEnd) ld b, $2 ld c, $12 call Function17ac46 ret ; known jump sources: 17a7e3 (5e:67e3), 17a804 (5e:6804), 17a826 (5e:6826), 17ac0c (5e:6c0c) Function17ac1d: ; 17ac1d (5e:6c1d) ld hl, $6cd5 ld de, $c4f0 ld bc, $118 call CopyBytes ret ; known jump sources: 17a7e6 (5e:67e6), 17a807 (5e:6807), 17a829 (5e:6829), 17ac0f (5e:6c0f) Function17ac2a: ; 17ac2a (5e:6c2a) ld hl, $6e3d ld de, $ce29 ld bc, $118 call CopyBytes ld hl, $ce29 ld bc, $118 .asm_17ac3c ld a, [hl] or $8 ld [hli], a dec bc ld a, b or c jr nz, .asm_17ac3c ret ; known jump sources: 17a9a5 (5e:69a5), 17ac19 (5e:6c19) Function17ac46: ; 17ac46 (5e:6c46) ld a, [$d088] bit 4, a jr nz, .asm_17ac51 call TextBox ret .asm_17ac51 call Function3eea ret ; 17ac55 (5e:6c55) INCBIN "baserom.gbc",$17ac55,$17b629 - $17ac55