Defining I/O Configuration
The I/O configuration is defined by assembling a set of macros as follows:
<count> - the number of devices in the collection being defined by the macro.
<chan-1-address> - The base address for the control unit and the number of address positions used in parentheses separated by a comma.
<cutype> - The type of control unit. Valid values are: 3830.
<type> - The type of the device. Valid values are: 3330, TIRETORE, BASE1.
Gnosis disk packs are defined by a CMS program that calls the subroutine GFORM. This program is currently called GF and defines the ranges on the Gnosis disk packs.
GFORM parameter definition
Pack number in the pack set (4 bytes).
Volume label for the pack (6 bytes).
Packset identifier (unique for the Gnosis) (8 bytes).
Flag for checkpoint header as follows (4 bytes):
1 - Primary checkpoint header on this pack.
2 - Secondary checkpoint header on this pack.
N.B. Each Gnosis system should have two and only two checkpoint headers, one each primary and secondary.
Pointer to the range descriptor list (4 bytes) each entry is:
-1 - Range is part of first logical swap area
0 - Normal range of pages or nodes
1 - Dump range (The kernel will automaticly try to place a dump of real storage in this range when the kernel crashes.) There should only be one of these ranges in a Gnosis system.
2 - IPL range (A copy of the kernel for the hardware IPL process)
Number of pages or nodes in the range (4 bytes).
Number of occurrences of this range (two for duplex) in the Gnosis system (4 bytes).
Each page in a node range will hold 29 nodes.
There is one allocation pot for every 1024 pages (or fraction thereof) in a page range. Swap areas do not have allocation pots.
The minimum space in each logical swap area depends on the number of core pages, the number of node slots in item space, and the number of swap area directory blocks allocated in core to the I/O system. There must be at least two swap ranges in each logical swap area with more space than that calculated by the following formula:
.(3) Load a Gnosis with the item space "GNOSIS" and start it at "INIT".
.(4) Wait until the system becomes quiescent, or at least until a checkpoint has been taken.
Step 2 is needed to ensure that all nodes are empty except those explicitly initialized in Gnosis.
Access the Gnosis disks with, e.g., GDSKS RUNFT TOOLS.
Do LG STARTM. If you get back to CMS, do it again.
Do INIT;G.
Do as much of the procedure for 2686 as you want.
LOGON to GNOFTS:2686 (2688)
Switch to the application controller branch (usually "i")
LIST
Shut the creator of FTS (usually item 2)
Kill all active FTS applications (KILL nnnn)
Switch to branch a
KEYCALL FTS2VM.STATENODE 17
KEYCALL FTS2VMLOG 14 () (%E)
Log in to GNOSIS1 (using the project of TEST sets up the Gnosis environment) on host 85 (to BB 2688 use GNOSIS2 on system 85)
IPL FTCMS
Format the disks:
LOAD GF250DUP (START formats 2 3350 packs with duplexed ranges.
LOAD GF4PKDUP (START formats 4 disk packs.
LOAD GF6PKDUP (START formats 6 disk packs.
LOAD REALDPLX (START was used to format 2 packs.
LOAD V2688PKS (START used to format host 2688 packs.
LOAD GF2PKTST (START for 2-pack test system.
GSENDFMT
LG START
INIT;G
Then, on another (perhaps virtual) terminal:
Log in to SYSTOOL:2691
0,B;U
;W
DDTRECEP;G
[b]
;T
0,RECEP;U
PW%A7; <insert "new password">
[A]
OPENBASE;G
2R/ <insert the return code from GSEND>
LOADKERNEL;G
For host 2688 do the following
Unit Separator
DEF STOR 1M {to get the V=R region}
IPL 130
Unit separator
DISCONN
Ask the operators to move the packs to host 2686 and IPL the GNOSYS pack.
Log on the GNOSIS:2691 and type: [create users]
Wait for a bell, then type carriage return.
AUXFILE GET RECORD JOINUSERCMD TYMNET.GNOSIS 85 JOINUSER CMDFILE "XFER"
CMDFILE JOINUSERCMD
EXECUTE JOIN /FILE
Wait for a bell, then type carriage return.
DEBUG
[b]
[a]
If you did the first part of the big bang with two disk packs and now have four (formatted by GF4PKDUP), you must expand the space bank size as follows.
KEYCALL PRIMORD 0 () (,PSBDOM)
KEYCALL PSBDOM 64 (%X20) (,KICKPRIMEBANK)
DEBUG PSBDOM
[c]
010084;x4;
Decrease the fullword at 010084 by at least 7 but not too much.
[a]
KEYCALL KICKPRIMEBANK 69
CMDFILE GETDIREC
AUXFILE GET RECORD GETFIRST TYMNET.GNOSIS 85 GETFIRST CMDFILE "XFER"
CMDFILE GETFIRST
[create os]
[b]
[a]
AUXFILE GET RECORD OSXFER.CMDFILE TYMNET.GNOSIS 85 OSXFER CMDFILE "XFER"
CMDFILE OSXFER.CMDFILE
At the end of each command file, you will be directed to execute other command files. Do so unless an error occurs. Answer bells.
CMDFILE KERWATFCMD
Then (or concurrently) log in to GNOFTS:2691 and type:
[create main]
Wait for a bell, then type carriage return.
DEBUG
AUXFILE GET RECORD FTSGET TYMNET.ALAN 85 FTSGET CMDFILE "XFER"
CMDFILE FTSGET
EDIT FTSBUILD
TOP
locate the line "KEYCALL FTSTIMERCREATOR 40 (%E00.00.00FTSDALL)"
change FTSDALL to FTSBACK and change 00.00.00 to 23.00.00
When it waits after an ADDLUDKY GNOX0 command, log in to GNOX0:2691 and type:
RABBIT
The circuit will be zapped. Go back to GNOFTS:2691
On 2686 do the following
Then, on SYSTOOL:2691 again:
START2686;G or START2688;G
DISCONNECT;G
On 2686 do the following on userid GNOSIS
CMDFILE USER.KERWATCMD
[create tape]
A:AUXFILE GET RECORD INSTTAPE TYMNET.GNOSIS 85 INSTTAPE CMDFILE "XFER"
A:CMDFILE INSTTAPE
[create monitor]
A:AUXFILE GET RECORD MONITORCMD TYMNET.GNOSIS 85 MONITOR CMDFILE "XFER"
CMDFILE MONITORCMD
[create applmon]
A:AUXFILE GET RECORD APPLGET TYMNET.GNOSIS 85 APPLGET CMDFILE "XFER"
CMDFILE APPLGET
A:AUXFILE GET RECORD CAMGET TYMNET.GNOSIS 85 CAMGET CMDFILE "XFER"
CMDFILE CAMGET
[create ftsmon]
A:AUXFILE GET RECORD FTSMON TYMNET.GNOSIS 85 FTSMON CMDFILE "XFER"
A:CMDFILE FTSMON
[create tymnet]
A:AUXFILE GET TYMNETCMD TYMNET.GNOSIS 85 TYMNET CMDFILE "XFER"
CMDFILE TYMNETCMD
[create tmplint]
A:AUXFILE GET TMPSETUP TYMNET.GNOSIS 85 TMPSETUP CMDFILE "XFER"
CMDFILE TMPSETUP
[create plipack]
CMDFILE COMMON.PLIPACK
[logoff
[create magmon]
A:AUXFILE GET RECORD INST TYMNET.CMMSRC 85 INSTMAG CMDFILE "XFER"
A:CMDFILE INST
You will need to log on to three userid's to complete ADDLUDKY commands.
MPMON:2686;MARS PLUS type RABBIT
OPMON:2686;OPS MON type OPS_MON
Making the BOOT tape
Log onto KLOGGNO2 or the ID under which Gnosis is to run.
GDSKS RUNFT OS (with extensions)
Get the operators to mount the tape KL0001 (or some other tape) with a ring as 181.
MAKETAPE
IPL CMSL
Format the disks if necessary.
LG START
INIT;G
KC EXT 3 () (,BOOTSEG)
CREATE BOOTCMD BOOTSEG
CMDFILE BOOTCMD
First Create the context MAIN
CMDFILE USER.BOOTS.KERNLOADCMD
Context NCS - CMDFILE USER.BOOTS.TMPSETUPCMD
Context PLIPACK - CMDFILE USER.BOOTS.PLIPACKCMD
Context KERWATRC - CMDFILE USER.BOOTS.KERWATFCMD
Context KERWAT - CMDFILE USER.BOODS.KERWATCMD
Context READER - CMDFILE USER.BOOTS.READCRDFCMD
Context PRINTER - CMDFILE USER.BOOTS.PRINTERFCMD
Context TAPE - CMDFILE USER.BOOTS.INSTTAPECMD
Context CMS - CREATE BLDCMS USER.BOOTS.SIM360_CMDSEG;CMDFILE BLDCMS
Context APPLMON - CMDFILE USER.BOOTS.APPLGETCMD
Context USERS - CMDFILE USER.BOOTS.JOINUSERCMD
Context CMS1 - CMDFILE USER.BOOTS.CMS1CMD
Getting the tape KL0002 mounted is an exercise in patience. You need three terminals. One is logged on as GNOSIS in the context CMS1. Log one on as GNOTAPE (pw TAPE.OP) as the KeyKOS tape operator. Log on the third as the VM console of the Virtual KeyKOS machine. (This latter step is eliminated on a native machine.)
You must induce the VM operator to mount the tape and attach it to the KeyKOS virtual machine at the address that appeared in the MOUNT message (on the Tape Operator screen type the command STATUS). When the VM operator has mounted the tape, READY it, then type the command MOUNT xxx (xxx is the address of the drive).
If you run into trouble, use the Tape Librarian screen of GNOTAPE and select option 8 to list the library. The password for KL0002 is listed for you.
OUTPUT 190 3350
RESTORE ALL
OUTPUT 19E 3350
RESTORE ALL
Enter a blank line to exit DDR.
DEF STOR 4M
IPL 190
FORMAT 193 A
TAPE LOAD
KC PRIV 13 () (,TYMLRECE)
KC TYMLRECE 256+8+4