Squashed commit of the following:

commit b29f27ab8d852ff575840060b9af7b62c1b69f68
Author: hkz <tabaglio@posteo.net>
Date:   Tue Oct 7 09:01:06 2025 +0200

    Removed unused loading_screen.c, Updated CHANGELOG, updated loading
    screen

commit 2855ba5209
Author: hkz <tabaglio@posteo.net>
Date:   Thu Sep 11 15:42:46 2025 +0200

    Restore correct offsets for disk writing

commit e1216fa616
Author: hkz <tabaglio@posteo.net>
Date:   Sat Sep 6 10:30:43 2025 +0200

    Update the version number

commit 8a4559d4f9
Author: hkz <tabaglio@posteo.net>
Date:   Sat Sep 6 09:58:24 2025 +0200

    implement a demo mode

commit 22790bdc44
Author: hkz <tabaglio@posteo.net>
Date:   Sat Sep 6 08:31:11 2025 +0200

    Initial creation of demo module
This commit is contained in:
hkz 2025-10-07 09:02:18 +02:00
commit c1060fb449
12 changed files with 261 additions and 243 deletions

View file

@ -11,6 +11,7 @@ MASTER_PRG=master
INTRO_PRG=intro
DLOG_PRG=dlog
GAME_PRG=game
DEMO_PRG=demo
# Libraries
LIBS=clib-6502.a
@ -27,11 +28,15 @@ DLOG_C_SRCS = dlog_main.c input.c utility.c game_graphics.c line_data.c
GAME_ASM_SRCS = tk2k_startup_module.s preserve_zero_pages.s input_asm.s sound.s
GAME_C_SRCS = game_main.c input.c utility.c game_graphics.c line_data.c game_logic.c arrows_pic.c tiles.c graph_misc_data.c
DEMO_ASM_SRCS = tk2k_startup_module.s preserve_zero_pages.s input_asm.s sound.s
DEMO_C_SRCS = demo_main.c input.c utility.c game_graphics_demo.c line_data.c game_logic.c arrows_pic.c tiles.c graph_misc_data.c
# Object files
MASTER_OBJS = $(MASTER_ASM_SRCS:%.s=%.o) $(MASTER_C_SRCS:%.c=%.o)
INTRO_OBJS = $(INTRO_ASM_SRCS:%.s=%.o) $(INTRO_C_SRCS:%.c=%.o)
DLOG_OBJS = $(DLOG_ASM_SRCS:%.s=%.o) $(DLOG_C_SRCS:%.c=%.o)
GAME_OBJS = $(GAME_ASM_SRCS:%.s=%.o) $(GAME_C_SRCS:%.c=%.o)
DEMO_OBJS = $(DEMO_ASM_SRCS:%.s=%.o) $(DEMO_C_SRCS:%.c=%.o)
all: $(SW_NAME).woz
@ -53,6 +58,9 @@ $(DLOG_PRG).hex: $(DLOG_OBJS)
$(GAME_PRG).hex: $(GAME_OBJS)
(cd obj ; ln6502 -g ../linker-files/module.scm $^ -o ../out/$@ $(LIBS) -l --cross-reference --cstartup=tk2k --no-automatic-placement-rules --output-format intel-hex --rom-code)
$(DEMO_PRG).hex: $(DEMO_OBJS)
(cd obj ; ln6502 -g ../linker-files/module.scm $^ -o ../out/$@ $(LIBS) -l --cross-reference --cstartup=tk2k --no-automatic-placement-rules --output-format intel-hex --rom-code)
$(MASTER_PRG).bin: $(MASTER_PRG).hex
(cd out ; objcopy -I ihex -O binary $(MASTER_PRG).hex $(MASTER_PRG).bin)
@ -64,13 +72,17 @@ $(DLOG_PRG).bin: $(DLOG_PRG).hex
$(GAME_PRG).bin: $(GAME_PRG).hex
(cd out ; objcopy -I ihex -O binary $(GAME_PRG).hex $(GAME_PRG).bin)
$(SW_NAME).dsk: $(MASTER_PRG).bin $(INTRO_PRG).bin $(DLOG_PRG).bin $(GAME_PRG).bin
$(DEMO_PRG).bin: $(DEMO_PRG).hex
(cd out ; objcopy -I ihex -O binary $(DEMO_PRG).hex $(DEMO_PRG).bin)
$(SW_NAME).dsk: $(MASTER_PRG).bin $(INTRO_PRG).bin $(DLOG_PRG).bin $(GAME_PRG).bin $(DEMO_PRG).bin
(cd out ; cp ../dsk/TK2048_AUTO_BRUN.dsk ./$(SW_NAME).dsk; \
cat $(MASTER_PRG).bin | $(JAVA) -jar $(ACMD) -p $(SW_NAME).dsk HELLO B 0x800; \
cat $(INTRO_PRG).bin | $(JAVA) -jar $(ACMD) -p $(SW_NAME).dsk INTRO b; \
cat $(DLOG_PRG).bin | $(JAVA) -jar $(ACMD) -p $(SW_NAME).dsk DLOG b; \
cat $(GAME_PRG).bin | $(JAVA) -jar $(ACMD) -p $(SW_NAME).dsk GAME b; \
cat $(DEMO_PRG).bin | $(JAVA) -jar $(ACMD) -p $(SW_NAME).dsk DEMO b; \
cat ../data/LOADS.bin | $(JAVA) -jar $(ACMD) -p $(SW_NAME).dsk LOADS b; \
cat ../data/STATE.bin | $(JAVA) -jar $(ACMD) -p $(SW_NAME).dsk STATE b;)