- lda argc
- asl
- tax
- lda #0
- sta argv,x
- sta argv+1,x
- rts
-
-; DOS type detection
-
-detect:
- lda #ATARIDOS
- sta __dos_type ; set default
-
- lda DOS
- cmp #$53 ; "S" (SpartaDOS)
- beq spdos
-
- ldy #COMTAB
- lda #$4C
- cmp (DOSVEC),y
- bne nordos
-
- ldy #ZCRNAME
- cmp (DOSVEC),y
- bne nordos
-
- ldy #6 ; OS/A+ has a jmp here
- cmp (DOSVEC),y
- beq nordos
- lda #OSADOS
- sta __dos_type
- bne spdos1
-
-spdos: lda #SPARTADOS
- sta __dos_type
-spdos1: sec ; SpartaDOS, OS/A+ or DOS XL
- rts
-
-nordos: clc ; normal DOS (no args) detected
- rts
-
-; Get default device (set by getargs routine)
-
-_getdefdev:
- lda #<defdev
- ldx #>defdev
- rts
-
- .data
-
-; Default device
-
-defdev:
- .byte "D1:", 0