| .. | .. |
|---|
| 7 | 7 | * Handbook", Sanches and Canton. |
|---|
| 8 | 8 | */ |
|---|
| 9 | 9 | |
|---|
| 10 | | -#ifdef FDPATCHES |
|---|
| 11 | | -#define FD_IOPORT fdc_state[fdc].address |
|---|
| 12 | | -#else |
|---|
| 13 | | -/* It would be a lot saner just to force fdc_state[fdc].address to always |
|---|
| 14 | | - be set ! FIXME */ |
|---|
| 15 | | -#define FD_IOPORT 0x3f0 |
|---|
| 16 | | -#endif |
|---|
| 17 | | - |
|---|
| 18 | | -/* Fd controller regs. S&C, about page 340 */ |
|---|
| 19 | | -#define FD_STATUS (4 + FD_IOPORT ) |
|---|
| 20 | | -#define FD_DATA (5 + FD_IOPORT ) |
|---|
| 10 | +/* 82077's auxiliary status registers A & B (R) */ |
|---|
| 11 | +#define FD_SRA 0 |
|---|
| 12 | +#define FD_SRB 1 |
|---|
| 21 | 13 | |
|---|
| 22 | 14 | /* Digital Output Register */ |
|---|
| 23 | | -#define FD_DOR (2 + FD_IOPORT ) |
|---|
| 15 | +#define FD_DOR 2 |
|---|
| 16 | + |
|---|
| 17 | +/* 82077's tape drive register (R/W) */ |
|---|
| 18 | +#define FD_TDR 3 |
|---|
| 19 | + |
|---|
| 20 | +/* 82077's data rate select register (W) */ |
|---|
| 21 | +#define FD_DSR 4 |
|---|
| 22 | + |
|---|
| 23 | +/* Fd controller regs. S&C, about page 340 */ |
|---|
| 24 | +#define FD_STATUS 4 |
|---|
| 25 | +#define FD_DATA 5 |
|---|
| 24 | 26 | |
|---|
| 25 | 27 | /* Digital Input Register (read) */ |
|---|
| 26 | | -#define FD_DIR (7 + FD_IOPORT ) |
|---|
| 28 | +#define FD_DIR 7 |
|---|
| 27 | 29 | |
|---|
| 28 | 30 | /* Diskette Control Register (write)*/ |
|---|
| 29 | | -#define FD_DCR (7 + FD_IOPORT ) |
|---|
| 31 | +#define FD_DCR 7 |
|---|
| 30 | 32 | |
|---|
| 31 | 33 | /* Bits of main status register */ |
|---|
| 32 | 34 | #define STATUS_BUSYMASK 0x0F /* drive busy mask */ |
|---|