NIXDORF

Customer Service COMPUTER

Table of Contents

1. Introduction ...... 1

1.1 System Components ...... 1

1.2 Controller and Configuration Components ...... 1

1.3 System Operation ...... 2

1.4 Resources ...... 2

2 Bootstrap ...... 3

2.1 Functional Sequence ...... 3

2.2 Error Handling ...... 4

2.3 Assignment of Memory Space ...... 4

2.4 Flow Chart ...... 5

3 BZUPNEW ...... 7

3.1 Functional Sequence ...... 7

3.2 Error Handling ...... 7

3.3 Block Structure ...... 8

4 System Loader (XVSYLAR) ...... 9

4.1 General ...... 9

4.2 Block Structure ...... 9

4.3 XVSYLAR Function ...... 10

4.4 Processor Loader (LOAD) ...... 10

4.5 Service Module (XVSYLAR) ...... 11

5 Initial Program Load (IPL) ...... 11

5.1 General ...... 11

5.2 Process ...... 12

5.3 Flow Cart “Power On – Start IPL” ...... 13

5.4 Error Messages during IPL ...... 14

5.5 Memory Address Allocation in Release 3.3 for SIR ..... 18

6 CONFIG ...... 19

6.1 General ...... 19

6.2 CONFIG File Structure ...... 19

6.3 INFO Table ...... 22

7 INDEX ...... 25

7.1 INDEX Printout ...... 25

7.2 Removal of the Entry from Address 650 ...... 25

8 ACCOUNTS ...... 27

8.1 General ...... 27

8.2 ACCOUNT Data ...... 27

9 DMAP ...... 29

9.1 General ...... 29

9.2 Cartridge Printout (Example) ...... 29

9.2.1 Storage Module Printout (Example) ...... 30

10 Formatter ...... 31

10.1 Management of Trail Replacement ...... 31

10.1.1 Physical Pack Structure ...... 32

11 Port Control Block (PCB) ...... 33

11.1 FLW Word in Port Control Block ...... 34

12 Channel Control Block (CCB) ...... 35

13 Printer Control Block (PRCB) ...... 37

14 Data File Table (DFT) ...... 39

15 Partition Control Block (PCT) ...... 41

16 Logical Unit Variable Information Table (LUVAR) ...... 41

17 Logical Unit Fixed Information Table (LUFIX) ...... 43

18 Processor ...... 45

18.1 BYE ...... 45

18.2 INSTALL ...... 45

18.3 DRIVER ...... 45

18.4 SCOPE ...... 46

18.5 REMOVE ...... 46

18.6 DSP ...... 46

18.7 Synopsis ...... 46

18.8 Disc Service Processor (DSP) Handling ...... 47

19 NIROS (REX) ...... 51

19.1 Device Files in NIROS ...... 51

19.1.1 NO LOAD FLAGs ...... 52

19.2 System Files in NIROS ...... 53

19.3 Processor Files in NIROS ...... 54

19.4 Standalone Files in NIROS ...... 54

19.5 REX ...... 55

19.6 Memory Start Address for Various NIROS Components ...... 56

19.7 Memory Assignment ...... 58

19.7.1 Memory Assignment Description ...... 59

19.8 Page Zero Address Content ...... 61

19.8.1 Processor Page Zero Address Content ...... 63

19.9 Memory Printout Release 3.3 ...... 64

19.10 Time-Sharing ...... 65

19.11 Active File ...... 67

19.12 SWAP IN ...... 67

19.13 SWAP OUT ...... 68

19.14 INPUT/OUTPUT ...... 70

19.15 Data Access ...... 71

20 IOCS ...... 75

20.1 Channelling Concept ...... 75

20.2 Task ...... 76

20.3 Entries in the Waiting Queue ...... 77

20.4 Partial Printout of a Task Queue ...... 78

20.5 Removing an Entry from the Waiting Queue ...... 79

20.6 Task Priorities ...... 79

21 Interrupt Handling ...... 81

21.1 Parity and Time Error Interrupts ...... 81

21.2 System Time Interrupt ...... 81

21.3 Power Failure Interrupt ...... 82

21.4 Power Start Routine ...... 82

21.5 E/A Interrupt ...... 82

22 NIROS Block Diagram ...... 83

22.1 Flow Chart ...... 84

22.1.1 IDLE ...... 84

22.1.2 ESCAPE for LOG ON ...... 85

22.1.3 LOG ON ...... 86

22.1.4 Program Selection ...... 87

22.1.5 BUMP ...... 89

23 File Label (File Header) ...... 91

24 DISCSUB ...... 99

24.1 General ...... 99

24.2 Structure of a DISCSUB ...... 100

24.3 DISCSUB MAPPING ...... 102

24.3.1 Introduction ...... 102

24.3.2 SYSMOD Selection ...... 103

24.3.3 SYSMOD Memory Assignment List ...... 104

24.3.4 Memory Assignment with DISCSUB MAPPING ...... 105

24.3.5 Setting Up DISCSUBS ...... 106

24.3.6 Calling DISCSUBS ...... 107

24.3.7 Further Modifications ...... 108

25 File Organisation Methods ...... 109

25.1 Sequential Files ...... 109

25.2 Formatted Files ...... 109

25.3 Relative Files ...... 112

25.4 Index Files ...... 112

25.5 Text Files ...... 116

25.6 File Definition ...... 116

25.7 File Name ...... 116

25.8 The Concept of Logical Units ...... 117

25.9 Record Pointers ...... 117

26 Data Security ...... 119

27 TAMOS ...... 121

27.1 Selectors ...... 121

27.2 Data Backup ...... 122

27.3 System Monitoring ...... 123

27.4 Control Files ...... 123

27.5 Spooling ...... 125

27.5.1 Supervisor Selector ...... 126

27.5.2 System Maintenance ...... 126

27.5.3 Setting Up a Selector ...... 126

27.5.4 Updating a Selector ...... 127

27.5.5 Removing a Selector ...... 127

27.5.6 Printing a Selector ...... 127

27.5.7 Notice Maintenance ...... 127

27.5.8 Text Maintenance ...... 127

27.5.9 Program List ...... 128

27.6 Service Routines ...... 128

27.6.1 Start of Day ...... 128

27.6.2 End of Day ...... 128

27.6.3 Data Backup ...... 129

27.6.4 Reconstruction 2nd Generation ...... 129

27.6.5 Reconstruction 3rd Generation ...... 129

27.6.6 Setting Up Drives ...... 130

27.6.7 Exchanging Drives ...... 130

27.6.8 File Print Log ...... 130

27.6.9 Formatting ...... 130

27.6.10 Setting System Time ...... 130

27.6.11 Setting Up Users ...... 131

27.6.12 Shutting Down the System ...... 132

27.7 Spooling ...... 132

27.7.1 Displaying Spool File ...... 132

27.7.2 Starting Spooling ...... 132

27.7.3 Cancelling Spooling ...... 132

27.7.4 Displaying Log File ...... 132

27.8 System Programs ...... 133

27.8.1 Printing Archive Files ...... 133

27.8.2 Displaying Archive Files ...... 133

27.8.3 Printing Assignment ...... 133

27.8.4 System Security ...... 133

27.8.5 System Reconstruction ...... 133

27.8.6 System Commands ...... 133

28 Description of SYSMOD ...... 135

28.1 Calling SYSMOD ...... 135

28.2 Main Selectors ...... 136

28.3 Change Hardware Specifications ...... 136

28.3.1 Address MAP Registers ...... 136

28.3.2 Core Size ...... 137

28.3.3 Disc Characteristics ...... 137

28.3.4 No. of ALM Controllers ...... 138

28.3.5 Channel Port Connection ...... 138

28.4 Change Software Specifications ...... 139

28.4.1 Active File Size ...... 139

28.4.2 Drivers ...... 140

28.4.3 Size of the Mag Tape Buffer ...... 141

28.4.4 Port Characteristics ...... 141

28.4.5 Data Files ...... 142

28.4.6 Partitions ...... 143

28.4.7 Core Resident DISCSUBS ...... 144

28.4.8 Queues ...... 145

28.4.9 Time Slice ...... 146

28.4.10 Decimal Sign ...... 146

28.4.11 NCL Buffer Size ...... 146

28.5 Core Allocation MAP ...... 147

28.6 EXIT ...... 151

28.7 DISCSUB List ...... 151

28.8 Driver List ...... 155

28.9 Swapping/Partitioning ...... 156

28.10 Memory Assignment ...... 158

28.11 Time Slice Size ...... 159

1 Introduction

The following system components describe the functional process of the NIROS in its natural order.

1.1 System Components

·  Bootstrap

- Performs a memory test

- Determines the system unit

- Loads the system loader

- Displays an error report on the computer’s LED

·  System Loader

- Establishes ZE-Master communication

- Loads master board

- Determines and loads the REX and SIR (NIROS) components

- Jumps to the preparation of the system (SIR)

·  SIR

- Evaluates the INFO and CONFIG configuration tables

- Correspondingly assigns memory to system components

- Generates buffers and tables

- Creates the disc map

- Jumps to REX

1.2 Controller and Configuration Components

·  System Files

- Config File

- Index File

- Accounts File

- Disc Map

·  Standard Processors

- BYE

- SCOPE

- DSP

·  Tables

- Port Control Block (PCB)

- Channel Control Block (CCB)

- Partition Control Table (PCT)

- Disc Address Table (DAT)

- Starting Address Table (SAT)

- Data File Table (DFT)

- Info

- Printer Control Block (PRCB)

- Mapped Address Table (MAT)

1.3 System Operation

·  REX

- Handles interrupts

- Manages time slices

- Manages time

- Manages partitions

- Calls resources (drivers, discsubs)

·  Position Management

- Sets position indicators

- Transmits Signal

- Manages the I/O Buffer

- Handles special characters

·  Cartridge or Storage Module Drivers

- Runs disc applications

- Processes disc errors

1.4 Resources

·  Discsubs

- Subprograms for SIR, REX, processors and drivers

·  Driver

- Interface programs between peripherals and the user

2 Bootstrap

A bootstrap is a 1 KB PROM located in 1517.01 computers on the J7 and J8 IC-sockets.

The bootstrap is loaded into the memory address 0 in the following situations.

Situations: Power failure signal (main switch off)

Computer clearing signal

Emergency power supply clearing signal

Adapter removal

2.1 Functional Sequence

The bootstrap routines are performed in the following order:

1. Placing the general interrupt lock and releasing the locks corresponding to time errors, parity errors and power failure.

2. Performing a memory test by writing and reading random memory addresses until 64KB. Moreover, all addresses will also be indicated by a shut down value (400).

3. Determining the magnetic disc drive type

The partitions of the drive types are Cartridge = 0, 40MB Storage Module = 1, 80MB Storage Module = 2, Phoenix Drive = 4 and the bootstrap is located at 20.

4. Processing a 10 seconds long time warp.

5. Determining the system unit starting from unit 0-7 for the Cartridge, unit 0-1 for the 40 MB Storage Module, unit 0-3 for the 80 MB and unit 0-5 for the Phoenix Drive.

6. Loading BZUPNEW from RDA 0 from the determined drive type and writing memory addresses starting from address 26000.

7. Comparing the identification, the first word of the BZUPNEW must be a 403. In case of an error, the bootstrap error routine is called.

A checksum is formed through the BZUPNEW and compared to the 2nd word of the BZUPNEW. If the comparison has a negative result, the bootstrap error routine is called. In case of a positive result, which means that both tests have been positive, the jump to BZUPNEW (address 26000) occurs.

2.2 Error Handling

The next unit (x = x+1) will attempt to be loaded in case of magnetic disc failure, incorrect identification or false checksums.

If all tests are negative, the system will try to load unit 0 once again with consequential error reports on the computer’s LED. It then jumps to the start of the bootstrap routine.

2.3 Assignment of Memory Space

Memory test KB
Interrupt processing stage
Search BZUPNEW
Load BZUPNEW
Jump to BZUPNEW
Driver: Cartridge
Storage Module
Phoenix Drive
Disc error report:
Cartridge
Storage Module
Phoenix Drive

3 BZUPNEW

The Block Zero Utility Package (BZUP), located on block 0 of each disc (LU), is loaded by the bootstrap into memory. BZUPNEW is not a file per say because it has no header and is not listed in any INDEX.

The first 3 words from the BZUPNEW have the following meaning:

Word 0: an identification is listed here = 403

Word 1: check digit for BZUPNEW

Word 2: number of words that build the checksum.

The E/As of various files are recorded in words 26, 26 and 30:

Word 26: RDA of the XVSYLAR or XVSYLAD header

Word 27: RDA of the NIROSR or NIROSD header

Word 30: RDA of the DISCSUBS header

Words 360-377 are reserved for position loader programs.

3.1 Functional Sequence

1. Determining the ALM flags for RAP or DAP

ALM flag = 0 RAP ALM

ALM flag = 1 DAP ALM

2. If the ALM flag = 0, the XVSYLAR file is searched through Find File, if the file is not found or a MP error occurs, an error handling occurs through the BZUPNEW.

3. Loading the XVSYLAR files into memory. The header is saved starting from address 27400 and the XVSYLAR file itself starting from address 30000.

4. If all blocks are in the memory (5), the checksum is built from word 4 until the end of the file, and compared to the content of address 30001. If the comparison is negative, an error handling occurs through BZUPNEW.

5. The Cartridge, Storage Module and Phoenix drivers, as well as the bootstrap error routine (address 252 until 773), are pushed to address 32000 in the memory.

3.2 Error Handling

The system returns to the bootstrap (next unit) in case of disc errors. If the checksum is incorrect or the XSYSLAR file is not found, an error report shows up on the computer’s LED.

3.3 Block Structure

Word 0 : Identification
1 : Check digit
2 : Number of words
26 : XVSYLAR RDA
27 : NIROSR RDA
30 : DISCSUBS
360 – 377 : Position loader programs

4 System Loader (XVSYLAR)

4.1 General

The system loader is saved on five 512 blocks on the magnetic disc.

The last block of the system loader contains the parity and time error handling routines and is loaded into memory in case of a parity or time error. The system loader ensures that the master indicator and operating system are loaded.

The position programs that can be loaded are identified by XB00-XB49 and are only found in 3 XB programs.

The diagnosis segment, which is loaded first, is named XBOA.

4.2 Block Structure

HEADER
Master indicator
System unit definition
Find operating system
Load operating system
Load
Standalone file
Service module
ZE-RAP procedure
Parity and time error handling routines

Only blocks 0-3 are resident in the memory during the system loader.

4.3 XVSYLAR Function

The master indicator is polled until a loader wish is recognized. The loader wish is created by switching the indicator on.

The diagnosis segment is loaded by the system disc determined by the bootstrap.

The master indicator is polled once again. The second loader wish is created by entering the program no. If the program no. has already been specified through the SYSMOD, just press the “CR” key.

The position program is now loaded.

If the system loader was unequally loaded by unit 0, the master indicator will reveal the “LOADED FROM UNIT X” text. If it was only loaded by unit 0, “INIT” appears.

The system disc is newly defined through the “CR” confirmation resp. through the entry of the unit no. and the “CR” key. The system loader looks for the DISCSUBS RDA and for the NIROSR header in this entered unit no.