File WORK.LS (listing file)

Directory of image this file is from
This file as a plain text file


/SNORTS PARAMETER FILE. PAL8-V13B NO DATE PAGE 1 /SNORTS PARAMETER FILE. / ROUTINE AND PARAMETER DEFINITIONS 0156 XINIT= 156 0157 XPUSHJ= XINIT+1 0160 XPOPJ= XPUSHJ+1 0161 XPUSH= XPOPJ+1 0162 XPOP= XPUSH+1 0163 XLOOKU= XPOP+1 0164 XENTER= XLOOKU+1 0165 XICLOS= XENTER+1 0166 XOCLOS= XICLOS+1 0167 XPAT= XOCLOS+1 0170 XASC= XPAT+1 0171 XINT= XASC+1 0172 XBASE= XINT+1 0173 XINDRC= XBASE+1 0174 XICLTB= XINDRC+1 0175 XDEVS= XICLTB+1 0176 XFILSI= XDEVS+1 / RELATIVE INTERNAL CALLING TABLE 0000 XXCLRV= 0 0001 XXCLV= 1 0002 XXFNDS= 2 0003 XXGETC= 3 0004 XXPUTL= 4 0005 XXPUTV= 5 0006 XXPVR= 6 0007 XXSVCH= 7 0010 XXTOP= 10 0011 XXWRCH= 11 / VARIABLE FUNCTION DEFINITIONS 0020 INPUT= 20 0021 READ= 21 0022 OUTPUT= 22 0023 OUTHOL= 23 0024 WRITE= 24 0025 WRITEH= 25 0026 POSR= 26 / PATTERN MATCHING CODE DEFINITIONS 0001 XEQC= 1 0002 XORC= 2 0003 XFENC= 3 0004 XFLC= 4 0177 XSUCCES=177 IFDEF XP0011 <ERROR: SOURCE FILE COMPILES TOO LARGE> 1200 XFIELD1=1200 0200 *200
/SNOBOL 8.2 PAL8-V13B NO DATE PAGE 2 /SNOBOL 8.2 000200 4556 JMS I XINIT 000201 0000 XIND 000202 1400 X0 000203 0026 XVLEN 000204 1542 XTOP //WORKING DOCUMENTATION GENERATOR // // WRITTEN BY BILL NOWICKI // NORTHWESTERN UNIVERSITY // COMPUTER SCIENCE RESEARCH LABORATORY // MAY, 1976 // UPDATED: DECMEBER 1, 1976 // //+GENERAL INFORMATION // // THIS PROGRAM CAN BE USED TO GENERATE A WORKING DOCUMENT //FROM A SOURCE PROGRAM WHICH FOLLOWS THE RULES FOR COMMENTING //OUTLINED BELOW. USUALLY THIS WILL BE A "PAL" SOURCE, ALTHOUGH //OTHER LANGUAGES MAY BE ADDED IN THE FUTURE. //THIS IS A "SNOBOL" PROGRAM WRITTEN FOR THE "SNOBOL 8.2" COMPILER //TO RUN UNDER "OS/8". // // THE PROGRAM GENERATES COMMANDS FOR THE PROGRAM "RUNOFF" //(FORMERLY CALLED "PRINTR") //WHICH ASSUMES ALL INPUT IS IN UPPER CASE. HOWEVER, ANY LOWER CASE //COMMENTS WILL BE TRANSMITTED IN LOWER CASE. //THE ONLY MAJOR DRAWBACK IS THAT THE PARAGRAPH DESCRIPTIONS //FOLLOWING THE /+ FLAG CHARACTER ARE MAPPED INTO //UPPER/LOWER CASE IN A NON-INTELLIGENT FASHION. //TO SEE EXACTLY HOW THIS IS DONE, CONSULT THE "RUNOFF" MANUAL, //KEEPING IN MIND THAT THE MODE USED IS: "FILL", "JUSTIFY", //"AUTOPARAGRAPH", "AUTOCAPITALIZE", AND "FLAGCAPITALIZE#_"". //THIS ESSENTIALLY MEANS THAT ALL SENTANCES MUST END WITH A PERIOD, //PARAGRAPHS MUST BE SEPARATED BY A BLANK "COMMENT" LINE //FOLLOWED BY A LINE STARTING WITH TWO SPACES, AND NAMES //WHICH SHOULD REMAIN IN CAPS SHOULD BE ENCLOSED IN QUOTES. //IF THIS AUTOMATIC CAPITALIZTION FEATURE IS NOT DESIRED, //ANSWER THE RUN-TIME QUESTION: ^^AUTO CAPS (Y OR N) ?\\ //WITH AN "N". // // ALL FLAG CHARACTERS MUST BE PRECEEDED BY A //SLASH AS THE FIRST NON-BLANK CHARACTER IN THE LINE. //THE FOLOWING IS A TABLE OF THE PRESENT FLAG CHARACTERS //AND A SHORT DESCRIPTION OF THE EFFECT OF EACH: // //=FLAG NAME EFFECT // + "PLUS" ^PARAGRAPH DESCRIPTION // - "MINUS" ^SEARCHES FOR NEXT "PLUS" // & "CALLING" "SEQUENCE" ^OUTPUTS COMMENTS AS THEY ARE, // WITH NO FILLING, CASE MAPPING, ETC. // # "ROUTINES" "USED" ^DITTO // ; "LOGIC" ^DITTO // * "GLOBAL" "VARIABLES" ^DITTO // = "TABLE" ^DITTO
/SNOBOL 8.2 PAL8-V13B NO DATE PAGE 2-1 // $ "LOCATIONS" ^DITTO // @ "VARIABLES" ^PRINTS OUT EVERYTHING UNTIL THE NEXT // FLAG CHARACTER. // ! "ENTRY" "POINTS" ^TREATS FOLLOWING LINES STARTING WITH // "PLUS" AS NAMES OF ENTRY POINTS. // " "TIMING" ^SEPARATE PARAGRAPH IF IN "PLUS" MODE // : "CODE" ^MUST BE ONE OF THESE OR ANOTHER FLAG // CHARACTER AFTER EVERY "PLUS". // //-GENERAL INFORMATION //+STRING CONSTANTS // // THE USER CAN CHANGE THE FLAG CHARACTERS FOR USE WITH //SOME OTHER LANGUAGE IF DESIRED. //THE FOLLOWING ARE THE PRESENT SETTINGS: //@ / T = .A211 /TAB (ASCII 211) MAY WANT TO DEFINE AS 000205 4567 JMS I XPAT 000206 0002 0002 000207 1400 T 000210 0001 XEQC 000211 1431 XL0001 / /THE SEQUENCE .A377 .A211 / SP = " " /SPACE 000212 4567 JMS I XPAT 000213 0002 0002 000214 1401 SP 000215 0001 XEQC 000216 1426 XL0002 / S = "/" /COMMENT CHARACTER 000217 4567 JMS I XPAT 000220 0002 0002 000221 1402 S 000222 0001 XEQC 000223 1471 XL0003 / FP = "+" /START OF MODULE 000224 4567 JMS I XPAT 000225 0002 0002 000226 1403 FP 000227 0001 XEQC 000230 1442 XL0004 / FS = "&" /CALLING SEQUENCE 000231 4567 JMS I XPAT 000232 0002 0002 000233 1404 FS 000234 0001 XEQC 000235 1455 XL0005 / FS2 = "<" /OLD FORM FOR CALLING SEQUENCE 000236 4567 JMS I XPAT 000237 0002 0002 000240 1405 FS2 000241 0001 XEQC 000242 1446 XL0006 / FR = "#" /ROUTINES CALLED 000243 4567 JMS I XPAT
/SNOBOL 8.2 PAL8-V13B NO DATE PAGE 2-2 000244 0002 0002 000245 1406 FR 000246 0001 XEQC 000247 1443 XL0007 / FR2 = ">" /OLD FORM FOR ROUTINES USED 000250 4567 JMS I XPAT 000251 0002 0002 000252 1407 FR2 000253 0001 XEQC 000254 1456 XL0010 / FL = ";" /LOGIC 000255 4567 JMS I XPAT 000256 0002 0002 000257 1410 FL 000260 0001 XEQC 000261 1444 XL0011 / FC = ":" /CODE 000262 4567 JMS I XPAT 000263 0002 0002 000264 1411 FC 000265 0001 XEQC 000266 1436 XL0012 / FM = "-" /MINUS (END OF MODULE) 000267 4567 JMS I XPAT 000270 0002 0002 000271 1412 FM 000272 0001 XEQC 000273 1452 XL0013 / FG = "*" /GLOBAL VARIABLES 000274 4567 JMS I XPAT 000275 0002 0002 000276 1413 FG 000277 0001 XEQC 000300 1437 XL0014 / FV = "@" /LOCAL VARIABLES 000301 4567 JMS I XPAT 000302 0002 0002 000303 1414 FV 000304 0001 XEQC 000305 1427 XL0015 / FE = "!" /ENTRY POINTS 000306 4567 JMS I XPAT 000307 0002 0002 000310 1415 FE 000311 0001 XEQC 000312 1432 XL0016 / FT = "=" /TABULAR DATA 000313 4567 JMS I XPAT 000314 0002 0002 000315 1416 FT 000316 0001 XEQC 000317 1453 XL0017 / FD = "$" /LOCATIONS USED 000320 4567 JMS I XPAT 000321 0002 0002
/SNOBOL 8.2 PAL8-V13B NO DATE PAGE 2-3 000322 1417 FD 000323 0001 XEQC 000324 1447 XL0020 //-STRING CONSTANTS // // //+USER INPUT // THE PROGRAM FIRST ASKS FOR THE INPUT AND //OUTPUT FILES. AFTER GETTING //TWO GOOD RESPOSES, THE PROGRAM WILL PRINT: // ^^AUTO CAPS (Y OR N) ?\\ // ANSWER THIS QUESTION DEPENDING ON IF IT IS DESIRED //FOR "RUNOFF" TO DO THE UPPER/LOWER CASE CONVERSIONS. //THE PROGRAM WILL THEN PRINT: // "MODULES" "DOCUMENTED:" // // IT WILL OUTPUT SOME "RUNOFF" COMMANDS TO THE FILE //AND USE THE FIRST LINE OF INPUT (IF IT IS A COMMENT) AS //THE TITLE OF THE DOCUMENT. //THE PROGRAM PASSES DOCUMENTATION THROUGH IN FIVE MAJOR //MODES WHICH ARE DESCRIBED BELOW. // //:CODE: /ASK, OUTHOLD = "INPUT:" 000325 4567 ASK,JMS I XPAT 000326 0002 0002 000327 0023 OUTHOL 000330 0001 XEQC 000331 1433 XL0021 / .LOOKUP INPUT :F(ASK) 000332 4563 JMS I XLOOKUP 000333 0020 INPUT 000334 1177 TAD XSUCCES 000335 7640 SZA CLA 000336 5325 JMP ASK /ASKO, OUTHOLD = "OUTPUT:" 000337 4567 ASKO,JMS I XPAT 000340 0002 0002 000341 0023 OUTHOL 000342 0001 XEQC 000343 1472 XL0022 / .ENTER INPUT :F(ASKO) 000344 4564 JMS I XENTER 000345 0020 INPUT 000346 1177 TAD XSUCCES 000347 7640 SZA CLA 000350 5337 JMP ASKO /ASKOP, OUTHOLD = "AUTO CAPS (Y OR N) ?" 000351 4567 ASKOP,JMS I XPAT 000352 0002 0002 000353 0023 OUTHOL 000354 0001 XEQC 000355 1434 XL0023 // / AUTO = INPUT
/SNOBOL 8.2 PAL8-V13B NO DATE PAGE 2-4 000356 4567 JMS I XPAT 000357 0002 0002 000360 1420 AUTO 000361 0001 XEQC 000362 0020 INPUT 000363 5777 JMP I (.&7600+200 000377 0400 0400 PAGE 0400 XP0001=. / AUTO_ "Y"!"N" :F(ASKOP) /CHECK FOR VALID RESPONSE 000400 4567 JMS I XPAT 000401 4003 0003-4000 000402 1420 AUTO 000403 1435 XL0024 000404 0002 XORC 000405 1457 XL0025 000406 1177 TAD XSUCCES 000407 7640 SZA CLA 000410 5777' JMP ASKOP / AUTO_ "Y" ** = "\\" /SETUP FOR FLAG 000411 4567 JMS I XPAT 000412 4006 0006-4000 000413 1420 AUTO 000414 1435 XL0024 000415 0004 XFLC;0;0 000416 0000 000417 0000 000420 0001 XEQC 000421 1450 XL0026 / AUTO_ "N" **= /FORGET ABOUT OTHER GARBAGE 000422 4567 JMS I XPAT 000423 4005 0005-4000 000424 1420 AUTO 000425 1457 XL0025 000426 0004 XFLC;0;0 000427 0000 000430 0000 000431 0001 XEQC // // WE HAVE GOOD FILES, SET UP SOME STUFF // / OUTPUT = "MODULES DOCUMENTED:" 000432 4567 JMS I XPAT 000433 0002 0002 000434 0022 OUTPUT 000435 0001 XEQC 000436 1454 XL0027 / WRITE = ".NF;.UC" 000437 4567 JMS I XPAT 000440 0002 0002 000441 0024 WRITE 000442 0001 XEQC 000443 1460 XL0030 / LINE = READ /READ THE TITLE LINE 000444 4567 JMS I XPAT
/SNOBOL 8.2 PAL8-V13B NO DATE PAGE 2-5 000445 0002 0002 000446 1421 LINE 000447 0001 XEQC 000450 0021 READ / LINE ** "/" = :F(SETUP) /IGNORE IF NON-COMMENT 000451 4567 JMS I XPAT 000452 0005 0005 000453 1421 LINE 000454 0004 XFLC;0;0 000455 0000 000456 0000 000457 1471 XL0003 000460 0001 XEQC 000461 1177 TAD XSUCCES 000462 7640 SZA CLA 000463 5301 JMP SETUP / WRITE = ".CW; ^&" LINE "\&" /OUTPUT THE UNDERLINED TITLE 000464 4567 JMS I XPAT 000465 0004 0004 000466 0024 WRITE 000467 0001 XEQC 000470 1461 XL0031 000471 1421 LINE 000472 1451 XL0032 / WRITE = ".TITLE " LINE 000473 4567 JMS I XPAT 000474 0003 0003 000475 0024 WRITE 000476 0001 XEQC 000477 1462 XL0033 000500 1421 LINE /SETUP, WRITE = AUTO '.AP;.AC;.FLAG CAPITAlIZE ";.NUMBER 1' 000501 4567 SETUP,JMS I XPAT 000502 0003 0003 000503 0024 WRITE 000504 0001 XEQC 000505 1420 AUTO 000506 1463 XL0034 // //-USER INPUT // // //+CODE, MINUS, LOOP MODES // // "CODE" MODE IS OBTAINED AT THE BEGINING OF THE FILE, //AND AFTER ANY /- OR /:. IN THIS MODE, NOTHING IS OUTPUT //ALTHOUGH EACH LINE IS SCANNED FOR A /+ IN THE FIRST COLUMN. // //:CODE: /LOOP, LINE = READ :F(EOF) 000507 4567 CODE,MINUS,LOOP,JMS I XPAT 000510 0002 0002 000511 1421 LINE 000512 0001 XEQC 000513 0021 READ
/SNOBOL 8.2 PAL8-V13B NO DATE PAGE 2-6 000514 1177 TAD XSUCCES 000515 7640 SZA CLA 000516 5776' JMP EOF / LINE_ S FP = :F(LOOP) /IGNORE EVERYTHING TILL /+ 000517 4567 JMS I XPAT 000520 4003 0003-4000 000521 1421 LINE 000522 1402 S 000523 1403 FP 000524 0001 XEQC 000525 1177 TAD XSUCCES 000526 7640 SZA CLA 000527 5307 JMP LOOP //-CODE, MINUS, LOOP // //+PLUS // "PLUS" MODE IS ENTERED AFTER SEEING A SLASH PLUS //IN COLUMN 1. THE COMMENTS AFTER A SLASH PLUS //ARE FIRST SCANNED FOR OTHER FLAG CHARACTERS, //AND THEN ARE SIMPLY TRANSMITTED TO THE OUTPUT //FILE. HOWEVER, THE "RUNOFF" COMMANDS PLACED BEFORE //THE LINES IMPLY THAT ANYTHING ON THE COMMENT LINE IS //PART OF A TEXT PARAGRAPH, AND WILL THEREFORE BE //FILLED AND JUSTIFIED. //:CODE /PLUS, OUTPUT = LINE 000530 4567 PLUS,JMS I XPAT 000531 0002 0002 000532 0022 OUTPUT 000533 0001 XEQC 000534 1421 LINE / /THE FOLOWING MESS OUTPUTS / /SOME NEEDED RUNOFF COMMANDS / WRITE = ".TP 8;.B 2;.CW; ^&^^" LINE "\&" AUTO 000535 4567 JMS I XPAT 000536 0005 0005 000537 0024 WRITE 000540 0001 XEQC 000541 1464 XL0035 000542 1421 LINE 000543 1451 XL0032 000544 1420 AUTO / WRITE = ".FILL;.P" /START THE PARAGRAPH 000545 4567 JMS I XPAT 000546 0002 0002 000547 0024 WRITE 000550 0001 XEQC 000551 1465 XL0036 / CAPSYM = ".B 2;.NF;^^" /RESET THE CAPITALIZE SYMBOL 000552 4567 JMS I XPAT 000553 0002 0002 000554 1422 CAPSYM 000555 0001 XEQC 000556 1466 XL0037 / COMSYM = S /RESET THE COMMENT SYMBOL
/SNOBOL 8.2 PAL8-V13B NO DATE PAGE 2-7 000557 4567 JMS I XPAT 000560 0002 0002 000561 1423 COMSYM 000562 0001 XEQC 000563 1402 S / TABSYM = T /TAB CHARACTER 000564 4567 JMS I XPAT 000565 0002 0002 000566 1424 TABSYM 000567 0001 XEQC 000570 1400 T 000571 5775 JMP I (.&7600+200 000575 0600 000576 1226 000577 0351 0600 PAGE 0600 XP0002=. / SPSYM = " " /SET THE SPACE CHARACTER 000600 4567 JMS I XPAT 000601 0002 0002 000602 1425 SPSYM 000603 0001 XEQC 000604 1426 XL0002 /PLOOP, LINE = READ :F(EOF) 000605 4567 PLOOP,JMS I XPAT 000606 0002 0002 000607 1421 LINE 000610 0001 XEQC 000611 0021 READ 000612 1177 TAD XSUCCES 000613 7640 SZA CLA 000614 5777' JMP EOF / LINE_ T COMSYM = COMSYM T /ZAP LEADING TABS 000615 4567 SEARCH,JMS I XPAT 000616 4005 0005-4000 000617 1421 LINE 000620 1400 T 000621 1423 COMSYM 000622 0001 XEQC 000623 1423 COMSYM 000624 1400 T / LINE_ S = :F(PASTST) /IS IT A GOOD COMMENT ? 000625 4567 JMS I XPAT 000626 4002 0002-4000 000627 1421 LINE 000630 1402 S 000631 0001 XEQC 000632 1177 TAD XSUCCES 000633 7640 SZA CLA 000634 5776' JMP PASTST / LINE_ FS = :S(CALSEQ) /& MEANS CALLING SEQUENCE 000635 4567 JMS I XPAT 000636 4002 0002-4000 000637 1421 LINE 000640 1404 FS
/SNOBOL 8.2 PAL8-V13B NO DATE PAGE 2-8 000641 0001 XEQC 000642 1177 TAD XSUCCES 000643 7650 SNA CLA 000644 5775' JMP CALSEQ / LINE_ FS2= :S(CALSEQ) /OLD FORM OF CALLING SEQUENCE 000645 4567 JMS I XPAT 000646 4002 0002-4000 000647 1421 LINE 000650 1405 FS2 000651 0001 XEQC 000652 1177 TAD XSUCCES 000653 7650 SNA CLA 000654 5775' JMP CALSEQ / LINE_ FR = :S(ROUTIN) /# ROUTINES CALLED 000655 4567 JMS I XPAT 000656 4002 0002-4000 000657 1421 LINE 000660 1406 FR 000661 0001 XEQC 000662 1177 TAD XSUCCES 000663 7650 SNA CLA 000664 5775' JMP ROUTIN / LINE_ FR2= :S(ROUTIN) /OLD FORM FOR ROUTINES USED 000665 4567 JMS I XPAT 000666 4002 0002-4000 000667 1421 LINE 000670 1407 FR2 000671 0001 XEQC 000672 1177 TAD XSUCCES 000673 7650 SNA CLA 000674 5775' JMP ROUTIN / LINE_ FL = :S(LOGIC) /; LOGIC 000675 4567 JMS I XPAT 000676 4002 0002-4000 000677 1421 LINE 000700 1410 FL 000701 0001 XEQC 000702 1177 TAD XSUCCES 000703 7650 SNA CLA 000704 5775' JMP LOGIC / LINE_ FC = :S(CODE) /: CODE 000705 4567 JMS I XPAT 000706 4002 0002-4000 000707 1421 LINE 000710 1411 FC 000711 0001 XEQC 000712 1177 TAD XSUCCES 000713 7650 SNA CLA 000714 5774' JMP CODE / LINE_ FM = :S(MINUS) /- END OF MODULE 000715 4567 JMS I XPAT 000716 4002 0002-4000 000717 1421 LINE 000720 1412 FM 000721 0001 XEQC
/SNOBOL 8.2 PAL8-V13B NO DATE PAGE 2-9 000722 1177 TAD XSUCCES 000723 7650 SNA CLA 000724 5774' JMP MINUS / LINE_ FG = :S(GLOBAL) /* GLOBAL VARIABLES 000725 4567 JMS I XPAT 000726 4002 0002-4000 000727 1421 LINE 000730 1413 FG 000731 0001 XEQC 000732 1177 TAD XSUCCES 000733 7650 SNA CLA 000734 5775' JMP GLOBAL / LINE_ FV = :S(VARIABL) /@ VARIABLES 000735 4567 JMS I XPAT 000736 4002 0002-4000 000737 1421 LINE 000740 1414 FV 000741 0001 XEQC 000742 1177 TAD XSUCCES 000743 7650 SNA CLA 000744 5773' JMP VARIAB / LINE_ FE = :S(ENTRYS) /! ENTRY POINTS 000745 4567 JMS I XPAT 000746 4002 0002-4000 000747 1421 LINE 000750 1415 FE 000751 0001 XEQC 000752 1177 TAD XSUCCES 000753 7650 SNA CLA 000754 5772' JMP ENTRYS 000755 5771 JMP I (.&7600+200 000771 1000 000772 1137 000773 1127 000774 0507 000775 1073 000776 1031 000777 1226 1000 PAGE 1000 XP0003=. / LINE_ FT = :S(TABLE) /= TABLE 001000 4567 JMS I XPAT 001001 4002 0002-4000 001002 1421 LINE 001003 1416 FT 001004 0001 XEQC 001005 1177 TAD XSUCCES 001006 7650 SNA CLA 001007 5273 JMP TABLE / LINE_ FD = :S(LOCS) /$ LOCATIONS 001010 4567 JMS I XPAT 001011 4002 0002-4000 001012 1421 LINE 001013 1417 FD 001014 0001 XEQC
/SNOBOL 8.2 PAL8-V13B NO DATE PAGE 2-10 001015 1177 TAD XSUCCES 001016 7650 SNA CLA 001017 5273 JMP LOCS / LINE_ FP = :S(PLUS) /COULD HAVE NESTED /+'S 001020 4567 JMS I XPAT 001021 4002 0002-4000 001022 1421 LINE 001023 1403 FP 001024 0001 XEQC 001025 1177 TAD XSUCCES 001026 7650 SNA CLA 001027 5777' JMP PLUS / :(TABZAP) 001030 5250 JMP TABZAP /PASTST, LINE "/" = :S(TABZAP) /WE WANT ALL COMMENTS 001031 4567 PASTST,JMS I XPAT 001032 0002 0002 001033 1421 LINE 001034 1471 XL0003 001035 0001 XEQC 001036 1177 TAD XSUCCES 001037 7650 SNA CLA 001040 5250 JMP TABZAP / ""_ COMSYM :F(PLOOP) /SHOULD WE PASS NON-COMMENTS ? 001041 4567 JMS I XPAT 001042 4001 0001-4000 001043 1430 XL0040 001044 1423 COMSYM 001045 1177 TAD XSUCCES 001046 7640 SZA CLA 001047 5776' JMP PLOOP /TABZAP, LINE TABSYM = :S(TABZAP) /GET RID OF TABS 001050 4567 TABZAP,JMS I XPAT 001051 0002 0002 001052 1421 LINE 001053 1424 TABSYM 001054 0001 XEQC 001055 1177 TAD XSUCCES 001056 7650 SNA CLA 001057 5250 JMP TABZAP / LINE_ SPSYM = /GET RID OF SINGLE SPACES 001060 4567 JMS I XPAT 001061 4002 0002-4000 001062 1421 LINE 001063 1425 SPSYM 001064 0001 XEQC / WRITE = LINE :(PLOOP) /OUTPUT AND CONTINUE 001065 4567 JMS I XPAT 001066 0002 0002 001067 0024 WRITE 001070 0001 XEQC 001071 1421 LINE 001072 5776' JMP PLOOP //-PLUS //
/SNOBOL 8.2 PAL8-V13B NO DATE PAGE 2-11 //+CALSEQ, ROUTINES, LOGIC, GLOBAL, TABLE, LOCS // "TABLE" MODE IS OBTAINED BY ANY OF THE //FOLLOWING FLAG CHARACTERS: < _# * = ; $. //IN THIS MODE EVERYTHING IS PUT IN UPPER CASE THROUGH //"RUNOFF" WITH NO FILLING SO THAT SPACING IS NOT AFFECTED. //:CODE: / COMSYM = S /WE ONLY WANT COMMENTS 001073 4567 LOCS,CALSEQ,ROUTIN,LOGIC,GLOBAL,TABLE,JMS I XPAT 001074 0002 0002 001075 1423 COMSYM 001076 0001 XEQC 001077 1402 S /OUTCAP, WRITE = CAPSYM LINE 001100 4567 OUTCAP,JMS I XPAT 001101 0003 0003 001102 0024 WRITE 001103 0001 XEQC 001104 1422 CAPSYM 001105 1421 LINE / TABSYM = .A232 .A232 /CONTROL Z'S SHOULD NEVER EXIST 001106 4567 JMS I XPAT 001107 0003 0003 001110 1424 TABSYM 001111 0001 XEQC 001112 1440 XL0041 001113 1440 XL0041 / SPSYM = TABSYM /SAME FOR HERE 001114 4567 JMS I XPAT 001115 0002 0002 001116 1425 SPSYM 001117 0001 XEQC 001120 1424 TABSYM / CAPSYM = "" :(PLOOP) /CONTINUE 001121 4567 JMS I XPAT 001122 0002 0002 001123 1422 CAPSYM 001124 0001 XEQC 001125 1430 XL0040 001126 5776' JMP PLOOP //-CALSEQ, ROUTINES, LOGIC, GLOBAL, TABLE // //+VARIABLES // "VARIABLE" MODE IS OBTAINED BY THE /@ FLAG. //IN THIS MODE "EVERY" LINE OF INPUT IS SENT TO THE //OUTPUT FILE, ALTHOUGH SLASHES ARE REMOVED FROM COMMENTS. //IT IS VERY IMPORTANT THAT ANOTHER FLAG CHARACTER //IS USED TO GET OUT OF THIS MODE OR THE ENTIRE //PROGRAM WILL BE SENT TO THE OUTPUT FILE. // //:CODE: / COMSYM = "" /SET TO PRINT OUT EVERYTHING 001127 4567 VARIAB,JMS I XPAT 001130 0002 0002 001131 1423 COMSYM 001132 0001 XEQC
/SNOBOL 8.2 PAL8-V13B NO DATE PAGE 2-12 001133 1430 XL0040 / :S(OUTCAP) 001134 1177 TAD XSUCCES 001135 7650 SNA CLA 001136 5300 JMP OUTCAP // //-VARIABLES // //+ENTRYS // "ENTRY" MODE IS THE MODE USED TO PROCESS THE //"/!ENTRY" "POINT" FLAG. IN THIS MODE FOLLOWING LINES //STARTING WITH "/+" WILL BE PUT IN CAPS ON THE SAME LINE. //THE FIRST LINE NOT STARTING WITH "/+" GOES BACK INTO "PLUS" //MODE. //:CODE: /ENTRYS, WRITEH = ".P;^" LINE 001137 4567 ENTRYS,JMS I XPAT 001140 0003 0003 001141 0025 WRITEH 001142 0001 XEQC 001143 1467 XL0042 001144 1421 LINE /ENLOOP, LINE = READ :F(EOF) 001145 4567 ENLOOP,JMS I XPAT 001146 0002 0002 001147 1421 LINE 001150 0001 XEQC 001151 0021 READ 001152 1177 TAD XSUCCES 001153 7640 SZA CLA 001154 5775' JMP EOF 001155 5774 JMP I (.&7600+200 001174 1200 001175 1226 001176 0605 001177 0530 1200 PAGE 1200 XP0004=. / LINE_ S FP = :F(ENEND) 001200 4567 JMS I XPAT 001201 4003 0003-4000 001202 1421 LINE 001203 1402 S 001204 1403 FP 001205 0001 XEQC 001206 1177 TAD XSUCCES 001207 7640 SZA CLA 001210 5220 JMP ENEND / WRITE = '"' LINE :(ENLOOP) /OUTPUT AN ENTRY POINT 001211 4567 JMS I XPAT 001212 0003 0003 001213 0024 WRITE 001214 0001 XEQC 001215 1441 XL0043 001216 1421 LINE
/SNOBOL 8.2 PAL8-V13B NO DATE PAGE 2-13 001217 5777' JMP ENLOOP // /ENEND, WRITEH = ".P;" :(SEARCH) /END OF ENTRY POINTS 001220 4567 ENEND,JMS I XPAT 001221 0002 0002 001222 0025 WRITEH 001223 0001 XEQC 001224 1470 XL0044 001225 5776' JMP SEARCH // //-ENTRYS // /EOF, .OCLOSE :F(CERROR) 001226 4566 EOF,JMS I XOCLOSE 001227 1177 TAD XSUCCES 001230 7640 SZA CLA 001231 5234 JMP CERROR / .ICLOSE 001232 4565 JMS I XICLOSE / .EXIT 001233 5775 JMP I (7600 /CERROR, OUTPUT = "CLOSING ERROR !" 001234 4567 CERROR,JMS I XPAT 001235 0002 0002 001236 0022 OUTPUT 001237 0001 XEQC 001240 1445 XL0045 / .EXIT 001241 5775 JMP I (7600 /IOBAD, OUTPUT = "OUTPUT ERROR !" 001242 4567 IOBAD,JMS I XPAT 001243 0002 0002 001244 0022 OUTPUT 001245 0001 XEQC 001246 1473 XL0046 / .END 001247 5775 JMP I (7600 //-EOF 001375 7600 001376 0615 001377 1145 1400 PAGE X0, 001400 0000 T, 0 001401 0000 SP, 0 001402 0000 S, 0 001403 0000 FP, 0 001404 0000 FS, 0 001405 0000 FS2, 0 001406 0000 FR, 0 001407 0000 FR2, 0 001410 0000 FL, 0 001411 0000 FC, 0 001412 0000 FM, 0
/SNOBOL 8.2 PAL8-V13B NO DATE PAGE 2-14 001413 0000 FG, 0 001414 0000 FV, 0 001415 0000 FE, 0 001416 0000 FT, 0 001417 0000 FD, 0 001420 0000 AUTO, 0 001421 0000 LINE, 0 001422 0000 CAPSYM, 0 001423 0000 COMSYM, 0 001424 0000 TABSYM, 0 001425 0000 SPSYM, 0 0026 XVLEN=.-X0 001426 1200 XL0002, XX0002 001427 1203 XL0015, XX0015 001430 1206 XL0040, XX0040 001431 1211 XL0001, XX0001 001432 1214 XL0016, XX0016 001433 1217 XL0021, XX0021 001434 1226 XL0023, XX0023 001435 1245 XL0024, XX0024 001436 1250 XL0012, XX0012 001437 1253 XL0014, XX0014 001440 1256 XL0041, XX0041 001441 1261 XL0043, XX0043 001442 1264 XL0004, XX0004 001443 1267 XL0007, XX0007 001444 1272 XL0011, XX0011 001445 1275 XL0045, XX0045 001446 1312 XL0006, XX0006 001447 1315 XL0020, XX0020 001450 1320 XL0026, XX0026 001451 1323 XL0032, XX0032 001452 1326 XL0013, XX0013 001453 1331 XL0017, XX0017 001454 1334 XL0027, XX0027 001455 1353 XL0005, XX0005 001456 1356 XL0010, XX0010 001457 1361 XL0025, XX0025 001460 1364 XL0030, XX0030 001461 1373 XL0031, XX0031 001462 1402 XL0033, XX0033 001463 1411 XL0034, XX0034 001464 1444 XL0035, XX0035 001465 1463 XL0036, XX0036 001466 1472 XL0037, XX0037 001467 1503 XL0042, XX0042 001470 1510 XL0044, XX0044 001471 1515 XL0003, XX0003 001472 1520 XL0022, XX0022 001473 1527 XL0046, XX0046 0001 FIELD 1 1200 *XFIELD1 0000 XIND=0 011200 0240 XX0002,0240
/SNOBOL 8.2 PAL8-V13B NO DATE PAGE 2-15 011201 0000 0000 011202 7777 7777 011203 0300 XX0015,0300 011204 0000 0000 011205 7777 7777 011206 0000 XX0040,0000 011207 0000 0000 011210 7777 7777 011211 0211 XX0001,0211 011212 0000 0000 011213 7777 7777 011214 0241 XX0016,0241 011215 0000 0000 011216 7777 7777 011217 6711 XX0021,6711 011220 0316 0316 011221 5725 5725 011222 5324 5324 011223 0000 0000 011224 0000 0000 011225 7777 7777 011226 6701 XX0023,6701 011227 2325 2325 011230 6317 6317 011231 1640 1640 011232 6701 6701 011233 1720 1720 011234 6640 6640 011235 4650 4650 011236 6640 6640 011237 1317 1317 011240 5240 5240 011241 4716 4716 011242 0240 0240 011243 0277 0277 011244 7777 7777 011245 0331 XX0024,0331 011246 0000 0000 011247 7777 7777 011250 0272 XX0012,0272 011251 0000 0000 011252 7777 7777 011253 0252 XX0014,0252 011254 0000 0000 011255 7777 7777
/SNOBOL 8.2 PAL8-V13B NO DATE PAGE 2-16 011256 0232 XX0041,0232 011257 0000 0000 011260 7777 7777 011261 0242 XX0043,0242 011262 0000 0000 011263 7777 7777 011264 0253 XX0004,0253 011265 0000 0000 011266 7777 7777 011267 0243 XX0007,0243 011270 0000 0000 011271 7777 7777 011272 0273 XX0011,0273 011273 0000 0000 011274 7777 7777 011275 6303 XX0045,6303 011276 7714 7714 011277 6323 6323 011300 7311 7311 011301 6307 6307 011302 2640 2640 011303 6322 6322 011304 7722 7722 011305 5322 5322 011306 0640 0640 011307 0000 0000 011310 0000 0000 011311 7777 7777 011312 0274 XX0006,0274 011313 0000 0000 011314 7777 7777 011315 0244 XX0020,0244 011316 0000 0000 011317 7777 7777 011320 0334 XX0026,0334 011321 0334 0334 011322 7777 7777 011323 0334 XX0032,0334 011324 0246 0246 011325 7777 7777 011326 0255 XX0013,0255 011327 0000 0000 011330 7777 7777 011331 0275 XX0017,0275
/SNOBOL 8.2 PAL8-V13B NO DATE PAGE 2-17 011332 0000 0000 011333 7777 7777 011334 6315 XX0027,6315 011335 2317 2317 011336 6325 6325 011337 2714 2714 011340 6323 6323 011341 2240 2240 011342 6717 6717 011343 2703 2703 011344 6315 6315 011345 7305 7305 011346 6324 6324 011347 2305 2305 011350 0272 0272 011351 0000 0000 011352 7777 7777 011353 0246 XX0005,0246 011354 0000 0000 011355 7777 7777 011356 0276 XX0010,0276 011357 0000 0000 011360 7777 7777 011361 0316 XX0025,0316 011362 0000 0000 011363 7777 7777 011364 6256 XX0030,6256 011365 3316 3316 011366 6673 6673 011367 2656 2656 011370 0303 0303 011371 0000 0000 011372 7777 7777 011373 6656 XX0031,6656 011374 3703 3703 011375 6673 6673 011376 7240 7240 011377 0246 0246 011400 0000 0000 011401 7777 7777 011402 6256 XX0033,6256 011403 4724 4724 011404 6324 6324 011405 2714 2714 011406 0240 0240 011407 0000 0000 011410 7777 7777
/SNOBOL 8.2 PAL8-V13B NO DATE PAGE 2-18 011411 6656 XX0034,6656 011412 0301 0301 011413 6273 6273 011414 0656 0656 011415 5303 5303 011416 7273 7273 011417 6306 6306 011420 0714 0714 011421 6307 6307 011422 1640 1640 011423 6301 6301 011424 4720 4720 011425 7324 7324 011426 6301 6301 011427 6311 6311 011430 2732 2732 011431 5640 5640 011432 5642 5642 011433 6656 6656 011434 2716 2716 011435 6315 6315 011436 2702 2702 011437 5722 5722 011440 0640 0640 011441 0000 0000 011442 0000 0000 011443 7777 7777 011444 6656 XX0035,6656 011445 0324 0324 011446 5640 5640 011447 5670 5670 011450 5256 5256 011451 0302 0302 011452 5262 5262 011453 7273 7273 011454 5703 5703 011455 5727 5727 011456 5240 5240 011457 3336 3336 011460 0336 0336 011461 0336 0336 011462 7777 7777 011463 6256 XX0036,6256 011464 4706 4706 011465 5714 5714 011466 5714 5714 011467 0256 0256 011470 0320 0320 011471 7777 7777 011472 5256 XX0037,5256 011473 0302 0302 011474 5262 5262
/SNOBOL 8.2 PAL8-V13B NO DATE PAGE 2-19 011475 7273 7273 011476 5716 5716 011477 5706 5706 011500 0336 0336 011501 0336 0336 011502 7777 7777 011503 5656 XX0042,5656 011504 5720 5720 011505 0336 0336 011506 0000 0000 011507 7777 7777 011510 5656 XX0044,5656 011511 5720 5720 011512 0000 0000 011513 0000 0000 011514 7777 7777 011515 0257 XX0003,0257 011516 0000 0000 011517 7777 7777 011520 6717 XX0022,6717 011521 2325 2325 011522 6720 6720 011523 2325 2325 011524 0272 0272 011525 0000 0000 011526 7777 7777 011527 6717 XX0046,6717 011530 2325 2325 011531 6720 6720 011532 2325 2325 011533 6640 6640 011534 1305 1305 011535 6722 6722 011536 1317 1317 011537 0240 0240 011540 0241 0241 011541 7777 7777 1542 XTOP=. $$$
/SNOBOL 8.2 PAL8-V13B NO DATE PAGE 3 ASK 0325 XASC 0170 XORC 0002 XX0041 1256 ASKO 0337 XBASE 0172 XPAT 0167 XX0042 1503 ASKOP 0351 XDEVS 0175 XPOP 0162 XX0043 1261 AUTO 1420 XENTER 0164 XPOPJ 0160 XX0044 1510 CALSEQ 1073 XEQC 0001 XPUSH 0161 XX0045 1275 CAPSYM 1422 XFENC 0003 XPUSHJ 0157 XX0046 1527 CERROR 1234 XFIELD 1200 XP0001 0400 X0 1400 CODE 0507 XFILSI 0176 XP0002 0600 COMSYM 1423 XFLC 0004 XP0003 1000 ENEND 1220 XICLOS 0165 XP0004 1200 ENLOOP 1145 XICLTB 0174 XSUCCE 0177 ENTRYS 1137 XIND 0000 XTOP 1542 EOF 1226 XINDRC 0173 XVLEN 0026 FC 1411 XINIT 0156 XXCLRV 0000 FD 1417 XINT 0171 XXCLV 0001 FE 1415 XLOOKU 0163 XXFNDS 0002 FG 1413 XL0001 1431 XXGETC 0003 FL 1410 XL0002 1426 XXPUTL 0004 FM 1412 XL0003 1471 XXPUTV 0005 FP 1403 XL0004 1442 XXPVR 0006 FR 1406 XL0005 1455 XXSVCH 0007 FR2 1407 XL0006 1446 XXTOP 0010 FS 1404 XL0007 1443 XXWRCH 0011 FS2 1405 XL0010 1456 XX0001 1211 FT 1416 XL0011 1444 XX0002 1200 FV 1414 XL0012 1436 XX0003 1515 GLOBAL 1073 XL0013 1452 XX0004 1264 INPUT 0020 XL0014 1437 XX0005 1353 IOBAD 1242 XL0015 1427 XX0006 1312 LINE 1421 XL0016 1432 XX0007 1267 LOCS 1073 XL0017 1453 XX0010 1356 LOGIC 1073 XL0020 1447 XX0011 1272 LOOP 0507 XL0021 1433 XX0012 1250 MINUS 0507 XL0022 1472 XX0013 1326 OUTCAP 1100 XL0023 1434 XX0014 1253 OUTHOL 0023 XL0024 1435 XX0015 1203 OUTPUT 0022 XL0025 1457 XX0016 1214 PASTST 1031 XL0026 1450 XX0017 1331 PLOOP 0605 XL0027 1454 XX0020 1315 PLUS 0530 XL0030 1460 XX0021 1217 POSR 0026 XL0031 1461 XX0022 1520 READ 0021 XL0032 1451 XX0023 1226 ROUTIN 1073 XL0033 1462 XX0024 1245 S 1402 XL0034 1463 XX0025 1361 SEARCH 0615 XL0035 1464 XX0026 1320 SETUP 0501 XL0036 1465 XX0027 1334 SP 1401 XL0037 1466 XX0030 1364 SPSYM 1425 XL0040 1430 XX0031 1373 T 1400 XL0041 1440 XX0032 1323 TABLE 1073 XL0042 1467 XX0033 1402 TABSYM 1424 XL0043 1441 XX0034 1411 TABZAP 1050 XL0044 1470 XX0035 1444 VARIAB 1127 XL0045 1445 XX0036 1463 WRITE 0024 XL0046 1473 XX0037 1472 WRITEH 0025 XOCLOS 0166 XX0040 1206
ERRORS DETECTED: 0 LINKS GENERATED: 21



Feel free to contact me, David Gesswein djg@pdp8online.com with any questions, comments on the web site, or if you have related equipment, documentation, software etc. you are willing to part with.  I am interested in anything PDP-8 related, computers, peripherals used with them, DEC or third party, or documentation. 

PDP-8 Home Page   PDP-8 Site Map   PDP-8 Site Search