various turbo tape improvements
This commit is contained in:
1 parent
982b287e92
commit
ae80e9a596
19 files changed
+187
-50
No files matched your search
@@ -62,17 +62,25 @@ rsl_l1:
|
||||
lda __tokenise_work1
|
||||
beq basic_read_next_line
|
||||
|
||||
#if CONFIG_DOS_WEDGE
|
||||
// Check if a wedge should take over
|
||||
|
||||
#if CONFIG_DOS_WEDGE || CONFIG_TAPE_WEDGE
|
||||
|
||||
ldx __tokenise_work1 // here is the size of input
|
||||
|
||||
// Check if DOS wedge should take over
|
||||
lda BUF
|
||||
cmp #$40 // '@'
|
||||
bne !+
|
||||
ldx __tokenise_work1 // here is the size of input
|
||||
jmp wedge_dos
|
||||
!:
|
||||
|
||||
#endif // CONFIG_DOS_WEDGE
|
||||
#if CONFIG_DOS_WEDGE
|
||||
cmp #$40 // '@'
|
||||
beq_far wedge_dos
|
||||
#endif
|
||||
#if CONFIG_TAPE_WEDGE
|
||||
cmp #$1F // left arrow
|
||||
beq_far wedge_tape
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
// Else, tokenise the line
|
||||
jsr tokenise_line
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
|
||||
#if CONFIG_TAPE_WEDGE
|
||||
|
||||
|
||||
// .X has to contain size of the buffer
|
||||
|
||||
wedge_tape:
|
||||
|
||||
lda #$FF
|
||||
sta CURLIN+1 // in case of error do not print line number
|
||||
|
||||
cpx #$02
|
||||
bne_far do_SYNTAX_error
|
||||
|
||||
lda BUF+1
|
||||
cmp #$4C // 'L'
|
||||
bne_far do_SYNTAX_error
|
||||
|
||||
// Execute 'arrow + L'
|
||||
|
||||
lda #$00
|
||||
sta FNLEN
|
||||
|
||||
ldy #$01
|
||||
ldx #$07 // turbo tape device
|
||||
jsr JSETFLS
|
||||
|
||||
ldy TXTTAB+1
|
||||
ldx TXTTAB+0
|
||||
|
||||
jsr JLOAD
|
||||
|
||||
jmp basic_main_loop
|
||||
|
||||
|
||||
#endif // CONFIG_TAPE_WEDGE
|
||||
Reference in new issue
Block a user