Atari: get current drive on XDOS
This commit is contained in:
@@ -1021,6 +1021,7 @@ XGLIN = $0871 ; get line
|
|||||||
XSKIP = $0874 ; skip parameter
|
XSKIP = $0874 ; skip parameter
|
||||||
XMOVE = $0877 ; move filename
|
XMOVE = $0877 ; move filename
|
||||||
XGNUM = $087A ; get number
|
XGNUM = $087A ; get number
|
||||||
|
XDEFDEV = $0816 ; current drive * undocumented *
|
||||||
|
|
||||||
;-------------------------------------------------------------------------
|
;-------------------------------------------------------------------------
|
||||||
; End of atari.inc
|
; End of atari.inc
|
||||||
|
|||||||
@@ -27,9 +27,10 @@
|
|||||||
__getdefdev:
|
__getdefdev:
|
||||||
|
|
||||||
lda __dos_type ; which DOS?
|
lda __dos_type ; which DOS?
|
||||||
cmp #OSADOS+1
|
cmp #XDOS
|
||||||
bcs finish ; only supported on OS/A+ and SpartaDOS
|
beq xdos ; only supported on XDOS ...
|
||||||
; (TODO: add XDOS support)
|
; cmp #OSADOS+1 ; (redundant: #OSADOS+1 = #XDOS)
|
||||||
|
bcs finish ; ... and on OS/A+ and SpartaDOS
|
||||||
|
|
||||||
ldy #BUFOFF
|
ldy #BUFOFF
|
||||||
lda #0
|
lda #0
|
||||||
@@ -68,7 +69,7 @@ crvec: jsr $FFFF ; will be set to crunch vector
|
|||||||
sta __defdev
|
sta __defdev
|
||||||
iny
|
iny
|
||||||
lda (DOSVEC),y
|
lda (DOSVEC),y
|
||||||
sta __defdev+1
|
done: sta __defdev+1
|
||||||
|
|
||||||
; Return pointer to default device
|
; Return pointer to default device
|
||||||
|
|
||||||
@@ -76,6 +77,11 @@ finish: lda #<__defdev
|
|||||||
ldx #>__defdev
|
ldx #>__defdev
|
||||||
rts
|
rts
|
||||||
|
|
||||||
|
; XDOS version
|
||||||
|
|
||||||
|
xdos: lda XDEFDEV
|
||||||
|
bne done
|
||||||
|
|
||||||
.data
|
.data
|
||||||
|
|
||||||
; Default device
|
; Default device
|
||||||
|
|||||||
Reference in New Issue
Block a user