Make it build with Merlin32

This commit is contained in:
Bill Chatfield 2018-08-04 03:02:16 -04:00
parent faa318ab4f
commit 9094ecf0ef
4 changed files with 264 additions and 228 deletions

2
.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
*.dsk
*.swp

BIN
AppleCommander-ac-1.4.0.jar Normal file

Binary file not shown.

34
Makefile Normal file
View File

@ -0,0 +1,34 @@
# Compiles with https://www.brutaldeluxe.fr/products/crossdevtools/merlin/
#
ifeq ($(OS),Windows_NT)
MERLIN_DIR=C:/opt/Merlin32_v1.0
MERLIN_LIB=$(MERLIN_DIR)/Library
MERLIN=$(MERLIN_DIR)/Windows/Merlin32
RM=del /s
else
MERLIN_DIR=$(HOME)/opt/Merlin32_v1.0
MERLIN_LIB=$(MERLIN_DIR)/Library
MERLIN=$(MERLIN_DIR)/Linux64/Merlin32
RM=rm -f
endif
AC=java -jar AppleCommander-ac-1.4.0.jar
SRC=delhndlr.s
PGM=DELHNDLR
VOL=$(PGM)
DSK=$(PGM).dsk
$(DSK): $(PGM)
$(AC) -pro140 $(DSK) $(VOL)
$(AC) -p $(DSK) $(PGM) SYS < $(PGM)
$(PGM): $(SRC)
$(MERLIN) $(MERLIN_LIB) $(SRC)
@# Merlin fails to provide a non-0 exit code on failure so
@# it needs to be simulated by checking for the error_output.txt
@# file.
@test -e $(PGM)
clean:
$(RM) $(DSK) $(PGM) error_output.txt _FileInformation.txt

View File

@ -8,7 +8,7 @@
********************************
ORG $801
DSK /HD1/SRC/DELHNDLR
DSK DELHNDLR
CH EQU $24 ;HORIZ CHAR POS (40-COL)
BASL EQU $28 ;BASE ADDR FOR CURR VIDEO LINE
@ -79,7 +79,7 @@ PUTS MAC
JSR STROUT ;CALL APPLESOFT'S STRING PRINT
PLA ;RESTORE Y
TAY
EOM
<<<
********************************
* *
@ -113,7 +113,7 @@ CONTINUE TAY ;MOVE CURSOR POSITION TO Y
CLI ;ENABLE INTERRUPTS
PLA ;PULL Y VALUE FROM STACK
TAY ;RESTORE Y VALUE
EOM
<<<
********************************
* *