System with dual RK05 disk drives.
Switches left to right are :-
The indicators, left to right are :-
- DC OFF/DC ON/STNDBY - A three position rotary switch that controls the
system power. DC OFF remove all system power, including MOS memory, DC ON
applies system power, and in STNDBY, DC power is removed from the computer,
but is maintained for the MOS memory.
- HALT/CONT - In the HALT position, the program is stopped (including the
serial console emulator). In the CONT position, a program can execute.
If a program causes the system to halt (eg the halt instruction 000000), then
the switch must be first placed in the HALT position and then moved to CONT
to resume program operation.
- BOOT/INIT - If pressed with the HALT/CONT switch in the HALT position,
the processor is initialized, but a bus reset is not
done and device registers can be inspected in their current state.
With the HALT/CONT switch in the CONT position, a boot is initiated (along with
a bus reset). The boot action is dependent on the M9301 bootstrap/terminator
- BATT - When off, the batteryis below the minimum required to maintain
the MOS memory contents. A slow flash (1 every 2 seconds), the battery is
charging and maintaining MOS memory contents. A fast flash (10 per second)
indicates that power has be lost and the battery is maintaining the MOS
- DC ON - Power is applied to the system
- RUN - The processor is running (not in the HALT state)
Switches and pushbuttons :-
As an example, here is the sequence to load a two instruction loop
- 0-7 - Allows entry of octal digits, which are shifted into the display
- LSR - Load switch register. A copy of the display contents is loaded into
the Unibus register at address 777570.
- LAD - Load address. The contents of the display register becomes the
current address for subsequent deposits, examines and starts.
- DIS AD - Display Address. Forces the display to show the current address.
After a deposit or examine, the display will be showing the current data
and not the current address.
- CLR - Clear the display. You usually have to clear the display before
entering a new address or data.
- EXAM - The memory location pointed to by the current address is displayed.
Consecutive examines will increment the current address by two. This key only
works with the processor halted
- DEP - The contents of the display register is deposited into the memory
location pointed to by the current address. Consecutive deposits advance the
the current address by two. Only works when halted.
- CNTRL - The control key is an interlock to stop accidental use of special
- INIT (with CNTRL) - Cause a BUT INIT L to be generated resetting the system.
- HALT/SS (with CNTRL) - Halt the processor. To single step the machine,
halt the processor, then press HALT/SS without the CNTRL key. After a halt,
the display will show the program counter.
- CONT (with CNTRL) - Continue. Allow the processor to continue from the
- START (with CNTRL) - Start the processor. The address must first be set
using the LAD switch. A BUS INIT L is sent.
- BOOT (with CNTRL) - Start the code in the M9301 bootstrap/terminator card.
The action is determined by the switch settings on the card.
1000 LAD (set the load address to 1000 octal)
CLR (reset the display)
240 DEP (deposit NOP instruction in location 1000)
CLR (we need this or we get 240776!!)
776 DEP (deposit BR .-2 instruction in location 1002)
1000 LAD (set the start address)
CNTRL with START (start the program running)
Display and Indicators :-
- A common six digit, seven segment display that is used to show
address and data values.
- SR DISP - Indicates that the display is currently showing the contents
of switch register (777570)
- MAINT - The console is in maintenance mode
- BUS ERR - Indicates that an examine or deposit tried to access a
non-existent memory location
The M9301 bootstrap/terminator contains a simple console emulator that uses
the serial console to perform similar functions to the programmers console.
The M9301 also contains CPU diagnostics tests that are performed before entering
the emulator. The emulator can be started by the following methods (depending
on the M9301 switch settings) :-
When the console emulator is started, it will print out four numbers
(R0, R4, SP and PC), followed by the $ prompt. There
are only four single letter commands :-
- Turning the system power on.
- Press and release the BOOT/INIT switch on the operators console
- Press CNTRL with BOOT on the programmers console
- Start the M9301 ROM code at 773000
- Automatic entry from a power failure
Here is the previous example sequence using the emulator :-
- L Load address. Type L, space, and then the address, return
- E Examine. Type E space, and the current location is examined. Type space to view the next location, or return to finish.
- D Deposit. Type D, space, and then the new data, return.
- S Start. Type S, return, to start program execution
xxxxxx xxxxxx xxxxxx xxxxxx (R0, R4, SP, PC)
$ (emulator prompt, not typed !)
$ L 1000 (set address to 1000 octal)
$ D 240 (deposit NOP instruction in location 1000)
$ D 776 (deposit BR .-2 instruction in location 1002)
$ L 1000 (set the start address)
$ S (start)
The M9301 also accepts two character codes, optionally followed by a unit
number, to boot various hardware devices. The device codes vary according
to the M9301 variant, and the system will crash with a bus error if you
use the code for a non-existent device. The codes are :-
|DX||RX11||8" floppy drive
|MC|| ||Combined tape/disk massbus controller
|PR||PC11||high speed paper tape reader
|TT||DL11||paper tape via the console terminal