|
DataMuseum.dkPresents historical artifacts from the history of: CP/M |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about CP/M Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 136320 (0x21480) Types: TextFile Names: »D37«
└─⟦017e68d2c⟧ Bits:30005867/disk05.imd Dokumenter (RCSL m.m.) └─⟦this⟧ »D37«
i T_A_B_L_E_ _O_F_ _C_O_N_T_E_N_T_S_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _P_A_G_E_ 1. INTRODUCTION .......................................... 1 2. POWER UP TEST ......................................... 2 3. MICROPROGRAMMED TEST .................................. 4 3.1 Operating via OCP ................................ 4 3.2 Operating via TCP ................................ 4 3.3 CPU Test ......................................... 5 3.4 Memory Test ...................................... 7 3.4.1 Normal Mode ............................... 7 3.4.2 Short Mode ................................ 7 3.4.3 Memtest Algorithm ......................... 8 3.5 Cache Test ....................................... 10 3.5.1 Cache Test Algorithm ...................... 11 3.6 Error Messages ................................... 12 3.6.1 Operating via OCP ......................... 12 3.6.2 Operating via TCP ......................... 12 3.6.3 Description of Error Types ................ 13 A_P_P_E_N_D_I_X_: A. LIST OF THE TCP COMMANDS .............................. 25 \f ii \f 1_._ _ _ _ _ _ _ _ _I_N_T_R_O_D_U_C_T_I_O_N_ 1. The microtest consists of two parts. The first part is started after power up, and ensures that the TCP (technician>s control panel) is functioning properly. The second part is a more complete test which is divided in a CPU test, a Memory test, and a Cache test. These tests can be controlled either by the OCP or the TCP. \f F_ 2_._ _ _ _ _ _ _ _ _P_O_W_E_R_ _U_P_ _T_E_S_T_ 2. This is a very simple test with the purpose of checking the TCP. The test is using the three indicators on the front panel of the CPU821. Registers and operations used in the TCP handling is tested, and the test is terminated by checking the TCP input and output procedures. D_e_s_c_r_i_p_t_i_o_n_ The test is started at power up if the second mode switch on the CPU821 PCBA is set (fig. 1). At first the three indicators on the front panels are tested, and a loop is entered where the four different u-instruction cycle lengths are tested (fig. 1). Pressing the autoload botton on the OCP makes the test continue. Three different tests are executed and in case of errors the erroneous testnumber is displayed by the indicators, while the test is looping. The CPU is continuing with the tests until the autoload button is pressed again. Then the test writes the text "TYPE OCTAL NUMBER:" on the TCP, and the operator is supposed to enter an octal number terminated by a <CR'. The number is echoed by the test, and in that way the input and output procedures are tested. \f Figure 1: Mode switches on the CPU821, and timing diagram. \f F_ 3_._ _ _ _ _ _ _ _ _M_I_C_R_O_P_R_O_G_R_A_M_M_E_D_ _T_E_S_T_ 3. 3_._1_ _ _ _ _ _ _ _O_p_e_r_a_t_i_n_g_ _v_i_a_ _O_C_P_ 3.1 The test is started when the autoload botton at the OCP is activated. Depending on the third mode switch on the CPU821 (fig. 1) the test is either run in short mode or in normal mode. In the latter case the test is performed continuously. The test is broken and restarted if the autoload botton is activated. On the front panel of the CPU821 there is a switch to disable the test, in case the coredump produced after autoload is needed. 3_._2_ _ _ _ _ _ _ _O_p_e_r_a_t_i_n_g_ _v_i_a_ _T_C_P_ 3.2 The test is started with the following commands typed on the TCP: T0: CPU test, Memory test normal mode, Cache test T1: CPU test, Memory test short mode, Cache test T2: CPU test T3: Memory test normal mode T4: Memory test short mode T5: Cache test T6: Clear and size memory W3 = last location in memory T7: Loop to adjust deskew delay. I_n_d_i_c_a_t_i_o_n_s_ Before every test the TCP bell is activated, and the indicators on the front edge of CPU821 are showing the kind of the current test. B_r_e_a_k_ The test is breaked if any command is typed on the TCP. \f 3_._3_ _ _ _ _ _ _ _C_P_U_ _T_e_s_t_ 3.3 The CPU test consists of nine independent tests, each formed by a number of test loops. After an error is detected it is possible to loop in the erroneous test. 1) Test of the immediate u-instruction. The Q-register is loaded with pattern of shifting >zeroes>, and checked. 2) Test of arithmetic and logic operations. The arithmetic and logic operations of the ALU are checked. 3) Test of the ALU-registers, the scratch-pad-file, and the internal registers IC and LC. A one is shifted through both registerfiles and the IC and LC registers. The ALU-register stack is read both from the A and B files. 4) Test of shift operations. Doubleshift is tested. All values of the SI-field (Shift input) is tested with both left and right shifts. 5) Test of jumpconditions. It is tested that all jumpconditions, controlled by microinstructions, can be set and cleared. 6) Test of halfword manipulator. The halfword manipulator functions are tested with odd and even i/o address, and with two different datapatterns. 7) Test of external interrupts. It is tested that interrupt level 0-7 does not set interrupt. It is also verified that simulating interrupt on level 8-63 set the proper interrupt level, and that the interrupt level is able to clear the simulated interrupt. \f 8) Test of registers defined by instruction register, and test of prefetch. Four different instructions are stored in the locations 0-6. The instructioncounter is set to 0, the instructionregister is loaded and a prefetch is started. The W-register according to the W-field in the instructionregister is tested and a new prefetch is started. In that way all four values of the W-field is tested. The WPRE-field, X-field, DISP, and DISP+IC are tested in a similar way. 9) Test of the i/o protection system. The value of bit 10:11 and bit 20 of the i/o statusregister are tested after read with protection and write with protection. The i/o addresses and the protection registers have the value shown in fig. 2. i/o addresses 0 CPA LLIM ULIM base base i/o addresses 0 LLIM ULIM CPA base base Figure 2: The value of i/o addresses and protection registers. \f F_ 3_._4_ _ _ _ _ _ _ _M_e_m_o_r_y_ _T_e_s_t_ 3.4 3_._4_._1_ _ _ _ _ _N_o_r_m_a_l_ _M_o_d_e_ 3.4.1 The total number of i/o operations performed by the memory test is 6*D*N*MEMSIZE, where N = number of addressbits and D = number of different datapatterns. After the program is started the memory is loaded with 0>s. The N address bits indicates up to 2**N = MEMSIZE words in the memory, each address is read and verified to be all 0>s. Then a single 1 is substituted in one bit position, and the altered word is written back in the same location. Finally the word is reread to verify that the newly entered 1 is still there. This is repeated for each of the 24 data bits. After the word has been filled with 1>s the first bit position is substituted with a 0, and this is repeated until the word is all 0>s again. So far 48*MEMSIZE*3 i/o operations has been counted, and the whole procedure is repeated but reading the memory in reverse order from MEMSIZE to 8 giving 48*MEMSIZE*6 operations. The factor N is accounted for by repeating these series of tests N times using a different bit for incrementing through all addresses by 2, by 4, by 8, and so on. 3_._4_._2_ _ _ _ _ _S_h_o_r_t_ _M_o_d_e_ 3.4.2 In this version the 48 data patterns is reduced to two patterns: 1010 .....1,0 and 0101 .....0,1 Incrementing through the addresses in reduced to N/2 times. This reduces the total number of operations to 6*MEMSIZE*N. \f 3_._4_._3_ _ _ _ _ _M_e_m_t_e_s_t_ _A_l_g_o_r_i_t_h_m_ 3.4.3 integer procedure getdata (cause); integer cause; begin if short mode then begin newdata: = if cause = 1 then 8>25252525 else 8>52525252; end else begin newdata: = newdata shift 1; if cause <=24 then cause: = cause + 1; end end getdata; comment size memory; for ic: = 8, ic+2 while -,ioerror and DATI = DATO do begin DATO: = ic; write (ic, DATO); read (ic, DATI); end; comment clear memory; for wrk1: = ic, wrk1-2 while wrk1'8 do write(wrk1,0), W3: = ic-2; comment last location in memory comment start of MEM test olddata: = 0 ; newdata: = 0; size: = ic; start: = 8; stop: = size; W1: = 2; while W1 <size do \f begin for down: = false, true do begin for cause: = 0 step 1 until if shortmode then 1 else 47 do begin newdata: = getdata (cause); if -, down then begin for W0: = 8 step 2 until W1-2 do for ic: = w0 step W1 until last do begin read (ic, DATI); if ioerror then ERROR; write (ic, newdata); if ioerror then ERROR; if DATI <' olddata then olddataerror; read (ic, DATI); if ioerror then ERROR; if DATI <' newdata then newdataerror; end for ic; olddata: = newdata; end <*if up*' else begin for W0: = last step -2 until last - W1 + 2 do for ic: = W0 step -W1 until 8 do begin read (ic, DATI); if ioerror then ERROR; write (ic, newdata); if ioerror then ERROR; if DATI <' olddata then olddataerror; read (ic, DATI); if ioerror then ERROR; if DATI <' newdata then newdataerror; end for ic; olddata: = newdata; end down; end for cause; \f W1: = if shortmode then W1 shift 2 else W1 shift 1; end while W1 < size; 3_._5_ _ _ _ _ _ _ _C_a_c_h_e_ _T_e_s_t_ 3.5 The cache memory is initialized in a consecutive area of 4 k words (the hit area) starting at location 0, by means of testwrite. The values are 0, 2, 4 ...8>20000 and the valid bit is set. The memory is checked from the start of the hit area to the top of memory and from location 0 to the start of hit area. In the hit area the contents of memory locations and hit status are checked. A new value is written in the same location and reread in a mode where the cache memory is bypassed to see if the writing was sucessful. Outside the hit area it is checked that the status was a miss, and that the contents of memory are unchanged. The test is repeated with the cache memory initialized from 4 k to 8 k, and so on, until the top of memory. If more than one set is present the same test is run with the second set. If two sets are present it is checked that reading two words with a difference in addresses of 4 k, will initialize both sets. \f 3_._5_._1_ _ _ _ _ _C_a_c_h_e_ _T_e_s_t_ _A_l_g_o_r_i_t_h_m_ 3.5.1 If CAM -, available then goto continue; Count-and-init-chache-modules; size-and-char-mem; for set: = 0, 1 do begin mask: = if set = 0 then bit 17 else bit 19; if set _present then begin camcontrolregister: = if set = 0 then 8>50 else 8>30; comment set + testwrite; for startwindow: = 0 step 8>20000 until last do begin for wrk: = 0 step 2 until 8>20000 do begin CAMTD: = wrk; <*cam testdata*' read ( startwindow + wrk, DATI); <*write testdata*' end; camcontrolregister: = camcontrolregister or 3; for ic: = startwindow step 2 until startwindow + size do begin if ic mod size < startwindow then begin read (ic mod size, DATI, IOSTATUS); if IOSTATUS and mask = 0 then camhiterror; if DATI <' ic then camreaderror; end else if ic <startwindow + 8>20000 then begin read (ic, DATI, IOSTATUS); if IOSTATUS and mask <'0 then camhiterror if DATI <' ic - startwindow then camreaderror; write (ic, ic); cambypass: = 1; read (ic, DATI); \f if DATI <' ic then camwriteerror; cam bypass: = 0; end else begin read (ic, DATI, IOSTATUS); if IOSTATUS and mask = 0 then camhiterror; if DATI <' 0 then camreaderror; end end for ic; end for startwindow; size _and _clear _mem; end if set present; end for set; 3_._6_ _ _ _ _ _ _ _E_r_r_o_r_ _M_e_s_s_a_g_e_s_ 3.6 3_._6_._1_ _ _ _ _ _O_p_e_r_a_t_i_n_g_ _v_i_a_ _O_C_P_ 3.6.1 In case of errors the autoload lamp will begin to gleam with a period of 0.5 sec. 3_._6_._2_ _ _ _ _ _O_p_e_r_a_t_i_n_g_ _v_i_a_ _T_C_P_ 3.6.2 In case of errors the following text will be displayed: ERR C(wrk0) C(wrk1) C(wrk2) C(IC) C(wrk0) is the contents of the register wrk0, which is the number of the erroneous test. After an error it is possible to proceed in three ways: 1) Type P at the TCP: Proceed the test. \f 2) Type N at the TCP: Loop in the test. The subsequent error messages are suppressed. 3) Type a TCP command: The test is broken and the command is executed. 3_._6_._3_ _ _ _ _ _D_e_s_c_r_i_p_t_i_o_n_ _o_f_ _E_r_r_o_r_ _T_y_p_e_s_ 3.6.3 -2 : Buserror (wrk1 1=NACK 2=timeout 4=parity) IC : Address - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0 : Newdata error in MEM test wrk1 = read data, wrk2 = expected data IC : address - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1 : Olddata error in MEM test wrk1 = read data, wrk2 = expected data IC : address - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 2 : Hit error in CAM test wrk1 : bit 17, 19 of iostatus wrk2 : expected value, IC : address - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 3 : Read error in CAM test wrk1 : read data, wrk2 : expected data IC : address - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 4 : Write error in CAM test Error when writing data memory wrk1 : written data, wrk2 : expected data IC : address - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 5 : No hit with two sets in CAM test. With two sets present it is not possible to load the same location in both sets. wrk1 : status of first i/o status. wrk2 : status of second i/o status. \f - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 10-40 : Test of immediate operand instructions wrk1 : read data, wrk2 : expected data - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 100-246 : Test of arithmetic and logic operations. Operations and datapatterns can be found in the u-program listing. wrk1 : result of operation, wrk2 : expected result. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 300-440 : Test of ALU- and Scratchpad registers, IC and LC registers. wrk1 : contents of register, wrk2 : expected contents. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 500-507 : Test of u-instruction shiftoperations wrk1 : result of shift, wrk2 : expected result 500 : Test of double shift, wrk1,Q = 0,8>40000000 is shifted left. 501 : Test of shift input (zero) wrk1 = -1 is shifted left with S1 = zero 502 : Test of shift input (zero) wrk1 = -1 is shifted right with S1 = zero 503 : Test of shift input (shiftlink) wrk1 = 8>40000000 is shifted left twice. First time with S1 = zero, second with S1 = shift link. 504 : Test of shift input (shift link) wrk1 = 1 is shifted right twice. First time with S1 = zero, second with S1 = shift link. 505 : Test of shift input (add condition) Addcondition: = 1. wrk1 = 0 is shifted left with S1 = addcondition. \f 506 : Test of shift input (F(0)) wrk1 : = 8>40000000 and F(0): = 1 wrk1 is shifted right with S1 = F(0). 507 : Test of shift input (sign) wrk1: = wrk2: = 8>40000000. wrk1: = wrk1 + wrk2 wrk1 is shifted right with S1 = sign (sign = F10) error overflow). _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 540-555 : Test of jumpconditions 540 : Condition = DBUS(0) (negative) wrk2: = 0, test condition is false wrk2: = 8>40000000, test condition is true. 541 : Condition is F <' 0 (non zero) wrk2: = 0, test condition is false wrk2: = 1' test condition is true. 542 : Condition is arithmetic overflow wrk2: = 0-8>40000000, test condition is true. wrk2: = 8>40000000+1, test condition is false. 543 : Condition is carry from ALU bit(0) wrk2: = -1 + 1, test condition is true wrk2: = 0 + 1, test condition is false. 544 : Condition is F(0) exor overflow (sign) wrk2: = 8>40000000 - 1, test condition is true. wrk2: = 8>37777777 + 1, test condition is false. 545 : Condition is DBUS(0) <' DBUS(1) wrk2: = 8>60000000, test condition is false. wrk2 = 0, test condition is false. wrk2: 8>40000000, test condition is true. wrk2: = 8>20000000, test condition is true. \f 546 : Condition is DBUS(1) <' DBUS(2) wrk2: = 8>30000000, test condition is false wrk2: = 0, test condition is false. wrk2: = 8>20000000, test condition is true. wrk2: = 8>10000000, test condition is true. 547 : Condition is link <' carry wrk2: = (8>40000000+1) shift 1, test conditions is true. wrk2: = (-1-1) shift 1, test condition is false. 550 : Condition is LC(0) = 1 (loop counter <0) wrk2: = LC: = 0, test condition is false. wrk2: = LC: = 8>40000000, test condition is true. 551 : condition is LC(0) = 1 or maxloop (0) = 0 wrk2: = 48; LC: = 8>40000000 (maxloop is loaded too) repeat test condition is false; wrk2: = wrk2 -1; LC: = LC -1; until wrk2 = 0; test condition is true; 552 : condition is LADR(0:20)<'0 (not w-address) wrk2: LAST: = 0; test condition is false. wrk2: LAST: = 8>10, test condition is true. 553 : condition is LADR(0) = 1 (not memory address) wrk2: = LAST: = 0, test condition is false. wrk2: = LAST: = 8>40000000, test condition is true. 554 : condition is CPUST(0) = 1 (monitormode) wrk2: = CPUST(1): = 8>40000000, test condition is true. wrk2: = CPUST: = 0, test condition is false. 555 : condition is CPUST(1) = 1 (escapemode) wrk2: = CPUST: = 8>20000000, test condition is true. wrk2: = CPUST: = 0, test condition is false. \f _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 600-637 Test of halfword manipulator wrk1 = result, wrk2 = expected result. 600 : Function = load halfword = 0, odd = 1 (SBUS(0:23) = 12 ext 0 con DBUS(12:23)) datapattern = 8>7777; 601 : Function = load halfword, odd = 1 datapattern = 8>7777; 602 : Function = load halfword, odd = 0 (SBUS(0:23) = 12 ext 0 con DBUS(0:11)) datapattern = 8>7777 603 : Function = load halfword, odd = 0 datapattern = 8>77770000. 604 : Function = extended load = 1, odd = 1 (SBUS(0:23) = 12 ext DBUS(12) con DBUS(12:23)) datapattern = 8>7777. 605 : Function = extended load, odd = 1 datapattern = 8>77770000. 606 : Function = extended load, odd = 0 (SBUS(0:23) = 12 ext DBUS(0) con DBUS(0:11)) datapattern = 8>7777. 607 : Function = extended load, odd = 0 datapattern = 8>7777. 610 : Function = store halfword = 2, odd = 1 (SBUS(0:23) = 12 ext 0 con DBUS(12:23)) datapattern = 8>7777. 611 : Function = store halfword, odd = 1 datapattern = 8>77770000. \f 612 : Function = store halfword, odd = 0 (SBUS(0:23) = DBUS(12:23) con 12 ext 0)) datapattern = 8>7777. 613 : Function = store halfword, odd = 0 datapattern = 8>77770000. 614 : Function = set mask = 3, odd = 1 (SBUS(0:23) = 8>77770000) datapattern = 8>7777. 615 : Function = set mask, odd = 1 datapattern = 8>77770000. 616 : Function = set mask, odd = 0 (SBUS(0:23) = 8>7777) datapattern = 8>7777. 617 : Function = set mask, odd = 0 datapattern + 8>77770000. 620,622 : Function = extend halfword = 4 (SBUS(0:23) = 12 ext DBUS(12) con DBUS(12:23)) datapattern = 8>7777. 621,623 : Function = extend halfword datapattern = 8>77770000. 624,626 : Function = swop word = 5 (SBUS(0:23) = DBUS(12:23) con DBUS(0:12)) datapattern = 8>7777. 625,627 : Function = swop word datapattern = 8>77770000. 630,632 : Function = swop left halword = 6 (SBUS(0:23) = 12 ext 0 con DBUS(0:11)) datapattern = 8>7777. \f 631,633 : Function = swop left halfword datapattern = 8>77770000. 634,636 : Function = swop right halfword (SBUS(0:23) = DBUS(12:23) con 12 ext 0) datapattern 8>7777. 635,637 : Function = swop right halfword datapattern = 8>77770000. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 701-713 : Test of external interrupts. 701 : Interrupt occurred with ILEV = 0-7 wrk2 = simulated interrupt level. 711 : Interrupt did not occur when ILEV = 8-63 wrk2 = simulated interrupt level. 712 : The received ILEV and the simulated ILEV are not equal. wrk1 = received ILEV, wrk2 = simulated ILEV. 713 : The simulated interrupt can not be cleared wrk2 = simulated ILEV. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1000-1023 : Test of registers defined by instruction register, and test of prefetch instructioncounter. wrk1 = contents of register, wrk2 = expected contents. 1000 : Test of W-register W-FIELD(0:1) = 0 1001 : Test of W-register W-FIELD(0:1) = 1 1002 : Test of W-register W-FIELD(0:1) = 2 \f 1003 : Test of W-register W-FIELD(0:1) = 3 1004 : Test of WPRE-register W-FIELD(0:1) = 0 1005 : Test of WPRE-register W-FIELD(0:1) = 1 1006 : Test of WPRE-register W-FIELD(0:1) = 2 1007 : Test of WPRE-register W-FIELD(0:1) = 3 1010 : Test of X-register X-FIELD(0:1) = 0 1011 : Test of X-register X-FIELD(0:1) = 1 1012 : Test of X-register X-FIELD(0:1) = 2 1013 : Test of X-register X-FIELD(0:1) = 3 1014 : Test of DISP _register DISP = 12 1015 : Test of DISP-register DISP = 0 1016 : Test of DISP-register DISP = 2 1017 : Test of DISP-register DISP = 4 \f 1020 : Test of DIC-register (DISP+IC) DISP = -2, IC = 8>37777776. 1021 : Test of DIC-register DISP = 0, IC = 0 1022 : Test of DIC-register DISP = 2, IC = 2 1023 : Test of DIC-register DISP = 4, IC = 4 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1100-1127 : Test of i/o protection system. wrk1 = bit(10:11) + bit(20) of i/o status register. wrk2 = expected bit(10:11) + bit(20) IC = Base register LAD: logical address CPA: common protected area register LLIM: lower limit register ULIM: upper limit register - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1100 : LAD <0<CPA<LLIM<ULIM operation = read with protection 1101 : LAD <0<CPA<LLIM<ULIM operation = write with protection 1102 : 0<LAD<CPA<LLIM<ULIM operation = read with protection 1103 : 0<LAD<CPA<LLIM<ULIM operation = write with protection 1104 : 0<CPA<LAD<LLIM<ULIM operation = read with protection \f 1105 : 0<CPA<LAD<LLIM<ULIM operation = read with protection 1106 : 0<CPA<LLIM<LAD<ULIM operation = read with protection 1107 : 0<CPA<LLIM<LAD<ULIM operation = write with protection 1110,1112 : 0<CPA<LLIM<ULIM<LAD operation = read with protection 1111,1113 : 0<CPA<LLIM<ULIM<LAD operation = write with protection 1114 : LAD<0<LLIM<ULIM<CPA operation = read with protection 1115 : LAD<0<LLIM<ULIM<CPA operation = write with protection 1116,1120 : 0<LAD<LLIM<ULIM<CPA operation = read with protection 1117,1121 : 0<LAD<LLIM<ULIM<CPA operation = write with protection 1122 : 0<LLIM<LAD<ULIM<CPA operation = read with protection 1123 : 0<LLIM<LAD<ULIM<CPA operation = write with protection 1124 : 0<LLIM<ULIM<LAD<CPA operation = read with protection 1125 : 0<LLIM<ULIM<LAD<CPA operation = write with protection \f 1127 : 0<LLIM<ULIM<CPA<LAD operation = write with protection 1177 : Error in BASE register a wrong absolute address is calculated. \f F_ \f F_ A_._ _ _ _ _ _ _ _ _L_I_S_T_ _O_F_ _T_H_E_ _T_C_P_ _C_O_M_M_A_N_D_S_ A. Commands for u-program diagnostic: R<loc'<CR' RUN. Starts u-instruction execution from <loc'. (R0 <CR', will reset the CPU as by power up) XW<CR' Examine the six working registers used in the u-program. If you are interested in the contents of the registers, the command must be entered first, as the registers are used in the common TCP procedures. T<testnumber'<CR' TEST. Start execution of the test with the number <test numbers' RC8000 commands: When the CPU is running it is only possible to stop it from the TCP by typing the character <BELL' (=cntr G). XR<no'<CR' Examine register number <no'. LR<no' : <cont'<CR' Loads register <no' with the value <cont' XM<loc'<CR' Examine memory location <loc'. XN<no'<CR' Examines <no' memory locations, starting after the last location inspected. LM<loc' : <cont'<CR' Load memory location <loc' with the value <cont'. \f LN<CR' Load the next memory location. XD<CR' Examine the eight dynamic registers (W0, W1, W2, W3, STAT, IC, CAUSE, SB) XS<CR' Examine the eight static registers (CPA, BASE, LLIM, ULIM, ILIM, INF, SIZE, MONTOP) \f i T_A_B_L_E_ _O_F_ _C_O_N_T_E_N_T_S_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _P_A_G_E_ 1. INTRODUCTION .......................................... 1 2. GENERAL DESCRIPTION ................................... 2 3. LOCATION AND MAINS CONNECTION ......................... 3 4. CONFIGURATION EXAMPLES ................................ 4 4.1 Line Selector Inputs ............................. 4 4.2 Line Selector Outputs ............................ 4 A_P_P_E_N_D_I_X_: A. CABLES USED IN CONJUNCTION WITH THE RC791 ............. 7 \f ii \f F_p_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _O_r_d_e_r_ _N_o_ _ _ _ _ _ _ _R_C_ _N_o_ _ _ _L_e_n_g_t_h_ _(_M_e_t_e_r_s_)_ _ MF003 S CBL892 5 MF003 M CBL893 12 MF003 L CBL894 25 * CBL909 5 MF009 S CBL912 5 MF009 M CBL913 12 MF009 L CBL914 25 _M_F_0_1_0_ _ _ _ _ _ _ _ _ _ _C_B_L_9_1_5_ _ _ _ _ _ _ _2_5_ _ _ _ _ _ _ _ _ _ m_ * CBL909 is supplied with the line printer. \f F_ 1_._ _ _ _ _ _ _ _ _I_N_T_R_O_D_U_C_T_I_O_N_ 1. The RC791 line selector is used when several RC702 (Piccolo) systems are to use the same line printer or the same communi- cation line. This manual gives a short general description of the line selector and its use, and contains several configuration ex- amples. \f F_ 2_._ _ _ _ _ _ _ _ _G_E_N_E_R_A_L_ _D_E_S_C_R_I_P_T_I_O_N_ 2. The line selector has eight inputs, designated LINE IN 1 to 8, and two outputs, designated LINE OUT A and B. LINE OUT A can be connected to a communication line or an RC702 system, and LINE OUT B to a line printer. The front panel of the line selector contains two digital indi- cators, corresponding to the two outputs, which show at all times whether the outputs are in use and, if so, by whom (shown by the number of the relevant input). The sharing of a line printer or communication line is handled as follows: If an RC702 system has received access through the line selector to, say, the line printer, requests from other systems for access to the line printer will be rejected - and a new re- quest must be made. \f F_ 3_._ _ _ _ _ _ _ _ _L_O_C_A_T_I_O_N_ _A_N_D_ _M_A_I_N_S_ _C_O_N_N_E_C_T_I_O_N_ 3. The line selector may be located where it is most convenient, but not over a source of heat. It may be placed on top of the micro- computer or the large flexible disc unit, if this is expedient. The line selector is connected to the mains by means of the accompanying cable with a ground pin, whereby it is grounded according to regulation. If there is no wall socket with a ground, RC can supply a dis- tribution box with five sockets (Order No MF002). \f F_ 4_._ _ _ _ _ _ _ _ _C_O_N_F_I_G_U_R_A_T_I_O_N_ _E_X_A_M_P_L_E_S_ 4. 4_._1_ _ _ _ _ _ _ _L_i_n_e_ _S_e_l_e_c_t_o_r_ _I_n_p_u_t_s_ 4.1 An RC702 system can be connected to a line selector in three different ways, depending on which of the line selector outputs are to be used, i.e. shared with other systems. a) Sharing of line printer. If an RC702 is to use a line printer, port 2 on the RC702 (designated PRINTER) must be connected to a line selector input. b) Sharing of communication line. If an RC702 is to use a communication line (i.e. if it is to be used as a terminal or in conjunction with a file transfer), port 1 on the RC702 (designated TERMINAL) must be connected to a line selector input. c) Sharing of line printer and communication line. If an RC702 is to use a line printer and a communication line, both ports on the RC702 must be connected to a line selector input. Appendix A indicates which cables are used to make the above con- nections. 4_._2_ _ _ _ _ _ _ _L_i_n_e_ _S_e_l_e_c_t_o_r_ _O_u_t_p_u_t_s_ 4.2 The two outputs can be used as follows: LINE OUT A: This output can be connected to a multiplexor on an RC3600/RC7000 or RC8000 system, either directly or via a modem. It can also be connected to port 1 (TERMINAL) on an RC702 system, thereby en- abling the exchange of data among several RC702 systems. \f LINE OUT B: This output is used for connection of a line printer, e.g. the RC861. \f F_ \f F_ A_._ _ _ _ _ _ _ _ _C_A_B_L_E_S_ _U_S_E_D_ _I_N_ _C_O_N_J_U_N_C_T_I_O_N_ _W_I_T_H_ _T_H_E_ _R_C_7_9_1_ A. \f F_ \f Spooling from a general input device is requested in the job spe- cification by means of the "control" option. Example: Loading job tapes A job tape may be loaded by the command (flexowriter tape): JOB 1 TRF When Boss is ready for the job the following is dis- played on the main console LOAD TRF READER JOB If the job command is submitted from a remote terminal the message: LOAD TRF reader process name' JOB would appear on the terminal. Example: Loading data tapes Assume a job with the following job specification has been submitted: JOB BBJ 3 108 TIME 50 LOAD TRE DATA1 LOAD TRF DATA2 When Boss is ready to read the first data tape the following message is displayed on the main terminal: LOAD TRE READER BBJ3 1 DATA1 Later when Boss is ready for the second tape: LOAD TRF READER BBJ3 2 DATA2 A more exhaustive description of these messages may be found in ref. 6. \f T_ 6.4 Card Reader Boss may handle two types of card readers: a standard card reader and remote card readers A standard card reader must be permanently connected either directly to RC 4000 or to a device controller (RC 4000 or RC 8000). Card readers which are not permanently connected and situated at remote device controllers are called r_e_m_o_t_e_ _c_a_r_d_ r_e_a_d_e_r_s_. A standard card reader is started from the main console or from another terminal by a sufficiently privileged user, whereas a remote card reader must be started from a remote terminal connected to the same remote device controller. T_6.4.1 S_t_a_n_d_a_r_d_ _c_a_r_d_ _r_e_a_d_e_r_ A standard card reader is able to load job files and data files as explained in chapter 3. Furthermore, job controlled card &_ reading may be requested. T_6.4.2 R_e_m_o_t_e_ _c_a_r_d_ _r_e_a_d_e_r_ May be used as a standard card reader, but a remote card reader &_ cannot be used for job controlled card reading. T_6.4.3 J_o_b_ _c_o_n_t_r_o_l_l_e_d_ _c_a_r_d_ _r_e_a_d_e_r_ When a job has reserved the card reader (by means of the "device" option), the job may ask for input from a process named "card- reader". When such input is initiated from FP, Algol, or Fortran, Boss will automatically get a request to start input from the next card file. The job>s first input operation after this determines the input mode for the entire card file. When Boss meets the file separation card, a new initialization is required to load the next card file, which now may be in another mode. It will never be possible to read beyond a job separation card. The answer to an input operation may contain a status word different from that of the physical card reader, the job controlled status bits being: \f T_ bit meaning 0 (not used) 1 conversion error (as hardware) 2 (not used) 3 (not used) 4 (not used) 5 end Boss file (see below) 6 (not used) 7 end cards (see below) 8 (not used) &_ 9 (not used) 10 reading error (as hardware) 11 card rejected (as hardware) &_ 12-23 (not used) End Boss file means that a file or job separation card has been input as the last card of the buffer. In EBCDIC-mode, the first three characters of this card have been changed to EM, NUL, NUL. End cards means that the last card of the buffer contained three minus-characters (in binary mode two, only) in the first positi- ons. Thus, this bit is always set when bit 5 is set. The average speed of the job controlled card reader corresponds to the speed of the physical reader, but to some extent speed differences between job and reader are smoothed. However, job controlled card input delays the following jobs in the stack, because Boss cannot load these jobs until job controlled input of the last file has been initiated. A standard card reader may be started from the main console by: start card A remote card reader may be started from a remote terminal connected to the same remote device controller by: T_ 1 &_ start card card reader' printer' 0 This command specifies the actual card reader and eventually the printer on which the primary output from the card job is to be printed. Messages from a standard card reader are displayed on the main console, only, while messages from a remote card reader is displayed on both the remote terminal and the main console. \f T_6.4.4 W_o_r_k_i_n_g_ _c_y_c_l_e_ _o_f_ _c_a_r_d_ _r_e_a_d_e_r_s_ The working cycle of a remote card reader is slightly different from the working cycle of a standard card reader. A standard card &_ reader does only need to be started by the "start" command after a hard error (e.g. disconnection) and, once started, it continues reading until the next hard error, whereas a remote card reader, when started by the "start" command, reads a "sequence" of card jobs. A "sequence" of card jobs is defined to terminate when a job se- paration card ---job is read as the last card in the card stacker, i.e. when end-of- deck status coincides with a job separation card. The remote card reader stops after termination of the sequence of card jobs; it is restarted by means of the "start" command whereby a new medium for the printer output from the next sequence of card jobs may be chosen. T_6.5 Cassette tape Boss is capable to handle cassette tapes in three different ways: Boss may load data from a cassette tape by means of the load op- tion in the job specification, Boss may write a file on the cas- sette tape by means of the "convert" command and finally jobs may &_ use cassette tapes directly as described in ref. 7. Example: Load and convert files on a remote cassette. Assume that a cassette has the name "deck2" and that it has been defined for instance like this (see 7.2): T_ DECK2=SET TPN DECK2 &_ Now it is possible to convert files on the cassette for instance by: CONVERT FILE DECK2 Files in no parity may be loaded from the cassette if the following entry exists: PTRN=SET TRN DECK2 \f Files may now be loaded by: LOAD PTRN FILE1 T_6.6 Discette Boss supports the use of discettes by reserving the discette drives for one job at a time (via the "device" option), and by connecting the name of a discette to the device on which it is &_ mounted. When a job is going to use a discette it sends a "mount message" to Boss. This message is by Boss displayed on the main console as a request for mounting. When the discette is mounted on the dri- ve, the name of it is connected to the drive by typing the com- mand: call device no' document name' Then the job may be restarted (using the "answer" command) and the discette is directly accessible without Boss intervening, as is the case for direct devices (see below). T_6.7 Other devices The devices printer, tape reader, and card reader are simulated by Boss via spooling. Other special devices are classified in two groups: direct devices and conversational devices. In both cases the job uses the process name of the device in the communication. For some of the devices, Boss will ask for an operator answer when the device is ready. T_6.7.1 D_i_r_e_c_t_ _d_e_v_i_c_e_s_ These devices may be used directly by the job without Boss inter- vening at all. Certain devices (e.g. process control) cannot tolerate Boss swopping the job for some time period; in this case &_ the corelock mechanism may be used. The device must have been specified in the "device" option, or in the "link" option. \f T_ 6.7.1.1 P_a_r_e_n_t_ _m_e_s_s_a_g_e_ _c_r_e_a_t_e_ _l_i_n_k_ A specific way to use a remote device directly is by means ofthe parent message "create link". On receipt of such a message, Boss sends an operation to the device controller requesting it to create a link to the device specified, and awaits the result of this operation. If the link is created successfully, the answer contains the name of the link process created enabling the job to communicate directly with the device. Example: Connection of telex devices T_ See ref. 10. 6.7.2 C_o_n_v_e_r_s_a_t_i_o_n_a_l_ _d_e_v_i_c_e_s_ &_ These devices are simulated by Boss and behave like the physical devices except that a maximum blocksize specific for the device is imposed by Boss. The device must have been specified in the "device" option. The job is swopped out when it sends a message to the device and swopped in when the device sends the corres- ponding answer. The priority rules are as for interactive jobs. If the job is killed meanwhile, the kill operation is delayed until the answer arrives. Operation codes 3,5, and 7 describe buffered transfers with the usual first and last address specifications in the message. Ope- ration 3 is input, 5 is output, and 7 is output followed by input. Other operations are just sent to the device without blocktransfers to the job. Certain resident internal processes may also serve as drivers just like conversational devices (e.g. multi-access telecommuni- cation). The communication is exactly as above, but nothing need T_ be stated in the device option. 6.7.3 C_o_r_e_l_o_c_k_ &_ A job may demand a maximum corelock time (by means of the "corelock" option in the job specification). It is then allowed to send a corelock message to Boss which causes the job to stay in the primary store for a period specified in the message. The period must be shorter than the maximum corelock time. Before the end of the period the job has to send a coreopen message allowing Boss to swop it out again if necessary. Jobs sharing primarystore with a corelock job cannot proceed in the locked period and if\f they are in the states waiting or swopped out, they cannot even be killed. To compensate a little for this, a corelock job is not swopped in until it shares primary store with lower priority jobs only. A corelock job is always allocated the high address part of\f F_ 7. RUNNING BOSS FROM A REMOTE DEVICE CONTROLLER As already explained in earlier chapters Boss is able to commu- nicate with terminals and other devices connected to a remote de- vice controller. The terminology used in the network is described in ref. 11. This chapter just summarizes the differences between "a local user" and "a remote user". 7.1 Devices which may be connected to a remote device controller The main difference between standard and remote devices is based on the reservation strategy used by Boss. Standard devices belong permanently to a Boss installation, while remote devices are re- served by Boss during active periods, only. This convention al- lows different systems possibly running on different computers within a network to share remote devices. A remote device controller can handle devices of the following kind: T_ terminals card readers line printers paper tape readers paper tape punches &_ cassette drives 7.1.1 T_e_r_m_i_n_a_l_ A remote terminal works in the same way as a local terminal ex- cept for the following terminal commands: T_ convert newjob transmit start job regret and job options: tapes &_ load \f T_7.1.2 C_a_r_d_ _r_e_a_d_e_r_ A remote card reader resembles a standard card reader in the way in which it loads card jobs and card files. The card reader is initiated by the "start" command on a remote terminal and card reader request lines are displayed on the main terminal at the &_ device controller as well as on the main console. T_7.1.3 L_i_n_e_ _p_r_i_n_t_e_r_ A remote line printer works as a standard line printer except that Boss does not handle different paper types (and change of paper), so the remote line printer need not be activated by the &_ "start" command (see ref. 6). In case of a hard error, the pending print file will after an installation dependent time be switched over to a standard printer. T_7.1.4 T_a_p_e_ _r_e_a_d_e_r_ A remote tape reader can be used for remote job entry of offline jobs and for Boss controlled loading of data tapes, but not for &_ job controlled tape reading. The load request lines are displayed on the main terminal at the device controller as well as on the main console. T_7.1.5 P_a_p_e_r_ _t_a_p_e_ _p_u_n_c_h_ A remote punch can be used in a very limited form, only. Files may be "converted" on a remote punch, i.e. the remote punch is &_ treated as a printer. The printer triangles and the information associated with these are not punched, i.e. only the file in question is punched. T_7.1.6 C_a_s_s_e_t_t_e_ _d_r_i_v_e_ A remote cassette may be used to load files (just like a remote paper tape reader) and to convert files (just like a remote paper &_ tape punch). T_7.2 Extended commands To facilitate the use of remote devices some commands are exten- &_ ded enabling the user to describe the device in question. In principle Boss does not know remote devices, so the remote user must specify whether he wants to use a standard device or a remote device, and in the latter case he must point out the ac- tual device.\f In the extended commands devices are specified by a parameter device name' (m_a_x_._ _6_ _c_h_a_r_a_c_t_e_r_s_ _l_o_n_g_). device name' may be: i) the name of a filedescriptor which must be permanent and have an entry base which is wider than the project T_ base of the user (or job) issuing the command (or sending the corresponding parent message). More precisely it is checked that: elow _ plow and phigh ehigh where elow and ehigh are the lower and upper bounds of the entry base, and plow and phigh are the lower and upper bounds of the project base. This will normally mean that the entry must be created by the computer operations staff. &_ The format of the entry is: T_ device name' = set modekind' docname' irrel.', hostno.' hostid.' 0 0 modekind' defines device kind and operating mode (tpn, 1p, tro etc.). docname' the name of the device as known by the &_ device controller. irrel.' may be anything. hostno.' is the logical device number of the host process connecting RC4000/RC8000 with the device controller of the device. hostid.' is the host number of the device host of the device. If hostno.' and hostid.' are both zero the device is suppossed to be connected to the same device controller as the terminal from which the command is issued. ii) the name of the device as known by the device controller of the device, i.e. the docname' mentioned above. 7.2.1 C_o_n_v_e_r_t_ Syntax: std11 convert file name' device name'0paper no' 0\f If a remote device controller has a line printer connected then it is possible to have files converted on this remote printer (or punch) instead of a standard printer. This choice of device is governed by device name'. i) If device name' is absent then the output will appear on the printer which is assumed to be next to the terminal user, i.e. the remote printer. ii) If the parameter "std" is used then the output will appear on a standard printer. iii) A remote printer may be selected by its name or by a permanent file descriptor as already described. T_ 7.2.2 N_e_w_j_o_b_ Syntax: std1 newjob file name' device name'0 &_ The second parameter guides the choice of medium for printing of output from the job enrolled. The choice of output medium works as described for the "convert" command. T_7.2.3 T_r_a_n_s_m_i_t_ The "transmit" command works for remote terminals in the same way as for local terminals but at present only the modes "tre" and &_ "tro" are accepted. T_7.2.4 S_t_a_r_t_ _c_a_r_d_ Syntax: std1 start card local dev.name' device name'0 &_ The second parameter specifies the card reader by its device name or by a permanent file descriptor defining device name and card mode. \f The third parameter guides, as in the "newjob" command from a re- mote terminal, the choice of the printer which is used for prima- ry output. The working cycle of a remote card reader is slightly different from the working cycle of a standard card reader. A standard card reader does only need to be started by the "start" command after a hard error (e.g. disconnection) and, once started, it continues reading until the next hard error, whereas a remote card reader, when started by the "start" command, reads a "sequence" of card jobs. T_ A "sequence" of card jobs is defined to terminate when a job se- paration card ---job is read as the last card in the card stacker, i.e. when &_ end-of-deck status coincides with a job separation card. The remote card reader stops after termination of the sequence of card jobs; it is restarted by means of the "start" command whereby a new medium for the printer output from the next sequence of card jobs may be chosen. T_7.2.5 J_o_b_ _a_n_d_ _r_e_g_r_e_t_ The "job" and "regret" commands used on a remote terminal act for a remote tape reader in quite the same way as the commands act &_ for the standard tape reader when they are used on the main con- sole. The remote device controller must accept the names "tre" and "trf" for the tape reader. T_ tre1 job no of jobs' trf0 &_ The command asks Boss to read in no of jobs'paper tapes and treat these as offline jobs. The second parameter is, if nothing is specified, the standard mode of the installation, if "tre" is stated the tapes are assum- ed to be written in ISO mode, and if "trf" is stated flexowriter mode is assumed. \f The "job" command may be regretted by means of the "regret" command: T_ tre1 regret no of jobs'trf0 &_ T_7.2.6 J_o_b_ _c_o_n_t_r_o_l_l_e_d_ _p_a_p_e_r_ _t_a_p_e_ _r_e_a_d_i_n_g_ The job option "tapes" does at present only work for the standard tape reader. T_7.2.7 L_o_a_d_ _o_p_t_i_o_n_ Card jobs from remote card readers can load card files from the same remote card reader by means of the "load"option. The mode name is a name of at most 6 characters referring to a file de- scriptor (as previously described) or determined by the remote &_ device controller. Other jobs cannot load card files. Any job originating from a remote device controller may request loading of data tapes by means of the "load" option; the mode name determines whether the standard tape reader or a remote tape reader connected to the remote device controller is to be used. The same job may load data tapes from both the standard tape reader and from remote tape readers (or cassette devices). Loads from standard tape readers must precede loads from remote tape readers (or cassette drives). The mode names "tre", "tro","trn" and "trf" are reserved for the standard tape reader and may not be used by the remote readers. T_7.2.8 J_o_b_ _c_o_n_t_r_o_l_l_e_d_ _c_a_r_d_ _r_e_a_d_i_n_g_ Any card job may specify "device card" in the job specification thus enabling the job to read card files which immediatelyfollow the job file (and possible Boss loaded card files) in the card &_ reader. T_7.3 Messages 7.3.1 M_e_s_s_a_g_e_s_ _f_r_o_m_ _a_ _c_a_r_d_ _r_e_a_d_e_r_ &_ The format of the card reader messages is as follows: card reader device no' local device name' cause' \f Below is a list of the possible messages: cause' explanation ready the card reader is empty and Boss is ready for the next card job. A sequence of card jobs is terminated when this message appears thus requiring a remote card reader to be restarted contrary to a standard card reader. attention The card reader is empty, but Boss has not finished reading the last card job. card jam a card read has been lost; try to read the card once more and type "start card..." again. disconnected the reader is switched off and must be restarted by the "start" command. illegal job file Boss was not able to read the job file, either because the card mode is wrong or because of transmission error. T_7.3.2 M_e_s_s_a_g_e_s_ _f_r_o_m_ _a_ _r_e_m_o_t_e_ _t_a_p_e_ _r_e_a_d_e_r_ The request lines from a remote tape reader are displayed on both the main console and the main terminalat the device controller. &_ The request lines have the following format: Request for a job tape: load mode name' reader process name' job' Request for a Boss controlled paper tape: load mode name' reader process name' job name' tape no' file name' T_ 7.3.3 "_S_t_a_r_t_ _c_a_r_d_"_ _e_r_r_o_r_ _r_e_a_c_t_i_o_n_s_ As a consequence of the "start card" command the following &_ messages may appear: \f message: explanation: device unknown the device specified for printer output is unknown to the remote device controller. card reader busy the card reader is busy reading cards (if the card reader does not actually read then check that the card reader is remote). no more no card reader coroutine is available for card readers the moment. device not the parameter following "start card" does not card reader specify a card reader. T_ not same mode for standard card readers: an installation parameter is wrong for remote card readers: the mode which is implicitly given by the local device name is not the same as the one in which the interrupted card job has been read. wait the remote device controller has no resources &_ available for the moment. T_7.3.4 "_J_o_b_"_ _a_n_d_ _"_r_e_g_r_e_t_"_ _e_r_r_o_r_ _r_e_a_c_t_i_o_n_s_ If the Boss version is not trimmed to load tape jobs from all the remote tape readers which are connected the message "no room" may appear as response to the "job" command and "not found" may ap- &_ pear as response to the "regret" command. T_7.3.5 "_N_e_w_j_o_b_"_ _a_n_d_ _"_c_o_n_v_e_r_t_"_ _e_r_r_o_r_ _r_e_a_c_t_i_o_n_s_ The extension of the "newjob" and the "convert" commands have &_ extended the set of possible error messages with the following: message: explanation: device unknown the specified device name is unknown to the remote device controller. device not printer the specified device name does not describe a printer. device disconnected the device controller of the remote terminal is disconnected.\f F_ A_p_p_e_n_d_i_x_ _A_:_ _M_e_s_s_a_g_e_s_ _f_r_o_m_ _B_o_s_s_ This appendix is an alphabetic list of all messages from Boss. The list is partioned into two parts: messages to a user (error messages, normal end of job messages, account messages etc.) and messages appearing on the main terminal only (for instance re- quest for change of paper in a printer, mount of a magnetic tape and expiration of the allowed run time for a job). M_e_s_s_a_g_e_s_ _t_o_ _a_ _u_s_e_r_ accounted: no of lines' on no of pages' Normal message showing the amount of printing accounted. accounts exceeded The job terminated because it sent too many accountmessa- ges. bad FP It has been impossible to load FP during the break action. card deck exhausted The job was terminated because it tried to load more card files than present. card reader dev.no' local dev.name' cause' cause' explanation ready the card reader is empty and Boss has not fi- nished reading the last card job. card jam a card sticks in the reader or the like. data overrun characters have been lost reading a card; try to read the card once more and type "start card..." again. disconnected The reader is switched off and must be restarted by the "start"command. T_ illegal job Boss was not able to read the job file, file mode either because the card mode is wrong or be- &_ cause of transmission error. \f card reader busy The specified card reader is in use already. continuation after cause' The printing of the file has been interrupted. The cause may be harderror or repeat. convert file unreadable Status error during input from the convert file. corelock exceeded The job was terminated because it did not send a coreopen message in due time after corelock. corelock not allowed The job was terminated because it sent a corelock message stating a too long or a negative time. device disconnected The device controller of the remote device requested is dis- connected. device not card reader The device specified is not a card reader. device not printer The device specified is not a printer. device status file name' octal status' Status error during transfer to/from backing storage or terminal. Meaning of status is explained in ref. 1. device unknown The remote device requested does not exist, the description is incorrect or has wrong scope. device unknown device attempted' The job was terminated because it demanded a non-existing device or a kit which was not legal according to the user catalog. end date and time' Normal message terminating a terminal job which has specified "minimal yes". \f end no of sec run'job name'log name'date' Normal message terminating a primary output file. end transmit Message showing the normal termination of "transmit". file does not exist No file with that name is visible to the user. file in use The file is used by a job or selected as edit file. file is no text file The contents key of the file is not 0. file not permanent "Newjob" command not accepted. file protected The user has no right to change the file (write protec- tion). file too long The file is too long to be handled as a job file, or as an edit file. file unreadable "Newjob" command not accepted. file unreadable, octal status = octal status' The printing of the file was terminated because the file did not exist or could not be read. The most common status is 00000040, indicating that the file does not exist. finis job name' at time' Normal message showing the expected finishing time of the job. forbidden The command attempted is not allowed for this terminaluser or in this state. forbidden the installation is closing "Go", "run", "newjob", or "convert" not allowed any longer. from job name' text line' A text line from another terminal is displayed. \f harderror on convert file or temporary copy, ... Boss could not handle the copying needed. . harderror on initial program or swoparea, ... Boss could not handle the copying needed. hotnews text line' A text line displayed at login, request or "hotnews" command illegal identification Wrong project number or user name. illegal number A too large number was typed (greater or equal 1000000). in: date' hour' minute' installation identification' Normal message showing the time of a successful login. job creation impossible Disagreement between Monitor and Boss about the available resources. Should never occur. job file exhausted The job was terminated, because it several times attempted to read past the end of the job file. job file unreadable Status error during input from backing storage. job name conflict The job had the same name as a peripheral device or a system file. job queue full "Newjob" command not accepted. Wait a while. killed by operator The job was terminated by the operator command "kill job name'". killed by user The job was terminated by the user typing a "kill" command.\f kit not present "Save" or "transmit" attempted on a disc kit which is not mounted. last input line skipped The line was skipped because a message from another terminal was pending or because the attention key was pushed. limited option name' The user is not allowed to use that much of the resources. line termination The typed line was too long. The line is skipped. line too long Replacement is attempted in a line which is too long to be processed. line too long after option name' The line in the job specification following the option shown was too long to be processed. load area in use file name' The file could not be loaded because it was in use already. logged in no of min' min. operations no of operations' Normal message at logout showing what was accounted during the login period. login claims exceeded No login resources for primary output. logout caused by cause' cause' may be one of the following: harderror on terminal operator remove timeout on terminal max waiting time exceeded The job has asked to be swopped out for a period which is longer than specified by the wait option. mode unknown Illegal mode in "transmit" command. \f mount special after mount tape name' The job was terminated because it asked for the same tape both on a standard and a special station. name already exists on another document A file with the same scope and base exists on another disc kit already. name too long A name of more than 11 characters was typed in the command. new name exists already A file with the new name and scope exists already (occurs using the terminal command "rename"). no interrupt address The job was terminated because the interrupt provocation could not take place. no more card readers There are no more card reader coroutines available (wait a while and try again). no resources The user has insufficient backing storage resources left. no room for output The spool area is too small for the output generated by a "go" or "run" job. no such job The job specified in the command does not exist. not found The string searched for at string replacement was not found in the line specified. not same mode For a standard card reader an installation parameter is wrong. For a remote card reader, the mode which is implicitly given by the local device nameis not the same as the one in which the interrupted card jobs has been read. \f not special station device number' The job was terminated because it erroneously expected the device number shown to be a special tape station. operator repeat Some of the print pages are possibly duplicate due to opera- tor intervention. option unknown option name attempted' The job was terminated because of a wrong option name or because the job specification did not start with "job". The option name is omitted in case of "newjob". output exceeded The job was terminated because it produced too much primary output. output killed The operator terminated the printing of the file. param Missing parameter integer instead of name, syntax error, etc. param at option name' The job was terminated because of wrong parameters to the option shown. primout in use The job could not create the primout file, because it was in use already. program does not exist file name' The file specified as the initial program of the job is not visible to the user. replace file too long The replace command was ignored because the replace file was too long to be primary input. replace file unreadable The replace file did not exist or was not accessible to Boss. replaced by job file: file name' The job is terminated by a replace message (replacement is not allowed in terminal jobs). \f ring not allowed on tape tape name' The job was terminated because it was not allowed to write on that tape. size too small The initial program could not be loaded because of the limi- ted primary store area of the job. size too small for FP The job was terminated because FP could not be loaded during the break action. slice length in usercat is wrong for kit name' The job was terminated because of inconsistency between the user catalog and a disc kit. special station not ordered device number' The job demanded a special tape station which was not stateds in the job specification. start transmit Normal message. Start the tape reader within an installation dependent number of seconds. stations exceeded at mount tape name' The job was terminated because it used too many tape station at the same time. suspends exceeded The job was terminated because it suspended too many work tapes at the same time. syntax Forbidden characters or illegal sequence of characters in a terminal command. syntax at option name' Forbidden characters or illegal sequence of characters in the job specification following the option shown. tape reserved for other project tape name' The job was terminated because it was not allowed to use the tape requested. \f tape used by other job tape name' The job was terminated because it requested a tape currently reserved by another job. temp exceeded file name' The job was terminated because it has insufficient backing storage resources to load the file shown. template too long The system is incapable of searching for a string that long. time exceeded The job was terminated because it exceeded it>s total run time. type user name and project number Normal message asking the user to log in. user index conflict Job or logged-in terminal with the same user name and user index exists already. user index too large The user catalog does not allow a user index that large. wait There was a pending message to the terminal already. Try again later. Or, the remote device controller has no resources available for the moment. what? Unknown command.\f F_ M_e_s_s_a_g_e_s_ _a_p_p_e_a_r_i_n_g_ _o_n_ _t_h_e_ _m_a_i_n_ _t_e_r_m_i_n_a_l_ _o_n_l_y_ boss fault integer' Boss has stopped because of an irrecoverable error. The nature of the error, according to the value of integer' is explained in ref. 12. change kit Normal message as response to the "kit" command. change testoutput tape Mount a new test output tape on the same station. job name' clear list of device numbers' The job needs the special devices shown. If the devices are ready for use, apply the command "answerjob name'". deadly embrace: kill one or more jobs Some jobs have locked themselves being unable to get the re- sources they want. Should only occur in case the a_c_c_o_u_n_t_ job cannot run successfully. device reserved The device is reserved by a job or a process running in parallel with Boss device not device name' The command contains a wrong device number. hard error kit cat on device number' Hard error during input of auxiliary catalog from new disc kit. hard error on kit on device number' Hard error during input of chaintable from new disc kit. 1 illegal identification user name attempted' 0 Wrong user name or project number when the operator logs in or in an offline job. The user name attempted is shown in the last case. illegal name on device number' The just mounted kit has the same name as some other device or system file, and it cannot be accepted. \f kind must be p, w, or r Wrong access code in >name> or >label> command. job name' kitdisc kit name' on device number' The job asks for a disc kit on the device specified. The command "kit device number'" prepares the change of the disc kit. kit in use The kit cannot be changed now. kit mounted and ok on device number' Successful kit mounting completed. label name on device number' Tape name in label command is not a standard tape name. load mode name' reader process name' job name' tape no' 1 file name' exceeded 0 The next paper tape for the job job name' must be loaded. "Exceeded" shows that the job has asked for more paper tapes than allowed. load mode name' reader process name' job Load the next job tape with the mode shown 1 11 job name' mount tape tape name' 0 on device' 0 mounts exceeded 0 Mount the magnetic tape shown on a free standard station or on the device specified. A missing tape name means a scratch tape. "Mounts exceeded" shows that the job has asked for too many mountings. 1 1 job name' mount ring tape name' on device' 0 mounts exceeded0 Mount a write-enable-ring on the tape. "Mounts exceeded" shows that the job has asked for too many mountings. mount ring on device number' Occurs after a "label" command. Mount a write-enable-ring and Boss will write the label. \f name illegal on device number' tape name' The magnetic tape has the same name as some other device or system file, and it cannot be accepted. no label on device number' Boss could not understand the tape label. Use the "name" command or the "label" command. not same mode The mode which is impliticly given by the "start card" command differs from the mode last used. Presumably caused by a wrong installation parameter. not wanted on device number' tape name' The tape has not been asked for. Use the "name" (or "label") command or mount another tape. pause job name' message contents' Message from job to main terminal. The job awaits an answer. Use the >answer> command. printer device number' change to form number and name' Change the paper in the printer to the paper type specified. When done, type "start device number'". printer device number' disconnected The power has been switched off. When ready again, type "start device number'". printer device number' hard error, decimal status = integer' The printer has a hardware malfunction. After repair, type "start device number'". The interpretation of integer' is described in ref. 1. printer device number' illegal command Kill or repeat attempted on the printer in a forbidden situation. project number missing Access codes p and r demand the project number of the job. 1 1 job name' remove ring tape name' on device' 0 mounts exceeded0 Remove the write-enable-ring on the tape because the job is not allowed to write on the tape. "Mounts exceeded" shows that the job has asked for too many mountings.\f reserver trouble on device number' Boss cannot reserve the disc drive needed for kit change. slice table length on device number' The chain table of a kit is too long to be held in the Boss buffer used for the purpose. Redefinition of an installation parameter is necessary n' tape jobs waiting Normal message after "regret" showing the number of tape jobs still to be loaded in the mode regretted. tape used by job Name or label attempted on a tape which is in use. *** test output inactive Boss has switched off the test output generation because of troubles with the file "bosstest". test output on file n' Normal message at start up showing that test output is pro- duced on the file shown. job name' time exceeded The job has exceeded the run time stated in the job specification. too bad tape on device number' Boss is unable to write a label on the tape because of hard- ware malfunction. write error on kit on device number' The disc kit is too bad to be initialized by the "kitlab" command.\f F_ A_p_p_e_n_d_i_x_ _B_:_ _S_y_n_t_a_x_ _u_s_e_d_ _t_o_ _d_e_s_c_r_i_b_e_ _c_o_m_m_a_n_d_s_ Throughout the manual an extended version of the BNF has been used to describe the syntax of the various commands and job op- tions. The exact extensions to the BNF syntax used are: T_ string 1' string 2' &_ string n' means that exactly one of the alternatives string 1', string 2' up to string n' must appear at this place. T_ n string' &_ m means that the string may appear from m to n times. T_ space, i.e. the character with ISO value 32'n s'::= , arbitrary string without NL'' NL'1 &_ NL' may be any of the characters NL, "end card", FF or EM.\f F_ A_p_p_e_n_d_i_x_ _C_:_ _A_l_p_h_a_b_e_t_i_c_ _l_i_s_t_ _o_f_ _j_o_b_ _o_p_t_i_o_n_s_,_ _t_e_r_m_i_n_a_l_ _c_o_m_m_a_n_d_s_ _a_n_d_ o_p_e_r_a_t_o_r_ _c_o_m_m_a_n_d_s_ This appendix contains a complete list of all the commands which are accepted by Boss including the job options and the operator commands. The list is ordered alphabetically and the commands are listed along with all possible parameters, the kind of the com- mand (i.e. terminal, job option or operator) a very brief expla- nation of the function of the command and finally a reference to where the command may be found. The references are denoted by the following mnemonics: T_ Users Manual is User Operators Manual is Op &_ and chapter is denoted by ch.\f F_ skema indsættes\f F_ skema indsættes\f F_ skema indsættes\f F_ skema indsættes\f F_ skema indsættes\f F_ skema indsættes\f F_ skema indsættes\f F_ skema indsættes\f F_ skema indsættes\f F_ skema indsættes\f F_ A_p_p_e_n_d_i_x_ _D_:_ _I_n_d_e_x_ _o_f_ _e_x_a_m_p_l_e_s_ The following lists the headlines for the most important examples shown in this manual. The headlines are listed in the order of appearance and the examples in chapter 1 are not listed. Example headline Page number Login procedure39 Line insertion40 Normal use of autoline41 Typing of a long text file41 Use of last parameter42 String replacement44 Partitioning a text file into pages44 Save of edit file46 Typing of a long file49 FP-command "lookup"51 Renaming of files on backing storage51 Printer triangles52 Conversion on "nearest" printer54 Terminal job54 Killing a terminal job55 Display of active queue57 Printer queues59 Display of request63 Display of resources64 Temporary files on backing storage85 Distributed permanent resources91 Project teams93 Class room systems94 Safety copying on magnetic tape98 Copying files from one magnetic tape to98 another Moving a file from magnetic tape to back-99 ing storage Mounting and unloading magnetic tapes from99 Algol and Fortran programs List of paper types103 Loading job tapes107 Loading data tapes107 Load and convert files on a remote cassette110 Connection of telex devices112\f F_ A_p_p_e_n_d_i_x_ _E_:_ _R_e_f_e_r_e_n_c_e_s_ 1 Utility Programs, I by Hans Rischel RCSL No: 31-D364 2 Utility Programs, II by Tove Ann Aris RCSL No: 31-D494 3 Utility Programs, III by Tove Ann Aris RCSL No: 31-D379 4 RC 8000 Monitor, part II by Tove Ann Aris and Bo Tveden Jørgensen RCSL No: 31-D477 5 Multiprogramming System by Per Brinch Hansen RCSL No: 31-D140 6 BOSS 2 Operators Manual by Rune Einersen, Lars Otto Kjær Nielsen and Bent Bæk Jensen RCSL No: 31-D498 7 RC 8000 information notes Order no. SDO 041 8 Algol 6 by Hans Dinsen Hansen RCSL No: 31-D322 9 RC Fortran User>s Manual by Jens Hald and Alan Wessel RCSL No: 31-D392 10 The TELEX Facilities at MOT by Rune Einersen RCSL No: 31-D474 \f 11 RC Net General Information by Erik Lilholt RCSL No: 43-Ri0635 12 Boss2 Installation and Maintenance by Lars Otto Kjær Nielsen and Bent Bæk Jensen RCSL No: 31-D421 \f F_ A_p_p_e_n_d_i_x_ _F_:_ _W_o_r_d_l_i_s_t_/_I_n_d_e_x_ page number access code 96 accounts 78 answer111 area 78 arrival time 84 att 38 attention key26/38 autoline 40 autoline state 37 auxiliary disc 91 Disc neither containing the main catalog nor temporary pools. An auxiliary disc may be shared among a number of users for permanent resources. backing storage (bs)90 Random access storage slower than the primary store. Data may be transferred to/from bs in blocks. backing storage area (bs-area)90 One or more slices of backing storage logic- ally forming a unit. backing storage device90 A device storing data on magnetic surfaces (cylindric surface = drum, plane surface = disc). backing storage file85 buf78 call111 card deck 25 A number of cards forming a unit (all cards used for execution of a job). card file 25 A number of cards surrounded by file separa- tion cards and/or job separation cards. card job25 A job enrolled from a card reader (i.e. the job file is a card file). cassette tape110\f page number catalog A protected backing storage area containing entries describing files. catalog base 88 An attribute associated to a job defining the current read access. catalog entry Entry in catalog - referenced by name. catalog key88 An attribute to a catalog entry, defining the degree of permanency. cbuf78 change103 character As defined for ISO 7-bit character codes. character cancellation29 class(job)83 class margin 83 clear 49 clock 61 closest scope Scope is represented by integer intervals. The file with the closest scope is the one having the most narrow entry base surrounding the catalog base of the process. command state (terminal)37 compound FP-command12 control77 conversational device112 A device responding slowly, on input (as at terminal conversation) or on output, may be treated as a conversational device (i.e. the corresponding job is swopped during i/o). convert52 corelock 79 CPU-time When a job is running in primary store it may use the CPU, wait for i/o or be suspended. The CPU-time is the sum of periods when a job actively uses the CPU. current input A job currently reads FP-commands from current input. At job start current input equals pri- mary input. Current input may recursively be selected and resumed. \f page number current input As default FP-commands usually may produce output on current output. At job start current output eguals primary output. Current out- put may dynamically be changed. data tape 24 density (of magnetic tape) 97 device (job option) 76 device A unit connected to the processing unit. A device is used for storing data (backing storage device, magnetic tape station etc.) data entry (reader, terminal etc.) or data presentation (printer, terminal etc.). device controller A (small) computer controlling a group of devices and communicating with a host com- puter via RCNET. direct device111 A device directly controlled by a job without Boss intervening (no spooling). disc The main backing storage device (used for pools of temporary resources). See backing storage device. disc kit The document mounted on a disc drive. display56 drum 90 The fastest backing storage device. Used for frequently accessed data like the main cata- log. (RC 4000 only). edit file39 editing (terminal) 39 entry87 See catalog entry entry base88 An integer interval associated to a catalog entry used for file protection. exchangeable disc91\f page number expected finishing time 57 expected run time The time estimated in the job specification as "time". even97 file Some organized set of data. May be repre- sented as some document (or part of it) a paper tape, a set of cards, a backing storage area etc. file manipulation30/45 Creating, editing, storing and removing files. file name Files are described in catalog entries and referenced via file names defining the cata- log entry. file protection88 file separation card25 finis An FP-command telling Boss that the job ends. Boss will then remove the job and release occupied resources. FP7 general input device105 get46 go55 gross run time83 hard error Some error occurred on a device. The error is hard if it cannot be repaired (by repetition or the like). hotnews61 in core (job state)57 installation To a Boss installation belongs a hardware configuration (the computer RC 4000/ RC 8000\f page number and the permanently connected devices) and a Boss configuration (definition of standard values etc.). interactive job68 internal80 ISO character As defined for ISO 7-bit character code. job The execution of a set of programs, using a fixed set of resources and with common rights. job control command9 job controlled printing103 A job proceeds as though it used a printer directly, but Boss intervenes by simulating the printer and spools the output to increase job speed. job controlled reading105/108 A job proceeds as though it used a tape reader or a card reader directly, but Boss simulates the device and spools the input in a spool file. job control statement7 job file8 job option70 job priority 57 job scheduling83 job separation card25 job specification70 job state57 job tape24 key80 kill55/101 kit 91 See disc kit. label96 The first file (file 0) of a magnetic tape is a label identifying the tape and its access codes.\f pagenumber last used line (terminal editor)48 latest 79 line cancellation 29 line identification 39 When a file is connected as edit file all lines are equipped with line identifications (line numbers). The line identifications are stripped off when the file is saved for later use. link79 list 47 load 72 load file A backing storage file generated by Boss because of a load command in a job speci- fication. loading(job state)57 load specification 70 login 38 login file 87 A file with login scope. Unless the file is made permanent (scope user or project) it will be cancelled at logout. login period The period between login and logout. login procedure38 login resources92 A set of backing storage resources assigned to a terminal user at log in. logout62 lookup50 main terminal The terminal on which all requests for operator action are listed. Any user logged in at the main terminal is equipped with operator rights. max base88 An integer interval associated to a job. Used for write protection. message62 minimal77\f page number mode 73/74 Some devices may be operated in different modes. Often a mode defines data represen- tation (character set, parity etc.). monitor7 mounts76 name97 net run time72/84 newjob56 A permanent backing storage job file may be enrolled as an offline job using the "newjob" command. The job enrolled is called a "newjob". nrz 97 nrze 97 object file A program producing output on a file on basis of input from another file is said to read from a source file producing an object file. (A compiler reads a source program and generates an object program). offline job10 online77 operating system7 operator The person performing operator actions like tape mounting, change of paper etc. is called operator even if it is the user himself. operator command Terminal commands belonging to the highest privilege class (class 1) are called operator commands. output76 paper type103 A line printer may print on different types or paper. Boss queues printer outputaccord- ing to paper types to minimize paperchange. parent message Job processes are children of the Boss process. A job (the child) may request specialopera- tions by sending a message to the parent (i.e Boss).\f pagenumber parity error74 passive state (of terminal) 37 peripheral (device) See device perm 74 permanent file 87 permanent resource92 preserve78 primary input The job file read via Boss. See current input. primary output file 101 primout 13 The file on which Boss writes primary output from a job. printer triangle52/53 priority (of job)84 priority factor 84 privilege classes 66 process control Process control tasks are characterized by having severe demands for quick response. Often these demands prohibit swopping. program80 project file89 project number 38 project pool (of resources) 92 punch code Character representation on paper tape. See mode. regret62 release(magnetic tape) 100 remote Devices and users situated at a device controller and communicating with ahost com- puter via RCNET are often called remote devices and users. remote job entry Offline jobs may be enrolled from a remote device controller as card jobs or paper tape jobs and by means of the "newjob" and "replace" job commands. \f page number rename51 replace job A job enrolled by the FP-command "replace". request63 reserving(job state)57 resource63 rest claim The rest claim of a project is the amount of free backing storage resources. When no re- sources are used the rest claims equals total claims of the project. rewind A job may rewind a magnetic tape before re- leasing it - otherwise Boss will rewind the tape at release. run54 The execution of a job. The job may betermi- nated even though the primary output has not yet been printed. running state (of job)57 save45 scheduling (of job)83 scope (of file)86 scratch tape A magnetic tape used temporarily for sorting or the like. The contents of the tape is irrelevant after use. segment (backing storage) The block unit for data transfer to/from backing storage. select103 size71 slice 85/86 A backing storage device is logically divided into slices. Backing storage resources are allocated as an integral number of slices. A slice is an integral number of segments. source file See object file special tape station95 spooling Smoothing speed differences between a pro-\f page number ducer (of data) and a consumer by storing the data on backing storage from the time of pro- duction until the consumer becomes ready. standard base88 An integer interval used for defining read access. standard pool (of magnetic tape stations)95 standard printer100 Printers included in a Boss installation (permanently reserved by Boss) are called standard printers. standard resources At each Boss installation is defined a set of standard resources allocated to jobs not equipped with any job specification neither in the job file nor in the user catalog. standard tape station95 start64/109 state (of job) 57 state (of terminal)37 stations75 string (of characters) Generally a string is an ordered set of ISO characters. At terminal editing string' must neither contain the delimiter nor the newline character. suspends79 swop (of job) A job may be swopped i.e. the primary store area of the job is written on a backing storage area to release the primary store for use by jobs with higher priority. swopped out (job state)57 system disc90 One of the backing storage units is called the system disc. The system disc contains the "catalog" and it is primarily used for pools of nonpermanent resources. system file89 tape mounting When a job needs a tape it requests it by sending a parent message to Boss. When a\f page number station becomes free Boss will ask the operator to mount the tape and restart the job after mounting. tape name96 tapes77 temp75 temp(orary) file 86 temporary resource92 terminal command User commands written on the terminal and interpreted by Boss (as opposed to commands for interactive jobs; these commands are not interpreted by Boss). terminal editing39 terminal job 54 terminal state37 terminal user rights66 test text file Sequential file containing ISO-characters terminating with the End Medium character. time71 time out29 Certain operations like input from a terminal are "timed out" i.e. the program initiating the operation receives an answer after the expiration of the timeout period even if nothing was typed on the terminal. transmit65 turn around time The time elapsed from a job is enrolled till the output generated by the job has been printed. unlogged state (of terminal)37 user A user is a person described in the user ca- talog with specific user rights and resource claims. The user rights define types of ac- tions accepted from this user and his access rights to common resources. user base88 An integer interval associated to a user de-\f page number fining the scope of files private to him (i.e. he is the only one who has read access to them). user catalog See user. user file89 user index38 user name38 user pool92 verification mode20 verify48 visible file From a job are visible all files with entry bases surrounding the standard bases of the job. From a terminal are visible all files that are visible form a terminal job enrolled from this terminal. wait80 waiting (job state)57 work tape See scratch tape.\f F_name parameters kind functions reference accounts integer' job option No. of account records User, ch 3 11 answer jobname' text' integer' operator Answer to a pauseOp, ch 9 00message from a job area integer' job option No. of area processes User, ch 3 att yes terminal Attention directlyUser, ch 2 no to Boss 1 1 terminal Automatic line gene- autolinestart id.' distance' 0ration (terminalUser, ch 2 last 0editing) buf integer' job option No. of message buffers User, ch 3 call device no'document name' operator Name a device Op, ch 3 cbuf integer' job option No. of convert ope- User, ch 3 rations change device number'paper type' operator Change papertype Op, ch 6\f F_ name parameters kind function reference T_ login 1Remove tem- clear user file name' terminal porary or User, ch 2 &_ project 0 permanent file clock terminalList dateUser, ch 2 and time close operator Close down Op, ch 3 of Boss control device name' job optionReserve de-User, ch 3 vice and spool area std11Print convert file name' sprintername'0paper no' 0 terminal a file User, ch 2 corelock seconds' job option PermissionUser, ch 3 to lock the job in pri- mary core device device specification' job options ReservationUser, ch 3 of the device specified T_ 1remote11 convert job name' 0 paper no'0 1 display job name' claim 0 terminalList job-, loginterminal-User, ch 2 idle print- or dead0other queue &_\f F_ name parameters kind function reference w1 even device no' tape name' pproject no' operator Label a tape inOp, ch 3 r0m_t_e_ mode 1 get file name' id terminal Attach the file spe-User, ch 2 0cified as edit file go terminal Submit the current edit file as a termi-User, ch 2 nal job line identification' 1 terminalDisplay or insert User, ch 2 hotnews no0operatora pending messageOp, ch 3 internal integer' job option No. of internalUser, ch 3 processes 1 job user name' user index' 0 project number' job optionThe first component ofUser, ch 3 the job specification key integer' job option No. of protection keys User, ch 3 \f F_ name parameters kind function reference 1 device number' terminalAbort a terminal job a User, ch 2 kill device or a specificOp, ch 3 job name 'operatorjob 0 kit device no' operator Mount a disc kit onOp, ch 3 the device specified kitlabel device no'kitname'catalog size' operator Initialize a newOp, ch 3 slice size' disc size'disc kit w 1 label device no'tape name' p project no' operator Label a tape in m_t_o_Op, ch 3 r 0mode 1 latest hours' minutes' 0 job option The latest finishing User, ch 3 time link integer' job option Permission to use remoteUser, ch 3 devices directly 1 1 list first line' last line' 0 0 terminal List part or whole ofUser, ch 2 the edit file\f F_ name parameters kind function reference load mode' file name' job optionLoad card or tape to User, ch 3 backing storage (login) user name'user index'project number'terminal Login from a terminalUser, ch 2 project no' logout terminalLogout a terminal User, ch 2 User, ch 2 projectcatalog entry 0 message user name'line identification'terminalDisplay a message on the terminal identi-User, ch 2 fied by user name' User, ch 3 User, ch 3 tape mountings\f F_ name parameters kind function reference w1 name device no'tape name' pproject no'0 operator Treat the tape mounted ron the specifiedOp, ch 3 station as if it were labelled std1 newjob file name'printer name' terminal Submit the file speci-User, ch 2 0fied as an offline job w1 nrz device no'tape name' pproject no'0 operator Label a magnetic tapeOp, ch 3 rin n_r_z_ mode odd parity nrze as above operator as above with e_v_e_n_Op, ch 3 parity yesjobConversational inputUser, ch 3 online no option from terminal output integer' job Max no of charactersUser, ch 3 optionallowed in output perm kit name'segments'entries' job Reservation of permanentUser, ch 3 optionresources\f F_ name parameters kind function reference yes preserve no job option Preserve temporary User, ch 3 files at jobtermination priority integer' job option Initial priority User, ch 3 factor for a job program file name' job option Load of directly exe-User, ch 3 cutable program 1 tre regret integer' trf operatorRegret the load of aUser, ch 3 0terminal (rb) number of job tapesOp, ch 3 all reject device no' 4 operator Exclusion of paper-Op, ch 3 paper no' 1types all remove job name' operator Force terminal logout Op, ch 3 rename old name' new name' terminal Rename a file User, ch 2\f F_ name parameters kind function reference 1 all repeat device no' number of pages' operator repeat output on a Op, ch 3 0printer request terminal List of pendingUser, ch 2 commands to the operator margin 1 resource max time class' 0 terminal Lists the resources User, ch 2 freein the class margin run terminal Submit the edit fileUser, ch 2 as a terminal job 1 save file name' kit name' 0 terminal Save the current User, ch 2 edit file login scope user file name' terminal Change the scope of User, ch 2 projecta file all 4 select device no' paper no' 1operator Include papertypesOp, ch 3 for a printer\f F_ name parameters kind function reference max size integer' job option The size of the User, ch 3 process 1 snapshot file name' kit name' 0 operator Copy Boss>s testoutput Op, ch 3 into a specified area acco std 1operator start card local device name' printer name' 0terminal Start the deviceUser, ch 7 device no' (rb)or job specifiedOp, ch 3 stations integer' job option No of magnetic tape User, ch 3 stations yesFobids the enroll of stop no operator further jobs OP, ch 3 suspends integer'job option No. of suspendbuffersUser, ch 3 tape integer' job option Job controlled paperUser, ch 3 tape reading drum1 temp discsegments' entries' 0 job option Temporary resourcesUser, ch 3 on "drum" or "disc"\f F_ name parameters kind function reference 1 test first' last' 0 pattern' operator Selective testoutput Op, ch 3 from Boss 1 1 time hours' 0 minutes' 0seconds' job option Max. run time for the User, ch 3 job 1 transmit mode'file name' kit name' 0 job option Load a paper tape from a terminalUser, ch 2 equipped with a reader 11 verify line no' no of lines' 00 terminal Display the linesUser, ch 2 specified wait seconds' job option Max. swop out time User, ch 3\f \f «eof»