diff options
Diffstat (limited to 'misc')
-rwxr-xr-x | misc/battle_tower_5c.asm | 96 | ||||
-rwxr-xr-x | misc/mobile_5c.asm | 103 |
2 files changed, 101 insertions, 98 deletions
diff --git a/misc/battle_tower_5c.asm b/misc/battle_tower_5c.asm index 0cd84c0d9..f4f0e2a2b 100755 --- a/misc/battle_tower_5c.asm +++ b/misc/battle_tower_5c.asm @@ -323,99 +323,3 @@ endr BT_ChrisName: ; 170426 db "CHRIS@" ; 17042c - -Function17042c: ; 17042c - ld hl, BT_TrainerTextIndex + $be - ld a, 7 -.loop - push af - push hl - ld c, 18 -.loop2 - ld a, [hli] - ld b, a - ld a, [hli] - and a - jr z, .skip - cp $f - jr nc, .exit_inner_loop - push hl - ld hl, Unknown_170470 - dec a - ld e, a - ld d, 0 - add hl, de - ld a, [hl] - pop hl - cp b - jr c, .exit_inner_loop - jr z, .exit_inner_loop - jr .asm_170456 - -.skip - ld a, b - cp $fc - jr nc, .exit_inner_loop - -.asm_170456 - dec c - jr nz, .loop2 - jr .dont_copy - -.exit_inner_loop - pop de - push de - ld hl, Unknown_17047e - ld bc, BATTLETOWER_TRAINERDATALENGTH - call CopyBytes - -.dont_copy - pop hl - ld de, $00e0 - add hl, de - pop af - dec a - jr nz, .loop - ret -; 170470 - -Unknown_170470: - db $12, $24, $45, $45, $42, $42, $45, $42, $27, $27, $45, $27, $42, $24 - -Unknown_17047e: - db $03, $04, $05, $08 - db $03, $05, $0e, $06 - db $03, $02, $00, $00 - db $39, $07, $07, $04 - db $00, $05, $04, $07 - db $01, $05, $00, $00 - db $0f, $05, $14, $07 - db $05, $05, $11, $0c - db $0c, $06, $06, $04 - - -CopyBTTrainer_FromBT_OT_TowBT_OTTemp: ; 1704a2 -; copy the BattleTower-Trainer data that lies at 'BT_OTTrainer' to 'wBT_OTTemp' - ld a, [rSVBK] - push af - ld a, $3 ; BANK(BT_OTTrainer) - ld [rSVBK], a - - ld hl, BT_OTTrainer ; $d100 - ld de, wBT_OTTemp ; $c608 - ld bc, BATTLE_TOWER_STRUCT_LENGTH - call CopyBytes - - pop af - ld [rSVBK], a - - ld a, BANK(sSaveType) - call GetSRAMBank - ld a, $2 - ld [sSaveType], a - ld hl, sNrOfBeatenBattleTowerTrainers - inc [hl] - call CloseSRAM -SkipBattleTowerTrainer: ; 1704c9 - ret -; 1704ca diff --git a/misc/mobile_5c.asm b/misc/mobile_5c.asm index 0f2fb7158..df4827808 100755 --- a/misc/mobile_5c.asm +++ b/misc/mobile_5c.asm @@ -90,6 +90,7 @@ Function1700c4: ; 1700c4 push af ld a, $3 ld [rSVBK], a + call Function17042c ld a, $5 call GetSRAMBank @@ -244,15 +245,113 @@ Function17020c: ; 17020c inc de and a ret z -.asm_170210 + +.loop add hl, bc dec a - jr nz, .asm_170210 + jr nz, .loop ret ; 170215 INCLUDE "misc/battle_tower_5c.asm" + +Function17042c: ; 17042c + ld hl, w3_d2be + ld a, 7 +.loop + push af + push hl + ld c, 18 +.loop2 + ld a, [hli] + ld b, a + ld a, [hli] + and a + jr z, .empty + cp $f + jr nc, .exit_inner_loop + push hl + ld hl, Unknown_170470 + dec a + ld e, a + ld d, 0 + add hl, de + ld a, [hl] + pop hl + cp b + jr c, .exit_inner_loop + jr z, .exit_inner_loop + jr .next_iteration + +.empty + ld a, b + cp $fc + jr nc, .exit_inner_loop + +.next_iteration + dec c + jr nz, .loop2 + jr .dont_copy + +.exit_inner_loop + pop de + push de + ld hl, Unknown_17047e + ld bc, BATTLETOWER_TRAINERDATALENGTH + call CopyBytes + +.dont_copy + pop hl + ld de, $00e0 + add hl, de + pop af + dec a + jr nz, .loop + ret +; 170470 + +Unknown_170470: + db $12, $24, $45, $45, $42, $42, $45, $42, $27, $27, $45, $27, $42, $24 + +Unknown_17047e: + db $03, $04, $05, $08 + db $03, $05, $0e, $06 + db $03, $02, $00, $00 + db $39, $07, $07, $04 + db $00, $05, $04, $07 + db $01, $05, $00, $00 + db $0f, $05, $14, $07 + db $05, $05, $11, $0c + db $0c, $06, $06, $04 + + +CopyBTTrainer_FromBT_OT_TowBT_OTTemp: ; 1704a2 +; copy the BattleTower-Trainer data that lies at 'BT_OTTrainer' to 'wBT_OTTemp' + ld a, [rSVBK] + push af + ld a, $3 ; BANK(BT_OTTrainer) + ld [rSVBK], a + + ld hl, BT_OTTrainer ; $d100 + ld de, wBT_OTTemp ; $c608 + ld bc, BATTLE_TOWER_STRUCT_LENGTH + call CopyBytes + + pop af + ld [rSVBK], a + + ld a, BANK(sSaveType) + call GetSRAMBank + ld a, $2 + ld [sSaveType], a + ld hl, sNrOfBeatenBattleTowerTrainers + inc [hl] + call CloseSRAM +SkipBattleTowerTrainer: ; 1704c9 + ret +; 1704ca + Function1704ca: ; 1704ca ld a, [$be46] cp $7 |