You've already forked pokecrystal-board
mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2025-09-08 08:13:02 -07:00
Move events/ to engine/events/
This commit is contained in:
111
engine/events/print_unown_2.asm
Normal file
111
engine/events/print_unown_2.asm
Normal file
@@ -0,0 +1,111 @@
|
||||
RotateUnownFrontpic: ; e0000
|
||||
; something to do with Unown printer
|
||||
push de
|
||||
xor a
|
||||
call GetSRAMBank
|
||||
ld hl, sScratch
|
||||
ld bc, 0
|
||||
.loop
|
||||
push bc
|
||||
push hl
|
||||
push bc
|
||||
ld de, wd002
|
||||
call .Copy
|
||||
call .Rotate
|
||||
ld hl, UnownPrinter_OverworldMapRectangle
|
||||
pop bc
|
||||
add hl, bc
|
||||
add hl, bc
|
||||
ld a, [hli]
|
||||
ld e, a
|
||||
ld d, [hl]
|
||||
ld hl, wd012
|
||||
call .Copy
|
||||
pop hl
|
||||
ld bc, $10
|
||||
add hl, bc
|
||||
pop bc
|
||||
inc c
|
||||
ld a, c
|
||||
cp 7 * 7
|
||||
jr c, .loop
|
||||
|
||||
ld hl, OverworldMap
|
||||
ld de, sScratch
|
||||
ld bc, 7 * 7 tiles
|
||||
call CopyBytes
|
||||
pop hl
|
||||
ld de, sScratch
|
||||
ld c, 7 * 7
|
||||
ld a, [hROMBank]
|
||||
ld b, a
|
||||
call Get2bpp
|
||||
call CloseSRAM
|
||||
ret
|
||||
|
||||
.Copy: ; e004e
|
||||
ld c, $10
|
||||
.loop_copy
|
||||
ld a, [hli]
|
||||
ld [de], a
|
||||
inc de
|
||||
dec c
|
||||
jr nz, .loop_copy
|
||||
ret
|
||||
|
||||
.Rotate: ; e0057
|
||||
ld hl, wd012
|
||||
ld e, %10000000
|
||||
ld d, 8
|
||||
.loop_decompress
|
||||
push hl
|
||||
ld hl, wd002
|
||||
call .CountSetBit
|
||||
pop hl
|
||||
ld a, b
|
||||
ld [hli], a
|
||||
push hl
|
||||
ld hl, wd003
|
||||
call .CountSetBit
|
||||
pop hl
|
||||
ld a, b
|
||||
ld [hli], a
|
||||
srl e
|
||||
dec d
|
||||
jr nz, .loop_decompress
|
||||
ret
|
||||
|
||||
.CountSetBit: ; e0078
|
||||
ld b, 0
|
||||
ld c, 8
|
||||
.loop_count
|
||||
ld a, [hli]
|
||||
and e
|
||||
jr z, .clear
|
||||
scf
|
||||
jr .apply
|
||||
|
||||
.clear
|
||||
and a
|
||||
|
||||
.apply
|
||||
rr b
|
||||
inc hl
|
||||
dec c
|
||||
jr nz, .loop_count
|
||||
ret
|
||||
|
||||
overworldmaprect: MACRO
|
||||
y = 0
|
||||
rept \1
|
||||
x = \1 * (\2 +- 1) + y
|
||||
rept \2
|
||||
dw OverworldMap tile x
|
||||
x = x +- \2
|
||||
endr
|
||||
y = y + 1
|
||||
endr
|
||||
endm
|
||||
|
||||
UnownPrinter_OverworldMapRectangle: ; e008b
|
||||
overworldmaprect 7, 7
|
||||
Reference in New Issue
Block a user