Barry J. Stern's PDP-8 Page

Indianapolis, Indiana

Email: bstern@in.net

Back to Home Page

Project: PDP-8 Computer

Introduction

The above Java Applet simulates a PDP8 computer consisting of 4096 12 bit memory words. The computer operates by fetching a word in memory pointed to by the Program Counter (PC) into the Instruction Register (IR) and then executing this instruction. The Program Counter is then incremented by one and the process is repeated until a Halt instruction of 7402 is fetched into the IR at which time the computer stops and the binary number in the Accumulator (AC) can be read.

Demonstration of Focal

To demonstrate the operation of the Computer, load the program Focal into the computer by selecting Focal in the List Box and depressing Load. If Focal loaded properly, the PC will contain the octal number 200. Now press Start.
The computer will print a * on the TTY.
Place a cursor after the * by clicking anywhere on the TTY.
Now enter T followed by a space and then 6+5 followed by Enter.
The computer should response on a new line with = 11.0000*.
A more sophisticated entry would be T followed by a space and then FSQT(2) followed by Enter.
The computer should respond on a new line with = 1.4142*
Clicking on the Clear button will clear the TTY screen .
Depress Clear and then Enter .
The computer should respond with a clear screen and the prompt *.
Focal has a complete set of commands, operations, functions, and error messages. These may be obtained from Doug Jones's Web site: PDP8 Index

Assembly Language Programs

There are three assembly language programs. They are up, factor, and prime. The procedure for loading and running these programs are the same as with Focal. The assembly language listing for the up counter program is as follows.
Location Operation Comment
*0000
START, IAC /INCREMENT ACCUMULATOR
HLT /HALT THE COMPUTER
JMP START /JUMP BACK TO START

To assemble this program one can use the cross assembler written in Java Script by Mark Arnold at Assembler
UW PDP-8 CROSS ASSEMBLER JavaScript version ST 8/4/96
 
          *0000
0000/7001 START,  IAC       /INCREMENT THE ACCUMULATOR
0001/7402         HLT       /HALT THE COMPUTER
0002/5000         JMP START /JUMP TO START
          /
 
SYMBOL TABLE
 
START   0000