PiDP-8/I Software

Hex Artifact Content
Log In

Artifact 6b39340a926a905a8b0c1957714cb6c5a1cdb3c9:


0000: 23 20 47 65 74 74 69 6e 67 20 53 74 61 72 74 65  # Getting Starte
0010: 64 20 77 69 74 68 20 74 68 65 20 50 69 44 50 2d  d with the PiDP-
0020: 38 2f 49 20 53 6f 66 74 77 61 72 65 0a 0a 23 23  8/I Software..##
0030: 20 50 72 65 72 65 71 75 69 73 69 74 65 73 0a 0a   Prerequisites..
0040: 2a 20 20 20 41 20 52 61 73 70 62 65 72 72 79 20  *   A Raspberry 
0050: 50 69 20 77 69 74 68 20 74 68 65 20 34 30 2d 70  Pi with the 40-p
0060: 69 6e 20 47 50 49 4f 20 63 6f 6e 6e 65 63 74 6f  in GPIO connecto
0070: 72 2e 20 54 68 61 74 20 72 75 6c 65 73 20 6f 75  r. That rules ou
0080: 74 20 74 68 65 0a 20 20 20 20 66 69 72 73 74 20  t the.    first 
0090: 73 65 72 69 65 73 20 6f 66 20 52 61 73 70 62 65  series of Raspbe
00a0: 72 72 79 20 50 69 20 62 6f 61 72 64 73 20 77 69  rry Pi boards wi
00b0: 74 68 20 74 68 65 20 32 36 2d 70 69 6e 20 63 6f  th the 26-pin co
00c0: 6e 6e 65 63 74 6f 72 2e 0a 0a 20 20 20 20 49 6e  nnector...    In
00d0: 20 6f 72 64 65 72 20 74 6f 20 75 73 65 20 74 68   order to use th
00e0: 65 20 73 74 61 6e 64 61 72 64 20 76 65 72 73 69  e standard versi
00f0: 6f 6e 20 6f 66 20 74 68 69 73 20 73 6f 66 74 77  on of this softw
0100: 61 72 65 2c 20 79 6f 75 20 6e 65 65 64 20 6f 6e  are, you need on
0110: 65 0a 20 20 20 20 6f 66 20 74 68 65 20 6d 75 6c  e.    of the mul
0120: 74 69 63 6f 72 65 20 76 61 72 69 61 6e 74 73 20  ticore variants 
0130: 6f 66 20 74 68 65 20 50 69 2e 20 53 65 65 0a 20  of the Pi. See. 
0140: 20 20 20 5b 60 52 45 41 44 4d 45 2d 73 69 6e 67     [`README-sing
0150: 6c 65 2d 63 6f 72 65 2e 6d 64 60 5d 5b 72 6d 73  le-core.md`][rms
0160: 63 5d 20 69 66 20 79 6f 75 20 68 61 76 65 20 61  c] if you have a
0170: 20 73 69 6e 67 6c 65 2d 63 6f 72 65 20 50 69 2e   single-core Pi.
0180: 0a 0a 2a 20 20 20 41 6e 20 53 44 20 63 61 72 64  ..*   An SD card
0190: 20 63 6f 6e 74 61 69 6e 69 6e 67 20 52 61 73 70   containing Rasp
01a0: 62 69 61 6e 20 6f 72 20 73 6f 6d 65 74 68 69 6e  bian or somethin
01b0: 67 20 73 75 66 66 69 63 69 65 6e 74 6c 79 20 63  g sufficiently c
01c0: 6c 6f 73 65 2e 0a 20 20 20 20 50 69 70 61 4f 53  lose..    PipaOS
01d0: 20 6d 61 79 20 61 6c 73 6f 20 77 6f 72 6b 2c 20   may also work, 
01e0: 66 6f 72 20 65 78 61 6d 70 6c 65 2e 20 20 54 68  for example.  Th
01f0: 69 73 20 73 6f 66 74 77 61 72 65 20 69 73 20 63  is software is c
0200: 75 72 72 65 6e 74 6c 79 0a 20 20 20 20 74 65 73  urrently.    tes
0210: 74 65 64 20 77 69 74 68 20 74 68 65 20 4a 65 73  ted with the Jes
0220: 73 69 65 20 4c 69 74 65 20 64 69 73 74 72 69 62  sie Lite distrib
0230: 75 74 69 6f 6e 2e 0a 0a 20 20 20 20 49 64 65 61  ution...    Idea
0240: 6c 6c 79 2c 20 79 6f 75 20 77 69 6c 6c 20 69 6e  lly, you will in
0250: 73 74 61 6c 6c 20 61 20 66 72 65 73 68 20 4f 53  stall a fresh OS
0260: 20 69 6d 61 67 65 20 6f 6e 74 6f 20 61 6e 20 75   image onto an u
0270: 6e 75 73 65 64 20 53 44 0a 20 20 20 20 63 61 72  nused SD.    car
0280: 64 20 72 61 74 68 65 72 20 74 68 61 6e 20 75 73  d rather than us
0290: 65 20 74 68 69 73 20 73 6f 66 74 77 61 72 65 20  e this software 
02a0: 74 6f 20 6d 6f 64 69 66 79 20 61 6e 20 65 78 69  to modify an exi
02b0: 73 74 69 6e 67 20 4f 53 0a 20 20 20 20 69 6e 73  sting OS.    ins
02c0: 74 61 6c 6c 61 74 69 6f 6e 2c 20 62 75 74 20 74  tallation, but t
02d0: 68 65 72 65 20 69 73 20 63 75 72 72 65 6e 74 6c  here is currentl
02e0: 79 20 6e 6f 20 6b 6e 6f 77 6e 20 68 61 72 64 20  y no known hard 
02f0: 69 6e 63 6f 6d 70 61 74 69 62 69 6c 74 79 0a 20  incompatibilty. 
0300: 20 20 20 74 68 61 74 20 70 72 65 76 65 6e 74 73     that prevents
0310: 20 79 6f 75 20 66 72 6f 6d 20 69 6e 74 65 67 72   you from integr
0320: 61 74 69 6e 67 20 74 68 69 73 20 73 6f 66 74 77  ating this softw
0330: 61 72 65 20 69 6e 74 6f 20 61 6e 0a 20 20 20 20  are into an.    
0340: 65 78 69 73 74 69 6e 67 20 4f 53 2e 0a 0a 2a 20  existing OS...* 
0350: 20 20 54 68 69 73 20 73 6f 66 74 77 61 72 65 20    This software 
0360: 64 69 73 74 72 69 62 75 74 69 6f 6e 2c 20 75 6e  distribution, un
0370: 70 61 63 6b 65 64 20 73 6f 6d 65 77 68 65 72 65  packed somewhere
0380: 20 63 6f 6e 76 65 6e 69 65 6e 74 0a 20 20 20 20   convenient.    
0390: 77 69 74 68 69 6e 20 74 68 65 20 52 61 73 70 62  within the Raspb
03a0: 65 72 72 79 20 50 69 20 66 69 6c 65 73 79 73 74  erry Pi filesyst
03b0: 65 6d 2e 0a 0a 20 20 20 20 55 6e 6c 69 6b 65 20  em...    Unlike 
03c0: 77 69 74 68 20 74 68 65 20 75 70 73 74 72 65 61  with the upstrea
03d0: 6d 20 32 30 31 35 2e 31 32 2e 31 35 20 72 65 6c  m 2015.12.15 rel
03e0: 65 61 73 65 2c 20 74 68 69 73 20 70 72 65 73 65  ease, this prese
03f0: 6e 74 20 72 65 6c 65 61 73 65 0a 20 20 20 20 6f  nt release.    o
0400: 66 20 74 68 65 20 73 6f 66 74 77 61 72 65 20 73  f the software s
0410: 68 6f 75 6c 64 20 2a 6e 6f 74 2a 20 62 65 20 75  hould *not* be u
0420: 6e 70 61 63 6b 65 64 20 69 6e 74 6f 20 60 2f 6f  npacked into `/o
0430: 70 74 2f 70 69 64 70 38 60 2e 20 49 0a 20 20 20  pt/pidp8`. I.   
0440: 20 72 65 63 6f 6d 6d 65 6e 64 20 74 68 61 74 20   recommend that 
0450: 79 6f 75 20 75 6e 70 61 63 6b 20 69 74 20 69 6e  you unpack it in
0460: 74 6f 20 60 24 48 4f 4d 45 2f 73 72 63 60 2c 20  to `$HOME/src`, 
0470: 60 2f 75 73 72 2f 6c 6f 63 61 6c 2f 73 72 63 60  `/usr/local/src`
0480: 0a 20 20 20 20 6f 72 20 73 69 6d 69 6c 61 72 2c  .    or similar,
0490: 20 62 75 74 20 69 74 20 72 65 61 6c 6c 79 20 64   but it really d
04a0: 6f 65 73 6e 27 74 20 6d 61 74 74 65 72 20 77 68  oesn't matter wh
04b0: 65 72 65 20 79 6f 75 20 70 75 74 20 69 74 2c 20  ere you put it, 
04c0: 61 73 0a 20 20 20 20 6c 6f 6e 67 20 61 73 20 79  as.    long as y
04d0: 6f 75 72 20 75 73 65 72 20 68 61 73 20 66 75 6c  our user has ful
04e0: 6c 20 77 72 69 74 65 20 61 63 63 65 73 73 20 74  l write access t
04f0: 6f 20 74 68 61 74 20 64 69 72 65 63 74 6f 72 79  o that directory
0500: 2e 0a 0a 2a 20 20 20 41 20 77 6f 72 6b 69 6e 67  ...*   A working
0510: 20 43 20 63 6f 6d 70 69 6c 65 72 20 61 6e 64 20   C compiler and 
0520: 6f 74 68 65 72 20 73 74 61 6e 64 61 72 64 20 4c  other standard L
0530: 69 6e 75 78 20 62 75 69 6c 64 20 74 6f 6f 6c 73  inux build tools
0540: 2c 20 73 75 63 68 20 61 73 0a 20 20 20 20 20 6d  , such as.     m
0550: 61 6b 65 28 31 29 2e 0a 0a 0a 23 23 20 43 6f 6e  ake(1)....## Con
0560: 66 69 67 75 72 69 6e 67 2c 20 42 75 69 6c 64 69  figuring, Buildi
0570: 6e 67 20 61 6e 64 20 49 6e 73 74 61 6c 6c 69 6e  ng and Installin
0580: 67 0a 0a 54 68 69 73 20 73 6f 66 74 77 61 72 65  g..This software
0590: 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 62 75   distribution bu
05a0: 69 6c 64 73 20 61 6e 64 20 69 6e 73 74 61 6c 6c  ilds and install
05b0: 73 20 69 6e 20 74 68 65 20 73 61 6d 65 20 77 61  s in the same wa
05c0: 79 20 61 73 20 6d 6f 73 74 0a 6f 74 68 65 72 20  y as most.other 
05d0: 4c 69 6e 75 78 2f 55 6e 69 78 20 73 6f 66 74 77  Linux/Unix softw
05e0: 61 72 65 20 74 68 65 73 65 20 64 61 79 73 2e 20  are these days. 
05f0: 20 54 68 65 20 73 68 6f 72 74 2d 61 6e 64 2d 73   The short-and-s
0600: 77 65 65 74 20 69 73 3a 0a 0a 20 20 20 20 24 20  weet is:..    $ 
0610: 2e 2f 63 6f 6e 66 69 67 75 72 65 20 26 26 20 6d  ./configure && m
0620: 61 6b 65 20 26 26 20 73 75 64 6f 20 6d 61 6b 65  ake && sudo make
0630: 20 69 6e 73 74 61 6c 6c 0a 0a 49 66 20 79 6f 75   install..If you
0640: 20 67 65 74 20 61 20 63 6f 6d 70 6c 61 69 6e 74   get a complaint
0650: 20 6c 69 6b 65 20 22 4e 6f 20 77 6f 72 6b 69 6e   like "No workin
0660: 67 20 43 20 63 6f 6d 70 69 6c 65 72 20 66 6f 75  g C compiler fou
0670: 6e 64 2c 22 20 74 68 65 72 65 20 61 72 65 20 74  nd," there are t
0680: 77 6f 0a 6c 69 6b 65 6c 79 20 63 61 75 73 65 73  wo.likely causes
0690: 2e 20 4f 6e 65 20 69 73 20 74 68 61 74 20 74 68  . One is that th
06a0: 65 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 20  e error message 
06b0: 69 73 20 6c 69 74 65 72 61 6c 6c 79 20 63 6f 72  is literally cor
06c0: 72 65 63 74 3a 20 79 6f 75 0a 64 6f 6e 27 74 20  rect: you.don't 
06d0: 68 61 76 65 20 61 20 43 20 63 6f 6d 70 69 6c 65  have a C compile
06e0: 72 20 69 6e 73 74 61 6c 6c 65 64 2e 20 59 6f 75  r installed. You
06f0: 20 63 61 6e 20 69 6e 73 74 61 6c 6c 20 6f 6e 65   can install one
0700: 20 61 6c 6f 6e 67 20 77 69 74 68 20 61 6c 6c 0a   along with all.
0710: 74 68 65 20 6f 74 68 65 72 20 6e 65 63 65 73 73  the other necess
0720: 61 72 79 20 62 75 69 6c 64 20 74 6f 6f 6c 73 20  ary build tools 
0730: 77 69 74 68 3a 0a 0a 20 20 20 20 24 20 73 75 64  with:..    $ sud
0740: 6f 20 61 70 74 20 69 6e 73 74 61 6c 6c 20 62 75  o apt install bu
0750: 69 6c 64 2d 65 73 73 65 6e 74 69 61 6c 0a 0a 54  ild-essential..T
0760: 68 65 20 6f 74 68 65 72 20 70 6f 73 73 69 62 69  he other possibi
0770: 6c 69 74 79 20 69 73 20 74 68 61 74 20 79 6f 75  lity is that you
0780: 20 68 61 76 65 20 73 6f 6d 65 68 6f 77 20 6d 61   have somehow ma
0790: 6e 61 67 65 64 20 74 6f 20 75 6e 70 61 63 6b 20  naged to unpack 
07a0: 74 68 65 0a 73 6f 66 74 77 61 72 65 20 69 6e 74  the.software int
07b0: 6f 20 61 20 64 69 72 65 63 74 6f 72 79 20 74 68  o a directory th
07c0: 61 74 20 79 6f 75 20 64 6f 6e 27 74 20 68 61 76  at you don't hav
07d0: 65 20 77 72 69 74 65 20 61 63 63 65 73 73 20 74  e write access t
07e0: 6f 2c 20 73 75 63 68 20 61 73 0a 62 79 20 75 6e  o, such as.by un
07f0: 70 61 63 6b 69 6e 67 20 69 74 20 76 69 61 20 60  packing it via `
0800: 73 75 64 6f 60 2e 20 54 68 65 20 73 6f 6c 75 74  sudo`. The solut
0810: 69 6f 6e 20 69 73 20 74 6f 20 65 69 74 68 65 72  ion is to either
0820: 20 74 61 6b 65 20 6f 77 6e 65 72 73 68 69 70 20   take ownership 
0830: 6f 66 0a 74 68 61 74 20 64 69 72 65 63 74 6f 72  of.that director
0840: 79 20 6f 72 20 74 6f 20 75 6e 70 61 63 6b 20 69  y or to unpack i
0850: 74 20 61 67 61 69 6e 2c 20 74 68 69 73 20 74 69  t again, this ti
0860: 6d 65 20 73 6f 6d 65 77 68 65 72 65 20 79 6f 75  me somewhere you
0870: 72 20 75 73 65 72 20 69 73 0a 61 6c 6c 6f 77 65  r user is.allowe
0880: 64 20 74 6f 20 77 72 69 74 65 20 74 6f 2e 0a 0a  d to write to...
0890: 54 68 65 20 60 63 6f 6e 66 69 67 75 72 65 60 20  The `configure` 
08a0: 73 63 72 69 70 74 20 61 63 63 65 70 74 73 20 6d  script accepts m
08b0: 6f 73 74 20 6f 66 20 74 68 65 20 63 6f 6d 6d 6f  ost of the commo
08c0: 6e 20 66 6c 61 67 73 20 66 6f 72 20 73 75 63 68  n flags for such
08d0: 0a 73 63 72 69 70 74 73 2e 20 20 50 65 72 68 61  .scripts.  Perha
08e0: 70 73 20 74 68 65 20 6d 6f 73 74 20 69 6d 70 6f  ps the most impo
08f0: 72 74 61 6e 74 20 73 75 63 68 20 66 6c 61 67 20  rtant such flag 
0900: 69 73 20 60 2d 2d 70 72 65 66 69 78 60 2c 20 77  is `--prefix`, w
0910: 68 69 63 68 0a 6c 65 74 73 20 79 6f 75 20 6f 76  hich.lets you ov
0920: 65 72 72 69 64 65 20 74 68 65 20 64 65 66 61 75  erride the defau
0930: 6c 74 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20  lt installation 
0940: 64 69 72 65 63 74 6f 72 79 2c 20 60 2f 6f 70 74  directory, `/opt
0950: 2f 70 69 64 70 38 69 60 2e 0a 59 6f 75 20 63 6f  /pidp8i`..You co
0960: 75 6c 64 20 6d 61 6b 65 20 69 74 20 69 6e 73 74  uld make it inst
0970: 61 6c 6c 20 74 68 65 20 73 6f 66 74 77 61 72 65  all the software
0980: 20 75 6e 64 65 72 20 79 6f 75 72 20 68 6f 6d 65   under your home
0990: 20 64 69 72 65 63 74 6f 72 79 20 6f 6e 0a 74 68   directory on.th
09a0: 65 20 50 69 20 77 69 74 68 20 74 68 69 73 20 63  e Pi with this c
09b0: 6f 6d 6d 61 6e 64 3a 0a 0a 20 20 20 20 24 20 2e  ommand:..    $ .
09c0: 2f 63 6f 6e 66 69 67 75 72 65 20 2d 2d 70 72 65  /configure --pre
09d0: 66 69 78 3d 24 48 4f 4d 45 2f 70 69 64 70 38 69  fix=$HOME/pidp8i
09e0: 20 26 26 20 73 75 64 6f 20 6d 61 6b 65 20 69 6e   && sudo make in
09f0: 73 74 61 6c 6c 0a 0a 59 6f 75 20 73 74 69 6c 6c  stall..You still
0a00: 20 6e 65 65 64 20 74 68 65 20 60 73 75 64 6f 60   need the `sudo`
0a10: 20 69 6e 20 74 68 69 73 20 63 61 73 65 2c 20 65   in this case, e
0a20: 76 65 6e 20 74 68 6f 75 67 68 20 74 68 65 20 69  ven though the i
0a30: 6e 73 74 61 6c 6c 61 74 69 6f 6e 0a 70 72 65 66  nstallation.pref
0a40: 69 78 20 69 73 20 61 20 64 69 72 65 63 74 6f 72  ix is a director
0a50: 79 20 79 6f 75 72 20 75 73 65 72 20 68 61 73 20  y your user has 
0a60: 77 72 69 74 65 20 61 63 63 65 73 73 20 74 6f 2c  write access to,
0a70: 20 62 65 63 61 75 73 65 20 74 68 65 0a 69 6e 73   because the.ins
0a80: 74 61 6c 6c 61 74 69 6f 6e 20 70 72 6f 63 65 73  tallation proces
0a90: 73 20 64 6f 65 73 20 6f 74 68 65 72 20 74 68 69  s does other thi
0aa0: 6e 67 73 20 74 68 61 74 20 64 6f 20 72 65 71 75  ngs that do requ
0ab0: 69 72 65 20 60 72 6f 6f 74 60 20 61 63 63 65 73  ire `root` acces
0ac0: 73 2e 0a 0a 52 75 6e 20 60 2e 2f 63 6f 6e 66 69  s...Run `./confi
0ad0: 67 75 72 65 20 2d 2d 68 65 6c 70 60 20 66 6f 72  gure --help` for
0ae0: 20 6d 6f 72 65 20 69 6e 66 6f 72 6d 61 74 69 6f   more informatio
0af0: 6e 20 6f 6e 20 79 6f 75 72 20 6f 70 74 69 6f 6e  n on your option
0b00: 73 20 68 65 72 65 2e 0a 0a 54 68 65 20 69 6e 73  s here...The ins
0b10: 74 61 6c 6c 65 72 20 6e 6f 72 6d 61 6c 6c 79 20  taller normally 
0b20: 77 69 6c 6c 20 6e 6f 74 20 6f 76 65 72 77 72 69  will not overwri
0b30: 74 65 20 74 68 65 20 6f 70 65 72 61 74 69 6e 67  te the operating
0b40: 20 73 79 73 74 65 6d 20 61 6e 64 0a 70 72 6f 67   system and.prog
0b50: 72 61 6d 20 6d 65 64 69 61 20 28 65 2e 67 2e 20  ram media (e.g. 
0b60: 74 68 65 20 4f 53 2f 38 20 52 4b 30 35 20 64 69  the OS/8 RK05 di
0b70: 73 6b 20 63 61 72 74 72 69 64 67 65 20 69 6d 61  sk cartridge ima
0b80: 67 65 29 20 77 68 65 6e 20 69 6e 73 74 61 6c 6c  ge) when install
0b90: 69 6e 67 0a 6d 75 6c 74 69 70 6c 65 20 74 69 6d  ing.multiple tim
0ba0: 65 73 20 74 6f 20 74 68 65 20 73 61 6d 65 20 6c  es to the same l
0bb0: 6f 63 61 74 69 6f 6e 2e 20 49 66 20 79 6f 75 20  ocation. If you 
0bc0: 64 6f 20 77 61 6e 74 20 74 68 65 20 4f 53 2f 70  do want the OS/p
0bd0: 72 6f 67 72 61 6d 20 6d 65 64 69 61 0a 6f 76 65  rogram media.ove
0be0: 72 77 72 69 74 74 65 6e 20 77 69 74 68 20 66 72  rwritten with fr
0bf0: 65 73 68 20 63 6f 70 69 65 73 2c 20 73 61 79 3a  esh copies, say:
0c00: 0a 0a 20 20 20 20 24 20 73 75 64 6f 20 6d 61 6b  ..    $ sudo mak
0c10: 65 20 6d 65 64 69 61 69 6e 73 74 61 6c 6c 0a 0a  e mediainstall..
0c20: 54 68 69 73 20 63 61 6e 20 62 65 20 68 65 6c 70  This can be help
0c30: 66 75 6c 20 69 66 20 79 6f 75 20 68 61 76 65 20  ful if you have 
0c40: 64 61 6d 61 67 65 64 20 79 6f 75 72 20 4f 53 2f  damaged your OS/
0c50: 70 72 6f 67 72 61 6d 20 6d 65 64 69 61 20 6f 72  program media or
0c60: 20 73 69 6d 70 6c 79 0a 77 61 6e 74 20 74 6f 20   simply.want to 
0c70: 72 65 74 75 72 6e 20 74 6f 20 74 68 65 20 70 72  return to the pr
0c80: 69 73 74 69 6e 65 20 76 65 72 73 69 6f 6e 73 20  istine versions 
0c90: 61 73 20 64 69 73 74 72 69 62 75 74 65 64 2e 0a  as distributed..
0ca0: 0a 0a 23 23 20 54 68 65 20 53 65 72 69 61 6c 20  ..## The Serial 
0cb0: 4d 6f 64 0a 0a 49 66 20 79 6f 75 20 68 61 76 65  Mod..If you have
0cc0: 20 64 6f 6e 65 20 74 68 65 20 5b 73 65 72 69 61   done the [seria
0cd0: 6c 20 6d 6f 64 5d 5b 73 6d 6f 64 5d 20 74 6f 20  l mod][smod] to 
0ce0: 79 6f 75 72 20 50 69 44 50 2d 38 2f 49 20 50 43  your PiDP-8/I PC
0cf0: 42 20 61 6e 64 20 74 68 65 0a 52 61 73 70 62 65  B and the.Raspbe
0d00: 72 72 79 20 50 69 20 79 6f 75 20 68 61 76 65 20  rry Pi you have 
0d10: 63 6f 6e 6e 65 63 74 65 64 20 74 6f 20 69 74 2c  connected to it,
0d20: 20 61 64 64 20 60 2d 2d 73 65 72 69 61 6c 2d 6d   add `--serial-m
0d30: 6f 64 60 20 74 6f 20 74 68 65 0a 60 63 6f 6e 66  od` to the.`conf
0d40: 69 67 75 72 65 60 20 63 6f 6d 6d 61 6e 64 20 61  igure` command a
0d50: 62 6f 76 65 2e 0a 0a 49 66 20 79 6f 75 20 64 6f  bove...If you do
0d60: 20 6e 6f 74 20 67 69 76 65 20 74 68 69 73 20 66   not give this f
0d70: 6c 61 67 20 61 74 20 60 63 6f 6e 66 69 67 75 72  lag at `configur
0d80: 65 60 20 74 69 6d 65 20 77 69 74 68 20 74 68 65  e` time with the
0d90: 73 65 20 68 61 72 64 77 61 72 65 0a 6d 6f 64 69  se hardware.modi
0da0: 66 69 63 61 74 69 6f 6e 73 20 69 6e 20 70 6c 61  fications in pla
0db0: 63 65 2c 20 74 68 65 20 66 72 6f 6e 74 20 70 61  ce, the front pa
0dc0: 6e 65 6c 20 77 69 6c 6c 20 6e 6f 74 20 77 6f 72  nel will not wor
0dd0: 6b 20 63 6f 72 72 65 63 74 6c 79 2c 0a 61 6e 64  k correctly,.and
0de0: 20 74 72 79 69 6e 67 20 74 6f 20 72 75 6e 20 74   trying to run t
0df0: 68 65 20 73 6f 66 74 77 61 72 65 20 6d 61 79 20  he software may 
0e00: 65 76 65 6e 20 63 72 61 73 68 20 74 68 65 20 50  even crash the P
0e10: 69 2e 0a 0a 49 66 20 79 6f 75 20 67 69 76 65 20  i...If you give 
0e20: 74 68 69 73 20 66 6c 61 67 20 61 6e 64 20 79 6f  this flag and yo
0e30: 75 72 20 50 43 42 73 20 61 72 65 20 2a 6e 6f 74  ur PCBs are *not
0e40: 2a 20 6d 6f 64 69 66 69 65 64 2c 20 6d 6f 73 74  * modified, most
0e50: 20 6f 66 20 74 68 65 0a 68 61 72 64 77 61 72 65   of the.hardware
0e60: 20 77 69 6c 6c 20 77 6f 72 6b 20 63 6f 72 72 65   will work corre
0e70: 63 74 6c 79 2c 20 62 75 74 20 73 65 76 65 72 61  ctly, but severa
0e80: 6c 20 6c 69 67 68 74 73 20 61 6e 64 20 73 77 69  l lights and swi
0e90: 74 63 68 65 73 20 77 69 6c 6c 0a 6e 6f 74 20 77  tches will.not w
0ea0: 6f 72 6b 20 63 6f 72 72 65 63 74 6c 79 2e 0a 0a  ork correctly...
0eb0: 0a 23 23 20 54 65 73 74 69 6e 67 0a 0a 59 6f 75  .## Testing..You
0ec0: 20 63 61 6e 20 74 65 73 74 20 79 6f 75 72 20 50   can test your P
0ed0: 69 44 50 2d 38 2f 49 20 4c 45 44 20 61 6e 64 20  iDP-8/I LED and 
0ee0: 73 77 69 74 63 68 20 66 75 6e 63 74 69 6f 6e 73  switch functions
0ef0: 20 77 69 74 68 20 74 68 65 0a 60 70 69 64 70 38   with the.`pidp8
0f00: 69 2d 74 65 73 74 60 20 70 72 6f 67 72 61 6d 2e  i-test` program.
0f10: 20 49 74 20 77 69 6c 6c 20 62 65 20 69 6e 20 74   It will be in t
0f20: 68 65 20 60 50 41 54 48 60 20 61 66 74 65 72 20  he `PATH` after 
0f30: 69 6e 73 74 61 6c 6c 69 6e 67 20 74 68 65 0a 73  installing the.s
0f40: 6f 66 74 77 61 72 65 2e 0a 0a 54 68 69 73 20 70  oftware...This p
0f50: 72 6f 67 72 61 6d 20 63 61 6e 6e 6f 74 20 72 75  rogram cannot ru
0f60: 6e 20 77 68 69 6c 65 20 74 68 65 20 50 69 44 50  n while the PiDP
0f70: 2d 38 2f 49 20 73 69 6d 75 6c 61 74 6f 72 20 69  -8/I simulator i
0f80: 73 20 72 75 6e 6e 69 6e 67 20 69 6e 20 74 68 65  s running in the
0f90: 0a 62 61 63 6b 67 72 6f 75 6e 64 2e 20 54 68 65  .background. The
0fa0: 72 65 66 6f 72 65 2c 20 62 65 66 6f 72 65 20 72  refore, before r
0fb0: 75 6e 6e 69 6e 67 20 69 74 2c 20 73 61 79 3a 0a  unning it, say:.
0fc0: 0a 20 20 20 20 24 20 73 75 64 6f 20 73 79 73 74  .    $ sudo syst
0fd0: 65 6d 63 74 6c 20 73 74 6f 70 20 70 69 64 70 38  emctl stop pidp8
0fe0: 69 0a 0a 59 6f 75 20 6d 61 79 20 68 61 76 65 20  i..You may have 
0ff0: 74 6f 20 6c 6f 67 20 6f 75 74 20 61 6e 64 20 62  to log out and b
1000: 61 63 6b 20 69 6e 20 66 6f 72 20 74 68 69 73 20  ack in for this 
1010: 74 6f 20 77 6f 72 6b 2c 20 73 69 6e 63 65 20 74  to work, since t
1020: 68 65 0a 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20  he.installation 
1030: 73 63 72 69 70 74 20 6d 6f 64 69 66 69 65 73 20  script modifies 
1040: 79 6f 75 72 20 6e 6f 72 6d 61 6c 20 75 73 65 72  your normal user
1050: 27 73 20 60 50 41 54 48 60 20 73 69 6e 63 65 20  's `PATH` since 
1060: 74 68 65 20 6e 6f 72 6d 61 6c 0a 69 6e 73 74 61  the normal.insta
1070: 6c 6c 61 74 69 6f 6e 20 70 72 65 66 69 78 20 69  llation prefix i
1080: 73 20 6e 6f 74 20 69 6e 20 74 68 65 20 73 74 6f  s not in the sto
1090: 63 6b 20 52 61 73 70 62 69 61 6e 20 75 73 65 72  ck Raspbian user
10a0: 20 60 50 41 54 48 60 2e 0a 0a 53 65 65 20 5b 60   `PATH`...See [`
10b0: 52 45 41 44 4d 45 2d 74 65 73 74 2e 6d 64 60 5d  README-test.md`]
10c0: 5b 72 6d 74 5d 20 66 6f 72 20 6d 6f 72 65 20 64  [rmt] for more d
10d0: 65 74 61 69 6c 73 2e 0a 0a 0a 23 23 20 55 73 69  etails....## Usi
10e0: 6e 67 20 74 68 65 20 53 6f 66 74 77 61 72 65 0a  ng the Software.
10f0: 0a 46 6f 72 20 74 68 65 20 6d 6f 73 74 20 70 61  .For the most pa
1100: 72 74 2c 20 74 68 69 73 20 73 6f 66 74 77 61 72  rt, this softwar
1110: 65 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 77  e distribution w
1120: 6f 72 6b 73 20 6c 69 6b 65 20 74 68 65 20 75 70  orks like the up
1130: 73 74 72 65 61 6d 0a 5b 32 30 31 35 2e 31 32 2e  stream.[2015.12.
1140: 31 35 20 64 69 73 74 72 69 62 75 74 69 6f 6e 5d  15 distribution]
1150: 5b 75 73 64 5d 2e 20 49 74 73 20 5b 64 6f 63 75  [usd]. Its [docu
1160: 6d 65 6e 74 61 74 69 6f 6e 5d 5b 70 72 6a 5d 20  mentation][prj] 
1170: 74 68 65 72 65 66 6f 72 65 0a 64 65 73 63 72 69  therefore.descri
1180: 62 65 73 20 74 68 69 73 20 73 6f 66 74 77 61 72  bes this softwar
1190: 65 20 74 6f 6f 2c 20 66 6f 72 20 74 68 65 20 6d  e too, for the m
11a0: 6f 73 74 20 70 61 72 74 2e 0a 0a 54 68 65 20 6c  ost part...The l
11b0: 61 72 67 65 73 74 20 75 73 65 72 2d 76 69 73 69  argest user-visi
11c0: 62 6c 65 20 64 69 66 66 65 72 65 6e 63 65 20 62  ble difference b
11d0: 65 74 77 65 65 6e 20 74 68 65 20 74 77 6f 20 73  etween the two s
11e0: 6f 66 74 77 61 72 65 0a 64 69 73 74 72 69 62 75  oftware.distribu
11f0: 74 69 6f 6e 73 20 69 73 20 74 68 61 74 20 61 6c  tions is that al
1200: 6c 20 6f 66 20 74 68 65 20 73 68 65 6c 6c 20 63  l of the shell c
1210: 6f 6d 6d 61 6e 64 73 20 61 66 66 65 63 74 69 6e  ommands affectin
1220: 67 20 74 68 65 20 73 6f 66 74 77 61 72 65 0a 77  g the software.w
1230: 65 72 65 20 72 65 6e 61 6d 65 64 20 74 6f 20 69  ere renamed to i
1240: 6e 63 6c 75 64 65 20 60 70 69 64 70 38 69 60 20  nclude `pidp8i` 
1250: 69 6e 20 74 68 65 69 72 20 6e 61 6d 65 3a 0a 0a  in their name:..
1260: 31 2e 20 20 54 6f 20 73 74 61 72 74 20 74 68 65  1.  To start the
1270: 20 73 69 6d 75 6c 61 74 6f 72 3a 0a 0a 20 20 20   simulator:..   
1280: 20 20 20 20 20 24 20 73 75 64 6f 20 73 79 73 74       $ sudo syst
1290: 65 6d 63 74 6c 20 73 74 61 72 74 20 70 69 64 70  emctl start pidp
12a0: 38 69 0a 0a 20 20 20 20 28 54 68 69 73 20 6e 6f  8i..    (This no
12b0: 72 6d 61 6c 6c 79 20 68 61 70 70 65 6e 73 20 61  rmally happens a
12c0: 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 6f 6e 20  utomatically on 
12d0: 72 65 62 6f 6f 74 20 61 66 74 65 72 20 60 73 75  reboot after `su
12e0: 64 6f 20 6d 61 6b 65 20 69 6e 73 74 61 6c 6c 60  do make install`
12f0: 0a 20 20 20 20 61 62 6f 76 65 2c 20 62 75 74 20  .    above, but 
1300: 79 6f 75 20 6d 61 79 20 68 61 76 65 20 74 68 65  you may have the
1310: 20 73 65 72 76 69 63 65 20 73 74 6f 70 70 65 64   service stopped
1320: 20 6f 72 20 64 69 73 61 62 6c 65 64 2c 20 73 75   or disabled, su
1330: 63 68 20 61 73 0a 20 20 20 20 69 6e 20 6f 72 64  ch as.    in ord
1340: 65 72 20 74 6f 20 72 75 6e 20 6f 6e 65 20 6f 66  er to run one of
1350: 20 74 68 65 20 76 61 72 69 6f 75 73 20 5b 66 6f   the various [fo
1360: 72 6b 73 20 6f 66 20 44 65 65 70 65 72 20 54 68  rks of Deeper Th
1370: 6f 75 67 68 74 5d 5b 64 74 32 5d 2e 29 0a 0a 32  ought][dt2].)..2
1380: 2e 20 20 54 6f 20 65 6e 74 65 72 20 74 68 65 20  .  To enter the 
1390: 73 69 6d 75 6c 61 74 6f 72 3a 0a 0a 20 20 20 20  simulator:..    
13a0: 20 20 20 20 24 20 70 69 64 70 38 69 0a 0a 20 20      $ pidp8i..  
13b0: 20 20 54 68 69 73 20 77 6f 72 6b 73 20 62 65 63    This works bec
13c0: 61 75 73 65 20 60 24 70 72 65 66 69 78 2f 62 69  ause `$prefix/bi
13d0: 6e 60 20 69 73 20 61 64 64 65 64 20 74 6f 20 74  n` is added to t
13e0: 68 65 20 69 6e 73 74 61 6c 6c 69 6e 67 20 75 73  he installing us
13f0: 65 72 27 73 0a 20 20 20 20 60 50 41 54 48 60 20  er's.    `PATH` 
1400: 6f 6e 20 60 6d 61 6b 65 20 69 6e 73 74 61 6c 6c  on `make install
1410: 60 2e 20 20 54 68 69 73 20 73 63 72 69 70 74 20  `.  This script 
1420: 64 6f 65 73 20 74 68 65 20 73 61 6d 65 20 74 68  does the same th
1430: 69 6e 67 20 61 73 0a 20 20 20 20 60 70 64 70 2e  ing as.    `pdp.
1440: 73 68 60 20 69 6e 20 74 68 65 20 75 70 73 74 72  sh` in the upstr
1450: 65 61 6d 20 64 69 73 74 72 69 62 75 74 69 6f 6e  eam distribution
1460: 2e 0a 0a 33 2e 20 20 54 6f 20 72 65 74 75 72 6e  ...3.  To return
1470: 20 74 6f 20 74 68 65 20 52 61 73 70 62 69 61 6e   to the Raspbian
1480: 20 63 6f 6d 6d 61 6e 64 20 70 72 6f 6d 70 74 20   command prompt 
1490: 77 69 74 68 6f 75 74 20 73 68 75 74 74 69 6e 67  without shutting
14a0: 20 74 68 65 0a 20 20 20 20 73 69 6d 75 6c 61 74   the.    simulat
14b0: 6f 72 20 64 6f 77 6e 2c 20 74 79 70 65 20 3c 6b  or down, type <k
14c0: 62 64 3e 43 74 72 6c 2d 41 20 64 3c 2f 6b 62 64  bd>Ctrl-A d</kbd
14d0: 3e 2e 20 54 68 65 6e 20 79 6f 75 20 63 61 6e 20  >. Then you can 
14e0: 72 65 2d 65 6e 74 65 72 0a 20 20 20 20 77 69 74  re-enter.    wit
14f0: 68 20 61 20 60 70 69 64 70 38 69 60 20 63 6f 6d  h a `pidp8i` com
1500: 6d 61 6e 64 2e 0a 0a 34 2e 20 20 54 6f 20 73 68  mand...4.  To sh
1510: 75 74 20 74 68 65 20 73 69 6d 75 6c 61 74 6f 72  ut the simulator
1520: 20 64 6f 77 6e 20 66 72 6f 6d 20 77 69 74 68 69   down from withi
1530: 6e 2c 20 74 79 70 65 20 3c 6b 62 64 3e 43 74 72  n, type <kbd>Ctr
1540: 6c 2d 45 3c 2f 6b 62 64 3e 0a 20 20 20 20 74 6f  l-E</kbd>.    to
1550: 20 70 61 75 73 65 20 74 68 65 20 73 69 6d 75 6c   pause the simul
1560: 61 74 6f 72 2c 20 74 68 65 6e 20 61 74 20 74 68  ator, then at th
1570: 65 20 60 73 69 6d 68 3e 60 20 70 72 6f 6d 70 74  e `simh>` prompt
1580: 20 74 79 70 65 0a 20 20 20 20 60 71 75 69 74 60   type.    `quit`
1590: 2e 20 54 79 70 65 20 60 68 65 6c 70 60 20 61 74  . Type `help` at
15a0: 20 74 68 61 74 20 70 72 6f 6d 70 74 20 74 6f 20   that prompt to 
15b0: 67 65 74 20 73 6f 6d 65 20 69 64 65 61 20 6f 66  get some idea of
15c0: 20 77 68 61 74 0a 20 20 20 20 65 6c 73 65 20 79   what.    else y
15d0: 6f 75 20 63 61 6e 20 64 6f 20 77 69 74 68 20 74  ou can do with t
15e0: 68 65 20 73 69 6d 75 6c 61 74 6f 72 20 63 6f 6d  he simulator com
15f0: 6d 61 6e 64 20 6c 61 6e 67 75 61 67 65 2c 20 6f  mand language, o
1600: 72 20 72 65 61 64 20 74 68 65 0a 20 20 20 20 5b  r read the.    [
1610: 53 69 6d 48 20 55 73 65 72 73 27 20 47 75 69 64  SimH Users' Guid
1620: 65 5d 5b 73 64 6f 63 5d 2e 0a 0a 35 2e 20 20 54  e][sdoc]...5.  T
1630: 6f 20 73 68 75 74 20 74 68 65 20 73 69 6d 75 6c  o shut the simul
1640: 61 74 6f 72 20 64 6f 77 6e 20 66 72 6f 6d 20 74  ator down from t
1650: 68 65 20 52 61 73 70 62 69 61 6e 20 63 6f 6d 6d  he Raspbian comm
1660: 61 6e 64 20 6c 69 6e 65 3a 0a 0a 20 20 20 20 20  and line:..     
1670: 20 20 20 24 20 73 75 64 6f 20 73 79 73 74 65 6d     $ sudo system
1680: 63 74 6c 20 73 74 6f 70 20 70 69 64 70 38 69 0a  ctl stop pidp8i.
1690: 0a 54 68 65 20 6f 74 68 65 72 20 6d 61 6a 6f 72  .The other major
16a0: 20 64 69 66 66 65 72 65 6e 63 65 20 62 65 74 77   difference betw
16b0: 65 65 6e 20 74 68 65 20 75 70 73 74 72 65 61 6d  een the upstream
16c0: 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 61 6e   distribution an
16d0: 64 20 74 68 69 73 0a 6f 6e 65 20 69 73 20 74 68  d this.one is th
16e0: 61 74 20 74 68 65 72 65 20 69 73 20 6e 6f 20 73  at there is no s
16f0: 65 70 61 72 61 74 65 20 69 6e 73 74 61 6c 6c 20  eparate install 
1700: 73 63 72 69 70 74 2e 20 54 68 65 20 60 6d 61 6b  script. The `mak
1710: 65 20 69 6e 73 74 61 6c 6c 60 0a 63 6f 6d 6d 61  e install`.comma
1720: 6e 64 20 79 6f 75 20 72 61 6e 20 61 62 6f 76 65  nd you ran above
1730: 20 64 69 64 20 65 76 65 72 79 74 68 69 6e 67 20   did everything 
1740: 66 6f 72 20 79 6f 75 2e 0a 0a 0a 0a 5b 73 6d 6f  for you.....[smo
1750: 64 5d 3a 20 68 74 74 70 3a 2f 2f 6f 62 73 6f 6c  d]: http://obsol
1760: 65 73 63 65 6e 63 65 2e 77 69 78 73 69 74 65 2e  escence.wixsite.
1770: 63 6f 6d 2f 6f 62 73 6f 6c 65 73 63 65 6e 63 65  com/obsolescence
1780: 2f 32 30 31 36 2d 70 69 64 70 2d 38 2d 62 75 69  /2016-pidp-8-bui
1790: 6c 64 69 6e 67 2d 69 6e 73 74 72 75 63 74 69 6f  lding-instructio
17a0: 6e 73 0a 5b 75 73 64 5d 3a 20 20 68 74 74 70 3a  ns.[usd]:  http:
17b0: 2f 2f 6f 62 73 6f 6c 65 73 63 65 6e 63 65 2e 77  //obsolescence.w
17c0: 69 78 73 69 74 65 2e 63 6f 6d 2f 6f 62 73 6f 6c  ixsite.com/obsol
17d0: 65 73 63 65 6e 63 65 2f 70 69 64 70 2d 38 2d 64  escence/pidp-8-d
17e0: 65 74 61 69 6c 73 0a 5b 64 74 32 5d 3a 20 20 68  etails.[dt2]:  h
17f0: 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f  ttps://github.co
1800: 6d 2f 56 65 6e 74 75 72 65 4b 69 6e 67 2f 44 65  m/VentureKing/De
1810: 65 70 65 72 2d 54 68 6f 75 67 68 74 2d 32 0a 5b  eper-Thought-2.[
1820: 73 64 6f 63 5d 3a 20 68 74 74 70 3a 2f 2f 73 69  sdoc]: http://si
1830: 6d 68 2e 74 72 61 69 6c 69 6e 67 2d 65 64 67 65  mh.trailing-edge
1840: 2e 63 6f 6d 2f 70 64 66 2f 73 69 6d 68 5f 64 6f  .com/pdf/simh_do
1850: 63 2e 70 64 66 0a 5b 70 72 6a 5d 3a 20 20 68 74  c.pdf.[prj]:  ht
1860: 74 70 3a 2f 2f 6f 62 73 6f 6c 65 73 63 65 6e 63  tp://obsolescenc
1870: 65 2e 77 69 78 73 69 74 65 2e 63 6f 6d 2f 6f 62  e.wixsite.com/ob
1880: 73 6f 6c 65 73 63 65 6e 63 65 2f 70 69 64 70 2d  solescence/pidp-
1890: 38 0a 5b 72 6d 74 5d 3a 20 20 2f 64 6f 63 2f 74  8.[rmt]:  /doc/t
18a0: 72 75 6e 6b 2f 52 45 41 44 4d 45 2d 74 65 73 74  runk/README-test
18b0: 2e 6d 64 0a 5b 72 6d 73 63 5d 3a 20 2f 64 6f 63  .md.[rmsc]: /doc
18c0: 2f 74 72 75 6e 6b 2f 52 45 41 44 4d 45 2d 73 69  /trunk/README-si
18d0: 6e 67 6c 65 2d 63 6f 72 65 2e 6d 64 0a           ngle-core.md.