kthacker | 62e146c | 2006-04-17 15:11:35 +0000 | [diff] [blame] | 1 | /* Amstrad hardware I/O ports |
| 2 | |
| 3 | Although these I/O port addresses are actually partially decoded, |
| 4 | we use the recommended address here. |
| 5 | */ |
| 6 | |
| 7 | /* Gate Array */ |
| 8 | sfr banked at 0x07F00 IO_GateArray; |
| 9 | |
| 10 | /* CRTC */ |
| 11 | sfr banked at 0x0BC00 IO_CRTC_Register; |
| 12 | sfr banked at 0x0BD00 IO_CRTC_Data; |
| 13 | |
| 14 | /* FDD */ |
| 15 | sfr banked at 0x0FA7E IO_FDD_Motor; /* motor state for all floppy disc drives */ |
| 16 | |
| 17 | /* FDC |
| 18 | |
| 19 | NOTE: The Amstrad Floppy Disc Controller is polled for data and has strict timing constraints. |
| 20 | Therefore it is best to perform all floppy access using assembler code, or using the firmware or |
| 21 | CP/M functions |
| 22 | */ |
| 23 | sfr banked at 0x0FB7E IO_FDC_Status; /* FDC Main Status register */ |
| 24 | sfr banked at 0x0FB7F IO_FDC_Data; /* FDC Data register */ |
| 25 | |
| 26 | /* PPI */ |
| 27 | sfr banked at 0x0F400 IO_PPI_PortA; |
| 28 | sfr banked at 0x0F500 IO_PPI_PortB; |
| 29 | sfr banked at 0x0F600 IO_PPI_PortC; |
| 30 | sfr banked at 0x0F700 IO_PPI_Control; |
| 31 | |