Updated README for V5 UNIX.
[simh-images] / pdp11-V5_UNIX / README.md
CommitLineData
a5f69761
AT
1# Overview #
2
3This directory contains a V5 UNIX system image for use with the PDP-11
4simulator included in SIMH. The image was taken from a PDP-11/45 with an RK05
5disk (2.4 MB).
6
7V5 UNIX was the first version licensed widely outside AT&T, largely due to
8[Thompson and Ritchie's CACM
9paper](https://www.bell-labs.com/usr/dmr/www/cacm.html) that had recently
10introduced UNIX to the world.
11
12Version 5 still only targeted PDP-11s, but expanded to include those models
13with an 18-bit physical address space, compared to the 16-bit address space of
14previous models. This allowed up to 256 kB of RAM and greatly increased the
15capabilities of the system, needed as UNIX reached "above 50" installations at
16the time of this release.
17
18This is the second release of UNIX written in C, a language still in flux that
19had only existed for a couple years. The system is self-hosting using the
20included compiler but there are many differences from modern C visible in the
21on-disk source code.
22
23Old enough to predate the Bourne shell from Steve Bourne, V5 UNIX ships with
24the Thompson shell written by Ken Thompson. This was the first UNIX shell,
25mainly a command interpreter rather than the interpreted language that most
26UNIX shells became. Intentionally minimal, commands like `if` and `goto` are
27implemented as separate executables rather than as built-in shell commands. This
28shell was replaced by the Bourne shell in V7 UNIX and by the C shell in 2BSD,
29leading to its rapid decline in popularity.
30
31Several now common commands were first introduced in this release, including
32`dd`, `pwd`, and `wump` (Hunt the Wumpus). At this stage it's starting to
38c87eaf 33*feel* like a UNIX system, though we must remember that `cd` is still `chdir`.
a5f69761
AT
34
35Then there's the editor, `ed`. A UNIX classic, it's a little like using `vi`
36with your eyes shut. If you've never used it before, check out my [guide to
37ed](https://subgeniuskitty.com/development/pdp-11/guide-to-ed-text-editor).
38
39
40# Status #
41
42Fully tested on SIMH 3.9-0.
43
44
45# Instructions #
46
47
48## Power On ##
49
50To power up a simulated PDP-11/45 and run this V5 UNIX disk image, simply
51un-gzip the disk image file and start up SIMH with the provided configuration
52file.
53
54 % gunzip unix_v5_rk.dsk.gz
55 % pdp11 simh.conf
56
57 PDP-11 simulator V3.9-0
58 Disabling XQ
59 .
60 .Type kernel filename at the '@' prompt.
61 .For example: @unix.
62 .UNIX username is 'root'.
63 .No password.
64 .
65 @
66
67The `@` prompt is from the bootloader, to whom we must pass a file to continue
68the boot process. Our kernel is a file named `unix`, so type that here followed
69by `ENTER`.
70
71 @unix
72
73 ;login:
74
75The system has now booted up and you may login as `root` (no password).
76
77 ;login: root
78 #
79
80That's it! V5 UNIX is up and you're logged in.
81
82
83## Power Off ##
84
85To power off, assuming you are logged in as `root` and the system is otherwise
86inactive, use the `sync` command to flush any buffers to disk and then type
87`Ctrl-e` to halt the simulation and `quit` to exit SIMH.
88
89 # sync; sync
90 # <Ctrl-e>
91 Simulation stopped, PC: 001726 (MOV (SP)+,177776)
92 sim> quit
93 Goodbye
94
95Note that you can also press `Ctrl-e` at any time and SIMH will halt the PDP-11
96simulation and drop to the `sim>` prompt where you can exit. However, doing
97this is likely to corrupt a disk as it is equivalent to yanking the power cord
98from the wall. To resume from the `sim>` prompt, simply type `go` and execution
38c87eaf 99will resume from where it left off.
a5f69761
AT
100
101
102## Transfer Files ##
103
38c87eaf 104One may output via the line printer, or input/output via the paper tape.
a5f69761
AT
105The relevant options to enable that hardware in SIMH are commented out in
106`simh.conf`.
107
108When offline, it is possible to mount the disk image and interact with it
109directly. For example, use
110<https://git.subgeniuskitty.com/pdp11-unix-fusefs/.git>.