; RELOAD a new MPE-V/R system from the FOS tape. ; ; This script RELOADs MPE from the Fundamental Operating Software tape to a new, ; blank system disc image. The default system configuration is changed to ; match the simulated hardware available, mostly by deleting devices that do ; not exist in the simulation configuration. ; ; ; NOTES: ; ; - The SIMH EXPECT commands below do not require regular expression support. ; ; - A workaround is included for a bug in the INITIAL module that occurs when ; using a terminal for the system console that does not respond to the ; ENQ/ACK protocol. The workaround is not required, however, unless the ; default setting for ATC channel 0 (LOCALACK) is changed to REMOTEACK. See ; the HP 3000 simulator release notes for details. ; Set up the console log. set -n console log=mpe-1-reload.log ; Configure the simulation environment. set console DEL=177 set cpu idle=10 ; Set the disc mode and attach a new, blank disc image file. set ds0 7920,format attach -n ds0 mpe-reload.7920.disc ; Set the tape mode and attach the FOS tape image file. set ms0 7970E attach -r ms0 32002-11018_Rev-2548.tape ; Cold load the FOS installation tape. deposit SWCH 003006 load ; Work around the SPEEDSENSE bug in INITIAL (see the note above). ; ; Changes LOAD P+22,I,X to LDI 360 to set the detected speed to 240 cps. assert 01.112247=046022 deposit 01.112247 021360 ; Run the INITIAL program and reply to the configuration questions. expect -p "? " go ; Reply to "WHICH OPTION ? " send "RELOAD\r" go ; Reply to "WHICH OPTION ? " send "SPREAD\r" go ; Reply to "ANY CHANGES? " send "YES\r" go ; Reply to "LOAD MAP? " send "YES\r" go ; Reply to "MEMORY SIZE = 128.? " send "512\r" go ; Reply to "I/O CONFIGURATION CHANGES? " send "YES\r" go ; Reply to "LIST I/O DEVICES? " ; ; Note that the device list includes the string " ?? " in the output, so we ; must look for the actual question string rather than simply "? ". send "YES\r" noexpect expect "LIST CS DEVICES? " go ; Reply to "LIST CS DEVICES? " send "NO\r" expect -p "? " go ; Reply to "HIGHEST DRT = 23.? " send "36\r" go ; Change the subtype of the system disc. ; ; Reply to "LOGICAL DEVICE #? " send "1\r" go ; Reply to "DRT #? " send "4\r" go ; Reply to "UNIT #? " send "0\r" go ; Reply to "SOFTWARE CHANNEL #? " send "0\r" go ; Reply to "TYPE? " send "0\r" go ; Reply to "SUB TYPE? " ; ; Subtype 4 = 7905 disc drive, removable platter ; Subtype 5 = 7905 disc drive, fixed platter ; Subtype 6 = 7905 disc drive, both platters ; Subtype 7 = 7905 disc drive, system disc mode ; Subtype 8 = 7920 disc drive ; Subtype 9 = 7925 disc drive send "8\r" go ; Reply to "RECORD WIDTH? " send "128\r" go ; Reply to "OUTPUT DEVICE? " send "0\r" go ; Reply to "ACCEPT JOBS/SESSIONS? " send "NO\r" go ; Reply to "ACCEPT DATA? " send "NO\r" go ; Reply to "INTERACTIVE? " send "NO\r" go ; Reply to "DUPLICATIVE? " send "NO\r" go ; Reply to "ENABLE SEEKAHEAD? " send "NO\r" go ; Reply to "INITIALLY SPOOLED? " send "NO\r" go ; Reply to "DRIVER NAME? " send "*IOMDISC1\r" go ; Reply to "DEVICE CLASSES? " send "DISC,SPOOL\r" go ; Remove the second (unused) disc drive. ; ; Reply to "LOGICAL DEVICE #? " send "2\r" go ; Reply to "DRT #? " send "0\r" go ; Change the system console terminal type from an HP 264x to a non-HP terminal, ; as the default simulation console does not respond to the HP ENQ/ACK ; protocol. ; ; Reply to "LOGICAL DEVICE #? " send "20\r" go ; Reply to "DRT #? " send "7\r" go ; Reply to "UNIT #? " send "0\r" go ; Reply to "SOFTWARE CHANNEL #? " send "0\r" go ; Reply to "TYPE? " send "16\r" go ; Reply to "SUB TYPE? " send "0\r" go ; Reply to "TERM TYPE? " ; ; Term type 0 = ASR33 teleprinter (the driver writes SYN pad characters) ; Term type 4 = HP 2600A terminal ; Term type 10 = HP 264x, HP 262x terminal ; Term type 18 = Non-HP terminal send "18\r" go ; Reply to "SPEED IN CHARACTERS PER SECOND? " send "\r" go ; Reply to "RECORD WIDTH? " send "40\r" go ; Reply to "OUTPUT DEVICE? " send "20\r" go ; Reply to "ACCEPT JOBS/SESSIONS? " send "YES\r" go ; Reply to "ACCEPT DATA? " send "YES\r" go ; Reply to "INTERACTIVE? " send "YES\r" go ; Reply to "DUPLICATIVE? " send "YES\r" go ; Reply to "INITIALLY SPOOLED? " send "NO\r" go ; Reply to "DRIVER NAME? " send "IOTERM0\r" go ; Reply to "DEVICE CLASSES? " send "TERM\r" go ; Change ATC channel 2 from hardwired to modem connection to demonstrate DTR ; disconnection after logoff. ; ; Reply to "LOGICAL DEVICE #? " send "22\r" go ; Reply to "DRT #? " send "7\r" go ; Reply to "UNIT #? " send "2\r" go ; Reply to "SOFTWARE CHANNEL #? " send "0\r" go ; Reply to "TYPE? " send "16\r" go ; Reply to "SUB TYPE? " ; ; Subtype 0 = hardwired connection, speed sensing ; Subtype 1 = full-duplex modem connection, speed sensing send "1\r" go ; Reply to "TERM TYPE? " ; ; Term type 0 = ASR33 teleprinter (the driver writes SYN pad characters) ; Term type 4 = HP 2600A terminal ; Term type 10 = HP 264x, HP 262x terminal ; Term type 18 = Non-HP terminal send "10\r" go ; Reply to "SPEED IN CHARACTERS PER SECOND? " send "\r" go ; Reply to "RECORD WIDTH? " send "40\r" go ; Reply to "OUTPUT DEVICE? " send "22\r" go ; Reply to "ACCEPT JOBS/SESSIONS? " send "YES\r" go ; Reply to "ACCEPT DATA? " send "YES\r" go ; Reply to "INTERACTIVE? " send "YES\r" go ; Reply to "DUPLICATIVE? " send "YES\r" go ; Reply to "INITIALLY SPOOLED? " send "NO\r" go ; Reply to "DRIVER NAME? " send "IOTERM0\r" go ; Reply to "DEVICE CLASSES? " send "TERM\r" go ; Remove these communications devices: ; ; - 30360A Hardwired Serial Interface ; - 30055A Synchronous Single-Line Controller ; - 30010A Intelligent Network Processor ; ; None of these devices exist on the simulated system. ; ; Reply to "LOGICAL DEVICE #? " send "11\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "12\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "13\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "14\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "15\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "16\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "17\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "18\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "60\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "61\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "62\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "63\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "70\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "71\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "72\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "73\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "80\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "81\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "82\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "83\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "90\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "91\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "92\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "93\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "95\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "100\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "101\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "102\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "103\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "110\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "117\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "120\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "121\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "122\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "123\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "130\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "137\r" go ; Reply to "DRT #? " send "0\r" go ; Reply to "LOGICAL DEVICE #? " send "138\r" go ; Reply to "DRT #? " send "0\r" go ; Finished with the changes to the I/O devices. ; ; Reply to "LOGICAL DEVICE #? " send "0\r" go ; Reply to "MAX # OF OPEN SPOOLFILES = 20.? " send "20\r" go ; Reply to "LIST I/O DEVICES? " ; ; Note that the device list includes " ?? " in the output, so we ; must look for the actual question string rather than simply "? ". send "YES\r" noexpect expect "CLASS CHANGES? " go ; Reply to "CLASS CHANGES? " send "NO\r" expect -p "? " go ; Reply to "LIST I/O DEVICES? " send "NO\r" go ; Reply to "LIST ADDITIONAL DRIVERS? " send "YES\r" go ; Reply to "I/O CONFIGURATION CHANGES? " send "NO\r" go ; Reply to "DISC VOLUME CHANGES? " send "YES\r" go ; Reply to "LIST VOLUME TABLE? " send "YES\r" go ; Delete the second (unused) disc volume. ; ; Reply to "DELETE VOLUME? " send "YES\r" go ; Reply to "ENTER VOLUME NAME? " send "MH7925U1\r" go ; Reply to "ENTER VOLUME NAME? " send "\r" go ; Reply to "ADD VOLUME? " send "NO\r" go ; Reply to "LIST VOLUME TABLE? " send "YES\r" go ; Reply to "NON-SYSTEM VOLUME ON LDEV 1" ; and "ADD TO SYSTEM VOLUME SET? " send "YES\r" go ; Reply to "ENTER VOLUME NAME? " send "MH7920U0\r" go ; Reply to "LOGICAL PACK SIZE IN CYLINDERS = 815.? " send "\r" go ; Reply to "LIST DEFECTIVE TRACK/SECTOR INFORMATION? " send "YES\r" go ; Reply to "LOGICAL DEVICE #? " send "1\r" go ; Reply to "LOGICAL DEVICE #? " send "0\r" go ; Reply to "DELETE TRACK? " send "NO\r" go ; Reply to "LIST VOLUME TABLE? " send "NO\r" go ; Reply to "VIRTUAL MEMORY CHANGES? " send "YES\r" go ; Reply to "LIST VIRTUAL MEMORY DEVICE ALLOCATION? " send "YES\r" go ; Reply to "ENTER VOLUME NAME , SIZE IN KILOSECTORS? " send "\r" go ; Reply to "VIRTUAL MEMORY CHANGES? " send "NO\r" go ; Reply to "DISABLE LOGGING? " send "NO\r" go ; Reply to "MAX # OF SPOOLFILE KILOSECTORS? =128? " send "\r" go ; Reply to "# OF SECTORS PER SPOOLFILE EXTENT = 384.? " send "\r" go ; The FOS tape directory contains entries for files that are not present on the ; tape. INITIAL reports that these files are not found and asks whether ; another tape image is available. The missing files are mostly support files ; that do not affect MPE operation. ; ; Reply to "184 FILES NOT FOUND - ANOTHER TAPE SET AVAILABLE?" send "NO\r" go ; Reply to "NOT ALL FILES FOUND - LIST? " send "YES\r" noexpect expect "?" go ; System configuration is complete. INITIAL now boots up MPE for the first ; time. ; ; Respond to "DATE (M/D/Y)?" send "%DATE_MM%/%DATE_DD%/%DATE_19XX_YY%\r" expect "?" go ; Respond to "TIME (H:M)?" send "%TIME_HH%:%TIME_MM%\r" expect ")" go ; Respond to "SUN, APR 5, 1987, 1:31 AM? (Y/N)" send "Y\r" expect "M\r\n:" go ; Reply to "HP3000 / MPE V E.01.00 (BASE E.01.00). THU, FEB 11, 1988, 1:52 PM" (e.g.) ; and then ":" send "BYE\r" expect "20\r\n" go ; Reply to "13:52/#S1/14/LOGOFF ON LDEV #20" (e.g.) send "\001" expect "=" go ; Reply to "=" send "SHUTDOWN\r" noexpect go ; Verify "Programmed halt, CIR: 030377 (HALT 17)" assert CIR=030377 quit