]> git.sur5r.net Git - cc65/blob - libsrc/atari/dosdetect.s
moved into its own module from getargs.s
[cc65] / libsrc / atari / dosdetect.s
1 ;
2 ; Freddy Offenga & Christian Groessler, August 2003
3 ;
4 ; detect the DOS version we're running on
5 ;
6
7         .include        "atari.inc"
8         .constructor    detect,26
9         .export         __dos_type
10
11 ; DOS type detection
12
13 detect: lda     #ATARIDOS
14         sta     __dos_type      ; set default
15
16         lda     DOS
17         cmp     #$53            ; "S" (SpartaDOS)
18         beq     spdos
19
20         ldy     #COMTAB
21         lda     #$4C
22         cmp     (DOSVEC),y
23         bne     done
24
25         ldy     #ZCRNAME
26         cmp     (DOSVEC),y
27         bne     done
28
29         ldy     #6              ; OS/A+ has a jmp here
30         cmp     (DOSVEC),y
31         beq     done
32         lda     #OSADOS
33         sta     __dos_type
34         bne     done
35
36 spdos:  lda     #SPARTADOS
37         sta     __dos_type
38 done:   rts
39
40         .bss
41
42 __dos_type:     .res    1
43