Uit Hack42
Code for the pdp8/f
for this machine
this code is for the machine in the configuration we got it in.
OS8/SYKES Bootstrap Loader
Pasted on paper on the back of the pdp8 8/e 8/f 8/m Pocket Reference Card
Addr | instr | comment |
---|---|---|
0400 | 1230 | - |
0401 | 6321 | - |
0402 | 6321 | - |
0403 | 7600 | - |
0404 | 6322 | - |
0405 | 5204 | - |
0406 | 6324 | - |
0407 | 7106 | - |
0410 | 7006 | - |
0411 | 3233 | - |
0412 | 6322 | - |
0413 | 5212 | - |
0414 | 6324 | - |
0415 | 7012 | - |
0416 | 7012 | - |
0417 | 0217 | - |
0420 | 1233 | - |
0421 | 3132 | - |
0422 | 2332 | very faint.. |
0423 | 2331 | barely readable |
0424 | 5204 | - |
0425 | 1203 | - |
0426 | 6321 | - |
0427 | 5014 | faint could be 5017 |
0430 | 0401 | faint. |
0431 | ? | writing completely gone |
0432 | ? | writing completely gone |
code to dump the core of field 0 to a serial port
There are some jumps because of faulty memory locations. that is why the start address is 176o.
*176 /LOCATE PROGRAM STARTING AT ADDR 200
CLA CLL /CLEAR ACCUMULATOR /CLEAR AC LINK
NOP // bad memory
DCA TMP1 /STORE THAT (0) IN TMP1
NOP // bad memory
MAIN, NOP
TAD TMP1 // load TMP1
JMS PRINTNUM // print dit nummer
CLA CLL
TAD SPACE
JMS TTYO // output to tty0
TAD I TMP1 // indirect laden van TMP1
JMS PRINTNUM // print dit nummer
TAD TMP1 // load TMP1
IAC // INCREMENT 1
DCA TMP1
TAD CR
JMS TTYO // output to tty0
CLA CLL
TAD LF
JMS TTYO // output to tty0
JMP MAIN // tada.wav
PRINTNUM, NOP
DCA TMP3 // store this in tmp3
TAD TMP3 // get it.
RAR
RTR
RTR
RTR
JMS STUK
NOP
HEEL, NOP
CLA CLL // clear AC
TAD TMP3 // load TMP3
RTR
RTR
RTR // 6 bitwise shift
JMS PLUS // xor met 0070
JMS TTYO // output to tty0
CLA CLL // clear AC
TAD TMP3 // load TMP3
RAR
RTR // 3 bitwise shift
JMS PLUS // xor met 0070
JMS TTYO // output to tty0
CLA CLL // clear AC
TAD TMP3 // load TMP3
JMS PLUS // xor met 0070
JMS TTYO // output to tty0
JMP I PRINTNUM
PLUS, NOP
AND AND7
TAD PLUS60
JMP I PLUS
TTYO, NOP /TTY OUTPUT ROUTINE. THE FIRST WORD OF
/A SUBROUTINE MUST BE EMPTY (0) BECAUSE
/THE JMS INSTRUCTION INSERTS THE RETURN
/ADDR IN THIS WORD.
6446 /WRITE AC TO THE OUTPUT DEVICE (TTY)
6441 /IF TTY IS READY, SKIP NEXT INSTRUCTION.
JMP .-1 /TTY IS NOT READY, SO CHECK AGAIN
CLA /CLEAR AC
NOP // Memory broken
JMP I TTYO /RETURN TO CALLER
PLUS60, 60
TMP1, 0
TMP3, 0
SPACE, 40
LF, 12
CR, 15
AND7, 7
NOP // Memory broken
STUK, NOP
RTR // 9 bitwise shift
JMS PLUS // xor met 0070
JMS TTYO // output to tty0
JMP HEEL
$