Inter-Office MemorandumToCSLDateJune 16, 1981FromRoy Levin and Ed TaftLocationPalo AltoSubjectSetting up Pilot on a Dolphin or DoradoOrganizationPARC/CSLXEROX Filed on: [Ivy]Doc>SettingUpPilot.bravoThis memo outlines the steps required to install a basic Pilot-based world on a CSL-model Dolphin(sometimes called a "multi-wire" Dolphin) or a Dorado. If you want to do something that appearsnot to be covered here, consult your local wizard.Throughout this memo, characters that actually appear on the screen are represented in this font.Additionally, characters that you type are underlined.CaveatsIf you are using a Dolphin, the following initial conditions are assumed:1)You have been using your Dolphin as a virtual Alto, and its Shugart 4000 disk has beenorganized into two partitions, each configured as a double Diablo-44 file system.2)The second partition of your Shugart disk has no useful files. It will be overwritten by theprocedures below. The first partition is assumed to contain vital, irreplaceable information,and will not be affected by the procedures below.3)Your Dolphin has "new" EPROMs (i.e., those corresponding to the Mokelumne or laterrelease of Pilot).If you are using a Dorado, the following initial conditions are assumed:1)You have been allocated one or more dedicated partitions on that Dorado. Theprocedures below will destroy the previous contents of those partitions and will replace itwith a basic Pilot world; the remaining partitions will not be disturbed.2)There do not already exist any Pilot partitions on that Dorado. There can be at most onePilot file system on each Dorado, though it can span multiple partitions and containmultiple logical volumes (discussed later).If these conditions don't hold, or if you don't know how your machine is set up, consult your localwizard before proceeding.These procedures apply to Pilot 6.0 (Rubicon) only, and apply to both Dolphins and Doradosexcept where noted.Presumably, you are reading this memo because you want to get Pilot running on your Dolphin orDorado and you don't want to slog your way through the copious Pilot documentation to figure outhow. That's just what it's for. If, however, you find this memo doesn't satisfy your thirst for a]gpi c8q]r-q7BrX ]q]r-q7Br Yq]r'-q 7BrSsr N#qF. GrO F6* DZ2 A Str ?d+(%? f?dt r <u 8rI6K C 4Q2) Y 0&8 .ur%,_ L * 'iH$  ;  #GF !I% Y }; + 8+  Z  -1 >" MH >]Setting up Pilot on a Dolphin or Dorado2deep understanding of the underlying mechanisms, try going to the well (Doc>). This memois just a tin cup.Running OthelloOthello is the Pilot disk utility. It is built on a special version of Pilot that knows to keep its handsoff the disk unless specifically instructed to do otherwise. You must terminate each Othellocommand with carriage return. In the dialogues below, what you type is underlined (except forcarriage returns).O1.Get into the MesaNetExec.Type NetExec to the Alto Executive, then type MesaNetExec .O2.Dolphin only: if your machine is a Dolphin with an LF (wide-screen) display. issue thefollowing command:>SetVersions for germ and microcodeGerm: D0.egMicrocode: PilotCSLF.ebO3.Set a switch that tells Othello not to try to bring your Pilot volume on-line, since it doesn'texist yet.>Switches: nThis step is required only when running Othello on a machine with a previously unformatted disk.O4.Run Othello by typing the following to the MesaNetExec.>OthelloD0.pb(Dolphin), or>OthelloDorado.pb(Dorado)The messages "loading germ" and "loading microcode" will appear in the herald, and thenthe screen will go blank as your Dolphin or Dorado boots. Watch the maintenance panelnumbers, which appear on the front panel of a Dolphin and in the middle of the screen on aDorado. The numbers should run through a sequence like 910, 920, 930, 940, 950, 960, 970,975, 980, 990. You may not see all of these, but if the machine hangs with some othernumber in the lights, consult a wizard. Shortly after 990 appears, Othello should announceitself and prompt for input.Othello 6.0 of date> Formatting the DiskThe format of Pilot disks is not compatible with the format presumed by Alto-based software.However, through the miracle of modern technology, it is possible for a pseudo-Diablo Alto filesystem and a Pilot physical volume to cohabit a Dolphin's or Dorado's disk.On a Dolphin, the following procedure will create a Pilot physical volume on the area of yourShugart disk that used to be occupied by Alto partition 2, leaving Alto partition 1 undisturbed. On fv'G br[ `v \Tv Yr \ W^= UI T P``MrbMMrtr"1M =Mrt r J#`u r"'`H|`E-t7D =E- `CC/3C`A A A >r`#<`< `9t79C99C9`6ow` 3Cr`7`/t7//'rX `,t7,O , 'r`)WN`'G`& J`$aA`"K `!>`k`tu`ut Sv r4( ]2- K g] QJ y>]ASetting up Pilot on a Dolphin or Dorado3a Dorado, the procedure will create a Pilot physical volume spanning one or more partitions whosenumbers you specify, leaving the remaining partitions undisturbed.F1a.On a Dolphin, you first want to alert Othello to the presence of your precious Alto filesystem.> Reserve Alto VolumeDrive Name: rd0Reserve space for an Alto volume?: YesNumber of Model 44's? [1..4]: 2F1b.On a Dorado, you need to tell Othello which partitions are to be occupied by the Pilot filesystem.> PartitionsInclude partition 1 in the Pilot file system? Yes or NoInclude partition 2 in the Pilot file system? Yes or NoInclude partition 3 in the Pilot file system? Yes or NoInclude partition 4 in the Pilot file system? Yes or NoInclude partition 5 in the Pilot file system? Yes or NoYou can include more than one partition in the Pilot file system, and they need not beadjacent; however, if they are adjacent, things will be much simpler later on when you arecreating logical volumes.F2.You are now ready to format the partition(s) for Pilot. If you haven't salvaged all the files youcare about on that region of the disk, now is the time. Boot out of Othello, move the fileselsewhere, and start over with step O1.> FormatDrive Name: rd0Are you sure? [y or n]: YesAre you still sure? [y or n]: Yes There is a delay of about 1 minute here (longer if more than one partition).Creating Pilot volume named "Empty" to hold bad spot tableF3.Dolphin only: Formatting the disk has wiped out the microcode, so you need to reinstall it.First, login in a manner suitable for talking to Ivy and establish a connection:> LoginUser: Password: > OpenOpen connection to IvyIvy (Parc) 1.27, File Server of September 2, 1980; 5 users out of 8F4.Dolphin only: Now (re)install the microcode on your disk. Note: This step assumes that yourDolphin has "new" EPROMs. If it doesn't, get your machine converted before you proceed.> Initial Microcode FetchDrive Name: rd0File name: InitialAlto.ebAre you sure? [y or n]: YesFetching...Installing...done fv'G brH `vB ](`-+`[`X2tWX2`V tV3V`T#,TT`S<(RS< Or`I`NF`JtJJ`IP.6HIPxt;HIP`G.6GQGxt;GQG`F.6EFxt;EF`DZ.6DDZxt;DDZ`B.6B[Bxt;B[B`?dr'/`=D`< 8`%u)`7C`5x'`2)t1 2)`0 t0+0`.#..`-3(,-3`+wFO`)t: &r`u r ?`$P`!t!I!`rX `Qt rX `tS\`U`[C  r`u r%u"`eX`t`o to` ` #  ` y 2>]Setting up Pilot on a Dolphin or Dorado4F5.Dolphin only: Close your connection to Ivy. This isn't really necessary, but it is likely to time outbefore you get to use it again, and closing it will prevent subsequent non-determinism.> CloseclosedConfiguring a Physical VolumeYour next step is to configure the blank disk area as a Pilot physical volume. Except for this initialconfiguration process, you rarely have to think about physical volumes. You should read throughthis section before beginning the procedure.P1.You will create a number of logical volumes on the single physical volume. Each of theselogical volumes will hold the files for semi-independent Pilot worlds. There is considerableroom for individual taste (see the discussion below), but in the early days of Cedar, amodicum of uniformity will make everyone's life a little easier. If you think you have a goodreason to diverge from the configuration proposed here, consult a wizard. Don't even change thelogical volume names without consulting a wizard.In the case of a Dorado, the following dialogue assumes you are including only one partitionin the Pilot file system (as declared in step F1b). If you are including multiple partitions thatare all adjacent, this procedure also applies but the numbers will be larger. If the partitionsaren't adjacent, things get more complicated; before proceeding, read the section on multiple-partition file systems (below).> Create Physical VolumeDrive Name: rd0Shall I try to find an old Bad Page Table?: YesNew physical volume name: CedarNumber of logical volumes: [1..6]: 4Logical volume 0 Name: Othello Pages: [50..22133]: 700 Type: debuggerLogical volume 1 Name: Client Pages: [50..21483]: 4000 Type: normalLogical volume 2 Name: CoPilot Pages: [50..17533]: 12000 Type: debuggerLogical volume 3 Name: CoCoPilotNote: Othello will suggest an answer to the following question; the suggested value will be themaximum possible (i.e., consuming the remaining available space in the physical volume), and may notbe exactly 5583. You should accept the value suggested by Othello. Pages: [50..5583]: 5583 Type: debuggerDebuggerAre you sure? [y or n]: YesWhile this may all seem like gibberish to the unfamiliar user, it need not be mysterious. You areasking Othello to subdivide the space on the physical volume into 4 logical volumes with theindicated names. The Othello volume is not strictly necessary, but it is an occasional convenience fv'G br`u rw5``vW`](t\](`[ W^v Tr(? RhG P, Mr`Y`KF`J#N`H|D`F? w`EQ1`B%r@`@~3/`>1/`=/4*`;`89t789`6 t6;6`4,4T44`3C%6233C`1#,1E1`/`.M-.M`,!,O,`***`)W`''Y '`& !%\& `$a$  $a`"`! !`k!3k`m``uuVw RV?%V0C`t!U\` p`]#] rZ gK C y=]Setting up Pilot on a Dolphin or Dorado5and is only given a small amount of space. The Client volume is the nest in which Cedar willgrow. The CoPilot volume is where you develop, compile, and bind your programs. For thatreason, it gets the majority of the file space. The CoCoPilot volume is there to help the wizardswhen CoPilot crashes around your head.At present, there is no way to alter the distribution of space among the logical volumes withoutrecreating the entire physical volume (and destroying its contents!). Therefore, the initialdistribution of space should be carefully considered. In deciding whether to alter the numberssuggested above, you should understand that the raw sizes are slightly misleading; a more usefulnumber is the amount of space remaining after the bare-bones development tools (e.g., Compiler,Binder, Executive) have been installed. Note: these numbers apply to machines with 384K words of realmemory. Smaller machines will have more available free space and larger machines less in the CoPilot and CoCoPilotlogical volumes (the ratio is 8 pages in each volume per K of real memory). Your mileage may vary.Client~900 pagesCoPilot~7000 pagesCoCoPilot~800 pagesIt might be reasonable to move up to 500 pages from CoCoPilot to either CoPilot or Client,depending upon your needs. Exception: on a machine with more than 384K of memory, no pages may be takenaway from CoCoPilot. Similarly, if you anticipate creating substantial files on the Client volume, youmight want to pare down CoPilot. Remember, however, that the CoPilot environment is yourprimary development world and so should retain the bulk of the file space.It might also be reasonable to eliminate the CoCoPilot volume entirely, freeing its pages forinclusion in CoPilot or Client. In fact, when creating a single-partition Pilot file system, it will beessential to eliminate CoCoPilot if your machine has more than 512K words of real memory.If you decide to eliminate CoCoPilot, you should know what will happen when CoPilot crashes: themaintenance panel number 915 will appear, indicating that your machine is now in theTeleDebugger. Note: this depends on your having initialized CoPilot in a special way, described below in step L9.To find out what happened, you must run CoPilot on another Dolphin or Dorado (not necessarilythe same type of machine as yours), and use the ReMote debuggee command to make anEthernet connection to your crashed machine.Multiple-partition file systemsAs mentioned earlier, on a Dorado it is possible for the Pilot file system to occupy multiplepartitions. Pilot doesn't really have any notion of partition'', but simply treats the entire disk as aPilot physical volume. However, Othello does know how Alto partitions are laid out, and itarranges to create Pilot logical volumes only on those regions of the disk you specify.If the partitions to be used by Pilot are adjacent then the space available for creating Pilot logicalvolumes is all contiguous, and you can subdivide this space into logical volumes however youplease. If the partitions are not adjacent then things get more complicated. Due to (temporary)limitations in Pilot, a logical volume must occupy a contiguous region of the disk. Thus, if theavailable space is not contiguous, each logical volume must be entirely contained within one sub-region.Othello provides some assistance in setting things up. The procedure is best illustrated by anexample:F1b.Tell Othello which partitions are to be occupied by the Pilot file system (in this example,partitions 2, 3, and 5). fv'G br#: `vP ^C ](& YE X25( V@ TE S<'8 Q'w7 P2A Nc`Kr `I `H6 DZ C@w5 Ar5 ?4% >JJ :G 9TH 7I 4^P 2#9$ 1wN /hr] -0,-i-t.-i- r  ,, (u %|rC #j "-; W 7)= \  V A2/ R  6)  `B`  >]LUSetting up Pilot on a Dolphin or Dorado6> PartitionsInclude partition 1 in the Pilot file system? NoInclude partition 2 in the Pilot file system? YesInclude partition 3 in the Pilot file system? YesInclude partition 4 in the Pilot file system? NoInclude partition 5 in the Pilot file system? YesF2.(Use normal procedure presented earlier.)P1.Set up logical volumes on the physical volume.> Create Physical VolumeDrive Name: rd0Shall I try to find an old Bad Page Table?: YesNew physical volume name: CedarNumber of logical volumes: [1..6]: 4Remaining space is in 2 runs of 45640, 22820 pages.Logical volume 0 Name: Othello Pages: [50..45640]: 700 Type: debuggerRemaining space is in 2 runs of 45640, 22120 pages.Logical volume 1 Name: Client Pages: [50..45640]: 22120 Type: normalRemaining space is in 2 runs of 45640, 0 pages.Logical volume 2 Name: CoPilot Pages: [50..45640]: 35000 Type: debuggerRemaining space is in 2 runs of 10640, 0 pages.Logical volume 3 Name: CoCoPilot Pages: [50..10640]: 10640 Type: debuggerDebuggerAre you sure? [y or n]: YesAt each step, Othello tells you how the remaining space is divided; each additional logical volumecan be no larger than the largest of these sub-regions. When you specify a size for a logicalvolume, Othello applies a best-fit'' algorithm to select a sub-region for it. That is, Othello assignsthe new logical volume to the smallest sub-region into which it will fit. You may need to do someadvance planning to obtain the desired effect.Preparing Logical VolumesEach of the logical volumes created above needs to have a boot file installed on it. This is theprogram that will receive control when the volume is booted. In addition, certain other files neededfor booting (the germ and the microcode) need to be installed somewhere on the physical volume.In the procedures below, you should systematically replace "m" by "D0" for a Dolphin or"Dorado" for a Dorado. fv'G`btab``v.6``v`^.6^x^`](.6\](`[.6[)[`Y.6YY Vr`) S<`.`OtOO`NF tMNF`L,4TLGL`J%6J3J`IP#,HIP`G3`F`DZDDZ`B!B[B`A @A `?d3`=`<; <`:n!:3:n`88o 8`7/`5x`33y3`2)!132)`00+0`./`-3`++5+`)!)3)`(=' p(=`&#&?& #Gr#? !I Y Qb . v 9rM @% 0/ #xrtr tr =[^Setting up Pilot on a Dolphin or Dorado7L1.Bring your disk to "online" status.> OnlineDrive Name: rd0L2.Establish a connection to Ivy.> LoginUser: Password: > OpenOpen connection to IvyIvy (Parc) 1.27, File Server of September 2, 1980; 5 users out of 8> DirectoryDirectory: Pilot>m(remember m = D0 or Dorado)L3.Install Othello and the germ on the Othello volume.> FetchLogical Volume Name: OthelloBoot file name: Othellom.bootFetching...Installing...done> Germ FetchLogical Volume Name: OthelloGerm file name: m.germFetching...Installing...doneShall I also use this for the Physical Volume? YesL4.Dolphin only: Install Pilot microcode on the Othello volume.> Pilot Microcode FetchLogical Volume Name: OthelloPilot microcode file name: CedarD0.ebFetching...Installing...doneShall I also use this for the Physical Volume? YesL5.Install CoPilot on the CoCoPilot volume. If you did not create a CoCoPilot volume, skip thisstep.> FetchLogical Volume Name: CoCoPilotBoot file name: CoPilotm.bootFetching...Installing...doneL6.Install CoPilot on the CoPilot volume.> FetchLogical Volume Name: CoPilotBoot file name: CoPilotm.bootFetching...Installing...done fv'G br`"w`^t^x^`]( t\]( Yr``VtV3V`TrX `S FetchLogical Volume Name: ClientBoot file name: Cascadem.bootFetching...Installing...doneL7b.Install Tajo on the Client volume.> FetchLogical Volume Name: ClientBoot file name: Tajom.bootFetching...Installing...doneL8.You have now retrieved and installed all of the files necessary to initialize your volumes. Younext specify that the Othello volume is to be booted when you enter the Pilot world from theAlto world (you'll see how to do that shortly).> Closeclosed> Set Physical Boot FilesLogical Volume Name: OthelloSet physical volume boot file from this logical volume? YesThe following question is asked only on Dolphins.Set physical volume pilot microcode from this logical volume? YesSet physical volume germ from this logical volume? YesAre you sure? [y or n]: YesL9.Your logical volumes are now ready to be initialized by booting. If you created a CoCoPilotvolume (in step P1 above), do step L9a; otherwise do step L9b.L9a.Install CoCoPilot and CoPilot normally.> BootLogical Volume Name: CoCoPilotswitches: The maintenance panel numbers will sequence through 910, 920, 930, 940, 950, 960,970, 975, 980, 990, although you may not see all of them go by. You will then seeCoCoPilot initializing itself (creating windows, outload files, herald, etc.). When ithas finished, it will boot your Othello volume, setting you up to repeat the procedurefor your CoPilot volume.Othello 5.0 of 22-Oct-80 10:25:13> OnlineDrive Name: rd0> BootLogical Volume Name: CoPilotswitches: fv'G br`;``v`](%`YtYY`X2!W X2`VV3 pV*@V3Vx+V33Vt`T`Qr"`NFtMNF`L!LG L`JJ\J ,JJx!J3Jt`IP Fr`[`DZX`B/`?dt? ?d`=`<;3<`:n!::n`88>h8o8 7BwF1`5t>Cr5g5`43:534`2p#22p /!r`D`-z>`*+`'V&t&\&V%5%$%5V# rV ?=V(*VWVIH VVSt!VUV jV]\]V%_V r =ZDSetting up Pilot on a Dolphin or Dorado9L9b.Install CoPilot with switches that tell it to invoke the TeleDebugger when it crashes,rather than attempting to invoke the (nonexistent) CoCoPilot.> BootLogical Volume Name: CoPilotswitches: MR When CoPilot has finished installing, it will once again boot your Othello volume.L10.You now establish the Client volume's boot file (Tajo or Cascade) as the physical boot file.Othello 5.0 of 22-Oct-80 10:25:13> OnlineDrive Name: rd0> Set Physical Boot FilesLogical Volume Name: ClientSet physical volume boot file from this logical volume? YesAre you sure? [y or n]: Yes>Switching between Pilot and Alto worldsDolphinYour Dolphin is presently configured to boot the Alto world when the boot button is pressed. Thiscan be changed by installing different initial microcode, but you probably don't want to do that just yet. To transfercontrol from the Alto world to the Pilot world, you need a program called RunPilot, which is storedas:[Iris]D0>RunPilot.bcdSince this is a Mesa program, you also need[Ivy]RunMesa.run[Ivy]Mesa.imageTo transfer control to the Pilot world, simply typeRunPilotto the Alto Executive. Your Pilot Client volume should boot. If you performed step L7a, Cascadewill transfer control to CoPilot, and you should proceed with the installation of Cascade (nextsection). If you performed step L7b, you should now be in Tajo, and can ignore the remainder ofthis memo (or do it some other time).To return to the Alto world, either push the boot button or get the program you are running toperform a boot for you. In Othello, the Quit command performs a boot; in CoPilot or Tajo,invoking the BootButton menu command (by pressing the middle mouse button while pointing intothe top window) does likewise. You should not press the boot button while in CoPilot because thissubstantially slows down subsequent re-entry to CoPilot (and will cause context to be lost if younext enter CoPilot from a client program). fv'G`br`B``v=V](t\\](V[%[)[VY YYr`VR S<`V`Ot!`NFMNF`L tLGL`JJ3J`IP!H IP`G8>hGQG`F#EF`DZ @7v' OnlineDrive Name: rd0> LoginUser: Password: > OpenOpen connection to IvyIvy (Parc) 1.27, File Server of September 2, 1980; 5 users out of 8> FetchLogical Volume Name: ClientBoot file name: Cascadem.bootFetching...Installing...done> Close fv'G? bu ^r@ ](># [V Y(3 X2 T$tr ' S<0, Q># O@# NFQ JN IPI GD F22 DZ_ BP A F ]Setting up Pilot on a Dolphin or Dorado11closed> BootLogical Volume Name: Clientswitches: You should now be talking to CoPilot.C2.Using the FileTool in CoPilot, obtain the following files:[Ivy]Editor.bcd[Ivy]Executive.bcd[Ivy]FTP.bcd[Ivy]InitThinPilot.cm[Ivy]User.cm On a Dorado with lots of file space in CoPilot, you may wish to use InitFatPilot.cm ratherthan InitThinPilot.cm.C3.Use the center mouse button to obtain the menu in the herald at the very top of the screen,and use it to boot CoPilot. This will cause CoPilot to reinstall itself, incorporating theCascade Executive, compiler, and binder. When this process finishes, you will find yourselfin CoPilot once again.C4.Using the SimpleExec (which will initially be a small box at the right of the screen), type:@InitThinPilot(or @InitFatPilot) which will bring over numerous files that are useful for program development in the CoPilotenvironment.C5.Edit User.cm to personalize it; at a minimum, insert your own user name. Then boot CoPilotagain (step C3) to cause CoPilot to take notice of the changes in User.cm.C6.To bring over Cedar-related files, use the SimpleExec to invoke either CedarG.cm orCedar.cm, depending on whether or not you wish to include the Cedar Graphics package.@CedarG(or @Cedar) MiscellaneousIf you move a disk from one machine to another, or any change is made in your machine'shardware configuration (e.g., the amount of real memory changes, or the Ethernet address changes),you must re-install CoCoPilot and CoPilot, repeating step L9 of the setup procedure.Additionally, if the amount of real memory increases, the re-installation process will enlarge theoutload files on the CoCoPilot and CoPilot volumes; the amount of increase is 8 pages per K ofreal memory per volume. There must be sufficient free space for this to be possible. fv'G?`bt``v`\`v`^!^x ^`]( r`Y% V`:`S 9UT =S TIMESROMAN  HELVETICA TIMESROMAN LOGOGACHA  TIMESROMAN  TIMESROMAN  TIMESROMANGACHA *V &[,,1`7=EJj/M KVSettingUpPilot.bravoTaftJune 16, 1981 7:14 PM