]> git.sur5r.net Git - cc65/commitdiff
Align rootdir() return value rather with POSIX functions than with DIO functions.
authorol.sc <ol.sc@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Wed, 2 Jun 2010 07:03:54 +0000 (07:03 +0000)
committerol.sc <ol.sc@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Wed, 2 Jun 2010 07:03:54 +0000 (07:03 +0000)
git-svn-id: svn://svn.cc65.org/cc65/trunk@4680 b7a2c559-68d2-44c3-8de9-860c34a00d81

include/apple2.h
libsrc/apple2/rootdir.s

index d856c284034668d6802bf81b5511ddc949e2f978..eefd1a0337e973ade2eca5e0a7f1b4bced017747 100644 (file)
@@ -149,9 +149,9 @@ unsigned char get_ostype (void);
 void rebootafterexit (void);
 /* Reboot machine after program termination has completed. */
 
-unsigned char __fastcall__ rootdir (unsigned char drive, char* buf);
-/* Fill buffer with root directory name of ProDOS 8 disk in ProDOS 8 drive.
- * Returns 0 for success and an OS specific error code in case of failure.
+int __fastcall__ rootdir (unsigned char drive, char* buf);
+/* Fill buffer with root directory name of ProDOS 8 disk in
+ * ProDOS 8 drive. Returns 0 on success and -1 on error.
  */
 
 #define ser_apple2_slot(num)    ser_ioctl (0, (void*) (num))
index baa4b445d3192ea8a19d7093fa1a64153a56749b..f3cf1f1ae7ea0fec151eb0bd848598c2fedbe816 100644 (file)
@@ -1,11 +1,11 @@
 ;
 ; Oliver Schmidt, 2010-05-24
 ;
-; unsigned char __fastcall__ rootdir (unsigned char drive, char* buf);
+; int __fastcall__ rootdir (unsigned char drive, char* buf);
 ;
 
         .export        _rootdir
-        .import                popax
+        .import                popax, oserrexit
 
         .include       "zeropage.inc"
         .include       "errno.inc"
@@ -50,7 +50,5 @@ _rootdir:
         tax
         rts
         
-        ; Return error
-oserr:  sta    __oserror
-        ldx    #$00
-        rts
+        ; Return oserror
+oserr:  jmp    oserrexit