BBC 16-Bit IDE Interface ======================== Self-Assembly Guide Parts Required -------------- These are the parts you need to obtain to assemble the interface. 4 x 2K2 5% SIL Resistor pack 1 x 4K7 5% resistor 1 x 5K6 5% resistor 3 x 10K 5% resistor 1 x 270R 5% resistor 1 x 220uF radial elec capacitor 7 x 47nF radial ceramic capacitor 1 x 74HCT02 Quadruple 2-Input Positive-NOR Buffer 1 x 74HCT32 Quadruple 2-Input Positive-OR Buffer 2 x 74HCT139 2 to 4 line address decoder 2 x 74HCT245 Bidirectional buffer 1 x 74HCT646 Bidirectional octal D flip flop 1 x BAT54A Dual common anode small signal schottky diode 1 x BC548C NPN transistor TO92 1 x RED LED Red LED 1 x IDC hdr 1x10 0.1 pitch header 1 x IDC hdr 1x4 0.1 pitch header right angled 1 x IDC hdr 2x17 0.1 pitch header 4 x SIL con 1x9 0.1 pitch SIL socket 1 x IDC con 17x2 Box male 17x2 IDC connector 1 x IDC con 20x2 Box male 20x2 IDC connector, pin 20 missing 1MHz cable: 70cm x 34-way cable 1MHz ribbon cable 2 x 34-way IDC plug 1MHz cable plugs Power cable: 1 x BBC power BBC power plug 1 x 5.25" power 5.25" drive power connector 1 x 3.5" power 3.5" drive power connector 70cm x 3-way cable power cable Notes: The 74HCT646 must be a 0.3" width one, such as Farnell Stock Number 383-995. The full part number CD74ACT646E specifies 0.3" width. You must not use a right-angle 2x17 IDC header for the 1MHz connector. You must use a straight connector with the notch on the side towards the edge of the board. You will also need the following: 1 x layout diagram 1 x ADFS 1.53 ROM 1 x Utils disk Board Modification ------------------ Before assembling the board, it must be modified to correct two errors. 1: RD/WR supplied from wrong pins The RD and WR lines come from pins 11 and 12 of IC U103. They should come from pins 9 and 10. To correct this do the following: * On the top of the PCB cut the track running from IC U103 pin 11. * On the top of the PCB cut the track running from IC U103 pin 12. * On the bottom of the PCB solder a link from IC U106 pin 5 to IC U103 pin 9. * On the bottom of the PCB solder a link from IC U106 pin 9 to IC U103 pin 10. 2: RD/WR swapped at IDE connector The RD and WR lines are wired the wrong way around at the IDE connector. To correct this do the following: * On the top of the PCB cut the track running from IC U106 pin 2 to IDE pin 25. * On the top of the PCB cut the track running from IC U106 pin 12 to IDE pin 23. * On the bottom of the PCB wire a link from IC U106 pin 2 to IDE pin 23. * On the bottom of the PCB wire a link from IC U106 pin 12 to IDE pin 25. Board Assembly -------------- Assemble the board in the following order. 1: Diode D100 2: Resistors and capacitors 3: Resistor pack sockets for RP101-RP104 4: If using socketed ICs, the IC sockets 5: IDE socket, 1MHz bus, power connector, PL105 6: If using unsocketed ICs, the ICs 7: Transistor Q100, LED LED100. Cable Assembly -------------- Crimp the 34-way plugs to each end of the 34-way cable, ensuring pin one is at the same side at each end. Wire up the power cable with the BBC plug at one end and the 3.5" and 5.25" connectors at the other end. Drive assembly -------------- Plug the IDE data cable into the hard drive and the IDE card. Make sure the red line aligns with the same side of the socket at each end. Plug the 1MHz cable into the IDE card. Plug the 5.25" power connector into the hard drive and the 3.5" power connector into the IDE card. The power connector plugs in with the recessed side downwards, the red wire on the right, looking at the edge of the PCB. User Guide ========== If not already done, plug the IDE data cable into the hard drive and the IDE card. Make sure the red line aligns with the same side of the socket at each end. Plug the 1MHz cable into the IDE card. Plug the 5.25" power connector into the hard drive and the 3.5" power connector into the IDE card. The power connector plugs in with the recessed side downwards, the red wire on the right. Plug the 1MHz cable into the BBC/Master 1MHz connector. Plug the power connector into the BBC/Master auxiliary power socket. The leads are long enough to wrap under the computer and over the back of the case so that the drive can sit on top of the computer. You can use up to two IDE drives with the IDE card using an IDE cable with two plugs at the drive end, giving access to up to 2G of storage with ADFS or 8G with HADFS. The first drive must have it's drive ID link or Drive Select link set to C, A or 0. The second drive must have it's ID set to D, B or 1. You can use the IDE interface with ADFS on the Master or HADFS on the Master or the BBC B. Inserting ROMs on the BBC B --------------------------- There are four sideways ROM sockets on the BBC B motherboard, in the bottom right-hand corner. Two of the sockets usually have BASIC and DFS in. The ROM sockets are IC52, IC88, IC100 and IC101. IC52 occupies ROM slot 12. IC88 occupies ROM slot 13. IC100 occupies ROM slot 14. IC101 occupies ROM slot 15. Inserting ROMs on the BBC B+ ---------------------------- There are five sideways ROM sockets on the BBC B+ motherboard, in the top lefthand corner. Each socket can take a 16K or 32K ROM, depending on its links. The sockets are IC68, IC62, IC57, IC44 and IC35. IC68 occupies ROM banks 10 and 11, link 18 WEST for 16K, EAST for 32K. IC62 occupies ROM banks 8 and 9, link 15 WEST for 16K, EAST for 32K. IC57 occupies ROM banks 6 and 7, link 9 WEST for 16K, EAST for 32K. IC44 occupies ROM banks 4 and 5, link 11 WEST for 16K, EAST for 32K. IC35 occupies ROM banks 2 and 3, link 12 WEST for 16K, EAST for 32K. Inserting ROMs on the Master ---------------------------- There are three ROM sockets on the Master motherboard. At the rear is the MOS+System ROM. In front of it are three sockets, IC37, IC27 and IC41. IC37 occupies ROM banks 6 and 7, enabled by moving link 19 WEST, disabling RAM in banks 6 and 7. IC27 occupies ROM bank 8. IC41 occupies ROM banks 4 and 5, enabled by moving link 18 WEST, disabling RAM in banks 4 and 5. The front ROM catridge socket is ROM slots 0 and 1, the rear cartridge socket is ROM slots 2 and 3. Inserting ROMs on the Master Compact ------------------------------------ There are four ROM sockets on the Compact motherboard, IC38, IC23, IC17 and IC29. IC38 occupies ROM banks 0 and 1, enabled by moving link L11 SOUTH, disabling external ROMs on the edge connector. IC23 occupies ROM bank 2. IC17 occupies ROM bank 3. IC29 occupies ROM bank 8. ADFS on the BBC Master ====================== To use the IDE hard drive interface with ADFS, you will need to disable the internal ADFS and enable the replacement ADFS. Enter the following commands: *UNPLUG 13 *CONFIGURE FILE where is the ROM slot of the replacement ADFS *CONFIGURE HARD to select hard drive :0 on power-on, or *CONFIGURE FLOPPY to select floppy drive :4 on power-on Turn the computer off for a couple of seconds, and then turn it back on again. If you were supplied with a hard drive it will have already been initialised and some utility programs copied onto it in the $.Utils directory. You will also have a floppy disk with these programs on. The most important program is $.Utils.HDInit - used to initialize a blank hard drive. Initialisation -------------- To initialise a blank hard drive run $.Utils.HDInit. Select the drive with option 'D', then select format with option 'F'. HDInit will examine the drive to find how big it is. It will display the size found and ask for confirmation before blanking it out. Enter YES to confirm. IMPORTANT - ALL DATA ON THE DRIVE WILL BE WIPED BY THIS OPERATION! Drive Numbers ------------- With a hard drive present and turned on ADFS has the following drive mapping: :0 First 512M of first IDE drive :4 First floppy drive :1 Second 512M of first IDE drive :5 Second floppy drive :2 First 512M of second IDE drive :6 Reserved :3 Second 512M of second IDE drive :7 Reserved Without a hard drive present, ADFS has the following drive mapping: :0 First floppy drive :4 First floppy drive :1 Second floppy drive :5 Second floppy drive :2 Reserved :6 Reserved :3 Reserved :7 Reserved HADFS on the Master and BBC B ============================= HADFS version 5.30 can access IDE drives with the drives partitioned into 16M logical drives. HADFS version 6 access drives in partitions up to 4G in size. Initialisation -------------- To initialise a blank hard drive run $.Utils.HDInit on the HADFS System disk. Select the drive with option 'D', then select format with option 'F'. HDInit will examine the drive to find how big it is. It will display the size found and ask for confirmation before blanking it out. Enter YES to confirm. IMPORTANT - ALL DATA ON THE DRIVE WILL BE WIPED BY THIS OPERATION! HDInit will also alow you to set up a hard drive with both an ADFS and an HADFS partition on it. The smaller partition is usually at the start of the disk, with the larger partition occupying the rest of the disk. With HADFS version 5 the HADFS partition can be up to 16M and is usually at the start of the disk. With HADFS version 6 the HADFS partition can be up to 4G and is usually at the end of the disk. Drive Numbers ------------- With a hard drive present and turned on HADFS has the following drive mapping: HADFS Version 5: :4 First 16M of first IDE drive :8 Fifth 16M of second IDE drive :5 Second 16M of first IDE drive :9 Sixth 16M of second IDE drive :6 Third 16M of first IDE drive :A Seventh 16M of second IDE drive :7 Fourth 16M of first IDE drive :B Eighth 16M of second IDE drive HADFS Version 6: :4 First 4G of first IDE drive :8 First 4G of second IDE drive :5 Second 4G of first IDE drive :9 Second 4G of second IDE drive :6 Third 4G of first IDE drive :A Third 4G of second IDE drive :7 Fourth 4G of first IDE drive :B Fourth 4G of second IDE drive