summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDuncan Smith2010-09-10 18:16:29 -0700
committerDuncan Smith2010-09-10 18:16:29 -0700
commit9313585a96c694b74c9df9d2b0afc06016613e4c (patch)
tree22b64f03d697d0814e3c245c9a5c6e243fc449ab
parent9720a70bb6ca148cd7e333049a74cb86792ee79b (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 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;