FSD 1089r1_Univac_1005_Extended_System_Programmers_Reference_Manual_Apr68 1089r1 Univac 1005 Extended System Programmers Reference Manual Apr68
FSD-1089r1_Univac_1005_Extended_System_Programmers_Reference_Manual_Apr68 manual pdf -FilePursuit
FSD-1089r1_Univac_1005_Extended_System_Programmers_Reference_Manual_Apr68 FSD-1089r1_Univac_1005_Extended_System_Programmers_Reference_Manual_Apr68
User Manual: FSD-1089r1_Univac_1005_Extended_System_Programmers_Reference_Manual_Apr68
Open the PDF directly: View PDF .
Page Count: 193
Download | |
Open PDF In Browser | View PDF |
EXTENDED SYSTEM , PROGRAMMERS REFERENCE MANUAL UNIVAC FEDERAL SYSTEMS DIVISION CHAPTER 1 1005 SYSTEM Page I II INTRODUCTION 1/1 PROCESSOR A. Program Logic B. Operational Register s C. Transient Register s D. Program Control E. Core Memory 1. Memory Allocation 2. I/O Buffer s 3. Addressing 1/2 1/2 1/2-3 1/3-4 1/4-5 1/5-11 1/9-10 1/11 1/11 CHAPTER 2 SAAL ASSEMBLY SYSTEM I INTRODUCTION 2/1 GENERAL DESCRIPTION 2/1-2 III INSTRUCTION FORMAT A. Symbolic Coding Format 1. Label Field 2. Oper ation Field 3. Ope r and Field 4. Comments 2/2-5 2/2 2/3 2/3 2/4-5 2/5 IV PROGRAM ORGANIZATION A. BEG Directive B. CRD Directive C. PR T Dir ecti ve D. PCH Directive _._ E. BF 1 Directive F. BF2 Directive G. BF3 Directive H. BF4 Directive 1. ORG Directive J. Literals K. Comments Card L. STA Directive M. END Directive 2/6-14 2/6 2/6-7 2/7 2/7-8 2/8 2/9 2/9 2/10 2/10-11 2/11 2/11 ... 12 2/12-13 2/13 INSTRUCTION REPERTOIRE A. Instruction Repertoire - Central Processor Load Ascending 2/13-96 2/14-62 2/15-16 II V ". -------.,.-.-------,--~--, V ......,'"'-,.-.--.- ..--- .~--- ------_ ..__ ._--- INSTRUCTION- REPER TOIRE (continued) B. Load Descending _ _ _ _ _ _ _ _ _ _ _ _ _~~--.,...._ Load Print Store Ascending Store Descending Store Print ShUt Right ShUt Left Clear Compare Alpha/Numeric Compare Numeric IncreITlent Compare Jump Unconditional Jump Greater Jump Less Jump Equal Jump Equal Alpha/Numeric Jump Unequal Alpha/Numeric Jump Positive Jump Negative Jump Zero Jump Return Jump Exit Add to Memory Add to Register Subtract from Memory Subtract from Register Multiply Divide Translate Store With Zero Suppress Load With Sign Load Numerics Store Edited Punch Test 2/17-18 2/19 2/20-21 2/22-23 2/24 2/25-26 2/27 -29 2/30 2/31-32 2/33-34 2/35 2/36 2/36 2/36 2/36 2/37 2/37 2/38 2/38 2/38 2/39 2/40 2/41-42 2/43-44 2/45-46 2/47 2/48 2/49 2/50-55 2/56 2/57 -58 2/59-60 2/61 2/62 Instruction Repertoire - Card System External Functions Read __________________________~----__~__--__~ Print-Space l/Space 2 ______,_ _ _ _ _ _ _ _ _ _ _ Print - Skip 7 ._ _ _ _ _ _ _ _ _ _ 2/62-80 2/63 2/64 2/65 Punch ___~--__----------------------------Read-Print-Space 1 Read-Print-Space 2 Read-Punch Read-Print-Space I-Punch Skip 2 Skip 4 2/66 2/67 2/68 2/69 2/70 2/71 2/71 Page V INSTRUCTION REPER TOIRE (continued) C. D. Skip 7 Read Code Image Punch Code Image Read Auxiliary Code Image Stacker Select 1 Read Auxiliary Stacker Select I Read Auxiliary Stacker Select 2 Read Auxiliary Stacker Select 3 Punch with Stacker Select Read/Read Punch Read/Read Punch with Stacker Select __~ ___________ Read/Read Punch Code Image _________________ Halt 2/71 2/72 2/73 2/74 2/75 2/75 2/75 2/76 2/77 2/78 2/79 2/80 Instruction Repertoir e - Paper Tape External Functions and Conditional Tests 1 . Paper Tape External Functions _ Read Paper Tape 1 Frame Read Paper Tape 80 Frames Read Paper Tape Through Sentinel _______ Punch Paper Tape Without Parity 1 Frame Punch Paper Tape Without Parity to Sentinel Punch Paper Tape With Parity 1 Frame Punch Paper Tape With Parity to Sentinel 2/81-86 2/81-84 2/82 2/82 2/82 2/83 2/83 2/84 2/84 2. Paper Tape Conditional Tests Jump Parity Error Jump Channel 8 2/85-86 2/86 2/86 Instruction Repertoire - Magnetic Tape External Functions and Conditional Tests_ 2/87 -96 1. Magnetic Tape External Functions 2/87 -92 Read Tape Servo I Normal Gain 2/88 Read Tape Servo 2 Normal Gain _____ 2/8R Read Tape Servo I High Gain _ 2/88 Read Tape Servo 2 High Gain ____ 2/88 Write Tape Servo 1 ___________ 2/89 Write Tape Servo 2 _______ . ____ 2/89 Erase Before Write Servo 1 __________ 2/90 Erase Before Write Servo 2 ___ 2/90 Backspace Servo 1 _._______ 2/91 Backspace Servo 2 _ _ _ _________ 2/91 Rewind Servo 1 __ _____ ___ _________ 2/92 Rewind Servo 2 _____ 2/92 2. Magnetic Tape Conditional Tests _____________ _ 2/93-96 Jump Parity Error ______ 2/94 Jump End of Tape _ _ ____ 2/94 Page V INSTRUCTION REPERTOIRE (continued) Example Parity Function - .. Example Parity Function - - - Error Recovery on Read Tape - - - - - - ... - - ........ - ...... ,.. ... - - - - - - 2/95 Error Recovery on Write Tape - - ... - ... - ... - - ............................. - ..... .,. - 2/96 E. Instruction Repertoire - Advanced Programming Jump Alternate Switch 3 ... - - ... - - - ............ - - .. - - Jump Arithmetic Overflow ............ - ............ - - - ............ Compare Character Alpha/Numeric _ ... - - - - - ... S to r e C ha r a cte r - - - - ... ... - - - - - ... ... ... - - - - ... - ... - Logical And - - - - - - - - .. - - - ,.. - ... - ... - - - - - - - Logical Or - - .... - - - - - ... - - - - ..... - - ... .,. ...... - - ... Bi t Shift - - ... - - - - - ... - - - ... - ... - - ... - - ... ... .. ... ... ... - - F. Instruction Repertoire - External Function Combinations .. - - - ................ - ....... - 2/106-110 G. Instruction Repertoire - 1005 Data Line Terminal-3 External Functions and Conditional Tests ............ - .. - 2/111-119 1. 2. 3. 4. 5. 6. ... - ... - - ... - - ... - - ... - - - .. ......... - - - DLT-3 External Functions - - -- - ... - ... - ... - - .......... General - - ........ - - ......... - - ............ - - ...... - - - - - ... - - Transmitting - - - - ... - ... - ... - - ......... - ............... - ............ Re c e i ving - - ... - - - - ... - - - ... - ... - - - - ... ... - - - - - - ... ... Error Conditions - - - - - - - - - - - ... _ ... _ ... - - - - - - Instruction Formats External Functions - - ... - - - - Send DLT 80 Characters - ... - ... - ......... - .............. - ........ Send DLT Through Sentinel _ ... - ......... - - - ..... - ...... - Receive DLT To End of Message ... - ......... - .. - - - - 7. Instruction Formats Conditional Tests ......... - - - - ..... Pause Test - - - - - ..... - ...... - - - - - - - - ... - - ....... - - ... Jump End of Time - ...... - ...... - ... - - - - .... - ................. Jump Parity Error ... - ... - ... - - - ...... - .... - ... - ... - ......... - 2/97 -1 05 2/97 2/98 2/99 2/ 1 00 2/101-103 2/103- 104 2/ 1 05 2/111 2/111-112 2/112-114 2 / 114 2/114-115 2/115-117 2/116 2/116 2/117 2/118-119 2/118 2/119 2/119 CHAPTER 3 UN~VAC 1005 SOFTWARE Page I II III IV THE UNIVAC 1005 SINGLE ADDRESS ASSEMBLY SYSTEM _ _ 3/1-6 A. SAAL 1 (Illustration 1) Trial Ea.lanc~ Sam:rle Program P2-4 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _~_ 3/1-3 B. SAAL 2 (Illustration 2) Trial Balance Sample Progrq.m P2 -4 _ _ _ _ _ _~~~_-------~---- 3/3 ... 5 C. Trial Balance Sample Report (Illustration 3) _ -_ _ _ _ _ 3/5-6 THE UNIVAC 1005 SINGLE ADDRESS REPORT GENERATOR_ 3/6-8 A. SARGE 1 - Trial Balance Sample Program P2-4 _ _ _ _ _ 3/7 B. SARGE 2 (Illustration 4) Trial B~lance Sample Program P2-4 - - - - - r _ _ - - - - _ - - - -___ 3/8 THE UNIVAC 1005 UTILITY ROUTIN;ES ____________~-- 3/8-12 A. CONDENSE ______________________- -____________ 3/8-9 B. MEMORY DUMP (Illustration 5) C. READ-PRINT -PUNCH ~______~-------~--~-------- 3/10 D. NUMBER IT E. DUPLICATE 3/11 ... 12 F. CLEAR 3/12 ILLUSTRATIONS ----_.- ~ ___~~_____________ 3/10 3/10 CHAPTER 4 UNIVAC 1005 SOFTWARE OPERATING PRQCEDURE:S Page I II ALTERNATE SWITCHES OPERATING PROCEDURES . . . . . . . ·, .. .•. · . . . 4/1 SOFTWARE OPERATING PROCEDURES . . • . . . . . . . 4/1-6 A. SAAL 1 -- First pass of the assembly program 4/1-2 B. SAAL 2 -- Second pass of the assembly program. 4/2-3 C. Condense Program •. 4/3-4 D. Memory Dump ••..• E. Read -- Print -- J:')unch F. Number It G. Duplicate H. Clear . It .. • , • tit It ••• . . , .. . .. . . 4/4 4/4 .. 5 ·." , ·." . 4/5 4/5-6 4/6 CHAPTER 5 UNIVAC 1005 HARDWARE MACHINE TESTING and OPERATING PROCEDURES Page 1. MANUAL ALTERNATE SWITCHES II. 5-1 A. lvlode of Operation . . . . . . . . . 5-l B. Automatic Form Overflow Mode. 5-1 C. Trace 110de ....... . 5-2 D. Single Instructions Mode 5-2 1. Reading PAK . . . . . . 5-3 TEST SWITCH PANEL . . . . . . . . . A. Program Step Counter Switches III. DISPLAY MASKS .. 5-4 5-4 5-6 A. Display Mask 4 5-6 B. Display Mask 6 5 -16 C. Display Mask 8 5 -19 D. Display Mask 9 5-21 CHAPTER 1 THE UNIVAC 1005 CARD PROCESSING SYSTEM 1. INTRODUCTION The UNIVAC 1005 Card Processing system is a powerful, high performance system, which combines into a low -cost consolidated card processor features usually found only in more complex, higher priced systems ~ This small-s cale data proces sing system 1.1aS been d.esigned around a single address, internally programmed processor, the UNIVAC 1005 Card Processor, and includes, as secondary units, a hardware integrated card reader, an optional, free-standing, high-speed card reader, and a free-standing card punch. The standard card reader, which is located to the immediate right of the card proces s or, and which is an integral part of the hardware of the card proces sor, operates by means of photo-electric cells at speeds up to 600 cards per minute. The input hopper has a 1,000 card capacity, while the output stacker has a 1,500 card capacity. ' The optional card reader, like the card punch, is cable connected to the central processor, and has an input hopper capacity of 1,000 ca.rds, and an output stacker with a capacity of 1,000 cards. It features an increase in card reading speed to a maximum of 800 cards per minute. The card processor, the central unit in the system, contains, in a single hardware unit, a high-speed printer, which prints a maximum of 132 print positions per line, and up to 600 lines of alphanumeric data per minute, the core memory, and all logic and control circuitry for the entire system. The standard configuration also includes the card reader. The card punch is capable of punching up to 250 cards per minute, and like the free -standing card reader is cable connected to the card proces sor. This feature permits maximum flexibility in satisfying individual installation requirements as well as enabling maximum consideration to be given to operational preferences. By consolidating all these components into a single, well-designed unit, the UNIVAC 1005 Card Proces sing System minimizes installation operational problems and maximizes supervisory and operator efficiency. Additional detailed information on the various components available with the UNIVAC 1005 Card Processor is contained in the General Description Manual for the 1005 Card Processor. The following section discusses the logic and control circuitries contained in the processor itself, while subsequent chapters of this manual are concerned with detailed software considerations. 1-1 II. PROCESSOR The processor contains the systems control, arithmetic and logic circuitry, as well as core memory, and is located to the rear and left of the card :read,cr, 'rhe standard 6.5 microsecond core memory of 1024 characters (32 x 32 rnatri~ 1?lane) is expandc;tble in increments of 1024 <;:haracters. Complete solid ... state components, ribbon cabling and wire ... wrap high operational reliability. term~nalsassure Logic Characteristics. A. Program Logic UNIVAC 1005 logic is organized around a single address fixed word logic. B. Operational Registers. PAK Register The PAK Register is the Program Addres s Counter. This Z .. character register holds the address of the instruction being executed. It occupies two memory locations. During the final execution phase of the instruction, the contents of the PAl< Register are normally incremented by five to give the address of the next instruction. Certain instructions will cause the address in the PAKRegister to b.e replaced with a new addres s from the instruction word, e.g" jump instructions. 1-2 WORD COUNTER UNIVAC 1005 MEMORY INSTRUCTION REGISTER I MEMORY ADDRESS REGISTER (MAR) X REGISTER (XR) Figure 1 ... Diagram of System Logic IR Register The IR Register is the Instruction Decoder Register. It is used to contain the operation code of the current instruction and is loaded during the instruction acces s cycle. The IR Register occupies one memory Location. MAR Register The MAR Register is the Memory Address Register, This is us ed to contain the addres s portion of the instruction. It defines the memory locations to or from which data is to be transferred. It occupies fou.r memory locations. C. Transient Registers. Lengths and Uses Two programmable transient registers are available. The registers are de~ignated Register AR 1, Register AR ' Register AR 1 is 10 charZ acters in length; Register AR Z is 21 characters in length. Any register may be us ed for memory transfers. Registers 1 and 2 are the arithmetic registers. All adds, subtracts and compares are executed from these two registers. Multiply and divide operations use both arithmetic registers and the auxiliary Z register. The qUQtient or product is stored in registers 1 Lengths and Uses (cont'd) and 2 (See Figure 2). Jump Return and Jump Exit operations use the auxiliary X Register. Indicator Unit The Indicator Unit contains the program testable indicators described below. When the indicator tested is found to be reset, the next instruction in sequence is accessed. When the indicator tested is found to be set, control is transferred to the add,res s specified by the instruction. 1. Comparison Indicator s. There are thr ee numeric comparison indicators--greater than, less than and equal to. There are two alphanumeric comparison indicator s-equal and unequal. L.. Sign Indicator s. There are thr ee sign indicators--positive, negative, zero. The contents of the arithmetic register s may be tested by the program for positive, negative or zero. 3. I/O Indicators. These additional indicators ar e explained in detail under their r e spe ctive Input/ Output Sections. D. Program Control The activity of the Program Control Section is divided into a series of logical machine sequences. All of these sequences are fixed in nature and occur with every instruction being proces sed. Basic Machine Sequences. (P) Program Cont!ol--Extract the program instruction address. from the Program Addres s Counter (PAK). Store this value in the Instruction Register (IR). (I) Instruction Acces s - -Extract the instruction referenced by the previous P sequence. Test the operation code and generate the function signal necessary to execute instruction. (A) Addres s Access - -Extract the operand portion of the instruction from memory and store in the Memory Address Register (MAR). 1-4 (P+5) Program Control Plus Five--Update the program address counter by five unless a jump instruction has been detected. In that case, this sequence will be updated by the address in the MAR Register. (E) Execution--Execution phase; perform operation specified. E. Core Memory. The UNIVAC 1005 Card Processor employs magnetic core storage modules with a capacity of 1024 characters each. The UNIVAC 1005 can be expanded to meet increased processing requirements in increments of 1024 characters to a maximum of 4096. Internal representation of each character in storage is by means of an internal binary code called XS3. Data Representation. Excess three (XS3) is a method of notation that is us ed by the UNIVAC 1005 System. It establishes some measure of compatibility with the data formats of the other UNIVAC Computing Systems. The zone position is specified by the two high order bits, the numeric portion by low order four bits as in binary coded decimal notation. The difference exists in the numeric portion where each binary specification is a value that is three greater than its decimal equivalent. For example, the number 8 is represented in XS3 as: ZONE NUMERIC 00 1011 Note that the numeric portion, weighted with positional values of 8, 4, 2, and 1 from ieft to right, is actually equal to 11. Similarly, the number 6 is represented as: ZONE NUMERIC 00 1001 Here the numeric portion is specified as 9 or three greater than the decimal digit it represents. 1-5 There are several reasons for utilizing this method of notation in certain UNIVAC Systems. Some of these reasons are: It allows three quantities to test les s than O. It facilitates complementation. It permits the carry to occur as in decimal notation. An involved discussion of these and other reasons for the utilization of XS3 notation is beyond the scope of this manual. It is sufficient that the programmer is aware of the basic format and that this provides in the UNIVAC 1005 Computer a factor of data compatibility with other UNIVAC Systems. Figure 3 gives a listing of the XS3 code configurations. 1-6 MEMORY I~ I ____ M_E_M_O_R_Y____ \,----------,/ REGISTERS AR 1& AR2 TRANSFERS MEMORY MEMORY (DATA) (ACCUMU LA TORS) REGISTERS AR t& AR2 ARITHMETICS MEMORY . . ~ REGISTER AR 1& AR2 COMPARES 1 MULTIPLY 2 3 4 5 6 7 8 9 10 11 1213 14 1516 17 18 19 20 21 1 ...~.----- PRODUCT AR2L 1 2 3 AR1L ____ DIVIDE I 2 3 4 5 6 7 DECIMAL 8 9 10 1I ~ 4 5 __ 6 7 8 9 I 10 I~~ Q_U_O_T__IE_N_T__~_ 12 13 14 15 16 17 18 19 20 21 QUOTIENT AR2 ~REMAINDER""~REMAINDER--+- Figure 2. - Operation of Transient Registers 1-7 The alphabetic, numeric, and special charact~rs utilized in the UNIVAC 1005 System. 80-COLUMN CODE SD-Col. Printable Card Code Characters 12-1 12-2 12-3 12-4 12-5 12-6 12... 7 12-8 12-9 11-1 11-2 11-3 11-4 11-5 11-6 11-7 11-8 11-9 0-2 0-3 0-4 0-5 0-6 0-7 0-8 0-9 0 1 2 3 4 5 6 A B C 0 E F G H I J K L M N 0 P Q R S T U V W X Y Z 0 1 2 3 4 5 6 XS-3 Code 80-Col. Printable Card Characters Code 7 8 9 12 11 12-0 11-0 0-1 2-8 7 8 9 XS-3 Code 00 1010 00 1011 00 1100 010000 00 0010 01 0011 10 0011 11 0100 11 0011 01 01 01 01 01 01 01 01 01 0100 0101 0110 0111 1000 1001 1010 1011 1100 10 10 10 10 10 10 10 10 10 11 11 11 0100 0101 0110 0111 1000 1001 1010 1011 1100 0101 0110 0111 II 3-8 4-8 ~ 5-8 : (f:olon) 6-8 > 7-8 • (OpOI.) 12-3-8 • (p.riod) 12-4-8 12-5-8 12-6-8 < 12-7-8 =11-3-8 $ 11-4-8 01 10 01 11 10 01 11 00 01 01 10 10 1101 1110 0001 1110 0000 0010 1101 1111 1110 1111 0010 0001 11 11 11 11 11 00 00 00 00 00 00 00 1000 1001 1010 1011 1100 0011 0100 0101 0110 0111 1000 1001 ] 11-5-8 11-6-8 ; (.emi-f:ol) 11-7-8 11 0-2-8 ~ 0-3-8 , (f:ommo) 0-4-8 % ( 0-5-8 \ 0-6-8 0-7-8 ) 00 00 10 11 11 11 10 00 11 0001 1110 1111 0000 0010 0001 1101 1101 1111 & - (minu.) ? I (exf:lom. I + If • Blank Spoce N.P. 00 0000 Figure 3 .... 80 -Column Codes and UNIVAC XS3 Codes for 63 Printable Characters 1-8 1. Memory Allocation. As previously stated, core memory is expandable, to meet increased processing loads, in increments of 1024 characters. A portion of the 1024 character core memory is allocated to each of the input/output functions of the system--such as reading, punching and printing. The remaining portion of core memory is available for use by working programs. Under certain progr~m conditions, part or all of the input/ output memory areas may be used as expanded working core memory. For example, if a punch operation is not required for a particular program, the preassigned portion of core memory allocated to punching could be used as working storage. The 1005 Card Processor Control logic is such that "time-sharing" can be affected, allowing, simultaneous printing and punching, or punching and proces sing. '(Reference Figure 4). 1-9 1005 INPUT/OUTPUT -STORAGE AREAS MODULE 1 COl.UMN ROW 1 2 3 4 5 6 7 6 9 10 11 12 J., • • READ { TRANSLATE f TABLE \ 13 ',4 15 16 17 16 19 20 21 22123 24 25 '."'0 '0 26 27 28 29 30 31 32 n""'''.l''~'''.'' ~2IiJ2~Jl~3'~3~5~~~3i7t3i8~39~40~41~42~4~'~4~'~4i5ti~~48~"~'~0~'~II'12t'13~'4~'5~56~5;7~5~8~~~';0;'~';.,21=~ t 4 5 63 64 6S • 95 9. 66 67 68 '8' 69 10 71 19 125 126 121 1'28 1~9 130 131 132 133 134 135 136 137 138 \39 lAO 1., 57 sa 159 16 80 81 81 83 84 85 86 8 100 luI 10210310. 10, 10' 10, 108 10' 110 111 112 111114 1511, 117 118 6 56 161 16 163164 16S 6616 7 8'Ilse 189 190 191 U2 19) 19.195 196 197 198 16816 8 n9 89 QQ_ ·Pf 92 93 120 121 122 123 12' 142 UJ 144 ,.5 146 141 148 149 150 lSI 152 IS3 154 155 17011 172 173 176 "5 176 177 "8 17918018 82183 184185 186 199 200 ~Ol 202 203 204 205 206 207 208209 2"'0 "I 2122132'" 215 216217 PRINT IN PUNCH 12 3A2 343 344 345 346 347 )48 349 350 351 352 353 35~ 3SS 13 3n 3 4 14 404 405 406 407 408 409 410 jl, 3 6 377 3 3 380 381 382 381 384 411 4 \ 2 4 \ 3 414 415 15 A35 436 431 438 4j9 440 .s.s1 .s42 .s43 444 445 446 16 466 467 468 469 470 471 .s72 473 .s14 "75476 17 497 498 18 528 529 530 531 532 ~3:: 499 50(\ 501 50<' 503 5]4 :;S~ 357 358 385 386 387 388 38' 362 36~ ]64 393 ~91 39 J9~ 39~ 4\6 417 418 419 420 421 422 4 ~~ 41 ~ 415 "16 447 448 449 .ssO 451 477 478 479 480 .s81 4S,} 504 50~ 500 50 7 508 50Q ~]S 536 537 ~38 S.lO 54' ~42 54) ~44 5j"/ )sq Joa Jol 3~ 510 5\1 512 513 ,9", '" I'·' 365 3M )67 368 369 370 :!~t 401 402 403 3~7 }';le 399 400 371 372 "17 428 419 430 4J I 432 413 434 452453 4sA "55 4;0 457 458 459460 .t61 462 463 464 465 483 4B4 4B5 486 487 488 489 490 .s'll 514 515 SI6 517 518 519 510 521 545 546 5017 548 5ol9 550 55' 492 49) 494 495496 5n 523 524 525 526 527 552 553 554 5z5 556 557 558 19 559 560 561 562 563 56.s 565 S6t 567 568 569 570 57\ 512 573 57~ 575 576 S7? 57B 579 ~80 581 582 583 584 585 586 587 588 589 20 590 59} 592 593 594 595 596 597 598 &,99 600 001 002 603 604 605 606 007 608609 610 611 612 613 614 615 6'6617 618 619 620 21 621 622 623 624625626 627 628629630 631 on 633 63.4 6)5 63e 6)7 638 639 640 641642 643644 645 646 647 &48 649 650 651 22 652 "653 654 655 656 657 658 059 660 661 662 663 664 665666 667 668 669 670671 672 673 674 675 676 677 679679 680 681 682 23 683 6~4 685 68f. 687 688 6a9 690 691 692 693 f.94 695 696 697 698 699 700 701 702 703 704 24 714 73\ 732 25 745 746 747 748 749 750 7S1 75'2 753 754 755 75e 757 758 759 760 761 71S 716 717 718 719 720 7]1 26 776 777 778 779 780 781 27 722 :'1) 72' 25 726 727 728 129 730 78i 783 784 785 786 ~87 788 789 790 791 83~ 840 841 842 843844 768 769 710 771 772 773 774 775 793 794 795 796 797 798 7H 800 801 &02 803 804 805 806 29 869 810 871 832 833 834 835 836 83? 845 846 847 !!48 849 8S0 e;51 aS2 853 854 855 856 857 8~ 859 860 861 86'2 863 864865866 867 868 872 873 874 875876 a77 878 879 880 881 882 883 884 885 88f! 887 SSI!! 889 890 891 30 900 901 902 903 904 905 906 907 90S 909 910 91 I 912 9,:, 32 731 738 139 740741 742743744 762 763 764 765 766 767 807 808 809 aiD all 812 81) 814 81~ 816817 818 819 820 e21 822 8'23 824 825826 827 828 829 830 831 26 J38 31 792 iDS 706 707 708 709 710 7'1 712 713 733 734 ns 736 1114 892 893 894 895896897 898 899 9)S 916 9\7 918 :)19 920 9~1 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 q)8 939 940 ~41 942 943 944 945 946 947 948 949 950 951 952 953 9~4 955 956 957958 959 960 961 STATIC REGISTERS Figure 4. - 1005 Input/Output-Storage Areas - Module 1 1-10 / 2. Input/Output Buffer Areas The three preassigned Input/Output buffers in th.e first module of the UNIVAC 1005 Card Processor are as [oHows. Read Buffer Area. The read area is a!3signed th.~ iirst80 positions in core memory. Hence, the numeric addresses of the :t;'ead area js rJ~(j 1 to 0C/J8C/J. When ever the programmer gives an instruct~on to read a card~ the card is read into this area. Column one of the input c~;rd is stored in the first position of the read buffer (rJCJCJ 1), column two l;>~ing stoli~d in the second position (C/JC/JrJ2) and so on. Print Buffer Area. There are 132 positions of ~ore memory eOl"+es", ponding to the 132 prip.t positions of the UNIVAC lOO~ printer, When the programmer gives a print command, all 132 positions of the print buffer area are printed, the buffer is cleared to space s, ancl. the printer form is advanced. The core memory positions assigned to the print Quffer are C/J 161 to C/J292. The first character of the print buffer area (rJ 161)G9rresponds to print position one, the second character (rJ 1Q2) c9rrespc:>nds to print position two, and so on. Punch Buffer Area. There are 80 positions of core memory corre9'" ponding to the 80 columns of a punched card. The numeric add:re~ses assigned to the punch buffer a:rea are C/J293 to (j37?, When a punch command is executed, the first characte:r of the punch buffer area i~ punched iJ;l card column one, the second character is punched in card cO!\lrnn tWQ, and so on. The punch buffer area is not cleared during the punch data remains the same in core memory, Gycl~ and. the Optional Buffer Areas. These additional o\lf£er areas are explained in detail under their respective Input/Olltput Sections. 3. Memory Addressing. Each character in the UNIVAC 1005 core rnemqry is ~ireQtly address ... able by its numeric addres s. For example, the first character of th~ punch buffer area can be referenced by its numerical address 0293, the se<'::onq by ~294 and so on. 1-11 CHAPTER 2 THE UNIVAC 1005 SINGLE ADDRESS ASSEMBLY SYSTEM I. INTRODUCTION To solve a problem, a computer must have a series of instructions which determine how the computer is to operate. In addition, the computer must be giVe.i.'... OUb ur more. sets of data upon which to operate. This combination of instructions and data is called a program. A program n1ust define, in complete detail, exactly what the computer is to do, under every conceivable combination of circumstances, with the data which is read into or processed by the computer. The number of instructions required for the complete solution of a problem may be a few hundred or many thousands, depending on the problem. The computer may refer to these instructions one after another, or it may repeat, skip, or modify over certain instructions, depending upon immediate results or circumstances. These instructions are under stood by the computer in a form known as Machine Language, a form which is difficult for the progranlmer to encode. In order to facilitate coding, considerable time and effort has been expended in developing programming systems that allow the programmer to write in a symbolic language more easily comprehensive to him than machine language. Associated with a programming system is a machine language pro,.. gram called an Assembler. The assembler ac.cepts a program written in symbolic language (source program) and converts it into machine language (object program). II. GENERAL DESCRIPTION The symbolic language used by the UNIVAC 1005 Card Processing System is single address in design and is intended to provide an easy to learn, easy to use tool whereby data processing requirements can be translated into machine coded instructions. The machine language program or assembly system associated wlth the UNIVAC 1005 symbolic language is called SAAL (Single Address Assembly Language). This assembly system consists of two passes, SAAL 1 and SAAL 2. The fir st pas s, SAAL 1 relates each symbolic reference (label) in the symbolic program (source program) with its appropriate position in core memory. This relationship between symbolic labels in the source program and core memory position is retained in memory and utilized in SAAL 2. This noted relationship is commonly referred to as the "TAG" or "Labell' Table. 2-1 The second pass, SAAL 2, interpret~ ~ac;h operand field in the source program, determines its length and core position. using the "LABEL" Table generated by SAAL 1, and produces a UNIVAC ~oa5 machine cpde object prograrn deck. In addition, a one for one listing is prepared equating each symbolic line of coding in the source program with the generated machine code . .i.~.i.. INSTRUCTION FORMAT The UNIVAC 1005 Machine Code instruction consists of five characters. The format of the instruction characters on this basis is illustrated below. 1 [ 3 4 2 OP 5 M OF Indicates the operation to be performed. M Indicates most $ignificant location. L Indicates least significant location. A. SYMBOLIC CODING FORMAT In writing a program in SAAL symbolic language, the programmer is primarily concerned with three fields: Label field, Operation field, and Operand field. In addit~on, it is pas sible to q;nnotate the symbolic language at the time it is written through the use of corpments which will provide clarity for the programmer and relate coding to its as sociated flow chart. 2-2 1. Label Field. A label is a method of identifying either a symbolic line of coding or a word of data. In writing a label ip the assembly language SAAL, the programmer may use any meaningful combination of one to three characters. Of these three characters, the first may be any alpha charact'er, including special character s, except the dollar sign, asterisk, plus, minus, or comma. The second and third position of the label field, if pre sent, may be either alphabetic or numeric or special characters, including the dollar sign but excluding the asterisk, plus, minus J and comma. In writing a label in the label field of a symbolic line, the first character of the label must appear in the leftmost position of the lel,bel field. The following are example s of acceptabl~ labels. I UNIVAC"1CCI!5ISAAL ASSEMBLER CODING FOR) UNIVAC ---..-................ PROGRAMMER PROGRAM SEQU N ~! LINE INS LmLJO'P" 3 4 5 6 7 1 9 01 I TAX TOT + A 91 1 BE;G DATE _____ CARD ONL y I COMMENTS ORERANDS 20 1311415 +5 +5 +6 T 1 FOR ~ 303132 I i I I , I 10 1 1 1 1 I I I , I 40 , ,I I , I I - 1 1 1 1 I I 1 I I i I 1 1 1 I 1 1 I I I I I I I 1 1 I I I , , I ) I I i -J......I-,j-L.. / i I I J--I-.,-L.,.J-l~ I I i I I J I ,) - 2. Operation Field. In the operation field, the programmer places a symbolic code indicating the machine function .that is to be performed. These function codes are explained subsequently. An example of acceptable operation codes is shown below. ........- ..... I UNIVAC~ 1QCl15 ISAAL ASSEMBLER CODIN'G FORM UNIVAC .... ~ PROGRAM_.__________________ PROGRAMMER ___________________ ! UQU £ Nt: E LINf '1 3 "'CA'ii'r ~' "O'P"'"' ~NS56,7 90'11 DATE FOR BEG CARD OHL Y 1 1314 '5 OPERANDS I lCOMMENTS 20 . 303132 i I f 40 J i ,, I I / I , I I L D 2 .. ~.:S . ~,-l-~,i.. __\,,_L...".j..-'-.l...,l...,.;~..J..--l.~+-'---'...........&._,.......,..............I......L,._.1 ,I I 1 I I I I I I J ~~~~~~~~~~-L-~!~~!~i~I~I~I~i_~!~I~1~I~I~L+~~~~~~.~ 1 I I 1 1 - , 1 I I 1 I I I I 1/ , I I i I I 2-3 I ,J 3. Operand Field. The operand field of a symbolic program follows the operation field, and it is used to inform the assembler which location is to be addressed in conjunction with t.he operation to be perfol;'med. For example, if the programmer.called for data to be added in the Arithmetic Register 1, the operand field would tell the proces s or wher e to go for the data to be added. Also, the operand field would tell the assembler how many positions of memory to accun;l\llate in Arithnletic Register 1. The following example clepicts the instructions required to add a five digit numeric field to Arithmetic Register one, and store the result back into core memory . ( ~~.!~~c:; SI:QL N :t: 'N$ ~~-oP S 4 5 6, 7 I . PROGRAMMER PROGRAM LINE ) 1 UNIVAC*1aOIi ISAAL ASSEMBLER CODIN'G FORM 9 011 FQR 81::G . I COMMeNTS OPERANDS ~Q 13114h5 AR1 T',l , 5 S'A 1 A OATE..--.-- CARD ON 1.-'1' I I. I i" , 1 I 1 I 1 I 01 , 5 40 303132 ~ / I , I IJ ~ In addition the M position of the operand may be incremented or decremented in order to provide increased flexibility in addre.~sing. In the following example the two least significant characters of a ten character field called FD I are to be loaded into ArithIl?-etic Register 1. In order to address these characters an increment of eightis added to the base address of th~ field thereby obtaining the desired result. L ( U~I.VA-= [UNIVAC* 10015 ISAAL ASSEMBLER CODING FORM PROGRAM SEQUENCE 1 LINES - ~NS5' PROGRAMMER L'A'BEL'"~~ 6 7 9 ho 11. FOR BEG DATE CA.RD Ot.lL Y J 13 114 5 20 +8 I I COMMENTS OPERANDS I I I LAl FO 1 CAll :A R 2.+1 91. 2 I , ,J .!;,'A :$+'10 I , 12 I 1 I I I I I I I I I I I . / 40 303132 I I I ;. I I I I . 1 I 1 J I ~ If field FD 1 were decremented by eight, the seventh and eighth char ... acters immediately to the left of the most significant character of FD 1 2-4 would be loaded into Arithmetic Register one. When incrementing or decrementing an address, the programmer may use one, two or three characters. The programmer can increment or decrement from 1 to 999 positions in memory; however, an operand may not be split between memory modules. NOTES: 1) In the above example the second instruction references Arithmetic Register two in the operand field. Arithmetic Register 1 and Arithmetic Register 2 are predefined labels (ARl and AR2) and can be referenced as operands in the same manner as labels. 2) In the above illustration the third instruction references $ in the operand field. $ represents the current value of the location counter which may be modified (+ or -) in increments of five (5). Thus, in the illustration, if an equal condition is met, control will bypass the next sequential instruction. 3) When modifying an instruction within the program with another instruction, both the instruction being modified and the modifier should be labeled. 4) If the length is not specified, the assembler assumes an operand of 5 characters. 4. Comments. Comments are coded starting in column 32 of the code sheet. The comments written here by the programmer are not looked at by the assembler. However, they do appear on the printout from SAAL 2; they are put into the code sheet for reference only. Any character may be used in the Comments section of the sheet. 2-5 IV. PROGRAM ORGANIZATION Certain required param~ter cards must be supplied to the assembler in order to properly position constants, headers, or any data the programmer wishes to store in memory. These parameter cards are called directives. They direct the assembly in the allocation of core memory for the various divisions of a symbolic program. They are described below. A. BEG DIRECTIVE The first card of every symbolic program written in the as sembly language SAAL must have BEG card or directive. This card initiates the assembly process. For example: ---- UNIVAC .. .... ( U~IVAce ~oal5 \SAAL ASSEMBLER CODING FORM .......,....,..~ PROGRAM StQLENCt: LINt: INS 1 DATE PROGRAMMER rnen-~"OP 3 4 5 6 7 9 011 Ill~ BEG FOR. BEG CARD ONI. y OPERANDS 5 20 I COMMENTS 303132 40 I Jl I J Ii I I ,,-- - - - -, I / , I .I ./ ---t B. CRD DIREC TIVE CRD Card is us ed to call the as s embler I s attention to the Read Area in core memory. CRn is punched in the operation field of the card format. Labels are then used to define areas within the Read Area. The label for each field is placed in the label field on the card. In the operation field, punch a minus (-) in column 11. In column 15 punch the position in the read area the program wishes to designate. 2-6 For example: I [ U~IIVAq~ 10DB UNIVAC ..... _ _ _ 111111". _ _ _ "'...- i PROGRAM i i i \ I SAAL ASSEMBLER COPING FORM PROG~AMMt::R i qATE"-7 rr--,..-..-FpR BEG CUI;) ONI..Y SEQUENCE LINE INS 1 3 r-u:B'E'l 4 51 6. 7 -or . 91011 .l.- CRD -L- - 90313Z ...l.,.-\--,I...,..J.. - 1 NOM CAT - 1 i I I 6 I I I I i I I I I I I +--L- I I I I I I '"-L~ .L..-'---+-~ I I I I I I II I I I I I I , I ) I J i I I I I I I -L-.i--4- I I I I I I I - 3 8 - I I 1 56 I I I I I I - I i i I f 4Q I I FSN AMT QTY 20 BEG --I / I COMMENTS OPERANDS 1314·115 I I I I / ,) I 7 1 C. PR T DIRECTIVE This card is used to direct the as sembler' s attention to the print area in core memory. Like th.e Read Area, the Print Area may b~ lab~led. The format for doing this is th~ ~ame as £pr the Rea~ Area. For example: I UNIVAC~ 10D8 ISAA~ UNIVAC ...,..,----" ...._._......,.- ASSEMBLER COpING FORM i PROGRAM SEQUENCE LINE INS 1 3 FRGGRAMMliR "LA'B'E"'L 4 51 6" 7 ~~ 91011 110R E'lI=1:Gi -----l i I c;:.;qMMENTS OPe:~AND$ 131415 / PRT l OATE:...........,... i,1 CARl;! ONL'I' 20 309132 I I I PTl ., 1 1 I 1 p T2 - 4 9 I I I 8 7 I PT3 ~ P"T",4 - - 1 P9 40 I I I l~ i I I I 1 I I i I I J I 1 -J D. PCH DIRECTIVE As in the Read and Print Areas, subdivision of the Punch Area is pos ... sible. The format is the same as descri'b~d for the CRD directiv~. 2-7 For example: I I UNIVAC® 10015 ISAAL ASSEMBLER COOING-=! ------ UNIVAC DATE .PROGRAMMER. PROGRAM ~"~r:J SEQUENCE LINE INS 134567 C""':' FOR J ......!-J.. 3 8 ! ! , ! I ! ! ! , 1 I ! ! ! , 1 I I / 40 3~ I ! , , , , 1 I ! : ! , ! I , , , , 'I ! I ! ! I ! ! I 1 , ! 1 I ~ , 56 - PU 5 , ! ':;:3; 1 1 6 - PU4 ! 1 - PU3 ! ! 'COMMENTS 20 ! - PU2 OPERANDS ::,-,_ PCH PUl BEG CARD ONLY ! I I I ! I , ! I 1 7 1 I ! - 1 I I 1 I ) E. BFl DIRECTIVE (Buffer 1) BFl card is used to call the assembler's attention to the 1st core position of Bank 1. In this regard, it is 'similar to the CRD directive. Its primary use is to define areas for peripheral devices, i.e. paper tape. BFI is punched in the operation field of the card format. Labels are then used to define areas. The label for each field is placed in the label field on the card. In the operation field, p1lnch a minus (-) in Column 11. In Column 15, punch the position in the buffer area the program wishes to designate. For example: UNIVAC PROGRAM PROGRAMMER rrrm!~ SEQUENCE liNE INS 1 34 5 67 91011 FOR E M.P NAill WAG - --- HRS - .... BEG DATE CARD ONLY OPERANDS 1314 15 SEG 's --t~ ( I UNIVAC® 100B I SAAL ASSEMBLER CODING FORM O ......... ON ItI' • • • ,,,.,, ..... ND CO'''''O.'''''ON COMMENTS 20, 303132 I I F1 40 .I I I I I : - ,1 I I 6 I , - 2 7 I ..... 3 6 I ) , / I 1111/ : I I I 1 I - I : I - I - I t \ EMP would be assigned the location starting at 0001, NAM at 0006 and so forth. 2-8 F. BF2 DIRECTIVE (Buffer 2) BF2 card is used to call the assembler's attention to the 1st core position of Bank 2. Its primary use is to define areas for peripheral devices, i.e. magnetic tape. As in BF 1, buffer 2 may be labeled. The format for doing this is the same as described for BFl. For example: ~o~.!.y.~.~ PROGRAM SEQUENCE INS LINE rnEL!~ 91011 FOR BEG - F,S N NOM CIA, T VAL Q T Y - - - CARD ONL y OPERANDS 1314 15 COMMENTS 303132 20· B F 2 -- DATE PROGRAMMER 3 4 5 67 1 f I UNIVAC~ 100111 SAAL ASSEMBLER CODING FORM ~ I I 1 I I : 1 6, I I II 3 4 I I I 5,2, I 6 7 40 , - I ,,1--.. / I II -1. 1111/ ( I I I : I } I I I - ..L II I " I I , ) -../ FSN would be assigned the location starting at 0962, NOM at 0977 and so forth. G. BF3 DIRECTIVE (Buffer 3) BF3 card is used to call the assembler I s attention to the 1st core position of Bank 3. Its primary use is to define areas for peripheral devices. As in BF1, buffer 3 may be labeled. The format for doing this is the same as described for BF1. For example: UNIVAC GOV'.'ON 0<1' • • • • • " ....... 0 I UNIVAC~ 100151 SAAL ASSEMBLER CODING FORM c ......... " ...... PROGRAM SEQUENCE INS LIN E 'LA'BE'L!C5P 34 5 67 1 91011 FOR BEG DATE PROGRAMMER CARD UNL Y COMMENTS OPERANDS 1314 15 40 303132 20 } I B F 3 F.D I FeD 2 F D 3 .- - F 0 4 -~ - - -- I I 1 I 6.7. I 1. 5.0 I 4 5, 5 I f - - I I I : I I I I ! I I / ./ I { I I I t -.L - ( I J FDI would be assigned the location starting at 1923, FD2 at 1989 and so forth. 2-9 H. BF4 DIRECTIVE (Buffer 4) BF4 is used to call the assembler I s attention to the 1 st core position of Bank 4. Its primary use is to define areas for peripheral devices. As in BF 1 J buffer 4 may be labeled. The format for doing this is the same as described for BF 1. For example: UNIVAC PROGRAM U'B"E'C~OP" SEQUENCE INS LINE 3 4 5 6 7 1 PROGRAMMER BEG CARD ONL Y FOR .1... - - - COMMENTS 20· I I : 1 I .... 1 I I : T.D.TI - 26 I I : - 5 8 I I 1 2 7 I - 162 I TY - 0. - --- 40 303132 TAX AL - GATE OPERANDS 13 1415 9 10 11 B F 4 Q ( I UNIVACGI> 100151 SAAL ASSEMBLER CODINGfORM 0.101 ••• 0 .... 0 . . . . . . . " • • fIIID .;. . . . . ." " •• '" -, ~ 1 _I ! ) 1 I I I L I / / I I : I I : I - ..L -~ TAX would be assigned the location starting at 2884, TDT at 2909 and so forth. 1. ORG DIRECTIVE The ORG Directive informs the assembler that the programmer wished to adjust the assembly address counter to the numeric value contained in the operand field. For example, if the programmer wishes to start storing at one particular place in memory, he specifies this by placing the numeric addre s s in the oper and field. This numeric addr e s s must be four character s • The following example would origin the next instruction, constant, or work area in position C/J373 of core memory . UNIVAC ,,".""I!'I ~''.f·'"1''''' n~ """,,, •• I UNIVACGI> ~ao51 SAAL ASSEMBLER CODING FORM r:o_ •••• ",o,", PROGRAM L'A'B'E'LJOP SEQUENCE INS LINE 1 DATE PROGRAMMER 34 5 67 _... - BEG 01 CARD ONL Y OPERANDS 1314 15 91011 O.R ... FOR o 3, 0' COMMENTS 40 303132 20· 7, 3 ( I I I I I I I I I I I I I I I • I I I : I I I I I, / ,I J - anywhere - in a program, - The programmer may use an ORG statement - - -- I ..L provided he complies with the following rules. 1. The oper and value mu st be a four digit decimal number. 2-10 -~ 2. If the ORG directive is emplQy~d within the proc~du.re divi$;i.on (after the STA directive) the new assemb~y address must b~ a multiple of th~~~Yl"o",e (31) plus one (1), beginning with 1, 32,63, and so on. 3. The ORG directive must b@ employed before the 1 st literal instruction . .J. LITERALS The us e of literal instructions enables the as sembler to move the number of characters specified by the operation code f;rom thy op~:r~nd field to an equal number sequenhal core locations, beginning at the address specified by the preceding ORG directive. W"ith literal instructions, the programmer is able to store constants, or set aside storag~ for wo;rl< areas. he~qel! j3 ~ The literal instruction consists of a label in the label field of the symbolic deck, a plus sign (+) in column 11 of the operation fie14 followed . by the number of pos itions to be s ~t aside ~ The operand portion of the c;ard contains the constant or ~iteral to be stored. The malXlmum fOJ; ope hne is 34 positions, however this line mGl-Y not be split between. mem.ory modlfles. For example: ...... PROGRAMMER PROGRAM SEQUENCE LINE INS 1 - 3 ~~r-op- 4 51 6. 7 91011 BEG FOR o3 + 10 ENO K2 +~ 1 0 73 303132 I I I o FI I I COMMENTS OPERANDS ORG +20 DATE~ I Y ZO 13141!;) H D1 w.s CA~D ONL JOB I I 40 I J I -1...-' _J I I I I I I I I I I I I~ I I I I " { In the first example, HDl, the con$tant "END OF JOBll is stored in lO positions of memory, which can be referred to by HD 1. In the second example, K2, the co:q.stant "10" is stored in 2 positivns of memory. To refer to this constant, the label K2 need only be called. I The third example, WS, a work area of 20 blank positions is set aside, that is labeled WS for programming reference. K. ~:( COMMENTS CARD An asterisk punched in the ope:r;ation field (Col. 11) indicp.te s a corp.:rnen.ts card, and is listed 80/80 on the assembly printout. This card is used by the programmer to facilitate reference to the as semQly pri;ntout, and lor to explain certain portions of his program. A Comments Card may be used anywhere within a program. The programmer is not limited by the number of the cards he may use. For examp"ie: I UNIVAC _____"'" ( UNIVAC~ 1DCEi ISAAL ASSEMBLER COOING FORM ~"'r.~. PROGRAM_.--_ _..-...._ _ _ _ PROGRAMMER _ _ _ _ _ _ _ _ __ SEQUENCE LINE INS 1 r"L'AiEL I ~ 3 4 5 6,7 .--L~l.. OPERANDS , . 9ho 11 . 131415 J E -- FOR BEG CARD ONLY * MAS 20 I COMMENTS 303132 I I I I I I I I I ------i * * * * I In this example, the programmer has used five comments cards to break into the printout format. The assembler would only interpret the jump instruction, and the Comments Cards would be listed as they appear on the coding form. L. STA DIRECTIVE This directive terminates the DATA DIVISION and marks the beginning of the PROCEDURE DIVISION of the program. The assembler, upon decod"'! ing this card, advances the assembly address counter to the next row of core rnem.ory, and assigns the addresses to the instructions of the program from that point. The PROCEDURE DIVISION of every program must be indicated by this directive. Note: All labels used in the 1005 program, with the exception of instruction labels, must be defined before the STA card either in the I/O sections or as a literal. 2-12 For example: UNIVAC -----1 FOR ~~--o;- 345 6 7 9 011 BEG (: ... RO - -- I COMMENTS : -- ~ I I I I I I I I I I I I I I I I \ 40 303132 20 STA ~ ONLY OPERANDS 1314~5 , DATE PROGRAMMER PROGRAM SEQUENCE LINE INS ! ( UNIVAC e 4IJ008 ISAAL ASSEMBLER COOING FORM I ~~--'-"-.L-+·"-+7 I ! -l __ ~_.J __ -\- J .. J.. ...J. _ M.. END DIRECTIVE The END directive is the last card of the source deck. This card must always be present. The purpose of this card is to inforn1 the assembler that all card instructions used in the program have been inserted and to terminate the assembly. The operand field must have the tag of the first instruction. For example: UNIVAC -----PROGRAM SEQUENCE LINE INS 1 ~'roP 9 011 FOR ~ V. - -- BEG _.J- \ C... RO ONL Y I COMMENTS OPERANDS 1314~5 END ---'--'-- DATE PROGRAMMER 345 6 7 ! ( UNIVACe 4IJ00& ISAAL ASSEMBLER CODING FORM 20 I I j - I I I II \ 40 303132 ST T I I I I I I I I I I J I I~_~:;.-/ INSTRUCTION REPERTOIRE Each instruction in the UNIVAC 1005 consists of five character positions, and are sequentially numbered in increments of five, beginning with the first character of a row. The last character of a row is utilized by the U 1005 logic to designate at which row. the next sequential instruction is located. Ther e are four general clas ses of instructions varying slightly format. 2 -13 In Class I: Class I instructions contain an I'M" address and an "L" modifier. The "M" portion defines the most significan.t position of a field, where the "L" portion defines the length of the field, . All Arithmetic and Transfer instructions are Clas s 1. Class II: Class II instructions contain only an "M" address indicating the most significant character of an instruction. This format is employed exclusively by Jump or Branching .i.J.J.structions. Clas sIll: Clas s III instructions are Input / Output or External Function Commands, and contain a mnemonic code in the "M" portion of an instruction indicating the I/O device or devices to be initiated. Class IV: Class IV instructions are Input/Output or External Function Comma.nds, and contain a mnemonic code, Buffer (BF n ), and length in the "M" portion of an instruction indicating the I/O de ... vice, memory bank, and length of operand to be initi~ted. A. INSTRUCTION REPER TOmE -- CENTRAL PROCESSOR The Central Processor instructions pertain to Class I and Class II and ar e explained in detail on the following page s, LOAD ASCENDING: Function: M,L LAr Load ascending L most significant characters frorn the field specified by M, into the L least significant character positions of ARI or 2. Notes: a.) b.) L must be decimal number. L most significant characters of the field specified by M, are transferred in ascending order to the L least significant positions of the specified register. c. ) When L is less than the capacity of the register the remaining positions of the register will be space filled. d. ) When L is greater than the capacity of the register truncation will occur and the mo'st significant character s of the field will be deleted. Example: Load Arithmetic Register 1 with a nine character constant. ------ UNIVAC [ UN IV Ace PROGRAM SEQUENCE LINE INS rrmL~~ 9 011 - ~:~AR 1 K3 ARI BEG DATE -- (befor e) = = (after) = K. 3 , 9 I CARl) ONLY I COMMENTS OPERANDS 1314"5 LA! ,r- FOR ! ISAAL ASSEMBLER CODING FORM PROGRAMMER 345 6 7 1 1aa 15 20 303132 \ 40 I 1 I 1 1 I , I I 7 9 2 4 6 5 1 3 6 4 SUB6TOTAL 6 SUB 6 TOT A L 2-15 j / --' Load Register 1 with a five character constant. - -. ~ PROGRAM 3 4 5 6 7 9 011 - ~:~AR 1 (befor e) K3 ARI 20 K3 +4 -- , 'I COMMENTS 303132 , 51 40 I 1 J j I J I ./ --' 7 9 2 4 6 5 1 3 6 4 S U B 6 T a T A L 6 !1 6. 6 tl T a T A L :;:: :;:: (after) '1 DATE CAlW ONL Y J _10- ----"'" OPERANDS 1."l114 hs LAl ~ BEG F'OR r"LmL~roP SEQUENCE LINE INS I PROGRAMMER :;:: Load Register 1 with a three character constant. ~- PROGRAM SEQUENCE LINE INS 1 r"LmL 3 4 5 6 7 ~ r"'"Q'P 9 011 BEG K3 , 3 ~ J CUD ONLY OPERANDS 1::3 14 5 LAl -. DATE PROGRAMMER FOR 20 ICOMMENl'S 303132 I J I J _10- 1 40 I I I \ ,/ ./ .-J ~ 1 K3 ARI ~:~AR (before) = = (after) :;:: 7 9 2 4 6 5 1 3 6 4 S U B 6 T 0 T A L 6. 6 6 6 6 6. 6 S U B ':~The functions indicated are identical for AR,.2 with the exception that larger fields can be manipulated. 2-16 LOAD DESCENDING: LDr M,L Load Descending L consecutive characters whose most significant character is at M, into the L most significant positions of AR 1 or Function: 2. Notes: a.) b.) c. ) d.) L must be a decimal number. L characters of the field specified by M are transferred to the register. When L is less than the capacity of the register the remaining positions of the register will be space filled. When L is greater than the capacity of the register truncation will occur and the least significant characters of the field will be deleted. Load Arithmetic Register 1 with a nine character constant called K3. ExalTIple: u~v~~ F>ROGRAM SEQU NCE INS LINE , F>ROGRAMMER rmer''OP 3 4 5 6 7 9 ho 11 - 1 K3 ARl ~:~AR FOR BEG OATE CARD ONLY I COMMENTS OF>ERANDS 13,01 5 L 01 ",.- j ( UNIVACe 10015 ISAAL ASSE,.,BLER CODING FORM K3 , 9 20 303132 I I I I I (before) = (aft e r ) = = 7 9 2 4 6 5 1 3 6 4 SUB[}TOTAL SUB [} TOT A L [} 2-17 I I I l- \ 40 ,J ./ .--r Load Arithmetic Register 1 with a five character constant called K3. - - ~ PROGRAM S~QlJENC_E LINE INS 9 011 - -~:~ AR 1 OPERANDS (b e for e ) K3 AR 1 K3 -, = = = +4 I CARO ONL y 20 131104 5 LDl - - BEG FOR r'lAiELJ~ I , DATE PROGRAMMER 3 4 5 6 7 1 ! I UNIVAC· ~aal5 ISAAL ASSEMBLER CODING FORM UNIVAC ......... ...... ......... 'COMMENTS 303132 , , 5, , j ' 1 I \ 40 I 1 ./ --' 7 9 2 4 6 5 1 3 6 4 SUB £1 TOT A L T' 0 TAL 6 6 6 6 £1 Load Arithmetic Register 1 with a three character constant called K3. I UNIVAC· ~aol5 U~IVA'2 PROGRAM S,EQUENt;E LINE INS 1 FOR 3 4 5 6 7 9 011 ~ ~:~ARI K3 AR2 ~ (b~fore) BEG OPERANDS K3 -= = = CARD ONLY 20 1314 5 LDl -- DATE PROGRAMMER "LAiE'LJ"O'P I 3 ! ISAAL ASSEMBLER COOING FORM 'COMMENTS 303132 \ 40 1 I I I I I I I I j ./ -' 7 9 2 4 6 5 1 3 6 4 S U B 6 T 0 T AL S U B £1 6 £1 6 £1 £1 £1 functions indicated are identical for AR2 with the exception that larger fields can be manipulated. ~:~The 2-18 M,L LPR LOAD PRINT: Function: Load descending L consecutive characters whose most significant character is a M, il1to the L most significant positions of the print buffer. Note: L must be a decimal number, and shpuld rangefrolTl ~ to 132. L characters of the field specified by M are transferred to the rna st s igniL~callt po s itions of the print buffer. When L is less than the capacity of the print buffer the remaining positions of the buffer are space filled. When L is greater than the capacity of the print buffer the least significant character s of the sending field will be tr1.,lncated. a.) b.} c.} d.} Load the Prip.t Buffer with the first header l;i.ne labeled HDI. Example: UNIVAC ------ ( UNIVAC e 10015 ISAAL ASSEMBLER COOING FORM PROGHAM SEQUENCE LINE INS I r-rAiEL~r--or 345 6 7 9 ho 11 - -- FOR BEG -- CARD ONl'l' ICOM~ENT~ OPERANDS 13104 5 L PR ~ DATE PROGIiAMMf;:R HD 1 I \ 20 303132 1 210 I I I I I I 2-19 I I ! 40 / ::-r J STORE ASCENDING: SAr M,L Function: Store ascending L least significant characters from ARl or2, into the Lmost significant positions of the field specified by M. Notes: a.} b.} L must bea decimal number. L characters are transferred in ascending order (least to most) from ARI or 2 to the most significant positions of the field specified by M. When L is greater than the capacity of the register the receiving field will be space filled. c. ) . Store the nine least significant character s of AR 1 into the field labeled RMK. Example: IUNIVAC UNIVAC -....-........ .... -~ PROGRAM SEQu liN! 1 NC:I!~ ~~~ lin 3 4 5 6 7 91011 - DATE FO" SEG e~IIICl ONL. Y RMK *ARI RMK I COMMENTS OPERANCS 1'314h5 30113,t 20 RMK,9 \ «> I I I I I I I I j / ---r I - L-.. l 10015 ISAAL ASSEMBLER CODING FORM ~ROG~AMMER SAl ~ e (before) = 666 $ 1 0 (after) ;; ;; 1 5 6SUB6TOTAL StTB6TOTAL Store the six least significant character s of AR 1 into the six least significant character po sitions of the field labeled RMK. UNIVAC .... ~W'-...... ( 1J~I~Ace1aal5 ~,.. PROGRAM SEQU NeE LINE INS 1 PROGRAMMER rtAiEl'~ :3 4 5 6 7 9 011 FOR 13,14 SA 1 10""'- - -- \SAAL ASSEMBLER CODING FORM L-.. RMK -- (before) ~:~ARl RMK (after) BEG DATE (:ARO ONLY I COMMENTS OPERANDS I!O I) 303132 RMK+3,1(! I :.:; (), :;:: (), :;;: (), $ 1 0 I I I 1 , 1 5 S U B 6 T 0 T A L 6 (), 6. T 0 T A L (), (), 2-20 ! 1 \ «> I I ,J :7 .-J · Store the five least significant characters of AR 1 into the five most significant character positions of the field labeled RMK. u~v~~ PROGRAM-.-, 1 9 011 - - RMK 1 RJ\1K eEG CARO ONLY LrnT'--or 345 6 7 20 R M,K .5 303132 i I I I I I I -(before) :;: ~:~AR :;: (after) I COMMENTS OPERANDS 13114i~5 SAl ,. DATE_ PROGRAMMER FOR SEQU N :E LINE IN~ ! ( UNIVACe 1Q015 ISAAL ASSEMBLER CODING FORM :;: \ 40 L I j ./ --' 666.666115 6 SUB 6 TOT A L TOT A L 6 1 5 ~:~The functions indicated are identical for AR2 with the exception that larger fields can be manipulated. 2-21 STORE DESCENDING: M,L SDr Function: Store descending Lrnost significant characters from AR 1 or 2 into the L most significant positions of the fi'eld specified by M. Notes: a.} b.} L must be a decimal number. L characters are transferred from ARI or 2 to the most significant positions of the field specified by M. When L is greater than the capacity of the register the receiving field will be space filled. c.} . Store the nine most significant characters of AR 1 into the field labeled RMK. Example: I UNIVAC UNIVAC -----PROGRAM _ _ _ SEQUENCE LINE INS 9 011 RMK - FOR CARD ONLY I COMMENTS OPERANDS , I 1 , I I ;;; ;;; ;:; {after} I I , I I I \ ----"":' , I \ 40 303132 RM1K,' 19 , i {before) ! DA TE - - ' - - - 1 20 ~:'ARI RMK I3EG 13 loll 5 S D1 ,..- I 10015 SAAL ASSEMBLER CODING FORM PROGRAMMER ~'r""'()p 3 4 5 6 7 1 e I I I I I r I I '~~ 6 6 6 $ 1 0 1 5 SUB 6 TOT A L (':, SUB 6. TOT A L . Store the four most significant characters of AR 1 into the four most significant positions of the field labeled RMK. UNIVAC .-.---...-.................., - @NIVAC e 1001!!S ISAAl ASSE,.,SlER COOING FORM PROGRAM SEQUENCE LINE INS I ~'r-oP 3 4 5 6 7 9 011 R.M.K , 4 1 I i \ - -- \ (before) (after) I I -RMK ARI RMK I COMMENTS 303132 ;:; 6 6 6. $ 1 0 1 5 ==SUB6TOTAL6 == SUB6 10 15 2-22 ! , DATE OPERANDS 20 1314 5 SDl ~ FOR PROGRAMMER BEG CARD ONL Y \ 40 1 -J-_~ \ --' · Store the five l'l1pst sign~fic~nt chaTacters qf ARI iptq the five least s:ig:pifi~ant Pe)stti,.ons pf the field lab~led RMK. I 4NIVAt:;e 1COS UNIVAC -----PROGRAM SEQUENCE LINE INS 1 PRqGRAMMEF;1 rmeL'~ 345 6 7 9 011 - RMK 1 RMK ~:~AR ~:~The I3EG -(befor~) +4 ~ = I I .,5 I I I I I I I I I I \ «> 303132 I = I I COMMENTS OP~~ANPS 20 RM K D~TE I CARD ONL y 1314"5 SD 1 ",,-- FOR ! ASSE~BLER COOING fORM \SAAL i i I J I I I I I I I I I I I I~ l 1 5 ~ /:4 l4 (;, 6. 6 SUB t:, T Q TAL 6. 1 1 5 6. SUB ~ T functions indicated are identical for AR2 with the exception that larger fields can be manipulated. STORE PRINT: Function: M,L SPR Store descending L.m.ost significant characters from. the Print Buffer into the L m.ost significant positions of the field specified by M. L must be a decimal number. L characters are transferred from the Print Buffer to the most significant positions of the field specified' by M. c. } When L is greater than the capacity of Print Buffer (L 132) the receiving field will be space filled. Notes: a.} b.} > . Store the eighty most significant character s of the Print Buffer into the punch buffer. Example: _ _--- UNIVAC .. PROGRAM PROGRAMMf.;:R ruBEL+r--oP" I SEQUENCE LINE INS 3 4 5 6 7 9 0" 131<'1 SPR FOR BEG PATE: CARD ONL Y I COMMENTS OPERANDS 5 20 303132 PCH, 8 0 I I I I \ «> ~ I I I I ~ - "- j [ UNIVAC~1aaI5ISAAL ASSEMBLER CODING FORM -- I ,/ .---J PCH is the tag assigned to the lTIost significant position of the punch buffer. 2-24 SHIFT RIGHT: M,L~S SHR Function: Shift the area in memory specified by M and L,S character positions Right. Notes: a.) L must be a decimal number less than 961 and wholly contained in one memory bank. The S least significant character s of the area are lost during the shift oper ation. The shift count S must be preceded by a space and must be a three digit decimal value, equal to or les s than 30. Spaces will be stored in the S most significant character positions of the shift area. The memory location assigned to the least significant character of the area to be shifted must be a multiple of 31. In other words, it must terminate at the end of a row, i.e. 31, 62, 93 and so forth. b.) c.) d.) e.) Example 1: Shift right an area of 200 character s labeled TAB five (5) character s or positions. - I U~VAr;; J UNIVACe PROGRAM SEQUENCE LINE INS 3 -- BEG DATE 9 11 CARD ONL Y 20 1314h5 T A,B",2,OIOJ\O,O,S 1 - -- Example 2: j, I COMMENTS OPERANDS r"LA8fi'ho"'r--oP 4 5 6 7 SHR ",-- ISAAL ASSEMBLER COOING FORM PROGRAMMER FOR 1 ~OOEi 303132 I I 1 1 I } 40 I ~ /' ---r Shift right an area of 63 character s labeled TAB three (3) characters or positions. The table contains 21 three character fields terminating in core location 0713. MEMORY LAYOUT OF TABLE 0620 0651 A A B B B C C C 0682 K L L 0 0 0 L M M M N N N 0 E E E 0 0 p A 21 F F F G G G H H H I I I J J J K K 22 p p Q Q Q R R R S S S T T T U U U 23 24 0713 2-25 A three character field in the card labeled FDI is compared successively to each field in the table. SEQUENCE LINE INS 1 3 + LABEL 4 5 6 7 , , ICOMMENTS----------------------~ OPERANDS 20 131415 911011 , CTR I OP FOR BEG CARD ONL.Y 303132 40 +5 , J , , , , 1 T , , j , 1 I , 1 I 1 'I ""'" j I , R O,U , , } , , F 0 1 ,3 , J,E,A F , N I C, CTR , , , L , , , 11 J I , I , ,2 J E, I J , , I ERR , I , " , I , j , I , S H,R T,A,B ,,63, ,00,3, SA1 TAB,3 J LJ R 0 U , , I I +5 I I 001 002 003 004 005 006 007 008 009 , I I , I , , I , , I j , -YC 0 M P I ' , , , ,T ,0 IF, ',N,D, I , , , , I N PUT I ,liN, I I I N C,R I I T,R, C 0 IIN ' 0 , ,FIN I , , , , I N I ! I .S,H ',FT TAB, AT I I , , STORE It, , I I , .1 I J 1 I .R,E,P,E,A,T, I I I I L..L.---.J.--+-......l..-.l TAB L E .L......L_.L_.l..---L-......l--+--.-J-\ I 3 POS -L-L_---L-.....L--I---'-I ,BEG L_L_.l.._..l_L . .L---'-.....l.-...l...-+-Y , ,I _ The table counter is cleared Last field of table is loaded into AR 1 Compare AR 1 to field in the card Jump equal to FIN Increment the table counter (21 011) Jump equal to ERR Shift the table 3 positions clearing last field Restore last field at the beginning of table Jump to repeat routine (seq, No. 002) 2-26 I I , , I I ,TIA,B,LJ.~'~~~~ " , ! , --- SEQ. NO: ~J ~ LA,' CA1 , , +2 C T R , , j CLR .~J , ,,, I , --.L~--L....--l........-L----..~..J---\ M,L~S SHL SHIFT LEFT: Function: Shift the area in memory specified by M and L,S character positions left Notes: a.) L must be a decimal number less than 961 and wholly contained in one memory bank. The S most significant characters of the area are lost during the shift oper atior. The shift count S must be preceded by a space and must be a three digit decimal value, equal to or less than 30. Spaces will be stored in the S least significant character positions of the shift area. The memory location as signed to the most significant character of the area to be shifted must be a lTIultiple of 31, plus 1. In other words, it must start at the beginning of a row, i.e. 32, 63, 94 and so forth. b.} c.} d.) e.) Example 1: Shift right an ar ea of 200 character s labeled TAB five (5) character s or positions. - ~ -----1 3 FOR ~~~ 4 5 6 7 9 011 ~ -- ExaITlple 2: ..... BEG I COMMENTS \ 40 20 303132 TA.B, 20 1 °,60 OS I I I I I I 13i14hs 1 -- l- 1 CARD ONL Y OPERANDS SHL - DATE PROGRAMMER PROGRAM SEQUENCE LINE IllS 7 I UNIVAC~ ~DDEi ISAAL ASSEMBLER CODING FORM UNIVAC / -:::::::;:T I J Shift left an area of 63 characters labeled TAB three (3) characters or positions. The table contains 21 three character fields starting in core position 0621. MEMORY LAYOUT OF TABLE 20 0589· 0620 A 0651 K 0682 U A A K L B L B L B C C C 0 M M M N 0 N N 0 0 G G G H H H E E E F F F 0 p p p Q Q Q R R 0 R S I I I S S T J J K 21 T T U U 22 J 23 24 OTI3 2-27 A three character field in the card labeled FDI is compared succe ssively to each field in the table. TC.SEQUENCE LINE INS LABEL 3 4 5! 6, 7 1 , 1-, , , 1 , , 0, ° l °° , , , , 1 I 1 1 I I I. 1 I. I.. 1 I I I U NT E R 1 I I I I I I , , 1 C,LIR CTR+2 , 12 LA,1 TAB , 3 , I I I I I I I I , , I , , , , I C,L,E,AjR ,C,T,R, 1 I I I I I I I , I , I I , I , CA,1 F,D I 0,0,4 J E,A FIN I 005 0,0,6 , 00',7 IC CiT R JE ERR, SHL 008 S A,1 I , I J I '1 1 31 I , I 1 J R a U +,5 I 1 .. I t I ,I I Ii 1 I II I I Ie A R 1 I O,M,P, ,T,O, ,IIN,P U,T '.' , IF I N,D I ° I . C,T,R I ,I N C,R I I , I , I,N , ,T,A B LIE 0,3 .J. I ,S,H I,F,T, . I , I I I 3 TA 81 , I , , I I I PO,S I I ..i.l I II ',N, ,T,A,B,L,E, I I IN,O, ,F, I, N,D, TAB + 6 01 ' 3 I .S T,O,R,E, ,A,T, IE,N,D, 'REPEAT I 'I I I" , , , 1 I , I , I I , 1 I I I I 001 002 003 004 005 006 007 008 009 .l.1 I TAB ,,6/3, I SEQ NO: , 1 ,T,A B, F, IE L 0 1 TO I I , I .1 , , , , I IC I 1 , 003 0,09 ,° , I ,P,R,O,C,E,D,U,R,E: , ,D,' ,V,IIS, ',OI N , , I , I 1 'iN , , I V I S I ON, I - L I T E,R A L o 50 40 303132 o AT,A I R,O,U 1 2 1 +5 I COMMENTS OPERANDS 20 IN , 002 CARD ONLY I , CTR BEG 13 14 15 9:10 11 , , FOR OP , 11 1 I I I I 1 1 I I I 1-.1 I I I I I I I , I I I I , I , , , , , , I I , I I I 1 I I I The table counter is cleared 1 st field of table is loaded into AR 1 Compare ARI to the field in the card Jump equal to FIN Incr ement the table counte r (21011) Jump equal to ERR Shift the table 3 positiona, clearing 1 st field Restore 1 st field at end of table Jump to repeat routine (Seq. No. 002) 2-28 I I I I I I I I I I I Shift left an area of 63 characters labeled TAB twentyone (21) characters or positions. The table contains 21 three character fields starting in core position 0621. A third of the table will be transferred to AR2 and the register will be shifted 7 times before the table is shifted in memory. The execution time will be reduced, but the number of instructions will increase from exarnple 2. Example 3: ....... SEQUENCE LINE INS 1 3 4 LABEL 5i 6. 7 ~------FOR BEG CARDONcv------------------------------------------------------1 ~~-o-p~I~------------O-P-E-R-A--N-O-S------------I-c-O-M--M-E-N-T-S----------------------------------------------T------~~ 9'1011 131415 IN j I 1 C T 1 +5 20 303132 p,A,TIA, 0,4,0,0,1, 1 1 --L--L I ° 50 :-,L,I,T,E,~h~.L~.--,---+-~yl I , , , , , , , , 1.4o,U,N,T'~~L-1..-L.--L_.-1.._...L~,._-+---,---,I-1 ._L---''__r---'----I--+-C.......T-----2--+-+,-'.~~5_1"'__1t--1r-0.~~~....L, \ ,D,I,v,! ,S,I,O,N 1 40 , , , , , L.....L_L-L-FL~~l N ,T, E , RJl_.LL_..L_..L_L-'---'--+--J..__L 1 , .L '1 ROU 0.', 002 ° 0/3 ,. 1 004 S HIL 0,° 15 S AI2 T Ai B 1+,4,2 1 • 1 2 1 1 , 1 , 1 1 I :SIT,OIRIE I 1~~~L~...L.uL~..L IC CTl INCR CT1 006 1 ~~'--I~'__I~~---'---+--+~~~~~~~~~~'---'-I~I~'~'~I--'I~I~I~'~I~I.+I 1 1'1' , I 010 7: 1 t--'---'~--'--+-+---'---L _-+-. ~l~L_ i - ~-'.~ __ ~J_-'---L-L..L.-L.-!---L-L I 008' , C I T...L2 I +1 2 , ' 12. I , _~+-_",--~+_+C_ .'-~.LR ° 1 ° 9. I SUB C IA I 1 1 ..l1 1 11. ° 1 1. ° 1 2 I o1 I I IF, 1 , I~~~~~~ liN 1D I I ! I N L.L~~~.L __1. ....1- nL.1 '.L--'--.l_.L_.L..L-L-FLL~~.L~Za_L~L_L_LJ._L_L---1j A R 2 '1 3 1 010 ° 1 1 1 3' IN ° 1 1 1 4 '--" 2-29 11. _1 ° 1 1C1. M P ° T, T I A ,B I CLEAR: M,L CLR Function: Clear L most significant positiona of the field nificant character is at M. Note: mQst sig ... L must be a decimal number. Clear the first nine 'character positions of the accumulator called TOT. Example: !!.~~~~ " ( U NIV~ce PROGRAM SEC U N ~E LINE IN$ 1 345 - TOT TOT OATE I COMMENTS Ol'lERANDS 131104 hs _ 20 TOT, 9 :: :: 303132 \ ~ I I ! I I I I I ..... (before) (after) 1 FOil BEG CARD QNI.Y ~'rpp 6 7 9 011 7 "",ooa ISAAL ASSEMBLER COOING fORM PROGRAMMER CLR ~ whos~ " $ !J 1 0 0 0 0 !J !J !J !J ~ 6 !J !J 6 2-30 ,] 7 :.:.:.;,..r COMPARE ALPHA/NUMERIC: Function: Compare for equality L l~a~t ~i~p'l.i£iGant ch.arac;:ter positions of ARI or 2, to the L mO$t ~igni!icant pharacters of the field spe., cified by M. This is a binary comparison iltnd all dfl,ta bit:;;;; are considered. L specifies the number of ?if< (6) l?it charact(;,!rs that will be compa1;'ed. c. } A maxj.mum of 10 OJ;! al qhl;'u:a~tel"s cap be compared in ARI and AR2 :re spectfully. d. } The result ~f the comBal,"i.~on il$ ref;ordecl in t~stable indicators as foHows: Re suIt of CClmparison: Notes: a.} b. ) JUA JEA (;EQUAL) SET nJNEOUAL) (ARr) == (MEM) Example: . Compare the two lea$t s~gnj.£i~~nt character s of AR 1 against the two most si~n~ficq.nt chara.~t~r5:i qt the field called TR. .- ~ PRQGfllAt.1MER PROGRAM SEQu l,.INE ' 1 rrmr~~ Nce IHS 3 4 5 6 7 9 all - ~:~AR 1314 'I i I TR ARI , I , I I I ! I I , ! I I ~ I I I I I 'II !;:: 0 ;] ? 0 h ? ::;: (after) ! == 1 6 5 ;S C .A- S A B C P 1 ~ 5 B C A B Result: JEA (equal) inCj.icE\.tpr set. \ 40 .~ 1 ! 'J --:1 DATE 30~13Z I I ""-...-- (b~fo:re ) ---- . 11 R ~ ~ i I GQMt,4I;I'ffS - pl1le:PI~NO~ 20 s ..\,--<-.-.L 1 I . FOR ~~c:> CAIiIP C!lIIjL'I' CA 1 "..-- i \ , ! I I '~7 ! I i I _;. n . Compare the two 'lea st significa:pt cha;r(MEM) (ARr) < (MEM) (ARr) = SET SET Compare the two least significant character s of A!t 1 against the two most significant characters of the field called LMT. ._----- UNIVAC SEQUENCE LINE 1 3 'NS PROG~AMMER 'LAs!L'~ 4 5 6 7 9 011 I FOR EiEG DATE i <;:ARO ONLY I COMMENTS OPfiRAND$ 1314 hs CNl - 1 ( UNIVAC· 1DCJB ISAAL ASSEMBLER CODING FORM PROGRAM ~-- JL (Le s s) SET (MEM) Example: JG (Greater) LM T , 20 ~ I I I I I I l..- ~:~AR 1 (befor e) LMT AR 1 (after) = = = 0 0 0 0 0 a 0 0 v 0 0 0 {) 0 0 2-33 I I T - 0 1 0 0. 1 0 0 1 0 Result: JL (~ess tha~) indicator set \ ,j 40 303132 ./ .-I · Compare the two least significant character s of AR 1 against the two least significant character ~ of th,e fi~ld Galle~ LMT. I UNIVAC· 1aaE5I~AAL ASSEMBLER U~VA~ PROGRAM SEQUENCfLINE INS 1 345 UBeL+r-or 6 7 9 1.00""- ~:~ AR 1 L.... BEG - DATE PRQGRAMMER 0.. 1,. Y CARD I COMMENTS OF'ERANDS L MT 3O~t 32 20 13104 5 ho " ~Nl - FOR COOING FORM +2 40 112 I I I I I I I " I / I \ ,/ ~ (b ef 0 r e ) ;:: 0 0 0 0 0 0 0 0 1 0 LMT;:: 0 0 1 0 ARI ;:: 0 0 0 0 0 0 0 0 1 0 Result: JE (eq-qal) indicator set ':~The functions indicated are identical for AR2 with the exception that larger fields can be compared. 2-34 INCREMENT AND COMPARE: IC M Function: Increment a two digit (2) counter whose most significant character is at M+2 by a decimal value store at M+4. Compare the re sult to a two digit limit whose most significant character is at M. Notes: a.) b. ) The field specified by M must be five character s in length. The two most significant positions of the field specified by M contaln the limit, the next two positions contain the count and the last position contains the increment. The sub-functions of the instruction are as follows: 1. The increment stored at M+4 is added to the count stored at M+2 and M+3. 2. The result is compared numerically against the predetermined limit stored at M and M+ 1. 3. The results of the comparison are recorded in the te s ta ble indica to r s . c. ) Example: - Determine by means of the Ie instruction if the page line counter labeled CTR has been incremented fifty four times. If the condition is present branch to a sub -routine labeled OFL for page compensation. -- PROGRAH PROGRAMMER FOR SEQUENCE LINE INS 1 ru:BEL+r-o;;- 3 4 5 6. 7 91011 BEG DATEj CARD ONLY I COMMENTS OPERANDS 131415 20 3~31 ~z ~ IC CTR l I J E OF L I I ( M A I N IPR'OGRAM) I I I : I CLR CTR+2'1 2 I I I I I I OFL I I i~.-4 40 I I I L I I \. ; The first increment of the counter: CTR (before) CTR (after) = 5 4 = 5 4 0 0 0 1 1 1 The fifty -fourth incr ement of the counter: CTR (before) CTR (after) = 5 4 = 5 4 5 3 5 4 1 1 Control is then transferred to the routine labeled 'OFL' where the incrernent counter is cleared and page compensation is performed by the programmer. 2-35 JUMP: M J Function: Transfer program control to Example: Transfer program coptro~ PROGRAM I - to the routine labeled END. PROGRAMMER FOR "L'Aii'LJ--c;p- 345 6 7 9 011 - -- I3EG ! DATE OPERANDS END 'COMMENTS 303132 \ 40 I I ' , 1 I I I I I -,.- JUMP IF GREATER: JG M JUMP IF LESS: JL M JUMP IF EQUAL: JE M I CARD ONLY 20 1311:4 5 J ,.-- instruction stored at M. I UNIVAC~ 10D& \SAAL ASSEMBLER COOING FORM U~IVA~ SEQUENCE LINE INS th~ J ./ .-I Function: Transfer program control to the instruction stored at M if the numeric comparison indicator specified by the operation is set. Notes: a.) These instructions are used to test the result of a numeric comparison, (CNr). If the condition tested is not present, control will not be transferred and,the next instruction in the testing sequence will be executed. b.) Example: A numeric com.parison instruction has been executed. If the equal indicator is set transfer control to the routine labeled eMP. UNIVAC -------........... [ UNIVAC· ~DO& ISAAL ASSEMBLER CODING FORM PROGRAM FOR SEQUENCE LINE INS 1 - -- - BEG LAiEl'--C;p- 345 6 7 91011 J E ~ DATE PROGRAMMER CARD ONL Y OPEI:lANDS 1314hs CMP 20 'COMMENTS 303132 \ 40 I l I I I I I 2-36 ! , I I l ./ .-J JUMP EQUAL (ALPHA/NUMERIC): JEA 11 JUMP UNEQUAL (ALPHA/NUMERIC): JUA M Function: Transfer program control to th~ instruc;:tion stored at M if the comparison indicator specified by the operation code is set. Notes: a.) These instructions are used to test the results Qf an alpha/ numeric comparison. (CAr) If the condition te sted is not pre $ ent control will not be tran sferred and the next instruction in the te sting sequence will be executed. b.) Example: Test the alpha/numel."ic indicators in order to determine the results of a previous alpha/numer~c;: compare. If the arguments were equal transfer control to the rQutine labeled PRO. UNIVAC (UI\IIVAC4I! 1Ca'l5 _ _ .-t...................... - PROGRAM UQU N~E LIN~ TNS 1 i ~,~ 3 4 567 9 no 11 PROC)RAMMe:R DATE i ZO PRO - 2 ... 37 - \ «> 903132 I I I I I I I ..l- 7 1 I COMMENTS OPI;;FlANOS I ~ i "(lit SEG CAitO ONLY 1:31'01 hs )EA i \SAAI.. ASSEMBLER CODING FORM 7 .J 7 JUMP POSITIVE: JP M JUMP NEGATIVE: JN M JUMP ZERO: JZ M Function: Transfer program control to the instruction stored at M if the arithmetic indicator specified by the operation code is set. Notes: a.) These instructions are used to test the resultant sign of an arithmetic operation (AMr, ARr, SMr, SRr). If the condition tested is not present control will not be tra,nsferred and the next instruction in the testing sequence will be executed. ' b.} Test arithmetic indicators in order to determine if the result of a previous arithmetic operation was negative. If the condition is true, transfer control to the routine labeled NEG. Example: UNIVAC -----PROGRAM SEQUENCE LINE INS 1 3 ii iooI""" - -- DATE PROGRAMMER 'i:'ABELtrc;p 4 S 6 7 j ( UNIVACe 4JDDEi ISAAL ASSEMBLER CODING FORM 9 011 FOR BEG OPERANDS 13104 hs NEG J N "'"""'- - I CARD ONL Y 20 'COMMENTS 303132 \ 40 I I I I I I , I 2-38 I ./ ----1 JUMP RETURN: JR M Function: This instruction stores the address of the ne){t $equent}fll in~truc, tion in the X register and transfers program control tG tl1~ -instrp.c~ tion stored at M, Notes: a.} This instruction provides the programmer with the faqihty p£ breaking program sequence and executing a subroutine; and then returning program control to the instruction immediately iollowlng the JR instruction. The subroutine at M must contain a JX instruction so that the return line to the main program can be established. b.) Example: Tl'ansfer program control to an initialized sub-routine called TNT, perform those functions required, and return control to the main prog:-:-arrl. r- PROGRAM -- DATE PROGRAMMER FOIi 'lAiEL""~~ SECIlE liIU INS 3 , S 6 7 L1~~ 1 9 TAG no II BEG OPERANDS 131<1 hs 20 'COMMENTS 303132 ,- - .... -- ...... ,) ~. INT I I ~ I TOT, 3 51 I I I ~,~ ~ , .- . .-.." . PROGRAM -- ~.- .I ""LA8eL+~ 9 OIl .. - IE x -- EX J " F(!)R BE G , I I I J I I , I I I I Note: Refer ence function of JX instruction. 2-39 / .-J --- 'COMMENTS 303132 -,- j I _L I I I , \ 40 DATE OPERANDS 20 TAG+5 - I 'COMMENTS 303132 CARD DNL Y 131141 S -.,."".,. OPERANDS PROGRAMMER 3 4 5 6 7 DATE CARD ONLY 20 -, SEClUI:.NCE 'L!NE INS I - )X .. - BEG _. -~ CO" ,FOR '3'4~5 9 011 ~N T - PROGRAMMER -. :\ 4 S 6 7 I ~ / .,.. PRQGRAM SECUENCE I-IN(; INS ~ ~ 1 """""""'-, ' \ 40 <::;I.R " ,-- I CARD ONL Y \ 40 I I / --' J JUMP RETURN EXIT: M JX Function: This instruction creates a jump instruction to the address speci.fied by the X Register and stores it at M. Notes: a.} This instruction j s used in conjunction with the Jump Return (JR) instruction in order to establish the return link to the main program from a given sub-routine. This instruction is normally executed as the first instr}lction in a called sub-routine. b.} Establish the exit line back to the main program for an initialize sub .. routine called INT. Example: - PROGRAM Sj:QU N E ~INE INS rrrnt'l-or- 3 4 5 6 7 1 - FOR !:JEG 20 IN T TOT, 3 5, rrrnt"r-c;p 9 [to 1 1 tNT ~ --- EX ru:8eLlr-c;p- 3 4 5 6 7 "- 9 no 11 FOR BEG I I ' I I DATE \ 40 J ./ .;.....-! I , I I DATE I COMMENTS OPERANDS 20 TAG + 5 -- --t I CARD ONLY 131.4 5 J / 303132 40 I I I , I I I I I 2-40 J 'COMMENTS 303132 PROGRAMMER EX - I I I -- SEQUENCE LINE INS ~ 20 PROGRAM 1 I OPERANOS 5 ,~~ J X - -- ,-- , CARP QNI,.Y INS 3 4 5 6 7 1 IiIEG \ 40 I ' PROGRAMMER FOR , - 'COMMENTS 303132 J R PROGRAM ~JQ1JENCE CARD ON~Y CLR .-- ..... LINE DATE OF:>Er,ANOS 13 104 ~5 9 0" TAG .,r- -- PROGRAMMER \ J ./ -.J M,L AM r ADD TO MEMORY: Function:· Adds algebraically L least significant characters of ARI or 2, to the L most significant characters of the field specified by M. Notes: a.) If the length of the Register is equal to or greater than L, the instruction is terminated when L characters have been added to memory. If the length of Register is less than L, decimal zeroes are added to memory. Except for the sign bit, zone bits are ignored in the Register. The results of an Arithmetic instruction are recorded in testable indicators as follows: b.) c.) d.) If the sum is plus (+), the positive indicator is set. If the sum is negative (-), the negative indicator is set. Examples: . Add the 5 least significant characters of Arithmetic Register one (AR 1) to the field labeled FDI. ( UNIVACe ~DDE5 SAAL ASSEMBLER COO!NG FORM PROGRAM SEQUENCE L1NE 1 3 INS ~~~ 9 ho 11 - -- i.-.. FOR BEG I COMMENTS OPERANDS F D 1 I CARD ONLY 20 1314 hs AMl II" OATE PROGRAMMER 4 S 6 7 / I U~IVA~ I 5 - I I I I I I --LJ- = FDI (befor e) = 5 230 1 FDI (after) = 57017 2-41 0 0 0 4 1 I T AR I (bef 0 r e & aft e r ) 1 2 3 \ 40 303132 7 1 6 j ./ :.;..I i\dd the 5 least significant characters of arithmetic register 2 to the field labeled FD2. _ I UNIVAC UNIVAC ...............-......PROGRAM S~QU L.INf I NeE INS -- ~aal5 i:AiiL!O;- 345 6 7 9 0 II i.- FOR BEG ! ISAAL ASSEMBLER COOING FORM DATE PROGRAMMER I C;"RO ONL. y I COMMENTS OPERANDS 20 1314 5 AM2 ,,--- e FD2, 5 303192 \ 40 1 I. I I 1 1 I 1 t - AR2 (before &: after) = 0 ...· - - - - - - - 0 3 2 0 FD2 (before) = (j 647 2 FD2 (after) = 00792 J ./ ;....., Special consideration should be given on all arithmetiG processes (AR, AM, SR, SM) to the fact that when a negative result is developed the sign indications (X bits) will be generated in both the most and least significant locations of the resultant field. When a zero result is developed the zero balance indicator (Y bit) will be generated in the most significant location of the resultant field. A zero balance cannot be tested for sign (+ or -) through the use of testable indicators. All testable indicators remain set until another compare, add, subtract or print (if alt switch two is on/illuminated). 2-42 ADD TO REGISTER: M,L AR r . Adds algebraically L most significant characters of th(' nold specified by M, to the L least sign;ificant charactcr~ of ARI or Function: ?. If the length of the Register is greater than L, decilual ~eroes are added to the Register. If the length of the Register is equal to or less than L, the in ... struction is terminated when L characters have been addc(l to the Registe r. Except for the sign bit, zone bits are ignored in mcnlQl'Y. The results of an Arithmetic instruction are recqrdecl in tei:1it . . able indicators as follows: Notes: a.) b .. ) c.} d.) If the sum is plus (+), the positive indicator is set, If the sum is negative (-), the negative indicator is set. . Add the five digit field labeled FOI to (AR 1). Examples: Arithrn~tic Regir.;t.l.!p ~ UNIVAC [U~IVAce ------ PROGRAM PROC;Ht>.MMER~ FOR SEQUENCE LINE INS 3 4 5 6 l' 7rnL'r--or.7 9 011 .. L..,.._ ~ I .,005 SAAL ASSEMBL~R CODING FORM 1314 ARI ____ ~ _ _ _ _ _ _ _ _~. _UA T ICOMMEN'rS OP~:RANDS 5 20 FDI,5 L I I! J ! I ,I I~-.J.... \ ! ! ! , I ~ J..,.L.l..,........l..--.l. __ J. . ....1...-L_ ..J.-.i--'-L+-"--~....L.-I-..-' __ ..J,._.. L_.J-.. f __ •. _.L FDI (before & aft~r) \ «> 303132 -L....l..-.j..-.l. ......-L.--'--'--'-.l--"-.. - - C----...---:.-.-'l BEG CARD ON!,. Y o t~/~ 0 2 5 AR 1 (before) -/\ /~L\ AR 1 (after) -. 0 0 O' 0 0 0 5 8 7 3 05623 6 Ol1C Add the five digit negative fie~d ~abel~p. FD2 to C;trithmetic register 2. ! " I UNilVACe 100., ISAA~ ASSEMBLER CODING FORM U~..!.VA~ , PROGRAM SEQU ~INE 1 CE INS 34 5 6 7 9 ,,-- - - 1 FOil eEa CARC ON~'I' OPERANDS 1314 ~5 AR2 PATE PROGRAMM~R i i um-'~ ho" i 20 FD2,5 I I - FD2 (before & after) ::: I I I I I -o ;:: j i I ~ 1 2 7 0 ....- - - 0 7 6 9 4 1 9 2-44 \ 40 303132 AR2 (before) AR2 (after) 1 ICOMMIj;:NT$ / --J SMr SUBTRACT FROM MEMORY: Function~ M,L 'Subtracts algebraically L least significant characters of AR I or 2, from. the L m.ost significant characters of the field specifi~d by M. This instruction operates identi~ally to the AM instruction, except that the operation is subtraction. Otherwise the notes under the AM instruction apply. Note: Exam.ples: . Subtract the 5 least significant characters of AR I from. the field labeled PN 1. UNIVAC - .............---..... PROGRAM SEOu Nelf LINE INS 1 I 9 ~O111 - -- ",. I COMMENTS OPERANDS PN 1 20 I 5 - 303132 I I I I I , I I AR 1 (be£or e &: after) :;: t::, t::, t::, t::, t::, t::, 1 9 7 6 PNI (before) ;:: 3 9 878 3 7 902 ,; '~ 2-45 \ 40 I PNI (after) . I FOIt S"EG CARD ONL Y 13 1011 ~5 5M1 DATE PROGRAMMER I ruerr'~ 345 6 7 / ( UNIVAC· 10015 ISAAL ASSEMBLER COOING FORM j ./ ---' · Subtract the 5 lec;l.st significant characters of AR 2 frpm the field labeled PNZ. --........ -~ PROGRAM L'"~ 1 IN5 WiLt"OP 9 011 ~ - - I'OR BEG CARD ONLY ICOMM~NTS OPERANDS 20 13M 5 SM2 PN 2 I 5 303132 I 1 ";1 1 ,1 o ::: 2-46 \ I J ' :/ ~ 6 000 00937 PN2 (after) ' '40 I -""'" AR2 (before & after) ::: 6 .....--~-6 6 9 3 7 PN2 (before) , OAT~ .,. PROGRANMER 3 4 5 6 7 ! (iJN IVAC· 10011 ISAAL ASSEMBLER CQDING FQ~ UNIVAC SR r SUBTRACT FROM REGISTER: Function: M,L Subtracts algebraically L most significant characters of the field specified by M, from the L least significant character s of AR 1 or 2. Note: This instruction operates identically to the AR instruction, with the sole exception that the operation is a subtraction. Otherwise the note s under the AR instruction apply. Examples: . Subtract the 5 digit field labeled PNl from Arithmetic Register one (ARl). I UNIVAC UNIVAC ------ FQR 1 3 - -- DATE 'LAiEL'ro;ho 4 5 6 7 9 11 13114 hs i.- 5 I --- ~ I COMMENTS 20 PN 1 I CARD ONL Y OPERANDS SR1 " BEG ! 1DDB ISAAL ASSEMBLER CODING FORM PROGRAMMER PROGRAM SEQUENCE LINE INS e \ 40 303132 I I I I I I I I I 0 PNl (before & after) = ARl (before) = 6. 6. 6. 6. ARl (after) = 0 0 0 0 0 / ..-r 6 5 3 6. 6. 6. 9 5 7 0 0 0 3 0 4 Subtract the 5 digit field labeled PN2 from arithm.etic register 2. U~..!VA~ PROGRAM SEQUENCE LINE INS 1 3 PROGRAMMER ~'r-'(iP 4 S 6 7 9ho 11 - l.- FOR BEG DATE CARD ONLY I COMMENTS OPERANDS 1:3 14 hs sR2 -' !, ( UNIVAC e 1DDB ]SAAL ASSEMBLER CODING FORM PN2 - 20 I 5 303132 I I I 1 I I I I I .,. PN2 (befope & after) = AR2 (before) = 6.~~~--6. A.R2 (after) == 0 . .·. 1 - - - - - - - 0 5 0 0 76560 2-47 \ 40 7 6 0 6 0 .J ./ -:;:;r M,L MUL MULTIPLICATION: Function: Multiply L most signi!ic~nt characte:t" s of the field sp~cifiecl. by M by the value previously stored in AR 1 and pla,ce the produ~t in AR2. Notes: a.) b.) L must be a decimal number ranging from one to eight. The multiplier must be previously stored in AR 1 and must b~ Ie s s than ten digit s Ln length and have sign deleted. AR2 must be clear ed to space s before the Multiplication instruction is executed. Both the Multiplier (A:R I) an,d the Multiplicand (MEM) m\lst be po siUve value s . A ma..~.irnum product of 1 7 decirnaJ digits can be developed. The: result is formed in ARZ and is right justified with zero fill. Testable indicators are not set or affected by this instruction. c.) d.} e.) f.) g.) Example: Multiply two four digit numbers labeled WSI and WS2. u~!.~~s PROGRAM SEC .CE I,.I~fi 1 IN~ 3 4 51 P~OC:;RAM"I15:R FOil UBeL+~ 6 7 ! /IJNIV ~C® ~OD5ISAAl- ASSEMBLER COOINP FORM 91011 1~ QI'IL Y CARP 'COMMENTS OPERANDS 20 141l!i ~~ 3031 L N, 1 Ws 1 , 4 A R 2 , :2 11 1 I WS 1 I - """,. WSI ARI (before) AR2 (before) WS2 = AR2 (after) = o. ~ , 4 - i 1 - ;: ::: i I I 1 !::,~!::, :: 40 I CLR MUL - BEG Dh-TE 1 0 1 6 5 0 1 6 5 • 6. .. !::, 1 0 2 5 0 2-48 1 6 9 1 2 5 / '7 -- / / DIVISION: M,L DIV th~ Function: Divide AR2 by the L m.ost significant characters of cified by M and place the results in ARI and 2. Notes: a.} b.} L must be a decimal number ranging from one to seven~ The dividend must be previously stored in AR2 and must be less than thirteen digits in length. If signed, sign must be d~leted. AR 1 must be cleared to spaces before the Division instruction is executed. Both the divisor (MEM) and the dividend (AR2) must be positive values, subsequently testable indicators are not set or affecteq by this instruction. Seven whole number s ar e developed as the quotient and will appear in AR 1 right justified. That is if the length of the dividend is greater than 7,there must be less than 9,999,999 difference in the absolute values of the dividend and the divisor. Eight decimal and nine remainder of the quotient are developed and will appear in AR2 left justified. If the divisor is zero, the result will be blank. c.} d.} e.) f.) g.) Example: field spe- Divide WS 1 3 digits into WS2 (5 digits). _ PROGRAM SEQUENCE LINE INS 1 3 PROGRAMMER i ~~"O'P 4 51 6, 7 ....-- - / ! UNIVAC~ 1DD5 \SAAL ASSEMBLER CODING FORM UNIVAC ... _.,-..-.---...... 91011 FOR BEG PATE CARO ONL Y I COMMENTS OPERANDS 1314'15 20 303132 I L.N~ WS 2 ,5 CLR A R 1 ,10'1 I DI V WS1 , 3 I I i 1 i I 40 j i I I \ 7 7 --:J WSI WS2 ARI AR2 ARI AR2 = ::::: (before) (before) (after) (after) = = = = 1 2 6 5 5 3 1 6 ~ 6 0 5 5 3 1 6 o• 000 0 0 0 0 4 3 9 0 I 587 3 0 1 0 o 0 000 0 7 1 q 0 0 0 DeciInal Quotient Remainder Remainder 2-49 TRANSLATE INTRODUCTION The Translate Process for the UNIVAC 1005 permits the translation of an entire record to be accomplished by a single instruction. The Translate Instruction functions, quite simply: All of the character s of the translated code are entered into Core Storage in the form of a reference table (Translate Table) at or be., fore the start of a run. The bits of each character of the code to be translated, acting as address codes, call the translated character code out of the Trans ... late Table during the Translate Instruction. The translated codes substitute themselves for the codes to be translated in the M (Operand) Address of the Translate Operation. This leaves a fully translated record in the M Address locations at the end of the operation. The UNIVAC 1005 uses a code when addressing its Core Storage. The Address Control recognizes the code for the original character and relates this with a specific storage location containing the translate character. With practically all of the code s used in data proce s sing, be they 5 -, 6 -, 7 -, or a-Track, a maximum of six tracks are valid or significant as far as character code formation is concerned. The other tracks serve for parity or functional control purposes. By using six significant tracks (or levels) of the code to be translated for address control, one level for Row Address control and the other levels for Column Address control, the UNIVAC 1005 Translate Process is practically univer sal in its application to code translation. To change from one translation to another can require nothing more than changing the translation table in the storage. The Translate Process combines simplicity of programming with effi ... ciency of operation to obtain a wide scope of translating abilities. GENERAL DESCRIPTION OF THE TRANSLATION TABLE Figure 1 illustrates the required format of the Translation Table insofar as it is determined by the 1005 circuitry, and is intended to give a cor ... rect approach to the planning of the table. Figure I-A is a sample chart, 2-50 ORIG. CHAR. BIT CONFIGURATION OF OR IG. CHARACTE R -------- ----- ---- - I X IYl81 4 12 1 1 1 o 1 o 000 0 0 0 0 0 1 000 o 0 1 1 o o o 1 1 0081 0082 0094 0095 0096 0097 0098 0099 0100 0101 0102 0103 0104 0105 0106 0107 0108 0109 0110 0111 0112 1 0 0 0 0 o o 0 100 o 0 1 1 001 000 1 0 0 0 o o o 0 0 1 0 0 0 0 0 0 1 0 0 000 0 1 1 0 0 1 o o o o 0 1 0 1 1 010 0 1 1 0 0 1 001 o o o 1 1 1 1 0 0 1 0 1 1 MOD 1 MEM. LOC. 0113 0114 01010 0115 o a o 1 o 1 0116 0117 0118 0119 0120 0121 0122 0123 0124 0 1 1 0 1 0 0 1 0 0 00100 o o o o o 1 0 0 1 0 0 1 1 0 0 1 1 0 0 1 0 0 0 0 0 0 0 NEW CHAR. ORIG. CHAR. ---------- --------------------------------- BIT CONFIGURATION OF ORIG. CHARACTER IXIY18141211, __ 0 0 0 0 0 __ 0 0 0 0 __ __ 0 0 -- 0 --- -- 0 0 0 1 1 0 0 0 1 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 1 0 1 0 1 0 1 0 0 1 1 1 0 __ 1 0 1 __ 0 1 -- 0 -- 0 1 0 0 0 __ 0 0 -- 0 ---- 0 __ 0 1 0 1 0 1 -- 1 0 -__ 0 -- -__ __ 0 0 1 1 0 1 1 0 1 1 0 1 1 0 0 1 1 0 0 0 -- 0 1 0 0 -- 1 0 0 1 -- 0 0 0 --101 00 -- 1 o 0 0 0 0 0 0 MOD 1 NEW CHAR. MEM. LOC. 0125 0126 0127 0128 0129 0130 0131 0132 0133 0134 0135 0136 0137 0138 0139 0140 0141 0142 0143 0144 0145 0146 0147 0148 0149 0150 0151 0152 0153 0154 0155 ----- FIGURE 1. ORIG. CHAR. -) I...... - J_ BIT CON FIGURA TION OF OR IG. CHARACTE R ..... ..... ..... IXIYI8141211 I 1 1 1 0 0 0 0 0 ~ - 1 1 1 1 1 0 0 0 0 0 1 0 1 1 0 1 FIGURE I-A - 2 - 2-51 MOD 1 MEM. LOC. 0081 0082 0094 _.... 0095 NEW CHAR. ~ ~ ..... ... " t 1 - filled in, to illustrate a po s sible input translation to the 1005. Fig. 1 represents the sixty-four (64) characters that are recognized by the 1005. These characters are shown in the table by bit configurations. Zero represents a bit absent and 1 represents a bit present. Therefore, the programmer must have a six level code showing the bit configuration for each letter, number or special character: x Y Abs Pres 8 4 2 1 =B-i-t----B-i-t-----B~it----=B-i-t--~B~it--~Bit Abs Pres Abs Abs = A (in XS-3, 80 col.) In the context of the translation instruction, this pattern has two meanings: Meaning 1: It is the pattern of a character in the original code as it appears in 1005 storage before translation. Meaning 2: This is the code that Address Control recognizes to re ... late to a specific storage location containing the translate character. Since the bit patterns are arranged by the sequence as addresses, they are in no meaningful sequence as original code characters. The Original Character box will contain the character that is equal to the bit configuration shown directly to the right on the same line: Orig. Char. (BCD) 0- _1_ _0 _ _0_0___0 _ _1 [01261- 0 (XS3) The Mod. 1 Mem. Loc'l box refers to the location in memory that will contain the new character. Note that the translate table is a fixed area in Module 1 with two characters at location 0081 an.d 0082 and sixty-two (62) more character s starting at location 0094 and continuing to 0155. This corresponds with the layout of the translation tables in that entry 126 of the table, a J will be entered in position 0126 of m.emory. PLANNING THE TRANSLATION TABLE (Ref. Figure I-A) To construct the translation table, the first step is to exam.ine the bit patterns of the character to be translated. Having found the bit configuration in the table (under Bit Configuration of Orig. Character) write the character to be translated in the small box at the left. Next, fill in the corresponding small box on the right (under New Char.) with the resultant UNIVAC 1005 character desired. 2-52 Loading the translate table into memory is easily accomplished in the data division of the program. Recommended procedure is to define the areas in CRD, PR T, PCH. Immediately follow this with ORG 0081 to set the Address Control to the beginning of the translate table. Next, code a literal instruction with +2 in the operation field and two characters in the operand field. These two characters will be the first two entries under NE·W CHAR. corresponding to 0081 and 0082. Note: The use of the literal instruction directs the assembler to move the number of characters specified in the Op field from the operand field to sequential core locations starting at 0081. It is now necessary to reposition Address Control to the next position of the translate table. This is accomplished with an ORG 0094. Next, code a literal instruction with +31 in the operation field and 31 characters in the operand field. These characters are found under NEW CHAR. corresponding to 0094 thru 0124. Next, code another literal instruction with + 31 in the operation field and 31 characters in the operand field. These character s are found under NEW CHAR. corresponding to 0125 thru 0155. This completes the coding necessary and upon execution of loading the program the translate table will be properly positioned in memory. Following is the data division of a sample program showing the necessary coding for a translation from BCD to XS-3. Beg CRD FD1 FD2 1 7 PRT PR1 PR2 1 7 PCH PC1 PC2 1 ORG +2 ORG +31 +31 ORG STA 7 0081 ; ( 0094 137~%ZS48/250V#X:C<,W\~U9T6@Y - JLP! 0373 ):(IBMQAKN6E$G~+? .F=)DRCO~:~H&: This chart and its explanation cover the needs of translation into BCD. It is simple to punch the translation characters into a ca=d and load it into the 1005 table area. For translating into foreign code s, it is necessary to load the bit patterns of the foreign code into the table. Further planning is needed to determine the proper card punching to obtain these bit patterns. 2-53 M,L TRL TRANSLATE: Function: Replace L most significant character s of the field specified by M with their positional equivalent as dictated by the translate table. Notes: a.} L must be a decimal number less than 961. The entire operand must be located in the 1st bank. Any combination of 64 possible Ul005 6 bit characters can appear in the translation table~ Prior to executing the translate instruction the translate table is stored in memory locations 0081, 0082, 0094 - 0155. The M expression specifies the most f3ignificant location of the field to be translated. The conver sion proceeds from the mo st significant character to the least for L characters. The TRL instruction replaces each character in the field to be translated with a character selected from the translate table. The basis for selecting the replacement character is the Boolean value of the character to be replaced. The contents of the transl:=tte table are not altered by the instruction' unless the translate table it'3elf is translated. b.) c.) d.} e.) £.) Example: A three character field containing three 6 bits configurations 110001 110010 110011 is labeled FDI. Those 6 bit configurations are the BCD (Binary Coded Decimal) codes for the characters ABC. FDI is to be printed on the UlOOS and must be translated from BCD to UNIVAC 1005 XS-3 code. The first four instructions load the new translate table. ( UN IVAC® ~DD5 SAAL ASSEMBLER CODING FORM PROGRAM SEQUENCE LINE INS 1 3 PROGRAMMER um~r-oP 4 5i 6.7 91011 FOR BEG L P,R SAl DATE CARD ONLY OPERANDS 20 131415 SPR LA 1 -- - 7 I UNIVAC -----_..---- 'COMMENTS 303132 I I 40 K 1 6 2 1 T R 1 , 6 21 1 K2 , 2 I I I I : 1 I I T R 2 ,2 1 I I I I I 7 ,7 ,/ I ~ 2-54 The translate function is now executed. - PROGRAM S~QUE , liNe .c:. UiiL'-o;6 1 - -- BEG CARD ONLY 910 l' - 13~" 5 -- I COMMENTS OPERANDS INS TRL ~ 'OR , DATE PROGRAMMER 3 4 5 ! I UNIVAC· 1aall ISAAL ASSEMBLER CODING FORM - UNIVAC FD 1 , 3 20 303132 \ 40 I I I I I I I I I j / ---' The resultant characters stored in FDI are the XS-3 equivalent for the alpha character ABC. 2-55 STORE ZERO SUPPRE$SEP: M,L SZS Store ascending ;L lea~t significant characters from AR2 into the L most sig~ificant character s of the field specified by M suppressing aU leading zeroes. Function: Notes: a.} b.} L must be a decimal number. L characters are transferred in ascending order (least to most) from AR2 to the roo~t sigpificant positions of the field specified by M. c. } Zero suppressin~ will continue unti~ some character other than a zero or spaoe is decoded. d.} When L is greater t~an the capacity of AR2 the receiving field will be space filled. Example: Store the five least significant positions of AR2, suppressing all leading zeros, int<;> the field labeled TOT. --.--.-~ PROGRAM UUUI: N;I: ~INI! I INS PROGRAMMER "i:m"Ltp;- 3 4 5 6 7 9.0 I FOil - -- BEG DATE I (:AR~ QM~Y OPERANDS 20 13.104 5 szs ioo""""" ! I UNIVAC· 1001!5 ISAAL ASSEMBLER CODING FORM UNIVAC TOT,S 'COMMENTS 303132 \ 40 I I ' I I JI 1 I - AR2 (before) :: 0 ....-"1"""-0 0 0 1 5 TOT (after):: fj 6 fj 1 5 AR 2 (afte:r) :;: fj • 6 fj fj 1 5 2-56 j ./ .--I LOAD WITH SIGN: Function: M,L LWS Load ascending L mo st significant numeric character s from the field specified by M, into the L least significant character positions of AR Z . Insert a sign in the LSL position of ARZ on the basis of the loworder "X". L must be a decimal num.ber. L most significant characters of the field specified by Mare transferred in ascending order to the L least significant positions of ARZ. c. ) The LSL position of AR2 is exam.ined and a sign is inserted. 1£ the value in ARZ is positive it is left shifted one position and a space (plus sign) is inserted in the least significant character of ARl. If the value in AR2 is negative it is left shifted one position and a minus (negative sign) is inserted in the least significant character of ARl. d.) When L is less than the capacity of AR2 the remaining positions of the register are space filled. e. ) When L is greater than the capacity of the register truncation will occur and the most significant characters of the field will be deleted. f.) All non-numeric bits are deleted by this instruction. Notes: a.) b.) . Load a five digit negative field called SUM into AR2 inserting a sign in the LSL character of AR2 based on the presence or absence of the low - order "X" bit. Example: PROGRAM Sl!gUE .CI LIN! 1 .HI DATE PROGRAMMER 'iTeELJ~ 3 4 5 6 7 9 ~o 11 FOR BEG OPERANDS 20 SUM,S 'COMMENTS 303132 I I \ 40 ~ I 1 I I I - 1 ~- SUM ARl = = 6,...--6 a I CARD ONLY 13,4 5 LWS ". ! I UNIVAC· 10D1!5 ISAAL ASSEMBLER COOING FORM U~IVAC a 6 015 6 1 5 2-57 a I 7 ~ J Load a five digit positive field call AGe into AR2 inserting sign in the LS~ ch~racter of AR2 based on the presence or absence of the Low ... order "X'I l;>it. I UNIVAC UNIVAC -...---......-PROGRAM SEOUENCI= LINt' INS 1 3 I I rniEL~ror 4 5 6 7 9 0" FOR ~ - ACC AR2 I COMMENTS ~o .s 303132 I I I I I I ~ ~- = = DATE OPERANC>S AC.C , 0 5 0 1 5 6~6 7 10a15 ISAAL ASSEMBLER CODING FORM PROGRAt-1MER !;lEG f:M~O OIllL Y 13114 5 LW $ e q. 0 5 0 1 5 6 2-58 ' I , \ 40 I I j 7 --' LOAD NUMERICS: M,L LN r Function: Load ascending L most significant characters from the field specified by M, into the L least significant characters of AR1 or 2. During the transfer all zone bits are changed to binary zeroe s. Notes: a.) L can be a decimal number ranging from 1 to 21 depending upon which AR has been specified by the operation code. If a field contains less characters than the register capacity the remaining positions of the register will be space filled. If a field contains more characters than register capacity the surplus positions will be truncated. b.) c.) Examples: Transfer a four character constant K1 into the four least significant positions of AR 1. - .. ---~ 1 ru:arr~r-;;p 3 4 5 6 7 9 no 11 - FOR 8'EG K1 , 4 20 Kl AR1 (after) 'COMMENTS 303132 40 I I ' I I I I I I i-. ,:cAR 1 (before) I CARD ONLY OPERANDS 13.14hs LNl ",--- DATE PROGRAMMER PROGRAM SEQUENCE LINE INS ! I UNIVAC· 10015 ISAAl ASSEMBLER COOING FORM UNIVAC =6600134567 ABCD = 666 6 6 6 1 234 2-59 / ~ \ J Transfer a two character constant from Kl into the two least significant positions of ARI. UNIVAC -- PROGRAMMER PROGRAM 5EQU NCE LINE INS ~,~ 3 4 5 6 7 1 9 ho 11 DATE i I F9R 8~G CARD ONLY - -- *ARI (before) 'I COMMENTS OPERANDS K 1 , 2 \ 40 303132 20 1314 5 LN 1 ~ / ( UNIVAC::=- 10015 ISAAL ASSEMBLER CODING FORM I I 1 I I I I I I ..... = ~ ~ 0 0 I 345 6 7 ABC D 6 ~ 6 6 - KI ARI (after) = ~ ~ 6 6 J ./ --t 1 2 Since the most significant position of the field is the character specified by the address M, the two most significant characters of KI were transferred. Transfer a two character constant fromKl beginning with LSL character into the two least significant positions of AR.I. UNIVAC ----...- - . ....- . - . PROGRAM SJ:~U LINE 1 N E INS LABlLt-o;- ~ ~:~AR 1 eEG CARO ONL Y OPERANPS 20 ICOMME~ns !' 303132 Kl+2,2 J I -- (before) Kl ARl (after) FOR 1~ 104~5 9 011 L N1 - -- DATE PROGRAMMER 345 6 7 / ( UNIVAC- 10015 \SAAL ASSEMBLER CODING FORM . I I I I I =~ ~ 0 0 1 345 6 7 6 ~ 6 = = ~ 6 6 40 I I \ J /' ---s ABC D ~ ~ 3 4 Since the most significant position of the field is the character specified by the address M + 2, the two least significant characters of Kl were transferred. ~:~The functions indicated are fields can be manipulated. id~ntical for AR?- with the exception that larger 2-60 M,L SED STORE EDITED: Function: Store ascending L least significant characters from AR2 into the L most significant positions of the field specified by M. Suppress all leading zeroes and edit the field according to a fixed pattern. Notes: a.} b.) L must be a decimal number. L characters are transferred in ascending order (least to most) from AR2 to the L most significant positions of the field specified by M. The field will be zero suppre s sed until some character other than a zero or space is decoded. A period is inserted in the fourth least significant position of AR2. Commas are inserted for separating significant value s when they exist. If the integer value of the field is Ie s s than 1,000 commas will not be inserted. The rules for truncation and space fill are the same as for store ascending. c.) d.} e.) f.} Store AR2 edited into the print-buffer. Example: UNIVAC -----PROGRAM SEQUENCE LINE INS I 3 rnrur~ 9 011 FOR - -AR2 PR T AR2 PRT CARD Otoll Y I COMMENTS OPERANDS 20 PR T , 1 01 -= = = = (j 0 1 4 (j (j (j (j.....-6, 1 1 6, • (j I I I I I I I 5 6, (j (j (j (j 4 4 0 015 0 o 1 5 2-61 .J ./ .--I 001 (j \ 40 303132 I (before) (befor e) (after) (after) BEG 1314hs SED ~ DATE PROGRAMMER 4 5 6 7 7 ( UNIVACe ~OOS ISAAL ASSEMBLER CODING FORM (j PUNCH TEST: PTE Function: This instruction tests the ready status of the Punch Unit. Control will not be transferred to the next instruction in sequence if the Punch Unit is still active. Notes: a.) This instruction is normally given following a Punch command (XF PUN) and prior to the first transfer of new data into the Punch - buff e r . This instruction insures that information will not be transferred into the Punch-buffer while it is in the process of unloading. Optimum utilization of the Punch-Test instruction will provide the maximum overlap of processing with punching. b.} c.) Example: Test the Punch before storing AR2 in the Punch-buffer. ~~IVA~ PROGRAM S_EQU N!;£ LINE 1 INS DATE PROGRAMMER "W'iLJr-o;;- 3 4 5 6 7 9 011 l~to4, prE FOR BEG CARD ONL Y OPERANDS 5 20 1 3031 I COMMENTS :tt 1 I \ 40 ". B. - 5 A 2 PCH, 2 11 J ~ I j I I - ) ( UNIVAC· ~aal!5 ISAAL ASSEMBLER COOING FORM I ./ ---' INSTRUCTION REPERTOIRE -- CARD SYSTEM EXTERNAL FUNCTIONS The UNIVAC 1005 Card Processing system has been designed around a single address, internal programmed processor and includes as secondary units the following: - Integrated High Speed Printer Integrated or free standing Card Reader Free standing Punch Unit or Read/Punch Unit Optional free standing Auxiliary Reader The Card System External Function instructions pertain to Class III and are explained in detail on the following pages. Class Ill: Class III instructions are Input/Output or External Function Commands, and contain a mnemonic code in the "M" portion of an instruction indicating the I/O device or devices to be initiated. 2-62 READ CARD: XF 6REA Function: This instruction reads a full 80 column card into the U 1 005 input Card-buffer. Notes: a.) The input Card-buffer area is 80 locations in length, beginning with memory location 1 through memory location 80. Input Card-buffer locations correspond to card columns, thus a character punched in column 1 will be stored in location 1, a character punched in column 2 will be stored in location 2 and so on. As each column is read it is automatically translated from Hollerith card code to XS - 3. The mnemonic operand field must be preceded by a space. b.) c.) d.) (For illustration purposes this space will be indicated by a !!t. for all XF instructions) Example: Read a card from the Main Reader. ------ UNIVAC PROGRAM SEQUENCE LINE INS 1 3 ~'OP 4 S 6 7 9 0" XF :,-- - 0- / ( UNIVACe ~aaB ISAAL ASSEMBLER COOING FORM 11104 FOR PROGRAMMER BEG CARD ONL Y OPERANDS hs 20 6REA - 1 2-63 'COMMENTS 303132 I , DATE \ 40 I ' 1 I I I I J ./ .-J PRINT-SPACE ONE XF !1PR1 TWO XF !1PR2 Function: This instruction prints the contents at the Print-buffer a;ld spaces the paper one or two lines depending on the numeric modifier specified. Notes: a.) The Print-buffer area is 132 locations in length, beginning with memory location 161 through memory location 292. Print-buffer locations correspond to printing positions, thus, a character stored in memory location 161 will be printed at print position one, a character stored in memory location 162 will be printed at printed position two; and so forth. The Print-buffer area is automatically cleared to spaces following the execution of each Print command. All Printer spacing occur s subsequent to printing, or in other words the contents of the Print-buffer is printed, the Print-buffer is cleared and then the printer form is advanced. The mnemonic operand field must be preceded by a space. b.) c.) d.) e.) Example: Print the contents at the Print-buffer and advance the form two lines. I UNIVAC ------ UNIVAC PROGRAM SEQUENCE LINE INS 1 3 ~,~ 4 5 6 7 - -- BEG DATE -- CARD ONLY OPERANDS 1314 5 9 011 - FOA {:, P,R 2 /, 1DD1!5 ISAAL ASSEMBLER CODING FORM PROGRAMMER XF .,. e 20 iCOMMENTS 303132 40 I I I 1 I I I I I J ./ -' With Alt Switch 2 on/illuminated on all print commands an automatic ejection (skip 7) occurs when a one (1) punch is detected in the forms control tape. This condition is testable. A JG condition is set if the one (1) punch has not been detected. A J L condition is set when the one (1) punch has been detected. These settings remain testable until another card, print or paper tape I/O command, compare, add or subtract instruction is executed. 2-64 PRINT" -ADVANCE 7 " Functi'on: ~PR7 XF This instruction prints the contents at the Print-buffer and advances the paper until a one, two, four, punc.h is detected in the control loop. Notes: a.) The Print-buffer area is 132 locations in length, beginning with memory location 161 through memory location 292. Print-buffer locations correspond to printing positions, thus a character stored in memory location 161 will be printed at print position one, a character stored in memory location 162 will be printed at print position two, and so forth. The Print-buffer area is automatically cleared to spaces following the execution of the print command. Once the fo rms advance function of the PR 7 instruction is initiated' control is returned to the next instruction in sequence and further processing is overlapped during the actual form advancing. The fir st line of a form is normally indicated by a control punch in all channels of the printer control loop. Hence, an advance 7 would mean advance the form to the 1 st line of the next page. The mnemonic operand field must be preceded by a space. b.) c.) d.) e.) f.) PROGRAM SI!I U H:I! LIN! INS t ~'OP 9 0 t1 -- "- FOR BEG ~PR7 -- CARO ONLY OPERANDS t::lt4 5 xF ..... DATE PROGRAMMER 3 4 5 6 7 7 I UNIVAC· 10011 ISAAL ASSEMBLER CODING FORM U~IV~ 20 'COMMENTS 30::11::12 I I I I 2-65 I I I \ 40 I I .I ./ ..--r PUNCH: Function: XF APUN This instruction punchee the 80 column call;d iInage in the Punch .., buffer., The Punch-buffer area is 80 lo~,ations in length, beginning with memory location 293 through :memory location 37Z. b.) Punch-buffer locations correspond to card columns, thus a character stored in location 293 will be punched in card colwnn I, a character stored in 294 will be punched in card column 2 and so on. c.) The Punch-buffer is not cleared following the execution of the punch instruction. d.} Once the punch cycle has been in~tiated, control is returned to the next instruction in sequence and further processing is overlapped during the ·punch-cycle. e.} As each column is punched it is automatically translated from XS-3 cod.e to Hollerith card code. f.) The nmemonic operand field must be preceded by a space. Notes: a.} Example: Punch the card image stored in the Punch-buffer. PROGRAM _ _ KI! PROGRAMMER 1 Uiirl:-or" l11iJft3~MS5 '. 7: . . .".. - -- . !I ko .' t ! X.F L / I UNIVAC-' 10aB JSAAl ASSEMBLER COOtNG fORI !:!.NIVAC t31.ti DA,TE I ,Oft £lEG URo. (1M!..Y .:. l CI.ltieENTS OPERANDS 20 !i\p U N t I. . I t • £ ,: I t "- Z-66, 1 40; 303tH . . L~. " I [ I / .~. ,/ ..-I READ - PRINT - SPACE ONE: XF .6RPR Function: This instruction reads a full 80 column card into the U 1005 input Card-buffer, prints th~ contents of the Print-buffer and advances the printer form one line. Notes: a.) The Read-Print instruction is a combination of the Read Card (XF REA) and the Print (XF PR 1) instructions. All notes pertaining to these instructions are applicable to the Read-Print instructions. During the Read-Print execution cycle both I/O devices will function concurrently, with the execution time of the faster peripherial being overlapped by the slower one. b.) For example, in the case of a 400 CPM reader and a 600 LPM printer, the execution time required to read a card is sufficient so that the print cycle can be completed concurrently. The mnemonic operand field must be preceded by a space. c.) Example: Read the next card into the Card-buffer, print the contents of the Print-buffer and advance the printer form. one line. U~IV~ F>ROGRAM 1 9 011 - - .... I BEG CARD ONL Y niiL'r-or 345 6 7 I COMMENTS OF>ERANDS 1314 5 XF ,,--- DATE F>ROGRAMMER FOR $J:QUE N~ LIN! INS ! ( UNIVAC· 1001!1 ISAAL ASSEMBLER CODING FORM 20 6RPR 303132 \ 40 I I I I I I 1 1 I -- 2-67 j ./ --' READ - PRINT ... SPACE TWO: XF i1RP2 ao Function: This instruction reads a ful~ column card into the U ~Oc)5 in ... put Card-buffer, prints the contents of the Print-buffer an~ advances the printer form two lines. Notes: a.) All notes pertaining to the READ-PRINT-SPACE ONE (XF RPR) instruction are applicable to the READ-PRINT-SPACE TWO instruction. The mnemonic operand field must be preceded by a space. b.) Example: Read the ne~t card into the Card-buffer, print the contents of the Print - .). Input C,ard-:-buffer locations correspond sequentially to card .columns •..Thus ,a cc;:>n£iguration punched in card column 1 will be store~ in m,emp;ry lo~ations 1 and 2, a configuration punched in card column 2 will he stored in memory locations 3 and 4 and so on. c.) This instruction increases the data handling capacity of the U 1005 in that the primary design is to combine in one card form the compact 6 -position UNIVAC XS-3 code with the 12 -position 80 column punched card code. d.)' The mnemonic operand field must be preceded by a space. Example: Read a card from the Main Reader in Code Image mode. UNIVAC I UNIVAC DIV'.,."'." •••••••" .... c ........,•• 'JIif PROGRAM " SEQUENCE INS LINE 1 ~rO'P 91011 xF - - - FOR BEG DATE CARD ONL y OPERANDS 1314 15 6.RC I 1 10DI5I SAAL ASSEMBLER CODING FORM PROGRAMMER 34 5 6 7 - 411 COMMENTS 303132 20· 40 I I I I I I I : I I : --.. I I - - J ,7 ,/ --/ XF PUNCH CODE IMAGE: ~PCI Function: This instruction punches the card image located in the Code Image Punch-buffer into an 80 column card. Notes: a.) The Code Image Punch-buffer is 160 locations in length beginning with memory location 293 through memory location 452. Code Image Punch-buffer locations chronologically correspond to car<;l columns. Thus, the data stored in locations 293 and 294 will be punched in card column 1, data stored in locations 295 and 296 will be punched in column 2 and so on. The Code Image Punch-buffer is not cleared following the execution of the PUNCH CODE IMAGE instruction. Once the punch cycle has been initiated, control is returned to the next instruction in sequence and further processing is overlapped during the punch cycle. The automatic XS-3 to 80 column code is suspended. The mnemonic operand field must be preceded by a space. b.) c.) d.) e.) f.) Example: Punch the card image stored in the Code Image Punch-buffer. UNIVAC PROGRAM SEQ U ENe E DATE PROGRAMMER rr:Ae'EL 1L1NE3 ~N~ 6 7 l r-c;p- 91011 XF FOR BEG CARD ONLY OPERANDS 1314 15 ~PC' COMMENTS 20, 40 303132 I I I ) I I I I I - I - - ( I UNIVAC· 1DDai SAAL ASSEMBLER CODING FORM .'Vl............................. ",... I - ~ 2-73 I I I : -.I. I - / ,/ -../ 6RXC XF READ AUXILIARY CODE IMAGE: Function: Read a card from the Auxiliary Reader in Code Image mode. Notes: a.) The READ AUXILIARY code image instruction ,places the prior card read in output stacker No.1. ' All notes pertaining to the Read Code Image instruction (XF RCI) are applicable to the Read Auxiliary Code Image function. The mnemonic operand field must be preceded by a space. b.) c.) Example: Read a card from the Auxiliary Reader in Code Image Code. UNIVAC I UNIVAC •. y,. . . . . . . ._ ......AN. c . . . . . . .,.,... PROGRAM LrnLlO'P 34 5 67 91011 xF - , - - ~DDI5I "- - --- FOR BEG DATE CARD ONLY OPERANDS 20, 13 1415 6.R X C. ( SAAL ASSEMBLER CODING FORM PROGRAMMER SEQUENCE INS LINE 1 e COMMENTS 303132 40 I I I I I : I I : --- 2-74 I I - 1 J ,/ 11/ I ---..,/ I ONE XF !6RXI TWO XF :6RX2 THREE XF 16RX3 READ AUXILIARY WITH STACKER SELECT: Function: This instruction reads a full 80 column card from the Auxiliary Reader into the U1005 input Card-buffer and places the prior card read in output stacker 1, 2 or 3 as designated by the numeric digit in the third position of the mnemonic operand field. Notes: a.) All notes pertaining to the Read Card instruction (XF REA) are applicable to the READ AUXILIARY instruction. The mnemonic operand field must be preceded by a space. b.) Example: Read a card from the Auxiliary Reader and place the prior card read in Stacker 2. UNIVAC .,y,............. " .........._ •• ,. ..... PROGRAM SEQUENCE 1 L1NE3 PROGRAMMER "l'Ai'E'L 4N~ 6 7 l~ 91011 xF -- .- - ( I UNIVAC· 100111 SAALASSEMBLER CODING FORM .......... FOR BEG DATE CARD ONLY OPERANDS COMMENTS 20, 13 4 15 6RX2 .. 303132 40 J I I I I I : I 2-75 . -- I I I : -'. , , I I ,/ ,/ -./ XF PUNCH WITH STACKER SELECT: 6PSS Function: This instruction punches the 80 column card image in the Punch-buffer and places the card being punched in the select stacker. Notes: a.} All notes pertaining to the PUNCH instruction (XF PUN) are applicable to the PUNCH SELECT STACKER command. The mnemonic operand field must be preceded by a space. b.} Example: Punch the card image stored in the Punch;,;.buffer and place that card in the select stacker. yo~.!.~~.!;! I UNIVAC PROGRAM SEQUENCE INS LINE 1 "LA'B"ErlO'P 34 5 67 91011 xF FOR fJ DATE PROGRAMMER BEG CARD ONL Y OPERANDS 1314 15 6pss COMMENTS 20· 303132 40 - - "- .... "'-'-" I J I I I I I I I I ~ I 2-76 ( 1DD51 SAAL ASSEMBLER CODING FORM - 1 I T I., I ~ - l_t ~I ./ / -J XF ltE;AD/READ PUNCH: tJRRP Function: This instruction reads a full 80 column card from the punch unit into the 1005 input Read/Punch Card-buffer and punches a f1+11 80 columns from the output Read/Punch Card-buffer into the second prior card read. Notes: a.} The input Read/Punch Card-buffer area is 80 locations in length, beginning with memory location 293 through, memory location 372. Read/Punch Input Card-buffer locations correspond to card col ... umns, thus a character punched in column 1 will be stored in location 293, a character punched in column 2 will be stored in location 294 and so on. Since the Read/Punch Input Card-buffer locations constitute the area normally reserved for the Punch-buffer, memory locq.tion.~ 373 through 452 are used for punching. Subsequently, any data in the s e locations during execution of the RRP instructiQn will be punched into the second previous card read. As each column is read, it is automatically translated from Hollerith card code to XS- 3. The m.nemonic operand field must be preceded by a space, b.) c.) d.) e.) Example: Read A card from the Read/Punch Unit Station 1 and punch the card in Station 3. CHECK READ Q OUTPUT STACKERS • • • 41!. _____ ~ 4 3 STATION STATION NORMAL SELECT -...... Q 9 ••••• INPUT MAGAZINE READ PUNCH ••••• - - ••••• _ . _ ••••• 1 2 STATION STATION CARD PATH THROUGH READ/PUNCH UNIVAC I UNIVAC DIV'.'ON." . . . . """ ..... ""'0 CO . . .OIll ... .,' .... PROGRAM SEQUENCE INS UNE 1 'L'A'BELl~ 91011 xF . ~DD!51 SAAL ASSEMBLER CODING FORM DATE PROGRAMMER 34 5 67 - - - - e ---,..... FOR BEG CARD ONl. Y OPERANDS 1314 15 6RRP COMMENTS 20, 303132 40 I I I I I : I I ~ 2-77 1 - I I , I I I -'- J ,/ II .... - . ...../ READ/READ PUNCH WITH STACKER SELECT: Function:' XF bRRS This instruction reads a full 80 column card from the Read.! Punch into the U 1005 Read/Punch Card-buffer and punches a full 80 columns from the output Read/Punch Card-buffer into the second prior card read, placing that card in the selected output stacker. Notes: a.) The READ/PUNCH READ ST ACKER SELECT instruction is an offset of the READ/PUNCH READ instruction (XF RRP). All notes pertaining to the Read/Read Punch instruction (RRP) , are . applicable to the READ/PUNCH READ STACKER SELECT instruction. b.) The mnemonic operand field must be preceded by a space. Example: Read a card from the Read/Punch Unit Station 1 and punch and stacker select the card in Station 3. CHECK READ PUNCH INPUT MAGAZINE READ g--- .....9--- ..... -- .....Q---- ..... -- OUTPUT STACKERS ..... 4 3 STATION STATION NORMAL SELECT 1 2 STATION - STATION ~ CARD PATH THROUGH READ/PUNCH I UNIVAC$ "'laos] SAAL ASSEMBLER CODING FORM UNIVAC D'V'.'DIII CII" • • • • • " • • 1110 cO . . . . . . . . . 'ON PROGRAM ~lOP SEQUENCE LINE INS 3 4 5 6 7 1 91011 xF - '" - DATE_ PROGRAMMER .... ---- - FOR BEG CARD ONLY OPERANDS 1314 15 bRRS ( COMMENTS 20, 303132 f 40 I I I I I f I : I I : - I ..... - -'- I J ./ 1/ --./ .' 2-78 XF READ/READ PUNCH CODE IMAGE: 6RRC Function: This instruction reads a full 80 column card from the Read/ Punch unit into the U 1005 Read/Punch Card-buffer in Code hnage mode and punches a full 80 columns from the output Read/Punch Card-buffer into the second prior card read in Code Image mode. Notes: a.) All notes pertaining to the READ CODE IMAGE instruction (XF RCI) are applicable to the READ/READ PUNCH CODE IMAGE instruction. The input buffer is 160 locations in length beginning with memory location 293 through memory location 452. Si,nce the input buffer locations constitute the ar ea normally reserved for the Punch-buffer, memory locations 453 through 612 are used for punching. Subsequently, any data in these locations during execution of the RRC instruction will be punched into the previous card read. The mnemonic operand field must be preceded by a space. b.) c.) d.) Examp~e: Read a card from the Read/Punch Unit Station 1 in code image mode and punch the card in Station 3 in code image mode. OUTPUT STACKERS NORMAL SELECT CHECK READ PUNCH Q 9 INPUT MAGAZINE READ --- Q-- -- ..... ..-- .....•. ..... ..... ..... 4 1 3 2 STATION ~ STATION STATION STATION ~ CARD PATH THROUGH READ/PUNCH UNIVAC •• Vl.' ..... O • • • • • • " . . . . . . PROGRAM ~!r"'QP 34 5 67 1 DATE PROGRAMMER SEQUENCE LINE INS 91011 XF FOR BEG CARD ONLY OPERANDS 1314 15 6RRC COMMENTS 20· 303132 40 ) I I 1 I I I , I J I I I - I - - ..... -- .... ( I UNIVAC~ ~DCE51 SAAL ASSEMBLER CODING FORM c ••••• ~,., ... .... I 2-79 - / I -'. I / ,/ --J HALT: XF 6HLT Function: , This instruction brings the computer to an orderly halt. , -Notes: a.) All I/O functions in processes will be completed before the halt will be effective. b.) If the Ul005 is restarted following a HALT the next instruction in sequence will be executed. c.) The mnemonic operand field must be preceded by a space. Example: Halt the computer PROGRAM $~JlUI LlNf t .CE INS PROGRAMMER mEL'~ 345 6 7 FOR BEG DATE CARD ONLY OPERANDS 20 1314 5 9 Ot1 xF L1HLT 'COMMENTS 303132 I I I I 40 \ • I .1 I "". - -- 7 I UNIVAC· ~aal!l ISAAL ASSEMBLER CODING FORM !!.NIVAC -- I I :, 2-80 I I I 7 -.:::::;;;;T C. INSTRUCTION REPERTOIRE - PAPER TAPE EXTERNAL FUNCTIONS AND CONDITIONAL TESTS 1. PAPER TAPE EXTERNAL FUNCTIONS The Paper Tape Reader and Paper Tape Punch profV'ide the UNIVAC 1005 with the ability to use paper tape as a direct input media and paper tape punch as a direct output media. The reader will accept any form of 5 -, 6 -, 7 - or 8- track tape providing odd-parity checking when desired. The punch will perforate the aforementioned track tape codes providing odd-parity perforating if desired. Paper tape reading and punching operations are controlled by the program. The input area starts with the fir st position of memory module one and will extend for the Tape Block length. Output area is designated to start at 0293 and extend for' the Tape Block length. So that a wide variety of tape code s can be handled, the Paper Tape Reader and Punch functions to transmit or perforate a11. exact image of all or part of each tape frame. This selection is through program control which specifies 80 column read mod~ for 6 data track reading and punching, Code Image mode for 8 tape track r~aping and punching. In the above two modes, the 7th track is available for parity checking and the 8th track for special control. For data processing' the information recorded in paper tape can ,be entered one char acter at a time, 80 char acter s at a time, or a v~riable length block ended by a configuration of 1CDB PROGRAM SEQUENCE INS LINE urnl~· 91011 xF --L , - - Ofl.TE PROGRAMMER 34 5 67 1 I SAAL ASSEMBLER CODING FORM . FOR BEG CARD ONLY OPERANOS 1314 15 ~RP8 '2O, COMfV1ENTS 303132 I 1 I I I -~ , ..... --"'" - 40 I .l.-L...L.,\.......!-1::: 1 2-8Z I I ::::.~I -- I I I I I • .. t ~ I ./ 1 PU~CH-PAPER. TAPE WIT.HOUT PARITY: XF XF ~PPI ~PPS Punch 1 Frame Punch to Sentinel Function: This ·instruction punches a block of tape from the U 1005 C.a:rd Punch ... buffer. The variable length of the block is determined by the3rd character of the mnemonic operand field. Specifically, PP 1 de~ign~tes a I character block, PPS designates a variable length block ended by a configuration of all bits present. Notes: a.) Substituting a frame in.paper tape for a column in the card, all note$ pert.ainingto the P.UNCH instruction (XF PUN) instruction are applicable to the PUNCH PAPER TAPE instruction. On a,PPS instruction, the all bit present character, is not punched. The mnemonic operand field must be preceded by a space. /. ·b.) c.) -:,; .. ~\ ~ Example: ,Punch. a l.;>lock of paper tape up to but not including the sentinel (all bits)." ,. ' ',p~~~~._Y__.~_..__ _N::::::~_.a_II_'_I._SA_A_L_A_SS_E_M_BL_E_R ~~::_G_.FO_R_M--f[ U_". .C_A"._-:_'_ _'_"_.1_' . FOR BEGC;ARD ONLY SEQU~CE -'~j'~ ~~~~O-P-E-R-A-N-D-S~~~-C-O-M-M-E-NT-S~~~~~~~~~~~~~~ " 1~IN'~3 ~~~6 7 "9 10 ~; XF 13141·5 20. 303132 6 P PSI 1 - .1 I . 40 I: L: .1: I I 1 J ~ 1111./ ----~~------~--------------~------~----'---~----~~~ 2-83 i ~l.,lnGh. ;8U!'4'CfI PAPER TAPE WITH PARIl'Y: rvann~ l Pun.~h. ~q S~q~Ii.n~~ Function: This instruction punches a bloGk o£ ta:pe witp. p4dr-pit:r;'ity from the U 1005 Card Punch- buffer ~ ThfF variable l~ngth of the blo~k is defined by the seGond charactel;" pi ~h~ mpemonic qp~ralld field. When punching to ,(but :rot iTlclud~ng) sE1!ntinelr all bfts constitute the ~ en.tillel ~o:n£ig\l~atiop. Note: All note s pe rtaining to the PUN eli PAPER TAPE inst:r;'Q.ctipn are applicable to the fl.bove;nstr\lcti~;n/3. The mnemonic Qpe;t:~nd field mus~ be pl;"~~eded. a. ~p~c~, a.) by b.) Punch a block of pap~r ~ape wftl? o~d""pal'i~y up to b\l.t not ln~ eluding the sentinel (aU bite). Example: If I UNIVAC OlY'.'IiiI"" Q" . . . . . . . . I UNIVAQ~ 1ItJd i • "1' .. ...,0 co ... o •• ".o.,. i i i PROGRAM SEQUE LINE ~-CE INS urnJ~ 3 4 5 67 1 11 I 91011 X F FOR I BEG PROG~AMMER ' , i .. 6psp COMMENTSl • I. I'~ I I • ..... - 'I - -.;............101'" ~ 40 . I I , 1 i 'T ~O~1~2 i , DAlfE Ij ! CARD ON~ y OPE;RANPS 20, 1314 1~ J SAAL ASS~MBL~R COPING FQRM I """"'I" f I • , . I •• i J •• , , 1':1 "!"I"'" 1"",1 '7 ~' J ~/ 2. PAPER TAPE CONDITIONAL TESTS Associated with the UNIVAC 1005 Paper Tape System are two (2) Conditional instructions which allow the programmer to test for parity error and channel 8 conditions. The Paper Tape Conditional Test instructions pertain to Class II anc;l are explained in detail on the following page s. Class II: Class II instructions contain only an "M" address indicating the most significant c;:haracter of an instruction. This format is employed exclusively by Jump or Branching instructions. 2-85 PAPER TAPE CONDITIONAL TESTS: Jump Parity Error: JPE .;rump Channel 8: Je8 M M Transfer program control to the instructi()n stored at M if the condition specified by the",operation code is present. Function: Notes: a.)T,hese instructions are used to test the status of paper tape instructions after execution. b.)I£ thecop.dition tested is not present, control will not be transferred and the next instruction in the testing sequence will be executed. Example: Test results of a previous paper tape read instruction. If the condition is true, transfer control to the routlne labeled ERR. UNIVAC [ CltVI.tON';'''' . . . . . . . . . . . . ",EII cO_""O.""'ClfIoI UNIVAC~ ~aal5 J SAAL PROGRAM SEQUENCE INS LINE 1 rrAB"EL!~ 3 4 5 67 91011 FOR PROGRAMMER BEG CARD ONL Y DATE OPERANDS 1314 15 COMMENTS 303132 20· 40 J I J PE ERR I I I I I I I I I I I I I I I --'. - - - L-..... 2-86 ,/ I I I - - f ASSEMBLER CODING FORM I - ./ -./ D. INSTRUCTION REPERTOIRE - MAGNETIC TAPE EXTERNAL FUNCTIONS AND CONDITIONAL TESTS 1. MAGNETIC TAPE EXTERNAL FUNCTIONS The UNISERVO VI C Magnetic Tape Units provide the UNIVAC 1005 with the capability of reading and writing IBM compatible tapes at densities of 200,556 and 800 Characters Per Inch (CPI). When using more than one unit, it is possible to read or write any six level code at a given density on one or more units, and another code at a different density on one or more other units. Seven tape tracks are read and written; one parity and six data tr acks. Magnetic tape reading and writing operations are controlled by the program. Input/Output areas may be the 1st core position of any memory bank designated by the programmer. Data checking includes character parity, automatically performed by all tape units. In addition to Read and Write instructions, the 1005 .features the Backspace one block, Erase before write, Read at high gain and Rewind functions. The programmer has an option of using odd or even parity. The UNIVAC 1005 is capable of handling up to 2 Magnetic Tape Units. The format of the Magnetic Tape External Functions is slightly different in that a Buffer Directive (See Assembler Directives) and a length (of block) must be employed. The length, which designates the number of characters to be read or written, can be any number from 1 to 961. However, on a write instruction the length must be 5 characters greater than the number of characters to be written. When reading variable length records,. the length must be the largest number of characters to be read. Reading terminates when an interblock gap is encounteredor when the designated length is read, whichever occurs last. When the block length is shorter than the maximum length, the remainder will be space filled. The Magnetic Tape External Function instructions pertain to Class IV and are explained in detail on the following pages. Class IV: Class IV instructions are Input/Output or External Function Commands, and contain a mnemonic code, Buffer (BFn), and length in the "M" portion of an instruction indicating the I/O device, memory bank, and length of operand to be initiated. 2-87 READ TAPE: Servo One Normal Gain XF Servo Two Normal Gain XF Servo One High Gain Servo Two High Gain XF XF ~RT 1, BFn , L ~RT2, BFn , L ~RT5, BFn , L ~RT6,BFn,L Function: This instruction reads a block of magnetic tape into the U 1005 memory. Notes: a.) The number of the Servo from which the data is to be read is designated by the 3rd character of the mnemonic operand field. The BFn mnemonic designates the bank of memory in which the data is to be read. (See Assembler Directives.) Reading starts in the fir st memory location of the designated bank. The L mnemonic is a number from 1 to 961 and is used to determine the length of the block being read. Normal tape operations are in odd parity. An asterisk (*) is placed in card column 15 to designate an even parity operation. To indicate a High Gain Read function, the third character of the mnemonic operand field (Servo number) is incremented by 4. The mnemonic operand field must be preceded by a space (except for even parity). b.) c.) d.) e.) f.) Example: Read a block of tape from Servo 2, odd parity, normal gain and store data into core positions 0962 - 1461. UNIVAC .,y •• ,DN • • • • • • " PROGRAM SEQUENCE INS LINE 1 PROGRAMMER urn!-oP 34 5 67 91011 XF FOR BEG DATE CARD ONLY OPERANDS 1314 15 Ll.R COMMENTS 20, 40 303132 T 2 , BJF 2 ••5.00 1 • ) I I ,/ I I I - - - -- - ( I UNIVAC* 1DD!S I SAAL ASSEMBLER CODING FORM .......... c . . . . . . .,. .... I 0-. 2-88 - 1 I I : .-'. ~i I 11 I / --/ WRITE TAPE: Servo One Servo Two XF XF b.WT 1, BFn, L b.WT2,BFn , L Function: This instruction writes a block of data from the U 1005 memory onto magnetic tape. Notes: a.) The L mnemonic is the number used to determine the length of the block to be written. This number must be 5 greater than the actual number of character s to be written. All other notes pertaining to the READ TAPE instruction are applicable to the WRITE TAPE function. b.) Example: Write a block of tape on Servo 2, even parity, from core positions 1923 - 2122. UNIVAC I UNIVAC* ~aal!ll SAAL ASSEMBLER CODING FORM .,V,.'ON .............. c . . . . . . . . ,... PROGRAM SEQUENCE LINE INS 1 urnJor 34 5 67 910 11 - - -- FOR ( CARD ONLY COMMENTS OPERANDS 20, I J 1 I I 1 ~ I 40 303132 • W T 2 , Bl F 2 , 2 OJ 5 t ~ BEG 1314 15 x F--, - DATE PROGRAMMER 1 2-89 J - J : ...L I I - 1 / IIIJ/ --...-/ J ERASE BEFORE WRITE: Servo One Servo Two XF ~ERl, BFn , L. XF ·~ER2, BFn,L Function: This instruction i~ used to delay the writing of a block on. tape, to insure that a portion of tape is erased before writing on it. This instruction can be used to contin:ue an old file or by-pass a bad spot by backspacing and then writing again with the ERASE BEFORE WRITE instruction (See conditional test - parity error recovery example). Note: All notes pertaining to the WRITE TAPE instruction are applicable to the ERASE BEFORE WRITE function. a.) Example: Erase before write a block of tape on from core positions 1923 -2002. UNIVAC OIVI •• e"" 0" • • • • • ., • • ""'0 DATE PROGRAMMER 'L'AB'ELI~ 34 5 67 1 91011 FOR BEG OPERANDS COMMENTS 20, 1314 15 XF CARDONLY 303132 ~ E R 2 , BIF :2 , 8 5 ,. - - 40 j I I. I 7 I \ I - ., """'-- .... ( I UNIVAC~ ~DDS I SAAL ASSEMBLER CODING FORM c ........ "..... PROGRAM SEQUENCE INS LINE Servo 2, odd parity, ..... I I I I • I I : - 2-90 ..L I - 11111/ .--..,7 BACKSPACE: Servo One Servo Two XF 6BSl XF 6BS2 Function: This instruction generates the backspace of one magnetic tape block (See conditional test-parity error recovery example). Notes: a.) The third character of the mnemonic operand field designates the Magnetic Tape Servo on which the backspace is to occur. BFnJ L is not to be used with this instructio,n. The mnemonic operand field must be preceded by a space. b.) c.) Example: Backspace a block of tape on Servo 1. UNIVAC 01\1,.'0l'1li." • • • • • ., ....... c I UNIVAC ................ PROGRAM SEQUENCE INS L.INE 1 e 1DD151 SAAL ASSEMBLER CODING FORM DATE PROGRAMMER urn lor 34 5 67 91011 FOR BEG xF CARD ONL. Y OPERANDS 6 COMMENTS 20, 13 1415 BS 1 303132 - - - - 40 I I I , , ( I , 2-91 - 1 L J : I I : I J ,/ j -L . - - ,/ ./ REWIND: Servo. One Servo Two XF l:,R WI XF .6R W2 Function: This instruction causes the" tape to rewind to a point past the load point. Depression of the LOAD POINT switch~ following the'REWlND'instl,"uction, causes the tape to advance to the -load point. Notes: a. e ) The third character o£ the 'mnemonic operanclfield designates which Magnetic Tape ServQ is tope rewound. BFn' L is not to be used 'with this instruction. The mnemonic operand field must be preceded by a space b.) c.) 8 Example: Rewind Servos 1 and 2. -- UNIVAC .....--............ ........ IUl\ilVACe ~ PROGRAM SEQUE CE LINE - INS TA'Be'Lt"OP . - 9011 _ .... DATE FOR BEG CARO ONLY COMMENTS QPERANDS 13 415. 303132 ' 20- XF 6 R.W X.F /1,R,W 2, & , I - f SAAL ASSEMBLER CODING FORM PROGRAMMER 3 4 5 67 1 100151 l. ~. l I .. . I : , r " 2-92 I I - I • • . ' L 40 , . I .. I l .• J , .7 ,/ --/ z. MAGNETIC TAPE CONDITIONAL TESTS Associated with the UNIVAC 1005 Magnetic Tape System are two (2) Conditional Tape instructions which allow the programmer to test for parity error and end of tape conditions. The Magnetic Tape Conditional Test instructions pertain to Class II and are explained in detail on the following pages. Class n: Class n instructions contain only an "M" address indicating the most significant character of an instruction. This format is employed exclusively by Jump or Branching instructions. 2-93 1\1 MAGNETIC TAPE CONDITIONAL TESTS: Jump Parity Error: JPE Jump End of Tape:. JET M Function: Transfer program control to the instruction stored at M if the condition specified by the operation code is present. Notes: ·a.) These instructions are used to test the status of magnetic tape instructions after execution. H the condition tested is not present control will not be transferred and the next instruction in the testing sequence will be executed. b.) Exam.ple: Test results of a previous magnetic tape read or write instruction. If the condition is true, transfer control to the routine labeled PAR. UNIVAC DIV'.'ON." . . . . . . ., • • ND I UNIVAC c ....... TION PROGRAM rnEL~OP 34 5 67 91011 - i-. _ .... --. BEG DATE CARD ONLY OPERANDS 1314 15 J PE -- FOR P A,R, COMMENTS 20, 303132 40 I I 1 jJ U M P _1 ) PAR lIT Y I I l~ I , f 100151 SAAL ASSEMBLER CODING FORM PROGRAMMER SEQUENCE INS LINE 1 4D I I 2-94 - l -' ...L I - I I ,/ ,/ ----.,/ MAGNETIC TAPE CONDITIONAL TESTS One method of handling parity error s is as follows: Example: Parity on Read Function IUNIVAC~I0051 SAAL ASSEMBLER CODING FORM PROGRAM _ _ _ _ _ _ _ _ _ __ t-----FOR BEG CARD ONLY SEQUENCE LABEL OP OPERANDS LINE INS 9 10 11 1 3 4 5 6 7 13 14 15 20 ' I , , ·, · , , 0,0,1 , , , , , I,N, DATE _ _ _ __ PROGRAMMER _ _ _ _ _ _ _ _ __ ,D,A,TIA, I \ COMMENTS I ,D,',V,I,S,I,O.NI 1 40 30 31132 .-,L,',T,E,RIA,L, I I , C,T,2 , , , ,, , , , , , , , , , , ,, +,5, C,L,R I , , 0,4,0.0,1, , , , , , , , , , " 'iN, , P , R, , , , , I • I .C.O.U,N,T, E,R, , 1 , , , , I , , I , , , , , , °1C , E ,0, i C 1 T,2,+,2,,(2, , , -. , U" R, E I , I , I , I I , I I , ., I , , , , , I I I , , , , , I , , , J , I I , , , , , , , , , , , , , I , , " , I , , 1 ,, , , , , , , , , , ,D,I,VIIIS,I,O,N, I , , , , ., , , , , , , , , , , I , I , , I ,,, I , , , I , " 0,0,2 0,0,3 , , T,R,D P,T,E , , ·. , , , , 0,0,6 , , 0,0,7 , 0,0,8 , 0,0,5 R, PIE , I I I I , , , I , , , , I IR,E,A~D, , , , , , , I , , , ,, , , , , , I I' ,, , ,,, I , X,F 1 ,HIL,T , I , 1 , 1 , C,L.R , , X, F, ,B, S, 1, X, FI I R, T, 5, "B IF, 2, ' , 3 , 5, 0, , J, P, E $, +,1,0, I J, P , T,E I +,5, , , ,S,E,R,Vlo, ,1 1 ,N,O,R,M, C,T,2,+,2, ,12, , , I I , , I IT,E.S,T, ,F,O,R, IP,A,R,I,T,Y , • 1 " " , , I I , , , X, F. ,B, S, 1.. , • , , , I , , , , I ,, , , , , , , , , , , , , , ,) , , , I , , , , , , ~.- I I f , , , II , , , I , , , J, - , T, R,D, , I , " T I , , , , ,I ,I R, E , P, E, AIT, ,,3, IT, I , M, ' E, S, , , , I H , A, L ,T, ,C , L , E , A IN, ,H, E I A , 0 , , , I II,NIC,R,E,M1E,N,TI ',C, T, RI , I , " I I I , I T , , , , , , , I IR, E , p,' E , A "T, , A , G I A, I , N , , I , , , \ I , , I , , " , , I I 1 I B, A, C, K, ,S, P, A, CI E, ,S, E, R, V, , , , I I R, E, A I 0, ,S , E I R, v I 0, ,1, • • °I 1, 1 ,H, I , G, H, , I , , , , , I " , , I, IR, E,P, E,A , T, ,N,ol R,M,A,L, ,R I E"A, 0, -. I , , , , , , , , , I IC,O,R,R,E.C,T I , I , , I , I , , , I I ,t , I I I B, A , C , K, S, P , A I C , E I I , , , , I I ,, I , , 001 002 003 004 005 006 007 008 009 010 011 012 013 014 , I , I I 0,1,2 SEQNO C, T, 2, I , .L , I , I,C, , , , , , , , , , , , , R, T, E, J1 " $, +,1,,5, 0, 1, 1 0,1,4 I). , I J, L, 0,1,0 , ,(. R,P, E, , , , , 0,1, 3 JIP,E J,E,T I , , , , , , 0,0 1 9 ,R,T t l",BIF , 2, ,,3,5,0, -:J 0.0,4 , , XI F, I I , , , , I , , , , I IT, °, ,T, A, P , E, I -" , S , E, , R J V • R 1E ,A, 0 , , , I °. ,1, , • I .~.- Clear Read Parity Error Counter Read One Block of Tape from Servo 1, Normal Gain, Odd Parity Test for Parity Error Test for End of Tape Increment the Read Parity Error Counter Jump Less to 009 Counter Equals 4, Halt- and Clean Servo Head Clear Counter and Repeat ' Backspace Servo 1 Read One Block from Servo 1, High Gain,Odd Parity Test for Parity Error Correct, Jump to Seq. No. 004 Error, Backspace Servo 1 To Seq. No. 002 , , ,f MAGNETIC TAPE CONDITIONAL TESTS Example: Parity on Write Function IUNIVAC@1005J SAAL ASSEMBLER CODING FORM PROGRAM _ _ _-..-_ _ _ _ _ __ t - - - - F O R BEG CARD ONLY op SEQUENCE LABEL OPERANDS INS LINE 9 10 11 13 14 15 20 1 3 4 5 6 7 I ,, , I , , I I CiT ,1 L ~ I , +,5, -.l , .I,N, ,D,A,TIA, 0,7,0,0,1, I I I ,, I , -' 1 I J , I I , 11 1 , I , , I , 1 1 ..1 1 , I , , , ',N , , I I . ,L.t,T,E,R,A.,L, , , _I I I T , , , , 1 , I I I I .1 , J 40 30 31132 ,D,I,V, II SII,OINI , 'I , , , 1 . I COMMENTS , , , I .C,O,U,N,T ElRI I I I o ,0,1 1 ~ , , , , DATE _ _ __ PROGRAMMER _ _ . . - - _ - -_ _ _ __ J , '1 1 I , I , ,, J ~ ~ .~ , , , IP,R,OIC,EIDIUIR_IE~ ~ D_I , I 1 I I , I I I I I I 0,0,3 0,0,4 , I , , 0,0,5 1 , , , , , , -.l -.l ,, 1 , , , 1 _I , I 1 1 , I I I , I • , I , , , I ,, , , 1 , I I , I I , .CjL,E A,R, ,C ,T ,R I I I , • '..1 V I I IS, , ,0, N J , 1 , , , I C1L"R CiT, 1,+,~, ~12, , , " I I , , I T,W R XI F, , WJ T, 2, ' I B IF ,2 j '1 1 L0.i 0 i i .1 , I IW,RII,T,EI ,S,E,RIV,O, , L I ~ 1 1 1 ..l , I I I , , .1 , I , I T 0,Q.2 , , , , , , , , I I ,2, , , ~ , , ,I I T,P,E , J '1 J,PIE JLE, T 1( , 0,0,6 , , , 0,0,7 I L ~ W,O,T, I I , , , , , , , J, , , , '_LC I C, T, 1, , , WI PjE WI P, EI I I , , II I I, , I IT,E,S,T, ,F,O,R, IP,A,R,',T,y, I I , , , , J J I , , I IT 0. ,E,NID, ,olFI ,TIA,P, EI I 1 I , , , ~11 i , I I ,, , I I , , , I , 1 I ..1 ..1 'J , , , I I , , , I I I I , , I , I , , , , , , I , , I ·1 J ~..l , I II,N,C,R, ,C,T,R, I f J ,L, $, +11,51 , I X, F, ,HI L, T, I I , I ..1..1.J 1 I ~ I , _11 , I I IR,E,PIEIA,T, I Ii IH,A,L,T, ,6, ,, , , , , , , " -, ,, ,\ I , , I , 1 I .i i I i i ,H,E,A,DI ., i " IT,I,M,E,S, ,CIL,E,AIN, , I 1 I 0,0,8 I I .1 0,0,9 , , 1 Xi F, ,B, S, 21 0, 1,0 I I I X1F, , E I R. 2, ' , B IF, 2" 0, 1, 1 , C-.lL, R C,T.l,+,2,,121' , I I I , _11 .1.1 , I IR,E,P,E,A,T, -.l ..l J , , J .1 1.' , I I B, A I C, K, ,S, P, A, C I E I ,S, E, R 1 V ,OJ ..l 2J i , I ,1,0.1 OJ. .1 • • IE,R,A,s ,E, I , I SEQ NO 001 002 003 004 005 006 007 008 009 010 011 Ji - , T, P, E I , I I , , , , .1 i J ., , ,AIGIA,I,N" , I ,B.IE.,Flo,R1E i I I R , E , P, E, A , T, ,A 1 GI A., , L N L Clear Write Parity Err or Counter Write One Block of Tape on Servo 2, Odd Parity Test for Parity Error Test for End of Tape Increment the Write Parity Error Counter (07001) Jump Less to SEQ NO 009 Counter Equals 7, Halt and Clean Servo Head Clear Counter an X Z V Skip Skip Skip Skip Skip Skip Skip Q 1 2 3 4 5 6 7 ) ) ) ) ( 0 @ P R N Read Read Code Image Read Auxiliary Stacker Select 1 Read Auxiliary Stacker Select 2 Read Auxiliary Stacker Select 3 Read Auxiliary Code Image Stacker Select 1 Read/Read Punch Read/Read Punch Stacker Select Read/Read Punch Code Image Punch Punch and Stacker Select Punch Code Image Halt Read and Punch Read and Halt 2-108 CARD COL. 18 ) ) } CARD COL. 19 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ~ ) ~ U U U = U ~ U W W U } U Y W n }:( ) l:1 } y > U ) } ( ) @ } ) ) ) CARD COL. 16 Function Group 2 (contld.) Read, Punch and Halt Punch and Halt Group 3 Read Paper Tape 1 Frame Read Paper Tape 1 Frame Code Image Read Paper Tape 80 Frames Read Paper Tape 80 Frames Code Image Read Paper Tape thr ough Sentinel Read Paper Tape thr ough Sentinel Code Image Group 4 CARD COL. 17 CARD COL. 18 CARD COL. 19 R Z Y y U > > U !1 U Punch Paper Tape 1 Frame Punch Paper Tape 1 Frame with Parity Punch Paper Tape to Sentinel Punch Paper Tape to Sentinel with Parity = 11 II U II = ):1 U 2-109 U 11 EXTERNAL FUNCTION COMBINATIONS: XFC nnnn Function: This instruction augments the individual External Function Instructions. In using this instruction, the programmer as signs the necessary machine codes for desired Input/Output combinations. Notes: a.} XFC is the mnemonic operation entered in card columns 11-13. b.} The machine code operand field must be preceded by a space in card column 15. c.} The applicable I/O function codes are entered in card columns 16-19. To use the table, select all applicable I/O functions to be performed upon execution of the XFC instruction. ExalTIple: UNIVAC O' ....... D ... O .. • • • • • " I UNIVAC~ ~DD!51 .""'0 co •• o."",o ... PROGRAM PROGRAMMER um!~ SEQUENCE INS LINE 3 4 567 1 91011 FOR BEG DATE CARD ONLY OPERANDS 1314 15 XFC ) ) I COMMENTS 40 303132 20 U ( 1 SAAL ASSEMBLER CODING FORM I I' I IRE AD, P RT "1 S P 2 P U,N I XFC . - * i.- -" --- !:Ju!:J) I I I I I I I I : PR T , S P 1 I I I : I I I I R. E AD. • A1U.,x - 2-110 lSE L ,SIT K ,3 --/ ,/ ~ ,/ J ,/ G. INSTRUCTION REPERTOIRE - 1005 DATA LINE TERMINA'L-3 EXTERNAL FUNCTIONS and CONDITIONAL TESTS 1. DLT-3 External Functions The Data Line Terminal-3 is an optional feature to the 1005 that enables the 1005 to communicate via telephone circuits while proces sing. This ability is provided by utilizing independent control and buffering circuitry. Data is transmitted at the rate governed by the modem employed. DLT-3 used by the 1005 may communicate with a 1004 having either a DLT-l or a DLT-3, another 1005 with DLT-3 and any other compatible device. The 1005, with this feature, will process data and transmit or receive data simultaneously. Note: Input/Output operations are specifically excluded from overlap, i.e., do not execute any XF functions between the Send or Receive instruction and the Pause Test instruction. The same principle of simultaneous execution and time - sharing of storage applies to DLT operations as it does to reading, printing and punching, except that DLT-3 is not instruction dependent. Whereas reading and printing are preformed entirely during a single instruction execution, DLT operation can occur throughout many instructions, as does the punching operation. A PTE instruc,tion (Pause Test) ~erves to interlock the processor if the DLT is transmitting or receiving. 2. General Both equipments, to communicate, must have the DLT option. Assutning they are both 1005' s, and have DLT-3, they must both be using the same type of data set. The data sets are used in the half-duplex mode, i.e., communication can be in one direction only, at one time. Both the transmitting and receiving functions "may take place independently of, and concurrently with data proces sing functions. The maximum rates of data transmission are: the 201A Data Set - 2000 bits per second; the 201B Data Set": 2400 bits per second. The DLT circuits' use a 7 - bit character - 6 data bits and 1 parity bit. The DLT-3 storage area is simi-fixed, and of variable length. The beginning location is Module 1 po sition 0435. The ending location may be Module 1 position 0434 with automatic wrap around from 0961 to 0001, i.e., transmission is fixed to 961 characters. The transfer from. DLT storage to the Data Set will be descending in a continuous sequence. The message length is controlled by the program when transmitting. When receiving, the End of Message character received will 2-111 halt the descending locations. The send/receive buffers, maybe used for internal processing. Precaution should be observed to prevent internal processing from prematurely changing the data to be transmitted (or the Data received). A prescribed transmission format must be used in all communications. The message (useable data) must be preceded by a least four synchronization characters (the letter S in UNIVAC XS-3 code); and one character of no bits. The Send 80 message must be followed by an End of Message character (the letter B in UNIVAC XS-3 code); and one character of no bits. The Send through Sentinel message must be followed by a sentinel '\\ ". . character, (the character) in UNIVAC XS- 3 code), an EOM character and one character of no bits. The storing of these characters is the responsibility of the programmer. All of this information must be in the storage area beginning at Module 1 position 0435 during each transmis sion. When receiving an 80 character transmission from another 1005, only the message (useable data), the EOM character, and the Longitudinal. Parity character will be stored in the sequentially allocated DLT storage area beginning with Module 1 position 0435. When receiving more than 80 characters from another 1005, the message, the sentinel character, the EOM character and the LP character will be stored sequentially. The LPC is automatically placed in the no bits position following the EOM character by the transmitting 1005 and will vary depending upon the total bit content of the message. Receiving will terminate automatically when the EOM and the LPC characters are stored. Error detection is provided in the form of transverse parity, longitudinal parity, and incomplete-message checking. In the event of abnormalities, an error signal is provided for the program to test or ignore. The error instructions should be used to alter the program sequence to effect corrective action. 3. Transmitting Before each transmission, the message data is assembled in DLT storage: 1) The program must place four synchronization characters (letter S UNIVAC XS-3 code) initiated in the data division in Module I positions 0435 through 0438. 2) The program must place a no-bits character (Space, UNIVAC XS-3 code) in Module 1 position 0439. 2-112 3) To send 80 characters, the program must place the message (useable data) froIn Module 1 positions 0440 to 0519. No Sentinel is required and the char"acter If)" is permissible within the message. 4) To send other than exactly 80 characters, the program must place the message from Modu.le 1 position 0440 to any length less than 955 positions with a Sentinel immediately following the last character of useable data. The character ")" is not permissible within the useable data. 5) The program must place an End of Message character, (letter B UNIVAC XS- 3 code) initiated in the data division) immediately following the last character of useable data in an 80 character message and immediately following the Sentinal character in all other messages. 6) The program must place a no-bits character (Space, UNIVAC XS-3 code) immediately following the End of Message character. The 80 character message area per transmission is therefore at least six locations greater than the message length and all other are seven greater. Illustrated in Figure 1 is the format of a DLT-3 message and the al-' location of DLT- 3 storage. FIGURE 1 COLUMN 123456789 - - - - - - - - - - - - - - - - - - - 31 .l)BA ROW r 15 SSSSAt)B 16 The message could 17 II II " II " II ,B..6. occupy this single location or could extend Ito 0519 f or an 80 character message~ or to any other location 31 2-113 \ J After assembly of all information based on the above recommendations, utilization of the transmit instruction may be effected. 4. Receiving No receiving format is required and any information in the receive area will be overlaid by the incoming message. The first character to enter storage in the re ceiving 1005 will be the first mes sage character. The synchronization character s and the Start of Me s sage space, initially transmitted by the other machine, will not enter storage. The first message character will enter Module 1 position 0435; all remaining message characters will be stored in a continuous descending sequence. The Sentinel or End of Message character will enter the location following the last message character. The Longitudinal Parity Character will follow the EOM charac~ ter in storage. A Receive operation is accomplished by the Receive DLT to EOM instruction. Once the receive operation is initiated in this manner, the 1005 may proceed to succeeding instructions. The DLT circuits will wait for the first character and then store the message as it is received. When the LPC is received, this character is automatically compared with an LPC that is generated by the receiving 1005. Regardless of the results of this comparison, the LPC enters receive storage in the location following the EOM character. Upon entry of this character, the receive operation terminates. 5. Error Conditions An error signal is available for testing should any of the following occur during a Receive operation: 1) One of the mes sage cha.racters is of even parity, and is not the EOM character. 2) The Receiving DLT does not synchronize on any of the synchronization characters. 3) The Receiving DLT does not complete the Receive order within 15 seconds. 4) The received LPC does no't agree with the generated LPC. 5) The EOM character is not detected, or is incorrect. Of the above five error conditions, the first one will result in less than expected storage used, with the properly received message characters in their respective locations, followed by the improper character. The 2-114 second error type will result in nothing being entered into Receive storage; after 15 seconds the Receive operation will terrninate. The third condition can be caused by no transrnission, and will result in nothing being entered into Receive storage. The fourth condition will result in all expected Receive storage being filled, and an irnproper LPC. The fifth error type rnight result in rnore than the allocated storage being used. If the EOM character is received as an odd parity B, due to los s of the parity bit, it will be transferred to rnernory and the DLT will continue to look for rnore data. If the LPC also happens to be of an odd bit configuration, this too will enter Receive storage. There should be no further data reception, but noise in the transrnission systern rnight result in the reception of another erroneous character, which wil~ be entered into storage. Thus, one location rnore than expected rnay be used. 6. Instruction For~ats External Functions SENDDLT 80 CHARACTERS: ~SN8 XF This instruction sends 80 characters frorn the DLT buffer via telephone circuits to any other cornpatible device. Function: Notes: a.) The rnessage forrnat must be cornpleted prior to this instruction. b.) No operand is specified. c.) The mnenornic operand field rnust be preceded by a space. Example: Forrnat the message and transmit 80 characters. op SEQUENCE LABEL LINE INS 9 1011 13 14 15 3 4 5 6 7 1 L I ,, , , , I I , t .1 I , I , , I I , ,, , I , ,, , 1 I , , , I , I , I , , , SIYI N , , , , I I +1 4 , ,, , , 20 liN I I I , I , I , , 1 I \ I ,'D, I ,V, I • S, I, 0, N 1 I I , I I l 1 I , , ,, , I , , I , I , , I , , I , I , I I I , I I , , , , I , J I I I I I , . , I L I , , , , , I , I , , , , I I , 1 IN, I PI R, 0 I C IE, Dl U t RL E I ,D,I,VIIIS,IIOiNI L,A,l P,T,E S. Y ,N, ' 14 I I I , I , I I , , I , '1 , , I , , , , , S,P,R B,U I F,+,5, '18,0, , , , , , , , , , , , I I , , , ,, I I I , , S ,C, B, U, F , + , 8,5 , ' , 1 , ,B, , I SJA,l S ,C, L,P,R , , , , SIC, , , X,F, f , I I I I ,, , , , , , I I , , , , , I , I I 1\ " C, H IRLS~ , , , , , , I , I , I I , i I 11 I , I I , , , , , , , , I , ,, I I 1 IS, Y, N I C I H, R, 0, N, II Z I A I T ,I ,0, N, I , , I B, U, F, ,,4, B, U, F, + 14, , , I ,,' 1, C,R I D,+1 8 101 , , B, U I F 1+,8,61 ' I 1 , .i S 1 NJ 8, , , I I I , , , , ,,, 2-115 , , I I IS,S,S,s, ,T,O. ,SIE,N,D, I I I IPJA.lU.lS,E, , 50 40 30 31132 IDIA,TIA, SI SIS, S, I I COMMENTS OPERANDS , , ,ALRiEIA.l , ~ 11 I I JA1 T1 1°,4,3,5, 1 IS,E,N,D, ,A,RIEi A , I ,T,E,SIT, I , I I I , 1 IB,U,F, ,S,T,A,R,TIS, I , I IS P,A,C,E , I , I 1M I , , ° VIE, ,T,O, ,M,E,S,SIA,G,E, ,T,O, 1 IS,EIN,D, ,A,R,EJAI , , , , I I IE, 0, M, , C, H I A, R , A I C', T , E , R I I , , 1 , I , , , , ,A I DID I E 1 D ~ I , I , , I I , , , I JT J R 1 A t N,S,M 1 1 ,T, 18 I ° I ,IS,P,A,C,E, -- ,A,F,TIE,R, ,E, 0, M, , IC,H,A,~,. -- , , t ,/ I 7' I SEND DLT THROUGH SENTINEL: Function: XF .1SNS This instruction sends from 1 to 953 characters from the DLT buffer via telephone circuits to any other compatible device. Notes: a.} The message format must be completed prior to this instruction. b.} The XS-3 character "}" must immediately follow the message and is not a permissible character within the useable data. c.} No operand is specified. d.} The mnemonic operand field must be preceded by a space. Example: Format the message and transmit 132 characters. t SEQUENCE OP LABEL LINE INS 9 10 11 13 14 15 1 3 4 5 6 7 ,, , , I i ..1 I COMMENTS OPERANDS 20 I ,N I ,D, A, T I A, ,D, IJ VI I t S..1 1..1 01. N I I I 50 40 30 31b2 , I , 1 , I , , I , , , , , ..l ..1 ..1 J I , , , , I , , , , , , , , , , , , , , I S, Y ,N ,4 I , , , , , , , , , , ,, , I , , , S, S, s, S, , I , , I I I I I , , I I I I , , , I , I , I , I , , , I , , I , I I , , , , , , , , I ISIYINICIHIRIOINIIIZIAITIIIOINI I I I , I ,, I I , , , I , , , , , , I , ,P,RIOICtE,DtUl.RJEL _lD,I,VII.S,I,O,N, , I I,N, , , I , , , , , , , , , , , , Pi T...l E S ,A, 1 S, Y ,N, ' ,4, I , , , , , ' ,4, ,SIE,N,D, I , , , , 1 I , , 1 , , I , , i ...L i 1 i ,A,R,E,A , i I , I , , , , , B, U, F I , , , I IS,S,S,S, ,T,O, i I C I HI RI S I I L, A, 1 1 I , , I , I , , , , I , , , I ,P,A,U,S,E, ,T,E,SITi II I i1. ...l _1 I I I I , , I I IB,U,F, ,SITIA,RITISI I IA,T 1 1 0 1 4 1 3 1 5 1 1 ...l I I , , , , , , , , , , S,P,R , , , , , , M,E,S,',1,31 2 , , , , , B U,F,+,5,'11,3,2, , , , , , I , , , I sJc..l B,U,F,+,1,31 7 "1 1 t i ) ' I 1,1 IS,E,N,D, ,A,R,E,AI , , , , , I I , , I I I I .S,E,NITII,N1E1L, I~~~~~ iM..l E..1 Sl slAi G , , , , , S ,c, B,U,F,+,1,31 8 ",1, ,B, I , , 1 I IE,o,M, , , , I , SICI B I U,F'+1 1 ,31 9 "1 1 , I , 1 I 1 L 1 , I , , X/I I I , , ., I , , I , I ~-" I i S...l C, L, P...lR B,U,F,+,4,'1 1 , I , , I I .S,P,A,C,EI1T10 1 I S I EI NI DI I I IM/O,VIE, I AI R I E I AI ,M,E,S,SI A I G ,E'I T ..l°1..1 ..1 J I I I 1 i I I - ,s, N, S, I , , I I , - , JS,P,A,C,E, ,A,F,TIE,K, ;T,R A,N,S,M, I IT, !. 2-116 ,C,H,A,R,Alc,T,E,R, - I 1 , t t , ,EIO,M I J , 11 1 1 ,3,2, - _1 i ,C,HIA,R,.~ - RECEIVE DLT TO EOM: Function: XF ARCD This instruction receives data from. the Data Line Term.inal. Notes: a.} The first lllessage character will enter Module 1 position 0435. b.} Message characters will be stored in a cQntinuous des cending sequence. c.} No operand is specified. d.} The m.nemonic operand field must be proceded by a space. Example: SEQUENCE LINE INS 3 4 1 LABE~ Receive to end of message. t OP 13 14 15 9 1011 5 6 7 XI F, 1 1 1 ~ 1 I I ~ ..l I lL I I I ~ I I L 1 ~ --'. I ~- ~ 20 ..l I I I I I I _1.1 1 ..l 1 .... ..l I I I I I I COMMENTS I _\ 40 30 31132 I LR.C,O, 1 l I OPERANDS I ..l--1..l.l.1 -' -.t..l..11 --.R..lE-.tCJE11, V,E~ -.lTl0.1 ~EIOIM..l ..l ..l I I ~. ~ • I I ..l .1 ..l J Jj ~ I .1 --'. --'. ~--~ I I I I .IL .L I I I .1_L--'.11~--'. I I I I I I I I 1 t • , I I ----- I II ~ _1 _I I I I .1 -.l 1 I I I lL I 1 J..l I 1.1 I I I - In the example above, the 1005 could receive from 1 to 953 characters. 2-117 ., I I i I l ..l ..l ,f -' 7. Instruction Formats Conditional Tests Associated with the DLT-3 system are three (3) conditional instructions which allow the programmer to test for ready, interlocked and error conditions. The 1005 DLT-3 Conditional Test instructions pertain to Class II and are explained in detail. a) Pause Test: PTE b) Function: This instruction tests the ready status of the DLT-3. Control will not be transferred to the next instruction in sequence if the DLT-3 is still active. Notes: a.) This instruction is given following a transmit or receive command and prior to the first transfer of new data into the DLT buffer. b.) This instruction insures that information will not be transferred into the DLT buffer while it is in the proce s s of transmitting 0 r receiving. c.) Optimum utilization of the Pause Test instruction will provide the maximum overlap of processing with DLT operations. Test the DLT buffer before Inoving the incoming message to print area. Example: SEQUENCE LINE INS 3 4 1 • I , 1 ~ ~ - LABEL I • • I _L OP 9 10 11 567 • t • I P.TIE L.P.R I , , . , , I • I ----- • 20 I I • I 30 31132 I •• B,U1F. ,,8,° 1 I , I • I I I , I , •• , , • I ~ 40 I ,P.AIU I s.E. ,TIE,Sp •• • I , •• ,1 I J .M.E S,S.A,G,E, ,TIO, ,P,R,I,N,T. , I • I I COMMENTS OPERANDS 13 14 15 - I I I , I' , I I I I , , • J I •• I I , I , - I I I I I • , , , , , , , , I I I • I , J I , , I I I • I I ; 2-118 , I I I , I I I I I I I L I , , I , , I I , I , I , . I , I I I , • , I I • I I I I I , I , • I ~ I I I JUMP END OF TIME: JET M JUMP PARITY ERROR: JPE M Function: Transfer program. control to the instruction stored at M if the condition specified by the operation code is present. Notes: a.} These instructions are used to test the status of the DLT-3 after execution of send or receive. If the condition tested is not present, control will not be transferred and the next instruction in sequence will be executed. Do not issue any Input/Output instructions between the receive instruction and the JPE instruction. b.} c.) Exam.ple: SEQUENCE LINE 1 I LABEL OP 5 6 7 9 10 11 _l I _I JIE1T J I PIE I I I I I I 11 I I I I -- I I - I I 13 14 15 I I I COMMENTS OPERANDS INS 3 4 1 Test the status of a previously executed Send or Receive instruction. If there was an error in the m.essage or no m.essage received in 15 seconds, transfer control to the routine labeled ERR. 1 1 I 20 E 1R I E I R, RI RI I I I I I I I I I I I 1 I 1 I I I I I I I{ I I I I 1 I 1 I I I I I I I • I I I I 1 1 it I 1 1 1 1 I I I I I I I I I I I I I I I I I I I I I I 1 I I I L J I 1 I I I I I I I I I I I I I I I I 1 I I I I L 11 I I I I I I I I I I I I I I I I I I I I \ 40 30 31132 I I J • I I I I I J/ 1\ J CHAPTER 3 1005· SOFTWARE I. THE UNIVAC 1005 SINGLE ADDRESS ASSEMBLY SYSTEM Associated with a programming system is a machine language program called an Assembler. The Assembler accepts a program written in symbolic language (source program) and converts it into machine language (obj ect program). The symbolic language used by the UNIVAC 1005 Card Proces sing Systern is single addres s in design and is intended to provide an easy to learn, easy to use tool whereby data processing requirements can be translated into machine coded instructions. The machine language program or assembly system associated with the UNIVAC 1005 symbolic language is called SAAL (Single Address Assembly Language). This assembly system consists of two passes, SAAL 1 and SAAL 2. A. SAAL 1 (Illustration l) Trial Balance Sample Program P2-4 -----.- ..--.----.. - - - - - - - - - - - - - - - - - - - - - - - - - - .. ~ The first pass, SAAL 1, relates each symbolic reference (label) in the symbolic program (source program) with its appropriate position in co·re memory. This relationship between symbolic labels in the source program and core memory position is retained in memory and utilized in SAAL 2. This relationship is commonly referred to as the "TAG" or "LABEL" Table. 1. Card Input - Original Symbolic Program The Symbolic Input Card format is as follows: Card Columns Description Sequence number Sequence number (insert) Label Operation Operand Comments Program 1. D. 1- 3 ~, 4- 5 7- 9 11-13 - 31 ':0:'32 -48 ~:o:'l5 62-65 * Two labels are prestored, ARI and AR2. The programmer can reference these labels without prior definition. ** Literal instructions use columns 15 -48 to generate constants. 2. Output a. Punched Card - None b. Printer - Listing of the label table relating each symbolic reference (label) in the symbolic program (source program) with its appropriate position in core memory. 3-1 The Label Table Listing format is as follows: De scription of Fields SEQ # LBL LOe ERR - From source program From source program As signed location of the label in memory> Assigned error codes NOTES - Pos sible errors are as follows: 1) ERR NO BEG eRD is printed, paper is advanced to the next page and the program halts - Indicates the BEG card does not precede the source program. 2) ERR OP IN DATA DIV is printed, paper is advanced to the next page and the program halts - Indicates' an illegal directive, data description, literal or comment punched in the oper ation field. 3) DUP printed under ERROR heading - Indicates a duplicate label and is not stored in the label table. 4) >148 printed under ERROR heading - Indicates the maximum number of labels has been exceeded (148 labels). 5) OVM printed under ERROR heading - ..Indicates the maximum memory has been exceeded (3844 positions). 3-2 3. LABEL RESERVATIONS - The following labels are used by the SAAL Assembly System to define specific I/O functions. The programmer should exercise care that labels referenced as an external function {referenced in an XF instruction} are not duplicated as a line reference point or operand. SK2 RPH RPS WTl SN8 SK4 RCI RP8 WT2 SNS SK7 PCI PPl ERl RCD REA RXI PPS ER2 RPR RXC RP2 RX2 PIP RW2 RPP RX3 PSP BSI PRI PSS PR2 RRP RTI SII PR7 RRC RT2 SI2 PUN RRS RT5 RII HLT RPl RT6 RI2 RWI BS2 Example: The following coding will cause a duplicate label. XF REA B. LAI REA FDI SAAL 2 (ILLUSTRATION 2) TRIAL BALANCE SAMPLE PROGRAM P2-4 The second pass, SAAL 2, interprets ~ach operand field in the source program, determines its length and core position using the "LABEL" Table generated by SAAL 1, and produces a UNIVAC 1005 machine code object program deck. In addition, a one for one listing is prepared equating each symbolic line of coding in the source program with the gener ated machine code. 1. Card Input - Original symbolic cards. 2. Output. 3-3 a. Punched card - A one for one object deck which contains the original symbolic coding with generated pseudo -m.achine code and the UNIVAC 1005 machine code. Preceding this deck one load card is punched. Card Columns Description 1-48 49-51 Duplicated from input card Card Code - Machine coded card column relating to the storage of data from the card. Instruction - Machine coded instruction. The first position is the operation code and the next four are the operand. After every six instructions an addi .... tional character is assigned to indicate the next row. Instruction address - Machine coded instruction address for each literal and instruction .. Duplicated from input card. 52-57 58-61 62-65 b. Printer - A one for one listing of each instruction written, in three different formats, the symbolic (original instructionL mnemonic (actual instruction), and machine (coded instruction) language. The Machine Coded Listing format is as follows: Description of Fields SEQ# LBL OP OPERAND COMMENTS IDENT LOC - OPERAND - ERROR clc - INSTR - From source program From. source program. From source program From source program From. source program From. source program Assigned pseudo address for each literal anQ in s truc tion. Assigned pseudo address for the beginning and ending locations of each operand. A$signed .error codes Machine coded cardcolum.n relating to the storage of data from. the card. Machine coded instru.ction. The first position is the operation code and the next four are the operand. After every six instructions, an additional character is assigned to indicate the next row. 3-4 Description of Fields LOC - Assigned machine coded instruction address for each literal and instruction. NOTES ;.. Possible errors are as follows: 1) Program Halts after first card is read - Indicates BEG card does not precede source program. 2) I 0 ' printed under 1st position of ERROR heading - Indicates an illegal operation code. 3) IE' printed under 2nd position of ERROR heading - Indicates an expression error, i.e. operand which is less than 0001 or greater than 3875. The most frequent cause of error is an undefined label. This type of error will print 6530 under the OPERAND heading. 4) ~ printed under 3rd position of ERROR heading - Indi- cates a precautionary warning, i.e. an instruction greater than 10 or 21 characters utilizing ARl or AR2 respectively. 5) I S I printed under the 4th position of ERROR heading Indicates a sequence number error. C. Trial Balance Sample Report P2-4 (Illustration 4) This program prepares a Trial Balance Tabulation and punches Trial Balance cards utilizing sorted General Ledger Account cards. 1. Card Input - Sorted General Ledger Account cards. The Input Card format is as follows: Card Columns Description 1 Type Determine card columns of amount field. 1/1 indicates amount in Cols. 59-68; 2/1 indicates amount· in Cols. 70-79. 6- 7 Program Number Major control for this report. Each control break prints the amount accumulated and is reset prior to the next total being accumulated. Card Col. 7 is not printed. 55-58 Account Number (Note 1) Minor control for this report. A Trial Balance Summary card is punched for each Account Number. 59-68 Account This amount is accumulated if the card contains a "1" in Col. 1. "I" (Note 2) .., c: Card Columns Description 70-79 Amount " 2" (Note 2) Remarks This amount is accumulated if the card contains a "2" in Column 1. NOTE I - An "X" overpunch in Col. 55 indicates a credit account and the amount is accumulated in the credit field. NOTE 2 - An "X" ove:~'punch in Col. 55 or 70 indicates a credit amount and is accumulated as such in either the debit or credit account field. 2. Output a. Punched card - A Trial Balance Summary Card is punched for each Account Num.ber within Program. Num.ber. Card Column Description 2- 5 6- 7 55-58 59-68 Julian date Program Number Account Number Am.ount b. Printer - Trial Balance Tabulatioll The Trial Balance Tabulation form.at is as follows: Description of Fields P# ACCT # Debit Credit Cumulative Balance - II. From input From input Accumulated and printed on control break Accumulated and printed on control break Accumulated and printed on control break The UNIVAC 1005 Single Address Report Generator SARGE, a problem oriented programming system and report program generator, is designed to reduce substantially the tim.e and effort necessary to translate general data processing and reporting requirements into detailed computer instructions. It demands little knowledge of computer coding or instructions other than the basic rules for writing in the simplest form of the SAAL assembly language. Essentially, the SARGE report program generator is a program which, on the basis of a series of statements provided to it, produces another program which will produce a report or other output of the desired kind. These statements, written on the standard SAAL coding form and then keypunched into cards, 3-6 provide the formats of the input card files (these contain the information from which the repqrt is to be prepared), the format of the output to be produced (this may be a printed document, a series of summary cards, or both), and the operations to be performed (arithmetic operations, data movement and editing, control, input/output operations). The input and output format descriptions and processing statements will, in conjunction with SAAL, produce an efficient ready to run object program .. Also provided is a listing of source input and the object coding generated. Sections of programmer1s own code may be included as necessary. A. SARGE 1 On the first pass SARGE 1 reproduces the symbolic program (source program) as comments cards. For each reproduced comments card, one or more SAAL statements are generated. Any card not recognized as a SARGE statement is reproduced without change. 1. Card Input - Original symbolic program The symbolic input card format is as follows: Card Columns Description 1-3 4-5 Sequence number Sequence number (insert) Label Operation Operand Comments Program identification ~:c7 -9 11-13 15-48 32-48 62-65 ~:~The following labels are reserved for the generator and may not be used by the programmer: AR1 AR2 HLT PR1 PR2 PR7 PUN REA RPP RPR SK2 SK4 SK7 XXX X01 thru X99 2. Output a. Punched Card - SARGE input reproduced as comments cards with associated SAAL statements. b. Printer - None 3-7 B. SARGE 2 (Illustration 4) Trial Balance Sample Program P2-4 The second pass, SARGE 2, produces the pseudo-machine code for all labels describing the input/output buffer areas. The length is added to all labels describing constants and working ~torage. 1. Card Input - Output cards from SARGE 1 2. Output a. Punched card - A complete program deck ready for the SAAL assembly. Description Card Columns 1-5 7-9 11-13 15-48 32-48 62-65 Sequence number beginning with Label Operation Operand Comments Program identification StJtJtJfJ b. Printer - A listing of the source input preceded by an asterisk and the obj ect coding generated. Print Positions 1-5 7-9 11-13 15-48 32-48 62-65 Description Sequence number beginning with 5 tJtJtJtJ Label Operation Operand Comments Program identification NOTES - Possible errors are as follows: 1) An E (print position 85) printed to the right of an inpv.t/ output label definition indicates that the maximum of 68 input/ output labels has been exceeded. 2) An E (print position 85) printed to the right of a constant or working storage definition indicates that the maximum of 5tJ labels has been exceeded. III. UTILITY ROUTINES A. CONDENSE Condenses obj ect programs produced by SAAL 3, consolidating 6 instructions to a card. All literal instructions are punched one for one. 3-8 1. Card Input - Object program produced by SAAL Z in the same sequence. 2. Output a. Punch Card - Consolidated object program Card Columns Description 1 - 3 15 - 48 49 - 61 Sequence number Consolidated instructions or literal Machine Code Program 1. D. 62 - 65 b. Printer 1) Successful termination - END OF PROGRAM is printed, paper is advanced to next page and the program halts. 2) Pos sible error s are as follows: ERROR NO BEG CARD is printed, paper is advanced to next page and the program halts. This error indicates the BEG card does not precede all object cards or does not immediately follow the load card produced,from SAAL 2 (2nd object card) • ERROR INCORRECT INSTR CODE is printed, paper is advanced to next page and the program halts. This error indicates an instruction stored in an invalid location. All instructions must be stored beginning in Columns 1, 6, 11, 16, 21 or 26. The most frequent cause of this type of error is incorrectly repunching an object program card. Notes: 1. The Program 1. D. from the BEG card is gang punched in all succeeding cards. 2. All condensed cards are numbered successively beginning with 001. 3. The cards to be condensed must be in the correct sequence. 3-9 B. MEMORY DUMP (nlustration 5) Each row of core memory is printed in sequence with a row and bank identification annotated. 1. Card Input - Memory dump object program 2. Output a. Punched card - None b. Printer - Memory listing NOTE - Data in the print buffer will be printed as the first line across the page and data in the read buffer will be lost. The only memory that will be printed is the memory addressable by the programmer. C. READ-PRINT-PUNCH Produces and prints each card, column for column, in the first 80 positions of the printer. 1. Card Input - Any data cards 2. Output a. Punched card - Reproduced data cards. b. Printer - 80/80 listing of data cards. NOTE - Punching will be suppressed when alternate switch 4 is on. D. NUMBER IT Re-numbers program cards with option of gang punching new program identification. 1. Card Input - Source or object program cards. 2. Output a. Punched card - Duplicate input cards re-numbering them starting with 001 (Cols. 1-3) b. Printer - None NOTE -To reidentify a program, precede the program cards with a header card punched as follows: Card Columns 11-13 Card Columns 62-65 3-10 ~:~** New Program 1. D. E. DUPLICA'rE Reformates and prints any 80 columns of information in any other 80 columns with or without gang punching. 1. Card Input - Any data cards preceded by four header cards (see notes). 2. Output a. ::punched card - Reformatted data cards b. Printer - 80/80 listing of reformatted data cards NOTES: 1. The fir st header card contains information that is desired in all the following cards. If gang punching is not desired, this card must be blank. 2. The second and third header cards are divided into eighty sequentially numbered fields of two columns each. These cards describe the output card by indicating the column from which the input will be transferred. For example: Punch With Card Column 01 Blank 1- 2 3- 4 5- 6 7- 8 9-10 11-12 05 04 03 06 ! 15J160 80 Will reproduce the card identically to the original except that Cols 3 and 5 will be punched into Cols. 5 and 3 and card column 2 will be blank. 3. The fourth header card is literally a duplicate of the card that will be recognized as a sentinel. For example if a blank card were introduced as the fourth header the program would terminate when a second blank card was read. 3-11 4. Printing may be eliminated by changing the Duplicate obj ect program. Column 16 of card number 43 (Cols. 4-5) may be changed from A to } and Column 31 of card number 45 may be changed from E to }. F. CLEAR Clears Bank 1 thru 4 core to spaces 1. Card Input - Clear object program 2. Output - None 3-12 ILLUSTRATION 1-1 REFER TO CHAPTER 3-I-A SAAL 1 1st PASS OF ASSEMBLY SYSTEM ~t.w !J04+ L.BL. L.O(; FOl OUOl UOt) 1'03 0001;) " \JOb 1'04+ Ou5t) !JOI FOt) 005'i 001t FOb 0070 010 "'No 0161 016,+ 01.1. ACl 01<: UE~ 017~ 013 CRt. 0188 Ul4+ ~AL. 00!3b Olb '"'UN 0,'i3 0294+ 01"1 UTt. Olb PNU 0~9b Ul~ AeN 034+1 02u AMI 0351 02ic: UAT 0081 U2') (;Nl 0080 U24+ uL.H 009u U25 AS~ 0091 U2b HLu 009~ U21 PV OU9b 020 lU1 009b 02~ lOo 009~ u3u lNU 0100 u31 ~RT 010l U3b HDl 0373 03~ 110, 0380 u .. O HD3 0390 0 .. 3 ACl 04+17 U.... Ae, 0,+81 U'+:l Ae,:, 0 .. 91 U.. b Ae4+ Oll01 u .. , Aeo 0t)17 U'+b ~Tu 0527 u5u ~Tl 052b U5,+ FSI Ot)4+b U5b KTo: 055'1 Ub'+ uN ObOU Oblu UOb MOl u70 NXl Ob51 U1H MOO: 007~ UB.) AL.I Ob9t1 U85 i'10.) 0101:1 UB~ (;ON 074!~ 10'+ t.Z 0807 110 1111 Otl3t1 11b 1'10" 080'1 130: KTN O~5J. .1.33 M05 095b 131:1 tiKl 0980: 15.) yY lUbU 15';1 IH .. lu91 .I.1u bKc: 11'+1:1 .I.1b OF.: 11N 18,) TAb 1<:15 18,+ OFL 122u 19.) L.ST 120b EHR ~AALl P2 .... SAAL 2 2nd PASS 0 F ASSEMBLY SYSTEM ~E\,j R L..BL.. oP IDEN Loe eOMMF.NTS UPt:.RANLJ ILLUSTRATION 2-1 REFER TO CHAPTER 3-I-B OPERAND ERR etc INSTR SAAL :'I Loe P2-" 152HA 00J. P2-4 1'i2HA UO~ P2-4 1"i2HA OOj HlJ.- uo<+ I-Oj - b P2-4 1"i2HA uO:> 1-0.. - ~5 P2-4 1"i2HA UOb I-U~ - ~9 P2-4 1'52HA 001 fOb - 70 UOb P2-4 1"i2HA P2-" 152HA PRT P2-4 1<;2HA UO':l I-'Nu- u1u ACI- UU uEb - 12 P2-4 l'i2HA u1~ loRt. - 2E1 P2-4 1'i2HA u1j tlAL.. - 16 P2-4 1<;2HA u1.. P2-4 152HA P2-4 l'i2HA peH u1:> t'UN- P2-4 1"i2HA U1b uTI:.- P2-4 1 'i2HA u11 t'Nu- U1d /leN - ~5 P2-4 1'i2HA 01':1 AM) :>9 P2-4 1 'i2HA u21 uAT +4 u2~ I.N) U2j uLk +1 - P2-4 1<;2HA P2-4 1'i2HA ORb UOtll +5 O 2 P2-4 one5A II B n\n? P2-4 OOynA 8 B '13n3 n9n9 u2<+ IISI\ +1 P2-4 0091A 8 B u2:> t1Lu +4 AeCT 1,0 P2-4 OnQ2A 8 B OEII) U20 t'V +2 CUL~ P2-" UOQhA 8 B 11044 U2d 101 +1 P2-4 on9RA /I B 41 III U2<; .LOu +1 P2-4 OOQ9A 8 A 111111 u3u INl.; +l P u373 P2-4 U?63A u3:' HOl +7 U3b HD~ ACC] u37 HU,:, +3 .. R P + 1 U CU",ULAI I vF. uEt;! T A ~F 8 P2-4 U'IAOA 8 B :>.?O P2-4 0'l90A 8 B ?[ 711 P2-4 0424A 8 B 7HR\ 04~AA 8 B RGA: A-AH u3/j +34 u3':1 .. 19 1J4U IICJ. +lu P2-4 0477A 8 A U41 AC~ +lu P2-4 0487A 8 A IICAI! U4~ IIC,:, +lu P2-4 0497A 8 A n n5 U.. j IIC .. +lU P2-4 O<;07A 8 B o:nll u.... ACb +lU P2-4 u'i17A /I B nHOE U":> ~Tv P2-4 0'527A 8 B 080/1 SAAL P2-4 0'i27A 8 TITLE P2-4 0"i2AA PR2 8)H /lD))) [ r P2-4 0533A0293 0372 /I)H 157-11 r1[5 ~TT +1 xF PK2 U"o eLK PUN' /j0 U'+':I ..JR USu xl' 05.1. FST L..Ol U5~ ~Dl U5j IlFf?, Rt:.A FD3,~ KTc: L..D1 FO .. ,,+ ~Ol u~~ L..Al 10L,1 u50 tNl FD1, 1 U~o .JL O~':I L..A2 FO~' 10 U6U L..Dl FO~, U61 .J MOL UN TO (.OL..UMN H£ADINGS SUHRTN P2-4 0538A1179 1183 &)H 0" I r :rB P2-4 0543A REA &)H alt.l) [ 8rll STORE COLS /) a 7 P2-4 0<;4AA0006 0007 &)H ] rHrA P2-4 o553A0096 0097 &)H 111011'+< r6f& 0559A005~ 005A II)H ]JG]? < P2-4 O'l73A P lCI<. UP AMT eOLS 70-79 P2-" I F <8<11 P2-4 0"90A0059 0059 &]H Jl313 II III P2-4 0595A0610 0"14 &]H 2I1H#A 111115 P2-4 Of\OOA0070 0079 &JH '0.00 II:IIB P2-4 Oh05A0070 0070 &]H ]0.0. 1181111 1080& IIHIIA P2-4 0f>10A0527 00;27 IIJH P2-4 0615A0099 0099 &]H CHECK CK-OEH ACCT P2-4 Oh21A0092 onw' &]H :OEOE H HI IF UEHI T P2-4 Of>2f>An672 0"7'" IIJH 7CHeA HIH5 CHECK Ct<-OEH AMT P2-4 Oh31A0527 0527 &JH :0&08 H:HB P2-'+ 0636AOb57 0661 &]H SCle5 H8H# STORE M~L OF AMT '+141H 116118 U6d eNl ~TII'l U6':1 .;6 u7u AMI:: ACj,lO P2-'+ 0641AO,+'H Oo;Oft 8]H >[l 05 HHHA u71 AM, IIC4, 10 P2-'+ Oft'+6AnS07 051', & ]H >0: 011<: H6H8 u7, ..J P2-4 0652A0708 071:> 81H 2\6\E C CI NXT 10103 DEBIT AMT, CREoIT AeeUM ILLUSTRATION 2-2 u7.:. NXl !>M2 IIC.:..10 :;'M~ u7,+ u7:> MO,:, I:Nl ~TU.1 U71 .JG AU U7cj AM2 AC,it 10 u7y AM~ u70 MO~ ullU UIlI DEBlT AMT. OF.:lilT ACeUM IIC~'lO ~M~ AC1.10 "M~ AC2qO MO.:. xF Rt..A »8" LAI U8!> eNl HLU." U80 \IE U87 CHECK CH-nEIi AMT MOj AL'I ..,8.: us.:. CREon AMT. CREon ACCUM AC"dO CHEOIT ,,"T. nEB IT ACCUM Rt:AU NEXT CARD FD"." COMPARE NEW CARO AceT NO kT2 c.;ON l02 f'V.2 IF t;Rt:A~. P2-" 0657A049"' 05q" &lH YO 05 ClC5 P2-" U662A0507 0';11\ "lH yo:nll C:CB P2-" 0l'>67A0708 07V "lH 2\6\E CSCII P2-" 0f.72AO!)27 0<;;,!7 "lH :o&n& CHCA P2-4 Oh77A0691l 070~ "JH 8\8\11\ C6C& P2-4 01'>8:3A0477 0481\ &JH >1I-!lH \ P2·· .. 0F,8AA041l7 0491\ 81H >!lCIIII \1\5 P2-" OF,93M708 071' /I lH 2\6\E \:\B P2-" Ul'>911A0477 0481\ /llH Y!I-IIH \8\11 P2-" 0703A0487 04Y" & JH YACII& \H\A P2-4 0708A ~EA & JH /I) A) P2-4 0714A005~ 00511 &]H 1(; \I \6\& 1G1? P2-4 0719A0092 OOY<; &]H : nE4 1 GI65 P2-4 u724AO!>59 00;6'1 SlH 8< D 1 UTI:.. '+ P2-" 075'iA0294 0297 "lH I <;A5( A:AB lNl HLu." P2-4 u760A0092 0090; &JH 30E4] MAli AHAA 1.1811 f'TI:, U8d ~D2 U8':1 ~02 lI8Yl lI8Y2 IlYU "HGA U91 !>Al ACT ... P<:-" 0765AOIM 0167 &lH 4111- U9.: :.Al ACN." P2-4 u770A0347 0:>1511 /llH 4-I-IF. A6Ali U9d CLk AR2.21 P2-4 0776A1933 lq5~ & lH 1) : )& F, U9j lNI ACh 10 P2-4 U781A0477 0481'1 II ]H 311-IIH f>I65 U9,:,1 CN2 ARlo 10 P2-4 0766A1923 lq3' II)H l!;))5 F,:68 09" .IE L.l. P2-" 0791A0807 0111 t &lH 8??I MI\II U9:> LWS AC1'10 P2-" 0796A0477 0481'> & JH ?II-AH f,HI'>A U90 SEU UEb+l.14 P2-" 0l'01A0173 018" /I]H RY( III? F,61'>1I ??I a 6I AR~.21 P2-11 01l07A1933 l'l:>' II]H 1):)11 U90 LNl I\C':'.lO P2-4 OlH2A04'n 00;0<, II]H 30 05 ?I?5 U91>1 CN.:! ARlol0 P2-4 01l17A192~ lq3' II )H %) )5 ? : ?8 U9':1 .IE II/W P2-4 OA22A0838 01142 /I)H 83:0,1 ?8'1t 100 LW!> IIC':>olO P2-4 01l27A0497 00;01'1 II)H ?O 05 ?H?A 101 ~Eu P2-" UII32AOlllll O?O, II)H RF ]FII'I ?6?8 P2-4 OA31lA0477 0481'> 8 JH !>R1 ACj.l0 P2~ .. UAI>3A0497 00;01'> 8)H CO 05 3135 OA48AO~1 7 UYI iO" 100l wW CLk I:Rt:..l5 LAl AC1.10 DEH-CHElJ = vAL OF ACCT NO 10,+ "Al ACo.l0 P2-4 0521'> II,1H 4rJHnE ,: 3B 10:> :,Al AMlolO P2-4 OA53A0351 03M II lH 4-5-< ~831l 100 \II< ",0" P2-4 OA5RAOll69 OA7'I S]H DQ 'l; :'IH~A ,~O!> P2-" OAbMOY56 Oqbt) S lH 211MEQ :'I6~& P2-4 UA69A0951 OQ5C; /I]H [&HIIA l.Ol 10d MO"..;X > . CI< lU':I LAI ULK'l P2-4 UA74A0090 0090 Ii)H 0303 11u "AI UEtHI P2-4 ul'79A0172 S]H 4IOID O;'lB 111 "Ai \.Rt:.d ul n P2-4 UA1\4A01118 ottlR II ]H 4F )F ] 'lBolI il" :.Al tlALol P2-4 OA!l9AO~3b O?jF. IiJH 4.(.< ClH9A J.1':' LLI< ARb.!1 P2-4 0l'94A 1933 19!>' S lH 1) : ) IIF 96Q8 ,1.. LNI ACo.10 P2-4 OQOOA0517 00;2" ")H 30HOE F F'l 11" I:N" ARi .10 P2-4 U"O~Al,)23 lq3:> II]H \\'0))5 FIF'5 110 ..JE P2-4 U'll OAll')";1 O'l~o; 8 ]H 811HII A F : FB 111 LW" AC"'.I.0 P2-" (j'l15A0517 0521', II)H ?OHnE FFlFII 110 "Eu bAL+lrl4 P2-4 0020A0237 0?5n /I]H R.III] FHFA 11") LN.< IICo.10 P2-4 U"25A1l517 00;21', &JH LOHnEIl F6FS 11':11 (.A" ACbtlO P2-4 Q'l31A0517 U521'> 8 JH NOHOE II III HII5 KTI, U':I2 ..JEA «T .. P2-4 O'ljf,A1l951 oQSC; SJH 811HRA 120 LAI \.RI.2 1'2-4 0041AOIOl 010:> 8JH 4.41 A:IIB 121 ~Al P2-4 U"~6A0250 02~1 II)H 41 )10 1181111 12" kT",.J 12.> I'IO!> J.F 12.. xF 'IC bAL+14.2 Pkl Pi l1 "C2.10 P2-4 1034.110487 0491'> 1I1H :3I1CAII !:!8 LA.:! ACb 10 IF uRt..A~. ,,1<2 AC'+dO Ot:H-CHELI "A2 ACo.10 ..JR r~O'+ INFO TO Pt Eu UEb+lIlll P2-4 InSSA0173 01B" 11H RYCII 101 loll CLH AR;l,21 P2-11 1060A1933 195~ 11H llPI MIMS 111.. LNl AC .. ,10 P2-4 ln6SAOS07 051" 11H 3n:nll M:MB III!) (;N2 AR1, 10 P2-11 1070A1923 1932 111b oJE P2-11 1n7SAl091 109'> I lH 11H ") I5 8r.ltQS M8MII MHMA 1111 L.WS I\C",10 P2-4 1n80AOS07 051" 11H ?O:Ollr.l M6MI 111b SED CRE+lIlll P2-4 10S6AOlll9 020' 11H RFOF8 iii QI P2-" In91A0091 0091 11H n9n9 QIQS P2-" 1n96An187 0187 11H .. F F P2-" 110lAn203 020:'1 11H 4FOFO 111~ 1119 yY HTII L.Al HT .. AS~ol EDIT 15u SAl UEb+15,1 151 SAl 152 SAl bAL.+16,1 lS.) XF CR~+lS, * 1 Pk2 I]H '11'11'1 QHQA P2-4 lll1A PR2 11H 10»)7 Q6QI 7 71 P2-11 1l0"An2S2 PHINT Se::CTION TOTALS r.l:r.lB ,;lAQII 02S~ lS .. L.A1 101,1 P2-" 1117A0098 009A 11H '11'11 15!:i AMI lNU,l P2-11 1122AOI00 0100 11H ('IF4F 2I2S 150 1C CNT P2-" 1127A008S on8Q 11H -n\n? 7:2'B lSb1 oJE OFL. P2-" 1132A1220 12211 11H 8.J:.JR 78111 lSI lC (;NT P2-" 1137A008S 008 Q I)H -n\n? ZH2A lSb oJE UFL P2-" 11112A1220 1224 11H 8.J:.JBW 2671 P2-" 11 .. AAOIIA7 049" 11H" lACAI 101 WI WIWS 15'i 16U bKi! (;LR ACO!,10 (;LH AC .. , 10 161 CLH AR1,10 16C! CL.EAR ACCUMS P2-" 1153AOS07 0516 11H 10:011 P2-" l1SAA1923 lQ32 11H 11)5 W:WB CNI FO .. ,II P2-4 1163AOOSS OOSA 11H : 161? 101810111 16~ oJE LST P2-'I 1168A1266 1270 11H 8N6NE WHWA 16.. oJ FST P2-" 1173AnS"8 0552 11H 2[H[A, 10161011 P2-" 1l79A1215 1219 11H (.JI.JS •• 1 16!> OFi! oJX TAG COMPARE FOR LAST CARD PRINT COL. HEADINGS 160 L.PH H01,7 P2-" 11S'IA0373 0379 I lH 02 2F , 10 5 167 L.Ol HOC!, 10 P2-" 1189A03AO 0389 11H 12.20 ':,B 16b SOl bAL.+'!, 10 P2-'I 11911An2110 02119 11H 1.\1 ,8,11 169 XF P2-" 1199A PR1 11H 16») .H,A PHI 171 L.P!! H03,S7 P2-" 120llAn390 0117" 11H 02[A;J ,6,1 17<' 17.. XF P2-'I 1210A PR2 11H 1011) ..I ..II lA<> P2-" 121SA121S 1219 11H 2JIJS JIJS 17b OF!. XF P2-" 1220A SK7 I]H IE II ) J:JB L.A1 101,1 P2-4 1:?2SAn098 009A 11H '1141 ..18..111 177 SAl CNT+2,3 P2-'I 123nA0087 0089 I]H 4nAO? .JH.JA 17H oJR P2-'I 123SA"1179 1183 &]H O. ,IN ..16..11 17'i L.Al 100,1 P2-'I 12111An099 0099 &]H '11'11 N NI 18U ~N1 INOol P2-'I 12116AOI00 010n &]H : 'IF4F NIN5 lS1 oJE tlKl P2-4 12SlA0982 098" l]H 8'H' A N:NB lS~ SAl INU,l P2-'I 1?S6AOlOO 0100 llH 4'1F4F N8NII P2-'I 1261All'18 1152 &lH 2101 WI NHNA P2-'I 1266A E(» &lH lEO)'; N6N& P2-'I 1?72An528 OS3' & )H 2[ [ .1 =7=£ 17b !S') lS'I lSb Pk2 oJ oJ L.ST XFC 51\ 7 START NEXT PAGE UF2 tlK~ E<)l ENU ST. SKIP 7, HALT TRIAL BALANCE SAMPLE REPORT ILLUSTRATION 3-1 REFER TO CHAPTER 3-I-C TR 1 AL tsA\.ANCt: t' AI.Cl .I. lUOu 2.1.01.1 2.:21 3ul.: .. 1:101 "1I0J 719'1 7~5j I I I $ $ I I $ $ 210u 2;,:2.1. .. 1:10.1. "tlOl .. 110.: "IIU,) 7.1.9'1 7':15i:: 7':15') .: .: lUOU 31.11': 41101 719'.1 $ 12' .... 5.01 2uO.OU I $ $ $ ;t3.811 .1.2,6 .. 5.07 I 3.1;t- $ $ ~7.0u ;t5,3J7.9u *1 $ I I I I I $ $ $ $ I $ $ 3~5."b 8b9.111 "':18.0':1 $ $ $ 8 .. 5.8J $ Jl.9 .. $ 3t13.51 I 2,9':1".Ou *$ s I $ s .. bOI 4111.11 I I I I 2,400.9 .. 2'''bO.9 .. 4,901.811 .$ lUOU lu2u I 1l5~ I 1"0.1. 2 .. 0u 2b2u S 3ul~ 3Ul11 41:1U1 470i:: 6U51 679'.1 ,) lUOU lU2U 3u12 719':1 ,) lu20 I' AI.Cl ,) 1/ ,) HOi:: 1.1.52 2020 .. 731 0 II H ~3.8jj :.!!),3.n.90 • I I I I I $ I I I $ I I S $ $ $ s S S 4':17.8j1l.3JIt10.0U18.3719."U 1..... 10 3t17.29 102'+1.211 2,9':14.00 • 2,4bO.9 .. 2,4bO.94 2.450.94CR 2, .. 50.Q .. CR 2, .. 50.CJ4 2, .. 50.Q4 .. ,9ul.811 • 58.30 $ S S $ $ S $ S S "07.53- $ $ $ 4b6.20· $ 1,5':11.80-·$ , uEllIl &7,2116.61.1 ., S 104.31.1 3, ....... 00 3' ....... 01.1 $ $ $ S $ $ $ , $ 10".3u 2ua.6u * ' $ S $ s $ 1"' ... 8 .. $ , S 12.8" 17 ... a .. $ 12.a .. $ 375.3t1 *$ S $ $ S I $ S I $ S $ , 72".?5 556.18CR U.33CR IbO.OOCR 19."OCR 19.40 467.<;3 10.30 "67. <;3CR .. 67.53 18.37CR 456.?OCR 12,511 .77CR 12,511.77 570 ..... CR 570.4 .. CUMULATIVE BALANCE CKEVIl 1:>7,286.60 • 3,418.00 S ':15.01.1 S 18.37- , $ , 12,511.77 12.6U570 ... 4 13,Ob9.61 • S 10,3H2.6j . , s 1,591.80-. 1:>7,2116.6U 2.:2"1 $ ,,07.5j18.37 b7,2t16.6U $ $ $ $ , I 467.5j10.31.1- S S 510 ..... S 13,01:>9.61 .$ S s 1.03 I 12,499.17 , , 8,300.00 A,300.00CR 8,300.01.1 8,31.10.00 • S S S 12,6.. 5.07CR 12,"13.19 208.00 12,6.. 5.07CR 23.88 12,621.19 3.12CR 27.00 989.qaCR 251.30CR 395."5 715.03 130.110 1,2 .. 1.28CR 8 .. 5.83 31.'14 3b3.<;1 9119.911 21:11.30 I $ luOu :.!;,:21 3ulio:: .. 1:101 4HO') 7':15,) 8.0U12,6"5.07 n ... 25- .. '13.: '+1:101 "tiD,) 7'.15') ~1.8jj $ ""13j 6051 679'1 12,6"5.07 8,3uO.OO 8,300.0u .1 ,) CUMULATIVE; ijAI.ANCE CKWH uEtSIr 1/ $ 3' ....... 00 3'4..... 0U 3,"25.63 09.0U 10,382.6J • lU ... 30 $ $ $ $ $ $ $ 3, .. 18.00 95.00 la.37CR 3, ....... flOCR 3, .... 4.00 3,425.63CR 6CJ.OOCR $ $ 10 ... 30CR 10".30 104.30CR 10 ... 30 $ $ $ $ $ $ 174.8,+CR 162.00 174.a"CR 12.A4 162.00 12.84 10 ... 30 2U8.6U • 11 ... 8 .. .1.2.8,+ 11 ... 8'+ 12.8.. 375.36 • $ • ILLUSTRATION 4-1 REFER TO CHAPTER.3-II-B SARGE 2 2nd PASS OF REPORT GENERATOR ~OUOU tiEl> P2-'+ ~Ou1u LRU P2-4 :'002U 101 P2 .. 4 ~OU3lJ o.~ P2-4 ~OO,+O ~5.4 P2-4 :>005U 59.1u P2-4 :>OU6u 70,lU P2-4 1.13it PRT :'00811 :'OU9U 1o! P2-4 :'010U 4,b P2-4 :.Ol1u 12,1 P2-4 :'012u 13.14 P2-4 :>013u it70l P2-4 :'014U ,Rol P2-4 ~015u itqol .. P2-4 ~016U .. 301 P2-4 ~017u 42,1.) P2-4 ~016u l6.1 P2-4 :>OL9U 77014 P2-4 ~O Al:Cl P2-4 bO.)2U HO" +11 LUtJiUL.AlIVE ~O~3U HO.) +2b II :.0.)4U 110 .. +7 P2-4 UEtHT II P2-4 CRt.Dl T b 0.55u HO::. + 1 U tlAL,ANCt:: P2-4 :>0.)6u ACl +lU P2-4 :>0.)7U AC, +lU P2-4 :'O')8U AC.) +lu P2-4 :>0.)9U AC .. +lu P2-4 P2-4 :'040U ACb +10 bO'+ll1 f'1I +2 bO,+2U HL.U +4 :'0,+3l1 lOu +1 COL~ 0 /I 7 ACCl I~O P2-4 P2-4 P2-4 U :>0'+4U lOL +1 1 P2-'+ bO'+bU 10, +1 it P2-4 bO~bll ~PA P2-4 +lU !:>D .. 7U bPI. +lu UOUOllOUOU! !:>D~8U bTu +1 P2-'1 ::'0,+9U ~Tl P2-'I +1 !:>O:'OU UAI +4 U805 P2-'+ bO~lU ~ P2-4 ULk +1 !:>0:>2U CRT +2 !:>U:>3U LNu +1 !:>U:>4U AS", +1 P2-4 CR . PkIu ACCT AAL IND P2-'1 P2-'+ b():>bu LNl +2 bU:>oU ",ON +2 P2-4 ::>1 P2-4 ~TA 1:>007u P2-4 SlT Rt.S PRT Ob6 P2-'I 1:>0::>8u bTl CLR Ulb1 029t! MIJII HUO,PRO 0:.7 L.A2 HDU.13 bOoOU ::.A2 u2u2 0214 xF :.Ob2u CL.K U2':13 :,Ub3u -.lR :'004U AF P2-4 P2-4 Pk2 P2-4 R<.5 PCH 0:>9 o.ni! P2-4 okT OF2 ODO TO COL HUr,S bUBRT RcA P2-4 READ FIRST CARD P2-4 Rt.A Ob2 P2-4 P2-4 UF, Obl ~51 P2-4 PKN 51>2 0:'8 ::'061U P?-4 TI TLE P2-'1 bOb9U :.005U P2-4 F~T L.A2 UOuo OU07 Mull Fu3,PV STORI:: COL.S (, Il 7 P2-4 P2-4 ILLUSTRATION 4-2 ~006U :,Ai! ... V,2 003 ~0071) I 0/9U 5 TORI:. MSL OF AMT P2-4 Mvl 11-0 Sl1,GoIUO,M02 CHECK CR-OEB ACCf "T 1 01 PZ-4 CNC! 10001 PZ-4 LA~ .;G PZ-" MOe! 11"0 IuO,G,STO,NXT 009 ~OolO LA2 10U,1 ~Od2U eNe! STU, 1 ~Od3U ..JG CH£CK CR-OER AMT P2-" PZ-4 PZ-4 "Xl 11-0 WI,L,FDl,ONI 010 LA2 10101 PZ-" ('N2 UOUI OU01 PZ-" .;L PZ-'! ONI 011 AuD FlJ5, AC3, AC4 DEB AMT, CR ACCUM LAi! 00:'9 OOhtl PZ-4 AM2 I\CjdO PZ-4 P"!-,, AM2 AC .. 010 ..JMP MD3 0/2 PZ-'+ MOj ~O':lOU P2-4 P2-'! SPH STUd Ob8 ~o P2-4 OU61l 5PH STU,l :>U 150 STORE MSL OF AMT 073 ONI AuO FUh,AC3,AC4 ",0':11 U UNI LA2 UO"IO Ou79 :'0 ':12 U AM~ ~0930 AM2 AC .. dO AC~olO 014 ~O':l'+U ';~IP 10103 ~IO.) 015 NxT If'O WI,L,Flil,ONA :>0':l5U NX I LA2 10101 PZ-4 :;'O':lbU ('N2 UOul OUOI PZ-4 :>097U .;L PZ-4 UNA 076 UO~9 SuR F05,AC3'AC4 CR AMT, CR ACCUM P2-4 P2-4 ~O':il\U LA2 50':l9U :'1012 AC3dO PZ-" :'luOU 5M2 AC .. dO PZ-" OU6d 077 :>101u 1010.) 077 ~lU2U P?-4 ONA SUA FD6, A(.3, AC4 UN ... LA2 U070 Ou79 :'11.l3u :'1012 ACjdO ~lU4U :,1012 AC,+, 10 P2-4 019 PZ-" 1010.) OtiO 10102 11-0 IDO,G.STO,ALT :>lu7U CN~ :'TO,l ~IU8U ';,G ALI Oftl,CK CR-OEB AMT P2-4 SlOhU MOC! LAC! IOU, 1 PZ-'+ PZ-4 If'O IlJl,L,FOl.0NN Olll PZ-4 10101 :'109U LAi< ~1l0U CN2 uOul OUOI P2-4 :'111U .;L P2-4 :'112U L..A2 0009 0061l ~1130 AM2 AClolO PZ-4 ~1l4U 1\1012 ACC!olO PZ-'+ ONN AlJO FlJ5, ACl, AC2 Oll2 PZ-4 JMP 10103 01>3 :'115U Od4 ONN AuD FUh, ACI, AC2 :>l1bl) VNN LAC! 1)010 OU79 ~1l7U AM2 ACldO OEd AMT, DE"1i ACClJM ILLUSTRATION 4-3 ti118U P2-4 AM2 AC;':dO JI'IP M03 0~5 ..J MO') P2-" liLT It'D 1U1.L.Fu1.0NV Od6 CR AMT. Ul'"tl ACCUM :;)1.:0U AI. T LA;.: 101.1 P2-4 ~ldU I.N2 uOOl OUOl P2-" :;)1,2U ..JL Pi!-.. ONV P2-4 SuB FU5.AC1.AC? 0~7 ti1,,3U LA, UOti9 OU68 P2-" ti1;.:"u ~M2 AC1.10 P2-" ti1.:5U ~Mi! AC,," 10 P2-4 OdS ..J J"'P 1103 MO~ P2-4 ONV SuB FD6. AC 1. AC2 Od9 P2-4 ::'1,,7u UNV I.Ai! UO 70 Ou79 :;)1.:9U ::.M2 AC!.!O P2-" ~M, P2-" AC2.10 O~O ::'ljOU MOj. . AMT DR-CR=tlAL ACCT NO ::.1::.3u wW loA2 AC1. 10 P2-" :;)lti .. U ::'A2 ACo.!O P2-" ti1::.5u. SA2 u3ti1 036U AC3.ACb.AIIT P2-4 LAl AC').10 P2-" 5Ml ACbdO P2-4 ~M2 ..JR P2-4 U3ti1 036U lUI ::'1::.9U P2-4 SUA lUO P2-4 DKT M04 P2-4 ..JMP MOS P2-4 1'10'+ 102 MO::' 103 :;)1010 MO,+..JX M04 EKT RTN EnlT $. CR P2-4 KTN 1U4 ::'102U LA2 ULR.1 ::'103U !:oA.: U172 0172 ::'lo"U ~A2 Ul~8 til05U ~A2 U2.)6 0;.:3b ::'106U loAi! I\Cb.l0 MOV DLR.081,CK1.BLl P2-4 IFO ACh.E.S"A.RTN P2-4 OlAtl lu5 til07u eN2 !:oPA.10 :;)108U -.IE kTN 1U5::'0 l~O AC6.E.S"N.RTN ILLUSTRATION 4-4 :.1b9u "'~~ ACodO :.17(]U <-flIl ~Pi .. l0 :>1 flU oJE KTI. :.172u ~W~ ACb.10 :.11:3U ::.Eu ~'2,)7 O~C;U ;,174U ~Ac lub no lu7 :'11!>u <-N~ ~PA.lO ;,l/bU .JL KT :.lnu ..J IHN :Ol18u;.(1 L.A~ CR I,.e !>179u ~,~2 U2;,0 025i RT lOA P2-4 Mu5 PkN 510'1 .... F :.ld:3u I"TE. PRIm ACCT TOTALS PH1 P2-4 III :'1",2u P?-II ,~o'+ ,UO :.ltllu MQ:;, .... F MuV CKT.AL.:3 R1N Xr 1'12J L.A~ ")'0'30 lIJ;>' uOuh Ou07 P?-,+ ::>1o;4U oJf: "r.:: P2-4 L.A.e AC~, f'V,2 P'!-4 117 MUV A(.2,A\;6 IF AK, I ~IFO TO PRN 10 P~-II ."At'. Aeb,10 P2-4 118 :.1o;7u L.A.e AC4.10 :.l'1AU ;'Mt'. "CodO 119 P?-" IrD A(.;>,E,SPA,YY 120 ,,2uOU LA2 AC2olO :'2u1U <,.N;:: "P"rl(] :.2U2U ,JE :'2u:3u L.W::' ACb 10 ;,2uIIU ."Eu Ul/:3 OlAb ,,2U5U i Y LA.e AC4rlO ty MVV AC.?,EU,UB;> 121 It'.2 YY ;,2ubu <-Nt'. ::'PArlO :.2u7U ..JE :.2ueu L.W::' AC4rlO :'2u9U ::.Eu ultl9 0,,02 IrD AC4,E,SPA,RT4 "r4 MvV ACII,Eu,CR.< lc!:3 1",4 P2-4 P2-4 RTII MuV A~~,Dtj:'\'Ck3,HL.II I:.I)IT * P2-4 :'2,lOU I 211u ~A.e Uld7 0187 P2-4 :.212U ::.A" u2u3 0203 P2-4 ;,2dU ~A" 125 xF P2-4 u2:.2 0t'.5t'. Pr 2~OU I..N" I\ON'.,! :>2.:1u ... G P2-11 uFI.. Pl-II H"I\21!t:S Al.2,'A(.1I 1.:9 P2-4 CLt::At{ ACCIIMS :>l.:2u uK" I.Lt( "C~'lO I.Lt( .. e",lO :>2.:.3u P2-4 P2~11 I~[) loS0 Fij4,!::,5PA,Ll>T COMP FOFl LAST CRt) :>2.:IIU I.. A.: 1.10:>5 Ou~ 2.:5u I..NC: ~P"'lO pa·4 :>2~bU -.IE P2-11 L.51 JMP loSl :>2.:7u uF" ... x pa-II 01-2 E"T TAG :>2..>Uu ~f'" Ulbl Pl':'l1 Pl~1I 0~9" P2-11 LA" HO.: ,11 :J2.:.2U !>A2 02.:.7 O.:!iu xF !.l2':'IIU L.PI< rlD,:".:5 :>2':'~U ~P" pa-4 P2-11 Pt,N SPI 1.:.5 ;,2..>3u P2~1I ,.,\.IV Hu2,BI,.2 !.l2,)1U P2 .. 4 Pt(1 P2 .. 4 SI..N HU3,Pto 2..>bU L.A~ Hn",7 ;,2.:.11.1 ~A" 1.1109 0.:0.: 1':'/\ ;,2';8U L.A2 "O:>'lO :>2.:.9u ~A2 P1'-4 MUV HUII,CH2 1..>7 1'2-11 P?-II MUV HI.)5"8L2 Pl-4 1'2-4 u2':'7 0,,5u Ij9 P?-4 P"N SP? Pl-'" Pl<2 1,,0 I AI> -.I P2 .. 4 5t:.N HUl,PI 2,,2'J UFL ('L.K Ulbl 0,,92 P2-11 o2".3U 1.L.1< tNT,,, ;,2 "II U xF ::>2,,~u -.Ill :>2 .. 6U L.A2 INuol P2-11 :>2,+ 7U (.N" "f'A ,10 1'2.,.11 ::>c,+BU -.IE. p,a P2-11 uF.: P2-11 P2-11 uKl P2-4 (.LI< 'NU,! P2-11 L~T :J~=:Jlv ,-SI ... Lr< 1.1101 0'=:'1.: ~202u (;LI< 1,)2 .. .3 0.:.7.: o2:.>'+u IIF PuN :>2:>~lJ ",Tt. IIF P2-11 P?-4 St<.7 P2-11 f'uN P2-11 Pl.... l~O ~Tf' P2-" Pl-II 149 :>;::'6V P2-11 Rt:.S PKT,PCH P~N l'+8 PH7 1':1-11 .).,P B,,? 1,+6 uK" I\F P;>-II Rt.S INO 1'+5 :>2"jl,) P2-11 IrO INn, Eo SPA ,AK I I 'til 1 .. 7 P?-II OKT 01'2 1'+3 :>2:,OU P?-II PKN SK7 1'+2 o2,,9U P:>-II Pl-II loSJ LPt( HD1, I :>2,,01.1 f'RN COL. /"fEAIlING5 r AI> :>2,,91.1 !.l2"lu P?, .. 4 F~T 1'51 loSl :>a~!:Iu Pll-II H~T STP H~ T srI' P2-11 Pl-" :>2!.l7u :oTP 1'2-11 :>2oBU t.NLJ ::.T I P2-11 MEMORY DUMP ILLUSTRATION 5.. 1 REFER TO CHAPTER 3-111-8 PHAL t:\ALANCt:. URb502 (/.3-1 1<[,* 04-1 lUUCh %.$ RJH= 05-1 U6-1 U7-1 U8-1 09-1 2l L 10-1 Ot.1 .. 11-1 =7=(1"'2-4 I"' 12-1 13-1 Al.C TCuMULAT! Vt.1I uEt.>ll ChEuII 14-1 15-1 16-1 17-1 <1UI)11t.7-I!LJ""oIAIAilJ J. 1-14044<. 18-1 J]l>):'.OE4] 4.4.: J].:1J~2IlHuA·U.UuJU.U.;OClO", '+14IH .:0-1 ;Ot.Ot.7\.H('A.U6U<1HI..H.S>O Ot.>U:UII(. 21-1 ':\o\t.YU uoYlJ:LJu2\h\E:D<1(\ClH\8\1I\ 22-1 ~8-8t1>tlCtll!':\,,\t.Yb..,IlHYRl.R",&IA))b loI~<'~U Ju H",) • ) 1'11\:' :'. ?H-RHR 1[ lII:' 26-1 11 ",) .ju u5:1>)O )/I8~ .3.:'0 Ot.R. JFIl.:. 27-1 8-81/eu U5'+0I1Ut.4-5-<[;9 9.21>661'-'01 2R-l LSH~" u.3u.3,+IUIU4r ]1"],+.<,.<'1)':I'.).t. 2'1-1 ~UHUt.'j) I ' ) f'.jtll!rl/;A?UHUEh. II 1 JLuHUF <1 .30-1 hlU'1l)t.H<1HClA 4.4,141HO.:&rlIlAII,,»)t .31-1 CHAPTER 4 UNIVAC 1005 SOFTWARE OPERATING PROCEDURES 1- ALTERNATE SWITCHES OPERATING PROCEDURES 1. Loading program into Core Memory. Alt. Switch lon/illuminated. Alt, Switch 2 off/ extinguished. 2. Normal running. i\lt. Switch 1 off / extinguished. A1t. Switch 2 on/illuminated (if automatic forms overflow desired) . 3. Testing programs (debugging). A1t. Switch lon/illuminated. Alt. Switch 2 on/illuminated. During te sting the progr ammer is able to step instruction by instruction through a program. 4. Note: ALT Switch 4 on/illuminated suppresses punching II. SOFTWARE OPERATING PROCEDURES Single Address Assembly Language (SAAL) A. SAAL 1 - this is the first pass of the assembly program (S41). (1) Operating Instructions: (a) Reader - load cards into input hopper (SAAL 1 object program, followed by source program, followed by one blank card). (b) Console 1. Depress START and CLEAR BUTTON. 2. Alternate Switch 1 on/illuminated, all other s off/ extinguished. 3. Depress FEED BUTTON. 4. Depress RUN BUTTON. When processor HALTS, SAAL 1 is loaded. 5. Depress Alternate Switch 1 off/extinguished. 6. Depres s Alternate Switch 2 on/illuminated (if automatic forms overflow is desired). 7. Depress START and CLEAR BUTTONS. 4-1 8. Depress FEED BUTTON. 9. Dep:ress RUN BUTTON. (2) (3) Output (a) PUNCH - no punched output in SAAL 1. (b) PRINTOUT - listing of the label table relating each symbo1ic reference (label) in the symbolic program (source program) with its appropriate position in .Core Memory. Errors (a) ERR NO BEG CRD is printed, paper is advanced to the next page and the program halts - Indicates the, BEG card does not precede the source program. (b) ERR _9P IN DAT A DIV is printed to the right of the card in error, paper is advanced to the next page and the program halts. This type of error indicates an illegal code in the operation field (Cols. 11-13). No recovery is possible. The last card in the output stacker is the card in error. Correct card and restart. (c) DUP printed under ERROR heading - Indicates a duplicate label. (d) >148 printed under ERROR heading - Indicates the maxi~;;; number of labels has been exceeded (148 labels). (e) OVM printed under ERROR heading - Indicates the maxi~ memory has been exceeded (3844 positions). B. SAAL 2 - second pass of the Assembler - (S42) , (1) Operating Instructions: (a) Reader - load cards into input hopper (SAAL 2 object program followed by source progl'am) followed by one blank card) . (b) Punch - clear punch and fill hopper with blank cards. (c) Console 1. Depress Alternate Switch lon/illuminated - 'all other switches off. 2. Depress' START and CLEAR BUTTONS. 3. Depress FEED BUTTON. 4. Depress RUN BUTTON. 4-2 When processor HALTS, SAAL 2 is loaded. 5. Depress Alternate Switch 1 off/extinguished. 6. Depress Alternate Switch 2 on/illuminated (if automatic form s overflow is de sired). 7. Depress START and CLEAR BUTTONS. 8. Depress FEED BUTTON. 9. Depress RUN BUTTON. (2) (3) Output (a) Punch - a card for card output with the pseudo -machine code punched in the cards. (b) Printout - a listing of each card equating each symbolic line of coding in the source program with the generated machine code. Errors (a) Program halts after first card is read - Indicates BEG card does not precede source program. 0 I printed under 1 st position of ERROR heading - Indicates an illegal operation code. (b) I (c) I E I printed under 2nd position of ERROR heading - Indicates an expression error, i.e. operand which is less than 000 1 or greater than 3875. The most frequent cause of error is an undefined label. This type of error will print 6530 under the OPERAND heading. (d) I P 1 printed under 3rd position of ERROR heading - Indicates a precautionary warning, i.e. an instruction greater than 10 or 21 characters utilizing ARI or AR2 respectively. (e) I S I printed under the 4th position of ERROR heading Indicates a sequence number error. C. Condense Program (CD4) (1) Operating Instructions (a) Reader - load cards into input hopper (condense object program followed by output of SAAL 2, followed by one blank card). (b) Punch - clear punch unit and fill hopper with blank cards. (c) Console 4-3 1. 2. 3. 4. Depress Depress Depress Depress Alternate Switch lon/illuminated. START and CLEAR BUTTONS. FEED BUTTON. RUN BUT·TON. When processor HALTS, condense is loaded. 5. Depress Alternate Switch 1 off/extinguished. 6. Depress START and CLEAR BUTTONS. 7. Depress FEED BUTTON. 8. Depress RUN BUTTON. D. Memory Dump (DMP) ( 1) Oper ating Instructions: (a) Reader - load input hopper with memory dump obj ect program. (b) Punch - no punch output. (c) Console 1. 2. 3. 4. Depress Depress Depress Depress Alternate Switch lon/illuminated. START and CLEAR BUTTONS. FEED BUTTON. RUN BUTTON. When processor HALTS 5. Depress Alternate Switch 1 off/extinguished. 6. Depress START and CLEAR BUTTONS. 7. Depress FEED BUTTON. 8. Depress RUN BUTTON. E. READ - PRINT - PUNCf! (RPX) (1) Operating Instructions: (a) Reader - load input hopper with RPX object program, followed by data cards, followed by one blank card. (b) Punch - clear punch unit and fill hopper with blank cards. (c) Console 1. 2. 3. 4. Depress Depress Depress Depress Alternate Switch lon/illuminated. ST ART and CLEAR BUTTONS. FEED BUTTON. RUN BUTTON. 4-4 When processor HALTS 5. Depress Alternate Switch 1 off/extinguished. 6. Depress Alternate Switch 2 on/illuminated (if automatic forms overflow is desired). 7. Depress START and CLEAR BUTTONS. 8. Depress FEED BUTTON. 9. Depress RUN BUTTON. F. NUMBER IT (NIT) (1) Operating Instructions: (a) Reader - load cards into input hopper (NIT A followed by data cards, followed by one blank card). (b) Punch - clear punch unit and fill input hopper with blank cards. (c) Console 1. 2. 3. 4. Depress Depress Depress Depress Alternate Switch lon/illuminated. START and CLEAR BUTTONS. FEED BUTTON. RUN BUTTON. When processor HALTS, Number it is loaded. 5. Depr~ss Alternate Switch 1 off/extinguished. 6. Depress START and CLEAR BUTTONS. 7. Depress FEED BUTTON. 8. Depress RUN BUTTON. (2) Output (a) Punch - a card for card punched deck with all cards seq~ence punched in columns 1 ... 3 starting with C/JC/J 1, and nl.~w program ID inserted in columns 62-65 if header was used. (b) Printer - an 80/80 listing of each card punched. G. DUPLICATE (DUP) (1) Operating Instructions: (a) -Reader - load cards into input hopper {DUPA followed by four header cards, followed by data cards, followed by a sentinal and a blank card. (b) Punch - clear punch unit and fill input hopper with blank cards. 4-5 (c) Processor 1. 2. 3. 4. Depress Depress Depress Depress Alternate Switch lon/illuminated. START and CLEAR BUTTONS. FEED BUTTON. RUN BUTTON. \Vhen proces sor HALTS 5. Depress 6. Depress 7. Depress 8. Depress Alternate Switch 1 off/extinguished. START and CLEAR BUTTONS. FEED BUTTON. RUN BUTTON. H. CLEAR (CLR) (1) Operating Instructions: Clear cards are normally placed before object cards for the purpose of clearing memory prior to loading a new program. 4-6 CHAPTER 5 UNIVAC 1005 HARDWARE MACHINE TESTING and OPERATING PROCEDURES I. MANUAL ALTERNATE SWITCHES. A. Mode of Operation Table. The following table shows the mode for the sixteen possible switch combinations: JS3 Punch SWITCH SWITCH SWITCH SWITCH THREE FOUR Inhibited 1 Instructionz ONE TWO MODE Normal Operation " " " Normal Auto Form Overflow " " " LOAD TRACE RESERVED TRACE Single Instruction W TRACE " " " " " " Notes: W TRACE No Yes No Yes No Yes No Yes No Yes No Yes No Yes No Yes NI 3 NI JUMP JUMP NI NI JUMP JUMP NI NI JUMP JUMP NI NI JUMP JUMP OFF 0FF OFF OFF OFF OFF OFF OFF ON ON ON ON ON ON ON ON OFF OFF OFF OFF ON ON ON ON OFF OFF OFF OFF ON ON ON ON OFF OFF ON ON OFF OFF ON ON OFF OFF ON ON OFF OFF ON ON OFF ON OFF ON OFF ON OFF ON OFF ON OFF ON OFF ON OFF ON 1. When switch four is "on", punch and PTE orders will be ignored. 2. Switch thr ee sets an indicator that is program testable by the JS3 instruction. If alternate switch 3 is "on", control will be transferred "M"; if "off", the next instruction in sequenc e will be executed 3. NI means Next Instruction. B. Automatic Form Overflow Mode. N.ormal auto form overflow doe s the following during XF print order s: 1. If a "1" punch only on the printer form loop is detected during a prior print, the form will be advanced to the next line of the form loop on which there are 1, 2 and 4 punches on the next print instruction. 5-1 2. If a form overflow occurs the compare indicator is set to a less than condition. 3. If no form overflow occur s the compare indicator is set to a greater than condition. 4. All card or paper tape XF's affect the comparator. If there is no print on the XF the comparator will be set to greater. C. Trace Mode. This prints the static registers between the update of the program address counter and the execution of an instruction. It destroys print storage. The following table shows the registers traced and their print positions: Description D. Print Position 6 Register 81-90 Instructions Register 91-95 Blank 96-96 Program Address Counter PAK (address of next instruction in memory) 97-98 Machine Constants 99-107 X Register 108-109 Machine Constants 110-111 Single Instructions Mode. This permits the programmer to cycle through his program. During this mode, the processor Halts at the end of the first internal cycle of each instruction executed. In single instruction mode trace mayor may not be used depending on the setting of Manual Alternate Switch 4 (on for trace). Each 1005 instruction consists of 5 "6 bit" characters. During single instruction mode, the entire instruction is readable from masks. 5-2 Mask 6 - Operation code (instruction Character 1) Mask 8 - Operand (instruction Character 2 -5) Mask 9 - Operation register and operand bank designation. When executing a conditional jump, the indication of the condition may be seen on Mask 9. If indicator light 1 is lit, the condition is not met and the next instruction in sequence will be executed. If indicator light 2 is lit, the condition is met and control will be transferred to the "M" address. In single instruction mode, the following instructions show on Mask 6 as multiple instructions. a) Conditional Jump Instructions - When the condition is met, an unconditional jump instruction cycle is generated. b) Store Zero Suppress (SZS) and Store Edit (SED) - These instructions generate a SA2 (Store Ascending Register 2) instruction cycle. 1. Reading PAK a) Set processor to single instruction mode to stop after the execution of the pr evious instruction. b) Set the processor MODE switch to STEP. c) Depre s s run button until Step 1 lights on Mask 5. d) PAK is displayed: 1) Mask 8 indicators 11-15 (Row) 16-20 (Column). 2) Mask 9 indicator s 20 -21 (Bank Designation). Reference description of masks for details. 5-3 II. TEST SWITCH PANEL. The Test Switch Panel for the UNIVAC 1005 Card Processor is located on the upper fr ont of the Proces sor just to the left of the Card Stacker. The Test Switch Panel occupies the lower half of this panel area. The Test Switches are beneath a cover which is hinged at the bottom. Access to the switches is obtained by swinging this cover down. There are 47 toggle switches in the area; 6 rows of 8 switches each with one blank position. A. Progr am Step Counter Switche s The following 5 switches, located near the center of the panel are used to stop the program on a given type of instruction. 5-4 SWITCHES 1 - 5 ... These five switches are number desired according to the binary 6. Each of these five switches is set in ing to whether the related code position used to set up the instruction code printed on Display Panel one of two positions accordcalls for a 1 or 0: Off (Up) for a 1 On (Down) for a 0 By keying instructions to switches and running the processor in a continuou s mode, the machine will come to a halt after executing the fir st cycle of the keyed instruction. Using this procedure, the programmer may let his program run until it gets to a particular instruction and then step through that particular routine in single instruction mode. The remaining switches are primarily used for engineering maintenance. 5-5 III. DISPLAY MASKS. A. Display Mask 4. 1 (HOPPER 2 I FEED' 3 4 I RO JAM ITSp· JAMJ STACKR I 00000 00001 00011 00111 9 ( HALT 10 11 INO liND 2 6 7 8 FORM I AOV vi PUNCH) 5 01110 11100 12 13 14 INO 3 INO 4 I RO I/O 11001 10010 15 I PR I/O I PCH 00100 01000 10001 00010 00101 01010 10101 17 18 19 20 21 SP 1 SP 2 SK 1 SK 2 SK 4 10111 01111 11110 11101 t1011 25 26 27 28 29 (HOPPERt FEED ~ 10100 01001 22 16 23 I/O) 01011 24 I END RD I END PR I RIP EX ~ 10110 01101 30 31 11010 32 I RO JAM ITSP JAMIWAIT JAMIFORM o'FlpCH HLOlpCH cuD 10011 00110 01100 11000 10000 11111 Indicators 1 - 13 are of interest during continuous operation to signify a reason for Processor stopping. Indicators 14-21,24, & 30 - 31 are for program analysis with regard to Input/Output. Indicators 25 - 29 apply when an Auxiliary Card Reader is used. 5-6 Operation Display Mask 4 should be displayed when the Processor is in Continuous operation. IMPORT ANT: -- If the Proces sor stops during a run, the operator must always consult Display Mask 4 to determine the reason for stopping before pr es sing any of the operating controls. By noting the indication on this Display Mask, the proper action can be taken. The Processor operation can then be resumed properly. Card Feeding (l - 5) All areas of the card feeding mechanism from the Magazine to the Stacker are covered by controls to stop the Processor in the event of mis -feeding. HOPPER (1) - Input Magazine This indicator will be lit whenever the Input Magazine is empty and the Feed indicator is lit. The Hopper indicator cannot be on alone. During operation, this indicator will light after the last card is read. The Processor will stop after the read order is executed with the last card in the Card Stacker. Processor operation is resumed by: Pressing the Stop switch. Placing cards in the Magazine. Pres sing the Feed switch once to feed a card fr om the Magazine into the Wait Station; the Hopper and Feed indicator s will turn off. Pressing the Run switch once to resume the Processor operation. FEED (2) - Wait Station This indicator will be lit by pressing the Clear switch or by a card cycle if ther e is no card fed to the Wait Station. Should this indicator light ·during operation, a card has failed to feed from the Magazine. If there are cards in the Magazine, the Processor will stop on the next read order with the Feed indicator lit and the Read not executed. 5-7 Processor operation is resumed by: Pressing the Stop switch. Removing the cards from the Magazine. Examining the cards on the bottom of the stack to determine the reason for the failure to feed. Correcting these cards and returning all cards to the Magazine. Pressing the Feed switch once to feed a card from the Magazine to the Wait Station; the Feed indicator will turn off. Pressing the Run switch once to resume the Processor operation. The Hopper and Feed indicator s will be lit when the last card has been fed from the Wait Station to the Card Stacker. The Proces sor will stop at the completion of the current Read. If additional cards are to be proces sed; pres s the Stop switch, place the cards in the Magazine, pres s the Feed and Run switches. RD JAM (3) - Read Jam Should the Processor stop during operation with this indicator lit, either one of the following has occurred: 1. A card from the Wait Station may have failed to feed to the Read Photoelectric Diodes. 2. The Read Photoelectric Diodes may have failed the "light-dark" test. Before reading the first card and between the reading of each following card, the photo-diodes are in a "light" condition. When the leading end of a card enter s the photo -diode ar ea, a "dark" condition occur s . This light-dark change must be executed properly to as sure correct reading; if it is not, the Processor will stop. If the stoppage is due to a card jam befor e the photo -diodes, the ReadExecute Aignal is retained in the Processor; the jammed card was not read. The following procedure will return the Processor to operation without los s of data: 1. Press the Stop switch. 5-8 2. Remove all cards from the Magazine and Wait Station. 3. Pres s the Feed switch once while the Magazine is empty. Feed indicator will light. 4. The Rem~kethedamaged cards, if necessary, and replace them in thei~ proper sequence at the bottom of the stack in the Magazine. 5. Pres s the Feed switch once to feed a card from the Magazine to the Wait Station. 6. Press the Run switch once to resume the Processor operation. If there is no card jam when the Proces sor stops with the RD JAM indicator lit, a light-dark test failure is signified. In this case: The Read-Execute signal is retained in the Processor; card reading did not take place, only card feeding. The last card in the Stacker has not been read. The following procedure should be followed to restore the Processor to operation in the event the light-dark test failure was only momentary: 1. Remove all cards from the Magazine. Remove the last card from the Stacker and the card from the Wait Station. 2. Follow steps 3 through 6 above. The card from the Stacker should be first in sequence when replacing the cards in the Magazine. Should the RD JAM indicator light, try the procedure again. If the same indication per sists, remake the card and try again. If failure continues, have the field engineer check the photodiode operation. TSP JAM (4) - Transport Jam (Photo-Diodes to Stacker) This indicator will light in the event of a jam as the card is delivered to the Stacker. The Processor will stop. Tores~me the Proc.essor operation without loss of data: Pres s the Stop switch. 5-9 Remove the mis -fed card or cards. Press the Run switch. ST ACKR (5) - Stacker This indicator will light to indicate a full Card Stacker. The Proees sor operation will stop after a Read Order. To resume the Processor operation without loss of data: Pres s the Stop switch. Remove the cards from the Stacker. Pres s the Run switch. Form Feeding (6 & 7) FORM (6) This indicator will light to signify that the supply of forms to be fed is exhausted or that there is a break in the perforation between forms. The Processor operation will stop when form feeding occurs to or through the next Home position so that the operator can replenish the form supply. When a new form is installed in the proper position~ the operation is resumed by pre s sing the Run switch. ADV V (7) - Form Advance Check Should the form be fed in one skip beyond the permis sible maximum (22 "), this indicator will light to signify a form "run -away". This would be an uncontrolled skip. The Proces sor operation stops automatically within a very short interval. This stoppage is due to an error in the punching of the Form Control Tape. After the proper correction has been made to the control and to the form alignment, the operation is resumed by pressing the Run switch. 5 -10 Card Punching PUNCH (8) This indicator will light and the Processor operation will stop in the event of an abnormal condition in the Punch when a Punch function is given. The Punch Control Panel will indicate the reason for the Processor stoppage at thi s time. The lighting of this PUNCH indicator can designate any of the following Punch conditions: The power cord of the Punch is not connected. The AC and DC indicators will not turn on. The Punch power switch is not turned on. The AC and DC indicator s will not be lit. A fuse is blown in the Punch. The AC and DC indicators or the DC indicator only will not light. The Punch cover s are not in place. The Interlock (INT L) indicator will be lit. The punching mechanism in the head of the Punch has been raised and has not been lowered and locked in its proper position. The Interlock (INT L) indicator will be lit. The Punch reading brushes have been unlocked or removed and have not been reseated and locked in their proper position. The Interlock (INT L) indicator will be lit. The Input M~gazine of the Punch is empty. The HOPPER indicator will be lit. A Card Stacker of the Punch is full. cator will be lit. The STACKER FULL indi- There is a card jam in the Punch. The FEED A JAM or B JAM or the STACKER JAM indicator will be lit. The Chip Drawer of the Punch is full or is not in place. The CHIPS indicator will be lit and/or the READY Light will be extinguished. The Punch Check is set to stop the Processor operation when the hole count -does not agree. 5-11 The ,Processor operation is resumed, after correcting the Punch condition, by pressing the Run switch. HALT (9) There are three conditions under which HALT may light. 1) When last card of Object Deck has been loaded. 2) When machine is running in Single Instruction nlode. 3) When an XF HLT instruction is executed. Auxiliary Card Reader (25 - 29) These five indicator s function when an Auxiliary Card Reader is being used. All areas of the card feeding mechanism of the Auxiliary Card Reader froll1 the Magazine to the Stackers are covered by controls to stop the Processor in the event of ll1is-feeding. These indicators apply only to the Auxiliary Card Reader, they are not r elated to the sill1ilar indicators 1 - 4 above. The STACKR (5) applies to both Card Readers. HOPPER (25) - Input Magazine This indicator will be lit whenever the Input Magazine is empty and the Feed indicator (26) is lit. The Hopper indicator cannot be on alone. During operation, this indicator will light after the last card is read. The Processor will stop with the last card in Wait Station 2 after the auxiliary read order is executed. Proces sor operation is resumed by: Pres sing the Stop switch. Placing cards in the Magazine. Pres sing the Feed switch of the Auxiliary Card Reader once to feed a card from the Magazine into Wait Station 1; the Hopper and Feed indicator s will turn off. Pressing the Processor Run switch once to resume the operation. 5-12 FEED (26) - Wait Station 1 This indicator will be lit by pre ssing the Clear switch on the Processor Central Control Panel or by a card cycle if there is no card fed to Wait Station 1. Should this indicator light during operation, a card has failed to feed from the Magazine. If there are cards in the Magazine, the Processor will stop on the next Auxiliary Read order with the Feed indicator lit and the Read not executed. Processor operation is resumed by: Pres sing the Stop switch. Removing the cards from the Magazine. Examining the cards on the bottom of the stack to determine the reason for the failure to feed. Correcting these cards and returning all cards to the Magazine. Pres sing the Feed switch of the Auxiliary Card Reader once to feed a card from the Magazine to Wait Station 1; the Feed indicator will turn off. Pressing the Processor Run switch once to resume the operation. The Hopper and Feed indicators will be lit when the last card has been fed from Wait Station 1 to the Card Stackers. The Processor will stop at the completion of the current Read. If additional cards are to be processed; press the Stop switch, place the cards in the Magazine, pres s the Auxiliary Card Reader Feed switch and the Proces sor Run switch. RD JAM (27) - Read Jam Should the Processor stop during operation with this indicator lit, either one of the following has occurred: 1. A card from Wait Station 1 may have failed to feed to the Read Photoelectric Diodes. 2. The Read Photoelectric Diodes may have failed the "light-dark" test. Before reading the first card and between the reading of each following card, the photo-diodes are in a "light" condition. 5-13 When the leading end of a card enters the photo-diode area, a "dark" condition occur s. This light-dark change must be executed properly to as~ure correct reading; if it is not, the Processor will stop~ If the stoppage is due to a card jam before the photo-diodes, the Read 2-Execute signal is retained by the Processor; the jammed card was not read. The following procedure will return the Processor to operation without loss of data: 1. Press the Stop switch. 2. Remove all cards from the Magazine and Wait Station 1. 3. Press the Feed switch of the Auxiliary Card Reader once while the Magazine is empty. The Feed indicator will light. 4. Remake the damaged cards, if necessary, and replace them in their proper sequence at the bottom of the stack in the Magazine. 5. Press the Feed switch of the Auxiliary Card Reader once to feed a card from the Magazine to Wait Station 1. 6. Press the Processor Run switch once to resume the operation. If there is no card jam when the Processor stops with the RD JAM indicator lit, a light-dark test failure is signified. In this case: The Read 2-Execute signal is retained in the Processor; card reading did not take place, only card feeding. The card in Wait Station 2 has not been read. The following procedure should be followed to restore the Processor to operation in the event the light-dark test failure was only momentary: 1. Remove all cards from the Magazine. Remove the card from Wait Station 1. Press the Run Out switch of the Auxiliary Card Reader to feed the card in Wait Station 2 to the Stacker s. 2. Follow steps 3 thr ough 6 above. The card from Wait Station 2 should be fir st in sequence when replacing the cards in the Magazine. Should the RD JAM indicator light, try the procedure again. If the same indication persists, remake card and try again. If failure 5-14 continues have the field engineer check the photod.iode operatiQn, WAIT JAM (29) - Wait Station 2 Jam (Photo-DiQde$ to Wait Station 2) This indicator will light to indicate the failure of a card. to feed. to or from Wait Station 2. To resume the Processor operation without loss of da~a: Pres s the Stop switch. Remove the mis -fed card or cards. Pres s the Clear switch on the Control Panel of the AuxHiary Card Reader. Press the Processor Run switch. TSP JAM (28) - Transport Jam (Wait Station '2 to Stackers) This indicator will light in the event of a jam as the card is delivered to the Stacker s . The Processor will stop. To resume the Processor operation without loss of data: Press the Stop switch. Remove the mis -fed card or cards, Press the Processor Run switch. ST ACKR (5) - Stacker This indicator will light to indicate a full Card Stacker in th~ Auxiliary Card Reader as well as in the Card Reader. The Processor oPfi:!ration will stop after an auxiliary read order. To resume the Processor operat~on without loss of data: Press the Stop switch. Remove the cards from the full Stacker. Press the Processor Run switch. 5-15 B. Display Mask 6. 3 2 1 5 4 6 7 8 ( LAr321 LOr 331 LPR 341 SAr;35 ISOr 36 I SPR 371 SHR 381 SHL 39) 00000 00001 00011 00111 10 9 11 01110 13 12 ( C L R 40 I CA r 41 I C N r 421 Ie 43 I 00100 01000 10001 00010 17 18 ( JR 48 I JX 49 20 19 I AMr 501 ARr 51 11100· 11001 10010 14 16 15 J 44 (I J L 45 I J G 46 1 J E 47 ) 00101 01010 10101 21 22 01011 23 24 I SMr 52 ISRr 53 IMUL 54! DIV 55) 10111 01111 11110 11101 11011 10110 01101 11010 25 26 27 28 29 30 31 32 (TRL 561 SZS 571 LWS 58! LNr 59! SED 60lpTE 611 10100 01001 10011 00110 01100 XF €2 11000 10000 ! 32) 11111 Note: JS3, JET, JPE, JC8, JOF, JAL, J1l, and XF functions S11, RIl, RCD, SNS, SN8, Light the Indicator marked PTE. SC, LOR, LAN, BSH, CCA, XFC Light the indicator marked XF. 5-16 Mask 6 is used to determine the operation being executed during single instruction mode. For register designation, refer to Mask 9. Indicator 1 = LAr Load Ascending AR 1 or 2 2 = LDr Load Descending AR 1 or 2 3 = LPR Load Print Descending 4 = SA r Store Ascending AR 1 or 2 5 = SD r Store Descending AR 1 or 2 6 = SPR Store Print Descending 7 = SHR Shift Right 8 = SHL Shift Left 9 = CLR Clear Area to Spaces 10 = CAr Compart Alpha AR 1 or 2 11 = CN r Compare Numeric AR 1 or 2 12 = IC Increment and Compare 13 =J Jump Unconditional 14 = JL Jump Less (Numeric) 15 = JG Jump Greater (Numeric) 16 = JE; Jump Equal (Numeric) 17 = JR Jump Return (Store PAK in X Register) 18 = JX Store X Register in M 19 = AM r Add Algebraic AR 1 or 2 to M 20 = AR r Add Algebraic M to AR 1 or 2 21 = SM r Subtract Algebraic AR 1 or 2 from M 22 = SR Subtract M from ARl or 2 r 5 -17 23 ::: MUL Multiply 24 ::: DIV Oi vide 25 ;:;; TRL Translate 26 ::: SZS (/J 27 ::: L WS Load AR2 with Sign and Zone Delete 28 ::: LN r Zone Delete ARl and AR2 29 :::; SED Edit, , • AR2 and Store Ascending 30 ::: PTE Punch Text (See Note 1) 31 ::: XF External Functions (See Note 2) SuppressAR2 and Store Ascending NOTE 1: JS3, JET, JPE, JG8, JOF, JAL, J11 and XF Functions S1l,R11, RGD, SNS, SN8 light the indicator marked PTE. NOTE 2: SC, LOR, LAN, BSH, GGA, XFG light the indicator mar ked XF. 5 -18 C. Di splay Mask 8. 1 (lMSRS 2 3 I 2MSR41 3MSR3 4 I 4MSR2 I SMSR1 00000 00001 00011 00111 9 10 5 11 12 6 7 16MScsI7MSC4 01110 11100 13 14 8 f 8MSC3) 11001 10010 15 16 (9MSC2110MSCl III LSRSI12LSR4113LSR3114LSR211SLSR1 J16LSCS) 00100 01000 10001 00010 00101 01010 10101 17 18 19 20 (17LSC4} 18 LSC3119LSC2120 LSC 11 -I Cl;t<+1 Cl=0 I c2>-IC2;t<+1 C2=0 I 00000 00001 00011 00111 FALL JMP 9 10 ~ C3 = 0 I C4 > - 11 I C4 ;1'<+ 12 I C4 ='0 01110 11100 13 14 I C5 > - c3>-IC3;t<+?) 11001 10010 15 IC5 ;t<+ I C5 = 0 I C6 > - ~ 00100 01000 10001 00010 0010101010 10101 17 18 (SC6 ;1'<+ I C6 = 0 19 20 21 I C7 > - IC];l'<+ I C7 = QJ 22 23 01011 ch8 24 I C8 > - I C8 ;t<+ I C8 = 0 ~ 10110 01101 11010 10111 01111 11110 11101 11011 ICIX IC2X IC3X IC4X IC5X PE EDT 25 26 27 28 29 30 31 (C9>- I 16 32 C9t<+1 C9=0 ICIO>-IClOt<+1 clo=0IMAINT BIMAINT c) 10100 01001 10011 00110 01100 11000 10000 5 -21 11111 Mask 9 displays various indicators and registers in the 1005. Of interest to the programmer are the following: INDICATOR 1. If this indicator is lit on a conditional jump, the condition is not met. 2. If this indicator is lit on a conditional jump, the condition is met. 16. A paper tape channel eight punch has been sensed. 17. Instruction character One "X" bit present. 18. Instruction character Two "X" bit present. 19. Instruction character Three "X" bit present. 20. Instruction character Four "X" bit pre sent. 21. Instruction character Five "X" bit present. NOTE 1: NOTE 2: Instruction character one "X" bit determines the register (when applicable) the instruction will use. "X" bit absent = Register 1 "X" bit pr esent = Register 2 Instruction char acter s four and five determine the bank designation. The following table of bits illustrate bank addressing: "X" Bit Char. 4 "X" Bit Char. 5 Bank Designation Absent Present Absent Present Absent Absent Present Present 1 2 3 4 22. Paper tape parity error, magnetic tape parity error, DLT Mod Error, or invalid card code has been detected. 23. End of magnetic tape has been sensed. 5-22 UNIVAC FEDERAL SYSTEMS DIVISION FSD 1089.1 APRil 1968
Source Exif Data:
File Type : PDF File Type Extension : pdf MIME Type : application/pdf PDF Version : 1.3 Linearized : No XMP Toolkit : Adobe XMP Core 4.2.1-c043 52.372728, 2009/01/18-15:56:37 Create Date : 2014:02:11 16:37:46-08:00 Modify Date : 2014:02:11 15:58:49-08:00 Metadata Date : 2014:02:11 15:58:49-08:00 Producer : Adobe Acrobat 9.55 Paper Capture Plug-in Format : application/pdf Document ID : uuid:a0a1f57f-cbaa-7b42-9bec-e56748c01bcc Instance ID : uuid:08d96949-305b-ea42-acab-5c7b6151d567 Page Layout : SinglePage Page Mode : UseOutlines Page Count : 193EXIF Metadata provided by EXIF.tools