summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile11
-rw-r--r--loader.c4
2 files changed, 13 insertions, 2 deletions
diff --git a/Makefile b/Makefile
index f3bb30f..3771499 100644
--- a/Makefile
+++ b/Makefile
@@ -1,12 +1,21 @@
ASM_FILES=alu.asm flags.asm opcodes.asm ports.asm interrupts.asm main.asm
ASM=main.asm
C_FILES=loader.c bankswap.c video.c misc.c debug.c
+MADE_FILES=testbenches/zexdoc.h
TIGCCFLAGS=-Wall
CFLAGS=-Wall -ltifiles
-z680.89z: $(ASM_FILES) $(C_FILES)
+z680.89z: $(ASM_FILES) $(C_FILES) $(MADE_FILES)
tigcc $(TIGCCFLAGS) $(ASM) $(C_FILES) -o z680.89z
packager: packager.c
gcc $(CFLAGS) packager.c -o packager
+
+testbenches/zexdoc.h: testbenches/zexdoc.bin
+ echo 'char zexdoc[] = {' > testbenches/zexdoc.h
+ hexdump -v -e '12/1 "0x%02x, "' -e '"\n"' testbenches/zexdoc.bin | sed -e 's/0x *,//g' >> testbenches/zexdoc.h
+ echo '};' >> testbenches/zexdoc.h
+
+testbenches/zexdoc.bin: testbenches/zexdoc.z80
+ spasm testbenches/zexdoc.z80
diff --git a/loader.c b/loader.c
index fffd7fb..7d8972e 100644
--- a/loader.c
+++ b/loader.c
@@ -19,6 +19,8 @@ char writestr[16] = { 0x3E, 0x41, // LD A,'A'
0xC3, 0x40, 0x00 // JP 4000h
};
+#include "testbenches/zexdoc.h"
+
void init_load(void);
void unload(void);
void *deref_page(int);
@@ -64,7 +66,7 @@ void init_load(void)
mem_page_0 = pages[0];
mem_page_loc_0 = 0;
// mem_page_1 = pages[0x1f];
- mem_page_1 = writestr;
+ mem_page_1 = zexdoc;
mem_page_loc_1 = 0x1f;
mem_page_2 = pages[0];
mem_page_loc_2 = 0;