Have clock/ram drivers print at the bottom of the screen.
Trying this out. Might not stick with it. Also added a PAUSE.SYSTEM that just waits a bit, if you want a delay in your startup sequence to watch the log messages.
This commit is contained in:
parent
1a3aa1e8c6
commit
46aef091df
2
Makefile
2
Makefile
|
@ -1,4 +1,4 @@
|
||||||
targets := ns.clock cricket dclock selectors ram.drv quit
|
targets := ns.clock cricket dclock selectors ram.drv quit pause
|
||||||
|
|
||||||
.PHONY: all $(targets) package
|
.PHONY: all $(targets) package
|
||||||
|
|
||||||
|
|
|
@ -116,8 +116,8 @@ cricket_not_found:
|
||||||
|
|
||||||
not_found:
|
not_found:
|
||||||
;; Show failure message
|
;; Show failure message
|
||||||
jsr zstrout
|
jsr log_message
|
||||||
scrcode "\r\r\r", PRODUCT, " - Not Found."
|
scrcode PRODUCT, " - Not Found."
|
||||||
.byte 0
|
.byte 0
|
||||||
rts
|
rts
|
||||||
|
|
||||||
|
@ -205,8 +205,8 @@ loop: lda driver,y
|
||||||
lda ROMIN2
|
lda ROMIN2
|
||||||
|
|
||||||
;; Display success message
|
;; Display success message
|
||||||
jsr zstrout
|
jsr log_message
|
||||||
scrcode "\r\r\r", PRODUCT, " - Installed "
|
scrcode PRODUCT, " - "
|
||||||
.byte 0
|
.byte 0
|
||||||
|
|
||||||
;; Display the current date
|
;; Display the current date
|
||||||
|
@ -234,7 +234,6 @@ loop: lda driver,y
|
||||||
|
|
||||||
pla ; year
|
pla ; year
|
||||||
jsr cout_number
|
jsr cout_number
|
||||||
jsr CROUT
|
|
||||||
|
|
||||||
rts ; done!
|
rts ; done!
|
||||||
.endproc
|
.endproc
|
||||||
|
|
|
@ -75,8 +75,8 @@ DATA := SLOT4IO+3 ; Slinky data byte
|
||||||
bcc InstallDriver
|
bcc InstallDriver
|
||||||
|
|
||||||
;; Show failure message
|
;; Show failure message
|
||||||
jsr zstrout
|
jsr log_message
|
||||||
scrcode "\r\r\r", PRODUCT, " - Not Found."
|
scrcode PRODUCT, " - Not Found."
|
||||||
.byte 0
|
.byte 0
|
||||||
|
|
||||||
done: rts
|
done: rts
|
||||||
|
@ -125,8 +125,8 @@ loop: lda driver,y
|
||||||
lda ROMIN2
|
lda ROMIN2
|
||||||
|
|
||||||
;; Display success message
|
;; Display success message
|
||||||
jsr zstrout
|
jsr log_message
|
||||||
scrcode "\r\r\r", PRODUCT, " - Installed "
|
scrcode PRODUCT, " - "
|
||||||
.byte 0
|
.byte 0
|
||||||
|
|
||||||
;; Display the current date
|
;; Display the current date
|
||||||
|
@ -154,7 +154,6 @@ loop: lda driver,y
|
||||||
|
|
||||||
pla ; year
|
pla ; year
|
||||||
jsr cout_number
|
jsr cout_number
|
||||||
jsr CROUT
|
|
||||||
|
|
||||||
rts ; done!
|
rts ; done!
|
||||||
.endproc
|
.endproc
|
||||||
|
|
|
@ -66,7 +66,7 @@ load: lda src,y ; self-modified
|
||||||
;; --------------------------------------------------
|
;; --------------------------------------------------
|
||||||
;; Identify the name of this SYS file, which should be present at
|
;; Identify the name of this SYS file, which should be present at
|
||||||
;; $280 with or without a path prefix. Search pathname buffer
|
;; $280 with or without a path prefix. Search pathname buffer
|
||||||
;; backwards for '/', then copy name into |self_name|.
|
;; backwards for '/', then copy name into `self_name`.
|
||||||
|
|
||||||
;; Find '/' (which may not be present, prefix is optional)
|
;; Find '/' (which may not be present, prefix is optional)
|
||||||
ldx PATHNAME
|
ldx PATHNAME
|
||||||
|
@ -80,7 +80,7 @@ load: lda src,y ; self-modified
|
||||||
dex
|
dex
|
||||||
bne :-
|
bne :-
|
||||||
|
|
||||||
;; Copy name into |self_name| buffer
|
;; Copy name into `self_name` buffer
|
||||||
copy_name:
|
copy_name:
|
||||||
cpy #0
|
cpy #0
|
||||||
beq no_name
|
beq no_name
|
||||||
|
@ -135,7 +135,6 @@ self_name: .res 16
|
||||||
jsr INIT
|
jsr INIT
|
||||||
jsr SETVID
|
jsr SETVID
|
||||||
jsr SETKBD
|
jsr SETKBD
|
||||||
jsr HOME
|
|
||||||
|
|
||||||
;; Update System Bit Map
|
;; Update System Bit Map
|
||||||
ldx #BITMAP_SIZE-1
|
ldx #BITMAP_SIZE-1
|
||||||
|
@ -398,6 +397,15 @@ found_self_flag:
|
||||||
;;; Common Routines
|
;;; Common Routines
|
||||||
;;; ============================================================
|
;;; ============================================================
|
||||||
|
|
||||||
|
;;; ------------------------------------------------------------
|
||||||
|
;;; Use this for logging the result of a driver. Uses `zstrout`.
|
||||||
|
|
||||||
|
.proc log_message
|
||||||
|
jsr CROUT
|
||||||
|
jsr CROUT
|
||||||
|
;; fall through
|
||||||
|
.endproc
|
||||||
|
|
||||||
;;; ------------------------------------------------------------
|
;;; ------------------------------------------------------------
|
||||||
;;; Output a high-ascii, null-terminated string.
|
;;; Output a high-ascii, null-terminated string.
|
||||||
;;; String immediately follows the JSR.
|
;;; String immediately follows the JSR.
|
||||||
|
|
|
@ -127,8 +127,8 @@ not_found:
|
||||||
bpl :-
|
bpl :-
|
||||||
|
|
||||||
;; Show failure message
|
;; Show failure message
|
||||||
jsr zstrout
|
jsr log_message
|
||||||
scrcode "\r\r\r", PRODUCT, " - Not Found."
|
scrcode PRODUCT, " - Not Found."
|
||||||
.byte 0
|
.byte 0
|
||||||
|
|
||||||
rts
|
rts
|
||||||
|
@ -181,8 +181,8 @@ loop: lda driver,y
|
||||||
lda ROMIN2
|
lda ROMIN2
|
||||||
|
|
||||||
;; Display success message
|
;; Display success message
|
||||||
jsr zstrout
|
jsr log_message
|
||||||
scrcode "\r\r\r", PRODUCT, " - Installed "
|
scrcode PRODUCT, " - "
|
||||||
.byte 0
|
.byte 0
|
||||||
|
|
||||||
;; Display the current date
|
;; Display the current date
|
||||||
|
@ -210,7 +210,6 @@ loop: lda driver,y
|
||||||
|
|
||||||
pla ; year
|
pla ; year
|
||||||
jsr cout_number
|
jsr cout_number
|
||||||
jsr CROUT
|
|
||||||
|
|
||||||
rts ; done!
|
rts ; done!
|
||||||
.endproc
|
.endproc
|
||||||
|
|
|
@ -26,6 +26,7 @@ add_file "cricket/out/test.BIN" "test#062000" "/$VOLNAME
|
||||||
add_file "dclock/out/dclock.system.SYS" "dclock.system#FF0000" "/$VOLNAME"
|
add_file "dclock/out/dclock.system.SYS" "dclock.system#FF0000" "/$VOLNAME"
|
||||||
add_file "ns.clock/out/ns.clock.system.SYS" "ns.clock.system#FF0000" "/$VOLNAME"
|
add_file "ns.clock/out/ns.clock.system.SYS" "ns.clock.system#FF0000" "/$VOLNAME"
|
||||||
add_file "quit/out/quit.system.SYS" "quit.system#FF0000" "/$VOLNAME"
|
add_file "quit/out/quit.system.SYS" "quit.system#FF0000" "/$VOLNAME"
|
||||||
|
add_file "pause/out/pause.system.SYS" "pause.system#FF0000" "/$VOLNAME"
|
||||||
add_file "ram.drv/out/ram.drv.system.SYS" "ram.drv.system#FF0000" "/$VOLNAME"
|
add_file "ram.drv/out/ram.drv.system.SYS" "ram.drv.system#FF0000" "/$VOLNAME"
|
||||||
add_file "selectors/out/bbb.system.SYS" "bbb.system#FF0000" "/$VOLNAME"
|
add_file "selectors/out/bbb.system.SYS" "bbb.system#FF0000" "/$VOLNAME"
|
||||||
add_file "selectors/out/buhbye.system.SYS" "buhbye.system#FF0000" "/$VOLNAME"
|
add_file "selectors/out/buhbye.system.SYS" "buhbye.system#FF0000" "/$VOLNAME"
|
||||||
|
|
|
@ -0,0 +1,38 @@
|
||||||
|
|
||||||
|
CAFLAGS = --target apple2enh --list-bytes 0
|
||||||
|
LDFLAGS = --config apple2-asm.cfg
|
||||||
|
|
||||||
|
OUTDIR = out
|
||||||
|
|
||||||
|
HEADERS = $(wildcard *.inc) $(wildcard ../inc/*.inc)
|
||||||
|
|
||||||
|
TARGETS = \
|
||||||
|
$(OUTDIR)/pause.system.SYS
|
||||||
|
|
||||||
|
# For timestamps
|
||||||
|
MM = $(shell date "+%-m")
|
||||||
|
DD = $(shell date "+%-d")
|
||||||
|
YY = $(shell date "+%-y")
|
||||||
|
DEFINES = -D DD=$(DD) -D MM=$(MM) -D YY=$(YY)
|
||||||
|
|
||||||
|
XATTR := $(shell command -v xattr 2> /dev/null)
|
||||||
|
|
||||||
|
.PHONY: clean all
|
||||||
|
all: $(OUTDIR) $(TARGETS)
|
||||||
|
|
||||||
|
$(OUTDIR):
|
||||||
|
mkdir -p $(OUTDIR)
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f $(OUTDIR)/*.o
|
||||||
|
rm -f $(OUTDIR)/*.list
|
||||||
|
rm -f $(TARGETS)
|
||||||
|
|
||||||
|
$(OUTDIR)/%.o: %.s $(HEADERS)
|
||||||
|
ca65 $(CAFLAGS) $(DEFINES) --listing $(basename $@).list -o $@ $<
|
||||||
|
|
||||||
|
$(OUTDIR)/%.SYS: $(OUTDIR)/%.o
|
||||||
|
ld65 $(LDFLAGS) -o $@ $<
|
||||||
|
ifdef XATTR
|
||||||
|
xattr -wx prodos.AuxType '00 20' $@
|
||||||
|
endif
|
|
@ -0,0 +1,30 @@
|
||||||
|
|
||||||
|
.setcpu "6502"
|
||||||
|
.linecont +
|
||||||
|
.feature string_escapes
|
||||||
|
|
||||||
|
.include "apple2.inc"
|
||||||
|
.include "apple2.mac"
|
||||||
|
|
||||||
|
.include "../inc/apple2.inc"
|
||||||
|
.include "../inc/macros.inc"
|
||||||
|
.include "../inc/prodos.inc"
|
||||||
|
.include "../inc/ascii.inc"
|
||||||
|
|
||||||
|
;;; ************************************************************
|
||||||
|
.include "../inc/driver_preamble.inc"
|
||||||
|
;;; ************************************************************
|
||||||
|
|
||||||
|
|
||||||
|
.proc maybe_install_driver
|
||||||
|
ldx #4
|
||||||
|
: lda #$FF
|
||||||
|
jsr $FCA8 ; WAIT
|
||||||
|
dex
|
||||||
|
bne :-
|
||||||
|
rts
|
||||||
|
.endproc
|
||||||
|
|
||||||
|
;;; ************************************************************
|
||||||
|
.include "../inc/driver_postamble.inc"
|
||||||
|
;;; ************************************************************
|
|
@ -409,9 +409,8 @@ finish: bit ROMIN2
|
||||||
install_success:
|
install_success:
|
||||||
sta ALTZPOFF
|
sta ALTZPOFF
|
||||||
|
|
||||||
jsr HOME
|
jsr log_message
|
||||||
jsr zstrout
|
scrcode PRODUCT, " - "
|
||||||
scrcode "\r\r\r", PRODUCT, " - "
|
|
||||||
.byte 0
|
.byte 0
|
||||||
|
|
||||||
;; Initialize Applesoft zero page locations required by LINPRNT
|
;; Initialize Applesoft zero page locations required by LINPRNT
|
||||||
|
@ -433,9 +432,8 @@ install_success:
|
||||||
install_failure:
|
install_failure:
|
||||||
sta ALTZPOFF
|
sta ALTZPOFF
|
||||||
|
|
||||||
jsr HOME
|
jsr log_message
|
||||||
jsr zstrout
|
scrcode PRODUCT, " - Not Found"
|
||||||
scrcode "\r\r\r", PRODUCT, " - Not Installed"
|
|
||||||
.byte 0
|
.byte 0
|
||||||
|
|
||||||
rts
|
rts
|
||||||
|
|
Loading…
Reference in New Issue