MITS changed their bootstrap loader and the required front panel switch settings at Basic version 3.2, and again between Basic version 3.X and 4.0. Additionally, the bootstrap loader is different for each kind of port - SIO, 2SIO, Cassette, parallel port, etc. You can tell which is the right bootstrap loader for a particular Basic image by looking at the leader bytes on the paper tape. (the tape starts with many copies of the same byte, which is the leader. You start loading the tape someplace in this leader - NOT before it.) This leader byte happens to be the low byte of the last address of the checksum loader on the tape, so you can use it to match the tape to the bootstrap loader... See my comments in the loaders below. Here is the bootstrap loader for Basic 3.2 through 3.X for the 2SIO: Octal Address Octal Data comment 000 076 RESET 2SIO PORT 0 001 003 002 323 003 020 004 076 INITIALIZE 2SIO PORT 0 005 021 2 STOP BITS (025 FOR 1 STOP BIT) 006 323 007 020 010 041 HL=LAST ADDRESS OF CHECKSUM LOADER 011 256 THIS IS ALSO THE LEADER CHARACTER 012 0X7 017 FOR 4K, 037 FOR 8K, 057 FOR EXT. 013 061 SET UP STACK FOR EFFICIENT RETURNS 014 032 STACK IS RIGHT AT THE END OF THIS CODE 015 000 016 333 GET READER STATUS 017 020 020 017 RRC: TEST RX DATA REG FULL 021 320 RETURN IF NO DATA YET 022 333 GET READER DATA 023 021 024 275 CMP L: IS THIS A LEADER CHARACTER? 025 310 RETURN IF SO 026 055 DCR L: CHECKSUM LOADER LOADS LAST FIRST 027 167 PUT CHECKSUM LOADER BYTE IN MEMORY 030 300 RETURN IF L<>0 - NOT DONE YET 031 351 PCHL: JUMP TO CHECKSUM LOADER 032 013 RETURN ADDRESS ON THE STACK 033 000 NOTE: Switch A11 should be UP before you hit the RUN switch. Set A10 also up if the 2SIO is also the Terminal device *and* you want only 1 stop bit for the terminal. This is a cute program - it's well worth your time to understand it. Then you might disassemble the Checksum loader and understand it! Here is the bootstrap loader for Basic version 4.0 and later: Octal Address Octal Data comment 000 076 RESET 2SIO PORT 0 001 003 002 323 003 020 004 076 INITIALIZE 2SIO PORT 0 005 021 2 STOP BITS (025 FOR 1 STOP BIT) 006 323 007 020 010 041 HL=LAST ADDRESS OF CHECKSUM LOADER 011 *302* THIS IS ALSO THE LEADER CHARACTER 012 0X7 017 FOR 4K, 037 FOR 8K, 057 FOR EXT. 013 061 SET UP STACK FOR EFFICIENT RETURNS 014 032 STACK IS RIGHT AT THE END OF THIS CODE 015 000 016 333 GET READER STATUS 017 020 020 017 RRC: TEST RX DATA REG FULL 021 320 RETURN IF NO DATA YET 022 333 GET READER DATA 023 021 024 275 CMP L: IS THIS A LEADER CHARACTER? 025 310 RETURN IF SO 026 055 DCR L: CHECKSUM LOADER LOADS LAST FIRST 027 167 PUT CHECKSUM LOADER BYTE IN MEMORY 030 300 RETURN IF L<>0 - NOT DONE YET 031 351 PCHL: JUMP TO CHECKSUM LOADER 032 013 RETURN ADDRESS ON THE STACK 033 000 The Checksum loader for Basic 4.0 and later interprets the front panel switches differently. Switches A8-A11 define the load port, and switches A12-A15 determine the Terminal port for Basic. They are set as follows: A15 A14 A13 A12 A11 A10 A9 A8 PORT CHANNELS (OCTAL ADDRESSES) 0 0 0 0 2SIO, 2 STOP BITS 20, 21 0 0 0 1 2SIO, 1 STOP BIT 20, 21 0 0 1 0 SIO 0, 1 0 0 1 1 ACR (CASSETTE) 6, 7 0 1 0 0 4PIO 40, 41, 42, 43 0 1 0 1 PIO 4, 5 0 1 1 0 HSR 46, 47 1 1 0 0 NON-STANDARD TERMINAL 1 1 0 1 NO TERMINAL The boot loader for versions before 3.2 are different. If anybody needs them and can't find them, ping me. Note again that these boot loaders are for loading from the 2SIO. the loaders are different if you want to load from other MITS ports. Cheers, Martin