diff --git a/tools/oskit/211bsd_rpeth/.gitignore b/tools/oskit/211bsd_rpeth/.gitignore new file mode 100644 index 00000000..24426de9 --- /dev/null +++ b/tools/oskit/211bsd_rpeth/.gitignore @@ -0,0 +1,4 @@ +*.dat +*hook.tcl +*license.txt +*license.pdf diff --git a/tools/oskit/211bsd_rpeth/211bsd_rpeth_boot.scmd b/tools/oskit/211bsd_rpeth/211bsd_rpeth_boot.scmd new file mode 100644 index 00000000..17668379 --- /dev/null +++ b/tools/oskit/211bsd_rpeth/211bsd_rpeth_boot.scmd @@ -0,0 +1,29 @@ +; $Id: 211bsd_rpeth_boot.scmd 899 2017-05-27 13:25:41Z mueller $ +; +; Setup file for 211bsd RP06 based system with ethernet +; +; Usage: +; +; ip_create_tap +; +; pdp11 211bsd_rpnet_boot.scmd +; +do ../../simh/setup_w11a_max.scmd +set tto 7b +set dlo0 7b +; +set rp0 rp06 +set rp1 rp06 +; +set rl0 rl02 +set rl1 rl02 +set rl2 rl02 +set rl3 rl02 +; +set xu enabled +set xu type=deuna +att xu0 tap:tap0 +; +att rp0 211bsd_rpeth.dsk +; +boo rp0 diff --git a/tools/oskit/211bsd_rpeth/211bsd_rpeth_boot.tcl b/tools/oskit/211bsd_rpeth/211bsd_rpeth_boot.tcl new file mode 100644 index 00000000..814e0a66 --- /dev/null +++ b/tools/oskit/211bsd_rpeth/211bsd_rpeth_boot.tcl @@ -0,0 +1,37 @@ +# $Id: 211bsd_rpeth_boot.tcl 899 2017-05-27 13:25:41Z mueller $ +# +# Setup file for 211bsd RP06 based system with ethernet +# +# Usage: +# +# ip_create_tap +# +# console_starter -d DL0 & +# console_starter -d DL1 & +# +# ti_w11 -xxx @211bsd_rpeth_boot.tcl ( -xxx depends on sim or fpga connect) +# + +# setup w11 cpu +rutil::dohook "preinithook" +puts [rlw] + +# setup tt,lp (211bsd uses parity -> use 7 bit mode) +rw11::setup_tt "cpu0" to7bit 1 +rw11::setup_lp + +# mount disks +cpu0rpa0 set type rp06 +cpu0rpa1 set type rp06 + +cpu0rpa0 att 211bsd_rpeth.dsk + +# setup network +cpu0xua set type deuna +cpu0xua set dpa retro:00 + +cpu0xua0 att tap:tap0 + +# and boot +rutil::dohook "preboothook" +cpu0 boot rpa0 diff --git a/tools/oskit/211bsd_rpeth/CHANGELOG.md b/tools/oskit/211bsd_rpeth/CHANGELOG.md new file mode 100644 index 00000000..d37f9755 --- /dev/null +++ b/tools/oskit/211bsd_rpeth/CHANGELOG.md @@ -0,0 +1,20 @@ +# Changelog for 211bsd_rpeth oskit + +## 2017-05-26: initial system setup +Derived from the [211bsd_rp](../211bsd_rp/CHANGELOG.md). A new kernel with +``` + NETHER 1 # was 0, enable ethernet + NDE 1 # was 0, enable DEUNA + NSL 1 # was 1, remove slip +``` + +In /etc/netstart the networking is enabled with +``` +hostname=w11a +netmask=255.255.255.0 +broadcast=192.168.2.255 +default=192.168.2.1 +... +ifconfig de0 inet netmask $netmask $hostname broadcast $broadcast +route add default $default 1 +``` diff --git a/tools/oskit/211bsd_rpeth/README.md b/tools/oskit/211bsd_rpeth/README.md new file mode 100644 index 00000000..55a0653f --- /dev/null +++ b/tools/oskit/211bsd_rpeth/README.md @@ -0,0 +1,141 @@ +## Notes on oskit: 2.11BSD system on a RP06 volume with Ethernet + +### General remarks +See notes in [w11a_os_guide.md](../../../doc/w11a_os_guide.md) on + 1. I/O emulation setup + 2. FPGA Board setup + 3. Rlink and Backend Server setup + 4. Legal terms + +### System properties and intended usage +This system is build with Ethernet based networking via a DEUNA network +interface. The kernel is configured with +``` + NETHER 1 # ethernet support + NDE 1 # DEUNA interface driver + NSL 0 # no slip available +``` + +### History +For history see [CHANGELOG.md](CHANGELOG.md). + +### Installation +A disk set is available from +http://www.retro11.de/data/oc_w11/oskits/211bsd_rpethset.tgz + +Download, unpack and copy the disk images (*.dsk), e.g. +```bash + cd $RETROBASE/tools/oskit/211bsd_rpeth/ + wget http://www.retro11.de/data/oc_w11/oskits/211bsd_rpethset.tgz + tar -xzf 211bsd_rpethset.tgz +``` + +### Usage + +- Setup Ethernet environment, see [211bsd_ethernet.md](../doc/211bsd_ethernet.md) +- Start backend server and boot system + (see section Rlink in [w11a_os_guide.md](../../../doc/w11a_os_guide.md)) + ``` + boot script: 211bsd_rpeth_boot.tcl + example: ti_w11 @211bsd_rpeth_boot.tcl + where is the proper option set for the board. + ``` + +- Hit `` in the `xterm` window to connnect to backend server. + The boot dialog in the console `xterm` window will look like + (required input is in `{..}`, with `{}` denoting a carriage return: + ``` + 70Boot from xp(0,0,0) at 0176700 + : {} + : xp(0,0,0)unix + Boot: bootdev=05000 bootcsr=0176700 + + 2.11 BSD UNIX #1: Fri May 26 12:50:05 PDT 2017 + root@w11a:/usr/src/sys/RETRONFPETH + + phys mem = 3932160 + avail mem = 3451968 + user mem = 307200 + + May 26 12:53:10 init: configure system + + dz ? csr 160100 vector 310 skipped: No CSR. + lp 0 csr 177514 vector 200 attached + rk 0 csr 177400 vector 220 attached + rl 0 csr 174400 vector 160 attached + tm 0 csr 172520 vector 224 attached + xp 0 csr 176700 vector 254 attached + cn 1 csr 176500 vector 300 attached + erase, kill ^U, intr ^C + ``` + + In first `'#'` prompt the system is in single-user mode. Just enter a `^D` + to continue the system startup to multi-user mode: + ``` + #^D + Fast boot ... skipping disk checks + checking quotas: done. + Assuming NETWORKING system ... + add host w11a: gateway localhost + add net default: gateway 192.168.2.1 + starting system logger + checking for core dump... + preserving editor files + clearing /tmp + standard daemons: update cron accounting. + starting network daemons: inetd printer. + starting local daemons:Fri May 26 12:53:20 PDT 2017 + May 26 12:53:20 w11a init: kernel security level changed from 0 to 1 + + + 2.11 BSD UNIX (w11a) (console) + + login: + ``` + + The login prompt is sometimes mangled with system messages, if its not + visible just hit `` to get a fresh one. + ``` + login: {root} + erase, kill ^U, intr ^C + ``` + + Now the system is in multi-user mode, daemons runnng. You can explore + the system, e.g. with a `pstat -T` or a `mount` command. The second + `xterm` can be activated too, it will connect to a second emulated DL11. + At the end is important to shutdown properly with a `halt`: + ``` + # {pstat -T} + 43/186 files + 59/208 inodes + 11/150 processes + 10/ 46 texts active, 36 used + 2/135 swapmap entries, 525 kB used, 3654 kB free, 3648 kB max + 32/150 coremap entries, 2661 kB free, 2586 kB max + 1/ 10 ub_map entries, 7 free, 7 max + # {mount} + /dev/xp0a on / + /dev/xp0c on /tmp + /dev/xp0d on /home + /dev/xp0e on /usr + # {halt} + syncing disks... done + halting + ``` + + While the system was running the server process display the + ``` + cpu0> + ``` + + prompt. When the w11 has halted after 211bsd shutdown a message like + ``` + + CPU down attention + Processor registers and status: + PS: 030350 cm,pm=k,u s,p,t=0,7,0 NZVC=1000 rust: 01 HALTed + R0: 177560 R1: 010330 R2: 056172 R3: 000010 + R4: 005000 R5: 147510 SP: 147466 PC: 000014 + ``` + + will be visible. Now the server process can be stopped with `^D`. diff --git a/tools/oskit/211bsd_rpmin/.gitignore b/tools/oskit/211bsd_rpmin/.gitignore new file mode 100644 index 00000000..24426de9 --- /dev/null +++ b/tools/oskit/211bsd_rpmin/.gitignore @@ -0,0 +1,4 @@ +*.dat +*hook.tcl +*license.txt +*license.pdf diff --git a/tools/oskit/211bsd_rpmin/211bsd_rpmin_boot.scmd b/tools/oskit/211bsd_rpmin/211bsd_rpmin_boot.scmd new file mode 100644 index 00000000..752145b4 --- /dev/null +++ b/tools/oskit/211bsd_rpmin/211bsd_rpmin_boot.scmd @@ -0,0 +1,25 @@ +; $Id: 211bsd_rpmin_boot.scmd 899 2017-05-27 13:25:41Z mueller $ +; +; Setup file for 211bsd RP06 based minimal memory system +; +; Usage: +; +; pdp11 211bsd_rpmin_boot.scmd +; +do ../../simh/setup_w11a_max.scmd +set cpu 512k +; +set tto 7b +set dlo0 7b +; +set rp0 rp06 +set rp1 rp06 +; +set rl0 rl02 +set rl1 rl02 +set rl2 rl02 +set rl3 rl02 +; +att rp0 211bsd_rp512_simh.dsk +; +boo rp0 diff --git a/tools/oskit/211bsd_rpmin/211bsd_rpmin_boot.tcl b/tools/oskit/211bsd_rpmin/211bsd_rpmin_boot.tcl new file mode 100644 index 00000000..989dff02 --- /dev/null +++ b/tools/oskit/211bsd_rpmin/211bsd_rpmin_boot.tcl @@ -0,0 +1,28 @@ +# $Id: 211bsd_rpmin_boot.tcl 899 2017-05-27 13:25:41Z mueller $ +# +# Setup file for 211bsd RP06 based minimal memory system +# +# Usage: +# +# console_starter -d DL0 & +# console_starter -d DL1 & +# ti_w11 -xxx @211bsd_rpmin_boot.tcl ( -xxx depends on sim or fpga connect) +# + +# setup w11 cpu +rutil::dohook "preinithook" +puts [rlw] + +# setup tt,lp (211bsd uses parity -> use 7 bit mode) +rw11::setup_tt "cpu0" to7bit 1 +rw11::setup_lp + +# mount disks +cpu0rpa0 set type rp06 +cpu0rpa1 set type rp06 + +cpu0rpa0 att 211bsd_rpmin.dsk + +# and boot +rutil::dohook "preboothook" +cpu0 boot rpa0 diff --git a/tools/oskit/211bsd_rpmin/CHANGELOG.md b/tools/oskit/211bsd_rpmin/CHANGELOG.md new file mode 100644 index 00000000..7162e70a --- /dev/null +++ b/tools/oskit/211bsd_rpmin/CHANGELOG.md @@ -0,0 +1,11 @@ +# Changelog for 211bsd_rpmin oskit + +## 2017-05-26: initial system setup +Derived from the [211bsd_rp](../211bsd_rp/CHANGELOG.md). Just a new kernel with +``` + NBUF 40 # was 160 + MAXUSERS 10 # was 10 + NPTY 8 # was 16 + INET NO # was YES, no networking + NSL 1 # was 1, remove network drivers +``` diff --git a/tools/oskit/211bsd_rpmin/README.md b/tools/oskit/211bsd_rpmin/README.md new file mode 100644 index 00000000..b906b7ea --- /dev/null +++ b/tools/oskit/211bsd_rpmin/README.md @@ -0,0 +1,140 @@ +## Notes on oskit: 2.11BSD system on a RP06 volume - minimal memory system + +### General remarks +See notes in [w11a_os_guide.md](../../../doc/w11a_os_guide.md) on + 1. I/O emulation setup + 2. FPGA Board setup + 3. Rlink and Backend Server setup + 4. Legal terms + +### System properties and intended usage +This system is created for usage on systems with limited memory. The +kernel is configured with +``` + NBUF 40 # only 60 blocks disk cache (usual is 160) + MAXUSERS 10 # this reduces number of file, process, ... slots + INET NO # no networking available +``` + +The system will boot on as little as 512 kB memory. Will work reasonably with +640 kB if only one or two sessions are active. Usage of `tcsh` should be +avoided because it has a large memory footprint. + +### History +For history see [CHANGELOG.md](CHANGELOG.md). + +### Installation +A disk set is available from +http://www.retro11.de/data/oc_w11/oskits/211bsd_rpminset.tgz + +Download, unpack and copy the disk images (*.dsk), e.g. +```bash + cd $RETROBASE/tools/oskit/211bsd_rpmin/ + wget http://www.retro11.de/data/oc_w11/oskits/211bsd_rpminset.tgz + tar -xzf 211bsd_rpminset.tgz +``` + +### Usage + +- Start backend server and boot system + (see section Rlink in [w11a_os_guide.md](../../../doc/w11a_os_guide.md)) + ``` + boot script: 211bsd_rpmin_boot.tcl + example: ti_w11 @211bsd_rpmin_boot.tcl + where is the proper option set for the board. + ``` + +- Hit `` in the `xterm` window to connnect to backend server. + The boot dialog in the console `xterm` window will look like + (required input is in `{..}`, with `{}` denoting a carriage return: + ``` + 70Boot from xp(0,0,0) at 0176700 + : {} + : xp(0,0,0)unix + Boot: bootdev=05000 bootcsr=0176700 + + 2.11 BSD UNIX #1: Fri May 26 12:48:54 PDT 2017 + root@w11a:/usr/src/sys/RETRONFPMIN + + phys mem = 3932160 + avail mem = 3721408 + user mem = 307200 + + May 26 12:49:35 init: configure system + + dz ? csr 160100 vector 310 skipped: No CSR. + lp 0 csr 177514 vector 200 attached + rk 0 csr 177400 vector 220 attached + rl 0 csr 174400 vector 160 attached + tm 0 csr 172520 vector 224 attached + xp 0 csr 176700 vector 254 attached + cn 1 csr 176500 vector 300 attached + erase, kill ^U, intr ^C + ``` + + In first `'#'` prompt the system is in single-user mode. Just enter a `^D` + to continue the system startup to multi-user mode: + ``` + #^D + Fast boot ... skipping disk checks + checking quotas: done. + Assuming non-networking system ... + checking for core dump... + preserving editor files + clearing /tmp + standard daemons: update cron accounting. + starting lpd + starting local daemons:Fri May 26 12:50:44 PDT 2017 + + + 2.11 BSD UNIX (w11a) (console) + + login: + ``` + + The login prompt is sometimes mangled with system messages, if its not + visible just hit `` to get a fresh one. + ``` + login: {root} + erase, kill ^U, intr ^C + ``` + + Now the system is in multi-user mode, daemons runnng. You can explore + the system, e.g. with a `pstat -T` or a `mount` command. The second + `xterm` can be activated too, it will connect to a second emulated DL11. + At the end is important to shutdown properly with a `halt`: + ``` + # {pstat -T} + 15/122 files + 47/128 inodes + 9/ 80 processes + 8/ 36 texts active, 32 used + 3/ 72 swapmap entries, 437 kB used, 3742 kB free, 3736 kB max + 30/ 80 coremap entries, 3069 kB free, 2993 kB max + 1/ 10 ub_map entries, 25 free, 25 max + # {mount} + /dev/xp0a on / + /dev/xp0c on /tmp + /dev/xp0d on /home + /dev/xp0e on /usr + # {halt} + syncing disks... done + halting + ``` + + While the system was running the server process display the + ``` + cpu0> + ``` + + prompt. When the w11 has halted after 211bsd shutdown a message like + ``` + + CPU down attention + Processor registers and status: + PS: 030350 cm,pm=k,u s,p,t=0,7,0 NZVC=1000 rust: 01 HALTed + R0: 177560 R1: 010330 R2: 056172 R3: 000010 + R4: 005000 R5: 147510 SP: 147466 PC: 000014 + ``` + + will be visible. Now the server process can be stopped with `^D`.