started work on disassemble command integration
This commit is contained in:
1 parent
9bda3b8520
commit
5d036749f5
5 files changed
+109
-91
No files matched your search
+10
-49
@@ -15,14 +15,19 @@ Mon_Call:
|
||||
|
||||
JSR Print_Commands
|
||||
|
||||
; clear register for monitor call
|
||||
; set default addressing mode to 64K
|
||||
|
||||
LDA #0
|
||||
STA Adr_Mode
|
||||
|
||||
; clear register for monitor call
|
||||
|
||||
LDX #6
|
||||
@loop STA AC,X
|
||||
DEX
|
||||
BPL @loop
|
||||
|
||||
|
||||
; set default PC to monitor exit point
|
||||
|
||||
LDA #<monitor_exit
|
||||
@@ -386,7 +391,7 @@ Dec_LDA:
|
||||
RTS
|
||||
|
||||
; ****
|
||||
Fetch:
|
||||
Fetch: ; XXX get rid of this, use helper!
|
||||
; ****
|
||||
|
||||
PHZ
|
||||
@@ -426,7 +431,7 @@ Mon_Bits:
|
||||
BCS @lab
|
||||
JSR LAC_To_LPC ; Long_PC = start address
|
||||
@lab JSR Print_CR
|
||||
LDA #KEY_WHITE
|
||||
LDA #KEY_WHITE ; XXX adapt colors
|
||||
STA Long_DA+1
|
||||
|
||||
LDX #8
|
||||
@@ -503,11 +508,6 @@ Mon_Go:
|
||||
|
||||
; XXX to be rewritten for Open ROMs!
|
||||
jmp Main
|
||||
; JSR Get_LAC ; get 1st. parameter
|
||||
; JSR LAC_To_PC
|
||||
; LDX SPL
|
||||
; TXS
|
||||
; JMP JMPFAR
|
||||
|
||||
; ******
|
||||
Mon_JSR:
|
||||
@@ -515,14 +515,6 @@ Mon_JSR:
|
||||
|
||||
; XXX to be rewritten for Open ROMs!
|
||||
jmp Main
|
||||
; JSR Get_LAC ; get 1st. parameter
|
||||
; JSR LAC_To_PC
|
||||
; LDX SPL
|
||||
; TXS
|
||||
; JSR JSRFAR
|
||||
; TSX
|
||||
; STX SPL
|
||||
; JMP Main
|
||||
|
||||
; ***********
|
||||
Dump_4_Bytes: ; XXX to be adapted
|
||||
@@ -1275,35 +1267,6 @@ Size_To_Mode:
|
||||
LDX #0
|
||||
RTS
|
||||
|
||||
; **************
|
||||
Mon_Disassemble:
|
||||
; **************
|
||||
|
||||
JSR Get_LAC ; get 1st. parameter
|
||||
BCS @nopar
|
||||
JSR LAC_To_LPC ; Long_PC = start address
|
||||
JSR Get_LAC ; Long_AC = end address
|
||||
BCC @range
|
||||
@nopar LDA #32 ; disassemble 32 bytes
|
||||
STA Long_CT
|
||||
BRA @loop
|
||||
@range JSR LAC_Minus_LPC ; Long_CT = range
|
||||
LBCC Mon_Error ; -> negative
|
||||
|
||||
@loop JSR CR_Erase ; prepare empty line
|
||||
JSR STOP
|
||||
LBEQ Main
|
||||
JSR Dis_Code ; disassemble one line
|
||||
INC Op_Size
|
||||
LDA Op_Size
|
||||
JSR Add_LPC ; advance address
|
||||
LDA Long_CT
|
||||
SEC
|
||||
SBC Op_Size
|
||||
STA Long_CT
|
||||
BCS @loop
|
||||
JMP Main
|
||||
|
||||
; *******
|
||||
Dis_Code:
|
||||
; *******
|
||||
@@ -1397,8 +1360,7 @@ Print_Code:
|
||||
|
||||
; detect long branches
|
||||
|
||||
@long LDA #KEY_YELLOW
|
||||
JSR CHROUT
|
||||
@long JSR Print_Attr_Bold
|
||||
LDX Op_Code
|
||||
LDA LEN_ADM,X
|
||||
CMP #%10100000 ; long branch mode
|
||||
@@ -1475,8 +1437,7 @@ Print_Code:
|
||||
|
||||
@mne4 JSR Print_Blank
|
||||
@mne5 JSR Print_Blank
|
||||
LDA #KEY_WHITE
|
||||
JSR CHROUT
|
||||
JSR Print_Attr_NoBold
|
||||
|
||||
; check for accumulator operand
|
||||
|
||||
|
||||
Reference in new issue
Block a user