Releases: metebalci/muir-sys
Release list
System 1001
System 1001
A deep cleanup of System 1000, and the faults found while making it. What
will never be used is gone, not commented out, and git keeps the history.
docs/release-1001.md
lists every change, one by one.
The band in the pack was compiled by the system from the sources in
release-1001-sys.tar.gz, made into a cold load, loaded with QLD and saved.
What changed
Removed, 38 fewer source files and about 21,000 fewer lines:
- Machines other than the CADR: all of the Lambda and the Explorer, their
processor tests, their NuBus and SDU code, their Ethernet and its microcode,
and the 28 instruction declarations the CADR's microcode never implemented. - Hosts it does not talk to: ITS, TOPS-20, Tenex, Twenex, VMS and Multics
pathnames and hosts, and LMFILE. What remains is UNIX, the local file
system, and logical hosts. - Hardware nobody here has: the Xerox Press and Dover printing path with
EFTP, the XGP printer, the keyboard and PROM firmware tools, the wire-wrap
board tester and the Votrax speech demos. - Patches. This system makes releases, never patches, so the machinery
that loaded and wrote them is gone, with the editor's commands for it. The
version the herald prints is kept, and so is the patch directory it lives in. - Other dialects: MacLisp and NIL conditionals,
STATUSandSSTATUS,
and the compatibility macros; about 400 reader conditionals resolved to what
a CADR reads, with no change to the code the reader produces. - Dead weight: files no system loaded, disabled blocks, duplicate copies,
obsolete names nothing called, and notes that described a machine that is
not here.
Fixed, each with its reason in the source:
- The last of MIT's own unfinished notes are answered.
- The error handler saves and restores a stack group's property list again,
and returns to single-instruction stepping from a foothold. - A property of a function spec that is not a symbol, such as which file a
method came from, can be read back again. - Over TELNET:
~%sends CR LF, a session whose first input is Return no
longer breaks, a line read no longer traps, and a question answered wrongly
asks again instead of failing. - The who line shows what a running process is doing, not NIL.
- The microcode assembler writes the diagnostic microcode files correctly.
New: a cold load can be driven without a console. It asks the file server
for SYS: SITE; COLDRUN LISP and evaluates what it finds, so a build can hand
it (SI:QLD) and the save with no screen. It reports its progress with MINI's
new opcode 204, which ozd 8c816e5 or later writes to its log.
Assets
| File | Bytes | SHA-256 |
|---|---|---|
release-1001-pack.img.gz |
6,908,903 | 7ddf071b28a6e8b14fe0501683458ee8ae640291751e2c306e35316ee15ba713 |
release-1001-sys.tar.gz |
4,344,048 | 507d1fe89e8a8890a42c4a8630ef5eddb058fbebebc4c66df7e33ea708a42269 |
The uncompressed pack, release-1001-pack.img, is 269,562,880 bytes with
SHA-256 279e597891a0d8263a82d52898dbc2194e7c0f19cbca194d8aaf5750226b7298.
- The pack is named LISPM-1 and laid out as muir's
diskpack initialize
makes it: MCR1 and MCR2, PAGE, and LOD1 to LOD4. Only two partitions are
loaded: MCR1, "UCADR 323", the microcode, written from the assembled
sys/ubin/ucadr.mcr, and LOD1, "Exp 1001", the band. Both are current. - The sources unpack to
release-1001/: the whole repository from
git archiveof tagrelease-1001(commit
d0d68ded90548b375d25bfcfae01710e8da583be;sys/is git tree
94b40800ad8146b39be75d39f5254b581ba06e01), plussys/ubin/: the
assembled microcode, boot PROM and diagnostic microcode, which the error
handler reads at run time and a rebuild needs. site/in the sources is the site the band was built with. It is an
example to copy and readdress; a band built for another site loads that
site's files.
Verification
Built on 2026-09-22 and 23 on muir 3457a56's micro engine with ozd
8c816e5. The clean SYSTEM compile took 2h27m30s, MAKE-COLD 5m33s, and the
unattended QLD 25m26s. Every QFASL was compiled by a band whose site is MIT, and
reassembling the microcode from sys/ucadr/ reproduced ucadr.mcr, .tbl,
.locs and .sym byte for byte.
The saved band passed version, site, SYS file-access and arithmetic checks,
and WORMCH matched its AST source. A copy of the compressed pack, with the
sources extracted from the archive, booted as "MIT System, band 1 of LISPM-1",
System 1001, microcode 323, and read SYS files from those sources. Both loaded
partitions of the release pack match the build pack, and every unused
partition, PAGE included, is zero. The checksummed pack itself has never been
booted.
Running it
The band expects its site's Chaosnet: subnet 376, with its file, time and host
table server OZ at 177200 and the machine LISPM-1 at 177201.
gunzip release-1001-pack.img.gz
tar -xzf release-1001-sys.tar.gz
mkdir lispm
ozd --address 177200 --name OZ,system=UNIX \
--root sys=$PWD/release-1001/sys --root site=$PWD/release-1001/site \
--root lispm=$PWD/lispm \
--host 177201,LISPM-1,system=LISPM --peer 177201@127.0.0.1:42043 \
--tcp 127.0.0.1:2323,TELNET@177201
muir --micro --disk-pack release-1001-pack.img \
--chaos-address 177201 --chaos-udp 42043 \
--chaos-udp-peer 177200@127.0.0.1:42042 --chaos-udp-default-peer 127.0.0.1:42042
The machine boots to "MIT System, band 1 of LISPM-1" and "Experimental System
1001". muir serves the screen, keyboard and mouse over RFB, for any VNC viewer
(muir --help, --terminal), and telnet 127.0.0.1 2323 reaches its Lisp
listener through ozd. Log in with (login "LISPM" "OZ" t) before touching
files.
Upgrading from System 1000
Nothing carries over between bands: a release is a whole band, and there are
no patches. Take the new pack. The 28 unimplemented instruction declarations
are gone, freeing octal 732-737, 761-767 and 1100-1116, and MINI has opcode
204. The microcode is unchanged, 323.
Licence
GNU Affero General Public License, version 3 or later. LICENSE and NOTICE
are in the sources tarball; NOTICE gives the sources' provenance and every
copyright notice in the tree that is not MIT's.
System 1000
System 1000
System 100 fixed and cleaned up: the same sources and microcode 323, the
faults that stopped it rebuilding itself repaired, the material that is not
MIT's left out. It continues where System 100 left off.
docs/release-1000.md
lists every change.
The band in the pack was compiled by the system from the sources in
release-1000-sys.tar.gz, made into a cold load, loaded with QLD and saved.
What changed
- It rebuilds itself. The fault that stopped a cold load in silence and
MINI's two stream faults are fixed. The band is compiled by the system
itself, and the microcode is assembled from its sources. - The network: the routing table covers every subnet, and MINI finds its
file server by itself. - Fixes from LM-3's later work. LM-3 went on from System 100 to releases
300 through 304. Those are not taken whole, because much of them is LMI and
System 130 material; instead 36 of LM-3's bug fixes are taken one at a
time, each read against this tree before it was applied: in the cold-load
builder, the compiler, pathnames and the file client, Chaosnet, the window
system and ZWEI.
docs/upstream-changes.md
records every ruling. - About forty faults are fixed across the tree.
- Gone: the tape, LMFILE and Xerox printing systems. Only System is
patchable, and what is not MIT's, or not wanted, was never imported. - The site is named MIT, as System 100 has it, so the herald says "MIT
System". Only the name is taken: the hosts are this site's own, numbered
from the first address of subnet 376, OZ at 177200 and LISPM-1 at 177201.
Assets
| File | Bytes | SHA-256 |
|---|---|---|
release-1000-pack.img.gz |
7,092,250 | 3a7a9ed31a342ccd1d8b21390b39243e977068c036f023a84e5f3177b74a6c4f |
release-1000-sys.tar.gz |
4,515,833 | 939193ba71cb2b9e59616ee232f918cf727e5480f414c904ecb777baf498a823 |
The uncompressed pack, release-1000-pack.img, is 269,562,880 bytes with
SHA-256 358716ee112c37eb292c6b812851039bd3eafad050d025cd42e84cd90a0536e1.
- The pack is named LISPM-1 and laid out as muir's
diskpack initialize
makes it: MCR1 and MCR2, PAGE, and LOD1 to LOD4. Only two partitions are
loaded: MCR1, "UCADR 323", the microcode, written from the assembled
sys/ubin/ucadr.mcr, and LOD1, "Exp 1000", the band. Both are current. - The sources unpack to
release-1000/: the system alone,sys/and
site/withLICENSEandNOTICE, bygit archiveof tagrelease-1000
(commit660c7ac7bcb18b4c648ffb7ce42cf0222800fc58;sys/is git tree
becbfd439179e5ac13cd7e991aa03295f09ba337), plussys/ubin/: the
microcode, boot PROM and diagnostic microcode, which the error handler reads
at run time and a rebuild needs. The build procedure and the change record
are in the repository'sdocs/. site/in the sources is the site the band was built with. It is an
example to copy and readdress; a band built for another site loads that
site's files.
Verification
Built on 2026-09-22 and 23 on muir 3457a56's micro engine with ozd
8c816e5. The clean SYSTEM compile took 2h27m, MAKE-COLD 6m45s, and QLD,
typed at the cold load's console, loaded the world to a partition size of
20842 blocks. Every QFASL was compiled by a band whose site is MIT, and
reassembling the microcode from sys/ucadr/ reproduced ucadr.mcr, .tbl
and .locs byte for byte, and .sym line for line.
The saved band passed version, site, SYS file-access and arithmetic checks,
and WORMCH matched its AST source. A copy of the compressed pack, with the
sources extracted from the archive, booted as "MIT System, band 1 of LISPM-1",
System 1000, microcode 323, and read SYS files from those sources. Both loaded
partitions of the release pack match the build pack, and every unused
partition, PAGE included, is zero. The checksummed pack itself has never been
booted.
Running it
The band expects its site's Chaosnet: subnet 376, with its file, time and host
table server OZ at 177200 and the machine LISPM-1 at 177201.
gunzip release-1000-pack.img.gz
tar -xzf release-1000-sys.tar.gz
mkdir lispm
ozd --address 177200 --name OZ,system=UNIX \
--root sys=$PWD/release-1000/sys --root site=$PWD/release-1000/site \
--root lispm=$PWD/lispm \
--host 177201,LISPM-1,system=LISPM --peer 177201@127.0.0.1:42043 \
--tcp 127.0.0.1:2323,TELNET@177201
muir --micro --disk-pack release-1000-pack.img \
--chaos-address 177201 --chaos-udp 42043 \
--chaos-udp-peer 177200@127.0.0.1:42042 --chaos-udp-default-peer 127.0.0.1:42042
The machine boots to "MIT System, band 1 of LISPM-1" and "Experimental System
1000". muir serves the screen, keyboard and mouse over RFB, for any VNC viewer
(muir --help, --terminal), and telnet 127.0.0.1 2323 reaches its Lisp
listener through ozd. Log in with (login "LISPM" "OZ" t) before touching
files.
Licence
GNU Affero General Public License, version 3 or later. LICENSE and NOTICE
are in the sources tarball; NOTICE gives the sources' provenance and every
copyright notice in the tree that is not MIT's.