Actually, this is neither 8 nor 16 bits. It's the 12 bits PDP-8. Or even more specific: the PiDP-8 replica of the PDP-8, created by Oscar Vermeulen of Obsolescence Guaranteed.
It's sold as a kit, but they are only produced in batches when there is enough interest. I waited a few months after entering my name on the e-mail list. It comes as a bag of components and switches, a huge PCB, a front panel and some wooden parts. The computer core is a Raspberry Pi (not included).
One of the first problems I was faced with was how to check if everything actually works. When you just start the unit, and the Raspberry Pi runs the SIMH software there will be some blinking LEDs, and it will probably react to switches but it's very hard to find out if all switches are really working, or if all LEDs will light up if required. So I Googled and found a pidp_test program by Paul R. Bernhard: http://downspout.ca/pidp-test.
After downloading and Unzipping you can build the actual program using the 'sudo make' command:
pdp@pidp8:~/usbdrv$ sudo make
After a successful build it can be started with
pdp@pidp8:~/usbdrv$ sudo ./pidp-test
pdp@pidp8:~$ cd usbdrv
Power on the unit with the ' STOP' button pressed. This will boot the Pi, but not start the PDP simulator.
Some quick tips to get started.
The manual for OS8 V3D (the version used in the simulator) can be found on the DEC section of the 'bitsavers.org'site
Setting the date.
The date can be set using the 'DATE' or 'DA' command. It requires the date in the format dd-mon-yy. So the month should be spelled in it's three letter abbreviated form, and the field must be separated by dashes. Oh, and the year must be between 1970 and 1999...No year 2000 problem for the PDP-8.
TUESDAY NOVEMBER 21, 1978
Some good instructions on how to toggle a program are available on the RETROCMP site.
The site of Big Dan the Blogging Man has an excellent series of examples and step by step instructions on writing, assembling and running software on the PDP-8. Not everything seems to work as described though. Probably there are some differences in running the pure SIMH simulator and how it is implemented on the PiDP-8.
He describes how to enter, compile and start a simple program under OS/8. All steps as described work fine on the PiDP-8, except the running itself.
I've tried this program (from the DustyOldComputers site):
isz delay / create a delay jmp loop cla / clear AC so we can load it tad value / get value mql / stash AC into MQ tad value / fetch value again cma / complement AC isz value / get to next value nop / ignore possible "skip" from ISZ jmp loop / and do it all again delay, 0020 value, 0021
I saved it as 'BLINKR', and then compiled it using the following command:
Which is a shortcut for 'PAL BLINKR,BLINKR<BLINKR/H', and way easier to type...
This creates the BLINKR.LS file which can be viewed by typing: TYPE BLINKR.LS
loop, 0000 2020 isz delay / create a delay 0001 5000 jmp loop 0002 7200 cla / clear AC so we can load it 0003 1021 tad value / get value 0004 7421 mql / stash AC into MQ 0005 1021 tad value / fetch value again 0006 7040 cma / complement AC 0007 2021 isz value / get to next value 0010 7000 nop / ignore possible "skip" from ISZ 0011 5000 jmp loop / and do it all again delay, 0020 value, 0021
When you type 'LOAD PROG', followed by 'START' it will not work. Somehow the program gets loaded but is immediately overwritten by OS/8. Something you can see by exiting the emulator (Ctrl-E) and type 'ex 000-010'to examine the contents of the memory. None of the just loaded instructions are there. It will only work if you use the 'LOAD PROG/G' which starts the program immediately after loading.
The reason for this is explained by Rick Murphy on the forum:
If you return to OS/8 using a JMP to 7600, your program contents from location 0 to 1777 are saved to dedicated blocks on the system disk, then overwritten by the keyboard monitor. Those will be restored if you run certain commands.
If you halt and examine that memory space while OS/8 is at the "." prompt you're actually viewing the KBM.