BBC SHEILA Hardware I/O Addresses ================================= Addr Write Action Read Action ------------------------------------------------------------------------- FE00-FF Electron ULA ==================== FE00 Interupt Control Interupt Status FE01 FE02 (Screen Start)DIV2 Low Byte FE03 (Screen Start)DIV2 High Byte FE04 Cassette data shift output Cassette data shift input FE05 ROMSEL and interupt clear FE06 Counter FE07 Cassette, mode, caps light control FE08-0F Palette registers FE00-07 6845 CTRC Video controller ================================== FE00 Register Address FE01 Register Data Register Data FE08-0F 6850 ACIA Serial controller =================================== FE08 6850 Control 6850 Status FE09 6850 Data 6850 Data FE10-17 Serial ULA ================== FE10 Set Baud rate/cassette/motor - FE18-1F Station ID/NMI Control (BBC B, B+) ========================================== FE18 - Station ID, turn off net NMIs FE18-1F Analogue-to-Digital Convertor (Master) ============================================== FE18 Start conversion Status FE19 Data high byte FE1A Data low byte FE1B - - FE20-2F Video ULA ================= FE20 Turn network NMIs on (B/B+) Video Control FE21 Palette Control FE22 Border Colour expansion FE24-27 Disk control (Master) ============================= FE24 - Drive control register FE28-2F 1770 Floppy Disk Controller (Master) ============================================ FE28 Status Command FE29 Track Track FE2A Sector Sector FE2B Data Data FE30-3F Memory control ====================== FE30 - ROMSEL FE34 ACCCON (B+/M) ACCON (B+/M) FE38 Disable network NMIs (Master) Disable network NMIs (Master) FE3C Enable network NMIs (Master) Enable network NMIs (Master) Solidisk RAM/ROM Expansion ========================== FE32 RAM Access Register - bank that writes to &8000-BFFF are directed to FE34 Shadow Register b7: 1=VDU and display uses shadow RAM 0=VDU and display uses main RAM FE36 Size Register 00 10 shadow RAM is 8000-FBFF 20 shadow RAM is 4000-C000 40 shadow RAM is 0800-8800 80 page in upper half of 32K ROM into 16K ROM area FE40-5F System VIA ================== FE40 Input register B Output register B FE41 Input register A Output register A FE42 Data direction register B Data direction register B FE43 Data direction register A Data direction register A FE44 T1 low-order counter T1 low-order latches FE45 T1 high-order counter T1 high-order counter FE46 T1 low-order latches T1 low-order latches FE47 - T1 high-order latches FE48 T2 low-order counter T2 low-order latches FE49 T2 high order counter T2 high order counter FE4A Shift register Shift register FE4B Auxilary control register Auxilary control register FE4C Peripheral control register Peripheral control register FE4D Interupt flag register Interupt flag register FE4E Interupt enable register Interupt enable register FE4F Input register A, no handshake Output register A, no handshake FE60-7F User VIA ================ FE60 Input register B (User port) Output register B (User port) FE61 Input register A (Printer port) Output register A (Printer port) FE62 Data direction register B Data direction register B FE63 Data direction register A Data direction register A FE64 T1 low-order counter T1 low-order latches FE65 T1 high-order counter T1 high-order counter FE66 T1 low-order latches T1 low-order latches FE67 - T1 high-order latches FE68 T2 low-order counter T2 low-order latches FE69 T2 high order counter T2 high order counter FE6A Shift register Shift register FE6B Auxilary control register Auxilary control register FE6C Peripheral control register Peripheral control register FE6D Interupt flag register Interupt flag register FE6E Interupt enable register Interupt enable register FE6F Input register A, no handshake Output register A, no handshake FE80-9F 8271 Floppy disk controller =================================== FE80 Command Status FE81 Parameter Result FE82 Reset - FE83 - - FE84 Data Data FEA0-BF 6854 ADLC Econet controller =================================== FEA0 Control register 1 Status register 1 FEA1 Control register 2,3 Status register 2 FEA2 Transmit data, continue frame Receive data FEA3 Transmit data, terminate frame Receive data FEC0-DF Analogue-to-digital convertor (B/B+) ============================================ FEC0 Start conversion Status FEC1 Data high byte FEC2 Data low byte FEC3 - - FEE0-FF Tube control ==================== FEE0 Status Register 1 Status Register 1 FEE1 Data Register 1 Data Register 1 FEE2 Status Register 2 Status Register 2 FEE3 Data Register 2 Data Register 2 FEE4 Status Register 3 Status Register 3 FEE5 Data Register 3 Data Register 3 FEE6 Status Register 4 Status Register 4 FEE7 Data Register 4 Data Register 4