+/*****************************************************************************/
+/* Definitions for directory reading functions */
+/*****************************************************************************/
+
+
+
+/* CBM FILE TYPES */
+#define CBM_T_DEL 0
+#define CBM_T_SEQ 1
+#define CBM_T_PRG 2
+#define CBM_T_USR 3
+#define CBM_T_REL 4
+#define CBM_T_CBM 5 /* 1581 sub-partition */
+#define CBM_T_DIR 6 /* IDE64 and CMD sub-directory */
+#define CBM_T_RESERVED 7 /* Not used, but kept free for compatibility */
+#define CBM_T_VRP 8 /* Vorpal fast-loadable format */
+#define CBM_T_OTHER 9 /* Other file-types not yet defined */
+#define CBM_T_HEADER 10 /* Disk header / title */
+
+/* CBM FILE ACCESS */
+#define CBM_A_RO 1 /* Read only */
+#define CBM_A_RW 3 /* Read, Write */
+
+struct cbm_dirent {
+ char name[17]; /* File name in PETSCII, limited to 16 chars */
+ unsigned int size; /* Size in 256B blocks */
+ unsigned char type;
+ unsigned char access;
+};
+
+
+
+/*****************************************************************************/
+/* Machine info */
+/*****************************************************************************/
+
+
+
+#define TV_NTSC 0
+#define TV_PAL 1
+#define TV_OTHER 2
+
+unsigned char __fastcall__ get_tv (void);
+/* Return the video mode the machine is using. */
+
+
+
+/*****************************************************************************/
+/* CBM kernal functions */
+/*****************************************************************************/
+
+
+
+/* Constants to use with cbm_open() for opening a file for reading or
+ * writing without the need to append ",r" or ",w" to the filename.
+ *
+ * e.g.: cbm_open(2, 8, CBM_READ, "data,s");
+ */
+#define CBM_READ 0
+#define CBM_WRITE 1