PDP-11/40 Test Programmes

Here is a list of small test programs to run on the PDP-11/40 to verify its basic functions.

Here is a list of small test programs to run on the PDP-11/40 to verify its basic functions. These programs are not exhaustive.

Endless Loop

This is a loop that will clear R0 over and over forever. This program is best ran by single-stepping, you would see the addresses 001000, 001002, 001004 repeat over and over.

Address Data    Code        Switch commands

                            HALT, 001000, LOAD ADDRESS
001000  005000  clr r0      012700, DEPOSIT
001002  005200              000707, DEPOSIT
001004  000775  br .-4      000775, DEPOSIT
                            001000, LOAD ADDRESS, ENABLE, START
0:00
/
Single-stepping an endless loop

Increment Loop

This is a simple INC in a loop.

Address Data    Code        Switch commands

                            HALT, 001000, LOAD ADDRESS
001000  005000  clr r0      012700, DEPOSIT
001002  005200              000707, DEPOSIT
001004  000005  inc r0      001004, DEPOSIT
001004  000775  br .-4      000775, DEPOSIT
                            001000, LOAD ADDRESS, ENABLE, START
0:00
/
Increment Loop

Light Chaser

This is a simple program that will display a simple bit pattern on the screen and shift it left in a loop.

Address Data    Code        Switch commands

                            HALT, 001000, LOAD ADDRESS
001000  012700  mov #1,r0   012700, DEPOSIT
001002  000707              000707, DEPOSIT
001004  006100  rol r0      006100, DEPOSIT
001006  000005  reset       000005, DEPOSIT
001010  000775  br .-4      000775, DEPOSIT
                            001000, LOAD ADDRESS, ENABLE, START
0:00
/
Light Chaser

Debugging

In my system, there was a fault with the rotate left (ROL) instruction. When single-stepping the program it would break out of the console state machine and start running but out of control. The rotate left instruction mainly depends on two boards, the M7231 - Data Paths and  M7233 - IR Decode.

The M7231 - Data Paths board contains the ALU and is needed for the shift. The M7233 - IR Decode is used to decode instructions and provides control of the Arithmetic Logic Unit. In my system, the M7233 - IR Decode had failed and a replacement fixed the issue.

Copy Cat

Address Data    Code        Switch commands

                            HALT, 001000, LOAD ADDRESS
001000  013700  mov @#,r0
001002  777570
001004  000775  br .-4
                            001000, LOAD ADDRESS, ENABLE, START

Comments