ASM1130 CROSS ASSEMBLER V1.22 -- V2M12 -- Sun Nov 1 19:25:11 2020 Source File: \zdumppt2.asm 1 | *************************************************** ZD400010 2 | * ZD400020 3 | *STATUS- VERSION 2,MODIFICATION 0 * ZD400030 4 | * * ZD400040 5 | *FUNCTION/OPERATION- * ZD400050 6 | * * THIS PAPER TAPE SYSTEM STAND-ALONE PROGRAM * ZD400060 7 | * WILL DUMP ANY SIZE CORE, STARTING AT 1E0, * ZD400070 8 | * TO EITHER THE 1403 PRINTER OR THE 1132 * ZD400080 9 | * PRINTER. * ZD400090 10 | * * ZD400100 11 | *ENTRY POINTS- * ZD400110 12 | * * THIS PROGRAM IS ENTERED DIRECTLY FROM ITS * ZD400120 13 | * LOADER, WITH AN MDX TO LOCATION /40. * ZD400130 14 | * * ZD400140 15 | *INPUT- N/A * ZD400150 16 | * * ZD400160 17 | *OUTPUT- * ZD400170 18 | * * CORE IS DUMPED TO THE FASTEST ONLINE PRINTER* ZD400180 19 | * ,THE DUMP STARTING AT 1E0. THE ADDRESS OF * ZD400190 20 | * THE FIRST OF THE 16 CORE WORDS ON A PRINT * ZD400200 21 | * LINE IS PRINTED ON THE LEFT OF THE LINE. * ZD400210 22 | * * MACHINE STATUS HAS ALREADY BEEN CHANGED BY * ZD400220 23 | * THE LOADER, SO IT IS NOT SAVED. * ZD400230 24 | * * ZD400240 25 | *EXTERNAL REFERENCES- * ZD400250 26 | * SUBROUTINES- N/A * ZD400260 27 | * COMMA/DCOM- N/A * ZD400270 28 | * * ZD400280 29 | *EXITS- * ZD400290 30 | * NORMAL- N/A * ZD400300 31 | * ERROR- N/A * ZD400310 32 | * * ZD400320 33 | *TABLES/WORK AREAS- N/A * ZD400330 34 | * * ZD400340 35 | *ATTRIBUTES- N/A * ZD400350 36 | * * ZD400360 37 | *NOTES- N/A * ZD400370 38 | * * ZD400380 39 | *************************************************** ZD400390 PAPER TAPE STAND-ALONE DUMP-1403/1132 41 | ABS ZD400410 0040 42 | ORG /40 ZD400420 0040 6101 43 | START LDX 1 1 ZD400430 0041 C03F 44 | LD INTA4 SET UP 1403 INTERRUPT SUB- ZD400440 0042 D400 000C 45 | STO L TWLVE ROUTINE ADDR IN WD. 12 ZD400450 46 | * ZD400460 0044 C400 0105 47 | LD L INTAD SET UP 1132 INTERRUPT SUB- ZD400470 0046 D400 0009 48 | STO L NINE ROUTINE ADDR IN WD. 9 ZD400480 49 | * ZD400490 50 | *TEST FOR WHICH PRINTER IS ON SYSTEM,1403 OR 1132 ZD400500 51 | *IFBOTH ARE ON SYSTEM AND BOTH ARE READY,DUMP IS ZD400510 52 | *ON 1403. ZD400520 53 | * ZD400530 0048 0833 54 | PTEST XIO SENS3 CHK.1403 READY ZD400540 0049 4804 55 | BSC E YES,SKIP ZD400550 004A 7005 56 | MDX PT010 *NO,CHECK 1132 ZD400560 004B 082C 57 | STSPC XIO SPAC3 ONE SPACE ON 1403 ZD400570 004C 082F 58 | XIO SENS3 SENSE FOR CARRIAGE BUSY ZD400580 004D 1802 59 | SRA 2 ZD400590 004E 4C04 005D 60 | BSC L D1403,E BUSY,START DUMP ON 1403 ZD400600 0050 0C00 0166 61 | PT010 XIO L SENS2 NOT BUSY ,CHECK 1132 READY ZD400610 0052 1005 62 | SLA 5 NOT READY BIT TO SIGN ZD400620 0053 4C28 0048 63 | BSC L PTEST,+Z IF NOT RDY RET TO 1403 TST ZD400630 0055 0C00 0168 64 | XIO L SPACE 1132 READY,DO 1 SPACE ZD400640 0057 0C00 0166 65 | XIO L SENS2 TEST 1132 BUSY ZD400650 0059 1003 66 | SLA 3 CARRIAGE BUSY TO SIGN BIT ZD400660 005A 4C28 0107 67 | BSC L D1132,+Z BUSY,START DUMP ON 1132 ZD400670 005C 70EB 68 | MDX PTEST NOT BUSY,BACK TO 1403 TEST ZD400680 69 | * ZD400690 70 | * ZD400700 71 | * DUMP USING 1403 PRINTER ZD400710 72 | * ZD400720 005D 4400 00E4 73 | D1403 BSI L CORE1 GO DO CORE SIZE TEST ZD400730 74 | * ZD400740 005F 61C4 75 | LDX1 LDX 1 -60 CLEAR THE BUFFER ZD400750 0060 C013 76 | LD BLNK *TO 1443 OUTPUT ZD400760 0061 D14A 77 | CLRR STO 1 BUFER+60 *BLANKS ZD400770 0062 7101 78 | MDX 1 1 ZD400780 0063 70FD 79 | MDX CLRR NEXT WORD ZD400790 0064 7410 0164 80 | MDX L ADDRS,16 INCREMENT ADDRESS ZD400800 0066 1000 81 | NOP IN CASE OF SKIP ZD400810 0067 74FF 0092 82 | MDX L CTR,-1 SKIP IF ALL LINES PRINTED ZD400820 0069 702A 83 | MDX CONP CONTINUE PRINTING ZD400830 006A 3000 84 | WAIT END OF DUMP ZD400840 006B 70FE 85 | MDX *-2 HARD WAIT ZD400850 86 | * ZD400860 87 | *1403 PRINTER INTERRUPT SERVICE SUBROUTINE ZD400870 88 | * ZD400880 006C 0000 89 | INT4 DC 0 ZD400890 006D D007 90 | STO SAV SAVE ACCUM ZD400900 006E 080D 91 | XIO SENS3 SENSE WITH RESET ZD400910 006F 100C 92 | SLA 12 CHANNEL 12 IND TO SIGN ZD400920 0070 D005 93 | STO SKPIN SET SKIP SWITCH ZD400930 0071 C003 94 | LD SAV RESTORE ACCUM ZD400940 0072 4CC0 006C 95 | BOSC I INT4 TURN OFF LEVEL AND EXIT ZD400950 0074 7F7F 96 | BLNK DC /7F7F 1403 BLANKS ZD400960 0075 0000 97 | SAV DC 0 TO SAV/RESTORE ACC ZD400970 0076 FFFF 98 | SKPIN DC /FFFF SKIP-TO CH-1-SWITCH ZD400980 0078 99 | BSS E 0 ZD400990 0078 0001 100 | SPAC3 DC 1 1403 SPACE ZD401000 0079 AC00 101 | DC /AC00 *IOCC ZD401010 007A 000E 102 | PRNT DC 14 1403 PRINT ZD401020 007B AD00 103 | DC /AD00 *IOCC ZD401030 007C 0000 104 | SENS3 DC 0 1403 SENSE WITH ZD401040 007D AF01 105 | DC /AF01 *RESET IOCC ZD401050 007E 0080 106 | SKP DC SKON 1403 SKIP ZD401060 007F A900 107 | DC /A900 *IOCC ZD401070 0080 0800 108 | SKON DC /0800 SKIP-TO-CHANNEL-1 CONST ZD401080 0081 006C 109 | INTA4 DC INT4 ADDR OF 1403 INTRP SUBR ZD401090 0082 1001 110 | COREL DC /1001 USED FOR CORE SIZE CHECK ZD401100 007C 111 | LTRT EQU SENS3 LEFT/RIGHT INDICATOR ZD401110 112 | * ZD401120 0083 0100 113 | DOSPC DC 256 ZD401130 0084 08F7 114 | XIO SENS3 CHECK FOR READY ZD401140 0085 4C04 0084 115 | BSC L DOSPC+1,E *LOOP ON 1403 NOT READY ZD401150 0087 100D 116 | SLA 13 KEEP LOOPING ZD401160 0088 4C20 0084 117 | BSC L DOSPC+1,Z *IF BUSY ZD401170 008A C0EB 118 | LD SKPIN CHK SKIP-TO-CHANNEL-1 SW ZD401180 008B 4810 119 | BSC - SHALL WE SKIP ZD401190 008C 08EB 120 | XIO SPAC3 NO, DO ONE SPACE ZD401200 008D 4828 121 | BSC +Z AND EXIT ZD401210 008E 08EF 122 | XIO SKP YES, SKIP TO CHANNEL 1 ZD401220 008F 68E6 123 | STX SKPIN TURN OFF SKIP SWITCH ZD401230 0090 4C80 0083 124 | BSC I DOSPC EXIT ZD401240 0092 00E3 125 | CTR DC 227 NO. OF LINES TO PRINT ZD401250 0093 0001 126 | READ DC 1 EXTRA SPACE INDICATOR ZD401260 127 | * ZD401270 0094 C0E5 128 | CONP LD BUFFR INITIALIZE BUFFER ZD401280 0095 D04E 129 | STO BUFAD *ADDRESS ZD401290 0096 7410 009E 130 | MDX L LOOP+1,16 INCREMENT FOR NEXT LINE ZD401300 0098 1000 131 | NOP IN CASE OF SKIP ZD401310 0099 63EF 132 | LDX 3 -17 SEVENTEEN WORDS PER LINE ZD401320 009A C400 0164 133 | LD L ADDRS DUMP THE ADDRESS FIRST ZD401330 009C 7002 134 | MDX *+2 SKIP AROUND ZD401340 009D C700 01E0 135 | LOOP LD L3 /01E0 FIRST WORD TO BE DUMPED ZD401350 009F 6104 136 | LDX 1 4 SET TO GET FOUR CHARACTERS ZD401360 00A0 1890 137 | SRT 16 GET ONE CHARACTER INTO ZD401370 00A1 1010 138 | CHAR1 SLA 16 ZERO ACCUMULATOR AND ZD401380 00A2 6200 139 | LDX 2 0 INITIALIZE XR2 ZD401390 00A3 1084 140 | SLT 4 MOVE IN ONE HEX DIGIT ZD401400 00A4 4804 141 | BSC E SKIP IF HEX CHAR IS EVEN ZD401410 00A5 7208 142 | MDX 2 8 GET CHAR FROM RT HALF OF ZD401420 00A6 1801 143 | SRA 1 *TABLE,NOW COMPUTE ADDR OF ZD401430 00A7 8032 144 | A TABAD *REQUIRED CHARACTER ZD401440 00A8 D001 145 | STO *+1 ZD401450 00A9 C400 0000 146 | LD L *-* LOAD 2 1403 CHARS ZD401460 00AB 1200 147 | SLA 2 0 SHIFT IF NESSARY ZD401470 00AC E02E 148 | AND XFF00 ELIMINATE RT SIDE ZD401480 00AD 7400 007C 149 | MDX L LTRT,0 LEFT-RIGHT IND ZERO ZD401490 00AF 7003 150 | MDX RIGHT NO, LEAVE CHAR ON RIGHT ZD401500 00B0 D034 151 | STO KEEP SAVE CHARACTER FOR NEXT ZD401510 00B1 68CA 152 | STX LTRT REVERSE LEFT-RIGHT IND. ZD401520 00B2 7008 153 | MDX CHAR2 GET NEXT CHARACTER ZD401530 00B3 1808 154 | RIGHT SRA 8 MOVE CHAR TO RT ZD401540 00B4 E830 155 | OR KEEP PUT TWO CHARS TOGETHER ZD401550 00B5 D480 00E4 156 | STO I BUFAD INTO THE OUTPUT BUFFER ZD401560 00B7 7401 00E4 157 | MDX L BUFAD,1 UP BUFFER ADDRESS BY 1 ZD401570 00B9 1010 158 | SLA 16 REVERSE LEFT-RIGHT IND ZD401580 00BA D0C1 159 | STO LTRT *INDICATOR ZD401590 00BB 71FF 160 | CHAR2 MDX 1 -1 FOUR CHARACTERS OUTPUT ZD401600 00BC 70E4 161 | MDX CHAR1 NO, GET NEXT CHARACTER ZD401610 00BD 7401 00E4 162 | MDX L BUFAD,1 YES, UP BUFFER FOR SPACE ZD401620 00BF 74FF 0093 163 | MDX L READ,-1 *EXTRA SPACE * ZD401630 00C1 7004 164 | MDX OUTX *AFTER EVERY * ZD401640 00C2 7401 00E4 165 | MDX L BUFAD,1 *FOUR * ZD401650 00C4 7404 0093 166 | MDX L READ,4 *WORDS * ZD401660 00C6 7301 167 | OUTX MDX 3 1 POINT AT NEXT WORD ZD401670 00C7 70D5 168 | MDX LOOP NXT WD IF 1 LINE NOT DONE ZD401680 00C8 74FD 0093 169 | MDX L READ,-3 RESET EXTRA SPACE INDR ZD401690 00CA 1000 170 | D4096 NOP IN CASE OF SKIP ZD401700 00CB 7400 0162 171 | MDX L FURST,0 CHK LIKE-LINE INDR ZD401710 00CD 40B5 172 | BSI DOSPC *LINE SPACE IF NONZERO ZD401720 00CE 7004 173 | MDX DOPRN GO PRINT A LINE ZD401730 00CF 40B3 174 | SPCE BSI DOSPC ONE SPACE AFTER PRINT ZD401740 175 | * ZD401750 00D0 405E 176 | BSI COMP GO CHECK FOR LIKE LINES ZD401760 00D1 009E 177 | DC LOOP+1 1403 DUMP PARAMETER ZD401770 00D2 708C 178 | MDX LDX1 GO CLEAR PRINT BUFFER ZD401780 179 | * ZD401790 00D3 08A8 180 | DOPRN XIO SENS3 SENSE THE 1403 ZD401800 00D4 100F 181 | SLA 15 ZD401810 00D5 4810 182 | BSC - LOOP IF BUSY ZD401820 00D6 4802 183 | BSC C LOOP IF NOT READY ZD401830 00D7 70FB 184 | MDX DOPRN LOOP IF NOT READY OR BUSY ZD401840 00D8 08A1 185 | XIO PRNT INITIATE PRINT ZD401850 00D9 70F5 186 | MDX SPCE TO SPACE ROUTINE ZD401860 00DA 00DC 187 | TABAD DC TABL ADDR OF 1403 CODE TABLE ZD401870 007A 188 | BUFFR EQU PRNT FOR INITIALIZING BUFR ADDR ZD401880 000E 189 | BUFER EQU 14 PRINT BUFFER STARTS AT /E ZD401890 000C 190 | TWLVE EQU 12 LEVEL 4 INTERRUPT WORD ZD401900 191 | * ZD401910 00DB FF00 192 | XFF00 DC /FF00 CONST FOR CLEARING HALF-WD ZD401920 193 | * ZD401930 194 | *1403 CODE TABLE.TWO CHARACTERS PACKED PER WORD, ZD401940 195 | *EVEN NUMBERS ON THE LEFT,ODD NUMBERS ON THE RIGHT. ZD401950 196 | * ZD401960 00DC 4940 197 | TABL DC /4940 01 ZD401970 00DD 0102 198 | DC /0102 23 ZD401980 00DE 4304 199 | DC /4304 45 ZD401990 00DF 4546 200 | DC /4546 67 ZD402000 00E0 0708 201 | DC /0708 89 ZD402010 00E1 6425 202 | DC /6425 AB ZD402020 00E2 2667 203 | DC /2667 CD ZD402030 00E3 6829 204 | DC /6829 EF ZD402040 205 | * ZD402050 206 | * SUBROUTINE TO DETERMINE THE SIZE OF CORE AND SET ZD402060 207 | * UP THE LINE-COUNTER--CTR-- ACCORDING TO THE ZD402070 208 | * CORE-SIZE,227 LINES FOR 1ST 4K AND 256 LINES FOR ZD402080 209 | * EVERY ADDITIONAL 4K. ZD402090 210 | * ZD402100 00E4 0000 211 | CORE1 DC *-* RETURN ZD402110 00E5 C480 0082 212 | LD I COREL SAVE CONTENTS OF 4001 ZD402120 00E7 D01E 213 | STO PACK ZD402130 00E8 1010 214 | SLA 16 PUT A ZERO IN ZD402140 00E9 D480 0082 215 | STO I COREL *4001 ZD402150 00EB 7100 216 | MDX 1 0 FOUND MACHINE SIZE IF XR1 ZD402160 00EC 7002 217 | MDX GR4K *GOES ZERO,EXIT WITH LINE ZD402170 00ED 4C80 00E4 218 | BSC I CORE1 * COUNT IN CTR. ZD402180 00EF C009 219 | GR4K LD D256 XR1 NOT ZERO,ADD 256 ZD402190 00F0 80A1 220 | A CTR *TO LINE COUNT ZD402200 00F1 D0A0 221 | STO CTR ZD402210 222 | * ZD402220 00F2 C013 223 | LD PACK RESTORE 4001 ZD402230 00F3 D480 0082 224 | STO I COREL ZD402240 00F5 C0D4 225 | LD D4096 INCR CORE ADDR ZD402250 00F6 808B 226 | A COREL * BY 4K ZD402260 00F7 D08A 227 | STO COREL ZD402270 00F8 70EC 228 | MDX CORE1+1 KEEP LOOKING ZD402280 229 | * ZD402290 230 | * CLEAR WORDS /20 - /27 ZD402300 231 | * ZD402310 00F9 0100 232 | CLEAR DC 256 NO.OF LINES PER 4K ZD402320 00FA 10A0 233 | SLT 32 CLEAR ACCUM AND EXT ZD402330 00FB DC00 0020 234 | STD L /20 CLEAR THE ZD402340 00FD DC00 0022 235 | STD L /22 *1132 PRINT ZD402350 00FF DC00 0024 236 | STD L /24 *SCAN ZD402360 0101 DC00 0026 237 | STD L /26 *AREA ZD402370 0103 4C80 00F9 238 | BSC I CLEAR EXIT ZD402380 0105 010E 239 | INTAD DC INT ADDR OF 1132 INTERRUPT RTN ZD402390 0106 0000 240 | PACK DC 0 TEMPERORY STORAGE ZD402400 0009 241 | NINE EQU 9 LEVEL 2 INTERRUPT WORD ZD402410 00F9 242 | D256 EQU CLEAR NO. OF LINES PER 4K ZD402420 00E4 243 | BUFAD EQU CORE1 CORE-SIZE ROUTINE ZD402430 00E5 244 | KEEP EQU CORE1+1 *USED FOR ZD402440 00E7 245 | CTR16 EQU CORE1+3 *WORK-AREAS ZD402450 246 | * ZD402460 247 | * ZD402470 248 | *DUMP ON 1132 PRINTER ZD402480 249 | * ZD402490 0107 40DC 250 | D1132 BSI CORE1 CHK MACHINE CORE SIZE ZD402500 0108 40F0 251 | BSI CLEAR CLEAR 1132 PRINT SCAN AREA ZD402510 252 | * ZD402520 0109 085C 253 | TSP XIO SENS2 LOOP TILL CARRIAGE IS ZD402530 010A 1003 254 | SLA 3 *DONE SPACING,BUSY BIT IS ZD402540 010B 4C28 0109 255 | BSC L TSP,+Z *OFF,THEN--- ZD402550 256 | * ZD402560 010D 0856 257 | XIO ADDRS START THE PRINTER ZD402570 258 | * ZD402580 259 | * ZD402590 0020 260 | MASK1 EQU /0020 PRINTER OUTPUT ZD402600 261 | * ZD402610 262 | * ZD402620 263 | * ZD402630 264 | * ZD402640 265 | * INTERRUPT LEVEL 2 ENTRY ZD402650 266 | * ZD402660 010E 0001 267 | INT DC 1 INTRP ADDR STORED HERE ZD402670 010F 0856 268 | XIO SENS2 SENSE DEVICE WITH RESET ZD402680 0110 4C28 011A 269 | BSC L INT1,+Z BR IF PRINT RESPONSE ZD402690 0112 7400 0119 270 | MDX L JOHN,0 SHALL WE SPACE ZD402700 0114 0853 271 | XIO SPACE YES,GO AHEAD AND SPACE ZD402710 0115 1010 272 | SLA 16 NO,SET SPACE ZD402720 0116 D002 273 | STO JOHN *SWITCH ZD402730 0117 4CC0 010E 274 | BOSC I INT TURN OFF INT LVL,EXIT ZD402740 0119 0000 275 | JOHN DC 0 ZD402750 276 | * ZD402760 277 | * CLEAR SCAN AREA ZD402770 011A 40DE 278 | INT1 BSI CLEAR ZD402780 011B 0850 279 | XIO RDMT READ THE EMITTER ZD402790 280 | * ZD402800 281 | * TEST IF E REQUIRED ZD402810 282 | * STRSW = 0 IF WAITING FOR E ZD402820 283 | * ZD402830 011C C053 284 | LD STRSW ZD402840 011D 4C18 0171 285 | BSC L YES,+- BR IF E REQUIRED ZD402850 286 | * ZD402860 287 | * E NOT REQUIRED ZD402870 288 | * ZD402880 011F 74FF 0170 289 | MDX L STRSW,-1 ZD402890 0121 7004 290 | MDX WOOD CHECK EMITTED CHARACTER ZD402900 0122 400C 291 | BSI COMP CHECK FOR LIKE LINES ZD402910 0123 019B 292 | DC LOOPO+1 1132 DUMP PARAMETER ZD402920 0124 4C00 01B4 293 | BSC L BO GO TURN OFF INTERRUPT ZD402930 294 | * ZD402940 295 | * TEST IF 0-9, A-D, F ZD402950 296 | * ZD402960 0126 C03E 297 | WOOD LD EMIT ZD402970 0127 8042 298 | A STPPR /1000 ZD402980 0128 4C02 0186 299 | BSC L COMON,C OK IF CARRY ON ZD402990 012A 1002 300 | SLA 2 ZD403000 012B 4C10 0186 301 | BSC L COMON,- OK IF NON-NEG ZD403010 012D 4C00 01B4 302 | BSC L BO NO,WAIT ZD403020 303 | * ZD403030 304 | * TEST FOR LIKE LINES ZD403040 305 | * ZD403050 306 | * ZD403060 012F 0000 307 | COMP DC *-* ZD403070 0130 6580 0164 308 | LDX I1 ADDR XR1=WORD IN CORE ZD403080 0132 C480 012F 309 | LD I COMP INITIALIZE ZD403090 0134 D018 310 | STO INKAD+1 *INSTRUCTION ZD403100 0135 1010 311 | SLA 16 CLEAR THE LIKE- ZD403110 0136 D02B 312 | STO FURST *LINE SWITCH ZD403120 0137 6210 313 | LDX 2 16 INITIALIZE TEST+1 ZD403130 0138 6A03 314 | STX 2 TEST+1 *TO 16 ZD403140 315 | * ZD403150 316 | * ZD403160 0139 317 | MORE EQU * ZD403170 0139 6210 318 | LDX 2 16 NO OF DATA WORDS ZD403180 013A 6AAC 319 | STX 2 CTR16 *PER LINE =16 ZD403190 320 | * ZD403200 321 | * ZD403210 013B 322 | TEST EQU * ZD403220 013B C500 0010 323 | LD L1 16 LOAD DATA WORD ZD403230 013D F500 0000 324 | EOR L1 CHK WITH WD IN NEXT LINE ZD403240 013F 4C20 0150 325 | BSC L RETRN,Z EXIT IF NOT SAME ZD403250 326 | * ZD403260 0141 7101 327 | MDX 1 1 INCREMENT POINTER ZD403270 0142 74FF 00E7 328 | MDX L CTR16,-1 INCREMENT WORD COUNTER ZD403280 0144 70F6 329 | MDX TEST CONTINE IF NOT FINISHED ZD403290 330 | * ZD403300 331 | * ZD403310 332 | * ALL 16 WORDS ARE THE SAME ZD403320 333 | * ZD403330 334 | * ZD403340 0145 681C 335 | STX FURST SET LIKE-LINE SWITCH ZD403350 0146 336 | SAME EQU * ZD403360 0146 74FF 0092 337 | MDX L CTR,-1 SKIP IF LAST LINE ZD403370 0148 7001 338 | MDX MEXT KEEP CHECKING IF NOT ZD403380 0149 7036 339 | MDX STOP GO STOP THE PRINTER ZD403390 340 | * ZD403400 341 | * ZD403410 014A 342 | MEXT EQU * ZD403420 343 | * ZD403430 014A 7410 0164 344 | MDX L ADDR,16 NEXT LINE ZD403440 014C 7410 0000 345 | INKAD MDX L *-*,16 INCREMENT ADDRESS ZD403450 014E 1000 346 | NOP IN CASE OF SKIP ZD403460 014F 70E9 347 | MDX MORE KEEP CHECKING LIKE LINES ZD403470 0150 7401 012F 348 | RETRN MDX L COMP,1 SET UP EXIT ADDRESS ZD403480 0152 4C80 012F 349 | BSC I COMP EXIT ZD403490 350 | * ZD403500 351 | * ZD403510 352 | * ROUTINE TO INSERT MASK WORD ZD403520 353 | * ZD403530 0154 4C00 0000 354 | EXIT BSC L *-* ZD403540 0155 355 | OVER EQU *-1 ZD403550 0156 1081 356 | SLT 1 ZD403560 0157 72FF 357 | MDX 2 -1 SKIP WHEN MASK WD FULL ZD403570 0158 70FB 358 | MDX EXIT ZD403580 0159 6210 359 | LDX 2 16 RESET XR2,16 BITS/MASK WD ZD403590 015A 18D1 360 | RTE 17 ZD403600 015B D400 0020 361 | STO STO L MASK1 STORE MASK WORD ZD403610 015D 7401 015C 362 | MDX L STO+1,1 AUGMENT FOR NEXT MASK WD ZD403620 015F 18CF 363 | RTE 15 RESTORE ACC ZD403630 0160 70F3 364 | MDX EXIT RETURN ZD403640 365 | * ZD403650 366 | * ZD403660 367 | * ZD403670 0161 0000 368 | BLOCK DC 0 EXTRA SPACE SWITCH ZD403680 0162 0001 369 | FURST DC 1 LIKE-LINE SWITCH ZD403690 0163 9000 370 | K9000 DC /9000 CONST FOR EMITTED CHAR ZD403700 0164 371 | BSS E 0 ZD403710 0164 01D0 372 | ADDRS DC /01E0-/0010 STARTING ADDRESS - /0010 ZD403720 0165 3480 373 | DC /3480 START PRINTER IOCC ZD403730 0166 F000 374 | SENS2 DC /F000 USE FOR MASKING CONST ZD403740 0167 3701 375 | DC /3701 SENSE WITH RESET ZD403750 376 | * ZD403760 0168 C500 377 | SPACE DC /C500 CODE FOR E ZD403770 0169 3401 378 | DC /3401 1 LINE FEED ZD403780 379 | * ZD403790 016A 1000 380 | STPPR DC /1000 ZD403800 016B 3440 381 | DC /3440 STOP PRINTER ZD403810 382 | * ZD403820 016C 0165 383 | RDMT DC EMIT ZD403830 016D 3200 384 | DC /3200 READ EMITTER ZD403840 016E 0000 385 | KON1 DC 0 TWO-WORD CONST TO ZD403850 016F 0001 386 | ONE DC 1 *INSERT 1 BIT IN EXT ZD403860 0170 0000 387 | STRSW DC 0 SWITCH FOR E CHARACTER ZD403870 0164 388 | ADDR EQU ADDRS ZD403880 0165 389 | EMIT EQU ADDRS+1 ZD403890 390 | * ZD403900 391 | * ZD403910 0171 C0F3 392 | YES LD EMIT ZD403920 0172 F0F5 393 | EOR SPACE CHECK IF E EMITTED ZD403930 0173 4C20 01B4 394 | BSC L BO,Z BR IF E NOT EMITTED ZD403940 0175 7400 0162 395 | MDX L FURST,0 CHECK LIKE-LINE-SW ZD403950 0177 68A1 396 | STX JOHN SET SPACE INDICATOR ZD403960 0178 741B 0170 397 | YES1 MDX L STRSW,+27 RESET STRSW ZD403970 398 | * ZD403980 399 | * ZD403990 400 | * ZD404000 401 | * ZD404010 402 | * ZD404020 403 | * INCREMENT ADDRESS ZD404030 017A 7410 0164 404 | MDX L ADDRS,16 ZD404040 017C 1000 405 | NOP IN CASE OF SKIP ZD404050 406 | * ZD404060 017D 407 | NOCHG EQU * ZD404070 017D 74FF 0092 408 | MDX L CTR,-1 SKIP IF ALL LINES PRINTED ZD404080 017F 7002 409 | MDX SPCOP CONT TO PRINT MORE LINES ZD404090 0180 08E9 410 | STOP XIO STPPR STOP PRINTER END OF DUMP ZD404100 0181 3000 411 | WAIT FINISHED ZD404110 412 | * ZD404120 413 | * ZD404130 414 | * ZD404140 0182 08E5 415 | SPCOP XIO SPACE LINE SPACE ZD404150 0183 7410 019B 416 | MDX L LOOPO+1,+16 INCREMENT FOR NEXT LINE ZD404160 0185 1000 417 | NOP IN CASE OF SKIP ZD404170 418 | * ZD404180 419 | * CHARACTER EMITTED WAS 0-9, A-D, F ZD404190 420 | * ZD404200 0186 63EF 421 | COMON LDX 3 -17 ADDR WD + 16 DATA WORDS ZD404210 0187 6210 422 | LDX 2 16 16 BITS PER MASK WD ZD404220 0188 C0DC 423 | LD EMIT GET EMITTED CHARACTER ZD404230 0189 1084 424 | SLT 4 ZD404240 018A 4C02 018F 425 | BSC L JUMP1,C ZD404250 018C 80D6 426 | A K9000 ZD404260 018D 4C02 01B4 427 | BSC L BO,C WAIT IF CARRY ON ZD404270 428 | * ZD404280 018F D0D5 429 | JUMP1 STO EMIT FILL ZD404290 0190 1804 430 | SRA 4 * EMIT ZD404300 0191 E8D3 431 | OR EMIT * WITH ZD404310 0192 D0D2 432 | STO EMIT CHARACTER ZD404320 0193 1808 433 | SRA 8 ZD404330 0194 E8D0 434 | OR EMIT *E.G. ZD404340 0195 D0CF 435 | STO EMIT * 5555 FOR E ZD404350 0196 C0D8 436 | LD ONE EXTRA SPACE ZD404360 0197 D0C9 437 | STO BLOCK *INDICATOR ZD404370 0198 C0CB 438 | LD ADDRS ZD404380 0199 7002 439 | MDXFI MDX FIRST-1 GO DO ADDRESS OF LINE ZD404390 440 | * ZD404400 019A C700 01E0 441 | LOOPO LD L3 /1E0 FIRST WORD TO BE DUMPED ZD404410 019C 6104 442 | LDX 1 4 SET FOR 4 CHARACTERS/WORD ZD404420 019D F0C7 443 | FIRST EOR EMIT COMPARE WITH EMITTED CHAR ZD404430 019E 80C7 444 | LOOPI A SENS2 /F000 ZD404440 019F 4C02 01A2 445 | BSC L SKIP,C SKIP IF CARRY ON ZD404450 446 | * ZD404460 01A1 88CC 447 | AD KON1 INSERT BIT IN Q REGISTER ZD404470 448 | * ONLY IF CARRY OFF ZD404480 01A2 40B2 449 | SKIP BSI OVER INSERT MASK WD ZD404490 450 | * ZD404500 01A3 1003 451 | SLA 3 *FOR NEXT CHARACTER ZD404510 01A4 71FF 452 | MDX 1 -1 4 CHARACTERS DONE ZD404520 01A5 70F8 453 | MDX LOOPI *NO,DO NEXT ZD404530 454 | * ZD404540 455 | * END OF SCAN FOR WORD ZD404550 456 | * ZD404560 01A6 40AE 457 | CONTU BSI OVER SPACE BETWEEN WORDS ZD404570 01A7 74FF 0161 458 | MDX L BLOCK,-1 NEED SPACE BETWEEN WORDS ZD404580 01A9 7003 459 | MDX MDX31 *NO,NEXT WORD ZD404590 01AA 40AA 460 | BSI OVER *YES,GO SPACE ZD404600 01AB 7404 0161 461 | MDX L BLOCK,4 RESET INDICATOR ZD404610 01AD 7301 462 | MDX31 MDX 3 1 POINT AT NEXT WORD ZD404620 01AE 70EB 463 | MDX LOOPO GET NEXT WORD ZD404630 464 | * ZD404640 465 | * END OF LINE ZD404650 01AF 466 | SLT EQU * ZD404660 01AF 1095 467 | SLT 21 ZD404670 01B0 D400 0025 468 | STO L MASK1+5 LAST PRINT POSITIONS ZD404680 01B2 74FB 015C 469 | MDX L STO+1,-5 RESET STORE INSTRUCTION ZD404690 470 | * ZD404700 01B4 4C40 016E 471 | BO BOSC L KON1 TURN OFF INT,WAIT FOR MORE ZD404710 472 | * ZD404720 473 | * ZD404730 01B6 474 | END START ZD404740 There were no errors in this assembly Program transfer address = 0040 === CROSS REFERENCES ========================================================== Name Val Defd Referenced ADDR 0164 388 308 344 ADDRS 0164 372 80 133 257 388 389 404 438 BLNK 0074 96 76 BLOCK 0161 368 437 458 461 BO 01B4 471 293 302 394 427 BUFAD 00E4 243 129 156 157 162 165 BUFER 000E 189 77 BUFFR 007A 188 128 CHAR1 00A1 138 161 CHAR2 00BB 160 153 CLEAR 00F9 232 238 242 251 278 CLRR 0061 77 79 COMON 0186 421 299 301 COMP 012F 307 176 291 309 348 349 CONP 0094 128 83 CONTU 01A6 457 CORE1 00E4 211 73 218 228 243 244 245 250 COREL 0082 110 212 215 224 226 227 CTR 0092 125 82 220 221 337 408 CTR16 00E7 245 319 328 D1132 0107 250 67 D1403 005D 73 60 D256 00F9 242 219 D4096 00CA 170 225 DOPRN 00D3 180 173 184 DOSPC 0083 113 115 117 124 172 174 EMIT 0165 389 297 383 392 423 429 431 432 434 435 443 EXIT 0154 354 358 364 FIRST 019D 443 439 FURST 0162 369 171 312 335 395 GR4K 00EF 219 217 INKAD 014C 345 310 INT 010E 267 239 274 INT1 011A 278 269 INT4 006C 89 95 109 INTA4 0081 109 44 INTAD 0105 239 47 JOHN 0119 275 270 273 396 JUMP1 018F 429 425 K9000 0163 370 426 KEEP 00E5 244 151 155 KON1 016E 385 447 471 LDX1 005F 75 178 LOOP 009D 135 130 168 177 LOOPI 019E 444 453 LOOPO 019A 441 292 416 463 LTRT 007C 111 149 152 159 MASK1 0020 260 361 468 MDX31 01AD 462 459 MDXFI 0199 439 MEXT 014A 342 338 MORE 0139 317 347 NINE 0009 241 48 NOCHG 017D 407 ONE 016F 386 436 OUTX 00C6 167 164 OVER 0155 355 449 457 460 PACK 0106 240 213 223 PRNT 007A 102 185 188 PT010 0050 61 56 PTEST 0048 54 63 68 RDMT 016C 383 279 READ 0093 126 163 166 169 RETRN 0150 348 325 RIGHT 00B3 154 150 SAME 0146 336 SAV 0075 97 90 94 SENS2 0166 374 61 65 253 268 444 SENS3 007C 104 54 58 91 111 114 180 SKIP 01A2 449 445 SKON 0080 108 106 SKP 007E 106 122 SKPIN 0076 98 93 118 123 SLT 01AF 466 SPAC3 0078 100 57 120 SPACE 0168 377 64 271 393 415 SPCE 00CF 174 186 SPCOP 0182 415 409 START 0040 43 474 STO 015B 361 362 469 STOP 0180 410 339 STPPR 016A 380 298 410 STRSW 0170 387 284 289 397 STSPC 004B 57 TABAD 00DA 187 144 TABL 00DC 197 187 TEST 013B 322 314 329 TSP 0109 253 255 TWLVE 000C 190 45 WOOD 0126 297 290 XFF00 00DB 192 148 YES 0171 392 285 YES1 0178 397