OctetView
0x00000…00100 (0, 0, 0) Sector 04604130343630 ┆ `A0460A ┆
0x00100…00200 (0, 0, 1) Sector 00000000000000 ┆ ┆
0x00200…00300 (0, 0, 2) Sector ff0080f080ffff ┆ p @ ┆
0x00300…00306 (0, 0, 3) WangDocument {d00=0x19, d01=0x44, d02=0x41, ptr=(17,0, 8), d05=0x00}
0x00306…0030c WangDocument {d00=0x47, d01=0x89, d02=0x41, ptr=(24,0, 8), d05=0x00}
0x0030c…00312 WangDocument {d00=0x47, d01=0x94, d02=0x41, ptr=(49,0, 0), d05=0x00}
0x00312…00318 WangDocument {d00=0x48, d01=0x36, d02=0x41, ptr=(26,0, 0), d05=0x00}
0x00318…00320 00 00 00 00 00 00 00 00 ┆ ┆
0x00320…00340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ┆ ┆
[…0x5…]
0x003e0…00400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 18 ┆ ┆
0x00400…00500 (0, 0, 4) Sector 00000000000000 ┆ ┆
0x00500…00600 (0, 0, 5) Sector 86312020202020 ┆ 1 8 7 Q? > 7 d N ';| BQd N ~<) 0uH &4'>( 1c5 & & ┆
0x00600…00700 (0, 0, 6) Sector 421c402600415b ┆B @& A[' ; X% %) PO P ; G A 4 C g x g V WI O 8 : 4 ? 4794A g *E < {C < { ; 4 % h PK b bD ! K : 8 9 4 t xyan 4846A4859A ? O Ep }/I ┆
0x00700…00800 (0, 0, 7) Sector 00000000000000 ┆ ┆
[…0x8…]
0x01000…01100 (1, 0, 0) WangDocumentBody
0x01100…01200 (1, 0, 1) Sector 00000000000000 ┆ ┆
[…0x6…]
0x01800…01900 (1, 0, 8) WangDocumentBody
[…0x3…]
0x01c00…01d00 (1, 0, 12) Sector 00000000000000 ┆ ┆
[…0x3…]
0x02000…02100 (2, 0, 0) WangDocumentBody
0x02100…02200 (2, 0, 1) Sector 00000000000000 ┆ ┆
[…0x6…]
0x02800…02900 (2, 0, 8) WangDocumentBody
[…0xef…]
0x11800…11900 (17, 0, 8) WangDocumentHead {hdr=WangSectHead {next=(17,0, 9), len=0xff, h3=41194441}, f00=»1944A «, f01=»CPS/SDS/033 «, f02=»vhn «, f03=»BLP «, f04=»4.2.4 «, f05=30-03-82 13:19, f06=» 9 «, f07=»14 «, f08=» 29194 «, f09=31-08-84 13:10, f10=» «, f11=»10 «, f12=» 221 «, f13=31-08-84 14:51, f14=04-09-84 10:53, f15=»0460A «, f16=» 58 «, f17=» 13 «, f18=»16 «, f19=» 764 «, f20=» 32636 «, f21=» «, f22=» «, f99=020010000110052710110280aaca1505000000000000014203f900df}
0x11900…11a00 (17, 0, 9) WangDocumentBody
[…0x6e…]
0x18800…18900 (24, 0, 8) WangDocumentHead {hdr=WangSectHead {next=(24,0, 9), len=0xff, h3=41478941}, f00=»4789A «, f01=»CPS/TRP/023 «, f02=»vhn «, f03=»URH «, f04=» «, f05=02-04-84 09:16, f06=» 2 «, f07=»35 «, f08=» 6877 «, f09=06-04-84 10:14, f10=» «, f11=»00 «, f12=» 68 «, f13=06-04-84 13:55, f14=11-04-84 14:48, f15=»0460A «, f16=» 23 «, f17=» 4 «, f18=»43 «, f19=» 404 «, f20=» 11098 «, f21=» «, f22=» «, f99=100030000110462710110280aaca15050000000000000138037400df}
0x18900…18a00 (24, 0, 9) WangDocumentBody
[…0x16…]
0x1a000…1a100 (26, 0, 0) WangDocumentHead {hdr=WangSectHead {next=(26,0, 1), len=0xff, h3=41483641}, f00=»4836A «, f01=»CPS/REP/006 «, f02=»dhh «, f03=»JAL «, f04=» «, f05=12-04-84 14:53, f06=» «, f07=»54 «, f08=» 4266 «, f09=12-04-84 16:58, f10=» «, f11=»06 «, f12=» 338 «, f13=12-04-84 17:05, f14=13-04-84 09:36, f15=»0460A «, f16=» 6 «, f17=» 1 «, f18=»00 «, f19=» 80 «, f20=» 4612 «, f21=» «, f22=» «, f99=020030000110462710110280aaca15050000000000000138031900df}
0x1a100…1a200 (26, 0, 1) WangDocumentBody
[…0x8…]
0x1aa00…1ab00 (26, 0, 10) Sector 00000000000000 ┆ ┆
[…0x5…]
0x1b000…1b100 (27, 0, 0) WangDocumentBody
[…0x15f…]
0x31000…31100 (49, 0, 0) WangDocumentHead {hdr=WangSectHead {next=(49,0, 1), len=0xff, h3=41479441}, f00=»4794A «, f01=»CPS/SDS/039 «, f02=»vhn «, f03=»HDK «, f04=»4.2.3 «, f05=02-04-84 11:46, f06=» 39 «, f07=»25 «, f08=»127746 «, f09=13-02-85 14:23, f10=» «, f11=»00 «, f12=» 6 «, f13=13-02-85 14:23, f14=13-02-85 15:24, f15=»0460A «, f16=» 70 «, f17=» 42 «, f18=»29 «, f19=» 1160 «, f20=»135052 «, f21=» «, f22=» «, f99=020010000110462710110380aa8a37040000000000000138036a01df}
0x31100…31200 (49, 0, 1) WangDocumentBody
[…0x6…]
0x31800…31900 (49, 0, 8) Sector 3109ff00479441 ┆1 G A. 4.2.3.4.2.7.1 Functional Specification 4.2.3.4.2.7.2 Module Interface ....... 4.2.3.4.3 VDU Access Method .............. 4.2.3.4.3.1 Vdu Access Method Main Specification ..............┆
0x31900…31a00 (49, 0, 9) Sector 310aff00479441 ┆1 G A 4.2.3.4.3.1.1 Functional Specification 4.2.3.4.3.1.2 Module interface ....... 4.2.3.4.3.1.3 Module Components ...... 4.2.3.4.3.1.4 Data Description ....... 4.2.3.4.3.2 Vdu Access Method Mo┆
0x31a00…31b00 (49, 0, 10) Sector 310bff00479441 ┆1 G Adel Specification .............. 4.2.3.4.3.2.1 Functional Specification ... 4.2.3.4.3.2.2 Module Interface ....... 4.2.3.4.3.2.3 Module Components ...... 4.2.3.4.3.2.4 Data Description ...┆
0x31b00…31c00 (49, 0, 11) Sector 310cff00479441 ┆1 G A.... 4.2.3.4.3.3 Vdu Access Method Io Specification .............. 4.2.3.4.3.3.1 Functional Specification 4.2.3.4.3.3.2 Module Interface ....... 4.2.3.4.3.3.3 Module Components ...... ┆
0x31c00…31d00 (49, 0, 12) Sector 310dff00479441 ┆1 G A 4.2.3.4.3.3.4 Data Description ....... 4.2.3.4.3.4 Vdu Access Method Errl Specification .............. 4.2.3.4.3.4.1 Functional Specification 4.2.3.4.3.4.3 Module Components ...... ┆
0x31d00…31e00 (49, 0, 13) Sector 310eff00479441 ┆1 G A 4.2.3.4.3.4.4 Data Description ....... 4.2.3.4.4 Cif Access Method .............. 4.2.3.4.4.1 Cif Access Method Specification .............. 4.2.3.4.4.1.1 Functional Specification 4┆
0x31e00…31f00 (49, 0, 14) Sector 310fff00479441 ┆1 G A.2.3.4.4.1.2 Module Interface ....... 4.2.3.4.4.1.3 Module Components ...... 4.2.3.4.4.1.4 Data Description ....... 4.2.3.4.5 Memory Access Method - Mem Acc. 4.2.3.4.5.1 Memory Access Method ┆
0x31f00…32000 (49, 0, 15) Sector 3100fa00479441 ┆1 z G A Specification .............. 4.2.3.4.5.1.1 Functional Specification 4.2.3.4.5.1.2 Module Interface ....... 4.2.3.4.5.1.3 Module Components ...... 4.2.3.4.5.1.4 Data Description ....... ┆
0x32000…32100 (50, 0, 0) Sector 3201ff00479441 ┆2 G A 4.2.3.4.2.2.3 Module Components ...... 4.2.3.4.2.2.4 Data Description ....... 4.2.3.4.2.2.5 Module Design .......... 4.2.3.4.2.3 Format Control Programme Interpreter Disp spec. ..... ┆
0x32100…32200 (50, 0, 1) Sector 3202ff00479441 ┆2 G A 4.2.3.4.2.3.1 Functional Specification (Module Design) ........ 4.2.3.4.2.3.2 Module Interface ....... 4.2.3.4.2.3.3 Module Components ...... 4.2.3.4.2.3.4 Data Description ....... ┆
0x32200…32300 (50, 0, 2) Sector 3203ff00479441 ┆2 G A4.2.3.4.2.3.5 Module Design .......... 4.2.3.4.2.4 Format Control Programme Contr Specification ........ 4.2.3.4.2.4.1 Functional Specification (Module Design) ........ 4.2.3.4.2.4.2┆
0x32300…32400 (50, 0, 3) Sector 3204ff00479441 ┆2 G A Module Interface ....... 4.2.3.4.2.4.3 Module Components ...... 4.2.3.4.2.4.4 Data Description ....... 4.2.3.4.2.4.5 Module Design .......... 4.2.3.4.2.5 Format Control Programme Seq Speci┆
0x32400…32500 (50, 0, 4) Sector 3205ff00479441 ┆2 G Afication .......... 4.2.3.4.2.5.1 Functional Specification (Module Design) ........ 4.2.3.4.2.5.2 Module Interface ....... 4.2.3.4.2.5.3 Module Components ...... 4.2.3.4.2.5.4 Data D┆
0x32500…32600 (50, 0, 5) Sector 3206ff00479441 ┆2 G Aescription ....... 4.2.3.4.2.5.5 Module Design .......... 4.2.3.4.2.6 Format Control Programme Misc Specification ......... 4.2.3.4.2.6.1 Functional Specification 4.2.3.4.2.6.2 Module ┆
0x32600…32700 (50, 0, 6) Sector 3207b700479441 ┆2 7 G AInterface ....... 4.2.3.4.2.6.3 Module components ...... 4.2.3.4.2.6.4 Data Description ....... 4.2.3.4.2.6.5 Module Design .......... .2.3.1.7 Validation and conversion. ..... 4.2.3.1.8 Error hand┆
0x32700…32800 (50, 0, 7) Sector 3108ff00479441 ┆1 G A 1 4.2.3.4.2.7 Format Control Programme Aux Specification .............┆
0x32800…32900 (50, 0, 8) Sector 3209ff00479441 ┆2 G A Format and Associated CONTROL Data ................... 4.2.3.2.3 Format Model and VDU Field Type 4.2.3.2.4 Format Control Programme (FCP) . 4.2.3.2.5 VDIA Data Layout ............... 4.2.3.3 Data F┆
0x32900…32a00 (50, 0, 9) Sector 320aff00479441 ┆2 G Alow, Control Structure ....... 4.2.3.3.1 Subpackage Interface ............. 4.2.3.3.1.1 UFCO VDIA UFCO INTERFACE ..... 4.2.3.3.1.2 VDIA USPR VDIA Interface ..... 4.2.3.4 Module Specification ............... ┆
0x32a00…32b00 (50, 0, 10) Sector 320bff00479441 ┆2 G A 4.2.3.4.1 VDIA MAIN ...................... 4.2.3.4.1.1 VDIA Main Loop Specification 4.2.3.4.1.1.1 Functional Specification 4.2.3.4.1.1.3 Module Components ...... 4.2.3.4.1.1.2 Data Description ..┆
0x32b00…32c00 (50, 0, 11) Sector 320cff00479441 ┆2 G A..... 4.2.3.4.1.2 Stack Error Specification .. 4.2.3.4.1.2.1 Functional Specification 4.2.3.4.1.2.2 Module Interface ....... 4.2.3.4.1.2.3 Module components ...... 4.2.3.4.1.3 Long Exit Spe┆
0x32c00…32d00 (50, 0, 12) Sector 320d5000479441 ┆2 P G Acification .... 4.2.3.4.1.4 Wait Vdu I O Specification . kendt kommando JA eller ANNULLER Kun tal Kun mellemrum eller retur Under redigering nu Ukendt dokument Fundet I brug nu Allerede p> systemdiskette ┆
0x32d00…32e00 (50, 0, 13) Sector 320eff00479441 ┆2 G A 1 4.2.3.4.2 Format Program Interpreter ..... 4.2.3.4.2.1 Format Control Progr┆
0x32e00…32f00 (50, 0, 14) Sector 320fff00479441 ┆2 G Aamme Interpreter Main spec. ..... 4.2.3.4.2.1.1 Functional Specification 4.2.3.4.2.1.2 Module Interface ....... 4.2.3.4.2.1.3 Module Components ...... 4.2.3.4.2.1.4 Data Description .......┆
0x32f00…33000 (50, 0, 15) Sector 3200ff00479441 ┆2 G A 4.2.3.4.2.1.5 Module Design .......... 4.2.3.4.2.2 Format Control Programme Interpreter Input Spec. .... 4.2.3.4.2.2.1 Functional Specification 4.2.3.4.2.2.2 Module Interface ....... ┆
0x33000…33100 (51, 0, 0) Sector 3301ff41479441 ┆3 AG A4794A CPS/SDS/039 vhn HDK 4.2.3 02 04 84 11 46 39 25 127746 09 10 84 15 50 01 7 09 10 84 14 51 10 10 84 11 42 0460A 71 41 52 1288 134647 F' * 7 8 j _┆
0x33100…33200 (51, 0, 1) Sector 33024700479441 ┆3 G G A 3 3 2 2 1 1 0 0 0 0 / / . . . . . - - - , , , + + + * * * ) ) ) ( ( ( ( ' ' ' & & & % % % $ $ $ $ # # # " " " ! ! ! $>%4%2#?K>e d H K2K7J;J1J6I:I=I0I6H<E1E7D<D1D5B1B6@2?0?5><>0>4>7=?=3<2<7;<:9:<80857:7?73776<606450┆
0x33200…33300 (51, 0, 2) Sector 3303a400479441 ┆3 $ G A 1 CPS/SDS/039 840601 # USER VDU DETAILED DESIGN SPECIFICATION ISSUE 1 CAMPS !/=6)M2&*/=MM, > I!e=6 !Z="(=e*$<kas#r 9x2"<! <6 M8)I:^=~ B#.!#<6 ! <6 M&&:!<~ J#.:!<2.=M2┆
0x33300…33400 (51, 0, 3) Sector 3304ff00479441 ┆3 G A 1 1 4.2.3 VDU Dialogue ┆
0x33400…33500 (51, 0, 4) Sector 3305ff00479441 ┆3 G A(VDIA) .................... 4.2.3.1 Functional Specification ........... 4.2.3.1.1 Control of main flow (VDIA main loop) .......................... 4.2.3.1.2 Interpretation of format control ┆
0x33500…33600 (51, 0, 5) Sector 3306ff00479441 ┆3 G A "programmes" ................... 4.2.3.1.3 Input from/output to VDU (VDU access method) ................. 4.2.3.1.4 Read from/write to CIF (CIF access method) ................. 4.2.3.1.5 Read┆
0x33600…33700 (51, 0, 6) Sector 3307ff00479441 ┆3 G A from/write to memory (memory access method) ......... 4.2.3.1.6 Read/write from sequences (sequence access method) ....... 4.2.3.1.7 Validation and conversion. ..... 4.2.3.1.8 Error hand┆
0x33700…33800 (51, 0, 7) Sector 3208ff00479441 ┆2 G Aling (Errl.) ......... 4.2.3.1.9 Handling of dynamic memory (memory management) ............ 4.2.3.2 Software Structure ................. 4.2.3.2.1 Main Components of VDIA ........ 4.2.3.2.2 VDU┆
0x33800…33900 (51, 0, 8) Sector 3309ff00479441 ┆3 G A 1 4.2.3.4.2.2.1 Functional Specification (Module design) X INIT BUND Narrative (Functional): Executes the FCP INSTRUCTION INIT BUNDLE. Ie. Initializes a bundle. Mandatory for f┆
0x33900…33a00 (51, 0, 9) Sector 330aff00479441 ┆3 G Aurther processing of specified bundle. Narrative (Design): Unpacks trailing parametres to command. Unpacked parametres are re-arranged for call of auxilliary procedure INIT BUNDLE. X INP FIELD Narrative (Functional): Executes the FCP INSTRUC┆
0x33a00…33b00 (51, 0, 10) Sector 330bff00479441 ┆3 G ATION INPUT FIELD. Ie. a single field of specified VDU TYPE from the VDU. The field is validated by specified SYNTAX PROCEDURE, which uses specified variable when storing results. Flag VDU RES is updated. Narrative (Design): A special bundle (BUN┆
0x33b00…33c00 (51, 0, 11) Sector 330cff00479441 ┆3 G ADLE ZERO, not accessable from FCP) is SET UP ro the SYNTAX PROCEDURE. X INP NXT Narrative (Functional): Executes the FCP INSTRUCTION INPUT NEXT. Ie. a single field of specified VDU TYPE from the VDU. The field is validated by specified SYNTAX P┆
0x33c00…33d00 (51, 0, 12) Sector 330dd100479441 ┆3 Q G AROCEDURE, which stores results in specified sequence. Flag VDU RES is updated. Narrative (Design): A special bundle (BUNDLE ZERO, not accessable from FCP) is SET UP for the SYNTAX PROCEDURE. FORMAT (R1 C BYTE COUNT R2 C K BYTE OFFS┆
0x33d00…33e00 (51, 0, 13) Sector 330eff00479441 ┆3 G A 1 X ILP NXT BUND Narrative (Functional): Executes the FCP INSTRUCTION INPUT NEXT BUNDLE. The bundle in concern must have been initialized. The next bundle of VDU TYPE is input fr┆
0x33e00…33f00 (51, 0, 14) Sector 330fff00479441 ┆3 G Aom VDU and inserted into bundle. If bundle did not become full, no more action is taken. Otherwise, if bundle did become full, the field(s) is (are) validated and results stored into Flag VDU RES is updated. Sequence. Note: No resources are relased┆
0x33f00…34000 (51, 0, 15) Sector 3300ff00479441 ┆3 G A. Consequently, this command should never be the last concerning specified bundle (refer X FLUSH BUND). X INP SEQ. Narrative (Functional): Executes the FCP INSTRUCTION INPUT SEQUENCE. Equivalent to repeated calls of INPUT NEXT until all fields ┆
0x34000…34100 (52, 0, 0) Sector 3401ff00479441 ┆4 G Ang the instr. code) corresponding to the specified instruction code. Narrative (Design): The procedure contains an inline table of instruction lengths. Note: The table are ordered according to the scalar type FCP CMD! The inline table must be ┆
0x34100…34200 (52, 0, 1) Sector 3402d400479441 ┆4 T G Achecked manually, when FCP CMD is changed! Local PROCEDURE GET LENGTH ( INSTR LENGTH INTEGER R6 ) Narrative: This is a dummy procedure used to fetch one word from an inline table E DEFINE M1 M2 (R2 C K ADDRESS OF MEMORY ┆
0x34200…34300 (52, 0, 2) Sector 3403ff00479441 ┆4 G A 1 4.2.3.4.2.1.4 Data Description VDIA pointers VDIA data 4.2.3.4.2.1.5 Module Design As the length of parametres are uniquely related to the command, update of the PROGRAMME C┆
0x34300…34400 (52, 0, 3) Sector 3404ff00479441 ┆4 G AOUNTER (PT) may be done before branching to "EXECUTE COMMAND". Data from FCPI MAIN to the underlying layer of "EXECUTE" -procedures (one to each command) is handed over via a FCPI DESCRIPTOR (stacked). Data from "EXECUTE"-procedures to FCPI MAIN are┆
0x34400…34500 (52, 0, 4) Sector 3405ff00479441 ┆4 G A handed-over via a flag-array (static located by linker) or - if "EXECUTE"-procedure concerns if, repeat, until, while, endwhile or exit commands - via FCPI DESCRIPTOR. The FCPI DESCRIPTOR contains mainly: index to CURRENT/NEXT COMMAND, LOOP CONTR┆
0x34500…34600 (52, 0, 5) Sector 3406ff00479441 ┆4 G AOL and parametres. These parametres are, for further SWELL PROCESSING, moved to word boundary. No jump-forward is implemented, i.e. a WHILE LOOP is bypassed by repeated skips of single commands until the ENDWHILE COMMAND is reached. While..endwhi┆
0x34600…34700 (52, 0, 6) Sector 3407ff00479441 ┆4 G Ale loops should not be nested (no run-time check). Repeat...until loops can be nested to a level determined by constant defined in "FCP PREFIX". However, a WHILE LOOP may be nested within a REPEAT LOOP (or visa versa). 4.2.3.4.2.2 Format Control┆
0x34700…34800 (52, 0, 7) Sector 33086300479441 ┆3 c G A Programme Interpreter Input Specification ON: INTEGER OPERATIONS RECEIVED FROM FCO. LONG EXIT: LONG EXIT RETURN RETURN ADDRESS LONG EXIT STACKPT STACK POINTER VDIA STATE: INTEGER STATE┆
0x34800…34900 (52, 0, 8) Sector 3409ff00479441 ┆4 G A 1 4.2.3.4.2.1 Format Control Programme Interpreter Main 4.2.3.4.2.1.1 Functional Specification INTERPRETATE THE LOADED SEGMENT OF THE FORMAT CONTROL PROGRAMME (FCP). THE FCP IS┆
0x34900…34a00 (52, 0, 9) Sector 340aff00479441 ┆4 G A CONSIDERED AS A BYTE ARRAY, WITH COMMANDS (INSTRUCTION CODES) ON BYTE BOUNDARY. PARAMETRES TO THE COMMAND (IF ANY) ARE PACKED IMMEDIATELY BEHIND THE COMMAND. FIRST BYTE IS ASSUMED TO BE A COMMAND. INTERPRETATION IS TERMINATED WHEN A EXIT COMMAND O┆
0x34a00…34b00 (52, 0, 10) Sector 340bff00479441 ┆4 G AR LIMIT OF THE BYTE ARRAY IS REACHED. THE COMPLETION CODE IS BASED ON VALIDATION RESULTS FROM SYNTAX/SEMANTIC PROCEDURE. 4.2.3.4.2.1.2 Module Interface Call Specification a) FCPI MAIN (COMMAND, FCP PT, MAX INDEX: INTEGER ┆
0x34b00…34c00 (52, 0, 11) Sector 340cff00479441 ┆4 G A CC: INTEGER b) FCPI MAIN (R0, R1, R4, R5, R6) Register conventions R1 Command from FCO R4 Pointer to first word in loades FCP segment R5 Max number of FCP bytes (-1) to be interpreted R6 Kept Return registers R0 Co┆
0x34c00…34d00 (52, 0, 12) Sector 340d6400479441 ┆4 d G Ampletion codes R1 - R5 Kept R6 Destroyed R7 Kept Fatal errors (see appendix XX) MAT NUMBER FROM THE LAST THREE DIGITS IN THE FORMAT ID AND STORES THE VALUE IN GLOBAL DATA. PROCEDURE READ FORMAT (R1 C BYTE COUNT R2 C K BYTE OFFS┆
0x34d00…34e00 (52, 0, 13) Sector 340eff00479441 ┆4 G A 1 4.2.3.4.2.1.3 Module Components PROCEDURE EVALUATE CMD ( R1 - R FCP COMMAND: FCP CMD R5 C K % FCPI DESCR R6 ┆
0x34e00…34f00 (52, 0, 14) Sector 340fff00479441 ┆4 G A- - LINK ) SKIP EXEC Narrative (Functional): Auxilliary procedure. Determines if command is to be skipped or executed. Further the trailing parametres (if any) are moved to word boundary. Programme-Counters (current, next) are updated. PROCED┆
0x34f00…35000 (52, 0, 15) Sector 3400ff00479441 ┆4 G AURE INSTR LENGTH ( R3 C R INSTRUCTION CODE / INSTRUCTION LENGTH R6 - - LINK ) Narrative (Functional): Auxilliary procedure that returns the instruction length (in bytes, includi┆
0x35000…35100 (53, 0, 0) Sector 3501ff00479441 ┆5 G AOPERATION IS RECEIVED BACK ON WAIT THE FOLLOWING IS DONE: WAIT SYSTEM CALL IN ORDER TO GET RESULT OF FORMAT HANDLER I-O IF RESULT = OK THE RETURN TO CALLER ELSE LONG EXIT. IF ANOTHER OPERATION IS RECEIVED IN S3 THE RECEIVED OPERATION POINT┆
0x35100…35200 (53, 0, 1) Sector 35029f00479441 ┆5 G AER IS STORED IN NEXT OPERATION; THE CURRENT FORMAT HANDLER OPERATION IS CANCELLED, AND A LONG EXIT IS MADE WITH COMPLETION CODE = COMMAND INTERRUPTION. D FROM FCO DATA TO VDIA GLOBAL VARIABLES. PROCEDURE DEFINE M1 M2 (R2 C K ADDRESS OF MEMORY ┆
0x35200…35300 (53, 0, 2) Sector 3503ff00479441 ┆5 G A 1 Module interface Call Specification a) WAIT VDU I O (RET SYS 0, RET SYS 1, RET SYS 2, RET SYS 3, RET SYS 4, SEM PTR: INTEGER) ┆
0x35300…35400 (53, 0, 3) Sector 3504ff00479441 ┆5 G A b) WAIT VDU I O(R0, R1, R2, R3, R4, R5, R6) Register conventions 1 (R0 - R RETURN FROM WAIT SYSTEM CALL R1 - R RETURN FROM WAIT SYSTEM CALL R2 - R RETURN FROM WAIT SYSTEM CA┆
0x35400…35500 (53, 0, 4) Sector 3505ff00479441 ┆5 G ALL R3 - R RETURN FROM WAIT SYSTEM CALL R4 - R RETURN FROM WAIT SYSTEM CALL R5 C K POINTER TO SEMAPHORE OPERATION R6) C - LINK Fatal errors Errors from format handler (exept VDU SPLIT FAILED, insert and delete not allowed). 1 ┆
0x35500…35600 (53, 0, 5) Sector 3506ff00479441 ┆5 G A 4.2.3.4.2 Format Program Interpreter The Format Programme Interpreter executes the Format Control Programme under control of VDIA Main Loop. FCP is a variable length byte string, which mus┆
0x35600…35700 (53, 0, 6) Sector 3507ff00479441 ┆5 G At have been read into a memory area by Main Loop before FCI is activated. When activated from Main Loop, FCI scans the FCP sequentially and executes the commands one by one. When an END command or the physical end of FCP is reached, whatever occur┆
0x35700…35800 (53, 0, 7) Sector 34082e00479441 ┆4 . G As first, FCI returnes to Main Loop. CURRENT OPERATION POINTERS SEMAPHORE NEXT OPERATION: INTEGER OPERATIONS RECEIVED FROM FCO. LONG EXIT: LONG EXIT RETURN RETURN ADDRESS LONG EXIT STACKPT STACK POINTER VDIA STATE: INTEGER STATE┆
0x35800…35900 (53, 0, 8) Sector 35093a00479441 ┆5 : G A END P MAIN POINTS TO A RECORD OF THIS TYPE m operation R5 C - Command code R6 C - Link 4.2.3.4.1.1.3 Module Components 1 PROCEDURE NEW STATE (R2 C K COMMAND CODE┆
0x35900…35a00 (53, 0, 9) Sector 350aff00479441 ┆5 G A 1 4.2.3.4.1.2 Stack Error Specification 4.2.3.4.1.2.1 Functional Specification CALLED IN THE ERROR EXIT FOR STACK OVERFLOW AS FOLLOWS: SWITCH CSP ( (P STACK = R0) INTEGER, (-┆
0x35a00…35b00 (53, 0, 10) Sector 350bff00479441 ┆5 G ASIZE (WORK) ) = R7) ERROR OK TO ERROR: STACK ERROR (R6) END THE PROCEDURE CALLS TEP INT ERROR. THE REGISTERS MUST CORRESPOND TO THE ORDER SEQUENCE ABOVE. 1 4.2.3.4.1.2.2 M┆
0x35b00…35c00 (53, 0, 11) Sector 350cff00479441 ┆5 G Aodule Interface Call specification a) STACK ERROR b) STACK ERROR (R6) Register conventions R6 LINK destroyed (R0 see description above) (R7 see description above) Return registers Fatal errors Stack overflow (always) ┆
0x35c00…35d00 (53, 0, 12) Sector 350d3000479441 ┆5 0 G A4.2.3.4.1.2.3 Module components None. K MOVES FORMAT ID TO GLOBAL DATA. EXTRACTS THE FORMAT NUMBER FROM THE LAST THREE DIGITS IN THE FORMAT ID AND STORES THE VALUE IN GLOBAL DATA. PROCEDURE READ FORMAT (R1 C BYTE COUNT R2 C K BYTE OFFS┆
0x35d00…35e00 (53, 0, 13) Sector 350eff00479441 ┆5 G A 1 4.2.3.4.1.3 Long Exit Specification Functional Specification THE PROCEDURE JUMPS BACK TO MAIN LOOP WITH SPECIFIED COMPLETION CODE. THE LINK REGISTER IS DUMMY AS THE PROCEDURE W┆
0x35e00…35f00 (53, 0, 14) Sector 350fff00479441 ┆5 G AILL NEVER RETURN TO CALLER. Modul interface Call specification a) LONG EXIT b) LONG EXIT (R6) Register conventions R0 completion code (kept) R6 Link (destroyed) Return registers R2 Para 2 in answer operation R3 Para 3┆
0x35f00…36000 (53, 0, 15) Sector 3500ff00479441 ┆5 G A in answer operation Fatal errors None. 4.2.3.4.1.4 Wait Vdu I O Specification Functional Specification CALLS ASSOCIATE IN ORDER TO ASSOCIATE THE OPERATION TO THE VDIA ACTIVATION SEMAPHORE S3 - AND WAITS FOR THE SEMAPHORE. IF THE SAME ┆
0x36000…36100 (54, 0, 0) Sector 36018800479441 ┆6 G AE: THE VARIABLES IN MAIN LOOP DATA: MODEL START, FCP START, FCP SIZE ARE NOT UPDATED. *** ntains a case for switching to a set of different semantic procedures. Each procedure is able to perform a semantic val┆
0x36100…36200 (54, 0, 1) Sector 3602ff00479441 ┆6 G A 1 PROCEDURE UPDATE ITEMS (R6) C LINK "PRIMARY ITEM" AND "SECONDARY ITEM" ARE MOVED FROM FCO DATA TO VDIA GLOBAL VARIABLES. PROCEDURE DEFINE M1 M2 (R2 C K ADDRESS OF MEMORY ┆
0x36200…36300 (54, 0, 2) Sector 3603ff00479441 ┆6 G ARECORD 1 R3 C K ADDRESS OF MEMORY RECORD 2 R6) C LINK CALLS "DEFINE MEMREC" IN ORDER TO DEFINE THAT MEMORY RECORDS M1 M2 HAVE THE ADDRESSES SPECIFIED. PROCEDURE GET M3 M4 (R2 R ADDRESS OF MEMORY RECORD M3 R3 R ADDRESS OF MEMORY RECOR┆
0x36300…36400 (54, 0, 3) Sector 3604bf00479441 ┆6 ? G AD M4 R6) C LINK CALLS THE FUNCTION "GET MEMREC ATTR" IN ORDER TO FIND THE ADDRESSES OF MEMORY RECORDS M3 M4. 1 for the VDIA coroutine. When VDIA Main Loop has received an op┆
0x36400…36500 (54, 0, 4) Sector 3605ff00479441 ┆6 G A 1 4.2.3.4.1.1.2 Data Description TYPE MAIN LOOP DATA = RECORD VDIA CONTROL FILE DESCRIPTOR: CONTROL FDCB FDCB INDEX FOR FILE NO OF RECORDS NO OF RECORDS IN FILE MODEL MA┆
0x36500…36600 (54, 0, 5) Sector 3606ff00479441 ┆6 G AX MAX WORD SIZE OF MODEL FCP OUT MAX MAX WORD SIZE OF FCP OUT FCP IN MAX MAX WORD SIZE OF FCP IN CTRL REC SIZE: INTEGER RECORD SIZE IN BYTES MODEL AND FCP CONTROL INFO MODEL START START ADDR FOR MODEL FCP START START ADDR FOR FCP ┆
0x36600…36700 (54, 0, 6) Sector 3607ff00479441 ┆6 G A A ZERO INDICATES THAT NO BUFFER IS ALLOCATED. FCP SIZE: INTEGER SIZE IN WORDS ON FCP BUFFER COMMAND AND STATE CURRENT COMMAND CURRENT COMMAND CODE PREVIOUS COMMAND PREVIOUS COMMAND CODE COMMAND SUFFIX CURRENT COMMAND SUFFIX ┆
0x36700…36800 (54, 0, 7) Sector 3508ff00479441 ┆5 G A CIF ACCESS COMMAND USES CIF ACCESS CURRENT OPERATION POINTERS SEMAPHORE NEXT OPERATION: INTEGER OPERATIONS RECEIVED FROM FCO. LONG EXIT: LONG EXIT RETURN RETURN ADDRESS LONG EXIT STACKPT STACK POINTER VDIA STATE: INTEGER STATE┆
0x36800…36900 (54, 0, 8) Sector 3609ff00479441 ┆6 G A Parametre 2 from operation R3 C R Parametre 3 from operation R5 C - Command code R6 C - Link 4.2.3.4.1.1.3 Module Components 1 PROCEDURE NEW STATE (R2 C K COMMAND CODE┆
0x36900…36a00 (54, 0, 9) Sector 360aff00479441 ┆6 G A R3 C VDIA STATE R NEW STATE CR -1 FOR ILLEGAL R6) C LINK COMPUTES NEW STATE FROM OLD STATE AND COMMAND CODE. IF THE COMMAND IS ILLEGAL A STATE OF -1 IS RETURNED. PROCEDURE ERROR STATE (R0 R COMPLETION CODE FOR ANSWER TO FCO R┆
0x36a00…36b00 (54, 0, 10) Sector 360b7300479441 ┆6 s G A1 C COMPLETION CODE (INTERNAL VDIA) R2 C K COMMAND CODE R3 C VDIA STATE R NEW STATE R6) C LINK START VDIA: VDIA state is changed from A to B by means of the parametres in the operation, and the me┆
0x36b00…36c00 (54, 0, 11) Sector 360cff00479441 ┆6 G A 1 COMPUTES THE STATE TO BE USED AFTER COMMAND TERMINATED IN ERROR. CALLS RESET FUNCTIONS IF REQUIRED. COMPUTES THE ERROR CODE TO BE USED IN THE ANSWER TO FCO. PROCEDURE MOVE F┆
0x36c00…36d00 (54, 0, 12) Sector 360dff00479441 ┆6 G AORMAT ID (R1 C K %FORMAT ID R6) C LINK MOVES FORMAT ID TO GLOBAL DATA. EXTRACTS THE FORMAT NUMBER FROM THE LAST THREE DIGITS IN THE FORMAT ID AND STORES THE VALUE IN GLOBAL DATA. PROCEDURE READ FORMAT (R1 C BYTE COUNT R2 C K BYTE OFFS┆
0x36d00…36e00 (54, 0, 13) Sector 360eff00479441 ┆6 G AET IN FILE (15: 0) R3 C K BYTE OFFSET IN FILE (31:16) R4 C K % DESTINATION R6) C LINK READS A SPECIFIED PART OF THE VDIA CONTROL FILE WHICH CONTAINS MODELS AND FCPS FOR ALL USER FORMATS. BYTE COUNT (R1) SPECIFIES THE AMOUT TO BE INPUT, BYTE┆
0x36e00…36f00 (54, 0, 14) Sector 360fff00479441 ┆6 G A OFFSET (R23) SPECIFY START POSITION IN FILE, WHILE DESTINATION (R4) IS A WORD ADDRESS. 1 PROCEDURE INSTALL REC PART (R2 C WANTED PART: INS MOD OUT: MODEL AND FCP OUT ┆
0x36f00…37000 (54, 0, 15) Sector 3600ff00479441 ┆6 G A INS IN : FCP-IN R4 R % MEMORY BUFFER R6 C LINK RELEASES MEMORY BUFFER(S) USED FOR THE MENTIONED PURPOSE. RESERVES A MEMORY BUF BY CALL OF "GET ALL MEMORY" AND INPUTS THE REQUESTED PART OF FCP FILE RECORD (FOR CURRENT FORMAT). NOT┆
0x37000…37100 (55, 0, 0) Sector 3701ff00479441 ┆7 G A 1 SEMANTIC This module consists of a main procedure, which contains a case for switching to a set of different semantic procedures. Each procedure is able to perform a semantic val┆
0x37100…37200 (55, 0, 1) Sector 3702ff00479441 ┆7 G Aidation of a whole VDU format. The register conventions are: R0 C Format number (From last 3 digits in format name) R Result: OK, NOT OK R4 C - Pointer to memory record 1 (M.1) R5 C - Pointer to memory record 3 (M.3) R6 C - Link 1 ┆
0x37200…37300 (55, 0, 2) Sector 3703ff00479441 ┆7 G A 4.2.3.4.1 VDIA MAIN The VDIA MAIN module contains the main loop for the VDIA coroutine, with the main waiting point for communication with UFCO. Furthermore the module contains a proce┆
0x37300…37400 (55, 0, 3) Sector 3704ff00479441 ┆7 G Adure with waiting point for VDU I/O completion. 4.2.3.4.1.1 VDIA Main Loop Specification 4.2.3.4.1.1.1 Functional Specification VDIA Main Loop contains the initial entry point for the VDIA coroutine. When VDIA Main Loop has received an op┆
0x37400…37500 (55, 0, 4) Sector 3705ff00479441 ┆7 G Aeration from UFCO it will initiate the appropriate function. If the command ca read/write to the VDU, Main Loop will load the FCP associated to format, which is given in the operation and the command. Then it will start interpreting of the FC┆
0x37500…37600 (55, 0, 5) Sector 37060b00479441 ┆7 G AP. TYPE: 1 VDIA COMMAND SUFFIX= (CONTINUE TRANS, new command within same transaction NEW TRANS NO CIF, first c┆
0x37600…37700 (55, 0, 6) Sector 3707ff00479441 ┆7 G A 1 At other commands it will start initiate function in other modules of VDIA. Depending on completion codes from the interpretation of the FCP or execution of functions in other VDI┆
0x37700…37800 (55, 0, 7) Sector 3608ff00479441 ┆6 G AA modules the Main Loop will send answer to UFCO. Execution of commands which are extensions to VDIA Main Loop, are called with the following conventions: R0 - R Completion code (internal VDIA value) R1 C - Parametre 1 from operation R2 C R ┆
0x37800…37900 (55, 0, 8) Sector 3709ff00479441 ┆7 G ALAY This module consists of a main procedure, which contains a case for switching to a set of different display procedures. Each procedure is able to convert data from internal representation to a format which can be displayed on the VDU. The re┆
0x37900…37a00 (55, 0, 9) Sector 370aff00479441 ┆7 G Agister convertions are: 1 R0 C K Display procedure reference (case label) R1 C K VDU field type R3 C Data length in bytes R Displayed data length in bytes R4 C K Pointer to d┆
0x37a00…37b00 (55, 0, 10) Sector 370b5100479441 ┆7 Q G Aata, which shall be converted R5 C K Pointer to output data R6 C Link ds 1 START VDIA: VDIA state is changed from A to B by means of the parametres in the operation, and the me┆
0x37b00…37c00 (55, 0, 11) Sector 370cff00479441 ┆7 G A 1 SYNTAX This module consists of a main procedure, which contains a case for switching to a set of different syntax procedures. Each procedure is able to validate one kind of input┆
0x37c00…37d00 (55, 0, 12) Sector 370dff00479441 ┆7 G A from the VDU and store in the internal data format. The register conventions are: R0 C Syntax procedure reference (case label) R Result: OK, NOT ON R1 C K Pointer to of field bundle R4 C K Pointer to memory record 1 M.1 (Account) ┆
0x37d00…37e00 (55, 0, 13) Sector 370eff00479441 ┆7 G AR5 C K Pointer to memory record 3 M.3 (Semantic record) R6 C - Link a field bundle is a record with the layout depicted below. FIELD BUNDLE = RECORD F TYPE VDU FIELD TYPE REPLICA REPLICA WITHIN FIELD TYPE OF FIRST FIELD IN BU┆
0x37e00…37f00 (55, 0, 14) Sector 370fff00479441 ┆7 G ANDLE COUNT NUMBER OF FIELDS IN BUNDLE CONTAINING DATA F SIZE: INTEGER; VDU FIELD SIZE. FOR VARIABLE FIELDS IT IS MAX SIZE FIELDS ARRAY(FIELD ONE FIELD ONE) OF INTEGER; POINTERS TO THE FIELDS. THERE IS A POINTER TO┆
0x37f00…38000 (55, 0, 15) Sector 37002e00479441 ┆7 . G A EACH FIELD IN THE BUNDLE END; LINE-INSERT: The cursor must be placed in a repeatable line. The command inserts the specified number of line copies with empty input fields after the cursor line. An error complet┆
0x38000…38100 (56, 0, 0) Sector 3801ff00479441 ┆8 G Aion code is returned in the semaphore operation if the insertion is not possible. VDIA remains in state C after the insertion has been performed. LINE DELETE: The cursor must be placed in a repeatable line. The specified number of lines starting a┆
0x38100…38200 (56, 0, 1) Sector 3802ff00479441 ┆8 G At cursor line are deleted. The command can not delete all lines of the type pointed to. An error completion code is returned in the semaphore operation of the deletion is not possible. VDIA remains in state C after the insertion has been performed. ┆
0x38200…38300 (56, 0, 2) Sector 3803ff00479441 ┆8 G A 1 COMMAND-SUFFIX: The command field of the semaphore operation sent to VDIA in S3 is structured into two subfields: - Command Code - Command Suffix The command suf┆
0x38300…38400 (56, 0, 3) Sector 3804ff00479441 ┆8 G Afix describes special actions to be performed by VDIA in connection with execution of the command, such as cleaning up after a previous transaction. The porrible values of command suffix are defined in the type VDIA COMMAND SUFFIX in TEP prefix ┆
0x38400…38500 (56, 0, 4) Sector 38057900479441 ┆8 y G AWhen the semaphore operation is returned from VDIA to the semaphore S2, the command suffix field will be zero. but acts merely as a mailman between Requestor and Format Control by copying the addresses from and to the semaphore operation. The st┆
0x38500…38600 (56, 0, 5) Sector 3806ff00479441 ┆8 G A 1 TYPE: 1 VDIA COMMAND SUFFIX= (CONTINUE TRANS, new command within same transaction NEW TRANS NO CIF, first c┆
0x38600…38700 (56, 0, 6) Sector 3807ff00479441 ┆8 G Aommand in a new transaction without CIF access. NEW TRANS CIF); first command in a new transaction with CIF access. 4.2.3.7.2 VDIA USPR VDIA Interface The interface between VDIA and USPR is mainly a location which is stored in VDIA pointers. ┆
0x38700…38800 (56, 0, 7) Sector 3708ff00479441 ┆7 G AThe locations should be stored during start up of the process. VDIA activates the USPR procedure by using the ENTER instruction. When the ENTER instruction has been performed VDIA will have set up data, as described below, in the registers. DISP┆
0x38800…38900 (56, 0, 8) Sector 3809ff00479441 ┆8 G A DISPLAY MENU, CLEAR VDU, CANCEL 10. Also this state is reached if VDIA is interrupted during command execution by an extra operation send to the activation semaphore. C. Active Format This state is achieved by any of the commands in category ┆
0x38900…38a00 (56, 0, 9) Sector 380a8500479441 ┆8 G A(3) (i.e. OUTPUT FORMAT or OUTPUT FORMAT AND DATA). In this state all commands of categories (2), (3) and (4) are meaningful. TERFACE SEMAPHORE OPERATION INTERFACE In its idle state VDIA waits for the activation semaphore S3. When a semaphore o┆
0x38a00…38b00 (56, 0, 10) Sector 380bff00479441 ┆8 G A 1 Commands 1 START VDIA: VDIA state is changed from A to B by means of the parametres in the operation, and the me┆
0x38b00…38c00 (56, 0, 11) Sector 380cff00479441 ┆8 G Anu specified by Format 1d is displayed. Used by operator log-in. CLOSEDOWN Return VDIA to state A. Used by operator log-out. DISPLAY MENU The menu specified by Format id is displayed. VDIA gets state B. CLEAR VDU The VDU format area is cleared┆
0x38c00…38d00 (56, 0, 12) Sector 380dff00479441 ┆8 G A. VDIA gets state B. CANCEL I10: VDIA gets state B without operations on the VDU. Used for fast cancel of VDU input/output. OUTPUT FORMAT: Outputs the format specified by Format Id and executes the associated Format Control Programme for Output ┆
0x38d00…38e00 (56, 0, 13) Sector 380eff00479441 ┆8 G AFormat. VDIA gets state C Usually the neat operation will be an input data. OUTPUT FORMAT AND DATA: Outputs the format specified by Format Id and executes the associated Format Control Programme for Output Data. VDIA gets state C. INPUT-DATA: L┆
0x38e00…38f00 (56, 0, 14) Sector 380fd300479441 ┆8 S G Aoads the Format Control Programme (FCP) for Input Data belonging to the current format and executes the FCP. VDIA remains in state C. SUSPEND: Same function as Input Data, just another function code. s the commands recognized by VDIA: MAN┆
0x38f00…39000 (56, 0, 15) Sector 3800ff00479441 ┆8 G A 1 LINE-INSERT: The cursor must be placed in a repeatable line. The command inserts the specified number of line copies with empty input fields after the cursor line. An error complet┆
0x39000…39100 (57, 0, 0) Sector 3901ff00479441 ┆9 G AND PARA 1 PARA 2 PARA 3 PARA 1 PARA 2 PARA 3 1. START VDIA % Format % lmit % FF Completion 1d Area Handle Code 2. SUSPEND Completion Code CLOSE DOWN -"- DISPLAY MENU %Format 1d -"- CLEAR VDU -"- CANC┆
0x39100…39200 (57, 0, 1) Sector 3902ff00479441 ┆9 G AEL 10 -"- 3. OUTPUT FORM. %Format % M1 % M2 -"- % M3 % M4 1d O FORMAT AND DATA %format % M1 % M2 -"- % M3 % M4 1d 4. INPUT DATA % M1 % M2 -"- % M3 % M4 APPEND % M1 -"- (SUSPEND) % M1 % M2 -"- % M3 % M4 COPY CIF COPY TYP┆
0x39200…39300 (57, 0, 2) Sector 3903fa00479441 ┆9 z G AE -"- L INSERT Line %Cursor Count Record -"- L DELETE Line %Cursor Count Record -"- INSERT GROUP -"- -"- DELETE GROUP -"- -"- ADAI P3 INPUT % M1 % M2 -"- % M3 % M4 ADAI P3 %Format OUTPUT 1d % M1 % M2 -"- % M3 % M4 goes┆
0x39300…39400 (57, 0, 3) Sector 3904ff00479441 ┆9 G A 1 The symbols M1, M2, M3 and M4 denated memory records. The records M1 and M2 are allocated by the Requestor before the command is send while the records M3 and M4 are allocated by t┆
0x39400…39500 (57, 0, 4) Sector 3905ff00479441 ┆9 G Ahe Format Control Programme during command execution. The VDIA programme does not access the data in these records but acts merely as a mailman between Requestor and Format Control by copying the addresses from and to the semaphore operation. The st┆
0x39500…39600 (57, 0, 5) Sector 3906ff00479441 ┆9 G Aructure of the memory records is therefore a interface between Requestor and Format Control and will in fact not be the same for all formats. The VDIA Programme has 3 basic operational states: A. VDU and Operator Undefined The initial state of┆
0x39600…39700 (57, 0, 6) Sector 3907ff00479441 ┆9 G A VDIA. only the START VDIA command is meaningful. VDIA is returned to this state by the CLOSE DOWN command. B. VDU and Operator Defined - No Active Format The idle state for a terminal in use. The following internal variables in VDIA are defined┆
0x39700…39800 (57, 0, 7) Sector 3808ff00479441 ┆8 G A IFCB for Format Handler (VDU split identification) Logical Terminal Number Classification Special Handling The commands of categories (2) and (3) are meaningful in this state. The state is reached by any of the commands: START VDIA,┆
0x39800…39900 (57, 0, 8) Sector 3909a400479441 ┆9 $ G A 1 FIGURE 4.2.3.3-1 VDIA AND ITS SURROUNDINGS SS (PT START VDIA PT.SEMAN); P S2 = ADDRESS (PT START VDIA PT.S2); P S3 = ADDRESS (PT S┆
0x39900…39a00 (57, 0, 9) Sector 390aff00479441 ┆9 G A 1 4.2.3.7 Subpackage Interface 4.2.3.7.1 UFCO VDIA UFCO INTERFACE SEMAPHORE OPERATION INTERFACE In its idle state VDIA waits for the activation semaphore S3. When a semaphore o┆
0x39a00…39b00 (57, 0, 10) Sector 390bff00479441 ┆9 G Aperation is received, VDIA executes the command specified. When command execution is completed VDIA updates the operation: Sender Coroutine 1d: Changed to VDIA id PARA 1: Completion code PARA 2, PARA 3 Pointer to VDIA re┆
0x39b00…39c00 (57, 0, 11) Sector 390cff00479441 ┆9 G Asult data and signals the operation to the requestor activation semaphore S2. Upon this VDIA returns to the idle state waiting for the next operation to be send to S3. Execution of commands involving i/o to the VDU are relative time consuming an┆
0x39c00…39d00 (57, 0, 12) Sector 390dff00479441 ┆9 G Ad VDIA will spend most of the time waiting for completion of VDU i/o. If the requestor sends a further operation to the semaphore S3 (e.g. while the execution of the previous operation is in progress), VDIA kills the current command execution as fas┆
0x39d00…39e00 (57, 0, 13) Sector 390eff00479441 ┆9 G At as posible. The (old) operation is returned to semaphore S2 with an "error" completion code and VDIA continues immediately executing the new command. The VDU is left with undefined data so the intervening operation should contain a command resettt┆
0x39e00…39f00 (57, 0, 14) Sector 390ffc00479441 ┆9 | G Aing the VDU (like "select menu" or "clear VDU") Note, that all operations send to semaphore S3 are returned to semaphore S2 - and in the same sequence as they are received. The figure on next page lists the commands recognized by VDIA: MAN┆
0x39f00…3a000 (57, 0, 15) Sector 3900ff00479441 ┆9 G A 1 1 OPERATION TO VDIA ANSWER FROM VDIA 1 COMMA┆
0x3a000…3a100 (58, 0, 0) Sector 3a01ff00479441 ┆: G Ahe internal structure of VDIA - as given below - is needed. Format Control, Format Model and Format are data tables. Format Control is a sort of programme which is interpreted by VDIA. For complicated VDIA operations (e.g. input and output) most ┆
0x3a100…3a200 (58, 0, 1) Sector 3a026800479441 ┆: h G Alogic is actually found in the Format Control Programme, which is loaded early in the operation. CONTROL BLOCK MEMREC: ARRAY CONTROL BLOCK; POINTED TO BY P MEMREC MEM ARRAY: ARRAY (0..VDIA NO OF MEM RECS) OF MEM REC; MEM MANAG: MMA; POINT┆
0x3a200…3a300 (58, 0, 2) Sector 3a03ff00479441 ┆: G A 1 Interfaces are shown by bold lines af follows: 1) Semaphore Operation interface between Requesting Coroutine and VDIA. 2) I/O Interface to fields on the VDU. The interface goes┆
0x3a300…3a400 (58, 0, 3) Sector 3a04ff00479441 ┆: G A via the Format Handler and uses the Format Model as well as the Format. 3) I/O Interface to internal data storage. 4) The semaphore operation contains pointers to data records. These pointers are accessible from Format Control. In many cases th┆
0x3a400…3a500 (58, 0, 4) Sector 3a05ff00479441 ┆: G Ae actual record structure is only known by the Requeste and Format Control and not by the VDIA programme who merely acts as a mailman. 5) Call of display, syntax and semantics procedures are controlled by Format Control. 6) The display, syntax a┆
0x3a500…3a600 (58, 0, 5) Sector 3a06ff00479441 ┆: G And semantics procedures use various service routines in VDIA - in particular for storing data in location determined by Format control. 7) The procedures may directly access data in some of the memory records without involving Format Control (the ┆
0x3a600…3a700 (58, 0, 6) Sector 3a07ff00479441 ┆: G Aaddress of the record is given as parametre in the call of the procedure). This is used e.g. by the semantic validation of "user" formats. 8) The procedures are after compilation linked with the requestor code (and not with VDIA). The procedures m┆
0x3a700…3a800 (58, 0, 7) Sector 39083e00479441 ┆9 > G Aay therefore directly access data in the requestor. DEFINITIONS OF CONSTANT ADDRESSES FOR VDIA POINTERS THE TYPE VDIA PT IS DEFINED IN THE TEP PREFIX: CONST 1 P┆
0x3a800…3a900 (58, 0, 8) Sector 3a09ff00479441 ┆: G AT START = ADDR OF COMONVAR + COMONVARSIZE; P DISPLAY = ADDRESS (PT START VDIA PT.DISPLAY); P SYNTAX = ADDRESS (PT START VDIA PT.SYNTAX); P SEMAN = ADDRESS (PT START VDIA PT.SEMAN); P S2 = ADDRESS (PT START VDIA PT.S2); P S3 = ADDRESS (PT S┆
0x3a900…3aa00 (58, 0, 9) Sector 3a0aff00479441 ┆: G ATART VDIA PT.S3); P TEP INT ERR = ADDRESS (PT START VDIA PT.INT ERR); P Q ERR = ADDRESS (PT START VDIA PT.Q ERR); P STACK = ADDRESS (PT START VDIA PT.STACK); P GLOBAL = ADDRESS (PT START VDIA PT.GLOBAL); P MAIN = ADDRESS (PT START VDIA P┆
0x3aa00…3ab00 (58, 0, 10) Sector 3a0bff00479441 ┆: G AT.MAIN); P CAM = ADDRESS (PT START VDIA PT.CAM); P FSAM = ADDRESS (PT START VDIA PT.FSAM); P MEMREC = ADDRESS (PT START VDIA PT.MEMREC); P MMA = ADDRESS (PT START VDIA PT.MEM MANAG); P FCPI = ADDRESS (PT START VDIA PT.FCPI); P MODEL = ADD┆
0x3ab00…3ac00 (58, 0, 11) Sector 3a0cff00479441 ┆: G ARESS (PT START VDIA PT.MODEL); P ERR LIST = ADDRESS (PT START VDIA PT.ERROR LIST); P FORMAT IF = ADDRESS (PT START VDIA PT.FORMAT IF); P ITEM = ADDRESS (PT START VDIA PT.ITEM); P VIEW ATTR = ADDRESS (PT START VDIA PT.VIEW ATTR); P TEST ┆
0x3ac00…3ad00 (58, 0, 12) Sector 3a0d3700479441 ┆: 7 G ASAVE = ADDRESS (PT START VDIA PT.TEST SAVE); AX PROCEDURE ENTRY SEMAN LOCATION OF SEMATICS PROCEDURE ENTRY S2 UFCO ACTIVATION SEM S3 VDIA ACTIVATION SEM INT ERR LOCATION OF TEP INT ERROR ROUTINE Q ERR: INTEGER; LOCATION OF QUEUE ┆
0x3ad00…3ae00 (58, 0, 13) Sector 3a0eff00479441 ┆: G A 1 Initialization of VDIA data Initialization of data is stated in the VDIA DAT.S module. Every pointer is initialized e.g. the pointer to data for main loop: VDIA POINTERS.MAIN ┆
0x3ae00…3af00 (58, 0, 14) Sector 3a0fff00479441 ┆: G A= ADDRESS (VDIA VAR.MAIN); Main loop data now can be accessed by use of the pointer. An example of data access to data could be: P MAIN INTEGER = R5; R5 now contains the start address for main loop data. R5 MAIN LOOP DATA. CURRENT COMMAN┆
0x3af00…3b000 (58, 0, 15) Sector 3a00ff00479441 ┆: G AD = R0; R0 now contains an information from main loop data. Further initialization is performed, please refer the source list VDIA DAT.S 4.2.3.3 Data Flow, Control Structure In order to understand the interfaces for VDIA some knowledge of t┆
0x3b000…3b100 (59, 0, 0) Sector 3b01ff00479441 ┆; G A POINTED TO BY P GLOBAL MAIN: MAIN LOOP DATA; POINTED TO BY P MAIN CAM: CAM; POINTED TO BY P CAM CAM FIELD ARRAY: ARRAY (1..MAX NO OF MF FIELDS) OF FIELD; POINTED TO BY CAM. FIELDS ARRAY CONTROL BLOCK FSAM: ARRAY CONTROL BLOCK; POIN┆
0x3b100…3b200 (59, 0, 1) Sector 3b02ff00479441 ┆; G ATED TO BY P FSAM SEQUENCES: ARRAY (1..VDIA NO OF SEQ) OF SEQ DESCR; POINTED TO BY FSAM ARRAY CONTROL BLOCK MEMREC: ARRAY CONTROL BLOCK; POINTED TO BY P MEMREC MEM ARRAY: ARRAY (0..VDIA NO OF MEM RECS) OF MEM REC; MEM MANAG: MMA; POINT┆
0x3b200…3b300 (59, 0, 2) Sector 3b03ff00479441 ┆; G AED TO BY P MMA SLICE ARRAY: ARRAY (1..VDIA NO OF SLICES) OF SLICE DESCRIPTOR; FCPI: FCPI REC; POINTED TO BY P FCPI BUNDLE ARRAY: ARRAY (0..VDIA NO OF BUNDLES) OF BUNDLE DESCR; STORAGE TYPES: ARRAY (0..VDIA NO OF STORAGE TYPES) OF STOR┆
0x3b300…3b400 (59, 0, 3) Sector 3b041100479441 ┆; G AAGE TYPE; s done by use of standard variables in the language. When a CIF field variable is referenced the necessary i/o is automatically executed. There is a fixed number of memory records references by symbolic names M1, M2,...... in the FCP. Som┆
0x3b400…3b500 (59, 0, 4) Sector 3b05ff00479441 ┆; G A 1 MODEL: MODEL REC; POINTED TO BY P MODEL ERROR LIST: ERR REC; POINTED TO BY P EER LIST FORMAT IF: FORMAT IF REC; POINTED TO BY P FORMAT IF; VDU BUFFER: ARRAY (1..VDIA VDU B┆
0x3b500…3b600 (59, 0, 5) Sector 3b06ff00479441 ┆; G AUF SIZE) OF INTEGER; MAINTAINED BY VDU I/O STACK: ARRAY (1..VDIA STACK SIZE) OF INTEGER; CONTROLLED BY STACK CONTROL BLOCK, POINTED TO BY P STACK WORKSP: ARRAY (1..VDIA WORK SIZE) OF INTEGER; MAINTAINED BY MEMORY MANAGEMENT END; V┆
0x3b600…3b700 (59, 0, 6) Sector 3b071100479441 ┆; G ADIA VAR 4.2.3.2.5 VDIA Data Layout For efficient reasons, VDIA data are separated into two sections: 1 - VDIA VAR is t┆
0x3b700…3b800 (59, 0, 7) Sector 3a08ff00479441 ┆: G A 1 DEFINITIONS OF CONSTANT ADDRESSES FOR VDIA POINTERS THE TYPE VDIA PT IS DEFINED IN THE TEP PREFIX: CONST 1 P┆
0x3b800…3b900 (59, 0, 8) Sector 3b09ff00479441 ┆; G Ajust after COMONVAR in the process. As VDIA POINTERS is located at a fixed address, the addresses of the separate pointers can be defined as constants in the VDIA code, even if VDIA is not linked to the data modules of the process. Definitions o┆
0x3b900…3ba00 (59, 0, 9) Sector 3b0ac500479441 ┆; E G Af types, constant addresses and variables are scetched in the following. As an example, the address of FCP interpreter data is loaded into R5 by the swell statement: INTEGER = R5, P FCPI in VDIA in order to identify the data types for the fields┆
0x3ba00…3bb00 (59, 0, 10) Sector 3b0b9d00479441 ┆; G A 1 FIGURE 4.2.3.2.5-1 VDIA DATA LAYOUT er to control the execution of the operation. The control programme is written in a special macro ┆
0x3bb00…3bc00 (59, 0, 11) Sector 3b0cff00479441 ┆; G A 1 Definition of VDIA Pointer Record located just after COMONVAR: 1 TYPE VDIA PT = RECORD DISPLAY LOCATION OF D┆
0x3bc00…3bd00 (59, 0, 12) Sector 3b0dff00479441 ┆; G AISPLAY PROCEDURE ENTRY SYNTAX LOCATION OF SYNTAX PROCEDURE ENTRY SEMAN LOCATION OF SEMATICS PROCEDURE ENTRY S2 UFCO ACTIVATION SEM S3 VDIA ACTIVATION SEM INT ERR LOCATION OF TEP INT ERROR ROUTINE Q ERR: INTEGER; LOCATION OF QUEUE ┆
0x3bd00…3be00 (59, 0, 13) Sector 3b0eff00479441 ┆; G A ERROR ROUTINE STACK: STACK CONTROL BLOCK; VDIA STACK CONTROL GLOBAL GLOBAL VDIA DATA MAIN MAIN LOOP CAM CIF ACCESS FSAM FSAM DESCRIPTOR MEMREC MEMORY REC. DESOR MEM MANAG MEMORY MANAGEMENT FCPI FCP INTERPRETER MODEL FORM┆
0x3be00…3bf00 (59, 0, 14) Sector 3b0fd500479441 ┆; U G AAT MODEL ERROR LIST ERROR LIST FORMAT IF VDU I/C INFO POINTERS TO VARIABLES IN FCO ITEM ITEM RECORD VIEW ATTR: INTEGER; VIEW ATTRIBUTES TEST SAVE: INTEGER; FOR TEST PURPOSES END; ongs to the FCO subpackage while storage, ┆
0x3bf00…3c000 (59, 0, 15) Sector 3b00ff00479441 ┆; G A 1 VDIA PROCESS DATA AREA POINTED TO BY VDIA POINTERS: VAR VDIA VAR:RECORD VDIA VARIABLES 1 GLOBAL: GLOBAL DATA; ┆
0x3c000…3c100 (60, 0, 0) Sector 3c01ff00479441 ┆< G A Field Type uniquely determines the field. The pair of integers, VDU Field Type, Replica are used internally in VDIA as field identification. Line number and field number inside the line are used solely by the VDU Access and Error Message Handli┆
0x3c100…3c200 (60, 0, 1) Sector 3c02ff00479441 ┆< G Ang Modules. 4.2.3.2.4 Format Control Programme (FCP) To a VDU format belongs a separate FCP for each VDIA operation which can be executed using the format (OUTPUT DATA, OUTPUT FORMAT, INPUT DATA). The FCP is prepared by use of a FCP Conventor U┆
0x3c200…3c300 (60, 0, 2) Sector 3c03ff00479441 ┆< G Atility. The input to the utility is a text file where the FCP instructions are written in symbolic form (ref. appendix ). The main elements in the FCP programming language are the following: Access to CIF fields or fields in memory record┆
0x3c300…3c400 (60, 0, 3) Sector 3c04ff00479441 ┆< G As. This is done by use of standard variables in the language. When a CIF field variable is referenced the necessary i/o is automatically executed. There is a fixed number of memory records references by symbolic names M1, M2,...... in the FCP. Som┆
0x3c400…3c500 (60, 0, 4) Sector 3c05ff00479441 ┆< G Ae of these records may belong to "UFCO" i.e. the address of the memory record is transferred to VDIA in the operation buffer from UFCO. Input from VDU and syntactic validation The FCP allows bundle input of several fields of the same type to be ┆
0x3c500…3c600 (60, 0, 5) Sector 3c06a700479441 ┆< ' G Aprocessed in one batch by the syntax validation procedure. The syntax procedure calls the procedure STORE FIELD in order to store the converted values in CIF location and deallocation of memory areas used as i/o buffers etc. "Procedures" Proc┆
0x3c600…3c700 (60, 0, 6) Sector 3c07ff00479441 ┆< G A 1 4.2.3.2.5 VDIA Data Layout For efficient reasons, VDIA data are separated into two sections: 1 - VDIA VAR is t┆
0x3c700…3c800 (60, 0, 7) Sector 3b08ff00479441 ┆; G Ahe VDIA coroutine record and contains the actual data. It may be located anywhere in the process. - VDIA POINTERS is a set of pointers to subrecords of VDIA VAR. Its purpose is to facilitate fast addressing of data in VDIA VAR. It must be located ┆
0x3c800…3c900 (60, 0, 8) Sector 3c09ff00479441 ┆< G And. A format is the combination of a scheme of data on the VDU, a scheme of corresponding data on disk or in memory, and the transformation between the two schemes. A format is represented by three pieces of control data: Format Handler's Format ┆
0x3c900…3ca00 (60, 0, 9) Sector 3c0aff00479441 ┆< G A Used by the format handler to generate the fixed part of the VDU picture and to define and control the active input-output fields. VDIA Format Model Used by the VDU Access Method module in VDIA in order to identify the data types for the fields┆
0x3ca00…3cb00 (60, 0, 10) Sector 3c0bff00479441 ┆< G A on the VDU and to generate and maintain error codes on the picture. VDIA Format Control Programme Used by the Format Control Module in VDIA in order to control the execution of the operation. The control programme is written in a special macro ┆
0x3cb00…3cc00 (60, 0, 11) Sector 3c0cff00479441 ┆< G Acode. It is interpreted by the format control module. Each instruction is convented into a call of a procedure using the parametres specified in the instruction. 4.2.3.2.3 Format Model and VDU Field Type The VDIA Format Models are generated by ┆
0x3cc00…3cd00 (60, 0, 12) Sector 3c0dff00479441 ┆< G Ause of the offline Format Model Generator Utility. This utility programme takes a text file (as preponed by use of the Text Editor Utility (generating the Format Handler's Format). In fact, exactly the same input text file is used for both generator┆
0x3cd00…3ce00 (60, 0, 13) Sector 3c0eff00479441 ┆< G A utilities. This file is called the Format Source File. This file contains various types of graphic information (fixed texts, size and position of fields, video attributes and input/output attributes for the fields) and beside that a symbolic name d┆
0x3ce00…3cf00 (60, 0, 14) Sector 3c0f5b00479441 ┆< [ G Aefining the VDU Field Type for each field where VDIA can perform input or output. transformation of data in internal format to a screen format and visa versa. Only conversion and validation procedure belongs to the FCO subpackage while storage, ┆
0x3cf00…3d000 (60, 0, 15) Sector 3c00ff00479441 ┆< G A 1 For each VDU Field Type the fields having this type are numbered 1,2,.... according to their order of appearance on the VDU picture. This Field Replica Number together with the VDU┆
0x3d000…3d100 (61, 0, 0) Sector 3d01ff00479441 ┆= G A 1 4.2.3.2.1 Main Components of VDIA VDIA is a service coroutine used by "UFCO-like" control coroutines (SFCO, DIFCO, SEFCO, UFCO) for transfer and convertion of data between the VDU┆
0x3d100…3d200 (61, 0, 1) Sector 3d027300479441 ┆= s G A and CIF/memory. The function of VDIA is controlled by operation buffers sent to the activation semaphore. dule Interface ....... 4.2.3.4.8.2.3 Module Components ...... 4.2.3.4.8.2.4 Data Description ....... 4.2┆
0x3d200…3d300 (61, 0, 2) Sector 3d03b000479441 ┆= 0 G A 1 FIGURE 4.2.3.2.1-1 DEPICTS THE MAIN COMPONENTS OF VDIA .. 4.2.3.4.2.5.2 Module Interface ....... 4.2.3.4.2.5.3┆
0x3d300…3d400 (61, 0, 3) Sector 3d04ff00479441 ┆= G A 1 The components of VDIA may be grouped into the following categories: Main Loop and Format Control Receives commmands in the activation semaphore and control the main flow of th┆
0x3d400…3d500 (61, 0, 4) Sector 3d05ff00479441 ┆= G Ae execution of commands. Field Sequence Access, Memory Access and CIF Access Performs storage and retrieval of data stored internalty in the CAMPS system. VDU Access Method and Error Message Handling Performs all input and output to the VDU┆
0x3d500…3d600 (61, 0, 5) Sector 3d06ff00479441 ┆= G A. Performs conversion between addressing on the VDU (line and field number) and internal addressing (field type, field replica). Memory Management Dynamic allocation and deallocation of memory areas used as i/o buffers etc. "Procedures" Proc┆
0x3d600…3d700 (61, 0, 6) Sector 3d07ac00479441 ┆= , G Aedures for syntactic and semantic valication of input data from the VDU and procedures for conversion to displayed format for output data to be shown on the VDU. 3.1.2 Interpretation of format control "programmes" This module performs the exec┆
0x3d700…3d800 (61, 0, 7) Sector 3c08ff00479441 ┆< G A 1 4.2.3.2.2 VDU Format and Associated Control Data The complicated VDIA operations (data input and output) require that a format has been specified to VDIA by an output format comma┆
0x3d800…3d900 (61, 0, 8) Sector 3d09ff00479441 ┆= G A output to the VDU. This module is responsible for conversion between addressing on the VDU (line, incornation and field number) and internal adddressing (field type, field replica) 4.2.3.1.4 Read from/write to CIF (CIF access method) The CIF a┆
0x3d900…3da00 (61, 0, 9) Sector 3d0a6c00479441 ┆= l G Access method performs read/write of data which is/shall be stored in CHAMPS INTERNAL FORMAT (CIF). .... 4.2.3.4.3.4 Vdu Access Method Errl Specification .............. 4.2.3.4.3.4.1 Functional Specification ┆
0x3da00…3db00 (61, 0, 10) Sector 3d0bff00479441 ┆= G A 1 4.2.3.1.5 Read from/write to memory (memory access method) The memory access method accesses data in memory records. 4.2.3.1.6 Read/write from sequences (sequence access method┆
0x3db00…3dc00 (61, 0, 11) Sector 3d0cff00479441 ┆= G A) The sequence access method makes it possible to read and write sequences of data by use of CIF access method or memory access method. 4.2.3.1.7 Validation and conversion. This is merely an interface to the subpackage User Procedures, which ┆
0x3dc00…3dd00 (61, 0, 12) Sector 3d0dff00479441 ┆= G Ais a collection of display, syntax and sematic procedures. The USPR subpackage is connected to the FCO subprocess. 4.2.3.1.8 Error handling (Errl.) During validation this module collects errors and displayes these when validation of format is f┆
0x3dd00…3de00 (61, 0, 13) Sector 3d0eff00479441 ┆= G Ainished. 4.2.3.1.9 Handling of dynamic memory (memory management) The purpose of memory management module is to implement the necessory dynamic memory allocation for buffers in VDIA. 4.2.3.2 Software Structure The Dialogue Subpackage is an┆
0x3de00…3df00 (61, 0, 14) Sector 3d0fff00479441 ┆= G A interpreter which is able to activate procedures (belonging to a FCO subpackage) for transformation of data in internal format to a screen format and visa versa. Only conversion and validation procedure belongs to the FCO subpackage while storage, ┆
0x3df00…3e000 (61, 0, 15) Sector 3d005400479441 ┆= T G Adisplay and other general functions is implemented in the VDIA subpackage. ... 4.2.3.4.7.1.3 Module Components ...... 4.2.3.4.7.1.4 Data Description ....... 4.2.3.4.8.1 Common Modules ............. ┆
0x3e000…3e100 (62, 0, 0) Sector 3e01ff00479441 ┆> G A4.2.3.4.8.1.1 Functial Specification Copy ................... 4.2.3.4.8.1.2. Module Interface ...... 4.2.3.4.8.1.3 Module Components ..... 4.2.3.4.8.1.4 Data Description ....... 4.┆
0x3e100…3e200 (62, 0, 1) Sector 3e02ff00479441 ┆> G A2.3.4.8.2.1 Functional Specification Get Mhi ................ 4.2.3.4.8.2.2 Module Interface ....... 4.2.3.4.8.2.3 Module Components ...... 4.2.3.4.8.2.4 Data Description ....... 4.2┆
0x3e200…3e300 (62, 0, 2) Sector 3e038e00479441 ┆> G A.3.4.8.3.1 Functional Specification Vdia Com ............... 4.2.3.4.8.3.2 Module Interface ....... (Module Design) ........ 4.2.3.4.2.5.2 Module Interface ....... 4.2.3.4.2.5.3┆
0x3e300…3e400 (62, 0, 3) Sector 3e04ff00479441 ┆> G A 1 4.2.3.1 Functional Specification To fulfil the task of VDIA, which is mainly to transform data from internal format to the format presented on the VDU and visa versa, the followin┆
0x3e400…3e500 (62, 0, 4) Sector 3e05ff00479441 ┆> G Ag functions should be implemented in the subpackage: - control of main flow (VDIA main loop) - interpretation of format control "programmes" - input from/output to VDU (VDIA access method) - Read from/write to CIF (CIF access method) - Read fr┆
0x3e500…3e600 (62, 0, 5) Sector 3e06ff00479441 ┆> G Aom/write to memory (memory access method) - Read from/write to sequence (sequence access method) - Validation and conversion (Display, Syntax and semantic) - Error handling (Errl.) - Handling of dynamic memory (memory management) 4.2.3.1.1 Co┆
0x3e600…3e700 (62, 0, 6) Sector 3e07ff00479441 ┆> G Antrol of main flow (VDIA main loop) VDIA main loop receives commands in the activation semaphore and control the main flow of the execution of the commands. 4.2.3.1.2 Interpretation of format control "programmes" This module performs the exec┆
0x3e700…3e800 (62, 0, 7) Sector 3d08ff00479441 ┆= G Aution of the format control programme connected to the format displayed on the screen. Each format, which contains fields, has an associated format control programme. 4.2.3.1.3 Input from/output to VDU (VDU access method) Performs all input and┆
0x3e800…3e900 (62, 0, 8) Sector 3e09ff00479441 ┆> G Aents ...... 4.2.3.4.3.2.4 Data Description ....... 4.2.3.4.3.3 Vdu Access Method Io Specification .............. 4.2.3.4.3.3.1 Functional Specification 4.2.3.4.3.3.2 Module Interface ...┆
0x3e900…3ea00 (62, 0, 9) Sector 3e0aff00479441 ┆> G A.... 4.2.3.4.3.3.3 Module Components ...... 4.2.3.4.3.3.4 Data Description ....... 4.2.3.4.3.4 Vdu Access Method Errl Specification .............. 4.2.3.4.3.4.1 Functional Specification ┆
0x3ea00…3eb00 (62, 0, 10) Sector 3e0bff00479441 ┆> G A 4.2.3.4.3.4.3 Module Components ...... 4.2.3.4.3.4.4 Data Description ....... 4.2.3.4.4 Cif Access Method .............. 4.2.3.4.4.1 Cif Access Method Specification .............. ┆
0x3eb00…3ec00 (62, 0, 11) Sector 3e0cff00479441 ┆> G A 4.2.3.4.4.1.1 Functional Specification 4.2.3.4.4.1.2 Module Interface ....... 4.2.3.4.4.1.3 Module Components ...... 4.2.3.4.4.1.4 Data Description ....... 4.2.3.4.5 Memory Access Method - Mem Acc┆
0x3ec00…3ed00 (62, 0, 12) Sector 3e0dff00479441 ┆> G A. 4.2.3.4.5.1 Memory Access Method Specification .............. 4.2.3.4.5.1.1 Functional Specification 4.2.3.4.5.1.2 Module Interface ....... 4.2.3.4.5.1.3 Module Components ...... ┆
0x3ed00…3ee00 (62, 0, 13) Sector 3e0eff00479441 ┆> G A 4.2.3.4.5.1.4 Data Description ....... 4.2.3.4.6 Field Sequence Access Method Seq Acc ........................ 4.2.3.4.6.1 Sequence Access Method Specification .............. 4.┆
0x3ee00…3ef00 (62, 0, 14) Sector 3e0fff00479441 ┆> G A2.3.4.6.1.1 Functional Specification 4.2.3.4.6.1.4 Data Description ....... 4.2.3.4.7 Memory Management (Mem-Man) .... 4.2.3.4.7.1 Memory Management Specification .............. 4.2.3.4.┆
0x3ef00…3f000 (62, 0, 15) Sector 3e00ff00479441 ┆> G A7.1.1 Functional Specification 4.2.3.4.7.1.2 Module Interface ....... 4.2.3.4.7.1.3 Module Components ...... 4.2.3.4.7.1.4 Data Description ....... 4.2.3.4.8.1 Common Modules ............. ┆
0x3f000…3f100 (63, 0, 0) Sector 3f01ff00479441 ┆? G A.3.4.2.3.4 Data Description ....... 4.2.3.4.2.3.5 Module Design .......... 4.2.3.4.2.4 Format Control Programme Contr Specification ........ 4.2.3.4.2.4.1 Functional Specification ┆
0x3f100…3f200 (63, 0, 1) Sector 3f02ff00479441 ┆? G A (Module Design) ........ 4.2.3.4.2.4.2 Module Interface ....... 4.2.3.4.2.4.3 Module Components ...... 4.2.3.4.2.4.4 Data Description ....... 4.2.3.4.2.4.5 Module Design .......... 4.2.3┆
0x3f200…3f300 (63, 0, 2) Sector 3f03ff00479441 ┆? G A.4.2.5 Format Control Programme Seq Specification .......... 4.2.3.4.2.5.1 Functional Specification (Module Design) ........ 4.2.3.4.2.5.2 Module Interface ....... 4.2.3.4.2.5.3┆
0x3f300…3f400 (63, 0, 3) Sector 3f04ff00479441 ┆? G A Module Components ...... 4.2.3.4.2.5.4 Data Description ....... 4.2.3.4.2.5.5 Module Design .......... 4.2.3.4.2.6 Format Control Programme Misc Specification ......... 4.2.3.4.2.6.1 ┆
0x3f400…3f500 (63, 0, 4) Sector 3f05ff00479441 ┆? G AFunctional Specification 4.2.3.4.2.6.2 Module Interface ....... 4.2.3.4.2.6.3 Module components ...... 4.2.3.4.2.6.4 Data Description ....... 4.2.3.4.2.6.5 Module Design .......... 4.2.3.4.┆
0x3f500…3f600 (63, 0, 5) Sector 3f06ff00479441 ┆? G A2.7 Format Control Programme Aux Specification .............. 4.2.3.4.2.7.1 Functional Specification 4.2.3.4.2.7.2 Module Interface ....... 4.2.3.4.3 VDU Access Method .............. 4.2┆
0x3f600…3f700 (63, 0, 6) Sector 3f07ff00479441 ┆? G A.3.4.3.1 Vdu Access Method Main Specification .............. 4.2.3.4.3.1.1 Functional Specification 4.2.3.4.3.1.2 Module interface ....... 4.2.3.4.3.1.3 Module Components ...... 4.2.3.┆
0x3f700…3f800 (63, 0, 7) Sector 3e08ff00479441 ┆> G A4.3.1.4 Data Description ....... 4.2.3.4.3.2 Vdu Access Method Model Specification 4.2.3.4.3.2.1 Functional Specification ... 4.2.3.4.3.2.2 Module Interface ....... 4.2.3.4.3.2.3 Module Compon┆
0x3f800…3f900 (63, 0, 8) Sector 3f09ff00479441 ┆? G A.3 Format Model and VDU Field Type 4.2.3.2.4 Format Control Programme (FCP) . 4.2.3.2.5 VDIA Data Layout ............... 4.2.3.3 Data Flow, Control Structure ....... 4.2.3.7 Subpackage Interface ..............┆
0x3f900…3fa00 (63, 0, 9) Sector 3f0aff00479441 ┆? G A. 4.2.3.7.1 UFCO VDIA UFCO INTERFACE ....... 4.2.3.7.2 VDIA USPR VDIA Interface ....... 4.2.3.4.1 VDIA MAIN ...................... 4.2.3.4.1.1 VDIA Main Loop Specification 4.2.3.4.1.1.1 Functional┆
0x3fa00…3fb00 (63, 0, 10) Sector 3f0bff00479441 ┆? G A Specification 4.2.3.4.1.1.3 Module Components ...... 4.2.3.4.1.1.2 Data Description ....... 4.2.3.4.1.2 Stack Error Specification .. 4.2.3.4.1.2.1 Functional Specification 4.2.3.4.1.2.2 Mo┆
0x3fb00…3fc00 (63, 0, 11) Sector 3f0cff00479441 ┆? G Adule Interface ....... 4.2.3.4.1.2.3 Module components ...... 4.2.3.4.1.3 Long Exit Specification .... 4.2.3.4.1.4 Wait Vdu I O Specification . 4.2.3.4.2 Format Program Interpreter ..... 4.2.3┆
0x3fc00…3fd00 (63, 0, 12) Sector 3f0dff00479441 ┆? G A.4.2.1 Format Control Programme Interpreter Main spec. ..... 4.2.3.4.2.1.1 Functional Specification 4.2.3.4.2.1.2 Module Interface ....... 4.2.3.4.2.1.3 Module Components ...... 4.2.3┆
0x3fd00…3fe00 (63, 0, 13) Sector 3f0eff00479441 ┆? G A.4.2.1.4 Data Description ....... 4.2.3.4.2.1.5 Module Design .......... 4.2.3.4.2.2 Format Control Programme Interpreter Input Spec. .... 4.2.3.4.2.2.1 Functional Specification 4.┆
0x3fe00…3ff00 (63, 0, 14) Sector 3f0fff00479441 ┆? G A2.3.4.2.2.2 Module Interface ....... 4.2.3.4.2.2.3 Module Components ...... 4.2.3.4.2.2.4 Data Description ....... 4.2.3.4.2.2.5 Module Design .......... 4.2.3.4.2.3 Format Control Programme ┆
0x3ff00…40000 (63, 0, 15) Sector 3f00ff00479441 ┆? G A Interpreter Disp spec. ..... 4.2.3.4.2.3.1 Functional Specification (Module Design) ........ 4.2.3.4.2.3.2 Module Interface ....... 4.2.3.4.2.3.3 Module Components ...... 4.2┆
0x40000…40100 (64, 0, 0) WangDocumentHead {hdr=WangSectHead {next=(64,0, 1), len=0xff, h3=41479441}, f00=»4794A «, f01=»CPS/SDS/039 «, f02=»vhn «, f03=»HDK «, f04=»4.2.3 «, f05=02-04-84 11:46, f06=» 39 «, f07=»25 «, f08=»127746 «, f09=17-04-84 09:59, f10=» «, f11=»01 «, f12=» 15 «, f13=17-04-84 10:00, f14=17-04-84 13:40, f15=»0460A «, f16=»111 «, f17=» 39 «, f18=»26 «, f19=» 1948 «, f20=»127761 «, f21=» «, f22=» «, f99=020010000110462710110380aa8a37040000000000000138033102df}
0x40100…40200 (64, 0, 1) Sector 40026f00479441 ┆@ o G A @ @ > = = = = = < < ; ; ; ; ; : : 9 9 9 9 8 8 8 7 7 7 6 6 6 5 5 5 4 4 4 3 3 3 2 2 2 2 1 1 1 0 0 0 0 / / / / . . - - - , , , , + + + * * * ) ) ) ) ( ( ( ' ' ' ' & & & % % % $ $ $ # # # " " " " ! ! ! ┆
0x40200…40300 (64, 0, 2) Sector 4003a300479441 ┆@ # G A 1 CPS/SDS/039 840601 USER VDU DETAILED DESIGN SPECIFICATION ISSUE 1 CAMPS -!/=6)M2&*/=MM, > I!e=6 !Z="(=e*$<kas#r 9x2"<! <6 M8)I:^=~ B#.!#<6 ! <6 M&&:!<~ J#.:!<2.=M2┆
0x40300…40400 (64, 0, 3) Sector 4004ff00479441 ┆@ G A 1 1 4.2.3 4.2.3.1 F┆
0x40400…40500 (64, 0, 4) Sector 4005ff00479441 ┆@ G Aunctional Specification ........... 4.2.3.1.1 Control of main flow (VDIA main loop) .......................... 4.2.3.1.2 Interpretation of format control "programmes" ................... 4┆
0x40500…40600 (64, 0, 5) Sector 4006ff00479441 ┆@ G A.2.3.1.3 Input from/output to VDU (VDU access method) ................. 4.2.3.1.4 Read from/write to CIF (CIF access method) ................. 4.2.3.1.5 Read from/write to memory (memory ┆
0x40600…40700 (64, 0, 6) Sector 4007ff00479441 ┆@ G Aaccess method) ......... 4.2.3.1.6 Read/write from sequences (sequence access method) ....... 4.2.3.1.7 Validation and conversion. ..... 4.2.3.1.8 Error handling (Errl.) ......... 4.2.3.1.9 Han┆
0x40700…40800 (64, 0, 7) Sector 3f08ff00479441 ┆? G Adling of dynamic memory (memory management) ............ 4.2.3.2 Software Structure ................. 4.2.3.2.1 Main Components of VDIA ........ 4.2.3.2.2 VDU Format and Associated Contro 4.2.3.2┆
0x40800…40900 (64, 0, 8) Sector 00000000000000 ┆ ┆
[…0xc7…]