summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAstrid Smith2010-09-10 18:16:29 -0700
committerAstrid Smith2010-09-10 18:16:29 -0700
commit522b7ce4d83ef08fadc9fbc4b700a2ef6bbd9c0e (patch)
treeb0a060b2779b63f0798d69dc251a990b465bec74
parent548316a52d8649556ebbc8b3a7835ac7ae4aa7c0 (diff)
Trying to get the zexdoc testbench to run.
Now, at least, it's integrated into the build system and will be automatically included in built executables.
-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 3ee1581..089c6b3 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;