Last Edit E. Neely 24-Mar-82 Filed on: [Idun] HowToIntegrateD0UCode.doc 0. Introduction This document describes how to create D0 microcode for SDD. D0 microcode is created on an Alto or on an Alto emulating system(D0 or Dorado). Steps 1 through 9 below tell how to generate SDD D0 microcode from good sources. The procedure is quite simple. An appendix discusses more complex tasks. SDD D0 microcode is maintained in concert with CSL. Much of the D0 microcode is common to all uses and configurations. The procedures described in this document are based on the assumption that D0 microcode will be fairly stable and that any changes to the microcode generated by SDD will be coordinated with CSL. Directories *** [Indigo] [Indigo] is a CSL directory that contains the most recent sources of D0 microcode supporting most D0 configurations including the standard SDD configuration. The primary sources for generating SDD D0 microcode are contained in two dump files: PilotUCode.Dm and InitialSources.Dm. *** [Indigo] *.press and *.bravo files document various aspects of D0 and it's Alto based tools. *** [Idun] [Idun] is the SDD working microcode directory. It contains interim integrations done for the purpose of development and testing. All test integrations are done from this directory, and the results are automatically stored onto it. WD0 also contains a snapshot of the [Indigo] dump files PilotUCode.Dm and InitialSources.Dm used for the current build thus providing source stability during generation and checkout of SDD versions of the microcode. Like

, is for testing purposes and should not be used for general internal use. *** [Idun]Current> [Idun]Current> is the archive directory of the current internal release of D0 microcode. When, after testing, the microcode is ready for general internal use, the top layer of [Idun] is copied to [Idun]Current>. Boot files (PilotD0.eb InitialPilot.eb Initial.eb) for general internal use should be obtained here or from [Idun]Microcode>Public>. *** [Idun]Microcode>Public> and [Idun]Microcode>Private>D0> When appropriate, PilotD0.eb, InitialPilot.eb Initial.eb are transferred to [Idun]Microcode>Public> and the top layer of [Idun]Current> is copied to [Idun]Microcode>Private>D0>. 1. Get Disks You will need a double disk Alto and two disks to do this integration. 2. Create a Double Disk Operating System Boot the NetExec and type NewOs. Use the long installation dialog to erase the disks. Reply YES to: Do you want a big SysDir? 3. Get D0 Microcode Tools Use Ftp to Retrieve [Idun]GetD0UCodeTools.cm >>>>> Type: @GetD0UCodeTools The command file will get the Alto programs, fonts and microcode tools you need to create D0 microcode. It loads the Midas debugging tools from [Indigo]D0MidasRun.Dm and a user.cm from [Idun]. It loads many of the command files used below. It finishes by installing Swat and initializng Bravo. You may want to change the default printer in user.cm and reintialize Bravo (Type Bravo/i). 4. Getting the latest sources from [Indigo]. If you want to incorporate Pilot sources from [Indigo], >>>>> Type: @PilotSourceToWD0 This will transfer the current PilotUCode.Dm from [Indigo] to [Idun] for use in the remainder of this procedure. This takes a long time. If you want to incorporate Initial sources from [Indigo], >>>>> Type: @InitialSourceToWD0 This will transfer the current InitialSources.Dm from [Indigo] to [Idun] for use in the remainder of the procedure. 5. Create SDD D0 Pilot Microcode This step generates the boot files required for SDD Pilot D0 microcode. They are: PilotD0.eb, Async.sb, Byte.sb, Bit.sb & TTY.sb. The sb files are incorporated into communications software and downloaded when needed. WARNING. Step 5 (Create SDD D0 Pilot Microcode) and Step 6 (Create SDD D0 Initial Microcode) should always be carried out independently. >>>>> Type: @LoadPilotSources This loads the mc, mlf and cm files needed to create Pilot microcode from [Idun]. The first non comment line of GlobalDefs.mc allows one to set the AssemblyMode. An AssemblyMode of 0 assembles SDD standard Pilot microcode. >>>>> Use Bravo to edit the first non comment line of GlobalDefs.mc so that it looks like: IDF[AssemblyMode,,Set[AssemblyMode,0]]; AssemblyMode causes conditional assembly and page assignments.The 0 value causes the generation of the standard SDD configuration (Emulator, 3MB and 10MB EtherNet, LF-CSL-CSLF displays as an overlayed package, SA4000 Disk, MIOC kernal and overlays and midas kernal). >>>>> Type: @BuildPilot First this command file performs a series of micro assemblies. When these have been completed it calls Find/m *.er and the screen will ask you for a PATTERN. >>>>> Type: Error(s). There should be 0 matches. If so, go to the next substep; otherwise type SP then CR and then CTRL C to terminate the build. >>>>> Type: Warnings(s). There should be 0 0 matches. If so, go to the next substep; otherwise type SP then CR and then CTRL C to terminate the build. >>>>> Type: CR Now, the command file does a series of MicroD's which bind the assembled binaries. This phase also ends by going to Find. This time via Find/m *.dls. The screen will be asking you for a PATTERN. >>>>> Type: Error(s). Find will get matches and present you with a series of lines looking like: nnnnn MicroD time: n seconds; 0 error(s), 0 warning(s), nnnn words free If all such lines have a zero value for errors and warnings, go to the next substep; otherwise type SP then CR and then CTRL C to terminate the build. >>>>> Type: SP CR Now the procedure will generate a series of boot files and finally uses Ftp to save relevant files on Wd0. It saves the boot file PilotD0.eb, the Mioc overlay files (Async.sb, Byte.sb, Bit.sb & TTY.sb), MicroD's *.dls files and a dump file of the er flies called PilotEr.dm. 6. Create SDD D0 Initial Microcode This step generates InitialPilot.eb and Initial.eb. WARNING. Step 5 (Create SDD D0 Pilot Microcode) and Step 6 (Create SDD D0 Initial Microcode) should always be carried out independently. >>>>> Type: @LoadInitialSources This loads the mc, mlf and cm files needed to create Initial microcode from [Idun]. >>>>> Type: @BuildInitial First this command file performs a series of micro assemblies. When these have been completed it calls Find/m *.er. The screen will be asking you for a PATTERN. >>>>> Type: Error(s). There should be 0 matches. If so, go to the next substep; otherwise type SP then CR and then CTRL C to terminate the build. >>>>> Type: Warnings(s). There should be 0 matches. If so, go to the next substep; otherwise type SP then CR and then CTRL C to terminate the build. >>>>> Type: CR Now, the command file does a series of MicroD's which bind the assembled binaries. This phase also ends by going to Find. This time via Find/m *.dls. The screen will be asking you for a PATTERN. >>>>> Type: Error(s). There will be a match and Find present you with a line like this: nnnnn MicroD time: n seconds; 0 error(s), 0 warning(s), nnnn words free If line has a zero value for errors or warnings, go to the next substep; otherwise type SP then CR and then CTRL C to terminate the build. >>>>> Type: SP CR Now the procedure will generate a series of boot files and finally use Ftp to save relevant files on WD0. It saves the boot files InitialPilot.eb and Initial.eb, MicroD's *.dls files and in a dump file of the er files called InitialEr.dm. 7. Test New Microcode 8. Save on [Idun]Current> Once the new microcode is tested it can be saved on [Idun]Current>. >>>>> Use Edit to to put your name in the Login command of WD0ToAD0.brownie >>>>> Type: @WD0ToAD0 You will be asked for your Idun password and the WD0 and AD0 connect passwords. It also saves the Brownie.log on AD0>Current 9. Update [Idun] When appropriate the microcode is saved on Int. >>>>> Use Edit to to put your name in the Login command of AD0ToInt.brownie >>>>> Type: @AD0ToInt You will be asked your Idun password and for the AD0 and Int connect passwords. Appendix A: Modifying Microcode. TBD Appendix B: Non-standard configurations. TBD Appendix C: Copying modified microcode to Int. Ideally any microcode copied to Int should have been fully integrated with CSL microcode on Indigo. When it is necessary to release microcode to Int with unintegrated modifications it must be simple to rebuild. This implies ... TBD. (1300)\4431f5 39f0