diff options
Diffstat (limited to 'main.asm')
-rw-r--r-- | main.asm | 141 |
1 files changed, 134 insertions, 7 deletions
@@ -72365,12 +72365,115 @@ UnnamedText_76683: ; 0x76683 ; 0x76683 + 5 bytes HiddenItems: ; 0x76688 -INCBIN "baserom.gbc",$76688,$76794 - $76688 + ld hl, HiddenItemCoords + call Label76857 + ld [$cd41], a + ld hl, $d6f0 + ld a, [$cd41] + ld c, a + ld b, $2 + ld a, $10 + call Predef + ld a, c + and a + ret nz + call $3c3c + ld a, $1 + ld [$cc3c], a + ld a, [$cd3d] ; item ID + ld [$d11e], a + call GetItemName + ld a, $24 + jp $3ef5 + +HiddenItemCoords: ; 0x766b8 +; map ID, then coords + db VIRIDIAN_FOREST,$12,$01 + db VIRIDIAN_FOREST,$2a,$10 + db MT_MOON_3,$0c,$12 + db ROUTE_25,$03,$26 + db ROUTE_9,$07,$0e + db SS_ANNE_6,$09,$0d + db SS_ANNE_10,$01,$03 + db ROUTE_10,$11,$09 + db ROUTE_10,$35,$10 + db ROCKET_HIDEOUT_1,$0f,$15 + db ROCKET_HIDEOUT_3,$11,$1b + db ROCKET_HIDEOUT_4,$01,$19 + db POKEMONTOWER_5,$0c,$04 + db ROUTE_13,$0e,$01 + db ROUTE_13,$0d,$10 + db MANSION_4,$09,$01 + db SAFARIZONEENTRANCE,$01,$0a + db SAFARI_ZONE_WEST,$05,$06 + db SILPH_CO_5F,$03,$0c + db SILPH_CO_9F,$0f,$02 + db COPYCATS_HOUSE_2F,$01,$01 + db UNKNOWN_DUNGEON_1,$0b,$0e + db UNKNOWN_DUNGEON_3,$03,$1b + db POWER_PLANT,$10,$11 + db POWER_PLANT,$01,$0c + db SEAFOAM_ISLANDS_3,$0f,$0f + db SEAFOAM_ISLANDS_5,$11,$19 + db MANSION_1,$10,$08 + db MANSION_3,$09,$01 + db ROUTE_23,$2c,$09 + db ROUTE_23,$46,$13 + db ROUTE_23,$5a,$08 + db VICTORY_ROAD_2,$02,$05 + db VICTORY_ROAD_2,$07,$1a + db $6f,$0b,$0e + db VIRIDIAN_CITY,$04,$0e + db ROUTE_11,$05,$30 + db ROUTE_12,$3f,$02 + db ROUTE_17,$0e,$0f + db ROUTE_17,$2d,$08 + db ROUTE_17,$48,$11 + db ROUTE_17,$5b,$04 + db ROUTE_17,$79,$08 + db UNDERGROUND_PATH_NS,$04,$03 + db UNDERGROUND_PATH_NS,$22,$04 + db UNDERGROUND_PATH_WE,$02,$0c + db UNDERGROUND_PATH_WE,$05,$15 + db CELADON_CITY,$0f,$30 + db ROUTE_25,$01,$0a + db MT_MOON_3,$09,$21 + db SEAFOAM_ISLANDS_4,$10,$09 + db VERMILION_CITY,$0b,$0e + db CERULEAN_CITY,$08,$0f + db ROUTE_4,$03,$28 + db $ff -UnnamedText_76794: ; 0x76794 +FoundHiddenItemText: ; 0x7675b +; XXX where is the pointer to this? + TX_FAR UnnamedText_894d0 + db $8 + ld a, [$cd3d] ; item ID + ld b, a + ld c, 1 ; quantity + call GiveItem + jr nc, .bagfull ; 0x76769 $19 + ld hl, $d6f0 + ld a, [$cd41] + ld c, a + ld b, $1 + ld a, $10 + call Predef + ld a, $89 + call $3740 ; play sound + call $3748 ; wait for sound to finish playing + jp TextScriptEnd +.bagfull + call $3865 ; wait for button press + xor a + ld [$cc3c], a + ld hl, HiddenItemBagFullText + call PrintText + jp TextScriptEnd + +HiddenItemBagFullText: ; 0x76794 TX_FAR _UnnamedText_76794 db $50 -; 0x76794 + 5 bytes HiddenCoins: ; 0x76799 INCBIN "baserom.gbc",$76799,$76852 - $76799 @@ -72378,11 +72481,35 @@ INCBIN "baserom.gbc",$76799,$76852 - $76799 UnnamedText_76852: ; 0x76852 TX_FAR _UnnamedText_76852 db $50 -; 0x76852 + 5 bytes - -INCBIN "baserom.gbc",$76857,$76880 - $76857 -;I'm pretty sure that the rest of the bank is assembly and thus doesn't use any of the 0s, but I've included some to be sure +Label76857: ; 0x76857 + ld a, [$cd40] + ld d, a + ld a, [$cd41] + ld e, a + ld a, [W_CURMAP] + ld b, a + ld c, $ff +.loop + inc c + ld a, [hli] + cp $ff ; end of the list? + ret z ; if so, we're done here + cp b + jr nz, .asm_76877 ; 0x7686b $a + ld a, [hli] + cp d + jr nz, .asm_76878 ; 0x7686f $7 + ld a, [hli] + cp e + jr nz, .loop + ld a, c + ret +.asm_76877 + inc hl +.asm_76878 + inc hl + jr .loop SECTION "bank1E",DATA,BANK[$1E] |