diff options
Diffstat (limited to 'engine/overworld/load_map_part.asm')
-rw-r--r-- | engine/overworld/load_map_part.asm | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/engine/overworld/load_map_part.asm b/engine/overworld/load_map_part.asm new file mode 100644 index 000000000..2184ebf7e --- /dev/null +++ b/engine/overworld/load_map_part.asm @@ -0,0 +1,36 @@ +_LoadMapPart:: ; 4d15b + ld hl, wMisc + ld a, [wMetatileStandingY] + and a + jr z, .top_row + ld bc, WMISC_WIDTH * 2 + add hl, bc + +.top_row + ld a, [wMetatileStandingX] + and a + jr z, .left_column + inc hl + inc hl + +.left_column + decoord 0, 0 + ld b, SCREEN_HEIGHT +.loop + ld c, SCREEN_WIDTH +.loop2 + ld a, [hli] + ld [de], a + inc de + dec c + jr nz, .loop2 + ld a, l + add 4 + ld l, a + jr nc, .carry + inc h + +.carry + dec b + jr nz, .loop + ret |