diff options
author | xCrystal <rgr.crystal@gmail.com> | 2018-02-07 16:57:12 +0100 |
---|---|---|
committer | xCrystal <rgr.crystal@gmail.com> | 2018-02-07 16:57:12 +0100 |
commit | 96f75517a52b30cc1f9e02ad4584aee7a76751c7 (patch) | |
tree | cc0df6b6226ef294342b1438b3f7011edd2fdc90 /src | |
parent | 3eae724c07856e96c36539eb7fc0288bae0265c4 (diff) |
Consolidate line endings to LF
Diffstat (limited to 'src')
-rwxr-xr-x | src/constants/booster_constants.asm | 82 | ||||
-rwxr-xr-x | src/engine/bank5.asm | 646 | ||||
-rwxr-xr-x | src/engine/bank8.asm | 264 | ||||
-rwxr-xr-x | src/engine/home.asm | 6 |
4 files changed, 500 insertions, 498 deletions
diff --git a/src/constants/booster_constants.asm b/src/constants/booster_constants.asm index ec9bb36..897a35e 100755 --- a/src/constants/booster_constants.asm +++ b/src/constants/booster_constants.asm @@ -1,41 +1,41 @@ -BOOSTER_CARD_TYPE_GRASS EQU $00
-BOOSTER_CARD_TYPE_FIRE EQU $01
-BOOSTER_CARD_TYPE_LIGHTNING EQU $03
-BOOSTER_CARD_TYPE_WATER EQU $02
-BOOSTER_CARD_TYPE_FIGHTING EQU $04
-BOOSTER_CARD_TYPE_PSYCHIC EQU $05
-BOOSTER_CARD_TYPE_COLORLESS EQU $06
-BOOSTER_CARD_TYPE_TRAINER EQU $07
-BOOSTER_CARD_TYPE_ENERGY EQU $08
-BOOSTER_CARD_TYPE_AMOUNT EQU $09
-
-BOOSTER_COLOSSEUM_NEUTRAL EQU $00
-BOOSTER_COLOSSEUM_GRASS EQU $01
-BOOSTER_COLOSSEUM_FIRE EQU $02
-BOOSTER_COLOSSEUM_WATER EQU $03
-BOOSTER_COLOSSEUM_LIGHTNING EQU $04
-BOOSTER_COLOSSEUM_FIGHTING EQU $05
-BOOSTER_COLOSSEUM_TRAINER EQU $06
-BOOSTER_EVOLUTION_NEUTRAL EQU $07
-BOOSTER_EVOLUTION_GRASS EQU $08
-BOOSTER_EVOLUTION_FIRE EQU $09
-BOOSTER_EVOLUTION_WATER EQU $0a
-BOOSTER_EVOLUTION_FIGHTING EQU $0b
-BOOSTER_EVOLUTION_PSYCHIC EQU $0c
-BOOSTER_EVOLUTION_TRAINER EQU $0d
-BOOSTER_MYSTERY_NEUTRAL EQU $0e
-BOOSTER_MYSTERY_GRASS_COLORLESS EQU $0f
-BOOSTER_MYSTERY_WATER_COLORLESS EQU $10
-BOOSTER_MYSTERY_LIGHTNING_COLORLESS EQU $11
-BOOSTER_MYSTERY_FIGHTING_COLORLESS EQU $12
-BOOSTER_MYSTERY_TRAINER_COLORLESS EQU $13
-BOOSTER_LABORATORY_FIGHTING EQU $14
-BOOSTER_LABORATORY_GRASS EQU $15
-BOOSTER_LABORATORY_WATER EQU $16
-BOOSTER_LABORATORY_PSYCHIC EQU $17
-BOOSTER_LABORATORY_TRAINER EQU $18
-BOOSTER_ENERGY_LIGHTNING_FIRE EQU $19
-BOOSTER_ENERGY_WATER_FIGHTING EQU $1a
-BOOSTER_ENERGY_GRASS_PSYCHIC EQU $1b
-BOOSTER_ENERGY_RANDOM EQU $1c
-NO_BOOSTER EQU $ff
+BOOSTER_CARD_TYPE_GRASS EQU $00 +BOOSTER_CARD_TYPE_FIRE EQU $01 +BOOSTER_CARD_TYPE_LIGHTNING EQU $03 +BOOSTER_CARD_TYPE_WATER EQU $02 +BOOSTER_CARD_TYPE_FIGHTING EQU $04 +BOOSTER_CARD_TYPE_PSYCHIC EQU $05 +BOOSTER_CARD_TYPE_COLORLESS EQU $06 +BOOSTER_CARD_TYPE_TRAINER EQU $07 +BOOSTER_CARD_TYPE_ENERGY EQU $08 +BOOSTER_CARD_TYPE_AMOUNT EQU $09 + +BOOSTER_COLOSSEUM_NEUTRAL EQU $00 +BOOSTER_COLOSSEUM_GRASS EQU $01 +BOOSTER_COLOSSEUM_FIRE EQU $02 +BOOSTER_COLOSSEUM_WATER EQU $03 +BOOSTER_COLOSSEUM_LIGHTNING EQU $04 +BOOSTER_COLOSSEUM_FIGHTING EQU $05 +BOOSTER_COLOSSEUM_TRAINER EQU $06 +BOOSTER_EVOLUTION_NEUTRAL EQU $07 +BOOSTER_EVOLUTION_GRASS EQU $08 +BOOSTER_EVOLUTION_FIRE EQU $09 +BOOSTER_EVOLUTION_WATER EQU $0a +BOOSTER_EVOLUTION_FIGHTING EQU $0b +BOOSTER_EVOLUTION_PSYCHIC EQU $0c +BOOSTER_EVOLUTION_TRAINER EQU $0d +BOOSTER_MYSTERY_NEUTRAL EQU $0e +BOOSTER_MYSTERY_GRASS_COLORLESS EQU $0f +BOOSTER_MYSTERY_WATER_COLORLESS EQU $10 +BOOSTER_MYSTERY_LIGHTNING_COLORLESS EQU $11 +BOOSTER_MYSTERY_FIGHTING_COLORLESS EQU $12 +BOOSTER_MYSTERY_TRAINER_COLORLESS EQU $13 +BOOSTER_LABORATORY_FIGHTING EQU $14 +BOOSTER_LABORATORY_GRASS EQU $15 +BOOSTER_LABORATORY_WATER EQU $16 +BOOSTER_LABORATORY_PSYCHIC EQU $17 +BOOSTER_LABORATORY_TRAINER EQU $18 +BOOSTER_ENERGY_LIGHTNING_FIRE EQU $19 +BOOSTER_ENERGY_WATER_FIGHTING EQU $1a +BOOSTER_ENERGY_GRASS_PSYCHIC EQU $1b +BOOSTER_ENERGY_RANDOM EQU $1c +NO_BOOSTER EQU $ff diff --git a/src/engine/bank5.asm b/src/engine/bank5.asm index d713f8f..1104b86 100755 --- a/src/engine/bank5.asm +++ b/src/engine/bank5.asm @@ -1,323 +1,323 @@ -PointerTable_14000: ; 14000 (05:4000)
- dw $47bd ; SAMS_PRACTICE_DECK
- dw PointerTable_14668 ; PRACTICE_PLAYER_DECK
- dw PointerTable_14668 ; SAMS_NORMAL_DECK
- dw PointerTable_14668 ; CHARMANDER_AND_FRIENDS_DECK
- dw PointerTable_14668 ; CHARMANDER_EXTRA_DECK
- dw PointerTable_14668 ; SQUIRTLE_AND_FRIENDS_DECK
- dw PointerTable_14668 ; SQUIRTLE_EXTRA_DECK
- dw PointerTable_14668 ; BULBASAUR_AND_FRIENDS_DECK
- dw PointerTable_14668 ; BULBASAUR_EXTRA_DECK
- dw PointerTable_14668 ; LIGHTNING_AND_FIRE_DECK
- dw PointerTable_14668 ; WATER_AND_FIGHTING_DECK
- dw PointerTable_14668 ; GRASS_AND_PSYCHIC_DECK
- dw $49e8 ; LEGENDARY_MOLTRES_DECK
- dw $4b0f ; LEGENDARY_ZAPDOS_DECK
- dw $4c0b ; LEGENDARY_ARTICUNO_DECK
- dw $4d60 ; LEGENDARY_DRAGONITE_DECK
- dw $4e89 ; FIRST_STRIKE_DECK
- dw $4f0e ; ROCK_CRUSHER_DECK
- dw $4f8f ; GO_GO_RAIN_DANCE_DECK
- dw $5019 ; ZAPPING_SELFDESTRUCT_DECK
- dw $509b ; FLOWER_POWER_DECK
- dw $5122 ; STRANGE_PSYSHOCK_DECK
- dw $51ad ; WONDERS_OF_SCIENCE_DECK
- dw $5232 ; FIRE_CHARGE_DECK
- dw $52bd ; IM_RONALD_DECK
- dw $534b ; POWERFUL_RONALD_DECK
- dw $53e8 ; INVINCIBLE_RONALD_DECK
- dw $546f ; LEGENDARY_RONALD_DECK
- dw $48dc ; MUSCLES_FOR_BRAINS_DECK
- dw PointerTable_14668 ; HEATED_BATTLE_DECK
- dw PointerTable_14668 ; LOVE_TO_BATTLE_DECK
- dw PointerTable_14668 ; EXCAVATION_DECK
- dw PointerTable_14668 ; BLISTERING_POKEMON_DECK
- dw PointerTable_14668 ; HARD_POKEMON_DECK
- dw PointerTable_14668 ; WATERFRONT_POKEMON_DECK
- dw PointerTable_14668 ; LONELY_FRIENDS_DECK
- dw PointerTable_14668 ; SOUND_OF_THE_WAVES_DECK
- dw PointerTable_14668 ; PIKACHU_DECK
- dw PointerTable_14668 ; BOOM_BOOM_SELFDESTRUCT_DECK
- dw PointerTable_14668 ; POWER_GENERATOR_DECK
- dw PointerTable_14668 ; ETCETERA_DECK
- dw PointerTable_14668 ; FLOWER_GARDEN_DECK
- dw PointerTable_14668 ; KALEIDOSCOPE_DECK
- dw PointerTable_14668 ; GHOST_DECK
- dw PointerTable_14668 ; NAP_TIME_DECK
- dw PointerTable_14668 ; STRANGE_POWER_DECK
- dw PointerTable_14668 ; FLYIN_POKEMON_DECK
- dw PointerTable_14668 ; LOVELY_NIDORAN_DECK
- dw PointerTable_14668 ; POISON_DECK
- dw PointerTable_14668 ; ANGER_DECK
- dw PointerTable_14668 ; FLAMETHROWER_DECK
- dw PointerTable_14668 ; RESHUFFLE_DECK
- dw $48dc ; IMAKUNI_DECK
-; 1406a
-
- INCROM $1406a, $14226
-
-Func_14226: ; 14226 (5:4226)
- call CreateHandCardBuffer
- ld hl, wDuelCardOrAttackList
-.checkForNextPokemon
- ld a, [hli]
- ld [$ff98], a
- cp $ff
- ret z
- call LoadDeckCardToBuffer1
- ld a, [wLoadedCard1Type]
- cp FIRE_ENERGY_CARD
- jr nc, .checkForNextPokemon
- ld a, [wLoadedCard1Stage]
- or a
- jr nz, .checkForNextPokemon
- push hl
- ld a, [$ff98]
- call $1485
- pop hl
- jr .checkForNextPokemon
-; 0x1424b
-
- INCROM $1424b, $14663
-
-Func_14663: ; 14663 (5:4663)
- farcall Func_200e5
- ret
-
-; GENERAL DECK POINTER LIST - Not sure on all of these.
-; This is an example of an AI pointer table, there's one for each AI type.
-PointerTable_14668: ; 14668 (05:4668)
- dw Func_14674 ; not used
- dw Func_14674 ; general AI for battles
- dw Func_14678 ; basic pokemon placement / cheater shuffling on better AI
- dw Func_1467f
- dw Func_14683
- dw Func_14687
-
-; when battle AI gets called
-Func_14674: ; 14674 (5:4674)
- call Func_1468b
- ret
-
-Func_14678: ; 14678 (5:4678)
- call Func_15636
- call $4226
- ret
-
-Func_1467f: ; 1467f (5:467f)
- call $5b72
- ret
-
-Func_14683: ; 14683 (5:4683)
- call $5b72
- ret
-
-Func_14687: ; 14687 (5:4687)
- call $41e5
- ret
-
-; AI for general decks i think
-Func_1468b: ; 1468b (5:468b)
- call Func_15649
- ld a, $1
- call Func_14663
- farcallx $8, $67d3
- jp nc, $4776
- farcallx $8, $6790
- farcallx $8, $66a3
- farcallx $8, $637f
- ret c
- farcallx $8, $662d
- ld a, $2
- call Func_14663
- ld a, $3
- call Func_14663
- ld a, $4
- call Func_14663
- call $5eae
- ret c
- ld a, $5
- call Func_14663
- ld a, $6
- call Func_14663
- ld a, $7
- call Func_14663
- ld a, $8
- call Func_14663
- call $4786
- ld a, $a
- call Func_14663
- ld a, $b
- call Func_14663
- ld a, $c
- call Func_14663
- ld a, [wAlreadyPlayedEnergy]
- or a
- jr nz, .asm_146ed
- call $64e8
-
-.asm_146ed
- call $5eae
- farcallx $8, $66a3
- farcallx $8, $637f
- ret c
- farcallx $8, $6790
- ld a, $d
- farcallx $8, $619b
- ld a, $d
- call Func_14663
- ld a, $f
- call Func_14663
- ld a, [$ce20]
- and $4
- jr z, .asm_14776
- ld a, $1
- call Func_14663
- ld a, $2
- call Func_14663
- ld a, $3
- call Func_14663
- ld a, $4
- call Func_14663
- call $5eae
- ret c
- ld a, $5
- call Func_14663
- ld a, $6
- call Func_14663
- ld a, $7
- call Func_14663
- ld a, $8
- call Func_14663
- call $4786
- ld a, $a
- call Func_14663
- ld a, $b
- call Func_14663
- ld a, $c
- call Func_14663
- ld a, [wAlreadyPlayedEnergy]
- or a
- jr nz, .asm_1475b
- call $64e8
-
-.asm_1475b
- call $5eae
- farcallx $8, $66a3
- farcallx $8, $637f
- ret c
- farcallx $8, $6790
- ld a, $d
- farcallx $8, $619b
- ld a, $d
- call Func_14663
-
-.asm_14776
- ld a, $e
- farcallx $8, $619b
- call $69f8
- ret c
- ld a, $5
- bank1call $67be
- ret
-; 0x14786
-
-
- INCROM $14786, $15636
-Func_15636: ; 15636 (5:5636)
- ld a, $10
- ld hl, $cda5
- call ZeroData
- ld a, $5
- ld [$cda6], a
- ld a, $ff
- ld [$cda5], a
- ret
-
-Func_15649: ; 15649 (5:5649)
- ld a, [$cda6]
- inc a
- ld [$cda6], a
- xor a
- ld [$ce20], a
- ld [$cddb], a
- ld [$cddc], a
- ld [$ce03], a
- ld a, [wcc10]
- cp $ff
- jr z, .asm_156b1
- or a
- jr z, .asm_156b1
- ld a, [wcc11]
- cp $ff
- jr z, .asm_156b1
- call SwapTurn
- call GetCardInDeckPosition
- call SwapTurn
- ld a, e
- cp MEWTWO1 ; I believe this is a check for Mewtwo1's Barrier move
- jr nz, .asm_156b1
- ld a, [$cda7]
- bit 7, a
- jr nz, .asm_156aa
- inc a
- ld [$cda7], a
- cp $3
- jr c, .asm_156c2
- ld a, (wPlayerArenaCard & $FF)
- call GetNonTurnDuelistVariable
- call SwapTurn
- call GetCardInDeckPosition
- call SwapTurn
- ld a, e
- cp MEWTWO1
- jr nz, .asm_156a4
- farcallx $8, $67a9
- jr nc, .asm_156aa
-
-.asm_156a4
- xor a
- ld [$cda7], a
- jr .asm_156c2
-
-.asm_156aa
- ld a, $80
- ld [$cda7], a
- jr .asm_156c2
-
-.asm_156b1
- ld a, [$cda7]
- bit 7, a
- jr z, .asm_156be
- inc a
- ld [$cda7], a
- jr .asm_156c2
-
-.asm_156be
- xor a
- ld [$cda7], a
-
-.asm_156c2
- ret
-; 0x156c3
-
- INCROM $156c3, $1575e
-
-; zeroes a bytes starting at hl
-ZeroData: ; 1575e (5:575e)
- push af
- push bc
- push hl
- ld b, a
- xor a
-.clearLoop
- ld [hli], a
- dec b
- jr nz, .clearLoop
- pop hl
- pop bc
- pop af
- ret
-; 0x1576b
-
- INCROM $1576b, $18000
+PointerTable_14000: ; 14000 (05:4000) + dw $47bd ; SAMS_PRACTICE_DECK + dw PointerTable_14668 ; PRACTICE_PLAYER_DECK + dw PointerTable_14668 ; SAMS_NORMAL_DECK + dw PointerTable_14668 ; CHARMANDER_AND_FRIENDS_DECK + dw PointerTable_14668 ; CHARMANDER_EXTRA_DECK + dw PointerTable_14668 ; SQUIRTLE_AND_FRIENDS_DECK + dw PointerTable_14668 ; SQUIRTLE_EXTRA_DECK + dw PointerTable_14668 ; BULBASAUR_AND_FRIENDS_DECK + dw PointerTable_14668 ; BULBASAUR_EXTRA_DECK + dw PointerTable_14668 ; LIGHTNING_AND_FIRE_DECK + dw PointerTable_14668 ; WATER_AND_FIGHTING_DECK + dw PointerTable_14668 ; GRASS_AND_PSYCHIC_DECK + dw $49e8 ; LEGENDARY_MOLTRES_DECK + dw $4b0f ; LEGENDARY_ZAPDOS_DECK + dw $4c0b ; LEGENDARY_ARTICUNO_DECK + dw $4d60 ; LEGENDARY_DRAGONITE_DECK + dw $4e89 ; FIRST_STRIKE_DECK + dw $4f0e ; ROCK_CRUSHER_DECK + dw $4f8f ; GO_GO_RAIN_DANCE_DECK + dw $5019 ; ZAPPING_SELFDESTRUCT_DECK + dw $509b ; FLOWER_POWER_DECK + dw $5122 ; STRANGE_PSYSHOCK_DECK + dw $51ad ; WONDERS_OF_SCIENCE_DECK + dw $5232 ; FIRE_CHARGE_DECK + dw $52bd ; IM_RONALD_DECK + dw $534b ; POWERFUL_RONALD_DECK + dw $53e8 ; INVINCIBLE_RONALD_DECK + dw $546f ; LEGENDARY_RONALD_DECK + dw $48dc ; MUSCLES_FOR_BRAINS_DECK + dw PointerTable_14668 ; HEATED_BATTLE_DECK + dw PointerTable_14668 ; LOVE_TO_BATTLE_DECK + dw PointerTable_14668 ; EXCAVATION_DECK + dw PointerTable_14668 ; BLISTERING_POKEMON_DECK + dw PointerTable_14668 ; HARD_POKEMON_DECK + dw PointerTable_14668 ; WATERFRONT_POKEMON_DECK + dw PointerTable_14668 ; LONELY_FRIENDS_DECK + dw PointerTable_14668 ; SOUND_OF_THE_WAVES_DECK + dw PointerTable_14668 ; PIKACHU_DECK + dw PointerTable_14668 ; BOOM_BOOM_SELFDESTRUCT_DECK + dw PointerTable_14668 ; POWER_GENERATOR_DECK + dw PointerTable_14668 ; ETCETERA_DECK + dw PointerTable_14668 ; FLOWER_GARDEN_DECK + dw PointerTable_14668 ; KALEIDOSCOPE_DECK + dw PointerTable_14668 ; GHOST_DECK + dw PointerTable_14668 ; NAP_TIME_DECK + dw PointerTable_14668 ; STRANGE_POWER_DECK + dw PointerTable_14668 ; FLYIN_POKEMON_DECK + dw PointerTable_14668 ; LOVELY_NIDORAN_DECK + dw PointerTable_14668 ; POISON_DECK + dw PointerTable_14668 ; ANGER_DECK + dw PointerTable_14668 ; FLAMETHROWER_DECK + dw PointerTable_14668 ; RESHUFFLE_DECK + dw $48dc ; IMAKUNI_DECK +; 1406a + + INCROM $1406a, $14226 + +Func_14226: ; 14226 (5:4226) + call CreateHandCardBuffer + ld hl, wDuelCardOrAttackList +.checkForNextPokemon + ld a, [hli] + ld [$ff98], a + cp $ff + ret z + call LoadDeckCardToBuffer1 + ld a, [wLoadedCard1Type] + cp FIRE_ENERGY_CARD + jr nc, .checkForNextPokemon + ld a, [wLoadedCard1Stage] + or a + jr nz, .checkForNextPokemon + push hl + ld a, [$ff98] + call $1485 + pop hl + jr .checkForNextPokemon +; 0x1424b + + INCROM $1424b, $14663 + +Func_14663: ; 14663 (5:4663) + farcall Func_200e5 + ret + +; GENERAL DECK POINTER LIST - Not sure on all of these. +; This is an example of an AI pointer table, there's one for each AI type. +PointerTable_14668: ; 14668 (05:4668) + dw Func_14674 ; not used + dw Func_14674 ; general AI for battles + dw Func_14678 ; basic pokemon placement / cheater shuffling on better AI + dw Func_1467f + dw Func_14683 + dw Func_14687 + +; when battle AI gets called +Func_14674: ; 14674 (5:4674) + call Func_1468b + ret + +Func_14678: ; 14678 (5:4678) + call Func_15636 + call $4226 + ret + +Func_1467f: ; 1467f (5:467f) + call $5b72 + ret + +Func_14683: ; 14683 (5:4683) + call $5b72 + ret + +Func_14687: ; 14687 (5:4687) + call $41e5 + ret + +; AI for general decks i think +Func_1468b: ; 1468b (5:468b) + call Func_15649 + ld a, $1 + call Func_14663 + farcallx $8, $67d3 + jp nc, $4776 + farcallx $8, $6790 + farcallx $8, $66a3 + farcallx $8, $637f + ret c + farcallx $8, $662d + ld a, $2 + call Func_14663 + ld a, $3 + call Func_14663 + ld a, $4 + call Func_14663 + call $5eae + ret c + ld a, $5 + call Func_14663 + ld a, $6 + call Func_14663 + ld a, $7 + call Func_14663 + ld a, $8 + call Func_14663 + call $4786 + ld a, $a + call Func_14663 + ld a, $b + call Func_14663 + ld a, $c + call Func_14663 + ld a, [wAlreadyPlayedEnergy] + or a + jr nz, .asm_146ed + call $64e8 + +.asm_146ed + call $5eae + farcallx $8, $66a3 + farcallx $8, $637f + ret c + farcallx $8, $6790 + ld a, $d + farcallx $8, $619b + ld a, $d + call Func_14663 + ld a, $f + call Func_14663 + ld a, [$ce20] + and $4 + jr z, .asm_14776 + ld a, $1 + call Func_14663 + ld a, $2 + call Func_14663 + ld a, $3 + call Func_14663 + ld a, $4 + call Func_14663 + call $5eae + ret c + ld a, $5 + call Func_14663 + ld a, $6 + call Func_14663 + ld a, $7 + call Func_14663 + ld a, $8 + call Func_14663 + call $4786 + ld a, $a + call Func_14663 + ld a, $b + call Func_14663 + ld a, $c + call Func_14663 + ld a, [wAlreadyPlayedEnergy] + or a + jr nz, .asm_1475b + call $64e8 + +.asm_1475b + call $5eae + farcallx $8, $66a3 + farcallx $8, $637f + ret c + farcallx $8, $6790 + ld a, $d + farcallx $8, $619b + ld a, $d + call Func_14663 + +.asm_14776 + ld a, $e + farcallx $8, $619b + call $69f8 + ret c + ld a, $5 + bank1call $67be + ret +; 0x14786 + + + INCROM $14786, $15636 +Func_15636: ; 15636 (5:5636) + ld a, $10 + ld hl, $cda5 + call ZeroData + ld a, $5 + ld [$cda6], a + ld a, $ff + ld [$cda5], a + ret + +Func_15649: ; 15649 (5:5649) + ld a, [$cda6] + inc a + ld [$cda6], a + xor a + ld [$ce20], a + ld [$cddb], a + ld [$cddc], a + ld [$ce03], a + ld a, [wcc10] + cp $ff + jr z, .asm_156b1 + or a + jr z, .asm_156b1 + ld a, [wcc11] + cp $ff + jr z, .asm_156b1 + call SwapTurn + call GetCardInDeckPosition + call SwapTurn + ld a, e + cp MEWTWO1 ; I believe this is a check for Mewtwo1's Barrier move + jr nz, .asm_156b1 + ld a, [$cda7] + bit 7, a + jr nz, .asm_156aa + inc a + ld [$cda7], a + cp $3 + jr c, .asm_156c2 + ld a, (wPlayerArenaCard & $FF) + call GetNonTurnDuelistVariable + call SwapTurn + call GetCardInDeckPosition + call SwapTurn + ld a, e + cp MEWTWO1 + jr nz, .asm_156a4 + farcallx $8, $67a9 + jr nc, .asm_156aa + +.asm_156a4 + xor a + ld [$cda7], a + jr .asm_156c2 + +.asm_156aa + ld a, $80 + ld [$cda7], a + jr .asm_156c2 + +.asm_156b1 + ld a, [$cda7] + bit 7, a + jr z, .asm_156be + inc a + ld [$cda7], a + jr .asm_156c2 + +.asm_156be + xor a + ld [$cda7], a + +.asm_156c2 + ret +; 0x156c3 + + INCROM $156c3, $1575e + +; zeroes a bytes starting at hl +ZeroData: ; 1575e (5:575e) + push af + push bc + push hl + ld b, a + xor a +.clearLoop + ld [hli], a + dec b + jr nz, .clearLoop + pop hl + pop bc + pop af + ret +; 0x1576b + + INCROM $1576b, $18000 diff --git a/src/engine/bank8.asm b/src/engine/bank8.asm index d052c43..478714b 100755 --- a/src/engine/bank8.asm +++ b/src/engine/bank8.asm @@ -1,132 +1,132 @@ - INCROM $20000, $200e5
-
-; 0 - e4 is a big set of data, seems to be one entry for each card
-
-Func_200e5: ; 200e5 (8:40e5)
- ld [$ce18], a
- call CreateHandCardBuffer
- ld hl, wDuelCardOrAttackList
- ld de, wHandCardBuffer
- call CopyBuffer
- ld hl, wHandCardBuffer
- ld a, [hli]
- ld [$ce16], a
- cp $ff
- ret z
- push hl
- ld a, [$ce18]
- ld d, a
- ld hl, $4000
-.asm_4106
- xor a
- ld [$ce21], a
- ld a, [hli]
- cp $ff
- jp z, $41b1
- cp d
- jp nz, .incHL5
- ld a, [hli]
- ld [$ce17], a
- ld a, [$ce16]
- call LoadDeckCardToBuffer1
- cp $d2
- jr nz, .asm_2012b
- ld b, a
- ld a, [$ce20]
- and $2
- jr nz, .incHL4
- ld a, b
-
-.asm_2012b
- ld b, a
- ld a, [$ce17]
- cp b
- jr nz, .incHL4
- push hl
- push de
- ld a, [$ce16]
- ld [$ff9f], a
- bank1call $35a9
- jp c, $41a8
- call $1944
- ld a, $1
- call TryExecuteEffectCommandFunction
- jp c, $41a8
- farcallx $5, $743b
- jr c, .asm_201a8
- pop de
- pop hl
- push hl
- call CallIndirect
- pop hl
- jr nc, .incHL4
- inc hl
- inc hl
- ld [$ce19], a
- push de
- push hl
- ld a, [$ce16]
- ld [$ff9f], a
- ld a, $6
- bank1call $67be
- pop hl
- pop de
- jr c, .incHL2
- push hl
- call CallIndirect
- pop hl
- inc hl
- inc hl
- ld a, [$ce20]
- ld b, a
- ld a, [$ce21]
- or b
- ld [$ce20], a
- pop hl
- and $8
- jp z, $40f7
- call $123b
- ld hl, wDuelCardOrAttackList
- ld de, $cf68
- call $697b
- ld hl, $cf68
- ld a, [$ce20]
- and $f7
- ld [$ce20], a
- jp $40f7
-
-.incHL5
- inc hl
-
-.incHL4
- inc hl
- inc hl
-
-.incHL2
- inc hl
- inc hl
- jp .asm_4106
-
-.asm_201a8
- pop de
- pop hl
- inc hl
- inc hl
- inc hl
- inc hl
- jp .asm_4106
-; 0x201b1
-
- INCROM $201b1, $2297b
-
-; copies $ff terminated buffer from hl to de
-CopyBuffer: ; 2297b (8:697b)
- ld a, [hli]
- ld [de], a
- cp $ff
- ret z
- inc de
- jr CopyBuffer
-; 0x22983
-
- INCROM $22983, $24000
+ INCROM $20000, $200e5 + +; 0 - e4 is a big set of data, seems to be one entry for each card + +Func_200e5: ; 200e5 (8:40e5) + ld [$ce18], a + call CreateHandCardBuffer + ld hl, wDuelCardOrAttackList + ld de, wHandCardBuffer + call CopyBuffer + ld hl, wHandCardBuffer + ld a, [hli] + ld [$ce16], a + cp $ff + ret z + push hl + ld a, [$ce18] + ld d, a + ld hl, $4000 +.asm_4106 + xor a + ld [$ce21], a + ld a, [hli] + cp $ff + jp z, $41b1 + cp d + jp nz, .incHL5 + ld a, [hli] + ld [$ce17], a + ld a, [$ce16] + call LoadDeckCardToBuffer1 + cp $d2 + jr nz, .asm_2012b + ld b, a + ld a, [$ce20] + and $2 + jr nz, .incHL4 + ld a, b + +.asm_2012b + ld b, a + ld a, [$ce17] + cp b + jr nz, .incHL4 + push hl + push de + ld a, [$ce16] + ld [$ff9f], a + bank1call $35a9 + jp c, $41a8 + call $1944 + ld a, $1 + call TryExecuteEffectCommandFunction + jp c, $41a8 + farcallx $5, $743b + jr c, .asm_201a8 + pop de + pop hl + push hl + call CallIndirect + pop hl + jr nc, .incHL4 + inc hl + inc hl + ld [$ce19], a + push de + push hl + ld a, [$ce16] + ld [$ff9f], a + ld a, $6 + bank1call $67be + pop hl + pop de + jr c, .incHL2 + push hl + call CallIndirect + pop hl + inc hl + inc hl + ld a, [$ce20] + ld b, a + ld a, [$ce21] + or b + ld [$ce20], a + pop hl + and $8 + jp z, $40f7 + call $123b + ld hl, wDuelCardOrAttackList + ld de, $cf68 + call $697b + ld hl, $cf68 + ld a, [$ce20] + and $f7 + ld [$ce20], a + jp $40f7 + +.incHL5 + inc hl + +.incHL4 + inc hl + inc hl + +.incHL2 + inc hl + inc hl + jp .asm_4106 + +.asm_201a8 + pop de + pop hl + inc hl + inc hl + inc hl + inc hl + jp .asm_4106 +; 0x201b1 + + INCROM $201b1, $2297b + +; copies $ff terminated buffer from hl to de +CopyBuffer: ; 2297b (8:697b) + ld a, [hli] + ld [de], a + cp $ff + ret z + inc de + jr CopyBuffer +; 0x22983 + + INCROM $22983, $24000 diff --git a/src/engine/home.asm b/src/engine/home.asm index 072e5dd..b70afec 100755 --- a/src/engine/home.asm +++ b/src/engine/home.asm @@ -7959,8 +7959,10 @@ Func_3df3: ; 3df3 (0:3df3) ret ; 0x3e10 - INCROM $3e10, $3e17 - +Func_3e10: ; 3e10 (0:3e10) + ld a, $1 + ld [wd61e], a + ld a, $62 Func_3e17: ; 3e17 (0:3e17) ld [wd131], a ldh a, [hBankROM] |