diff --git a/testcode/lib/apple2/Makefile b/testcode/lib/apple2/Makefile index 87dadcbe7..9d551aa62 100644 --- a/testcode/lib/apple2/Makefile +++ b/testcode/lib/apple2/Makefile @@ -1,12 +1,37 @@ # For this one see https://applecommander.github.io/ AC ?= ac.jar -CL = cl65 -CLFLAGS = -t apple2 -C apple2-hgr.cfg -Oirs +CL ?= cl65 -hgrtest.dsk: hgrtest +all: hgr.dsk dhgr.dsk + +hgr.dsk: hgrshow hgrtest cp prodos.dsk $@ - java -jar $(AC) -cc65 $@ hgrtest bin +#include +#include +#include +#include +#include +#include + +void main (void) +{ + unsigned old; + DIR *dir; + struct dirent *ent; + + old = videomode (VIDEOMODE_80x24); + tgi_install (a2e_hi_tgi); + tgi_init (); + POKE (0xC05E, 0); + + dir = opendir ("."); + while (ent = readdir (dir)) { + char *ext; + int hgr; + + ext = strrchr (ent->d_name, '.'); + if (!ext || strcasecmp (ext, ".dhgr")) + continue; + + hgr = open(ent->d_name, O_RDONLY); + POKE (0xC055, 0); + read(hgr, (void*)0x2000, 0x2000); + POKE (0xC054, 0); + read(hgr, (void*)0x2000, 0x2000); + close(hgr); + + if (cgetc () == '\r') + break; + } + closedir (dir); + + tgi_uninstall (); + videomode (old); +} diff --git a/testcode/lib/apple2/gatsby.dhgr b/testcode/lib/apple2/gatsby.dhgr new file mode 100644 index 000000000..dc3750e66 Binary files /dev/null and b/testcode/lib/apple2/gatsby.dhgr differ diff --git a/testcode/lib/apple2/girl.dhgr b/testcode/lib/apple2/girl.dhgr new file mode 100644 index 000000000..af332edbe Binary files /dev/null and b/testcode/lib/apple2/girl.dhgr differ diff --git a/testcode/lib/apple2/hgrshow.c b/testcode/lib/apple2/hgrshow.c new file mode 100644 index 000000000..5d839b5fa --- /dev/null +++ b/testcode/lib/apple2/hgrshow.c @@ -0,0 +1,37 @@ +// cl65 -t apple2 --start-addr 0x4000 hgrshow.c + +#include +#include +#include +#include +#include +#include + +void main (void) +{ + DIR *dir; + struct dirent *ent; + + tgi_install (a2_hi_tgi); + tgi_init (); + + dir = opendir ("."); + while (ent = readdir (dir)) { + char *ext; + int hgr; + + ext = strrchr (ent->d_name, '.'); + if (!ext || strcasecmp (ext, ".hgr")) + continue; + + hgr = open(ent->d_name, O_RDONLY); + read(hgr, (void*)0x2000, 0x2000); + close(hgr); + + if (cgetc () == '\r') + break; + } + closedir (dir); + + tgi_uninstall (); +} diff --git a/testcode/lib/apple2/macrometer.hgr b/testcode/lib/apple2/macrometer.hgr new file mode 100644 index 000000000..925df6e41 Binary files /dev/null and b/testcode/lib/apple2/macrometer.hgr differ diff --git a/testcode/lib/apple2/mariner.hgr b/testcode/lib/apple2/mariner.hgr new file mode 100644 index 000000000..2024a7596 Binary files /dev/null and b/testcode/lib/apple2/mariner.hgr differ diff --git a/testcode/lib/apple2/monarch.dhgr b/testcode/lib/apple2/monarch.dhgr new file mode 100644 index 000000000..8812c4b2d Binary files /dev/null and b/testcode/lib/apple2/monarch.dhgr differ diff --git a/testcode/lib/apple2/rose.hgr b/testcode/lib/apple2/rose.hgr new file mode 100644 index 000000000..d18fd83f0 Binary files /dev/null and b/testcode/lib/apple2/rose.hgr differ diff --git a/testcode/lib/apple2/superman.dhgr b/testcode/lib/apple2/superman.dhgr new file mode 100644 index 000000000..4886227c2 Binary files /dev/null and b/testcode/lib/apple2/superman.dhgr differ diff --git a/testcode/lib/apple2/venice.dhgr b/testcode/lib/apple2/venice.dhgr new file mode 100644 index 000000000..9d3cb4c85 Binary files /dev/null and b/testcode/lib/apple2/venice.dhgr differ diff --git a/testcode/lib/apple2/werner.pic b/testcode/lib/apple2/werner.hgr similarity index 100% rename from testcode/lib/apple2/werner.pic rename to testcode/lib/apple2/werner.hgr diff --git a/testcode/lib/apple2/werner.s b/testcode/lib/apple2/werner.s index 6456ade13..f9200f694 100644 --- a/testcode/lib/apple2/werner.s +++ b/testcode/lib/apple2/werner.s @@ -1,2 +1,2 @@ .segment "HGR" -.incbin "werner.pic" +.incbin "werner.hgr" diff --git a/testcode/lib/apple2/winston.hgr b/testcode/lib/apple2/winston.hgr new file mode 100644 index 000000000..074ff178d Binary files /dev/null and b/testcode/lib/apple2/winston.hgr differ