more work on register setting

This commit is contained in:
FeralChild64 committed 2021-01-17 11:54:03 +01:00
1 parent 558e9f0bf1
commit 153e18679d
3 files changed
+60 -20

No files matched your search

+8 -8
View File
@@ -13,14 +13,14 @@
!addr Addr_Mode = 2 ; $00 = 64K address, $80 = M65 flat address !addr Addr_Mode = 2 ; $00 = 64K address, $80 = M65 flat address
!addr PCH = 3 !addr PCH = 3
!addr PCL = 4 !addr PCL = 4
!addr SR = 5 !addr AC = 5
!addr AC = 6 !addr XR = 6
!addr XR = 7 !addr YR = 7
!addr YR = 8 !addr ZR = 8
!addr ZR = 9 !addr BP = 9
!addr BP = 10 !addr SPH = 10
!addr SPH = 11 !addr SPL = 11
!addr SPL = 12 !addr SR = 12
; ******************* ; *******************
; * Other variables * ; * Other variables *
+11 -9
View File
@@ -63,13 +63,13 @@ Mon_Register:
LDA PCH LDA PCH
JSR Print_Hex JSR Print_Hex
; print PCL,SR,PCL,A,X,Y,Z,BP ; print PCL,A,X,Y,Z,BP
LDY #0 LDY #0
@loopb LDA PCL,Y @loopb LDA PCL,Y
JSR Print_Hex_Blank JSR Print_Hex_Blank
INY INY
CPY #7 CPY #6
BCC @loopb BCC @loopb
; print 16 bit stack pointer ; print 16 bit stack pointer
@@ -126,6 +126,8 @@ Main_A:
Mon_Switch: Mon_Switch:
; ********* ; *********
CMP #'?'
+beq Mon_Help
LDX #24 LDX #24
@loop CMP Command_Char,X @loop CMP Command_Char,X
BEQ Mon_Select BEQ Mon_Select
@@ -151,7 +153,7 @@ Mon_Select:
; ********* ; *********
STA VERCKK STA VERCKK
CPX #22 CPX #21
LBCS Load_Save LBCS Load_Save
TXA TXA
ASL ASL
@@ -163,14 +165,14 @@ Print_Commands:
; ************* ; *************
JSR PRIMM JSR PRIMM
!pet KEY_RETURN," ",KEY_RVS_ON," commands: " !pet KEY_RETURN,KEY_RVS_ON," commands: "
; *********** ; ***********
Command_Char: Command_Char:
; *********** ; ***********
; 0123456789abcdef ; 0123456789abcdef
!pet "abcdfghjmrtx@.>;?" !pet "abcdfghjmrtx@.>;"
; ********** ; **********
Cons_Prefix: Cons_Prefix:
@@ -182,7 +184,8 @@ Cons_Prefix:
Load_Save_Verify: Load_Save_Verify:
; *************** ; ***************
!pet "lsv ",KEY_RETURN,0 !pet "lsv ",KEY_RETURN
!pet KEY_RVS_ON," for help: type ? and press return ",KEY_RETURN,0
RTS RTS
; ********* ; *********
@@ -204,8 +207,7 @@ Jump_Table:
!word Mon_DOS ; @ !word Mon_DOS ; @
!word Mon_Assemble ; . XXX to be debugged/adapted !word Mon_Assemble ; . XXX to be debugged/adapted
!word Mon_Set_Memory ; > !word Mon_Set_Memory ; >
!word Mon_Set_Register ; ; XXX to be debugged/adapted !word Mon_Set_Register ; ; XXX to be bugfixed
!word Mon_Help ; ?
!word Converter ; $ !word Converter ; $
!word Converter ; + !word Converter ; +
!word Converter ; & !word Converter ; &
@@ -2150,7 +2152,7 @@ Reg_Text:
; ******* ; *******
JSR PRIMM JSR PRIMM
!pet KEY_RETURN, " pc sr ac xr yr zr bp sp nvebdizc", KEY_RETURN, "; ", KEY_ESC, 'q', 0 !pet KEY_RETURN, " pc ac xr yr zr bp sp nvebdizc", KEY_RETURN, "; ", KEY_ESC, 'q', 0
RTS RTS
; ******* ; *******
+41 -3
View File
@@ -24,10 +24,10 @@ Mon_Set_Register:
jsr Syntax_Byte_AC jsr Syntax_Byte_AC
lda Long_AC+0 lda Long_AC+0
sta SR,Y sta AC,Y
iny iny
cpy #$06 cpy #$05
bne @lpreg bne @lpreg
; SP - 16 bit ; SP - 16 bit
@@ -41,9 +41,47 @@ Mon_Set_Register:
; Flags ; Flags
jsr Get_Glyph
beq @exit
dec Buf_Index
lda #%01111111 ; prepare helper values for bit set/clear
sta Long_TMP+0
lda #%10000000
sta Long_TMP+1
; XXX @lpflag:
lda Get_Char
beq @exit
cmp #'-'
beq @bit_clr
cmp #'1'
+bne Mon_Error
@bit_set:
lda SR
ora Long_TMP+1
bra @next
@bit_clr:
lda SR
and Long_TMP+0
@next:
sta SR
sec
rol Long_TMP+0
clc
rol Long_TMP+1
bne @lpflag
@exit: @exit: