From cc52f3688c9b23551b1b95f4e1689e81376fdbe4 Mon Sep 17 00:00:00 2001 From: Lukas Krickl Date: Mon, 30 Dec 2024 19:38:55 +0100 Subject: [PATCH] map: wip map copy --- src/map.s | 14 +++++++++++++- src/video.s | 2 +- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/map.s b/src/map.s index 327f75f..c709a9f 100644 --- a/src/map.s +++ b/src/map.s @@ -545,21 +545,33 @@ map_gen_copy_base_room: ; this routine copies a base room ; and fixes the header accordingly - ; copy header + ; copy header + push hl ; save original target ld bc, room_size call memcpy + ; copy tiles + pop hl ; get target back + ; read target room tiles ptr + ; into hl + ld a, [hl+] + ld bc, ROOM_TILES_SIZE call memcpy ; copy flags + ld bc, ROOM_FLAGS_SIZE + call memcpy ; copy actors + ld bc, ACTOR_TABLE_SIZE + call memcpy ; set exits pop bc ; restore default exit value + ret ; base room diff --git a/src/video.s b/src/video.s index ff7954a..4d8e4e3 100644 --- a/src/video.s +++ b/src/video.s @@ -101,7 +101,7 @@ video_init: call map_generate ; initial test map - ld de, base_room_header + ld de, base_room_header call room_load_from ; set up bgp -- 2.30.2