User:Dugo/My sandbox

From Computer History Wiki
< User:Dugo
Revision as of 20:44, 10 June 2012 by Dugo (talk | contribs) (rebuilding modules)
Jump to: navigation, search

fuzzball notes

** Important Note ***

This fuzzware is distributed only with permission from the Defense Advanced
Research Projects Agency (DARPA) under the condition that it not be
redistributed outside of the receiving organization without prior DARPA
approval. It is provided on an as-is basis only. Users should be cautioned
that only very minimal help is available and that support and maintenance is
not a contractual responsibility of the distributor.

I know nothing about RT-11, let alone fuzzball operation, this is going to be fun!

From what I gathered so far, you have to bring up a fuzzball fully configured.

You build the configuration dependent modules. This is not something I'm fast with (yet). I'm so used to bringing up something quickly and then molding it until it does something cool, I'm not sure how to attack this yet. Getting handy at EDIT/TECO and rebuilding the resident system, then bring up something iteratively.. or.. spend some time designing a setup.

For now a bit of both vectors.

A cage with an isolated standalone fuzzball is cruel, the poor critter keeps shouting `Hello!' and `what time is it' at all interfaces. Archeological findings suggest the critter is very social and likes swamps. Zoo management is currently looking into acquiring a dozen fuzzbals so they can keep each other company. The cost for housing these will be astronomical, but the finance director thinks this can earned back if they can be trained to do some cool tricks. The PdpWorld Fuzzball Show!

This will require some digging because nobody in their right mind currently runs any of these beasts and all the trainers of yesteryear are probably in or near retirement.

Digging hard and deep in and around French ftp caves of academic nature yielded a tarball with loads of goodies. It is still being catalogued, bagged, mirrored and taged, but by the looks of it is a backup of Mills workstation (udel2.udel.edu?) complete with RT-11 V 5.5 backups and even fuzzball configs from the time the NFSNET backbone critters were converted to NTP servers.


  • NET : 129.140.0.0 : NSFNET-BB :
    • San Diego CA -- General Atomics -- San Diego Supercomputer Center, SDSC
    • Urbana-Champaign IL -- University of Illinois -- National Center for Supercomputing Applications, NCSA
    • Pittsburgh PA -- Carnegie Mellon University -- Pittsburgh Supercomputer Center, PSC
    • Ithaca NY -- Cornell University -- Cornell Theory Center, CTC
    • Princeton NJ -- Princeton University -- John von Neumann National Supercomputer Center, JvNC
    • Boulder CO -- National Center for Atmospheric Research, NCAR

There are 30ish FUZZ entries in a 1987 DoD Internet Host Table, not sure if the NSFNET-BB fuzzballs were listed though.

Here is Mills archive of his du0 system disk.. http://malarky.udel.edu/~dmills/data/du0/

..and the complete archive is here. http://www.eecis.udel.edu/~mills/resource/fuzzball.tar.gz

I think the complete archive are dumps of what were 5 partitions on something like an RD54 MSCP disk. I should be able to recreate such a disk w/ PUTR (http://www.dbit.com/pub/putr/), but I dread solutions that require running MS-DOS.

I got that idea by looking at the SET statements in STARTF.COM.

SET TT: QUIET
SET USR NOSWAP
SET TT: FORM
SET TT: WIDTH=80
SET TT: TAB
SET TT: SCOPE
ASSIGN SY: DK:
ASSIGN SY: INP:
ASSIGN SY: OUT:
ASSIGN DU1: ARC:
ASSIGN TT: LP:
SET DU0: UNIT=0 PART=0
SET DU1: UNIT=0 PART=1
SET DU2: UNIT=0 PART=2
SET DU3: UNIT=0 PART=3
SET DU4: UNIT=0 PART=4
DATE 1-JAN-92
R SETCLK
SET TT: NOQUIET
R PGWAIT
R BOS6

What to set cpu in simh? what it looked like.. eg this LSI-11 http://www.eecis.udel.edu/~mills/pic/fuzzballb.jpg

1MB mem in a 85/86 era pdp-11

DEQNA UNIBUS, PROTEON Unibus ethernet cards??

from tcp-ip archive:

  • BRL used 2 PDP-11/34's and 1 11/23
  • the 256Kb of memory on the full up 18 bit version of the PDP-11's is entirely adequate for an IP gateway.

What disks .. 2 RL02s look cool to get RT-11 to boot.. http://hampage.hu/pdp-11/kepek/1123PLUS.JPG

11/23 had what .. 248k?

From: http://lists.ntp.org/pipermail/hackers/2003-September/000321.html

The stuff I have is the Fuzzware for the NSFnet backbone, including all
sources, binaries and scripts. It's on three RT-11 flopette images now
spining on mort. Fuzzballs used the LSI-11/73 with the PDP11/45 memory
segmentation hardware, a real-time clock board and any of several kinds
of disk drives. Getting that stuff to spin in a simulator would be an
interesting exercise.


and from other places

A  Backbone  node  consists  of a  Digital  Equipment  Corporation  LSI- 
11173 system  wtth  512K  bytes  of memory,  dual-diskette  drive, 
Ethernet  interface  and  serial  interfaces.
One  or two  low-speed 
serial-asynchronous  interfaces  are  provided,  as well  as  one  to three 
high-speed  serial-synchronous  interfaces.  All  Backbone  nodes 
include  crystal-stabilized  clock  interfaces,

&

At the time 
the NSF phase-I backbone had six LSI-11 fuzzballs as routers, each 
connected to a hardware interface that did retransmissions when 
necessary. The backbone was connected at several points to the ARPAnet, 
most of which at 56/64 kbps. The fuzzbals were located at the five NSF 
supercomputer centers on various college campuses.

&

..while the NSFNET backfuzz are connected only to each other
via DDCMP serial lines and to Ethernets at each site. 
The NSFNET Backbone fuzzies 
use DDCMP links	with CRC checking and they do find significant numbers of 
errors sometimes on marginal trunks. I would be	a little uneasy	if the IP 
and/or TCP checksums were the only protection. However,	I am completely 
comfortable without CRC	protection on single-user PCs and workstations 
and would be even more comfortable if the drat Backfuzz	links did NOT use 
retransmission (DDCMP interface	retransmissions	are done in hardware and 
cannot be disabled).

Also lines in BOS6.COM and DAT6.COM yield a few clues..:

! lsi-11/73 (2048k), rx02, mscp, dlv11, dmv11, etc.
        .PARAM  DQ0,<DQI,DQO>,27,1600.,270,174440,10000 ;ethernet link
        .PARAM  DM0,<DMI,DMO>,27,,330,160020,40100 ;dmv11 link
        .PARAM  DY,DYD,200,1976.,264,177170,0 ;rx03 disk controller (sigma)
        .PARAM  DU,DUD,200,65535.,154,172150,0 ;mscp disk controller (fuji)

get/compile/strip simh pdp11

check pcap path .. maybe add -lnl .. mkdir BIN $ gmake USE_NETWORK=1 all

install rt-11 5.3

wget http://simh.trailing-edge.com/kits/rtv53swre.tar.Z
uncompress rtv53swre.tar.Z
cat rtv53swre.tar |tar -xvf -
cp Disks/rtv53_rl.dsk rl1.dsk
wget http://www.dbit.com/pub/pdp11/empty/rl02.dsk.gz
gunzip rl02.dsk.gz 
cp rl02.dsk rl0.dsk
touch lpt.txt
cat >inst.ini <<__EOF
set cpu 11/23+ 256K
attach LPT lpt.txt
set rl1 writeenabled
set rl1 rl02
attach rl1 rl1.dsk
set rl0 writeenabled
set rl0 rl02
attach rl0 rl0.dsk
set rl0 badblock
boot rl1
quit
__EOF

###restart
###cp Disks/rtv53_rl.dsk rl1.dsk; cp rl02.dsk rl0.dsk


$ pdp11 inst.ini 

PDP-11 simulator V3.8-1
Disabling CR
Overwrite last track? [N] y
ZA[c\
        Welcome to RT-11 V5.3

        You have bootstrapped the RT-11 Distribution Disk.  Use this disk to
        install your RT-11 system, then store it in a safe place.

        RT-11  V5.3  provides an automatic installation procedure which will
        back up your distribution disk and build a working system disk which
        should  be  used for your work with RT-11.
        This  working  system disk will only  contain  the  RT-11  operating
        system.  After  the  RT-11  installation  is  complete,  follow  the 
        installation instructions  packaged  with  any optional languages or
        utility software which you will be using.


        Press the "RETURN" key when ready to continue. 

        You  can  choose  to  install  RT-11  manually.  This  procedure  is
        described in the RT-11 Installation Guide. 

        If  you  are a new user of RT-11, DIGITAL highly recommends that you
        use the automatic installation procedure.

        Do you want to use the automatic installation procedure?
        (Type YES or NO and press the "RETURN" key): y

        You  will  be guided through the installation process by a series of
        instructions  and questions; you have an interactive dialog with the
        RT-11  installation  program.   All  you  need  to  do is follow the
        instructions  carefully.  When  the  instructions ask you to mount a
        disk in a specified drive, find the disk with the correct label  and
        mount it in the drive, as shown in your installation booklet. 

        Do  not  remove  any  disk until specifically instructed to do so.
        Once  a  disk  is  mounted in a drive, it must remain in the drive
        until a message appears asking you to remove the disk.

        Press the "RETURN" key when ready to continue. 


        Please enter today's date in the following format:

        DD-MMM-YY
          where DD is the day of the month
                MMM is the first 3 letters in the name of the month
        YY is the last two numbers of the year

        For example:   September 19, 1984 is 19-SEP-84

        Type in the date, then press the "RETURN" key.

              16-oct-94



        A backup copy of the distribution disk will now be built.
        Mount a blank disk in DL0 (Drive 0).
        See the Automatic Installation Booklet for mounting instructions.
        (Remember that the disk is not mounted until you have pressed the LOAD
        button and the READY indicator light is on).



        Press the "RETURN" key when you have mounted the disk. 


        Before  a  blank  disk  can  be used it must be prepared so that the
        software can write data to it. This preparation is called initiali-
        zation.

        The disk in DL0 is now being initialized.

        The following procedure should produce informational  messages
        in the form ?FORMAT-I-Message,  or ?DUP-I-Message.  No  action
        is required as a result of these messages.  If BAD blocks  are
        detected, the block number will be provided.  This information
        should be noted for future reference.

        This can take approximately fifteen minutes.  Please wait...


?DUP-I-No bad blocks detected DL0:

        Now copying the distribution disk from DL1 (Drive 1) to DL0 (Drive 0).

        This may take up to five minutes.  Please wait...


        Your backup copy of the distribution disk is in DL0 (Drive 0).

        Please remove this disk from DL0 and label it
        "RT-11 V5.3 BIN RL02 BACKUP".
        Refer to Appendix B of your installation booklet for instructions
        for dismounting a disk.

        Press the "RETURN" key when you have removed the disk. 


        Your working system disk will now be built automatically. This  disk
        will contain the RT-11 Operating System.
        Select a blank disk and label it: "RT-11 V5.3 BIN RL02 WORKING"
        and mount it in DL0 (Drive 0).



        Press the "RETURN" key when you have mounted the disk. 


        The disk you mounted in DL0 (Drive 0) is an original distribution
        or backup disk.

        The next procedure initializes DL0.  As a  result,  any  files
        that currently reside on DL0 will be permanently lost. If  you 
        would like to retain any files,  EXIT  from Automatic Installation
        Procedure and copy  them  to another volume.


        Do you want to EXIT from Automatic Installation (Y)? n
        The disk in DL0 is now being initialized.

        The following procedure should produce informational  messages
        in the form ?FORMAT-I-Message,  or ?DUP-I-Message.  No  action
        is required as a result of these messages.  If BAD blocks  are
        detected, the block number will be provided.  This information
        should be noted for future reference.

        This can take approximately fifteen minutes.  Please wait...


?DUP-I-No bad blocks detected DL0:

        Now copying RT-11 from DL1 (Drive 1) to DL0 (Drive 0).

        This can take approximately two minutes.  Please wait...

        Your working system disk will now be bootstrapped.

        Press the "RETURN" key when ready to continue. 


RT-11FB  V05.03  

.TYPE V5USER.TXT

                              RT-11 V5.3

       Installation of RT-11 Version 5.3 is complete and you are now
    executing from the working volume    (provided you have used the
    automatic installation procedure). DIGITAL recommends you verify
    the correct  operation  of  your  system's  software  using  the
    verification procedure.  To do this, enter the command:

                             IND VERIFY

        Note that VERIFY should be performed  only after the distri-
    bution media have been backed up.  This was accomplished as part
    of automatic installation on  all  RL02,  RX02,  TK50, and  RX50
    based systems,   including the  MicroPDP-11 and the Professional
    300.  If you have not completed automatic installation, you must
    perform a manual backup before using VERIFY.  Note also,  VERIFY
    is NOT supported on RX01 diskettes,    DECtape I or II,   or the
    Professional 325.

    DIGITAL also  recommends  you  read  the  file V5NOTE.TXT, which
    contains information  formalized too late to be included  in the
    Release Notes.  V5NOTE.TXT can be TYPED or PRINTED.


.

get the fuzzware

This used to go by mail http://hpwren.ucsd.edu/~hwb/NSFNET/NSFNET_lost+found/RIMG0022.JPG http://hpwren.ucsd.edu/~hwb/NSFNET/NSFNET_lost+found/RIMG0023.JPG

now we:

wget http://www.dbit.com/pub/pdp11/fuzzball/bos.dsk.gz
wget http://www.dbit.com/pub/pdp11/fuzzball/fuzz1.dsk.gz
wget http://www.dbit.com/pub/pdp11/fuzzball/fuzz2.dsk.gz
wget http://www.dbit.com/pub/pdp11/fuzzball/fuzz3.dsk.gz
gunzip *dsk.gz

and we have DSDD images..

Gee, thanks wizz!

AFAICT DEC didn't make 8" DS floppy drives, simh doesn't have one for the emulated PDP-11 and RT-11 V5.3 doesn't like the idea very much either.

Maybe they are not 8" ;)


FUZZ1.DSK, FUZZ2.DSK, FUZZ3.DSK, NSF.DSK 5.25" floppy disk disk images
                for the Fuzzball operating system and Internet
                applications for the PDP11 family of computers. These
                are in RT-11 file system format suitable for copying
                to double-density, double-side media. The Fuzzball
                operating system was used in the NSFnet Phase-1
                Backbone during the period 1986-1988 and is probably
                of historic interest only.

have a look around

Dream up some pdp-11 w/ 4 floppy drives..:

set ptr dis
set ptp dis
set lpt dis
set dz DISABLED
set RK dis
set HK dis
set rx dis
set rp dis
set tm dis
set tq dis
set xq dis

set console telnet=50000
set tti 8b
set tto 8b
set cpu 11/23+ 256K
;attach LPT lpt.txt
set rl1 writeenabled
set rl1 rl02
attach rl1 rl1.dsk
set rl0 writeenabled
set rl0 rl02
attach rl0 rl0.dsk
set rq enabled
set rq0 RX33
set rq1 RX33
set rq2 RX33
set rq3 RX33
att rq0 bos.dsk
att rq1 fuzz1.dsk
att rq2 fuzz2.dsk
att rq3 fuzz3.dsk
set rl0 badblock
set rl1 badblock
;set throttle 500K
boot rl0
;boot rl1
;quit

I tried an almost textbook rebuild of the configuration-independent modules w/

DATE 25-oct-94                     ! don't go even near turn of the century
TIME 15:35:35                      ! fuzzballs like to know what time it is
ASSIGN DL1: DK:
INITIALIZE/NOQUERY DK:             ! trash the rt-11 install files
ASSIGN DK: INP: !input device
ASSIGN DK: OUT: !output device
ASSIGN DK: ARC: !archive device
COPY/DEVICE/NOQUERY DU1: ARC:FUZZ1.DSK/FILE
COPY/DEVICE/NOQUERY DU2: ARC:FUZZ2.DSK/FILE
COPY DU2:SYSGEN.COM DK:
@SYSGEN

This breaks somewhere around the compilation of TNLSI and again at LOG.

Unless you change something on the FUZZ1 or FUZZ2 volumes, these steps will not be necessary, or so the README.TXT on DU2: claims.

I take that to mean you can take the binaries from fuzz3.dsk available here at DU3:

Building the resident system with configuration dependent files is another ballgame.

I'm going to give up building a fuzzball on RT-11 V5.3. All is not lost as the above shows nicely how to bring up RT-11 5.3.

I tried setting up RT-11 V5.5 from the various .DSK files in the complete Mills archive, but that gave me headaches and no booting system.

I'm going to give the PUTR (or maybe KERMIT @ 9600 baud) route a shot now as I do want to have a stylised Phase-1 NSFNET running to tie my other emulation projects together.

DOSEMU & PUTR route

Sometimes you have to make a detour to get something running. Funny how often MS-DOS is sitting in a corner shouting... use me!, use me! Well, not this time.

Get the tools and archive in place

The below commands get you dosemu, freedos, putr and the final fuzzball release.

mkdir dos
cd dos
wget http://prdownloads.sourceforge.net/dosemu/dosemu-1.4.0.tgz?download
wget http://prdownloads.sourceforge.net/dosemu/dosemu-freedos-1.0-bin.tgz?download
mv dosemu-freedos-1.0-bin.tgz dosemu-freedos-bin.tgz
gunzip -c dosemu-1.4.0.tgz |tar -xvf -
cd dosemu-1.4.0
./configure 
make
make install
cd ..
wget http://www.dbit.com/pub/putr/putr.com
wget http://www.eecis.udel.edu/~mills/resource/fuzzball.tar.gz
gunzip -c fuzzball.tar.gz |tar -xvf -

Reconstructing the last know fuzzball disk

Get in the mood for this desecration ritual. http://www.eecis.udel.edu/~mills/backroom.html

Now create an indirect command file called PUTR.INI

CLS
SET COPY BINARY
SET MORE OFF
FORMAT fuzzball.img /RD54 /RT11
Y
DU
Mills
INITIALIZE fuzzball.img /RD54 /RT11 /PARTITION:0
DU0
Mills
INITIALIZE fuzzball.img /RD54 /RT11 /PARTITION:1
DU1
Mills
INITIALIZE fuzzball.img /RD54 /RT11 /PARTITION:2
DU2
Mills
INITIALIZE fuzzball.img /RD54 /RT11 /PARTITION:3
DU3
Mills
INITIALIZE fuzzball.img /RD54 /RT11 /PARTITION:4
DU4
Mills
MOUNT DU0: fuzzball.img /RD54 /RT11 /PARTITION:0
MOUNT DU1: fuzzball.img /RD54 /RT11 /PARTITION:1
MOUNT DU2: fuzzball.img /RD54 /RT11 /PARTITION:2
MOUNT DU3: fuzzball.img /RD54 /RT11 /PARTITION:3
MOUNT DU4: fuzzball.img /RD54 /RT11 /PARTITION:4
COPY DU0\*.* DU0:
COPY DU1\*.* DU1:
COPY DU2\*.* DU2:
COPY DU3\*.* DU3:
COPY DU4\*.* DU4:
BOOT DU0:
RT11FB
DU
DISMOUNT DU0:
DISMOUNT DU1:
DISMOUNT DU2:
DISMOUNT DU3:
DISMOUNT DU4:
EXIT

With the command:

dosemu putr.com

you fire up PUTR in dosemu. PUTR reads in PUTR.INI, executes the commands and exits.

booting the fuzzball

First some words of encouragement the esteemed Mills himself.. http://mailman.postel.org/pipermail/internet-history/2009-January.txt

The last remaing fuzzball is in my basement. The original PDP11 code yet 
spins on a disk here. Someday somebody migh enjoy lighing it up in 
simulation.

You now have a bootable disk image fuzzball.img suitable for simh. The emulator ini will need something like:

set rq0 RD54
att rq0 fuzzball.img
boot rq0

The BOS6 system is nothing like our emulated PDP-11, so the whole thing comes crashing down, but nothing stops you from hitting ctrl-c twice and start building your own fuzzies now.

PDP-11 simulator V3.9-0
Disabling CR

RT-11FB  V05.05  

.SET TT: QUIET
<nothing received>
?SETCLK-W-Device error

.R PGWAIT
NOTE TO USER: HIT CTRL C TWICE WITHIN 10 SECONDS FOR RT11
.R BOS6

HALT instruction, PC: 010262 (MOV 105754,73246)
Goodbye

Rebuilding the configuration independent modules

The configuration independent modules don't need to be rebuild, but it is always fun to compare a modern box running simh with the old LSI-11/73s.

From readme.txt..:

You can now mumble @SYSGEN and go read a book. The procedure, which
takes the better part of an hour, will result in a new logical disk FUZZ3.DSK
containing all the goodies.

With STARTF.COM left intact the below commands will do the trick.

UNPROTECT ARC:FUZZ3.DSK
DEL ARC:FUZZ3.DSK
@SYSGEN

On museum (a EUR 200,-- Packard-Hell netbook + 1TB USB drive stuffed in a shoebox) the sysgen takes a mere 85 seconds.

deadly quote

"Laugh it up, fuzzball." - Han Solo to Chewbacca, "The Empire Strikes Back"