13.0.017_The_141_Data_Processing_System_An_Educational_Computer_for_Instruction_in_Basic_Programming_Disk 13.0.017 The 141 Data Processing System An Educational Computer For Instruction In Basic Programming Disk
13.0.017_The_141_Data_Processing_System_An_Educational_Computer_for_Instruction_in_Basic_Programming_Disk 13.0.017_The_141_Data_Processing_System_An_Educational_Computer_for_Instruction_in_Basic_Programming_Disk
User Manual: 13.0.017_The_141_Data_Processing_System_An_Educational_Computer_for_Instruction_in_Basic_Programming_Disk
Open the PDF directly: View PDF .
Page Count: 74
Download | |
Open PDF In Browser | View PDF |
~ W 1620 GENERAL PROGRAM LIBRARY ~ The 141 Data Processing System -An Educational Computer for Instruction in Basic Programming 13. O. 017 ~ lS I ~$$$$$$$$$$$I $$$$~ $He$$$$$$$$$$$ -+!*.$ $ $ $ $ $ $ $ $ $ $ i $o~ $ $ $ $ $ $ $ $ $ $ $ $$$$$$$$$$$$$ '$$$$$*-$$$$$$$ -$$$$$$$$$$$$$ -• • $$$$+$$$$+$ .-.J c: :z -t (I) o CL 0- '< . r '"r f r TTl ii' ~ (;; I ~ ~ COMMENTS -:"'~r -~~~f- ;- - (") ;- o Short comments may be placed in columns 40 through 55 of the instruction cards. Longer comments may be placed on "Comment Cards". These cards are identified by an asterisk in column 8. The remainder of the card, columns 9 through 55, is available for the camment. c Z -t I- _ ~ - - I ·cT(L= lr=::l"~'~ ---- --1- ---- 11= f- _I_~ , +-r-+ Tlf~ t L " r f L f 1 01-- II-- ' - - 1- --1 r _[ -- - I~ , I ; : I I I ~ .., 0 ,., TTl '"~ J> Z 0 t: ~=H:i:= , ff I 1 I I I 1I I I II' I~ IND i[ iL r~~ 0 -< ~ n'" it o!:: 00 0 ~ 1 zn . ffl Q'V :II:! (flO "g [[[. ::- :I:C) ~; --I~ : '-'.TTTTI< " ·i--i··- -. _. -- t . o 0; ~ 1 , Lt :liL ltiL ~ ~ I 1 , '- :-- ~ ~ : ~i- '_1 ~, __ 1_ _ _ I 1 ,--1'- I-I'----!-+ ! I 1 -- r = 1 A sample coding sheet is shown on the next page. ~r C --1--·-- r ,- - IL Ir ~ Z C) II' -< (") :I: II' ~ ~ 1I I I I I I I I~ IND, I ...o VI CD ~ m ~ I N o -() co" o'" - 16 - ~ 1 rI 0 () o . :sn z0 ! ~ CL ~ 6' -[ ::J ~r ~ ~ ~ ~ t ~ ~ '~'J.7 rrr~ rrrr~ ~I~ I N ~ ~ ) '=- The number of characters need not be specified in the Count portion of the coding sheet since it is automatically assigned three storage positions by the processor. If it is desired to refer to the address of tbe address field, a symbol may be written in the Label portion of the coding sheet. Column 17 may contain an asterisk thus allowing the assembler to assign the storage positions or else columns 17 through 20 may cor.tain the desired storage locations of the low order position for the address field. The symbol whose equivalent address is to be the address field is written beginning in column 28 of the B-operand. DECLARATIVES DCW Define ConstBII.t viith Word Mark The symbolic operation code DCW causes a constant to be loaded into storage and sets a word mark in the high-order (left most) position of the constant field. The number of characters in the constant field is specified in the Count portion of the coding sheet, (columns 6 and 7). The symbolic label by which the constant is referenced is placed in the Label area (columns 8 through 13). The code Dew is placed in columns 14 through 16. Column 17 must contain an asterisk to indicate to the assembler that it may choose the location of the constant field or else columns 17 through 20 must contain the desired storage location of the low order position (right most) of the constant field. The constant itself begins in column 24 and may extend through column 55 giving a m&ximum of 32 characters. If the constant is to be a signed number, the sign may be placed in column 23. CONTROL STATEMENTS Origin The ORG statement causes the assembler to assign addresses to the following instructions beginning at the location specified by the statement. The symbolic operation code ORG must be placed in the operation field and the absolute address at which storage assignment is to be made must be written in columns 17 through 20 of the coding sheet. DC Define Constant ORG The symbolic operation code DC causes a constant to be loaded into storage without a word mark. otherwise, it is identical to the DCW. Execute os Define SYmbol The EX statement causes the computer to suspend loading of the object program and execute part of the program prior to continuing the loading process. The symbolic operation code EX must be placed in the operation field and the symbolic or actual address of the first instruction to be executed when the loading process is suspended must be placed in the A-operand portion of the coding sheet. The card containing the Execute statement must be inserted at the point in the source program where suspension of loading i~ desired in order to execute the preceeding portion. The operation code OS causes the processor to assign equivalent addresses to labels or to assign storage for work areas. The DS differs from DC and DCW statements in that neither data nor word marks are loaded during assembly. The number of positions to be reserved in storage is specified in the Count portion of the coding sheet. If it is desired to refer symbolically to the low order position of the field reserved, then a label must be placed in the Label field. If the assembler is to assign the address, an asterisk must be placed in column 17 of the coding sheet. If it is desired to equate the label to an actual address, then that address is written beginning in column 17 and the Count field of the coding sheet is left blank. It is not possible to character adjust DS statements. &d mD The END statement is an indication to the assembler that the last card of the source program has been processed. The symbolic operation code END must be placed in the operation field and the address of the first instruction, either actual or symbolic, must be placed in the A-operand portion of the coding sheet. OSA Define SYmbolic Address EX. The OSA statement causes a three character machine language address which the assembler has assigned to a label to be stored as a constant when the program is loaded. - 19 - li- o o o • o ~ Field SECTICN 3 A Input and Output Input and Output Input and Output Output Only 1 - 6 7 - 11 12 - 14 75 - 80 B C D EXERCISES Card Card Columns Assume that no overflows will occur. Elcercise 7 Elcercise 1 Write a program that will reproduce a card, that is, will read a card and punch a card identical to the one read. vJrite a program that will check the sequence of employee numbers found in columns 75 - 80 (");f a deck of cards. The program should stop the machine if it finds any employee number that is not larger than the one in the previous card. Elcercise 8 Elcercise 2 Write a program that will read a card and punch a card with the information from columns 1 - 40 of the card read in columns 41 -SO of the card punched and the information from columns 41 - 80 of the card read in columns 1 - 40 of the card punched. Write a program that will punch consecutive numbers 001 through 015 in columns 78 - 80 of the first 15 blank cards in the punch hopper and stop automatically before punching a sixteenth card. Exercise 9 Elcercise 3 Write a program that will reproduce an entire deck of cards. Elcercise 4 Write a program that will calculate and punch D, where D = A+ B - C (all values are positive). Provide for decimal alignment, rounding (half-adjustment), and over flow. The card columns and decimal form of each field is as follows: Write a program that will read one card and will punch copy after copy of it until the machine is stopped by the operator. Input Card Elcercise 5 Output Card vJrite a program that will print a directory of telephone extensions from a deck of personnel cards. The cards and directory forms are as follows: Card Columns Field 1 -18 19 20 21 - 60 Name First Initial Second Initial Not used in this program Telephone Extension Not used in this program 61 - 64 65 - 80 Print Positions 1 - 18 20 22 28 - 31 Elcerclse 6 Write a program that will read cards containing numeric fields A, B, and C and will punch corresponding cards that contain fields A, B, C, and D, where D = A + B - C. The card columns are shown on the next page. - 20 - A B C D Col. 5 - 8 9 - 12 13 - 14 7 - 10 XXX.X XX.XX xx. XXXX. Exercise 10 Write a program that will up-date a customer's charge account after a new purchase has been recorded. A new balance card is to be punched and a listing of each customer's name, new balance, and limit is to be printed. If the new balance exceeds the customer's limit the words OVER LIMIT are also to be printed an his entry. The card columns and print poSitions are as follows: Filed Name Balance Charge Limit 'OVER LU:iIT' Input Card Output Card Listing 1 - 20 21 - 30 31 - 40 71-80 1 - 20 21 - 30 11 - 30 71 - 80 49 - 58 63 - 72 35 - 44 The Limit field is to be punched with leading zeros. -21- o ~ ~ -::t Q) rJl ·M 0 H ~ co ~ 'Tj H ~ +> Q) ~ Q co Q) err Q)+>.J:: ~ :> ~ U) . [D-G 0:': 0 § A- o I ~ 'Tj H ~ +> Q) i:CO ~ U) co +> co co Q) M 0« Q)+>.J:: Q :> ~ 0 (:) § A- U) ~;:'i ('1/ ('1/ Q I :.a ~ ('1/ 'Tj fii .-! 10 Q) 10 ·M 0 M Q) ~ ~ Q) U) i: ~ ~ Q .J:: :>- ~ 0 § A- G ~ 0 o o ~ Exercise 6 Exercise 7 f Start ) Exercise 8 Exercise 9 Gp Gp Set Word Set liord Set vJord Set Hord Mark Nark Mark ¥J8.rk s-G +-4!J--------(~ ~ J ' \ Read a \ , Card L_~ ~ J ~ ~omparejJ~ Move A, B, & C to Punch Area ~~6~~ low + high Calculate D Store New and Move to Punch Area Elnp. # 8 ( Calculate t ___ Halt D equal (---Halt -) ) Add One to Seq. # G) Q 8 - 24 - - 25 - SOLUTIONS TO EXERCISES Ex.ercise 10 EXERCI SE 1 c: S'ir' ,) ~ ~ Set Word Bal. to Cr. L:imit high Mark J. , PG LIN LABEL OP A-OPERAND 01 01 01 01 01 01 01 START SW 0001 R MCW 0080 P H Nap END START 010 020 030 040 050 060 070 B-OPERAND COMMENTS 0180 DEFINE 80 POS FL READ ONE CARD MOVE TO PCH PUNCH ONE CARD HAL T PROVIDE WM 0180 0140 DEFINE FIRST FLO DEFINE SECOND FL READ ONE CARD MOVE TO PCH AREA MOVE TO PCH AREA PUNCH A . CARD HAL T PROV I DE WM 0180 DEFINE FIELD READ A CARD MOVE TO PCH AREA PUNCH A CARD BRANCH TO READ EXERC I SE 2 Calculate 02 02 02 02 02 02 02 02 02 • , ~ New Balance Print a 010 020 030 040 050 060 070 080 090 START SW SW R MCW MCW P H NOP END 0001 0041 0040 0080 START Line EXERCISE 3 Move Data to Punch Area 03 03 03 03 03 03 , Cl;~~mIIsg. . Pnnt Area • Move Data to Print Area 010 020 030 040 050 060 START READ SW R MCW P .B END 0001 0080 READ START ~ " G - 26 - o - 27 - o o o o o EXERCISE 4 PG LIN LABEL OP A-OPERAND 04 04 04 04 04 04 START SW R MCW P B END 0001 010 020 030 040 050 060 PUNCH 0080 EXERCISE 7 B-OPERAND COMMENTS 0180 DEFINE FIELD READ CARD MOVE TO PCH AREA PUNCH REPEAT PUNCH PUNCH START EXERCISE 5 05 05 05 05 05 05 05 05 05 05 05 05 010 020 030 040 050 060 070 080 090 100 110 120 START READ SW SW SW SW R MCW Mew MCW MCW w PG LIN LA~EL OP A~OPERAND 07 07 07 07 07 07 07 07 07 BEGIN READ sw R C B H MCW B DCW END 0075 010 020 030 040 050 060 070 080 090 LOOP 6 STORE DEFINE FIELDS 0001 0019 0020 0061 0218 0220 0222 0231 0018 0019 0020 0064 B READ END START READ CARD ASSEMBLE LINE PRINT A LINE RETURN TO READ B-OPERAND STORE LOOP 0080 0080 READ STORE COMMENTS DEFINE EMPNO FLO READ CARD CaMP WITH LST CD ULOOP IF OK HALT * BEGIN EXERCISE 8 08 08 08 08 08 08 08 08 08 08 08 010 020 030 040 050 060 070 080 090 100 110 FIRST PUNCH HALT 3 LIMIT lONE 3 sw P C B A B H DCW DCW DCW END 0178 0180 HALT ONE PUNCH L1MI T 0180 * * 015 1 001 0180 FIRST DEFINE FLO PUNCH TEST FOR LIMIT S STEP SEQ NO LOOP HALT EXERCISE 6 06 06 06 06 06 06 06 06 06 06 06 06 06 010 020 030 040 050 060 070 080 090 100 110 120 130 START READ SW sw SW R MCW MCW MCW S A MCW P B END 0106 0111 0114 0006 0006 0180 0006 0011 0014 0014 0011 0006 READ START - 28 - Ii EXERCISE 9 DEFINE FIELDS 0001 0007 0012 READ CARD MOVE INPUT TO PUNCH AREA A-C A+B-C MOVE D TO PCH AR PUNCH CARD LOOP 09 09 09 09 09 09 09 09 09 09 09 09 09 09 09 09 010 020 030 040 050 060 070 080 090 100 110 120 130 140 150 160 START READ SW SW SW R A A S A MCW P MCW B 6 ACCUM 6 ZEROS 1 FIVE 0005 0009 0013 DEFINE FIELDS 0008 0012 0014 FIVE ACCUM ZEROS READ DCW * DCW * DCW * END START ACCUM ACCUM ACCUM ACCUM 2 0110 ACCUM 000000 000000 5 - 29 - READ CARD A A+B 2 A+B-C 1 HALF ADJUST MOVE TO 0 CLEAR ACCUM ~ rnCJ (Jo :c~ Z-u OC r-4 orn G):::O -< SECTION 4 EXERCISE to PG LIN 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 LABEL 010 START 020 030 040 READ 050 060 070 080 090 100 110 120 130 140 PUNCH 150 160 170 180 OVER 190 200 210 10 BLANK 220 10 MSG 230 OP A-OPERAND B-OPERAND S\-I R A MC\'1 Mal MCl'/ Mal MCW HCW C B 0021 0031 0071 0030 0120 0130 0180 0230 0244 0258 0080 0040 0020 0030 0080 0020 0030 0080 0030 OVER MOVE TO PRINT TEST FOR HI BAL 0272 PUNCH \'/RJTE CLEAR MSG 0272 INSERT MSG P MCtJ BLANK READ B Mew MSG PUNCH B DCW * END START The following subroutines written in 141 language were contributed by Hr. Hilson T. Price of Nerritt College, Oakland, California. In preparing these routines, simplicity of arithmetic method, compatability with the 1401, and compatability with each other were primary considerations. Speed of operation was deemed the least important feature since students write 141 programs as learming experience and not for production runs. READ CARD CALC NEl." BAL MOVE TO PCH T ~I Dew * SUBROUTINES DEFINE FIELDS SN 0001 S~I S~I COMMENTS THE HULTIPLY SUBROUTINE TITLE: Hultiply NNElvl:ONIC: OVER LIMIT HULT PUill'OSE: To provide the capability of multiplying a number containing up toB digits by a second number containing up to 8 digits to form a product up to 16 digits in length. STORAGE REf"UIREHENTS: OBI through OB9 091 through 099 181, through 196 197 through 200 Multiplicand (IvlULTD) Hultiplier (NULTR) Product (PROD) Additional work areas Program 100 additional locations as assigned by assembler LINKAGE: Move the multiplicand of In digits to MULTD. This field will then occupy storage positions (090 - m) through OB9. Nove the multiplier of n digits to hULTR. This field will then occupy storage positions (100 - n) through 099. Move the return Branch instruction to IvlULTX + 3. Branch to !viULT. The linkage is illustrated below: Mew (Multiplicand) lv1ULTD ~ruLTR Mmv (Multiplier) MCH RE'lUf/JIJ - 1 }1ULTX + 3 B B REWRN }1ULT REWRN (next instruction in program) - 31 - 30- o o o • o o MULTIPLY SUBROUTINE After completion of the operation, the product of In + n digits will be in PROD. Both the multiplicand and multiplier remain in their respective areas. Word marks are placed in locations 081, 091, and 181 with DCW! s during assembly and care must be exercised that they are net cleared during executior. of the main program. vJORD l'iARKS: CLEARING: Initially all three work areas will be zero, further cleari..'1g is left to the programmer. Blanking or zeroir:g of the multiplicand and multiplier a~eas will only be necessary if t~e new values contain fewer digits than the previous Quantities which utilized these areas. Zeroing of the product accumulator will always be necessary unless it is desired to sum products. SCALING: Decimal alignmer.t is the responsibility of the progrprmner. The number of decimal places in the product is equal to the sum of the number of deci1Jlal places in the multiplicar;d and the multiplier. - 32 - PG LIN Ml Ml Ml Ml Ml M1 Ml M1 M1 Ml I'll M1 Ml Ml Ml Ml Ml Ml M1 Ml Ml Ml 010 020 030 040 050 060 070 080 090 100 110 120 130 140 150 160 170 180 190 200 210 220 LABEL OP MCVJ M16 MCW M17 MCvl MUL TR M3 M4 C 1'119 B 1'19 M6 A MULTO S 1'118 M4 B SW M3 M9 A M18 A M18 CW M3 C M3 B M3 MULTX B 0000 03 M16 DCW * 02 M17 DCW * 02 M18 DCW 0198 DCW 0200 02 M19 09 MULTO DCW 0089 09 MULTR DCW 0099 DCW 0196 16 PROD M3 M6 7 M19 1 M18 MULT - + + PiWD M19 + + + COMMENTS B-OPERAND A-OPERAND M6 M3 M6 1 M6 3 MI6 3 6 1 1 U 7 + + + + 4 3 6 4 2 / 092 89 10 00 000000000 000000000 0000000000000000 - 33 - 1. THE DIVIDE SUBROUTINE 2. 3. TITLE: Divide MNEMOOIC: The following examples illustrate scaling in the divide subroutine: DIV ~ 1.2 PURPOSE: To provide the capability of dividing a number containing up to 16 digits by a second number containing up to 8 digits to form a quotient of up to 8 digits. ~ 12 Number 1. STORAGE REQUIREMENTS: Dividend Divisor Quotient Program Multiply dividend and divisor by the appropriate power of ten to clear decimals from divisor. Muliply dividend and expected quotient by the same power of ten to obtain greater accuracy. Upper eight digits (181 through 188) of dividend must be less than divisor. Before division 380 12 (DIVD) (DIVR) (QUOT) After division 181 through 196 081 through 089 091 through 099 154 additional locations as assigned by assembler 2. I-iCW RETURN - 1 B DIV B RE'lURN 380A O 12 After division LINKAGE: Move the dividend of m digits to DIVD. This field will then occupy storage positions (197 - m) through 196. Move the divisor of n digits to DIVR. This field will then occupy storage positions (090 - n) through 089. Move the return Branch instruction to DIVX + 3. Branch to DIV. HeW (Dividend) ivlCW (Divisor) Before division 31 8 (remainder) 3. 3~6 OJ\8 (remainder) Before division 380J\OO 12 After diVision 3~66 0",08 (remainder) Location of low order Eosition DIVD DIVR QUOT DIVD DIVD DIVR QUOT DIVD DIVD DIVR QUOT DIVD DIVD DIVR DIVX + 3 RETURN (next instruction in program) After completion of the operation, the quotient will be located at QUOT and the remainder at DIVD. The divisor remains in DIVR but. the dividend is lost. WORD MARKS: Word marks are placed in locations 081, 091, and 181 with new s during assemblY and care lJlust be taken that they are not cleared during execution of the main program. CLEARING: Initially all three work areas will contain zeroes, further clearing is left to the programmer. Zeroing of the dividend and divisor areas will be necessary if new values contain fewer digits then previous quantities which utilized these areas. The high order position (081) of the divisor must contain~. Zeroing of the quotient accumulator will always be necessary unless it is desired to sum quotients. SCALING: Decimal alignment is the responsibilty of the programmer. rules to follow are~listed on the next page. The - 35 - - 3l. - o o o n o o THE SUPPRESS ZERO SUBROUTINE DIVIDE SUBROUTINE PG LIN LABEL OP A-OPERAND B-OPERANO 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 02 02 02 02 02 02 02 D2 02 OIV MCW MCW Mew C 024 025 024 OIVR 07 OIVX OIVO 026 013 OIVR + 024 08 026 07 + 013 + 024 024 024 024 07 + 013 + 07 0000 07 011 013 OIVO 010 020 030 040 050 060 070 080 090 100 110 120 130 140 150 160 170 180 190 200 010 020 030 040 050 060 070 080 090 B H 07 08 MCW C B 011 A B MCW sw sw S 013 C A A OIVX 03 024 01 025 10 026 09 DIVR 09 QUOT 16 OIVD A cw cw B B OCr! * DCW * Dew * ocw 0089 Dew 0099 DCW 0196 + + + - COMMENTS 3 6 6 8 7 D26 1 OIVR - 7 1 OIVO 1 011 - 7 + 6 + + + + + 6 3 4 2 2 2 1 4 011 07 011 013 011 Suppress Zero IvlNEMONIC: SUPZR PURPOSE: Given a numeric field of 9 digits or fewer, to suppress leading zeroes (that is change high order zeroes to blankS). T U 1 026 2 QUOT TITLE: STORAGE REQUIR&~NTS: ~]ork area Program (SZA.RG) 091 through 099 82 additional locations as assigned by assembler LIneAGE: Move the numeric field of m digits to SZARG. The field will then occupy storage positions (100 - m) through 099. For example, a three digit field would occupy positions 097 through 099. I·iove the return Branch instruction to SUPZRX + 3. Branch to SUPZR. i'lew (Argument) SZARG MCW RETURN - 1 oUPZRX + 3 B SUPZR B RETURN RETURN (next instruction in program) 6 6 6 / 189 2 0000000000 000000000 000000000 0000000000000000 After completion of the operation, the field with leading zeroes suppressed will remain in its original location. If the entire field is zero, then one zero will remain. WORD MARKS: A word mark is set at location 091 during processing by the assembler. If cleared during execution of the main program it should be reset. CLEARING: Initially the work area will be zero, further clearing is left to the programmer. Zeroing \~ll always be necessary if the new field contains i'e1,'ier digits than the previous quantity \'Ihich utilized this area. - 36 - - 37 - THE EDIT SUBROUTINE SUPPRESS ZERO SUBROUTINE TITLE: PG LIN S1 Sl S1 Sl S1 51 Sl Sl S1 Sl Sl S1 S1 S1 51 51 010 020 030 040 050 060 070 080 090 100 110 120 130 140 150 160 LABEL OP A-OPERAND SZ3 Mew SZ1S szs MCW SZ1S SZARG - 8 SZ13 C SZ3 SUPZRX B SZARG MC~I szt 1+ SZS 1 Si.:5 + SZ3 S~'J Sl3 S;.:13 A SIS A SZ13 cw SZ3 + 1 szs C SZ3 + 3 SZ1S SZ3 B 0000 SUPZRX B 01 02 szn DCW * 01 SZ14 DCW * 91 02 SZlS DCW * 000000000 09 SZARG DCW 0099 SUPZR COMMENTS 8-0PERAND + + 3 6 1 - 8 + 4 + + + 3 Edit MNElo10NIC: EDIT PURPOSE: To provide the capability to edit a field of up to 8 digits consisting of dollars and cents. Leading zeroes are suppressed and a decimal point, a comma (if needed) and a floating dollar sign are placed in appropriate positions of the field. T STORAGE RffiUlREN.lliIJTS: 6 Input field Output field Program 4 1 / (EDIN) (EDOUT) 081 through 089 181 through 191 127 additional locations as assigned by assembler LINKAGE: hove the field of m digits to be edited to EDIN. This field will then occupy pOSitions (090 - m) through 089. Move the return Branch instruction to EDITX + 3. Branch to EDIT. HCW (Argument) HCW RETURN - 1 B EDIT B RETURN EDIN EDITX + 3 RETURN (next instruction in program) After completion of the operation, the edited field will be located at EDOUT. The original field remains in EDIN. WROD MARKS: Word marks are placed in locations 081 and 191 with DCW's during assembly and care must be taken that they are not cleared during execution of the main program. CLEARING: Initially both work areas will be zero, further clearing is left up to the progr~er. Zeroing of the input area (EDIN) will be necessary if the new argument contains fewer digits than previous quantities which utilized this area. The output area (EDOUT) is self clearing. SCALING: Quantities which are edited must consist of a dollar and cent amount. The following examples illustrate scaling in the edit subroutine: Input field Output field 12345678 12345 123 12 $123,456.78 $123.45 $1.23 ~.12 - 39 - 38 - o o o • o o ED I T SUBROUTI NE PG LIN LABEL OP El El El El El El El El El E1 El El El E1 El E1 El E1 El E1 El El E1 EDIT MCW MCW MCW MC\v MCW MCW MCW MCW C 010 020 030 040 050 060 070 080 090 100 110 120 130 140 150 160 170 180 190 200 210 220 230 E09 EOll 02 02 04 11 09 EOITX E019 E020 ED21 EDour EOIN A-OPERAND E020 E020 EOIN ED21 EOIN E021 EOIN E021 EOOUT B EOI TX MCW E021 SW E09 A E019 A E019 cw E09 C E09 B E09 B 0000 OCW * OCW * ocw * DeW 0191 ocw 0089 2 1 5 2 9 + + + SECTION 5 8-0PERAND E09 E011 EOOUT EOOUT EOOUT EOOUT EOOUT EOOUT E019 + + COMMENTS - 2 - 3 - 6 - 7 - 10 1 2 EOOUT 1 E011 + E09 + E011 + 1 EOll + 3 f020 Four versions of the 141 SPS Assembler and the 141 Simulator are available in order to permit maximum utilization of the computer hardware. These are identified as: Non-Monitor Versions T 9 4 3 00$0·00000000 000000000 Version A - Basic 1620 Version B - 1620 with 1443 Printer Nonitor Versions 6 4 1 / 01 82 OPERATING PROCEDURES 3 6 Version C - 1620 with 1311 Disk Storage Drive and indirect addressing Version D - 1620 with 1443 Printer, 1311 Disk Storage Drive, and indirect addressing Letters preceeding each procedure statement below identify the versions to which they apply. 141 SP S A.sSENBLER Prepare Console Version A C ABC D ABC D CD ABC D - 40 - 1) 2) 3) 4) 5) Set left typewriter margin at 10 and right margin at 95. Set. Parity Switch and I/O Switch to STOP. Set 0 I Flow Switch to PROGRAH. Set Disk Switch to PROGRM~. Set Program Switches 1 and 2 according to the options listed below. - 41 - Assemble SPS Programs Version 1) AB CD 2) ABC D 3) ABC D J...) CD Place the 141 SPS Assembler deck in the reader hopper in the 9-edge face-down position. Place the following Honitor cards in the reader hopper: "COLD STARTII, '*' JOB, and,., ,., XEQ 141SPS. Place SPS source program decks in the reader hopper. Any number of programs may be stacked for assembly. The last card of each deck must be an END statement. \"iUh the machine in HANUi.L mode, press the LOAD key on t~e 1622 Re4der-Punch unit. * 141 SIMULATOR Program Switch Options Version ABC D 1) ABC D 2) ABC D 3) ABC D 4) 2) in the READ hopper at the end of PASS I. Only those statements in excess of 100 need be processed twice. Images of the source cards are stored on the disk and therefore the length of the program does not effect the operating procedures. Prepare Console Version Switch 1 and 2 off - Object deck will be punched and program will be listed. Switch 1 off and Switch 2 on - Object deck will be punched but program listing will be suppressed exeept for incorrect statements. A program listing can be prepared from the object program cbrds on an IBN 407 Accounting I1achine. This option will greatly reduce assembly time for versions A and C. Switch 1 on and Switch 2 off - Object deck will be suppressed and program will be listed on the console typewriter (or printer). Switch 1 and 2 on - Object deck and program listing will be suppressed. This combination can be used as an edit run. Programs from an entire class can quickly be scanned for errors with onJy incJrrect statements being listed. The particular op-code or address that is erroneous will appear as the symbol =. For easy reccgnition, be sure that the Source cards are numbered in columns 1 through 5 and that the IDENTIFICATION field, columns 76 through 80, is punched. A C 1) ABC D ABC D 2) 3) CD 4) ABC D 5) Set left margin at 10 and right margin at 95. Set Parity Switch to STOP. Set 0 1 Flow Switch to PROGRAM. Set Disk Switch to PROGRAH. Set Program Switches 1,2,3, and 4 according to the options listed at the end of this section. Load Simualtor Version AB CD ABC D 1) Place 141 Simulator deck in the reader hopper in the 9-edge face-down position. 2) Place the following Monitor cards in the reader hopper: II COLD STAH.TII, '*' :j: JOB, and :j: :j: XEQ U1SIM 3) With the machine in ~~41~AL mode, press the LOAD key on the 1622 Reader-Punch unit. When the Simulator is loaded the typewriter will automatically begin typing a li$t of the functions that the simulator will perform and the request words that will initiate these functions. Functions Performed Reauest by Typing Long Programs; Version AB Load F'rogram From Card Reader Clear 141 Storage Alter Storage From Typewriter Dump Contents of 141 Storage Begin Execution of Program .Return to 1620 l'lonitor 1) An SPS assembly is a two pass operation but the 141 BPS assembler only requires that the cards be fed through once if the number of cards in the source program does not exceed 100. This reduces the amount of card handling and permits the stacking of of programs. If the number of cards in a source program is greater than 100, images of the first 100 cards are held in storage and copies of the remaining cards are punched for a second pass. These cards are removed from the PUNCH stacker and placed EXECUTE EXIT (C & D only) - 43 - - 42 - o LOAD CLEAR ALTER DUHP o o o n o Select the Desired Function f) Each function, except EXIT, is available in all versions. a) b) c) The typewriter will type the words REfUE0TED FUNCTION IS and then stop. The operator then types the word LOAD, CLEAR, ALTER, DUNF, EXECUTE or EXIT and presses the RELEASE and START keys on the console or the RS key on the typewriter. If a function runs to completion the simulator will automatically request the next function. If the function is interrupted by turning on Program Switch 1, the operator may return to the request statement by pressing, in order, the RESET, INSERT, RELEASE, and ST"RT keys on the console. The LOAD Function Programs that have been assembled by s1's function. a) Place the SPS object deck, including cards and the bootstrap card, in the b) Type the reouest word LOAD and press c) Press READER STilRT, if necessary. can be loaded with this the two clear storage hopper. the RELEA..>E and STiiRT keys. g) h) The typewriter carriage will return for a second line. This line will indicate the presence or absence of word marks. If the character above requires a word mark type a 1, if it does not, strike the space bar. Continue to type lIs and spaces until the carriage has moved across the entire line above. In the first position after completion of the word mark line, type a record mark, and then press the REL~AbE and START keys. The typewriter will now type the address of the next storage location that will be altered if steps c) and f) are repeated. Vihen altering is completed press, in order, the RESET, INSERT, RELEASE, and START keys. The EXECUTE function can be used to start the program. The DUM' Function \;hen a 141 program is stopped either by a prograr.rrned halt or by an error condition, it is desirable to be able to II DUlil II the Instruction Re~ister (I-REG)i the Operation Register (CP-REG) and the storage. The DUp~ function wi 1 list the contents of the I-REG, which will be the address of the next characte~to be accessed, the contents of the OF-REG, which is the operation code of the last instruction to be executed, and the contents of the 141 storage as it stood when the program stoppes. a) Type the request word DUNP and press the RELEhSE and ST1-\RT keys. b) \Jhen the entire storage is dumped the typewriter will request the next function. The CLEAR Function The 141 storage can be cleared (set to blanks) with this function. a) Type the request word CLEAR and press the RELEi\0E and START keys. b) When the clearing operation is completed the typewriter will request the next function. The ALTER Function Instructions and data, incluJing word marks, in the 141 storage can be altered with this function. This may be used for debugging a program or entering complete small demonstration programs directly in machine language. a) Type the request word ALTiR and press the RELEASE and START keys. b) The typewriter will type BEGINNING AT. c) Type the three digit 141 location at which the alteration is desired and press the RELEASE and START keys. d) The typewriter will repeat this location to verify it. e) Type the instructions and data in machine language, disregarding word marks. This is the only instance where the operator will have to use the typewriter shift key. For all other entries the typewriter will automatically be in the proper alphabetic or numeric shift. At any convenient place, at least one character before the end of the line, cease typing and press the RELEASE and START keys. - 44 - l!i The EXECUTE Function Execution of 141 programs can be started with this function. a) ~e the request word EXECUTE and press the RELEASE and START keys. b) The typewriter will type BEGINNING AT. c) Type the three-digit 141 location of the first instruction to be executed and press the RELEASE and START keys. The EXIT Function In versions C and D this function returns control to the 1620 14onitor. a) Type the request word EXIT. b) Press the RELEhSE and START keys. Program Switch Options a) Program Switch 1 - Turning Program Switch 1 on will cause the program to halt at the end of the execution of the current 141 instruction. The operator may either press STi~T to continue with the next 141 instruction or he may press RES~T, INSERT, RSLEASE and START to request a new function. - 45 - b) Program Switch 2 - IJhen Program Switch 2 is off the DUl-iP function will use the typewriter or printer.. When it is on the DUl!F function will use the card punch. These cards can be listed on an IBH 407 Accounting Hachine. c) Program Switch 3 - Cards punched by the DUMP function can be reloaded with the LOAD function with Program Switch 3 on. \lith Program Switch 3 off SPS self-loading cards can be loaded. d) Program Switch 4 - I f Program Switch 4 is on at the time the simulator is loaded the typing of the list of functions will be omitted. c) Card Dump Format - Cards in this format must be sequentially nunbered with the odd numbered cards containing the program and data characters and the even numbered cards containing the word marks. Special Notes ~ a) Restarting Programs - 141 programs can be stopped, dumped, and later restarted by the following procedure: 1) Stop the program by turning Program Switch Ion. 2) Dump the program on cards using the DUN1- function with Program Switch 2 on. 3) Later re-load the program using the LOAD function with Program ~witch 3 on. b) Loading Machine Language Programs - Machine language programs can be loaded either by typing them under the control of the ALTER function or by key punching them in the Card Dump format and loading them using the LOAD function with I'rogram Switch 3 on. L- 2 4 - 6 9 - 11 20 - 69 Q!m. Card Number Blank Load address Program or Data ~ Card Number Blank except for last card Blank lIs for word marks In an odd numbered card, up to fifty characters to be loaded are pWlched starting in column 20. In columns 9 through 11 is punched the address of the location in storage where the character in column 20 is to be stored. In columns 20 through 69 of an even numbered card are punched l' s for the word marks associated with the characters in columns 20 through 69 of the previous card. In columns 4 through 6 of the last card (even numbered) is punched the addre~s at which execution is to be- Console Lights - When a 141 program is stopped by a program halt,an error halt, or by turning on Program Switch 1, the operation code of the instruction just completed can be determined from the DIGIT M~D BRANCH lights on the console. The 1620 display can be converted to a 141 operation code by using the following table: gin. DIGIT AND BRANCH 03 04 21 23 41 42 43 141 OP-CODE J:l ir ) -L , A B Q SPS OP-CODE DIGIT AND BRANCH H CW CS SW A B C 53 54 55 62 71 72 74 141 OP-CODE SPS OP-CODE L LCA I'1CW NOP S R W P M if S I ~ !i d) * ** * Monitor END OF JOB cards - In versions C and D, END OF JOB cards may be used to facilitate continuous operation. In an SPS Assembly, if the last source program deck is followed by an END OF JOB card control is automatically returned to the 1620 Monitor and the next program, such as the 141 Simulator, can be called into stcr age for execution. During the execution of a 141 program using the 141 Simulator, an END OF JOB card following the data cards will automatically cause a return to request a new function. This may be any 141 Simulator function, includiri8 the EXIT function which will return control to the 1620 Monitor. The address of the next instruction to be executed can be determined by pressing the DISPLAY HAR key with the HEHORY ADDRESS REGISTER SELECTOR rotated to the OR-2 oosi tion. The 141 address of the next instruction will be displayed by the lights of the NEMORY lJ)DRESS REGI::,TER. e) 1443 Carriage Control - In versions B and D, no prOVisions are made for control of the 1443 printer carriage except for an automatic detection of a channel 12 punch which will skip the paper form to the channel 1 position. - 46 - - 47- o CJ o SQURCE PRCGRAH ~IqT~NG 13. O. 017 - VERSION C - 1620 With 1311 Disk Storage Drive and Indirect Addressing o C1 ~____ .QQ ........:OilLlQ..:....l--.-~.::..,....(~......,-,...,.........._~_.~~. _ ....__.~ 00.002 FOR 00 00 3 00 004 00 005 ~:; 00 006 /.\S,r~BL Y TEi-': ~:~ .=-. . CDCi\!T ,0 J ] , Ii! i I.T + ll--_._._. _-_.- I.E *+12 IFf"} ER:~CjiT, 0 IFM IMAGt+5,O SEEK DeTl TFf'1 ICTR,0333,8 IEtli fV1ADD!<+6, LABEL-l5 _. _____.__ _ BLC 00 009 00 010 00 all 00012 ~~-...---=-oo 013 00 014 00 0 1 5 TFM T 0 ~i 00 0 16 MLA3fL+6,LABEL-18 0 V E R S ~J , 0 I Df: i\J T- 1 CF ~C BlC NOENU RAca LAREA _.__.._..... _. _Q_.0_..--0.:.:;....19_ _ _ _-B-N-R_-=:~-+-'-3-6.....:..,-L~A-R_'_E_A,___---.- __ ._.... _...._ 00 020 BNR 00 021 B 79b CDC),",JT,1,10 E; [\J D+ It , L ARE A+ 3 0 00 024 fvJOD 025 026 027 028 029 030 031 032 00 033 AST,LAREA+14 BE . ['/jOD C CCTL,LAREA+30 BE tv10D C CEX,LAREA+30 BE ~"lOD C 00 034 BE 00 035 C CDC t·} - 2 , L ARE A + 2 8 OCDSi< CDSA-2,LAREA+28 DCDSf!, CORG,LAREA+30 00 036 00 037 BE ORGR C CB, BE C 00 038 , BNE 00 039 C 00 00 '00 00 BE IFM 040 041 042 04j 00044 00 045 00 046 00 047 INCR 00 048 00 049 00 050 00 051 00 052 00 053 00 054 P7 0:22 00 056 P4 00 057 REPl ._. ._. __._ _ .____.' ...._. __ *+24,LAREA~2 00 022 00 023 QO 1311 IN I T l ALIZ AT I (0) i'J AI'J D S T(] REP RUG RAi,il RCJ UTI f\J E ·00 008 00 00 00 00 00 00 00 00 c fj,SSEf'!J8.LER 1620 - ~:~ "...., .__D.o. ...QnL-r-' 00 017 00 018 ~41 * - - . - - - - ._ ... _ - - - - - - BLANV., LAREA+64 *+36 CNT,B,9 REPL CNT.O.9 B rEM INCR,lAREA+75 INCR,LAREA+76 BO BO 8 *+24- AM C BNE C Ltd~EA+30 ~'+nQ I CNT,l,10 BLANK, LAREA+64. P7 BLAN/<,LAREA+42 BNI! . P4 AM 8 CNT,l,lO REPL AM CNT,7,~O e .AM TO o REPl 'tNT ,4,10 LAREA+12,CNI C2 -- - . - - . - -....- .. ~~- Ib'!N'tt he. d I t _e. IlrY o.o~ 00 00 00 00 00 0 .. 0 -- 059 060 061 062 063 QU Q6 Lt 00 065 00 066 00 067 00 068 00 069 __ Di2 ___ Q 7 0 DO 071 00 072 00 073 00 074 00 075 00 076 00 077 00 078 00 079 00 080 00 081 00 082 00 083 00 084 00 085 00 086 00 087 00 088 00 089 00 090 00 091 00 092 00 '093 00 094 00 095 00 096 00 097 00 098 - 00 099 00 100 00 101 00 102 00 103 00 104 00 105 QQ lQ6 00 107 00 108 00 109 00 110 00 111 00 112 00 113 00 114 0 'f II _______ ~ 1DM fvl0D ,.,- .-. REPLllvi LOC,ICTR LTfI,:)L[ Ie It< , Cf\.J I --- ._ _---" -.-._.--,i'HJ~ ,l;V EI{ Slr-J LJV F: R:-', , leT R- 3 DCTt I H,t\ Cl: + 5 , 2 , 1 0 END +f:l-, LAR EA+ 30 PASS2 LC 5,0 IVI L.1\ '1 EL+ 6 , 1 5 , 1 0 i"l ADO l( + 6, 1 5, 1 0 MAnOR+6,LABEL+15*90 LBLF.RR LAf? E1\+ 13 0, L.Ar :~+( oivj \1 f) B ~:~- ~;!t C C/t..t_Cl~__".q __ . ., . BE t,~-1 C C2,Ci'JT TESTS'I'J Oivl0D+6, LD II\J+24 DMUDr+18,LOIN+23 Or·100 ~ 0 TE STS vJ L0 I j\J, 5 4, 1 a TT,CI.:T Bf\jE DCWR2 TFM TFf'-1 8TM B TFrv1 C BL C BL ~~+36 BLAf'JK-.I0,CNT ~:'+72 AN TOM TF TF B SF C1'-1 BNE SF TFM A ... TDr~ TFr~ AAA DSR A TF TO TO TO C BE S TO TO TD TF B .. TFt~ TF IF TFM C BE S SF IF TF B ° ERR CI'.: T ,1 , 1 ERR S (.j , 1 LOJ i\! + 1 2 , LBS L0 I r\j +6 , L8 S TESTSt,! 'LARE/\+43 LAREA+44,20,10 MH\!US+12 LAREI-\+10 MH,I US +6 , LA REA +4 3 MI ,,]US+6, eNT tv1 I f\!U S+6 , CNT - .. - -.- -_._ ........ _----_ .. __ ._._._0,5 T2 Lf-,23,9 T24,Cf\jT LDIN+6,ZERO LOIN+6,T24 LDli'J+4,T24-1 __ -.-., - - - - - - - ._ ... ----_.-_ ... _ - - ' LOli'J+2,T24-2 AST,LAREA+32 AAA ICTR,CNT LDIN+12,LAREA+38 LDIN+I0 l LAREA+36 -----.----LOIf\J+S,LAREA+34 IDF:NT+16,LOIN+12 TESTSW LOI N,,55,10 LDIN+28,LD.IN+·12. I.DIN+12!BRRD - - - - - - - ------.- LOIN+22,70,10 AST,lAREA+32 *+48 ICTR,CNT II LAREA+33 o A MINUS CH:. I .... ..... __ .. LDIN+28tLAREA+~~_. IDENT+16,LDIN+28 TES TSltJ C6 o I 1.li II. !II, , " ' OQ_2.1t6.J2S.AIL_---.IElL_.LDJ i-~±_6! 72:L6 J8 ___ .___ BAD!') BTf'~ 00 287 LD I ['I.! + 30 00 288 CF 00 289 LAREA+50,LDIN+34 TF 00 290 LDI i\! + 34 , BLAN K- 6 TF ~1 P-Il! S+ 72 00 291 B 00 292. ___ , _______l)C_~-_5t __ 0______._~_. , ____ .______ C;vI CH, LARE A+ 3 a 00 293 TABLE C 00 294 I i\lH BE 00 295 CR, L/\REA+30 C 00 296 I N1 BE 00 297 CH, Lt\REA+30 C ___________.0 0 228 IN2 BE CP, L/~REA+30 00 299 C 00 300 BE IN'+ CSH,LAREA+30 00 301 C 00 302 INCOh BE 00 303 CCI:J,LAREA+30 C 00 .~04_ INLCJZ BE 00 305 CA,LAREA+30 C 00 306 H~A BE CS _, LI~ REA + 3 0 00 307 C 00 308 BE INS CC,LAREA+30 00 309 C 00 310 BE 'INC CH, L/~.REA+30 00 311 C 00 312 INH BE CB, L!\KEA+30 00 313 C II\IB 00 314 BE CCS,LAREA+30 00 315 C 00 316 INS L11 BE __ _ CLCA,LAREA+30 00 317 C 00 318 BE INL CNOP,LAREA+30 00 319 C INf\J 00 320 BE LDI [\l + 2 2 , LBS - 4 00 321 TF _____--.-9Q_ 322 B INLBS+12 00 323 INM TFH LDIN+22,54,10 00 324 BB TFM LDIN+22,71,10 00 325 IN1 00 326 BB 00 327 IN2 TFf"" LDIN+22,72,10 BB 00 328 ----- _._---" 00 329 IN4 T F~~ LDIi\j+22, 74, 10 00 330 BB 00 331 INCOM TFM LDIN+22,23,10 00 332 BB 00 333 INLOZ TFfvl \ LDIN+22,04,1000 3~4 BB TFM LDIN+22,41,lO 00 335 INA 00 336 SB 00 337 INS TFM LDIN+22,62,10 00 338 BB 00 339 INC TFM LDIN+22,43,lO 00 340 BB 00 341 INH TFM LDIN+22,03,lO 00 342 BB 0 Cl ------. .. ...• ---- • -----;-- ---- ... -.---.--- ...... -.. ._--- -,,_._".-..._-..._- c-r au is : ££(, PM'; iklM ;; Iii #AMii. U1M iii. ( -=--=--.:...~..::,..IN:. . ;. .:=,. B____T:.. ,.;.F.. . . :"'~1.--.,.:L::....::;{)::..,.:~Ji.±'_f.?'~?LJ .· BB a ______. _. INSLH TFM LDIN+22,21,lO INL BB TFM LDIN+22,53,lO BS T FlvJ BS ~:( o L f) I [,1+ 22, 5?_-1J.p. __ .~ ___ ..._. _____.____._ . _.__ .. _ OMOO ROUTINE DC DMOO 5,0 LOIN+36,LAREA+76 LDIN+35,LAREA+75 TO TO BB AODR ES S ROUT I I\JE 5,0 DC ~:(+36, LAREA+54 BADO BO ):(·B BD ~:( BL C BNE AST,LAREA+54 TF TF \"J A, I eTR LOr i\! + 34 , + ? 4 , L ARE A+ 53 INLl3S B .-==--::~_ _ _-:::::C_.......--~S~9..L' L /'\R E:;.:.,.A:.-+. ; ;,. 5. . .;.-4_ _ ._ _ _ .___ ..___ . _._. ___ .___ ._ BI[\!.l\CT ~(+ ZER0 LDIN+34,WA L0 I r·J + 3 2 , ~'J A-I L 0 I N + 3 a , I~ A- 2 TO TO TO INLBS BC/\DJ TFfll L00 K+ 23, LA, REA +~.~. _____.______._.__ ... XX+6,LDIN+34 LOOI< BLAi'JI<-6, LAREA+74 LEXIT+6,BCADJ LDIf~rf-34, C ZERO BNE BB ADJB TF L 0 Il'~ + 34 , LBS ERRCf\T,l,lO AIII'I TOM BB BINACT TF TO ERR S l'; , 1 LDIf~+34,lERO TO TD B AOJB o B TFM TF T FfvJ 8 BCADJ f:l4 TO TO TO SF TO TO TO SF C BNE S B I LOIN+34,LAREA+60 LOIN+32,LAREA+58 L 0 I ~J + 30 , L ARE A+ 5 6 BCAOJ WAJ.,LAREA+72 WAl-l,LAREA+70 v.JAl-2, LAREA+68 WAl-2 l-'J A 2 , L 0 I N+ 3 i .. WA2-1,LDIN+32 WA2-Z,LDIN+30 WA2-2 BSIGN,LAREA+66 *+36 --------_.WA 2, I',! Al )~+24 cs - - - - -.----- - _ _ .. .. .. o .0 D.. _4'-'O"'-'OoL.-____Ar=. .___ -..l~A2.t ~Jtl... . ___ . 00 00 00 00 00 00 00 00 00 00 00 00 00 401 CF WA2 402 TO LOIN+34,WA2 40 3 TO L D I I\J -I- 3 2 , WA 2 - 1 404 TO LDIN+30,WA2-2 405 BB Lt-,-0=..;6=--:.. . . !'f.A---,----,-AQQg ~. .~S_RQ!J. T I ;; E: _. . . . 407 DC 5,0 408 AADO BO *+36,LAREA+32 409 ~D *+24,LAREA+31 410 8 I I'J L r) SA 411 C S9,LAkEA+32 ..412 BL AI ~\l/\CT· 413 C AST,LAREA+32 00 414 BNE *+84 00 415 TF WA,ICTR 00 4 16 TF L D I i\! + 2 8 , Z ER 0 00 417 TO LDIN+28,WA .. OQ..._.418 TD LD I ;\1+ 26, rJA-:J.n .... It 00 00 00 00 420 421 422 42 3 4.24 425 4 26 427 428 429 430 431 4 32 433 434 435 436 437 438 439 440 441 44 2 443 444 445 446 447 448 449 450 451 452 453 454 455 456 .QO c 19 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 T0 B TFM TF T F I'll H P. . _ _ _ ••• LEXIT+6,ACADJ LD Ii\I+28, ZERO L 0 rJ 1-( + 2 3, L ARE A + 4 2 XX+6, LDIf\]+28 ...... _. LOOK BLA;\.1 :< - 6 , LARE A+ 5 2 ADJA TFH B ACAD J C BNE B8 INLBSA TF LDIN+28,LBS 8 INLBS+12 AINACT TF LDIN+28,ZERO TD L 0 I!' . .1+ 2 8 , LARE A+ 3 8 TD LOIN+26,LAREA+36 TD LOIN+24,LAREA+34 B ACAOJ AOJA TO WA1,LAREA+50 ...----.. TO WAl-l,LAREA+48 TO WAl-2,LAREA+46 SF WAl-2 TD WA?,LDIN+28 TO WA2-1,LDIN+26 . TD ~'J A? - 2 , LDI [\J + 2 4 . ____. _.... SF WA2-2 C BSIGN,LAREA+44 BNE *+36 S WA2,WA1 B *+24 A \~A 2 , ~'J Al CF WA2 TD LDIN+28,WA2 LDIN+26,WA2-1 TD LDIN+24,WA2-2 TD BB LABEL TABLE LOOK UP LOOK TFM *+18,LABEL-3 C 0,0 ------'----...:..---:"~-~---!...-----=---- • _ L D I [\J + 2 4 , WA- 2 ACADJ --~---.- .. _. _..... _-_._....... . * C9 _ _ hiles ill 1\&44« I:: $ au t;;MikiM :1,,, "I tn OQ__ 51~ 0 0 0 00 515 00 516 00 517 00 518 00 519 00 52D 00 5?1 00 522 00 523 00 524 00 525 00.526 00 527 00 528 00 529 00 530 00 531 00 532 00 533 00 534 00 535 00 536 00 537 00 538 00 539 00 540 00 541 00 542 00 543 00 544 00 545 00 546 00 547 00 548 00 5Lj· 9 00 550 00 551 00 552 00 553 00 554 00 555 00 556 00 557 00 558 00 559 00 560 00 561 00 562 00 563 00 564 00 565 00 566 00 567 00 568 00 569 00 570 B EXR2 t j '! . _.. TE S.lSJL AA!")!) BT["1 TF L[) I I'! + 6 , LD I 1',1 + 2 8 LDI i\l + 2 8 , BLAN 1< - A LDI Lt 2 , 10 LDI :',1 -I- 1 2 , 13 LAf\J K- 6 I Dr: i',' T+ 16 , f3.LI\!"J I( - 6. TF TFf"; I" TF TF B , TcSTSh Lf..\ P f: J\ PR If'! T Vii, TY C51 TEST ~; \; + 2 Ll50, , (,08015, 022 () 26 , () 30034, 041 , 045, ().5?) , 05707?, 1 026 DAC ;;" D..AC____ 3L! ._._._....... -- RCTY P> C52 85 CLOIN A,5T CNT~1SG ENDC BRRD ZER(J C~1C\rJ CR C\. ·I CP C S~..J CClrJ CA CS CC CH CB CCS CLCA CNOP CDCt4 CDSA CDC CDS CORG ceTL CEX LBS TT T24 S9 BSIGN ~J A C8 C7 C5 C4 C3 C2 WAI , 50,LU72116,110106,105117RIOl/999,O?7 6 074028)027800102, , 3 1 , 7 (H~ 0 2 6 1 099 1 , 0 a 1 1 00 1 1 1 7 I 0 DAC DAC DAC 50" (J080 15,022029,056063/056029 ,0240671056 DAC 31, DAC 20,LUU10561056 1 , ~:, , ---_.-._.._._ .._-- ,._-DAC DAC 23, C)(jO CARDS OOD E RRO RS ~) , 14,21707070707810 DC 8,71707576 DC 6,707070 DC A , r5 LI- I!- 3 6 6 DC DC _.?L) 9 ~_~OQQ .__..... _ 6,66()OOO DC 6, 5 7() or.) 0 DC 6,626600 DC 6,1+36600 DC VC 6,410000 6,620000 DC 6, Lr 30000 DC 6, Lj-8(jOOO DC 6 , Ll· 2 () () 0 0 DC 6,/1-36200 DC ;:,--, (i), .. DC DC DC DC DC DC DC DC DC DC DC DC DC DC DC DC DC DC DC DC DC DC 6 , 5 3 L:. 3 !t 1 6 ! 5 5 ~5 6 5 ,7..____ 6 , Lj. 4 L;_ 3 n 6 6, !t Lt62 Ll·1 _..... -._._-_ .._._-- _._-_.- - ...... 0 6,/~44300 6, 4 LI-6 2 00 6,565947 6 , 1+ 36:; ?.l._ ... . -_._--_ ..... .-- ---.---.. 6, L+56 700 \ 6,333333 3,32 3,23 2,69 2!20 3,0 3,n 3,7 3,5 3, !I- _. __ - .•. .. ... ------- ... 313 .. 3,2 3,0 _... __ ..- •.. - -------_.... --. _..... _-------_... _- - ._.- ---_ ...----.----- ....--..- - -..- - ell •••'IIIIUUI II I " lU ~IU I "~~,.",,• • 571 \.J A2 DC 572 OV ERS~J DC 573 ERRSW DC 5.74 DcND QQ. 00 00 00 ~.'-~~.. 1,0 1 ,0 --,-~-- .... -_ .•...• _,..., .. 0 AS;'·j8L y .. - ... -- .... - .. _ - - , - ---~-~~~-- ---.-- _.- ..- - - -...__ ..... ....•....•....•.... - - . - - . - -... . - - - . - -..- - -...••.- ..... - ._-_•.. - o ._._--- C/2. ,!kflbll! e!!!H!,"!,' +IzI+JeiId!!LS It t dtrt tt" "j_ttt riW H"' SYMBOL TABLE 141SPS-C C\ TESTSW LTABLE ENDMSG ADDRAR ADJA BLANK CB CDC CEX CNOP CS C2 C8 DSAR ERRSW INA INH INM INI LBS LOOK ORGR PCS REPL OWA 09496 03224 05481 04064 09016 04080 10739 10775 10799 10757 10721 10836 10821 07276 10844 07858 07930 07714 07738 10805 09232 03416 05824 03026 10818 REPLIM 03110 LBLr~SG 03381 CNTMSG 10601 AAA 07120 ADJB 08458 BRRD 10667 CC 10727 CDCNT 05442 CH 10733 CNT 04087 CSW 10703 C3 10833 DCDSR 03464 DSR 07144 EXR2 09952 07954 INB INIT 09844 INN 08026 07762 IN2 02546 LC MADDR 03308 ORGR2 09856 PRINT 10036 S9 10813 WA1 10839 OVERSW LBLERR BINACT AADD AST BS CCS CDCW CLCA CORG CS1 C4 OCTL END ICTR INC INL INS IN4 LOIN MINUS OVERR PULIM TABLE W.A2 10843 03344 08398 08680 10599 10397 10745 10763 10751 10787 10073 10830 05450 05475 04068 07906 08002 07882 07786 03971 06964 03776 05872 07354 10842 MVADDR INLBSA ASt~BL Y ABSlT BAOD BSIGN CCTL· CDS CLOIN CP CS2 C5 DCWR2 ENDC IDENT INCOM INLBS INSLB LABEL LEXIT MOD OVMSG P4 TT XX 09316 08932 02402 03656 08098 10815 10793 10781 10559 10697 10235 10827 06772 10659 04011 07810 08350 09436 04102 09376 03146 05577 03014 10808 09352 MLABF.L ERRCNT AINACT ACAOJ BCADJ CA CC ~J CDSA CMCW CR C\..J C7 DMOD ENDCD IMAGE INCR INLOZ INSLH LAREA LOC NOEND PASS2 P7 T24 ZERO 03284 05448 08956 08896 08314 10715 10709 10769 10679 10685 10691 10824 08056 09568 05458 02906 07834 07978 03861 04084 03716 05620 02990 10811 10673 o I C/3 :au: IMt.Mili!'¥iiil (MAggi;'i $,$$#414 \ £$I$A,QM\lOO:;U 41 ,."u.,j' ,'I aD.. 00 00 00 00 '00 001 ),'( 002 ~:~ 003 ~:c 004 005 ~:~ * -141 - SIMULATOR FOR 1620 - 1311 INITIALIZER ROUTINE c o J,999E,ASK+41 006 BE0IN TR 00 .QO ~7~~_~T F -,11,PRELD+ll ,DO 008 SF 17982 CLE:/HZ+24 00 009 BC4 00 010 RCTY 00 011 WATY HE/\f)G 00 012 RCTY . QQ. -""0'-*1. .3'--_ .. _ _.-=:B;....!.T~M;..,.........,,..:..:t'-l~R~T-4,~·i:..:::::O~R:.:::::.D____~___.;..... _, __. ___ __ 00 0 14 BTFI ~..J RT , \; UR0 + 1 0 00 015 BTM WRT,WDRD+22 00 016 BTM WRT,~URD+34 00 017 BTf~ ~'!R T , :';URD+44 00 0 1 8 B T (vi hi R T , HUR 0 + 60 o0 0'-"'1~9_ _ _ _-=B'--_~C L F. !\r~ + 24 00 020 v.!RT BC4 CL E/-,\i!.+24 00 021 RCTY 00 022 WATY Flhl,CT,,2 00 023 BC4 CLEfiF<+24 00 024 WATY -~~r\ T+ 1 _.OQ_ 025 Aiv1 l~ R T + ~ 0 , 80 , 1 0 00 026 BB 00 027 INITZR RCTY 00 028 RCTY 00 029 WATY 00 030 RATY 00 031 SF 00 032 C 00 00 00 00 00 00, TESTL TESTL-l T EST L + 6 , t·J 0 RD+ 6 S.T AR T 033 034 035 036 BE C C TESTL+8,WORD+30 037 BE A L T El< 038 C TESTL+6, l-JORD+40 BE DSTI-~P\T C BE TESTL+12,WORD+56 00 041 00 04'2 C 00 039 00 040 00043 BE o ASK TESTL+8,WORD+18 C LE Ai< INBRCH TESTL+6, v-JORD+66 796 BE WATY INERR RCTY 00 044 00 045 00 046 RCTY 00 047 B INITZR 00 048 INBRCH WATY,BGMSG _ _----'0=-'0"'-·--,0::::...4-,-9~~_ _....:.R...:.N..:...T~Y____T.:....:E::...:S~T.:....:L=----,I=--,_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _,_______ .__._._._" 00 050 TO 17985,TESTl-l 00 051 TO 17987,TESTL 00 052 TO 17989,TESTL+l 00 053' , RCTY 00 054 ReTY 00 055 SF 00 056 B' 17990 B 00 057 TESTL OAC 10, C/1- ..--- -I \ o br'! X 'jj 0 '! rUt 1 In OQ .058 HEADG 00 059 00 060 FUr-ICT 00 061 00 062 00 063 00 00 00 00 00 OA8 OA9 070 ASK no 073 BGMSG 00 074 INERR DAC DAC DAC OAC DAC DAC DAC DAC DAC DAC DAC DAC DAC DAC DAC OAC DAC 00 00 DO 00 00 075 RCTY . 00 Q6~L._. . 00 065 00 066 WORD 00 067 071 072 3 6 lE~li\C T I Ol\i S I) F. RF 0 P.f'-1 E D 1 8 , R ~:: (.) I J EST 8 Y T Y P I 1\' G(i) , 40 , L (J /\ D P :~ (] C F), A H F RlJ r'1 4 CLEA. R 1. (f· 1 ST CJ RAGE °, CAR D H E AD E R ALTER STORAGE FROM TYPEWRITER 40, 40, Lj·O , DU;"iP CCJ:·JTEi\JTS OF }ll-l STURAGF BE G I ['\' F: xr: C.lJ T I U1\ I UF PRUG f~ Ai'.'i if- a , RET U PJ'I T D 1 6 2 0 .~1 D f\J ITO R 5, LUJ\[j(i), 6 , eLi: 1\ R (;) , 6, !\LTl::Rc;) , 5,OUiiP;1l, 8 , F: X t: CUT _~~! . 5,F:XITr0, 23,RLQUESTED FUNCTION IS 1 5 , t') E G I j\1 j\j I i'J GAT cJ, ~, INVALID REQUEST WDRD.@, 24, ~:~ 07A ~~ LOADER RUUT I ;,;~: .----------.-.. -. 077 ~:~ 078 START RCTY 079 BC3 LDU;i i) 00 080 00 081 TF 18161.RLANKS 00 082 ~_ _ _ _-:...T...:-F_--=1~8...::;:..1--:..4-=-1 , B LA I\J 1< S 0 00 083 TF 18121,BlANKS 00 OBLt TF 18101,BlANKS 00 085 TF 180g1,BLANKS 00 086 TF 18061,BLANKS 00 087 TF 18041,BLANKS 00_ ORS _ _ _ _ _ _ _T_F_--'1"'-S_f.....;.12.:c..;;- ,~B LAN K S-1_____ ._. _._ _ _....._.... 00 089 RACD 18003 00 090 TFM FTEST+11,lB002 00 091 B 00 092 00 093 ~:~ INSTRUCTION I~\CCESS RCHJTli\IE 00 094 00 095 f\lE XT I i\J Bi~C 1 ~:~ +6 0 00 096 B T tvl CVTRl:G,O,10 t.~+35, 179S3 00 097 TF :~+18, IREG-l 00 098 TF 0,0 00 099 H J .;;.....,. ... ___ .OD_. 100 • , ! 00 00 00 00 00 00 00 00 00 00 00 00 00 00 101 102 FTEST 103 104 105 106 107 108 109 110 111 112 113 114 A~'I BT BNF TF FTFST+l1,2,10 TESTI-II,FTEST+11 ':' .... 3 6 , 0 , 7 1 79 (3 L;. , - F TEST - 1 1 TJ\BLE B AM \ FTF:ST+l1,6,lO· TESTHI,FTEST+ll 8T 17990,-FTEST-ll TF BNF *+24,-FTEST-l1 B TABLE BNE BO TF ~:'+72 AM ""+23,1,10 eM 17983,42,~0 ~'+60 , 17990 ------_._ _ ..• ... _--- ~(+35,FTEST+11 CIS uaEaCi: Uil lie 1&444141#11 . $ aMI 01 ;::;:::;;: ..., I :1 _ _...... BJ.,LD_~ ___ ~:~ +2 Lt , U B 8+ 1.? OO._ll~_ 00 00 00 00 - 00 116 117 118 119 120 00 121 A~'i o F T::: S T+ 11 , 2 , 1 () TEST i-ll , F TEST + 1 1 BT BNF *+3h,-FTEST-11 TF 17992,-FTEST-ll ________B ___~-~Al}L-~+2B8 ,00 122 00 123 00 124 00 125 00 1 2 6 AM BT TF BNF 17996,-FTEST-ll *+24,-FTEST-l1 B T t\ !-: Ll~ + 96 FT~ST+11,4,lO T EST ;-: I , F TEST + 11 -DO. __ 12.7-L-_____Cw...tI:i- _____.L1.2.B_::;.-2-2 3!.~.o __ _ 00 128 bE SW 00 129 CM 179U3,21,lO OU 130 BE CS-6U 00 131 AM FTEST+ll,2,10 00 132 BT TESThl,FTEST+ll 00 133 BNF *-24,-FTEST-ll 00 134 TF~ 799-(~:,~-:'F-frsf-l (--------00 135 B TARL2+288 00 136 TEST FOR WRAP~AROUND OFF HIGH END OF CORE. 00 137 DC 5,0 00 138 TESTHI CM *-1,20000 00 139 BNl *+24 00 140 BB 00 141 RCTY 00 142 WATY Hli',SC; 00 143 RCTY * 00 1't-4 00 00 00 00 H 145 146 HIMSG 147 148 00 149 B D S T !\;", T DAC L~ 7 --~------------------------------ , H I l H/i ITO F COR E E XC EED ED. .. --..--- ---_._. . --- ------- _.- PUS H S TAR T Tn n U~'1 P • ('J , ~~ )~ * TABLE SEARCH Ful~ OPERATIONAL SUBROUTINE TABLE ORDER - R,W,P,H,SW,A,S,CS,CW,MCW,C,LCA,B,NOP. 00 150 ),'t 00 151 TABLE 00 152 00 153 00 154 00 155 00 156 Cf" BE CH BE CfVl BE 17983,71,10 R 17983,72,10 t...J 17983,74,LO p _ _~00~=-15~7_ _ _ _Ctv1 ;::;.,;...;.._--=-~,;;...;;;:..~~~-.-_ _ _ _..,......,.-_ _ _ _ _ _ _ _.__________ 1 79 F3 3 , 03 , 10 00 .158 H BE 1798~),23,10 00 159 CM 00 160 00 161 00 162 00 163 00 164 00 165 BE BE 17983,41,10 I A CM 17983,62,10 BE S CM BE eM 17983,21,10 CS-84· 17983,04,10 BE CW 00 169 CM 17983,54,10 00 170 00 171 BE Cfv1 MCv! 1 79 8:? , 43 , 10 o CI& -------~------ _ S ~'J Clv1 00 166 00 167 00 168 ----.-------.------.•. o !t tl ti ttt"#Hi'- 0<) 00 00 00 00 00 00 . 00 00 00 00 00 00 --- ..• _ ....-------00 00 00 00 00 00 00 00 00 0 112173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 . 197 198 199 200 201 202 203 204 205 206 207 20B 209 210 211 212 213 _-"b=-=~ CiVI Bt: CM BE C 'U _ _ _ _ _ _ ' ••• 1 79 B3 , 5 3 , 1 0 LC 1\ 17983,42,10 8 17983,55,10 BE i\! tXT I.f\~__ ._ .___ .... ~:, If\JVALID OP CClUt: RDUTII\JE ERRORI RCTY C~ ~'JATY fJP"',SC ReTY [3 OP[\1SG DAC C D~ L I il + 36 '+l,Ir:VALID IN.~.rRUCTIOf~I ~:, OPERATIONAL SU::.ROUT Ir.!ES ~( \~.' R I T E S 1..J BR C)U T I : : E TFf-·1 ~:'+?3, 18561 --'C"---__Z...:....;E-'--J_)J_J~.___":.S :: 3 flLQ___ __ _ BNE RE . S r~ \. ' + 23 , 2 , 1 0 C ~1 H+ ~ 3 , 1 8 Lt 0 1 BNE \.!+ 12 B SECL RE Atv1 W+23,2,lO ~:'+4 7, -hl -23 TO -\tJ-23,400 TO ----=.:----..;_ _ _ _ .-.-.,------'~---'-- 00 -_._- --- -_.-_. 0 I· .. 00 -- 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 '00 QQ /14 00;215 00 216 00 217 00 218 00 219 00 220 00 221 00 222 00 223 00 224 00 225 00 226 00 227 00 228 • SECL TDfV\ RCTY TO BV SF C -\:J-23, .. __._ __ ..._. ..- - - - - - - - _..._---- ':'+ 12 Tor~ BNE ~:'+36 BV ~:'+2't B TO TO WATY TOM ':'+47,18603 18603,400 18563 18603,0 B -ZEROES DC ---- a 18562 18601,ZEROES 18562,0 Bcrt •. __ P.V.St-i START TQDUlvlP.(:), 8-2L~ ._-- B-.2 L,. 40,0 READ A CARD SUBROUTINE RACD 18003 R BNR \ B-24,18003 6NR B-24 ! 18.005 * '8 *P 796 PUNCH A CARD SUBROUTINE WACD 18203 8-24 B HALT SUBROUTINE H BTM CVTREG!0!10 TF *+35,17983 TF. *+18,IREG-1 * CIT =:SUZtltUI.' J : ii_MAgU;;'. \ . u;; ..--..............,.---------,,-... .... ...- , --.. ,~~~-' ".',1 " 1 _ _ _--'-'-H_ _ .___.0 _J.D _ _ OQ. .....-....-L-_ 229 B B ... ?A 00 230 00 231 SET ~v 0 R0 HAR!( ~.~ U BR 0 UTI I\l E B Ti"'j C(F·! V T t\ 00 232 Sv·J o * 00 . 00 00 .00 00 00 00 00 233 23 f t TF S ,-1 ';'+30,1 7989 ':;; .... 1 8 , 1 , 1 0 . SF 0 2~5 BNF ':~+?Lt, 17990 236 B j\J E ~< T I j"\; 237 238 BTH CU,·'VT lJ TF ~:~ + 3 U , 1 7 9 95 239 S~'i ':~+18,1,10 240 SF 0 ...... QO 241 00 242 B I\JE XT I1\! 00 243 ):~ CLEAR WCJRD j"\(.\RI< SUBROUT INE 00 244 B Tfvl COr·!VT A 00 245 TF ~:'+30, 17989 Sfv'j ):'+18,1,10 00 246 CF a --_QQ 247 BNF ):~+24, 17990' 00 248 B . j\j EXT (j\ 00 249 B T {Vi C0 j'.J VT B 00 250 TF );'+30, 1 7995 00 251 SM ):'+18,1,10 00 252 CF O' 00 253 00 254 B NE XT I hi 00 255 ~:, MOVE CHARACTER TO A OR B FIELD WORD MARK SUBROUTINE 00 256 MCH CONVTA B TIVi 00 257 Ivl ov r: + 11 , 1 7989 TF 00 258 (vlUVE+23,17989 IF 00 259 SM MOVE+23,1,lO BTr.,., COj\]VTB 00 260 TF MDVE+6,17995 00 261 00 262 TF MDVE+18,17995 SM MOVE+18,1,lO 00 263 00 264 BNF MDVE,-MOVE-18 _ _ _00 ~......=...--,-265 _ _ _~T,--D_r_~. .,. -S;;. .F. . . .;C;. . F_+.......;1~,o....;;2~_-.-' ___________.... _..... _.... ___._._._... _ 00 266 T 0 r~ t'l 0 V E+ 2 5 , 9 TO 0,0 00 267 ~10VE 00 268 TD 0,0 NOP SFCF-12 00 269 00 270 BNF SFCF+24 r -MOVE-18 _ _---!:"-=---.....~ 00 271 _ _ _-'T_p;..:..M.:.--_:.S'_l..F....1::IC'_l..F....;.+......=1'_',_=3~_ _ __ _ . - - - _ _ _ _ _ _ _.....___.... _ ....._..._..._ . _._._.._.... _..... _ ......_.. TDM MDVE+25,1 00 272 00 273 SFCF SF - fill 0 V E- 1 8 , 0 00 274 a NEXTIN 'SM MDVE+6,2,lO 00 275 00 276 SM ,MDVE+ll,2,10 SM MDVE+18,2,10 00 277 00 278 SM MDVE+23,2,10 00 279 eM MOVE+18,18000 00 280 Bl CORl I tvl 'eM MDVE+23,18000 00 281 aNL MOVE-36 00 282 CORLIM' RCTY 00 283 ------'-----------....--..;....---------..;..-------------------. 00 284 BNR B-24,18003 00 285 B 796 o o CIS CI 00 286 00· 287 00 2RR 00 2R9 00 290 00 -291 ~~ A T Y RCTY C(J R1'\ S G BT 1"1 C VT R[ G , 0, 1 a TF TF H ::'+35, 1 7983 ::'+1(3,IREG-1 0,0 . ___Q.0 292 B DSTA!',T '00 293 CDRMSG GAC 48,LUW LIMIT OF CORE EXCEEDED. PUSH START TO 00 29 Lt- ~:, COtJ1PARE SUBRUUTINE B T [v) C [J;'! V T t\ 00 295 C B Tj\'1 CO::VT B 00 296 00 297 -1799~,-1798Y C 00 29H I:3NH ::'+ 36 -_._. __ .__._---_._ .._-_._._-- - - OU 299 HIGH SF HIGH B ::,+?L,_ 00 300 00 301 CF HIGH Bf~E ::'+36 00 302 00 303 EQUAL SF EQUAL f3 ::,+?LI00 304 ---'---------_._-_.00 305 CF E OlJ!\ L 00 306 B ~·l EXT II \j 00 307 ::' BRAI\JCH SUBRC)lJT I I\JE 00 308 B i\J F B+ 1 2 , 1 7 98 4 00 309 B NE: -<--_ _ _ _ _ • czs _auwiS::: iii li!l ill 1M: JilM?m;gti.M gq # ," QO 00 00 00 00 00 00 ~ .00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 685 Ill_ _bU1S_± 6':1 t it 0 0 _ C[)F:Ri~, \r.!MS+16 BO 686 STFLC+6,TR+6 687 TF 688 W~'lS SF H('JiS+l,40,10 689 Ctvl ~:~+ L'r B 690 BE 62J______L~ ____ ~::±3_D_,TF\_Tq__ . --- _ -. -~:,+ 1 B, 101 , 9 692 Af"l TOM 0,0 693 694 TDfvl ALTSl';,O cor';;-ILij\J 695 B 1 7 9B j , I.,'H-i S + 3 696 EXEC TO 697 TO 1 79 fs_l.tYU'1j S +4 ---_._ ,. 698 1 79 fVJ , h'r"i S + 5 TD 699 1799U SF TFfvl 1. , L~9 , 10 700 701 B B 702 CDERR WATY CDHSG RCTY 703 -H 704 705 S Ti\R T B 706 ALTSW DC 1,0 707 CDrv1SG DAC 38,ScQLJENCE ERRDK.. PUSH START TO RE-LOAD@, 70S FIRST DSC 4,000(;), 709 tiMS DSS 120 -_..._ _--_ .-.710 BANDC DAC 50, DAC 30, 711 DEND BEG II': 712 ,,_ .•. C' .. - .. "'--~-~."--'--' ~ ------------------- - ---- .. .. - 0 ----------------------------------- ----------------------------- --- --------,----------- ------------------------,------------------ _0 C25 SYMBOL TABLE 141SIM-C () ZEROES STRIPB INITZR ERRORI CONVTB A ALTSW BANDB BLNKS CS EXEC HEADG INERR 05501 07434 02654 05008 08816 07014 11618 10283 10563 08408 11498 03035 03769 Mew 05898 OUT 10086 RE 05222 SAVC 09258 START 03816 TESTL 03015 TRM 11006 HORD 03623 TSIGNB STRIPA INBRCH DSTART CONVTA ADD AMSG BANDC C C~~ FIRST HIGH INSRM MOVE P READ1 SECL STFLG TEST5 TYPE WR.ITE. 07338 07686 02906 09006 08738 07818 08119 11821 06438 05766 11696 06486 09270 06030 05550 10922 05282 11078 09666 09498 09750. 07590 08256 08323 10634 10982 10567 03693 06954 11570 10627 04068 04579 10607 10814 08972 11150 06102 05634 06858 UPPER 06906 WRT 02570 TSIGNA POSCNT FIELOB CVTREG COMMON ADDR1 ASK BCE CDERR DIV FTEST HIMSG IREG NEXTL PRELD RM SFCF SW TINY _. TESTHI NEXTIN FIELOA CORMSG CARONO ADDR2 B BEGIN CDMSG OMOD FUNCT IN LCA OPMSG PWM S SLASH TABLE TITLE W 04482 03984 08289 06343 10572 10570 06606 02402 11621 06678 03143 09930 08684 05057 09618 07038 06810 04672 10575 05138 SWENOD INSRM2 ERROR2 CORLIM BLANKS ALTER BANDA BGMSG CLEAR EQUAL 10564 09882 08070 06222 09004 10754 10123 03739 08888 06534 H 05574 INCR 09702 LOUMP 11210 OPREG 10609 R 05502 SAt"E 06834 SN 07914 TDIG 11030 TR 11342 HMS 11700 C27 _ _"_SUJuan sa iSI! hi Ii l2 Ii 1.. _4 tt. ¥ ;,J 1 a1t t " t t " he +rltt:iW+*iW / I I, .w t' J) 1 [,I *MJI'. w,'::tin" ••' t*Wi tMt'Mt! I" tBM 1 o 1 !; 'M! # 4Mb *ftriritti'''\ OR. JOHN MANIOTES COMPUTER TECHNOLOGY DEpt PURDUE UNIVERSITY CALUMET CAMPUS HAMMOND. IN 4 _ .TIl E 141 DATA PROCESSING SYSTEM C: -0 COMPUTER TECHNOLOGY hlCUlII¢ WMH*M'W"t'ttrd'"#rl't'Mtt' te' we u' 11 II j teN eM : I , p Description o The 141 Data Processing System is an abbreviated version of the IBM 1401 Data Processing System. It is an internally stored program machine with the following features: 1. Input: IBM Card Reader 2. Output: IBM Card Punch and 100 character per line Printer 3. Storage: lOO..Q..positions of core storage with three digit numerical addresses 4. Instruction length and date length: Variable. Each position is designated by a three digit address in the range of 000 through 999 and is capable of storing one character: I a letter of the alphabet a numeric digit or a special character such as. , / or):(. A group of consecutive storage positions make up a field. Both data and instruction fields are variable in length so that no storage space need be wasted with meaningless blanks or zeros. I Data If a field is used for data it is referred to by the address of its low-order (rightmost) digit position. A special indicator called a word mark is placed in the high-order (leftmost) digit position to indicate the length of the field. The machine reads a data field from right to left starting at the addressed low-order position and continuing until a character with a word mark is met. For example, a 5 digit data field in storage locations 482 through 486 would have a word mark (indicated by an underline) in position 482 and would be addressed by 486. 7 o 3 4 5 Ins tructions -When a field contains an instruction it is addressed by the hiqh-order position (left-most position) of the field. This position contains the operation code character and a word mark. In addition to the operation code character I an instruction may also cortain one or two 3-digit addresses and/or a modifying character. An instruction may therefore contain 1,4,5, or 7 characters. The machine reads instructions from left to right starting with the addressed high-order position and continuing until it meets the word mark in the high-order position of the next instruction. Character Coding Each position of storage is made up of eight ferromagnetic cores - each of which can hold one "yes-or-no" bit. Four bits are needed to represent the digit portion of the Hollerith code of the characters;.Jwo bits are needed to represent the zone portion of the Hollerith code of the characters; one bit is needed to indicate the presence or absence of a word mark; and one bit is used for checking. The digit portion is coded in the Binary Code Decimal (BCD) system in which the four bits have the values of 1,2,4, and 8 respectively. The sum of the "yes bits is equal to the value of the digit. II Digit 1 • 8 4 2 3 4 5 6 7 8 9 o x 2 X X x X X X X X 1 X X X X X X X (1) .Ut/liff 'b hbtt"w+tritrtirtkW I iw"r-r- 1'#1 The 0 digit is represented by the 8 bit and the 2 bit rather than no bits at all.. In representing alphabetic and special characters the zone is represented by the lLand the B bits as follows: 0 Zone B 12 (A-I) X 11 (J-R) X o (S-Z) no (O-g) A X X The C bit is used for parity checking and is chosen so that the character will contain the odd number of "yes bits. For example the letter C which is given by the 12 and 3 punches on the IBl\A is represented in the seven-bit alpha'meric code as: Seven-bit alphameric code Card Code Character C B A 8421 C 12-3 x X X X X It C· I • J N t.$ h t' -.t'db#bf"y TABLE I 0' Character Card Code Blank Blank 12 - 3 - 8 12 - 4 - 8 12 11 0-1 0-3 - 8 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: . }:r & / I A B C D E F G H I J K L l\tl N 0 P 0 Q R S T U V W X Y Z 0 1 2 3 4 • o- X X 8 9 X X X v X X X X X X X X X 1 X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X .~ X 9 X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X 8 9 X X .i~ X 5 X X 3 4 6 7 2 X X 5 X X 0 1 2 6 7 4 X 6 0-7 0-8 o- Seven-bit Alphameric Code C* B A 8 X X X X X X X X X X X X X X X X X X X X X X X X X *Check bit to produce odd-parity. Table shows values for positions with no word mark. Reverse if word mark is present. - (3) X r:i 1" t' t.rt. ph_drH . t t Operation Codes SW Set Word Mark -I-aaa The Set Vvord Mark instruction causes a word mark to be set at the A-address. Data at this address is undisturbed. CW Clear Word Mark }:( aaa The Clear Word Mark ins truction causes the word mark at the A-addres s to be cleared. Data at the A-address is not disturbed. () MCVV Move Characters to A or B Vvord Mark instruction causes the data in the Afield to be moved to the B-field. The first word mark encountered stops the operation. The data at the A-addres s is unaffected by the move operation. Word Marks in both fields are undisturbed. • R Read a Card 1 The Read a Card instruction causes the information in columns 1 through 80 of an IBM card to be read into storage locations 001 through 080 respectively. The IIollerith code of each column is converted into s ix-bit alphameric code as it is read into its position of core storage I according to Table 1. Word marks are undisturbed. The C check bit of each position is automatically set to produce an odd parity. P Punch a Card 4 The Punch a Card instruction causes the information in storage 101 through 180 to be punched into columns 1 through 80, respectively I of an IBM card. The s ix-bit alphameric code is converted into Hollerith code according to Table 1. The information is location 101 through 180 t including word marks is undis turbed • I w Write a Line Z The Write a Line instruction causes the information in storage locations of 201 throu9h 300 to print in the one hundred print positions of one line on the printer. The information in storage t including word marks I is undisturbed. The printer takes one automatic space after printing a line. A Add A aaa bbb The add instruction causes the data in the A-field to be adaed algebraically to the data in the B-field. The result is stored in the B-field. The defining word mark of the B-field stops the operation. If the A-field is shorter than the B-field t a word mark in the A-field will stop the transmission of data from the A-field, but any resulting carries will be added to the contents of the B-field until the word mark in the B-field is met. S Subtract S aaa bbb The subtract instruction causes the data in theA-fi eid to be subtracted algebraically from the data in the B-field. Word marks control the operation in the same manner as in the Add operation. c Compare C aaa bbb The Compare instruction causes the informatiOil1n fields A and B to be compared character to character. The six-bit configuration of each character in the two fields is compared. \-Vord marks and check bits do not enter into the comparison. If two corres ponding characters are not the same I the Unequal Compare Indicator is turned on; in addition I either the B Field High or B Field Low Indicators would be turned on according to the results of the comparison. Each of these indicators may be tested by a Branch if Indicator On instruction. The indicators are not turned off until the next Compare instruction. If all indicators are off after a Compare instruction has been executed I an equal condition may also be tested by a Branch if Ihdicator On instruction. (4) it It , o The first word mark encountered stops the operation. If the A-field is longer than the B-field, extra A-field positions beyond the length of the B-field will not be compared. If the B-field is no longer than the A-field, an unequal compare results and the Unequal and B-Field High Indicators are turned on. B Branch B 111 The Branch instruction causes the program to branch to the instruction specified by the I-address. B Branch if Indicator On B iii d In the Branch If Indicator On instruction the d-character specifies the indicator tested. If the indicator is on the next instruction is taken from the I-address. If the indicator is off the next sequential instruction is taken ~ I Indicator Unequal Compare (B~ A) Equal Compare (B=A) Low Compare (BA) d-Character 1 S r I Same T Top U Upper HHalt ~ The Halt instruction causes the program to start with the next instruction in sequence • • (5) ClUJ; 2hl'" II'}' SECTION 2 1.41 SYr!lbolic Programm.!P9 System o The Symbolic Programming System, SPS I has been developed to facilitate logical, efficient programming with a minumum of actual coding effort It almos t completely relieves the programmer of the task of assigning actual storage location to the instructions and data of the program and allows hirn to refer to them by eas y-toremember names of his choice. 0 Ins tructions Instructions written in SPS contain a Label, an operation code, an A-Operand, a B-operand I and a d-character. Any 0 f the parts except the operation code may be left blank. The Label is the symbolic representation of the location in memory that the instruction will be stored. It may have from one to six alphameric characters I the first of which must be alphabetic and must be placed in column 8 of the coding sheet. The Label may be left blank if no reference is made to the instruction in the rest of the program. Tpe Operation Code may be either Mnemonic or the Machine-language code Mnemonic c odes are used from one to three characters starting in column 14. If the machine-language code is used I it must be placed in column 16. 0 o If the instruction requires an A-Operand it is written in column 17 through 26. If no A-Operand is used, those columns may be left blank. The addres s of an operand may be expressed symbolically or actually. If it is written symbolically I it takes the same form as a Label. If it is written as an actual location I it must be a four-digit number with leading zeros where necessary. Although four digits are written on the coding sheet, only three characters will be used in memory. Adjusted Address The address of an operand may be adjusted by placing the number of characters of adjustn1ent in columns 24 through 26 and the sign of the adjustment must be in column 23. Leading zeros may be omittedbut the units digit of the adjustment must be in column 26. The indexing character (column 27) is not used with the 141. If the instruction requires a B-Operand I its address is written in the same manner as the A-Operand. When an instruction requires a d-character I the actual machine code is placed in column 39. DGVf - Define Constant with Word lVlark • The symbolic operation code DeW causes a constant to be loaded into the area specified and sets a word mark in the high-order position of the field. The nu mber of characters in the constant field is placed in the Count portion of the coding sheet (columns 6 and 7). The symbolic label by which the constant is referred is placed in columns 8-130 The code DCW is placed in columns 14-16. Columns 1/-20 must contain the actual location of the units position of the field, or an asterisk must be placed in column 17 to indicate the SPS program is to choose the location of the field. The constant itself begins in column 24 and may extend through column 55, a maximum of 32 characters. If the constant is to be signed numeric constant, the sign may be placed in column 23. (6) i:aJJ.4kiU' End o The special symbols END placed in columns 14-15 of the coding sheet signifies to the SPS program that it is the last line of the program. In the A-operand field of this line must be placed either the symbolic or actual address of the first executable instruction of the program. The additional purpose of the END card is to provide a branch to the beginning of the object program at the end of the loading 0 SECTION 3 Exercises Exercise 1 Write a program that will reproduce a card I that is I will read a card and punch a card identical to the one read. Exercise 2 Write a program that will read a card and punch a card with the information from columns 1-40 of the card read in columns 41-80 of the card punched and the information from columns 41-80 of the card read in columns 1-40 of the card punched. Exercise 3 Write a program that will reproduce an entire deck of cards • o Exercise 4 Write a program that will read one card and will punch copy after copy of it until the machine is stopped by the operator. Exercise 5 Write a program that v.Jill print a directory of telephone extensions from a deck of personnel cards. The cards and directory forms are as follows: Card 1 - 18 19 20 21 - 60 61 - 64 65 - 80 Print Pas itions Field Column~ Name First Initial Second Initial Not used in this program Telephone Extens ion Not us ed in this program 1 - 18 20 22 28 - 31 Exercise 6 Write a program that will read cards containing numeric fields A, B I and C and will punch corresponding cards that contain fields A, BI C I and D I where D = A + B - C. The card columns are as follows: • Field A B C D Card Input and Output Input and Output Input and Output Output only Card Columns 1 - 6 7 - 11 12 - 14 75 - 80 As s ume that no overflows will occur. (7) Exercise 7 o Write a program that will check the sequence of employee numbers found in columns 75 - 80 of a deck of cards. The program sbould stop the machine if it finds any employee number that is not larger than the one in the previous card. Exercise 8 Write a program that will punch consecutive numbers 001 through 015 in columns 78 -80 of the first 15 blank cards in the punch hopper and stop automatically before punching a sixteenth card. Exercise 9 Write a program that will calculate and punch D I where D = A + B - C. Provide for decimal alignment, rounding (half-adjustment), and overflow. The card columns and decimal form of each field is as follows: Input Card A B C Col. 5-8 9-12 13-14 Output Card Col. 7-10 D xxxx. Exercise 10 o Write a program that will up-date a custorner's charge account after a new purchase has been recorded. A new balance card is to be punched and a listing of each cus tomer's name I new balance, and limit is to be printed. If the new balance exceeds the customer's limit the words OVER LIMIT are also to be printed on his entry The card columns and print positions are as follows: 0 Input Card field Name Balance Charge Limit OVER LIMIT 1-20 21-30 31-40 71-80 Output Card Lis ti1J.5L 1-20 21-30 11-30 35-44 71-80 49-58 63-72 SECTION 6 141 Simulator Operating Procedures Adjus t the Typewriter a) Set left margin at 10 b) Set right margin at 94 c) Set a tab stop at 65 (clearing any other tab) • Set Console Switches a) b) c} d) Set parity switch to STOP Set I/O switch to STOP Set O'Flow switch to PROGRAM Program s'CNitches #1 and #'2 will normally be OFF. Uses of these switches will be explained later. Program Switches #3 and 4t:4 are not used. (8) a I.! Load Simulator o a) Place 141 Simulator deck in the hopper in the 9 -edge face-down pos ition. b) With the machine in 1Y1anual pres s the Load button 1 • c) When the simulator is loaded the typewriter will automatically begin typing. It may be necessary to press the Reader Start button to enter the last two cards. Select the Des ired Function a) The typewriter will type a list of the five functions that the simulator will perform and the five request words that will initiate these functions. FUNCTIONS PERFORIv'IED REQUEST BY TYPING LOAD PROGRAM FROM CARD READER LOAD CLEAR 141 MElVI0RY CLEAR ALTER MEMORY FROM TYPEWRITER ALTER DUMP CONTENTS OF 141 MEMORY DUMP BEGIN EXECUTION OF PROGRAM EXECUTE b) The typewriter will type the words REQUESTED FUNCTION IS and then stop. c) The operator then types the word LOAD, CLEAR, ALTER, DUMP or EXECUTE and presses the RELEASE and START buttons on the console or the RS key on the typewriter. d) If a function runs to completion the simulator will automatically request the next function. If the function is interrupted by pressing INSTANT STOP the operator may return to the request statement by pressing, in order I the RESET, INSERT I RELEASE, and START buttons on the console. o The LOAD function Programs that have been assembled by SPS can be loaded with this function. a) Place the SPS object deck, including the two clear storage cards and the bootstrap card, in the hopper. b) Type the request word LOAD and pressthe RELEASE and START buttons. c) Press READER START, if necessary. d) When the program is loaded the typewriter will type PROGRAM LOADED. PUSH START TO EXECUTE. e) Press the START button on the console to begin eicecution of the program. The CLEAR function The 141 memory can be cleared (set to blankS) with this function. a) Type! the reques t word CLEAR. b) Press the RELEASE and START buttons c) When the clearing operation is completed the typewriter will request the next function. 1. Clearing the 1620 memory before loading is unnecessary I since a clear routine is built into the simulator deck • • (9) The ALTER function o Instruction and data I including word marks I in the 141 memory can be altered with this function. This may be us ed for debugging a program or entering complete small demonstration programs directly in machine language. a) b) c) d} Type the request word ALTER. Pross the RELEASE and START buttons. The typeV'lriter will type BEGINNING AT. Type the three digit 141 location at which the alteration is desired (such as 333). e) The typewriter will repeat this location to verify it. f) Type the instructions and data in machine language I disregarding word marks. 2 g) At any convenient place I at least one character before the end of the typewriter line I cease typing and press the RELEASE and START buttons. h) The typewriter carriage will return for a second line. This line will indicate the presence or absence of word marks. If the character above requires a word mark type a I, if it should not have a word mark hit the s pace bar. Continue to type 11 sand s paces until the carriage has moved acros s the entire line above In the first character after the line type a record mark (: I then press the RELEASE and START buttons. i) The typewriter will now type the address of the next memory location to be altered if the proces s (f thru i) is continued. j} Vvhen altering is completed press I in order I the RESET I INSERT, RELEASE and START buttons. The EXECUTE function can be used to start the program. 0 SECTION 7 o 141 - BPS Assembler Operating Procedures_ Adj us t the typewriter a) Set left margin at 10 b) Set right margin at 94 Set Console Switches a) Set parity switch to STOP b) Set I/O switch to STOP c) Set O'Flow switch to Program d) Program Switch =lt2 will normally be off. Program switches 1,3 , and 4 are not used. Assemble SPS Programs a) Place the 141 - SPS ASSEMBLER deck in the reader hopper in the 9-edge face down pos ition. b) Place the SPS source program decks in the reader hopper. Any number of programs may be "stacked" for assembly. The last card of each deck must be an END statement. 3 c) With the machine in MANUAL press the LOAD button • d) Press the PUNCH START button. e} It will be necessary to press the READER START button to enter the last two cards of the last deck. • 2. This is the only instance where the operator will have to use the typewriter shift key. For all other ent ires the typewriter will automatically be in the proper alphabetic or numeric shift. 3. Clearin9 the 1620 memory before loading is unnecessary I since a clear routine is built into the assembler deck. (10) ----~-- . o IBM PRINTED IN U,S,A CODING SHEET by Date _ _ __ 2 COUNT 5 6 I 10 LABEL OPERATION 7 8 1 Identifi cation L - i . , _ , ___ -"-. _..L...--i 76 (A) OPERAND LINE Page No. l_---L_.J ot i Programmed 0 . , fORM X24-1152-J IBM 1401 SYMBOLIC PROGRAMMING SYSTEM Program 3 o <) INTERNATIONAL BUSINESS MACHINES CORPORATION 13 14 I I -L I i 16 17 I (B) OPERAND CHAR. ADJ. 1;.1 ADDRESS -..L~ I 80 ci I~I ADDRESS % 27 28 I I I I~I CHAR. ADJ. c::i d COMMENTS % 38 39 40 55 I I I __..:_._.1 __ . ..l .. -L~ I 01. 2 o I L 3 0t 4 0 I 1 I I I I 7 1 0 18 01. 9 1 I 0 1 I I 0 L 0 ~~~- 1--- I I I I I . i .1 4 5 0 i 1 I I I I I ~_16 t I I I I I I I -L-_-1 0 i 18 10 ) 1 I 1 t .-L....J. l L 1 I 1 ...L---1. I 1 ..1 .. _._.J..-. .. _. .L...._..L. __ ... __.1. __.....L. .._-'-_ ... .L.__ I I I _---1._-L--L. ___ .l... I 1 1 1 I I I t 1 _..I. I ---L.--L I -L I t I .1-----1.... I I I I I I I .....l-_-.1._._.L_L...---L...-'--.. __.....L_ . I -----'--._~_._~._ ...L __..; ___ ._.L_---L- • I t • __L I --L...... I L -..l___ J. • •-.L.. I 1 -L~_..L .... :._._.__ _ L._~_;~~I _. __ , ... _ ...1_ I I ~- ~ . ...L~.L_ ..L_~ I I ~- __--L._ I -----L-L_L--L 1 ~.--L I r--- r---.L-.-I I I I I I I I I I I I I I i I I ~-L-......J. I I I I I I ___ ....l...-.L-. .l... __ -'-. ____L_. -'-__ ._1.. __ .L~I __ .L_.----'----'-._. L..._~_ .. _~ I I I I t l J I ~L_.L. __.L 1 I .L_L. __"-• .L....L . .L_...L._L.._...L..-_ 1 L i I .L 1 1 I .I .I I I 1 L L I I .--L__.l__....!. I I I I I I .1 1 I ~_. __.L __ .L_ . .L_ ._'.. __l._.-,_~ I I I I I I I I I I i i I I I I 1 I I ...L... _~.. I I LI I I I I I I I I I I I I I I I .._L __ .~ __ L __ : ., ___ --1...- L. __ .1__ .J. ___'.. ___ ....l. __ ---L ... .J_._-'- _: __ ----L._ ~_ I I _L __ ..''--·--'-'.. __ ..~ __---L 1 J i I I _.L.....L ---.-L_-..L_....l. __...L---' __ --.L. I -L.--.L"'-1 I 1 I I __.. .L ---1-1 _1 I I I ---L-~--L-_I ___ , ...l,_ I : ___..L.-.L. __ l. ._..L...-.... r--..L.......L._- f----L-...L 1 I 1 1 I I 1 1 .I I I 1 1 1. J I I I I I I I I I 1 I I 1 I I I I I I L ....L..--L___ I I _.... _......L. i I __L ____.:_ :_ _ _ •... .J.. L_l __ -l __ --.L __ I 0 7 .L I i I 1 L-...L.....~...J......_ ..J.... I -'-J._~_L~ r--..L-- ~_~\-_.-l 0 ...L I 0 10 I 0 1 J i-~...l~0 0 I I 0 0.1 6.1 0 I I 0 1 _....L--L...--L_L--. I I I .~L ___ .,L_.•...L...... r--.L-t- W----L 1 I .1. I t ,L_. ..l ___.._C ___ L.. __ 1 t I ~ ' ---..L.......L..... I I I I .f .1 L I 1 I I I . _.1... . .1. __ __'._~.l_. __ .--1-. __ : _.L ......L-........L.----1... L__ L ....L.....L_..L.........L___.. L._.~ L_ .. ...l_ ...l.. _--'-__ .,;.._. __ .L ,_ I I 19 L 0 J 2,0 , I 0 I I _.L._ ....L __ .'-___ J... ___ , I I , I .L __--L __ .--L_._L --.-L._ , I I I I I I I 1 I I I I I J J J I 1 1 I J I I I I I I I I , I I I l j I J I I 1 L-----'-----L---..L.__ ..l.... ----"--_--.--l......._L__ . I I I J _I I 1 I I I I __J. _:_-.1.. __ I L--.l...._L_i-...L_.. _L ..1 __1_-L ..1 ___L __..l_:._.-.L.._ I I J I .L I I .....L_.L_._L_---L..-..... _ L_._ .L i ____ ..i_____..L-.-. I I ~_..-L.._ r---.L_--.L-.L_.... i j I I I J .I I 1 I ..l.. __, -..l.......-...---L._ J ..,L__ c_ .-L i . ___ L _--.i. ___-'- __ ....L--.l....-.....L,---L- -L __ -'-----:.. _....L_ J. __1. ._ . .L ___. .L~ I ! -___.L ,-_._.L 1 I l I i I ....L._.L __ ~. I I I I I I ~.L-.......L._...L.._J... I L_..-.L __.. L ___ __--..l._.....L.._ 1--_.L ____L __L ___L_--L-J___i_..L.....L I __L_..l_--.-L..__ ..L _ . .1._._ ----.1._ ._ 1. AREA- DEFINITION I I ...L...- I CHARACTER COUNT - I I I I~ I 5 I I I I I I I I -L I I I I I 10 I 15 , I I I . I . _ . ..L-......L_.-.L __.J..._...J. ....L_.L___ I I 1 20 ----L..-..I l. _ _.l..-.-.1-.---L- L~ .l---.1_....L.--.l._~_..-L 25 30 .--J. __ 32 6402250MSP o Use of Program Switch 4t2 If Program Switch 4t2 is turned ON the typing of the program listing will be eliminated. A program listing can be obtained by listing the object deck on the IBM 407. This alternative will greatly reduce the assembly time. SECTION 8 Listing Panel for IBM 407 An IBM 407 Accounting Machine control panel for use with the 141 is diagrammed on the following pages. Three separate functions have been wired into the board the choice of which is under the control of Alteration Switches #1 and #3 I as follows: I TRANSFERRED ALTERATION SWITCHES FUNCTION 1 80 - 80 List DUMP List SPS Post List 1, 3 None In each case I single spacing occurs with Alteration Switch 4:F2 normal and double spacing occurs with it transferred. The 80-80 list option is useful for printing the results of 141 programs that have been punched on cards. Since the punch is very much faster than the simulated printer, teachers with large classes of students will wish them to use punched card output in pref erence to printer output whenever possible. The DUMP list option is designed to list the cards that result from dumping the 141 memory with Program Switch #1 on. This is another way of increasing the efficiency of operations o 0 The SPS list option will list the output cards from an SPS assembly. Both the highorder and low-order addres ses of each instruction are printed. The clear and bootstrap cards may be left on the deck but they will not print. If more than one SPS program is to be listed the END card will cause a skip to channel 1 between programs. The required 407 machine configuration is: Ten pilot selectors Eight co-selectors One digit selector • Ii iij (1M WiMk alii. SiMU$:;; 4 MaRa 1M QU Uluauaasaa a as (II) tnT!!· IBM CARD CODING o The IBM card provides 80 vertical columns with twelve punching positions in each column. One or more punches in a single colun1n represents a character. A group of columns used for the characters that make up a quantity I or a name, is called a field and is often indicated on the card by printed vertical lines. The standard IBM card code, often referred to as the Hollerith code I uses the twelve possible punching positions of a vertical column on the card to represent a numeric I alphabetic or special character. The twelve punching positions are divided into two groups: digits and zones. The first ten punching positions from the bottom edge of the card are the digit punching positions and have assigned numeric values of 9, 8, 7 I 6, 5, 4, 3, 2, 1 and 0, respectively. The first three punching positions from the top of the card are the zone punching positions and have zone values of 12, 11 and 0, res pectively. The 0 position is considered to be both a digit and a zone pos itlon 0 The numeric characters 0 through 9 are represented by a single punch in a column. For exam.pIe, 5 is represented by a single punch in the 5 position of the column. Alphabetic characters are represented by two punches in a single column: one digit punch and one zone punch. The alphabetic characters A through I us e the 12 zone punch and a digit punch 1 through 9 respectively; J through R use the 11 zone punch and a digit punch 1 through 9 respectively; and S through Z use the 0 zone punch and a digit punch 2 through 9 res pectively • Special characters are represented by one two I or three punches in a single column in combinations that are not used for either numeric or alphabetic characters. I o For example: '26May' would be represented as follows: 12 11 IJ ZONES 11 fJ 0 o 1 2 3 4 DIGITS 5 6 7 8 9 i ! ' a ay • The 12 and 11 zone punches when used by themselves have several different meanings depending upon their usage in the specific problem. They may represent an and sign (&) and a hyphen (-) I respectively I when used in an alphabetic field. They may also represent a plus (+) sign and a minus (-), respectively, when used as the algebraic sign of a numeric field. In this case they are usually punched in the same column as the units position digit. Still another use of these punches especially the 11 punch, is that of a control punch to signify that a particular card is an exception of some kind. When used this way the 11 punch is usually referred to as an X punch and is placed in some pre-assigned column. I (12) The following is a table of the IBlvr card code for numeric and alphabetic characters. ZONE 0 0 D I G I T 1 2 3 4 5 6 7 8 9 • No 12 11 0 1 2 A J 3 4 B C D 5 E 6 F G H I 7 8 9 a K S L M T N 0 P Q R U V W X y Z Number Systems Almost all components used in building a dltital computer are best used as bi-state elements~ that is I devices that have two and only two distinct conditions. Examples of this are: a switch that is either open or closed, a light that is either on or off I a punch position in an IB1vl card that is either punched or not, a vacuum tube that is conducting or cut off, a relay that is transferred or normal, and a magnetic core that has polarity of N -S or S - N The us e of bi -s tate elements encourages the us e of a number system that has on Iy two digits instead of the usual ten. These digits would be 0, usually corresponding to the off status of an element, and 1, corresponding to its on status. Such a number systerDIs known as the binary s¥stern. It is probably easiest to understand a new number system by comparing it to the familiar decimal system. 0 o I There are three essential parts to any system. The first is the base of the system. In the decimal system the base is 10; in the binary system it is 2. The second essential part is a set of symbols or digits. In base 10 these digits are 0 I 1, 2, 3, 4,5,6,7 ,8, and 9. In base 2 these symbols, often called bits (a contraction of binary and digits) are 0 and 1. Note that the number of digits in a system is equal to the base numb er and ranges from 9 ·to one less than the base number. The third essential part is place value. That is I the value of any digit depends upon it-s-position \l'lithin the number. Starting at the decimal point (or binary point) and proceeding to the left I the place values are always 1 t the base, the base squared, the base cubed, etc. In base ten the place values are 1, 10, 100 I 1000 I etc. In base two they are ;l, 2, 4, 8, etc. • The meaning of a number comes from combining these essential parts of its number system. Therefore, the number 5280 in the decimal system means 5280 ,:;: 5 X 1000' + 2 X 100 + 8 X 10 + 0 X 1 while the number 1101 in the binary system means 1101 2 = 1 X 8 + 1 X 4 + 0 X 2 + 1 X 1 or decimally 13. In the binary system I this reduces to the simple rule that tithe value of a binary number is equal to the sum of the place values containing l's In the above case 11012 = 8 + 4 + 1 = 13 II • • (13) IASSAU..:S £i:LI.Ut:. : u;;zq lUi ad MilIA. #. ::;u;; ; ii4 H ·emu; t '" l' q t u The decimal equivalent of the first 17 binary integers is as follows: () Decimal 0 1 2 0 4 5 6 1 10 11 100 101 110 7 III 3 Decimal -a- Bln~ 9 10 11 12 13 14 15 16 !,., ,. Binary 1000 1001 1010 1011 1100 1101 1110 1111 10000 RESTR1CTIONS The following restrictions pertain to the 141 Simulator program 1. The twelve executable instructions are: SW, CVV I MCW', R, P, W, A, S, C, B, Bi I and H. The Branch if Indicator On instruction includes four d-modifiers: /, 8, T, U. 2. One thousand positions of 141 memory are available I with addresses ranging from 000 to 999. 3., All instructions must be followed by a word mark. o 4. No overflow arithmetic is provided. Carries out of the high-order of the B-field will be lost. They will not become zone bits. 5. In arithmetic operations zones are stripped from all B-field characters including the high-order character. The following restrictions pertain to the 141 Assembly program. 1. Only the above-mentioned twelve operation codes and four d-modifiers can be assembled. 2. The DCW is the only declarative operation and END is the only processor operation recognized by the assembly program. All programs will automatically begin at location 333. f 3. The maximurn number of cards in any 141 8PS program is 100. Images of these are held in memory to reduce the amount of card handling and to permit stacking of programs • & • (14) aSUZlii2idkL!¥I1I t1i.MWai¢A,.@SU.i .iU M/;;;MAiX #1M tNt*h ti , df t' 0 .. Problem #1 Calculate and punch C where C = A + B A, Band C are a 11 5 column fields Input Card A Output Card B w / A B C - o Input Cards 3 Output cards 3 Problem No. 2 Calculate and punch D where D A is a 5 column field B is a 5 II II C is a 6 n .. Input Card , A =A + B - B C C ;t / • Output Card - - I A C B D & (15) -= aaa:suae.su Ai.;:' i... MOtaM t. Ji lin.:USlJhit :;:::.:: , u..J .... l t g ... .4. . a itu:*", i , Problem mo. 3 Calculate and punch E where, E=A+B+C-D t Input: Column 4-8 9-12 13-14 15-17 Output: Column 4-8 A xx. xxx B C D x.xxx A B 9-12 13-14 15-17 21-24 C D E x.x • xxx . xx. xxx x.xxx x.x • xxx xx.xx Note: The program must be written so that E is rounded off to two decimal places. Input cards •••• 5 Output cards ••• 5 Problem No. 4 A program is to be written that will up-date a customer's balance, and compare it to his credit limit. 1-6 8-14 16-21 55-80 ?' Input Card Order Customer Old Limit Name Bal. Amt. ~edit o If the sum of the old balance card and the order amount are equal to or less than the credit limit, an up-dated card is to be punched as follows: (credit Limit 55-80 8-14 1-6 Output Card J custome) Name New Bal. I t I If the s urn of the old balance and the order amount exceed the credit limit, a printed output for the credit manager follows. He I in turn, will send a letter to the cus tomer • Printed Output • 1-15 17-41 45-50 52-58 I Send Letter to Credit Limit Customer Narne ! New Bal. Input cards ••••••• 10 Output cards •••••• 10 Printed output ••••• 2 lines (16) aLia: tsa::ed !!2!l1iit.$Ui c a:PiUOiUCiI ati! L M U au . , Q. 1 $llAid. li,ihAiiB iUtUSULt4St:;p;.;:c uas: II.;,," I . ,'
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:03:13 14:27:39-08:00 Modify Date : 2014:03:13 14:47:59-08:00 Metadata Date : 2014:03:13 14:47:59-08:00 Producer : Adobe Acrobat 9.55 Paper Capture Plug-in Format : application/pdf Document ID : uuid:5fe36874-e2c9-7245-a84c-e0fe7f30c99f Instance ID : uuid:800c63a8-7cdb-7943-8588-336cc66fdfde Page Layout : SinglePage Page Mode : UseNone Page Count : 74EXIF Metadata provided by EXIF.tools