PiDP-8/I SoftwareCheck-in [ecff080a2b]
Not logged in

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Clarified the "motivation" at the top of doc/os8-run.md
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256:ecff080a2bbbcb990553806fee52e6c3911ddf8337174cb88602338e1593386d
User & Date: tangent 2019-05-17 11:25:52
Context
2019-05-18
20:29
Assorted tweaks to doc/OS-images.md check-in: b20ee14442 user: tangent tags: trunk
2019-05-17
11:25
Clarified the "motivation" at the top of doc/os8-run.md check-in: ecff080a2b user: tangent tags: trunk
2019-05-15
18:35
Grammar fix check-in: 0a67aee2f9 user: tangent tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to doc/os8-run.md.

17
18
19
20
21
22
23
24
25
26
27

28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
    rather than being a mysterious product of history, most of which
    happened before the OS/8 media came under version control.

*   The build products can be [tested][tm], because the process is
    purposefully done in a way that it is [reproducible][rb].

*   Because `mkos8` is written in Python, we have a full-strength
    scripting language for making the build conditional.  As of the
    2017.12.22 release, there are potentially 65536 different build
    configurations, whereas the old manual process produced just one
    OS/8 system disk image.


That process worked fine for the limited scope of problem it was meant to
cover: creation of an OS/8 V3D RK05 image meant for use with SIMH's PDP-8
simulator, which was configured in a very particular way. It doesn't solve
a number of related problems that should be simple extensions to the idea:

*   What if we want a different version of OS/8, such as V3F?

*   When running under SIMH, there is little practical difference between
    its `DT` and `TD` devices for driving an emulated TU56 tape drive:
    the default is almost certainly fine, since it's compatible with
    the whole range of PDP-8 computers, and thus software for PDP-8
    computers.  But, what if you've got a real PDP-8/e computer with a
    real TU56 tape drive, which means you're using the TD8E interface, not
    the TC08 that SIMH's PDP-8 simulator defaults to using?  That `BUILD`
    output will not work on your hardware.

*   The same basic problem has additional complications when what's
    changed in the `BUILD` is the system device type, such as from an
    RK05 to an RL01 or RX02.

*   How do we make it drive other tools not already hard-coded into
    `mkos8` or its underlying helper library?

Shortly after release 2017.12.22 came out, Bill Cattey began work on
`os8-run` to solve these problems. This new tool implements a scripting
language and a lot of new underlying functionality so that we can not







|
<
<
|
>








|
|
|
|
|
|
|
|
<
<
<
<







17
18
19
20
21
22
23
24


25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42




43
44
45
46
47
48
49
    rather than being a mysterious product of history, most of which
    happened before the OS/8 media came under version control.

*   The build products can be [tested][tm], because the process is
    purposefully done in a way that it is [reproducible][rb].

*   Because `mkos8` is written in Python, we have a full-strength
    scripting language for making the build conditional. The old manual


    process produced just one OS/8 system disk image, but the new scheme
    can now produce tens of thousands of different configurations.

That process worked fine for the limited scope of problem it was meant to
cover: creation of an OS/8 V3D RK05 image meant for use with SIMH's PDP-8
simulator, which was configured in a very particular way. It doesn't solve
a number of related problems that should be simple extensions to the idea:

*   What if we want a different version of OS/8, such as V3F?

*   What if we want this to happen on a storage device other than an
    RK05? Other common boot devices choices are RL01, RX02, and TD8E,
    and they all have consequences in the way you build the media.

*   What if we’re building media targeted at specific real PDP-8
    hardware, and thus need certain non-default choices for OS/8 device
    drivers? SIMH can be soft-reconfigured to accommodate whatever
    `mkos8` put out, but real hardware is what it is.





*   How do we make it drive other tools not already hard-coded into
    `mkos8` or its underlying helper library?

Shortly after release 2017.12.22 came out, Bill Cattey began work on
`os8-run` to solve these problems. This new tool implements a scripting
language and a lot of new underlying functionality so that we can not