first work towards DOS wedge

This commit is contained in:
FeralChild64 committed 2019-06-13 18:09:09 +02:00
1 parent e49efcce67
commit 5accf927b3
2 files changed
+85 -4

No files matched your search

+20 -4
View File
@@ -80,9 +80,9 @@ basic_execute_statement:
;; Now consume the character
jsr basic_consume_character
rts
rts
not_a_token:
not_a_token:
;; Space, which we can also just ignore
cmp #$20
beq basic_skip_char
@@ -93,11 +93,27 @@ not_a_token:
cmp #$3a
beq basic_skip_char
;; START wedge support
;; Are we in direct mode?
;; DOS Wedge is a hacky solution (inelegant, but convenient),
;; BASIC programmers should implement communication with drives
;; the standard way, handling channels properly
ldx basic_current_line_number+1
cpx #$ff
bne +
;; We are in direct mode, allow wedge to handle '@' sign
;; XXX Maybe it should be allowed only as the first command?
cmp #$40
bne +
jsr basic_consume_character
jmp wedge_dos
*
;; END wedge support
;; If all else fails, it's a syntax error
jmp do_SYNTAX_error
jmp basic_main_loop
basic_skip_char:
jsr basic_consume_character
jmp basic_execute_statement