]> git.sur5r.net Git - cc65/commitdiff
Code review changes and build fix.
authorIrgendwerA8 <c.krueger.b@web.de>
Mon, 4 Mar 2019 22:13:24 +0000 (23:13 +0100)
committerIrgendwerA8 <c.krueger.b@web.de>
Mon, 4 Mar 2019 22:32:56 +0000 (23:32 +0100)
include/_atarios.h
libsrc/atari/targetutil/w2cas.c

index 89fcfea9b1490f25b0c3d55c17e6948fb9320980..2666179714cebd988921aba5ace81bd961ed3da3 100644 (file)
@@ -57,7 +57,7 @@
 
 /* I/O control block */
 
-typedef struct {
+struct __iocb {
     unsigned char   handler;    /* handler index number (0xff free) */
     unsigned char   drive;      /* device number (drive) */
     unsigned char   command;    /* command */
@@ -71,22 +71,26 @@ typedef struct {
     unsigned char   aux4;       /* 4th auxiliary byte */
     unsigned char   aux5;       /* 5th auxiliary byte */
     unsigned char   spare;      /* spare byte */
-} IOCB;
+};
+
+typedef struct __iocb IOCB;
 
 
 /* DOS 2.x zeropage variables */
 
-typedef struct {
+struct __dos2x {
     unsigned char*  zbufp;      /* points to user filename */
     unsigned char*  zdrva;      /* points to serveral buffers (mostly VTOC) */
     unsigned char*  zsba;       /* points to sector buffer */
     unsigned char   errno;      /* number of occured error */
-} DOS2X;
+};
+
+typedef struct __dos2x DOS2X;
 
 
 /* A single device handler formed by it's routines */
 
-typedef struct {
+struct __devhdl {
     void *open;                 /* address of OPEN routine -1 */
     void *close;                /* address of CLOSE routine -1 */
     void *get;                  /* address of GET BYTE routine -1 */
@@ -95,26 +99,33 @@ typedef struct {
     void *special;              /* address od SPECIAL routine -1 */
     void (*init)(void);         /* init routine (JMP INIT) */
     void *reserved;             /* unused */
-} DEVHDL;
+};
+
+typedef struct __devhdl DEVHDL;
 
 
 /* List of device handlers, as managed in HATABS */
 
-typedef struct {
+struct __hatabs {
     unsigned char   id;         /* ATASCII code of handler e.g. 'C','D','E','K','P','S','R' */
     DEVHDL*         devhdl;     /* Pointer to routines of device */
-} HATABS;
+};
+
+typedef struct __hatabs HATABS;
+
 
 /* Floating point register */
 
-typedef struct {
+struct __fpreg {
 #ifdef OS_REV2
     unsigned char fr;
     unsigned char frm[5];       /* 5-byte register mantissa */
 #else
     unsigned char fr[6];        /* 6 bytes for single register */
 #endif
-} FPREG;
+};
+
+typedef struct __fpreg FPREG;
 
 enum {                          /* enum for access of floating point registers */
     R0 = 0,                     /* (to use as index) */
@@ -653,3 +664,4 @@ struct __basic {
     unsigned int    binint;                 // = $D4/$D5        USR-CALL RETURN VALUE
 };
 
+#endif
index 1381a49a02162f0bdd6a527a2426ce71141a9c0e..9358e5feaab377308877b911f72ab792861008ae 100644 (file)
@@ -22,13 +22,11 @@ static char C_dev[] = "C:";
 
 static struct __iocb *findfreeiocb(void)
 {
-    struct __iocb *iocb = &IOCB;  /* first IOCB (#0) */
     int i;
 
     for (i = 0; i < 8; i++) {
-        if (iocb->handler == 0xff)
-            return iocb;
-        iocb++;
+        if (OS.iocb[i].handler == 0xff)
+            return &OS.iocb[i];
     }
     return NULL;
 }
@@ -52,7 +50,7 @@ int main(int argc, char **argv)
         fprintf(stderr, "couldn't find a free iocb\n");
         return 1;
     }
-    iocb_num = (iocb - &IOCB) * 16;
+    iocb_num = (iocb - OS.iocb) * 16;
     if (verbose)
         printf("using iocb index $%02X ($%04X)\n", iocb_num, iocb);