Barry J. Stern's PDP-8 Page
Indianapolis, Indiana
- Electrical Engineer BSEE, MSEE
- Licensed Real Estate Broker in Indiana
- Licensed Amateur Radio Operator W9OAA.
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