]> git.sur5r.net Git - cc65/commitdiff
recognize XDOS -- patch from Stefan Haubenthal
authorcpg <cpg@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Sat, 11 Feb 2012 08:35:54 +0000 (08:35 +0000)
committercpg <cpg@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Sat, 11 Feb 2012 08:35:54 +0000 (08:35 +0000)
git-svn-id: svn://svn.cc65.org/cc65/trunk@5524 b7a2c559-68d2-44c3-8de9-860c34a00d81

asminc/atari.inc
doc/atari.sgml
include/atari.h
libsrc/atari/dosdetect.s

index 8d84311be76d56cb10a467c834eb767d049fb0a3..912da1b54f1c82c8209afd7f6c55d428d2b66c44 100644 (file)
@@ -1093,6 +1093,7 @@ ATARIDOS     = 0
 SPARTADOS    = 1
 OSADOS       = 2       ; OS/A+
 MYDOS        = 3
+XDOS         = 4
 NODOS        = 255
 
 ;-------------------------------------------------------------------------
index 6ab9fbdfcf5e9eca0e65f8754f9191a03dccdf2d..44bf65671da3797f121e507e7cb7002b887361c3 100644 (file)
@@ -96,12 +96,13 @@ header file.
 
 <sect1>Atari specific functions<p>
 
-The functions listed below are special for the Atari. See the <htmlurl
-url="funcref.html" name="function reference"> for declaration and usage.
+The functions and global variable listed below are special for the Atari.
+See the <htmlurl url="funcref.html" name="function reference"> for declaration and usage.
 
 <itemize>
 <item>get_ostype
 <item>get_tv
+<item>_dos_type
 <item>_gtia_mkcolor
 <item>_getcolor
 <item>_getdefdev
index fe6265e360a2c277cc9b95a443500947a98980c8..f22479095b5649dc42b213747204347fd8f31895 100644 (file)
@@ -196,6 +196,7 @@ extern unsigned char _dos_type;        /* the DOS flavour */
 #define SPARTADOS   1
 #define OSADOS      2
 #define MYDOS       3
+#define XDOS        4
 #define NODOS       255
 
 /* Define hardware */
index 371741616e9d1c00df6d31be85f2e7a73ca2ffb8..a87d00f7ca08b9e5e6153c062e31eb0ebe3c95c3 100644 (file)
 ; ------------------------------------------------------------------------
 ; DOS type detection
 
-.segment        "INIT"
+.segment       "INIT"
 
-detect:        lda     #ATARIDOS
-       sta     __dos_type      ; set default
-
-       lda     DOS
+detect:        lda     DOS
        cmp     #'S'            ; SpartaDOS
        beq     spdos
        cmp     #'M'            ; MyDOS
        beq     mydos
+       cmp     #'X'            ; XDOS
+       beq     xdos
 
+       lda     #$4C            ; probably default
        ldy     #COMTAB
-       lda     #$4C
        cmp     (DOSVEC),y
        bne     done
-
        ldy     #ZCRNAME
        cmp     (DOSVEC),y
        bne     done
@@ -41,13 +39,15 @@ spdos:      lda     #SPARTADOS
        .byte   $2C             ; BIT <abs>
 
 mydos: lda     #MYDOS
+       .byte   $2C             ; BIT <abs>
+
+xdos:  lda     #XDOS
        sta     __dos_type
 done:  rts
 
 ; ------------------------------------------------------------------------
 ; Data
 
-       .bss
-
-__dos_type:    .res    1
+       .bss
 
+__dos_type:    .res    1       ; default to ATARIDOS