From b89ad278dcac75693a510e438dedf637e95978dd Mon Sep 17 00:00:00 2001 From: Jeremy Rand Date: Thu, 13 May 2021 23:28:53 -0400 Subject: [PATCH] Improve the build to better support building the babel fish translator. Fix the bugs in the filter code for the translator. Based on testing, I think it is working now and matches any file with a name *.md. --- md2teach/Makefile | 15 ++++++++++++++- md2teach/babelfish.mk | 24 ++++++++++++++++++++---- md2teach/babelfish/filter.s | 28 ++++++++++++++++------------ md2teach/babelfish/init.s | 2 ++ md2teach/babelfish/markdown.rez | 8 ++++---- md2teach/make/createDiskImage | 2 +- md2teach/make/tail.mk | 2 -- 7 files changed, 57 insertions(+), 24 deletions(-) diff --git a/md2teach/Makefile b/md2teach/Makefile index ac66a27..6fcb6cb 100644 --- a/md2teach/Makefile +++ b/md2teach/Makefile @@ -3,7 +3,18 @@ # Apple //GS Build Engine for ORCA and Merlin # -all: +include make/head.mk + +DISKIMAGE=$(TARGETDIR)/md2teach.2mg +ARCHIVE=$(TARGETDIR)/md2teach.shk +DESTBOOTIMAGE=$(TARGETDIR)/$(BOOTIMAGE) + +MAMEARGS=apple2gs -skip_gameinfo -speed 3 -mouse -window -resolution 1408x1056 -ramsize 4M -sl7 cffa202 +EMULATOR=mame + +gen: + +build: make -f shell.mk make -f babelfish.mk @@ -13,3 +24,5 @@ clean: execute: make -f shell.mk execute + make/createDiskImage "$(DISKIMAGE)" $(DESTBOOTIMAGE) "$(TARGETDIR)/Markdown" "$(TARGETDIR)/md2teach" "$(TARGETDIR)/outfile.txt" test.md + make/launchEmulator "$(DISKIMAGE)" "$(DESTBOOTIMAGE)" diff --git a/md2teach/babelfish.mk b/md2teach/babelfish.mk index 42c1969..913b512 100644 --- a/md2teach/babelfish.mk +++ b/md2teach/babelfish.mk @@ -9,7 +9,7 @@ include make/head.mk # where to find files, etc. # The name of your system or binary file to build goes here: -PGM=markdown +PGM=notused # Set the target type you would like to build. The options are: # shell - A shell command for ORCA, GNO or other GS shell @@ -175,10 +175,26 @@ gen: # clean your build. genclean: -$(TARGETDIR)/filter.bin: $(OBJDIR)/babelfish/filter.ROOT - cd $(OBJDIR); $(LINK) $(LDFLAGS) babelfish/filter keep="$(abspath $@)" -target: $(TARGETDIR)/filter.bin +FILTERTARGET=$(TARGETDIR)/filter.bin +INITTARGET=$(TARGETDIR)/init.bin +REZFLAGS+= rez='-d TARGETDIR="$(TARGETDIR)"' + +$(OBJDIR)/babelfish/markdown.r: $(FILTERTARGET) $(INITTARGET) + +$(FILTERTARGET): $(OBJDIR)/babelfish/filter.ROOT + cd $(OBJDIR); $(LINK) $(LDFLAGS) babelfish/filter keep="$(abspath $@)" + +$(INITTARGET): $(OBJDIR)/babelfish/init.ROOT + cd $(OBJDIR); $(LINK) $(LDFLAGS) babelfish/init keep="$(abspath $@)" + +$(TARGETDIR)/Markdown: $(OBJDIR)/babelfish/markdown.r + $(MKDIR) $(TARGETDIR) + $(RM) $@ + $(CP) $< $@ + $(CHTYP) -t $(FILETYPE) $(AUXTYPE) $@ + +target: $(TARGETDIR)/Markdown true # Do not change anything else below here... diff --git a/md2teach/babelfish/filter.s b/md2teach/babelfish/filter.s index 409b505..3f946e2 100644 --- a/md2teach/babelfish/filter.s +++ b/md2teach/babelfish/filter.s @@ -37,16 +37,17 @@ offset_fileName gequ 10 filter start -_d equ 1 -ptr equ 5 -_rtlb equ 7 -DirPtr equ 11 -retval equ 15 +_b equ 1 +ptr equ _b+2 +_d equ ptr+4 +_rtlb equ _d+1 +DirPtr equ _rtlb+3 +retval equ DirPtr+4 phb ;even up the stack + pha + pha phd - pha - pha tsc tcd @@ -60,14 +61,17 @@ retval equ 15 lda [