]> git.sesse.net Git - pistorm/blob - platforms/amiga/piscsi/piscsi-enums.h
[WIP] Pile of stuff
[pistorm] / platforms / amiga / piscsi / piscsi-enums.h
1 #define NUM_UNITS 7
2 #define PISCSI_OFFSET  0x80000000
3 #define PISCSI_REGSIZE 0x00010000
4 #define PISCSI_UPPER   0x80010000
5
6 #define SCSIERR_TIMEOUT  (1 << 7)
7 #define SCSIERR_PARAM    (1 << 6)
8 #define SCSIERR_ADDRESS  (1 << 5)
9 #define SCSIERR_ERASESEQ (1 << 4)
10 #define SCSIERR_CRC      (1 << 3)
11 #define SCSIERR_ILLEGAL  (1 << 2)
12 #define SCSIERR_ERASERES (1 << 1)
13 #define SCSIERR_IDLE     (1 << 0)
14
15 enum piscsi_stuff {
16     PISCSI_BLOCK_SIZE = 512,
17     PISCSI_TRACK_SECTORS = 2048,
18 };
19
20 enum piscsi_cmds {
21     PISCSI_CMD_WRITE    = 0x00,
22     PISCSI_CMD_READ     = 0x02,
23     PISCSI_CMD_DRVNUM   = 0x04,
24     PISCSI_CMD_DRVTYPE  = 0x06,
25     PISCSI_CMD_BLOCKS   = 0x08,
26     PISCSI_CMD_CYLS     = 0x0A,
27     PISCSI_CMD_HEADS    = 0x0C,
28     PISCSI_CMD_SECS     = 0x0E,
29     PISCSI_CMD_ADDR1    = 0x10,
30     PISCSI_CMD_ADDR2    = 0x14,
31     PISCSI_CMD_ADDR3    = 0x18,
32     PISCSI_CMD_ADDR4    = 0x1C,
33     PISCSI_CMD_DEBUGME  = 0x20,
34     PISCSI_CMD_DRIVER   = 0x40,
35     PISCSI_CMD_WRITE64  = 0x50,
36     PISCSI_CMD_READ64   = 0x52,
37     PISCSI_DBG_MSG      = 0x1000,
38     PISCSI_DBG_VAL1     = 0x1010,
39     PISCSI_DBG_VAL2     = 0x1014,
40     PISCSI_DBG_VAL3     = 0x1018,
41     PISCSI_DBG_VAL4     = 0x101C,
42     PISCSI_DBG_VAL5     = 0x1020,
43     PISCSI_DBG_VAL6     = 0x1024,
44     PISCSI_DBG_VAL7     = 0x1028,
45     PISCSI_DBG_VAL8     = 0x102C,
46     PISCSI_CMD_ROM      = 0x4000,
47 };
48
49 enum piscsi_dbg_msgs {
50     DBG_INIT,
51     DBG_OPENDEV,
52     DBG_CLOSEDEV,
53     DBG_CHS,
54     DBG_IOCMD,
55     DBG_CLEANUP,
56     DBG_BEGINIO,
57     DBG_ABORTIO,
58     DBG_SCSICMD,
59     DBG_SCSI_FORMATDEVICE,
60     DBG_SCSI_RDG,
61     DBG_SCSI_UNKNOWN_MODESENSE,
62     DBG_SCSI_UNKNOWN_COMMAND,
63     DBG_SCSIERR,
64     DBG_IOCMD_UNHANDLED,
65 };
66
67 #define TD_READ64           24
68 #define TD_WRITE64          25
69 #define TD_SEEK64           26
70 #define TD_FORMAT64         27
71
72 #define NSCMD_TD_READ64     0xC000
73 #define NSCMD_TD_WRITE64    0xC001
74 #define NSCMD_TD_SEEK64     0xC002
75 #define NSCMD_TD_FORMAT64   0xC003