Remember:
- We’re still under SimH,
- we have an empty root file system on an RM03 disk drive as /dev/xp0a,
- we have bad sectors marked.
We CANNOT restore the root file system onto the RM03 as we did for the RL02 : This worked by importing a whole filesystem image from tape, which would override our bad sector files in the /BAD directory. Instead, we have to copy file-by-file from the RL02 disk, make symbolic links, generated device nodes etc. This should reproduce the root file system from RL02 on RM03 :
mount /dev/xp0a /mnt
cp .cshrc .hushlogin .kermrc .login .mailrc .profile .rhosts .tiprc /mnt
cp README VERSION boot genunix toyset unix /mnt
tar cf - a | (cd /mnt && tar xBf -)
tar cf - bin | (cd /mnt && tar xBf -)
tar cf - dev | (cd /mnt && tar xBf -)
tar cf - etc | (cd /mnt && tar xBf -)
tar cf - lib | (cd /mnt && tar xBf -)
tar cf - mdec | (cd /mnt && tar xBf -)
tar cf - sbin | (cd /mnt && tar xBf -)
tar cf - tmp | (cd /mnt && tar xBf -)
tar cf - usr | (cd /mnt && tar xBf -)
tar cf - var | (cd /mnt && tar xBf -)
mkdir /mnt/mnt
mkdir /mnt/usr/src
mkdir /mnt/usr/src/sys
ln -s /usr/src/sys /mnt/sys
ln -s /unix /mnt/vmunix
cd /mnt/dev
./MAKEDEV std local hk0 hk1 ra0 ra1 ra2 ra3 mt0 mt1 nmt0 nmt1 xp0 xp1 rl0 rl1 pty0 lp0
sync
MAKEDEV generates a usable set of device nodes, we will use it again after kernel setup.
Write the boot sector:
# dd if=/mdec/rm03uboot of=/dev/rxp0a count=1
1+0 records in
1+0 records out
# sync
# halt
You can now boot from the RM03 drive:
sim> b rp
44Boot from xp(0,0,0) at 0176700
:
: xp(0,0,0)unix
Boot: bootdev=05000 bootcsr=0176700
2.11 BSD UNIX #115: Sat Apr 22 19:07:25 PDT 2000This email address is being protected from spambots. You need JavaScript enabled to view it. :/usr/src/sys/GENERIC
phys mem = 3932160
avail mem = 3708224
user mem = 307200
June 9 00:56:24 init: configure system
hk 0 csr 177440 vector 210 attached
ht ? csr 172440 vector 224 skipped: No CSR.
ra 0 csr 172150 vector 154 vectorset attached
rl 0 csr 174400 vector 160 attached
tm 0 csr 172520 vector 224 attached
tms 0 csr 174500 vector 260 vectorset attached
ts ? csr 172520 vector 224 interrupt vector already in use.
xp 0 csr 176700 vector 254 attached
erase, kill ^U, intr ^C
#
Do and fsck, but don’t delete /BAD/* files!
# fsck /dev/xp0a
Swap device
As for the RL02, we have to correct /dev/swap. Edit “/dev/MAKEDEV.local” and change the first line to:
rm -f swap; ln xp0b swap
Then do
# cd /dev
# ./MAKEDEV local
Getting /usr onto the simulated RM03 disk
Load /usr and the mninimal build environment form tape.
They are tar archives in tape file #6 and #7:
Make sure you executed already these statements:
# cd /dev;rm *mt*; ./MAKEDEV tm0; sync
# mkdir /usr/src
# mkdir /usr/src/sys
# df
Filesystem 1K-blocks Used Avail Capacity Mounted on
root 60699 3023 57676 5% /
Now let the tape spin ...
# cd / ;
# mt rew ; mt fsf 7 ; tar xvpbf 20 /dev/rmt12
# cd /usr
# mt rew ; mt fsf 6 ; tar xvpbf 20 /dev/rmt12
# sync
The disk is quite full now:
# df
Filesystem 1K-blocks Used Avail Capacity Mounted on
root 60699 41488 19211 68% /
#
The BSD sources in tape file #8, called "ar dump of /usr/src, excepting include and sys", do not fit onto the rest of this disk.
Transfering the SimH RM03 image to the real thing
We have an SimH image of the RM03 system disk, which must be moved to the physical RM03.
I use PDP11GUI with its "Disk Image Read/Write window". More to come ....