added PRIMM implementation for easier debugging

This commit is contained in:
FeralChild64 committed 2020-11-30 17:53:25 +01:00
1 parent 17ecb018af
commit 94d0d2176f
6 files changed
+59 -2

No files matched your search

+11
View File
@@ -0,0 +1,11 @@
;; #LAYOUT# M65 KERNAL_0 #TAKE
;; #LAYOUT# * * #IGNORE
; 'Print immediate' - useful debug routine, present on many CBM machines
; see https://www.pagetable.com/?p=926
JPRIMM:
jmp PRIMM
+31
View File
@@ -0,0 +1,31 @@
;; #LAYOUT# M65 KERNAL_0 #TAKE
;; #LAYOUT# * * #IGNORE
; 'Print immediate', original implementation by Mike Barry, adapted to 65CE02
; see http://www.6502.org/source/io/primm.htm
PRIMM:
pla ; get low part of (string address-1)
sta PTR1
pla ; get high part of (string address-1)
sta PTR2
+bra @2
@1:
jsr JCHROUT ; output a string char
@2:
inc PTR1 ; advance the string pointer
bne @3
inc PTR2
@3:
ldy #$00
lda (PTR1), y ; get string char
bne @1 ; output and continue if not NUL
lda PTR2
pha
lda PTR1
pha
rts