Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- sub_24FD:
- ld b, a
- ld a, [$FFB8]
- push af
- ld a, b
- ld [$FFB8], a
- ld [$2000], a
- ld a, $a
- ld [$0], a
- xor a
- ld [$4000], a
- call $251A
- pop af
- ld [$FFB8], a
- ld [$2000], a
- ret
- sub_251A:
- ld hl, $A188
- ld c, $10
- ld b, 3
- xor a
- call FillMemory
- ld a, 1
- ld [$D0A6], a
- ld a, 3
- ld [$D0A7], a
- xor a
- ld [$D0A1], a
- ld [$D0A2], a
- ld [$D0A8], a
- call sub_268B
- ld b, a
- and $F
- add a, a
- add a, a
- add a, a
- ld [$D0A4], a
- ld a, b
- swap a
- and $F
- add a, a
- add a, a
- add a, a
- ld [$D0A3], a
- call sub_2670
- ld [$D0A8], a
- loc_2556:
- ld hl, $A188
- ld a, [$D0A8]
- bit 0, a
- jr z, loc_2563
- ld hl, $A310
- loc_2563:
- call sub_2897
- ld a, [$D0A8]
- bit 1, a
- jr z, loc_257A
- call sub_2670
- and a
- jr z, loc_2577
- call sub_2670
- inc a
- loc_2577:
- ld [$D0A9], a
- loc_257A:
- call sub_2670
- and a
- jr z, loc_2595
- loc_2580:
- call sub_2670
- ld c, a
- call sub_2670
- sla c
- or c
- and a
- jr z, loc_2595
- call sub_2649
- call sub_25D8
- jr loc_2580
- loc_2595:
- ld c, 0
- loc_2597:
- call sub_2670
- and a
- jr z, loc_25A0
- inc c
- jr loc_2597
- loc_25A0:
- ld a, c
- add a, a
- ld hl, $269F
- add a, l
- ld l, a
- jr nc, loc_25AA
- inc h
- loc_25AA:
- db $2A ;ldi a, [hl]
- ld e, a
- ld d, [hl]
- push de
- inc c
- ld e, 0
- ld d, e
- loc_25B2:
- call sub_2670
- or e
- ld e, a
- dec c
- jr z, loc_25C0
- sla e
- rl d
- jr loc_25B2
- loc_25C0:
- pop hl
- add hl, de
- ld e, l
- ld d, h
- loc_25C4:
- ld b, e
- xor a
- call sub_2649
- ld e, b
- call sub_25D8
- dec de
- ld a, d
- and a
- jr nz, loc_25D4
- ld a, e
- and a
- loc_25D4:
- jr nz, loc_25C4
- jr loc_2580
- sub_25D8:
- ld a, [$D0A4]
- ld b, a
- ld a, [$D0A2]
- inc a
- cp b
- jr z, loc_25F6
- ld [$D0A2], a
- ld a, [$D0AD]
- inc a
- ld [$D0AD], a
- ret nz
- ld a, [$D0AE]
- inc a
- ld [$D0AE], a
- ret
- loc_25F6:
- xor a
- ld [$D0A2], a
- ld a, [$D0A7]
- and a
- jr z, loc_2610
- dec a
- ld [$D0A7], a
- ld hl, $D0AF
- db $2A ;ldi a, [hl]
- ld [$D0AD], a
- ld a, [hl]
- ld [$D0AE], a
- ret
- loc_2610:
- ld a, 3
- ld [$D0A7], a
- ld a, [$D0A1]
- add a, 8
- ld [$D0A1], a
- ld b, a
- ld a, [$D0A3]
- cp b
- jr z, loc_2630
- ld a, [$D0AD]
- ld l, a
- ld a, [$D0AE]
- ld h, a
- inc hl
- jp sub_2897
- loc_2630:
- pop hl
- xor a
- ld [$D0A1], a
- ld a, [$D0A8]
- bit 1, a
- jr nz, loc_2646
- xor 1
- set 1, a
- ld [$D0A8], a
- jp loc_2556
- loc_2646:
- jp loc_26BF
- sub_2649:
- ld e, a
- ld a, [$D0A7]
- and a
- jr z, loc_2664
- cp 2
- jr c, loc_265C
- jr z, loc_2662
- rrc e
- rrc e
- jr loc_2664
- loc_265C:
- sla e
- sla e
- jr loc_2664
- loc_2662:
- swap e
- loc_2664:
- ld a, [$D0AD]
- ld l, a
- ld a, [$D0AE]
- ld h, a
- ld a, [hl]
- or e
- ld [hl], a
- ret
- sub_2670:
- ld a, [$D0A6]
- dec a
- jr nz, loc_267E
- call sub_268B
- ld [$D0A5], a
- ld a, 8
- loc_267E:
- ld [$D0A6], a
- ld a, [$D0A5]
- rlca
- ld [$D0A5], a
- and 1
- ret
- sub_268B:
- ld a, [$D0AB]
- ld l, a
- ld a, [$D0AC]
- ld h, a
- db $2A ;ldi a, [hl]
- ld b, a
- ld a, l
- ld [$D0AB], a
- ld a, h
- ld [$D0AC], a
- ld a, b
- ret
- bitmask_table269F:
- dw $1,$3,$7,$F,$1F,$3F,$7F,$FF,$1FF,$3FF,$7FF,$FFF,$1FFF,$3FFF,$7FFF,$FFFF
- loc_26BF:
- ld a, [$D0A9]
- cp 2
- jp z, loc_2877
- and a
- jp nz, loc_27C7
- ld hl, $A188
- call sub_26D4
- ld hl, $A310
- sub_26D4:
- xor a
- ld [$D0A1], a
- ld [$D0A2], a
- call sub_2897
- ld a, [$D0AA]
- and a
- jr z, loc_26EC
- ld hl, $27B7
- ld de, $27BF
- jr loc_26F2
- loc_26EC:
- ld hl, $27A7
- ld de, $27AF
- loc_26F2:
- ld a, l
- ld [$D0B1], a
- ld a, h
- ld [$D0B2], a
- ld a, e
- ld [$D0B3], a
- ld a, d
- ld [$D0B4], a
- ld e, 0
- loc_2704:
- ld a, [$D0AD]
- ld l, a
- ld a, [$D0AE]
- ld h, a
- ld a, [hl]
- ld b, a
- swap a
- and $F
- call sub_276D
- swap a
- ld d, a
- ld a, b
- and $F
- call sub_276D
- or d
- ld b, a
- ld a, [$D0AD]
- ld l, a
- ld a, [$D0AE]
- ld h, a
- ld a, b
- ld [hl], a
- ld a, [$D0A4]
- add a, l
- jr nc, loc_2731
- inc h
- loc_2731:
- ld [$D0AD], a
- ld a, h
- ld [$D0AE], a
- ld a, [$D0A1]
- add a, 8
- ld [$D0A1], a
- ld b, a
- ld a, [$D0A3]
- cp b
- jr nz, loc_2704
- xor a
- ld e, a
- ld [$D0A1], a
- ld a, [$D0A2]
- inc a
- ld [$D0A2], a
- ld b, a
- ld a, [$D0A4]
- cp b
- jr z, loc_2768
- ld a, [$D0AF]
- ld l, a
- ld a, [$D0B0]
- ld h, a
- inc hl
- call sub_2897
- jr loc_2704
- loc_2768:
- xor a
- ld [$D0A2], a
- ret
- sub_276D:
- srl a
- ld c, 0
- jr nc, loc_2775
- ld c, 1
- loc_2775:
- ld l, a
- ld a, [$D0AA]
- and a
- jr z, loc_2780
- bit 3, e
- jr loc_2782
- loc_2780:
- bit 0, e
- loc_2782:
- ld e, l
- jr nz, loc_278E
- ld a, [$D0B1]
- ld l, a
- ld a, [$D0B2]
- jr loc_2795
- loc_278E:
- ld a, [$D0B3]
- ld l, a
- ld a, [$D0B4]
- loc_2795:
- ld h, a
- ld a, e
- add a, l
- ld l, a
- jr nc, loc_279C
- inc h
- loc_279C:
- ld a, [hl]
- bit 0, c
- jr nz, loc_27A3
- swap a
- loc_27A3:
- and $F
- ld e, a
- ret
- MonsterGfxBitTables: ;27A7
- db 1,$32,$76,$45,$FE,$CD,$89,$BA
- db $FE,$CD,$89,$BA,1,$32,$76,$45
- db 8,$C4,$E6,$2A,$F7,$3B,$19,$D5
- db $F7,$3B,$19,$D5,8,$C4,$E6,$2A
- loc_27C7:
- xor a
- ld [$D0A1], a
- ld [$D0A2], a
- call sub_2841
- ld a, [$D0AD]
- ld l, a
- ld a, [$D0AE]
- ld h, a
- call sub_26D4
- call sub_2841
- ld a, [$D0AD]
- ld l, a
- ld a, [$D0AE]
- ld h, a
- ld a, [$D0AF]
- ld e, a
- ld a, [$D0B0]
- ld d, a
- loc_27EF:
- ld a, [$D0AA]
- and a
- jr z, loc_280B
- push de
- ld a, [de]
- ld b, a
- swap a
- and $F
- call sub_2837
- swap a
- ld c, a
- ld a, b
- and $F
- call sub_2837
- or c
- pop de
- ld [de], a
- loc_280B:
- db $2A ;ldi a, [hl]
- ld b, a
- ld a, [de]
- xor b
- ld [de], a
- inc de
- ld a, [$D0A2]
- inc a
- ld [$D0A2], a
- ld b, a
- ld a, [$D0A4]
- cp b
- jr nz, loc_27EF
- xor a
- ld [$D0A2], a
- ld a, [$D0A1]
- add a, 8
- ld [$D0A1], a
- ld b, a
- ld a, [$D0A3]
- cp b
- jr nz, loc_27EF
- xor a
- ld [$D0A1], a
- ret
- sub_2837:
- ld de, $2867
- add a, e
- ld e, a
- jr nc, loc_283F
- inc d
- loc_283F:
- ld a, [de]
- ret
- sub_2841:
- ld a, [$D0A8]
- bit 0, a
- jr nz, loc_2850
- ld de, $A188
- ld hl, $A310
- jr loc_2856
- loc_2850:
- ld de, $A310
- ld hl, $A188
- loc_2856:
- ld a, l
- ld [$D0AD], a
- ld a, h
- ld [$D0AE], a
- ld a, e
- ld [$D0AF], a
- ld a, d
- ld [$D0B0], a
- ret
- MonsterGfxBitTables2: ;2867
- db 0,8,4,$C,2,$A,6,$E
- db 1,9,5,$D,3,$B,7,$F
- loc_2877:
- call sub_2841
- ld a, [$D0AA]
- push af
- xor a
- ld [$D0AA], a
- ld a, [$D0AF]
- ld l, a
- ld a, [$D0B0]
- ld h, a
- call sub_26D4
- call sub_2841
- pop af
- ld [$D0AA], a
- jp loc_27C7
- sub_2897:
- ld a, l
- ld [$D0AD], a
- ld [$D0AF], a
- ld a, h
- ld [$D0AE], a
- ld [$D0B0], a
- ret
- sub_28A6:
- ld hl, $C100
- call sub_28C4
- ld hl, $C200
- call sub_28C4
- ld a, 1
- ld [$C100], a
- ld [$C20E], a
- ld hl, $C104
- ld [hl], $3C ; '<'
- inc hl
- inc hl
- ld [hl], $40 ; '@'
- ret
- sub_28C4:
- ld bc, $10
- xor a
- jp FillMemory
- sub_28CB:
- ld a, [$CFC7]
- and a
- jr nz, loc_28DC
- ld a, [$D72C]
- bit 1, a
- ret nz
- ld a, $77 ; 'w'
- ld [$FF24], a
- ret
- loc_28DC:
- ld a, [$CFC9]
- and a
- jr z, loc_28E7
- dec a
- ld [$CFC9], a
- ret
- loc_28E7:
- ld a, [$CFC8]
- ld [$CFC9], a
- ld a, [$FF24]
- and a
- jr z, loc_2903
- ld b, a
- and $F
- dec a
- ld c, a
- ld a, b
- and $F0
- swap a
- dec a
- swap a
- or c
- ld [$FF24], a
- ret
- loc_2903:
- ld a, [$CFC7]
- ld b, a
- xor a
- ld [$CFC7], a
- ld a, $FF
- ld [$C0EE], a
- call $23B1
- ld a, [$C0F0]
- ld [$C0EF], a
- ld a, b
- ld [$C0EE], a
- jp $23B1
Add Comment
Please, Sign In to add comment