Introduction
3BSD was the first Berkeley Software Distribution to run on the 32-bit VAX platform. Derived from 32V, 3BSD was the first Unix system to add virtual memory, page replacement and demand paging to Unix.
A VAX computer was installed at Berkeley in 1978, but the port of Unix to the VAX architecture, UNIX/32V, did not take advantage of the VAX's virtual memory capabilities. The kernel of 32V was largely rewritten by Berkeley graduate student Özalp Babaoğlu to include a virtual memory implementation, and a complete operating system including the new kernel, ports of the 2BSD utilities to the VAX, and the utilities from 32V was released as 3BSD at the end of 1979. 3BSD was also alternatively called Virtual VAX/UNIX or VMUNIX (for Virtual Memory Unix), and BSD kernel images were normally called /vmunix until 4.4BSD.
The success of 3BSD was a major factor in the Defense Advanced Research Projects Agency's (DARPA) decision to fund Berkeley's Computer Systems Research Group (CSRG), which would develop a standard Unix platform for future DARPA research in the VLSI Project.
https://www.oreilly.com/openbook/opensources/book/kirkmck.html
https://en.wikipedia.org/wiki/Berkeley_Software_Distribution
Host
- Vendor: Generic
- CPU: 1 x Intel(R) Core(TM) i7-10700K CPU @ 3.80GHz 3.79 GHz
- RAM: 128GB
- OS: Windows 10 64-bits
Guest
- DEC VAX-11/780
Virtualization
- SimH 4.1 (from GitHub)
Pending
- Additional disks
References
Steps
- Install cygwin
- install bzip2 (or 7z) and uudecode
- Install simh 4.1 from here. This is another fork project from the original emulator.
$ mkdir -p /cygdrive/m/Emulators/SimH/mirror/ $ cd /cygdrive/m/Emulators/SimH/mirror/
- If this is the first time, make a local copy of the simulator
$ git clone https://github.com/open-simh/simh.git simh-4.1 Cloning into 'simh-4.1'... remote: Enumerating objects: 35175, done. remote: Counting objects: 100% (104/104), done. remote: Compressing objects: 100% (66/66), done. remote: Total 35175 (delta 46), reused 86 (delta 38), pack-reused 35071 Receiving objects: 100% (35175/35175), 78.76 MiB | 21.77 MiB/s, done. Resolving deltas: 100% (27237/27237), done. Updating files: 100% (1580/1580), done.
- Otherwise, update your local copy
$ ( cd simh-4.1 && git fetch --all -v ) POST git-upload-pack (155 bytes) From https://github.com/open-simh/simh = [up to date] master -> origin/master = [up to date] Alpha-CPU -> origin/Alpha-CPU = [up to date] AsyncTmxr -> origin/AsyncTmxr = [up to date] AutoConfigure -> origin/AutoConfigure = [up to date] Bryan-HP-Current -> origin/Bryan-HP-Current = [up to date] BufferedConsole -> origin/BufferedConsole = [up to date] ControlFlow -> origin/ControlFlow = [up to date] Extra-VAXen -> origin/Extra-VAXen = [up to date] FastAsynchIO -> origin/FastAsynchIO = [up to date] HP2100Extensions -> origin/HP2100Extensions = [up to date] KDP -> origin/KDP = [up to date] SerialMux -> origin/SerialMux = [up to date] Supnik-Current -> origin/Supnik-Current = [up to date] VAX-11-BootBlock-Fixup -> origin/VAX-11-BootBlock-Fixup = [up to date] simtools -> origin/simtools = [up to date] v3.9-0-rc1 -> origin/v3.9-0-rc1 = [up to date] vms-pcap -> origin/vms-pcap
- Create the simulator machines
$ ( cd simh-4.1 && make vax780 && ./BIN/vax780 ) lib paths are: /usr/lib ../windows-build/winpcap/WpdPack/Lib /lib/ /usr/lib/ include paths are: /usr/lib/gcc/x86_64-pc-cygwin/11/include /usr/include /usr/lib/gcc/x86_64-pc-cygwin/11/../../../../lib/../include/w32api ../windows-build/winpcap/WpdPack/Include using libm: /usr/lib/libm.a using librt: /usr/lib/librt.a using libpthread: /usr/lib/libpthread.a /usr/include/pthread.h using semaphore: /usr/include/semaphore.h using libdl: /usr/lib/libdl.a /usr/include/dlfcn.h using libedit: /usr/include/editline/readline.h using mman: /usr/include/sys/mman.h *** Warning *** *** Warning *** vax780 Simulator is being built WITHOUT *** Warning *** libpcap networking support *** Warning *** *** Warning *** To build simulator(s) with libpcap networking support you *** Warning *** should read 0readme_ethernet.txt and follow the instructions *** Warning *** regarding the needed libpcap development components for your *** Warning *** cygwin platform *** Warning *** *** Warning *** *** Warning *** vax780 Simulator is being built WITHOUT LAN networking support *** Warning *** *** Warning *** To build simulator(s) with networking support you should read *** Warning *** 0readme_ethernet.txt and follow the instructions regarding the *** Warning *** needed libpcap components for your cygwin platform *** Warning *** *** *** vax780 Simulator being built with: *** - compiler optimizations and no debugging support. GCC Version: 11.3.0. *** - WITHOUT Local LAN networking support. *** - Local LAN packet transports: NAT(SLiRP) *** - Per simulator tests will be run. *** *** git commit id is 4e159a04ed6291509b685dc06f620389b3373cce. *** git commit time is 2023-01-04T13:22:12-0700. *** gcc -std=gnu99 -U__STRICT_ANSI__ -O2 -finline-functions -fgcse-after-reload -fpredictive-commoning -fipa-cp-clone -fno-unsafe-loop-optimizations -fno-strict-overflow -DSIM_GIT_COMMIT_ID=4e159a04ed6291509b685dc06f620389b3373cce -DSIM_GIT_COMMIT_TIME=2023-01-04T13:22:12-0700 -DSIM_COMPILER="GCC Version: 11.3.0" -DSIM_BUILD_TOOL=simh-makefile -I . -Werror -D_GNU_SOURCE -DUSE_READER_THREAD -DSIM_ASYNCH_IO -DHAVE_SEMAPHORE -DHAVE_SYS_IOCTL -DSIM_HAVE_DLOPEN=a -DHAVE_EDITLINE -DHAVE_UTIME -DHAVE_GLOB -DHAVE_SHM_OPEN ./VAX/vax_cpu.c ./VAX/vax_cpu1.c ./VAX/vax_fpa.c ./VAX/vax_cis.c ./VAX/vax_octa.c ./VAX/vax_cmode.c ./VAX/vax_mmu.c ./VAX/vax_sys.c ./VAX/vax_syscm.c ./VAX/vax780_stddev.c ./VAX/vax780_sbi.c ./VAX/vax780_mem.c ./VAX/vax780_uba.c ./VAX/vax7x0_mba.c ./VAX/vax780_fload.c ./VAX/vax780_syslist.c ./PDP11/pdp11_rl.c ./PDP11/pdp11_rq.c ./PDP11/pdp11_ts.c ./PDP11/pdp11_dz.c ./PDP11/pdp11_lp.c ./PDP11/pdp11_tq.c ./PDP11/pdp11_xu.c ./PDP11/pdp11_ry.c ./PDP11/pdp11_cr.c ./PDP11/pdp11_rp.c ./PDP11/pdp11_tu.c ./PDP11/pdp11_hk.c ./PDP11/pdp11_vh.c ./PDP11/pdp11_dmc.c ./PDP11/pdp11_dup.c ./PDP11/pdp11_td.c ./PDP11/pdp11_tc.c ./PDP11/pdp11_rk.c ./PDP11/pdp11_io_lib.c ./PDP11/pdp11_ch.c ./scp.c ./sim_console.c ./sim_fio.c ./sim_timer.c ./sim_sock.c ./sim_tmxr.c ./sim_ether.c ./sim_tape.c ./sim_disk.c ./sim_serial.c ./sim_video.c ./sim_imd.c ./sim_card.c -DVM_VAX -DVAX_780 -DUSE_INT64 -DUSE_ADDR64 -I ./VAX -I ./PDP11 -Islirp -Islirp_glue -Islirp_glue/qemu -DHAVE_SLIRP_NETWORK -DUSE_SIMH_SLIRP_DEBUG slirp/*.c slirp_glue/*.c -DUSE_NETWORK -o BIN/vax780 -lm -lrt -lpthread -ldl -ledit BIN/vax780 RegisterSanityCheck /cygdrive/m/Emulators/SimH/mirror/simh-4.1/VAX/tests/vax-diag_test.ini </dev/null Running internal register sanity checks on VAX 11/780 simulator. *** Good Registers in VAX 11/780 simulator. VAX 11/780 simulator Open SIMH V4.1-0 Current git commit id: 4e159a04 Running Hardware Core Test (EVKAA) *** PASSED - VAX 11/780 Hardware Core Instruction test EVKAA Starting VAX Diagnostic Supervisor Missing Regular Expression support - skipping EVKAB test VAX 11/780 simulator Open SIMH V4.1-0 Current git commit id: 4e159a04 sim> exit Goodbye
- Prepare data directory
$ mkdir -p /cygdrive/m/Emulators/SimH/guests/vax-11-780_3bsd $ cd /cygdrive/m/Emulators/SimH/guests/vax-11-780_3bsd
- The simulator program is available in the BIN directory from the compiled git repository. To make life easier, the best is to create a link to the program. I can create a link into /usr/bin or into the guest directory. I will go with the later.
$ ln -s ../../mirror/simh-4.1/BIN/vax780.exe vax780-4.1.exe $ ls -laF vax780-4.1.exe lrwxrwxrwx 1 afberendsen None 36 Feb 19 15:26 vax780-4.1.exe -> ../../mirror/simh-4.1/BIN/vax780.exe*
- Unpack the 3BSD tape file
$ 7z.exe x 3bsd.tap.bz2 7-Zip 19.00 (x64) : Copyright (c) 1999-2018 Igor Pavlov : 2019-02-21 Scanning the drive for archives 1 file, 5892222 bytes (5755 KiB) Extracting archive: 3bsd.tap.bz2 -- Path = 3bsd.tap.bz2 Type = bzip2 Everything is Ok Size: 22524624 Compressed: 5892222 $ ls -la 3bsd.tap* -rwxrwxrwx+ 1 afberendsen None 22524624 Feb 19 15:30 3bsd.tap -rwxrwxrwx+ 1 afberendsen None 5892222 Feb 19 15:30 3bsd.tap.bz2
- Transfer contents of tape to disk
- Create tboot.ini file to allow the initial disk set-up and code transfer from the tape.
set tto 7b set rq disable set lpt disable set rl disable set hk disable set rq disable set rqb disable set rqc disable set rqd disable set ry disable set ts disable set tq disable set dz lines=8 set rp0 rp06 attach rp0 rp06.disk set tu0 te16 attach -r -e tu0 3bsd.tap D 50000 20009FDE D 50004 D0512001 D 50008 3204A101 D 5000C C113C08F D 50010 A1D40424 D 50014 008FD00C D 50018 C1800000 D 5001C 8F320800 D 50020 10A1FE00 D 50024 00C139D0 D 50028 04c1d004 D 5002C 07e15004 D 50030 0000f750 go 50000 go 0
- Start-up the simulator with the initial environment. On the past, when creating the initial disk (rp06.disk), the simulator used to ask for a confirmation to re-write the last track.
$ ./vax780-4.1.exe tboot.ini VAX 11/780 simulator Open SIMH V4.1-0 Current git commit id: 4e159a04 /cygdrive/m/Emulators/SimH/guests/vax-11-780_3bsd/tboot.ini-15> at rp0 rp06.disk %SIM-INFO: RP0: Creating new file: rp06.disk /cygdrive/m/Emulators/SimH/guests/vax-11-780_3bsd/tboot.ini-17> at tu0 3bsd.tap %SIM-INFO: TU0: unit is read only %SIM-INFO: TU0: Tape Image '3bsd.tap' scanned as SIMH format
- Create the disk initial filesystem.
HALT instruction, PC: 00050033 (HALT) =mkfs file sys size: 7942 file system: hp(0,0) isize = 5072 m/n = 3 500
- Transfer the contents of the tape to the disk
=restor Tape? ht(1,1) Disk? hp(0,0) Last chance before scribbling on disk. y End of tape
- Boot the system from the disk
=boot Boot : hp(0,0)vmunix 61856+61008+70120 start 0x4B4 VM/UNIX (Berkeley Version 2.7) 2/10/80 real mem = 8323072 avail mem = 8062976 ERASE IS CONTROL-H!!! #
- Create the user app space partition. Pay attention to use rrp0g.
# /etc/mkfs /dev/rrp0g 145673 isize = 65488 m/n = 3 500 #
- Fill the usr partition from the tape. The two cp commands are used to advance the tape. This version of 3BSD does not have a mt command.
# /etc/mount /dev/rp0g /usr # cd /usr # cp /dev/rmt5 /dev/null # cp /dev/rmt5 /dev/null # tar xbf 20 /dev/rmt1
- Stop the system. Unmount the /usr partition, sync the I/O buffers. In modern U*X systems, the sync command is called at the shutdown state.
# cd / # /etc/umount /dev/rp0g # sync ; sync ; sync ; sync #
- Stop the simulator. At the 3BSD prompt, press CTRL-E. This will bring the simulator interface. At the simulator, simple issue the quit command.
# CTRL+E Simulation stopped, PC: 8000085F (BLBC 80010FA0,8000085F) sim> q Goodbye
- Start-up the simulator with 3BSD
- Create a new ini file. This time is the Disk Boot ini file: dboot.ini
set tto 7b set rq dis set lpt dis set rl dis set hk dis set rq dis set rqb dis set rqc dis set rqd dis set ry dis set ts dis set tq dis set dz lines=8 set rp0 rp06 at rp0 rp06.disk set tu0 te16 load -o boot 0 go 2
- (once) Create the boot loader.
- Create a file called boot.uue, with following contents
begin 644 boot M``#:'Q+0CP``!0!>T`&?!``!(-`!GP0@`2#0`9\$8``@PX_D%@4`CY@Y!0!0 MPX\```4`C^06!0!1+`!N`%!A*.]_$P``GP````!N%_]O$P``^P#O'````-"/ M```%`%X7[^S___\``-"/```%`%X7GU$`!0```,($7M_O21,``/L![RH.``#? M[T,3``#[`>\=#@``W^^+.```^P'O"!```-T`W^]\.```^P+OV08``-!0K?S5 M4!G/W5#[`>\"````!```#,(D7M"L!%O=(-^MX-U;^P/O7P4``-!06M%:(!(* MT:W@CP@!```3#=_OX1(``/L![V((``#=K>3?[]T2``#[`N^H#0``W:WDW0#= M6_L#[R(%``#14*WD$P,QD0#0K>2MW!$)T*W<4-:MW)1@TX__`P``K=P2[=VM MZ-_OGQ(``/L"[V<-``#=K>C=K=S=6_L#[^`$``#14*WH$E+`K>BMW-VM[-_O M>1(``/L"[ST-``#`CP```0"M[-1:$0O0K=Q0UJW<EBM%:K>P?[^4?K?0` MW:WTW^]+$@``^P+O"PT``/L`O?3[`.\($@``W^]`$@``^P'OG0<```0````, MT*P(6]2K?,$?K`10QA!0>`%04,&K=%#+@``RCP`$RX@`P8^,````6\N$`-U; M^P'OD@<``,&/C````%M:P1^L!%#'$%!1Q!!1PU%047@&45#`4%KWK`2K"+!J MJPK0J@BK%-T-P0Q:?L$86W[[`^]@$0``!```#,((7M"L!%L3!)5K$FK?[[T1 M``#[`>]>#```$5C66Y%K+Q/YT%M:$0:5:A,'UEJ1:B\2]9!JK?^4:MVL"-U; M^P+O:P$``-!0K?@3&I6M_Q,XW:P(W5#[`N\L____D*W_:M!:6Q$?W5O?[VX1 M``#[`N\$#```U%`$W:P(/`)^^P+O!/___Y5K$I;0K?A0!```#L(47M"L!%O0 MK`BM[,$$6UG5K`@8"=_O/A$``#%E_]&L"`H8#]"L"%K02JD4K?30K?10!-2M M^-`!K?3""JP(T`.M_!$9P`BM^'@(K?2M]-&L"*WT&0W"K?2L"->M_-6M_!3B MU:W\$@S=K`C?[_80```Q:O_#K?P-4-!`J12M]!(/W:P(W^_H$```,5'_UJW\ MT:W\`Q29T*W\4-%`[WPC``"M]!-&>`&M]%#!JW10RX``>`JM_%">0.]@$P`` MRX0`,H\`!,N(`-U;^P'O\04``'@*K?Q0GD#O01,``*WPT*W\4-"M]$#O,B,` M`'@*K?Q0GD#O)A,``*WPP@BM^,ZM^%!X4*P(4)I06M!*O?"M]!,#,7G_W:P( MW^]A$```,;[^```.P@Q>T*P(6]6L!!(#,;/^E;P$$_C!!%M9/*D&4,J/_P__ M_U#14(\`0```$PG?[S40```Q+/['$*D0K?@2"=_O-1```#$;_C*/``2M]-2M M_!%HUJWTT:WTCT`````90M"M_%#6K?S=4-U;^P+O;/[__W@!4%#!JW10RX`` MP8^,````6\N$`#*/``3+B`#=6_L![PD%``#!CXP```!;6M2M],$"6G[=K`3[ M`N\:````U5`3!#QJ4`3`$%K0K?A0UZWXU5`2C3'[_0``#M"L!%O0K`A:T`Y9 MT%E0UUG54!,0D6MJ$P,QW/V5BQ,$E8H2Y]`!4`0`"-6L#!,1W^^0#P``^P'O MP`D``,X!4`3"`ZP$&?;1K`0$&/#%CXP$``"L!%#`C_0F!0!0T%!;X0)@V="L M"*M\QX\`!```K`A0>`%04,&K=%#+@`#4RX@`U%`$```.P@1>U:P$&0[1K`0" M%`C[`.\G"P``!,(#K`09'=&L!`08%\6/C`0``*P$4,"/]"8%`%#04%O@`F`$ MS@%0!-#+A`!:U<N(`!4#,:``QX\`!```JWQ0>`%0RX``X0-K&L<"RX``?MU; M^P+O'_W__W@!4%#!JW10RX``P8^,````6\N$`#*/``3+B`#=6_L![[P#``#A M`VM%QX\`!```JWQ0Q(\`!```4,-0JWRM_,.M_(\`!```4,"K?%#14*L4&0W# MJWRK%%#!K?Q0RX@`PJW\RX@`U<N(`!0&,5[_U*W\P8^,````6U#!K?Q06M?+ MB`#6JWR8BEG06LN$`-!94`0`#-6L!!D%T`%0$0+44-&L!`(4!=`!41$"U%'2 M45'*45`3)="L#%O[`.\0"@``]E"\"-=;$PS0K`A0UJP(D6`*$N7#6ZP,4`3" M`ZP$&1W1K`0$&!?%CXP$``"L!%#`C_0F!0!0T%!:X`)@!,X!4`3I:OG@`VHA MT*P,RH@`T*P(RH0`W5K[`>_%`@``T%!;P`+*@`#06U`$P:P,JGQ0T5"J%!4' MPZI\JA2L#-"L#%L4`]10!,$#K`1^^P'O0?[__]"L"%'6K`CV4&'76Q+FT*P, M4`0`#-6L!!DKT:P$`A0ET*P,6Q$1T*P(4-:L")A@?OL![^`(``#06U#76]50 M$N;0K`Q0!,(#K`09'=&L!`08%\6/C`0``*P$4,"/]"8%`%#04%K@`F`$S@%0 M!.$!:OC0K`S*B`#0K`C*A`#=6OL![RH"``#04%O``LJ``-!;4`0`#L((7M7O M<0P``!,>U*W\Q8^,!```K?Q0E$#O3!\``/($K?SKU.]1#```U*WXQ8^,!``` MK?A0E4#O+A\``!,2\@2M^.G?[\<,``#[`>^``0``Q8^,!```K?A0P(_T)@4` M4-!06H@$8-"L!%L1!Y%K*!,&UEN5:Q+UD6LH$R#?[Z$,```1"\`061$<W^^@ M#```^P'OD`8``)1JS@%0!)2+WN\�``6=5I$^#=:=VL!/L"[W/\___54!/+ M]BBK_\./-!4%`%E0QA!0]U"J!IB+4,,P4*IPU:IP&0;1JG`'%0C?[UH,```1 MJ)&++!,(W^]A#```$9O=6_L![[$*``#04*IT$025BQ/ED6LI$O?=6OL![R4! M``#66Y5K$AO!`:P(4)AJ4<A04?91:M3*B`#4JGS!`ZWX4`3=6MU;^P+O:_G_ M_]!0K?P2`S%,_]6L"!,)W^\<#```,3?_W5K=K?S[`N_2^/__U*I\U,J(`,$! MK`A0R`A0F&I1R%!1]E%J$;(``,($7L(#K`09'M&L!`08&,6/C`0``*P$4,"/ M]"8%`%#04*W\X`)@!,X!4`3@`[W\"MVM_/L![YP```"4O?S44`0``-_OR`L` M`/L![P$````$``#=K`3?[\$+``#[`N]$!0``^P#O\O;__P0``-VL!-_OJPL` M`/L"[RH%```1_@`(T*P$6]T!W5LRJP90>`104-#@.!4%`%#[`F`$```(T*P$ M6]T"W5LRJP90>`104-#@.!4%`%#[`F`$```(T*P$6]U;,JL&4'@$4%#0X#P5 M!0!0^P%@!```"-"L!%O=6S*K!E!X!%!0T.!`%04`4/L!8`0````$```,P@1> MT*P$6]"K<%IX!5I0>`)04,&/``0!(%"M_)5*[V<O```2#="M_%#VH!A*[U@O M``#0JW10T4#O50L``(______$PO5JW09!M&K=`<5#=_O?0L``/L![_S^__^1 M2N\G+P``%!(4T*MT4'@%0.]`"P``4,4%4*MT$1+0JW10Q8^B`0``0.\("P`` MJW0$```(PB!>T*P$6]"K<*W\T,N``*WD>`6M_%!X`E!0P8\`!`$@4*W@WN_0 M+@``4-"M_%&506`2%-"MX%#>[[PN``!1T*W\4O:@&$)AT*W@4-./0````*`$ M$@[0$;W@T*W@4#*/`!"@)-[OD"X``%#0K?Q1D4%@%!(+FH^@K?C0(*WT$0HR MCZ(!K?C0%JWTQZWXK>2M\,>M^*WD4,2M^%##4*WDK>C'K?2MZ*WLQZWTK>A0 MQ*WT4,)0K>C0K>!0T*WPH"AX"*WL4,"MZ%#0K>!1T%"A%-VL"-VMX-U;^P/O M/P```-"MX%#3CX````"@!!/RTX\`0```H`03(-V@"-V@!-VMZ-VM[-VM\-_O M0PH``/L&[PL#``#.`5`$T,N(`%`$```/PA!>T*P$6]"K<%#00.^P"0``4-!` M[[0)``!8T%A9P(\`"@``6=#+A`!0[PD74*WXRX\`_O__RX0`K?3!K?3+B`!0 MP(__`0``4.\)%U"M_,F/```!`*WTK?#O`!6M^*WX$0_0K?A0UJWXR8\```"` M4(GTK?SMS@&H",[+B`"H$-"M\*@,T:P,`1(&T#F\"!$*T:P,`A($T#&\"`0` M````"-"L!%O0JW10T4#OLPD``(______$PO5JW09!M&K=`<5#=_ONPD``/L! M[]K\___0JW10>`5`[X@)``!0Q!-0T%"K=`0```[")%[0K`1;T,N(`*W<T*MP MK?S0RX``K>0RCV`"K?C0(*WTQZWXK>2M\,>M^*WD4,2M^%##4*WDK>C'K?2M MZ*WLQZWTK>A0Q*WT4,)0K>B5[Z@L```25I;OH"P``/<@[\WP#B`RC_0!6?59 M_?<)[[;P#B`RC_0!6?59_?<1[Z?P#B`RC_0!6?59_;"/`!#OL/`.(#*/]`%9 M]5G]$0@RC_0!6?59_>$'[WWP#B#P]ZW\[WSP#B`RC_0!6?59_=T!W5O[`N^U M````T%"MX-"/QOT3(%KWK?#O:O`.('@(K>Q0P*WH4/=0:O>MX'K.RX@`4,8" M4/=0>M&L"`$2!?<Y>A$#]S%Z,H_T`5GU6?V:C\A9]5G]X0?O#_`.(/&:C\A9 M]5G]X0[O`/`.("@R[P7P#B!^,N_R[PX@?MVMZ-VM[-VM\-_O8@@``/L&[\L` M``#.`5`$T<N(`*W<$Q'=RX@`W^]Y"```^P+OK@```-VMX/L![X@```#0RX@` M4`0````.PA1>T*P$6]#+A`!0[PD74*WXRX\`_O__RX0`K?3!K?3+B`!0P(__ M`0``4.\)%U!0P0%0K?S0CP!H`"!9>!6L"%#)CP```(!0K>S5K`@3">FM]`7B M&:WL`.\`%:WXK?@1#-"M^%#6K?C)K>Q0B=>M_!+OU(EX'*P(4,BM]%`$``_O M'`2L!%L3#W@"6U#(CP```(#@0&``(`0````.P@1>T*P$6\$(7%D1#M5:$@$$ MW5K[`>]!`0``F(M:T5HE$NJ8BUK16H]8````$@S=:?L![Z@````QGP#16H]D M````$QO16H]U````$Q+16H]O````$PG16H]X````$BS16H]O````$@70"%`1 M$=%:CW@````2!=`04!$#T`I0W5#=:?L"[XL````13]%:CV,````2"]UI^P'O MOP```!$[T5J/<P```!(;T&FM_-"M_%#6K?R88%H3(MU:^P'OFP```!'IT5J/ M1````!(.W0K=:?L"[ST```#``%G`!%DQ._\``,($7M2M_,.M_`=0>`)04,Y0 M4'A0K`10[P`$4%"80._-!@``?OL![T\```#R"*W\U@0```C5K`08#MTM^P'O M.````,ZL!*P$QZP(K`1;$PS=K`C=6_L"[]?____'K`BL!%#$K`A0PU"L!%"8 M0.^0!@``?OL![P$````$``[0K`1;,H\P=5G=(OL![V8!``#@!U`$UUD2[]5; M$@$$W2+[`>]0`0``T%!:W0#=(OL"[SH!``":6W[=(_L"[RX!``#16PH2"=T- M^P'OKO___]T`^P'OI?___]U:W2+[`N\,`0``!```"-T@^P'O!P$``.$'4//= M(?L![_H```#O``=06]%;#1(#T`I;W5O[`>]J____T%M0!``,T*P$6_L`[\'_ M___O``=06M%:CT$````9#-%:CUH````4`\`@6M%;K`03=Y&K_X]<$G#76]%: MCV$````9#M%:CWH````4!<(@6A%7T%I0T5`A$S_14"<31M%0*!,IT5`I$RK1 M4(]>````$RT1-=%0#1,]T5`C$S[14(]`````$T/V6HLQ?O^8CWM:$1:8CWU: M$1"8CWQ:$0J8CWY:$028CV!:T%I0T5`($PO14`H2OM`*6I2+!-=;T5NL!!D# M,43_,3W_T*P$6]T*^P'OE/[__S$Q_P``````VJP(K`0$``#;K`10!````"BL M#+P$O`@$````#,($7M"L!%O[`.]T`0``W0;=6_L"[T\```#0JW1:$2S.`<N( M`-T8W5O[`N\Y````U5`2\="/```!`*W\UZW\$OO=`-U;^P+O'0```-!:4-=: MU5`2RP0```C0K`1;W0;=6_L"[P$````$@`_"!%[0K`1;T*MP6M18Z5H',H_` M!%D1!3*/P`-9^P#O_P```.\`"^_Q$?P?4-%061,'T%GOY!'\'\[+B`#ORQ'\ M']&L"!H2$<X![[X1_!_0&^^C$?P?U%`$T:P(`1,&T:P(`A(4W:P(W8\`)`$@ MW5O[`^\R^?__$0G)`:P([W<1_!_[`.^:````RX_[____[VD1_!]7X0)7"?L` M[WD````1M.$.5U#56!(?W>]1#?P?W>]+$?P?W>]!$?P?W^_?`P``^P3OX/O_ M__L`[TD```#16`H2$=_OZ0,``/L![\?[___.`5`$UEC=&MU;^P+O#/___S$8 M_]58$PW?[\8#``#[`>^B^___]^\`$?P?K?XRK?Y0P,N(`%`$``#0">_7$/P? M!``(T._2$/P?6^$'6_4$``S"!%[0K`1;U*W\U%H1'Y%K.10VQ0JM_%"8BU'` M4%'#,%&M_!$?UEK66Q$9UEN8:U#14`D3]M%0(!/QT5`K$^C14"T3X9%K,!C% MU5H3!LZM_%`1!-"M_%`$````#M"L!%K0K`A9U%L1#9")BI")BI")BI2*UEO1 M6ZP,&>T$`````+P!`````%$`!0"8.04`"D)O;W0*`#H@`$)A9"!F;W)M870* M`"5D`"LE9``K)60`('-T87)T(#!X)7@*`%-H;W)T(')E860*`````0```&YU M;&P@<&%T:`H`)7,@;F]T(&9O=6YD"@!B;B!N96=A=&EV90H`8FX@;W9F("5$ M"@!B;B!V;VED("5$"@!B;B!V;VED("5$"@!N;W0@82!D:7)E8W1O<GD*`'IE M<F\@;&5N9W1H(&1I<F5C=&]R>0H`4V5E:R!N;W0@9G)O;2!B96=I;FYI;F<@ M;V8@9FEL90H`3F\@;6]R92!F:6QE('-L;W1S`$)A9"!D979I8V4*`%5N:VYO M=VX@9&5V:6-E"@!"860@=6YI="!S<&5C:69I97(*`$UI<W-I;F<@;V9F<V5T M('-P96-I9FEC871I;VX*`$-A;B=T('=R:71E(&9I;&5S('EE="XN(%-O<G)Y M"@!%>&ET(&-A;&QE9``E<PH`5')A<"`E;PH``(@5!0"0"@4```H%`/P)!0"+ M%04`!A(%`)P1!0#T$04`CA4%`)8,!0!0#`4`_`D%```````````````````` M`````````0```/____\```$@`"`!(&AP`&AT`'5P```````````F````8@`` M`/_______________W8```#_____`````&$```#_____________________ M+`$``/____]H<"!B860@;6EN;W(`9&ES:R!E<G)O<CH@8WEL/25D('1R86-K M/25D('-E8W0])60@9',])5@L(&5R,3TE6`H``````!L```!$````________ M_____________U(```!U<"!B860@=6YI=`!D:7-K(&5R<F]R.B!C>6P])60@ M=')A8VL])60@<V5C=#TE9"!C<S$])5@L(&5R,3TE6`H`<F5T=7)N960@)60* M`````#`Q,C,T-38W.#E!0D-$148`,#$R,S0U-C<X.4%"0T1%1@```'1A<&4@ M97)R;W(Z(&1S/25X+"!E<CTE>"P@;6)A<W(])7@`"@`@<F5C;W9E<F5D(&)Y *(')E=')Y"@```"5X ` end
- Decode the text file into a binary file.
$ uudecode.exe boot.uue $ ls -la boot -rw-r--r--+ 1 afberendsen None 5860 Feb 20 22:41 boot
- Load the simulator for 3BSD
$ ./vax780-4.1.exe dboot.ini VAX 11/780 simulator Open SIMH V4.1-0 Current git commit id: 4e159a04 Boot :
- Load the kernel
Boot : hp(0,0)vmunix 61856+61008+70120 start 0x4B4 VM/UNIX (Berkeley Version 2.7) 2/10/80 real mem = 8323072 avail mem = 8062976 ERASE IS CONTROL-H!!! #
- (Once) set-up root password
# passwd root New password: Retype new password: #
- Change to multi-user mode. At the prompt, press CTRL+D to bring the system to multi-user mode
# CTRL+D Sat Mar 22 14:15:50 PST 1980 entering rc clearing mtab mounting /usr on /dev/rp0g preserving Ex temps and clearing /tmp starting update starting cron leaving rc Virtual VAX/UNIX (Ernie Co-vax) login:
- Authenticate with root account
login: root Password: Welcome to Virtual Vax/UNIX. ERASE IS CONTROL-H!!! #
- Shutdown system
# sync ; sync ; sync ; sync # CTRL+E Simulation stopped, PC: 8000085F (BLBC 80010FA0,8000085F) sim> q Goodbye
First look
Comments
Post a Comment