fixed another memory-related problem in monitor

This commit is contained in:
FeralChild64 authored and FeralChild64 committed 2021-01-26 00:03:07 +01:00
1 parent 13d2abd709
commit fd660db37e
4 files changed
+34 -18

No files matched your search

@@ -66,3 +66,13 @@ proxy_M1_TALK:
jsr TALK
bra proxy_M1_end
!addr Long__TMP = $3C ; has to be the same as Long_TMP in monitor
proxy_M1_memread:
jsr map_NORMAL
lda [Long__TMP], z
bra proxy_M1_end
+1 -1
View File
@@ -63,7 +63,7 @@
; $34-$3B - free space, unused for now
!addr Long_TMP = $3C ; temporary pointer, for fetching/storing memory content
!addr Long_TMP = $3C ; temporary pointer, for fetching/storing memory content; has to be the same as Long__TMP in Kernal
!addr Disk_Msg = $40 ; 40 bytes, disk status as text message ; XXX rework code to make it not needed
!addr Mon_Data = $68 ; 40 bytes, buffer for hunt and filename
+15 -14
View File
@@ -4,22 +4,23 @@
; Definitions for calling MEGA65 segment KERNAL_0 routines from MON_1
;
;; #ALIAS# SETMSG = KERNAL_0.SETMSG
;; #ALIAS# STOP = KERNAL_0.STOP
;; #ALIAS# SCREEN = KERNAL_0.SCREEN
;; #ALIAS# SETMSG = KERNAL_0.SETMSG
;; #ALIAS# STOP = KERNAL_0.STOP
;; #ALIAS# SCREEN = KERNAL_0.SCREEN
;; #ALIAS# monitor_exit = KERNAL_0.m65_shadow_BZP
;; #ALIAS# monitor_exit = KERNAL_0.m65_shadow_BZP
;; #ALIAS# monitor_memread_helper = KERNAL_0.proxy_M1_memread
;; #ALIAS# CHRIN = KERNAL_0.proxy_M1_CHRIN
;; #ALIAS# CHROUT = KERNAL_0.proxy_M1_CHROUT
;; #ALIAS# SECOND = KERNAL_0.proxy_M1_SECOND
;; #ALIAS# TKSA = KERNAL_0.proxy_M1_TKSA
;; #ALIAS# ACPTR = KERNAL_0.proxy_M1_ACPTR
;; #ALIAS# CIOUT = KERNAL_0.proxy_M1_CIOUT
;; #ALIAS# UNTLK = KERNAL_0.proxy_M1_UNTLK
;; #ALIAS# UNLSN = KERNAL_0.proxy_M1_UNLSN
;; #ALIAS# LISTEN = KERNAL_0.proxy_M1_LISTEN
;; #ALIAS# TALK = KERNAL_0.proxy_M1_TALK
;; #ALIAS# CHRIN = KERNAL_0.proxy_M1_CHRIN
;; #ALIAS# CHROUT = KERNAL_0.proxy_M1_CHROUT
;; #ALIAS# SECOND = KERNAL_0.proxy_M1_SECOND
;; #ALIAS# TKSA = KERNAL_0.proxy_M1_TKSA
;; #ALIAS# ACPTR = KERNAL_0.proxy_M1_ACPTR
;; #ALIAS# CIOUT = KERNAL_0.proxy_M1_CIOUT
;; #ALIAS# UNTLK = KERNAL_0.proxy_M1_UNTLK
;; #ALIAS# UNLSN = KERNAL_0.proxy_M1_UNLSN
;; #ALIAS# LISTEN = KERNAL_0.proxy_M1_LISTEN
;; #ALIAS# TALK = KERNAL_0.proxy_M1_TALK
; 'Print immediate', original implementation by Mike Barry, adapted to 65CE02, modified to preserve .Y
+8 -3
View File
@@ -37,7 +37,7 @@ Get_From_Memory:
sta Long_TMP+3
lda Long_TMP+1
bne @read ; branch if no need to handle shadow memory (not zero page)
bne @read_64k ; branch if no need to handle shadow memory (not zero page)
lda Long_TMP+0
dec
dec
@@ -75,11 +75,16 @@ Get_From_Memory:
lda #MEMCONF_SHADOW_BZP_3
sta Long_TMP+3
@read_flat: ; XXX read via helper in KERNAL_0 segment
+nop
@read_flat:
jsr monitor_memread_helper
bra @end
@read:
lda (Long_TMP),Z
@end:
plz
ply
plx