/ WPAX 3.3- AUTOMATIC DOCUMENT RECEIVE / / 037 CPH 19-SEP-85 Add Norwegian translations conditional / 036 EMcD 28-Feb-85 Add DECDEV switch / 036 TCW 30-AUG-84 Change var. ref. from abs. to relative / 035 WCE 11-MAY-84 Remove all occurances of USERNO / 034 TCW 24-JAN-84 Limit menu input to 64 chars. / 033 TCW 16-JAN-84 Add new label for menu display / 032 GDH 4-JAN-84 Don't display comm settings for EZLINK. / 031 TCW 30-DEC-83 ADD CK FOR PASSWORDS WITH EXTRA CHARS. / 030 TCW 16-MAY-83 ADD THE FETCH OF "LOGNO" WHEN TRUNCAT- / ING LD NAME / 029 EH 14-JAN-83 Modifications to 028 / 028 EH 04-JAN-83 Modifications to 027 / 027 EH 29-DEC-82 After trunc. AX LD to 64, check to see / if file already exists / 026 EH 21-DEC-82 Install missing CDF within AXRT7 / 025 EH 17-DEC-82 More work on 024 / 024 EH 14-DEC-82 Limit length of AX LD name to 64 chars / 023 AIB 22-OCT-82 fixed log doc entry for add to / bottom from "A" to "B" / 022 AIB 22-OCT-82 fixed wording in / "identification message" msgs / 021 EH 05-OCT-82 Check for leading space in Log Document / 020 MJS 21-NOV-81 big fix enabling 'settings' to be saved / at 'YES' prior to the start of sequence / 019 EH 9-NOV-81 modified text statement for AX menu / 018 EH 29-OCT-81 Merged differences from 78,1 into here / 017 GDH 23-OCT-81 Allow AX to send (but not recieve) LOG / 016 GDH 21-OCT-81 Merged some bug fixed from WS200 V4.4 / 015 GDH 21-OCT-81 Removed phoney CIF/CDF routines. Bug fix / to MNLOCK log document lock support. / 014 GDH 14-OCT-81 Removed log file lock/unlock code and / implemented menu lock word in it's place / 013 GDH 26-Aug-81 WPFILS calling seq changes. / 012 TT 07-JUL-81 Removed superfluous conditionals / 011 JM 01-APR-81 Changes for CANADA / 010 JM 19-FEB-81 Conditionalized PLCKFI for WS102 / 007 DRH 4-DEC-80 CLEAR AX LOG # & NAME IF CANNOT CREATE / 006 DM,JM 15-SEPT-80 Merged Scandi and Europe/English / 005 DSS 09-JUL-80 MODIFIED FOR ENGLISH/FRENCH-CANADIAN / 004 CMW 6-MAY-80 ENTERED CANADA TRANSLATIONS / 003 DSS 17-APR-80 ENTERED DUTCH FIXES / 002 3/20/80 GLT Changed LOCDOC to stop overwriting literals when / loading WPCRE. / 001 2/6/80 CMW GLT ADDED FRENCH,DUTCH,GERMAN TRANSLATIONS / French diacritical substitutions: / "["=L.A.E, "]"=L.G.E; "&" does not capitalize / German diacritical substitutions: / "["=L.U.A, "\"=L.U.O, "]"=L.U.U; "7" usable / 2.7+ MB PUT IN THE NEW AX INSTEAD OF ADR / 2.4B KEE REMOVE DEAD CODE FROM CREATE / 2.J 8/26/77 KEE PUT IN 4-FLOPPY SUPPORT / 2.G-2 8/10/77 MB PUT IN CHANGE FOR MENU AREA MOVE / 2.G-1 8/9/77 MSB PUT WT78 AND MASTER VERSIONS TOGETHER / / WTAX.PA - WRITES OUT SECOND FIELD OF THE DX, AX, SD COMM. / *200 JMP I .+3 JMP I .+1 7600 RXLOAD *RXLDLS RXEWT=4 RXEWT 0 RXQBLK=11 RXQBLK . DLOAX / ++++ 100 / ++++ IFNDEF DECDEV < CDF 20 / ++++ /M036 > IFDEF DECDEV < CDF 30 / ++++ /A036 > -DSOAX DLDCOM / ++++ DFCOMA / ++++ IFNDEF DECDEV < CDF 20 / ++++ /M036 > IFDEF DECDEV < CDF 30 / ++++ /A036 > -DSDCOM / INITALIZE THE SETTING TO ZEROS 0 / / THE SECOND FIELD OF DX AND AX / IFNDEF DECDEV < FIELD 2 > IFDEF DECDEV < FIELD 3 > / / SET UP CONSTANTS FOR THE PROGRAM / BUFSIZ=100 / THE STANDARD BUFFER SIZE NAKLM=-41 / THE IS THE NUMBER OF RETRNANSMITS IT WILL DO TOLIM=-5 / THE NUMBER OF TIMES YOU RESEND AFTER A TIME OUT SPECHR=140 / THE CODE FOR SPECIAL CHARACTERS CR=15 / SEND AFTER A TRANSFER OF ANY KIND SO T-S CAN DETECT EOT SPACE=40 / / THE TIME OUT CONSTANTS / / SEC1=-2 /D018 / SEC3=-4 /D018 / SEC60=-75 /D018 / SEC5=-6 /D018 MIN3=-265 / / THE START OF TEXT CHARACTERS / ACKM=174 ACK=170 ACKY=140 NAK=160 NAKN=164 / / THE FLAG CHARACTERS FOR THE PACKET TYPE AND THE COMMANDS FOR THE LOW LEVEL / IF THE VALUES CHANGE TELL HSTTBL BECAUSE USE THEN AS OFFSETS / THEY ALL HAVE THE SAME PACKET FORMAT / TYPYES=140 / THE OK PACKET TYPE TYPMOD=141 / DOCUMENT OPTIONS PACKET RESPONDED WITH AN ANSWER TO PROMPT TYPMES=142 TYPSOD=144 / FIRST PACKET OF A DOCUMENT CONTAINING SIZE AND PRINTER SETTINGS TYPDOC=154 / PAKCET SENT BY AX TO DX TO ASK IF THE DOCUMENT SHOULD BE SENT. / THIS NAME IS AN ENTRY IN THE LIST DOCUNET DX PICKED / TYPHIT=147 / HIGH LEVEL INITALIZE PACKET THAT HAS THE TERMINAL MESSAGE IN IT / TYPHAK=150 / THE HIGH LEVEL ACK / TYPEOF=146 / LAST PACKET OF A DOCUMENT. CONTAINS THE LAST 64 BYTES OR LESS TYPBYE=143 / BYE MESSAGE PACKET, WILL TERMINATE A TRANSFER TYPDTA=145 / NORMAL TEXT PACKET OF A DOCUMENT TYPHLO=156 TYPNO=164 / ANO RESPONSE TO A PACKET TYPFLE=171 TYPPSW=172 TYPPMT=175 / PROMPT PACKET TYPPAN=172 / ANSWER TO PROMPT CONTAINS WHAT THE USER TYPED TYPPNE=176 / PROMPT WITH NO ECHO TYPOPT=153 / THE OPTION PACKET TYPRCV=152 / WANT TO RECEIVE A DOCUMENT TYPSND=151 / WANT TO SEND A DOCUMENT / / SOME CONSTANTS FOR THE DATA BUFFERS / BUFSTX=-1 / LOCATION OF THE STX FOR THE BUFFER CSLOC=BUFSIZ / THE FIRST HALF OF THE CHECK SUM CSLO1=CSLOC+1 / THE SECOND HALF WFLOC=CSLO1+1 / THIS TELLS IF THE BUFFER IS FULL (1) OR EMPTY (0) / / THE NUMBER OF TRYS BEFORE THE USER IS DECLARED INVALID / TRYPSW=-3 / / CONSTANT FOR THE CREATE / CUB1=6400 / / ADDRESS USED FOR THE GETBUF AND PUTBUF FOR OTHER FIELD / FREEPT=174 RECPT=FREEPT+1 SENDPT=RECPT+1 / GETBUA=5200 PUTBUA=GETBUA+1 / / ASSUME THAT THE SPFLAG IS IN EDITOR FIELD AT 173 / SPFLAG=173 / / THE OPTIONS THAT ARE SET TO THE DX SYSTEM WHEN SNEDING AND DOCUMENT / EXISTS THAT IS TO RECEIVE / TBOPT=43 / / VALUES FOR THE OPTIONS / OPTNUL=40 / NOTHING OPTBYE=41 / JUST BYE MESSAGE OPTBM=42 / BYE AND NORMAL MESSAGE OPTBMS=43 / BYE, NORMAL, AND SEND OPTALL=44 / EVERYTHING / / VALUE DEFINED TO GET THE CORRECT VERSION OF CREATE WPCRE ASSEMBLED / ADRASM=1 / / THESE CONSTANTS ARE USED BY THE CHECK LIST COMMAND / THE SYMBOLS ARE THE SAME AS DELETE SINCE THAT IS WHERE THE CODE WAS TAKED / DELIMB=-400 / THE SIZE OF THE BLOCK BUFFER DEBUF=4000 / ADDRESS OF THE RECORD BUFFER / TAB=11 / THE TAB VALUE LF=12 / VALUE FOR A LINE FEED CR=15 / CARRIGE RETURN BLANK=40 / ASPACE / RECLIM=-1000 / NEGATIVE THE LIMIT OR CHARACTERS IN A RECORD / DESTRP=1014 / THE START OF PRINTER CONTROL DENDP=1414 / END OF PRINTER CONTROL DESTRR=16 / START OF RULER DENDR=17 / END OF RULER / / / THE STARTING ADDRESSES OF THE BUFFERS / THIS IS THE AREA THAT IS USED FOR THE DEFAULT SETTINGS. THEY ARE STORED / FROM 5000 TO ABOUT 6000 MOST OF THE UNUSED PORTION IS USED FOR OTHER / BUFFERS AND INFORMATION IT IS ALWAYS IN COREAND WRITTEN OUT IF THERE IS A / MODIFICATION TO THE AREA. / / ADDRESS OF THE COMMUNICATIONS SETTINGS STARTING ADDRESS / DFCOMA=5000 / X=DFCOMA / DLNO=X / ++++ X=X+1 / DEFAULT LIST DOCUMENT DLSTAD=X / ++++ X=X+BUFSIZ+1 / THE LIST NAME / IDSTAD=X / ++++ X=X+BUFSIZ+1 / THE ID MESSAGE / LOGNO=X / ++++ X=X+1 / THE LOG DOCUMENT NUMBER LOGMOD=X / ++++ X=X+1 / HOW TO MODIFY IT LDSTAD=X / ++++ X=X+BUFSIZ+1 / THE LOG DOCUMENT NAME / WPSTAD=X / ++++ X=X+BUFSIZ+1 / WRITE ONLY PASSWORD BPSTAD=X / ++++ X=X+BUFSIZ+1 / READ/WRITE PASSWORD / AXIDB=X / ++++ X=X+BUFSIZ+1 / THIS IS THE DX USER'S ID TYPED. HERE TO USETHE ROOM / AXSNDA=X / ++++ X=X+11 / THE LIST OF DOCUMENTS TO SEND DX / INMBLK=X / ++++ X=X+BUFSIZ+1 / THE INPUT BUFFER FOR PACKETS RECEIVED / AXTIM=X / ++++ X=X+27 / BUFFER USED BU AXDON ROUTINE TO STORE THE TIME FOR LOG / / STARTING ADDRESS FOR THE LIST CHECK / LSTAD=6000 / THIS IS ALSO USED BY SCROLL / *100 / THE FIRST 100 LOCATIONS ARE USED FOR THE SYSTEM / CDFMYF=CDFBUF / WE'RE IN THE BUFFER FIELD. /M015 / / THE FLAGS FOR AX / OPTFLG, 0 / THIS CONTAINS THE VALUE OF THE OPTIONS THAT THE CONNECTING / SYSTEM HAS AXFLG, 0 ERFLAG, 0 GETBUF, 0 PUTBUF, 0 AXDCF, 0 AXPCN, 0 AXSNT, 0 AXSNS, 0 AXST2, 0 / TOKOFF, 0 / POINTER TO THE INPUT THAT IS BEING LOOKED AT / SNDLST, 0 / IF SET TO 1 THEN JUST SEND THE LIST DONT DISPLAY / ERRORS USED WHEN CALLING CHKLST AXSNDL, 0 / THE POINTER TO THE NEXT AVAILABLE LOCATION IN THE / THE LIST OF DOCUMENTS TO SEND TO DX / PAGE / / THESE ADDRESSES HAVE TO BE IN THIS ORDER AND IN THESE LOCATIONS / ALL ENTRYS TO THIS VECTOR CHOULD NEVER BE CALLED IF ITS ENTRY IS NOTDEF / IF CALLED THE PROGRAM JUMPED INTO RANDOM CODE SO HALT / AXDIS / SET UP AX / AXEC / THIS ASKS THE DX USER FOR THE INFO NEEDED AT CONNECTION / AXDON / THIS IS CALLED TO CHECK TO SEE IF THE LOG DOCUMENT IS / SET AND IF IN AX AND A DOCUMENT HAS / BEEN TRANSFERRED THEN PUT THE ENTRY INTO THE LOG. / ADRCRT / CREATE A DOCUMENT / / AXLRT / RETURN LOG FILE /D018 0 /A018 / AXSR / THE SEND /RECEIVE PART OF AX / REDSIX / READS THE SPECIAL SEVEN BIT AND RETURNS IT FROM THE / SIX BIT READ ROUTINE / WRISIX / WRITES THE SEVEN BIT RECEIVED TO THE DOCUMENT / CLASIX / INITALIZES THE REDSIX AND WRISIX ROUTINES / / ARDPRG - WILL SET THE NEEDED VARIABLES FOR AUTOMATIC / DOCUMENT RECEIVE. / AXDIS, XX CDFMYF DCA AXDCF / CLEAR THE WWRITE OUT SETTINGS FLAG / AC0001 / ++++ DCA AXFLG / TELL THE FIELD THAT IT IS IN AX / / READ IN THE DX SETTINGS / TAD (RXERD) / READ IN THE SETTINGS. IF A DISK ERROR DONT RETURN JMS AXDST / /D032; JMS LOCDOC / LOCK THE DOCUMENTS THAT ARE TO BE USED /D014; JMP AXGLD / COULD NOT LOCK THE DOCUMENTS ALREADY IN USE AXDS2, DCA MNUFLG / IF ZERO PUT FIRST MENU /A033 / CIFMNU / CLEAR THE SCREEN JMS I IOACAL 0 CLASCR 0 / CDFMNU / See if we're in ezlink (from CX) /A032 TAD I (MUBUF+MNTMP6) / ... /A032 CDFMYF / ... /A032 SNA CLA / Skip if yes. Don't display comm setngs/A032 JMP AXDS2A / DISPLAY MENUS /A033 / / THE RETURNS FROM AXDIS / AXRTX, TAD (RXEWT+2000) / write out the settings /a020 JMS AXDST / /A020 TAD LOGNO / SEE IF A LOG DOCUMENT IS SET AND IF SO DOES IT EXIST SNA CLA / ++++ JMP AXRT7 / JMS CUCOPY / BEFORE CONTINUING MAKE SURE THE LOG DOCUMENT EXISTS LDSTAD / COPY NAME TO THE MENU AREA AND LET FILNAM DECIDE CDFMYF MUBUF+MNIBUF CDFMNU BUFSIZ / CDFMNU /A025 DCA MUBUF+MNIBUF+BUFSIZ / TERMINATE THE FILE NAME /A025 / TAD (MUBUF+MNIBUF) / TELL FILNAM WHERE TO LOOK CDFMNU DCA I (MUBUF+MNPOS / /M036 AC0001 DCA I (MUBUF+MNTMP1) CDFMYF / CIFMNU JMS I MNUCAL DLMAD6 / CDFMNU TAD I (MUBUF+MNTMP1) CDFMYF / SMA CLA / ++++ JMP AXRT2 / FILE EXISTS IF +1 AND DOESNT IF -1 / CIFMNU JMS I IOACAL / PUT UP ERROR MESSAGE 0 LOGER1 0 1205 / USE MULTIPLE LINES SO WE CAN SEE /A034 1405 / COMPLETE DOC. NAME /A034 LDSTAD 1605 / /A034 / CIFMNU JMS I IOACAL 0 LOGER2 2005 / /A034 / JMP AXRT4 AXRT3, CIFSYS / ++++ JWAIT AXRT4, CIFSYS / ++++ XLTIN JMP AXRT3 / TAD (-EDNWLN) SNA CLA / ++++ JMP AXGLD / ACT IF A GOLD MENU RETURN - GO TO MAIN TAD (7) JMP AXRT5 AXRT6, CIFSYS / ++++ JWAIT AXRT5, CIFSYS / ++++ TTYOU JMP AXRT6 JMP AXRT4 AXRT2, CDFMNU / COPY THE DOCUMENT NUMBER TAD I (MUBUF+MNFNO) CDFMYF / DCA LOGNO AXRT7, TAD LOGNO / GET THE LOG DOC #. /A015 CDFMNU / STICK LOG FILE # INTO MENU FIELD. THIS/A015 DCA I (MUBUF+MNLOCK) / WILL EFFECTIVLY LOCK IT FROM UPDATE! /A015 CDFMYF / BACK TO MY FIELD /A026 ISZ AXDIS / OK SKIP RETURN MEANS CONTINUE AXGLD, CLA / IF USER TYPED GM TAD (RXEWT+2000) / DO A WRITE JMS AXDST / CDIEDT JMP I AXDIS / / AXLRT - UNLOCK THE LOG FILE / /AXLRT, XX /D018 /D014;/ /D014; IFDEF WS102 < /D014; CDFMYF /D014; CIFPRT /D014; JMS I (ULKFIL) /D014; LOGNO /D014; USERNO /D014;/ /D014; > /D014;/ / CLA /D018 /D015; CDFMNU / CHANGE TO MENU FIELD. /A014 /D015; DCA I (MUBUF+MNLOCK) / CLEAR MENU LOCK WORD. /A014 / CDIEDT /D018 / JMP I AXLRT /D018 / PAGE / / THE VALUES RETURNED BY THE MENU / DLVAL=1 IDVAL=DLVAL+1 LDVAL=IDVAL+1 WPVAL=LDVAL+1 BPVAL=WPVAL+1 / / THIS WILL DISPLAY THE MAIN AX MENU AXDS2A, / NEW LABEL /A033 / JMS AXDIL / DISPLAY THE LIST / MESFT2 0305 0405 IDSTAD / MESFT3 0605 0705 LDSTAD / MESFT4 1105 1205 WPSTAD / MESFT5 1405 1505 BPSTAD / MESFT1 1705 2005 DLSTAD / 0 / / / THE MENUS THAT ARE USED FOR THE COMMUNICATIONS SETTINGS / JMS A19SET / LIMIT INPUT TO 64 CHARS. /A034 CIFMNU / DISPLAY THE MENU PORTION JMS I MNUCAL DLMA19 / AXDS7, TAD T1 / RESTORE INPUT BUFFER LENGTH /A034 CDFMNU DCA I (MUBUF+MNILEN) / /A034 /D034 CDFMNU TAD I (MUBUF+MNTMP1) CDFMYF / DCA AXDT6 / SAVE THE VALUE OF TEMP1 / TAD AXDT6 / USE THE VALUE TO GET THE ACTION / TAD (JMP I AXTBL) / USE THE VALUE IN MNTMP1 FOR AN INDEX TO THE DCA .+1 XX / ROUTINE TO CALL / AXDS4, CLA TAD AXDT6 TAD (AXPBA-1) DCA AXDT4 / COPY THE INPUT INTO THE CORRECT AREA TAD I AXDT4 DCA AXDT4 / CDFMNU / WANT TO COPY THE INPORTANT INFORMATION ONLY TAD I (MUBUF+MNPOS / /M036 CDFMYF / DCA AXDT5 / AXDJ2, CDFMNU TAD I AXDT5 / STRIP ANY LEADING SPACES CDFMYF / TAD (-40) SZA CLA / ++++ JMP AXDJ1 ISZ AXDT5 JMP AXDJ2 / AXDJ1, JMS CUCOPY AXDT5, XX CDFMNU AXDT4, XX CDFMYF BUFSIZ+1 / COPY THE LARGEST PLUS 1 / AC0100 / BUT A ZERO WORD ON THE END INCASE THE STRING TAD AXDT4 / TOO BIG DCA T1 DCA I T1 / AC0001 / ++++ DCA AXDCF / SET THE MODIFY FLAG / AXDS5, TAD MNUFLG / IF SET TO NOT ZERO DISPLAY THE SECOND MENU SNA CLA / ++++ JMP AXDS2 AXDS9, AC0001 / ++++ DCA MNUFLG / JMS A19SET / LIMIT INPUT TO 64 CHARS. /A034 CIFMNU JMS I MNUCAL DLMA20 / JMP AXDS7 / SEE WHAT WAS RETURNED AXMDL, CDFMNU / THE DEFAULT LIST TAD I (MUBUF+MNTMP2) CDFMYF / SNA SPA CLA / ++++ JMP AXMD1 / IF MINUS OR ZERO NOTHING THERE / CDFMNU TAD I (MUBUF+MNFNO) CDFMYF / AXMD1, DCA DLNO JMP AXDS4 / COPY THE NAME AXDGM, TAD MNUFLG / IF GM TYPED FROM THE SECOND MENU THEN DISPLAY THE FIRST SNA CLA / ++++ JMP AXGLD / IF IN THE FIRST RETURN TO MAIN MENU JMP AXDS2 / / THESE ADDRESS ARE THE LIST OF ROUTINES THAT CAN BE CALLED BY USING THE / VALUE IN MNTMP1 FOR AN OFFSET FOR THE LIST / AXTBL, AXRTX / 0START THE COMMUNICATIONS AXMDL / 1DEFAULT LIST DOCUMENT AXDS4 / 2ID MESSAGE AXDLG / 3LOG DOCUMENT AXDS4 / 4WRITE PASSWORD AXDS4 / 5READ/WRITE PASSWORD AXDS3 / 6TEST LIST AXDS5 / 7RE-DISPLAY THE MENU AXDGM / 10 GOLD MENU TYPED FROM THE MAIN COM MENUS AXDS9 / 11 NO RESPONSE TO FIRST COM MENU / / THIS IS THE TABLE OF ADDRESS FOR THE COMMUNICATIONS SETTINGS. THAT ARE / USED BY THE COPY COMAND USING THE POSITIVE NON ZERO VALUE FROM MENU IN TMP1 / AXPBA, DLSTAD IDSTAD LDSTAD WPSTAD BPSTAD / MNUFLG, 0 / IF ZERO DISPLAY THE FIRST MENU IF 1 THEN THE SECOND AXDT6, 0 / TEMP FOR TEMP1 FORM MENU / PAGE / / DISPLAY THE DEFAULT SETTINGS / / CALL: / JMS AXDIL / IOA TEXT STRING ADDRESS / AX1 / ARG2 / ADDRESS OF BUFFER IF CONTENTS IS ZERO THEN NOT DISPLAYED / TERMINATOR = 0 / / THE ROUTINE CAN BE CALLED WITH TRIPPLES ENDING WITH A 0. / AXDIL, XX AXDLP, TAD I AXDIL / GET THE FIRDT ARG AND CHECK FOR TERMINATOR ISZ AXDIL SNA / ++++ JMP I AXDIL DCA AXDT1 / TAD I AXDIL / GET THE SECOND ARG ISZ AXDIL DCA AXDT2 / TAD I AXDIL / THE THIRD ARG ISZ AXDIL DCA AXDT3 / TAD I AXDIL / GET THE BUFFER ADDRESS IF CONTENTS IS ZERO DONT DISPLAY ISZ AXDIL DCA AXDT7 / TAD I AXDT7 / SEE IF IT IS TO BE DISPLAYED / SNA CLA / ++++ JMP AXDLP / CIFMNU JMS I IOACAL 0 AXDT1, XX AXDT2, XX AXDT3, XX AXDT7, XX / JMP AXDLP / / PROCESS THE LOG DOCUMENT / AXDLG, CDFMNU TAD I (MUBUF+MNPOS / GET POINTER TO STRING /M036 DCA AXDLT / CAN ONLY BE DONE SINCE ON THE SAME PAGE / / The following check removes the leading space if the Log Document / name is entered using the short form (ie LD DOCUMENT) TAD I AXDLT / GET FIRST CHAR IN INPUT STRING /A021 TAD (-40 / IS IT A SPACE (40)? /A021 SNA CLA / SKIP IF: NOT A SPACE /A021 ISZ AXDLT / FIRST CHAR IS A SPACE, BUMP /A021 / POINTER TO FIRST VALID CHAR /A021 / TAD I (MUBUF+MNFNO) / GET THE DOCUMENT NUMBER CDFMYF / DCA LOGNO / JMS CUCOPY / FIRST COPY OVER THE NAME TYPED IN AXDLT, XX CDFMNU LDSTAD CDFMYF BUFSIZ+1 / DCA LDSTAD+BUFSIZ / THIS MAKES SURE OF A ASCIIZ STRING / CDFMNU / CHECK THE STATUS MNTMP2 TAD I (MUBUF+MNTMP2) / IF + = DOCUMENT EXISTS, 0 = CREATE, - = NOTHING CDFMYF / SMA SZA / ++++ JMP AXDL2 SZA CLA / ++++ JMP AXDL3 / JMS AXDL5 / BEFORE CREATING THE DOCUMENT, CHECK /A024 / THAT THE NAME IS .LT. OR .EQ. TO 64 /A024 / CHARACTERS /A024 / AXDL3, DCA LOGNO JMP AXDS5 AXJ1E, /ROUTINE CLEARS LOG # & NAME IF CANNOT CREATE /D021 CLA /CLEAR AC /A007 AC0004 / PUT UP CANNOT CREATE MESSAGE CDFMNU DCA I (MUBUF+MNTMP1) CDFMYF / / The following 2 instructions were moved from AXJ1E to here in order / that the CLA could be removed to save room /M021 DCA LOGNO /CLEAR LOG DOCUMENT NUMBER /A007 DCA LDSTAD /CLEAR LOG DOCUMENT NAME /AOO7 / CIFMNU JMS I MNUCAL DLMAD7 / JMP AXGLD AXDL2, AC0002 / DOCUMENT EXISTS SO PUT UP THE HOW TO MODIFY MENU / CDFMNU DCA I (MUBUF+MNTMP1) CDFMYF / JMS A19SET / LIMIT INPUT BUFFER TO 64 CHARS /A034 CIFMNU JMS I MNUCAL DLMAD6 / TAD T1 / RESTORE INPUT BUFFER LENGTH /A034 CDFMNU DCA I (MUBUF+MNILEN) / /A034 AC7776 / FIRST CHECK FOR GOLD MENU TAD I (MUBUF+MNTMP1) CDFMYF / SNA CLA / ++++ JMP AXDL4 / CDFMNU TAD I (MUBUF+MNTMP2) / GET THE OPEN TYPE CDFMYF / DCA LOGMOD / SAVE THE VALUE / JMP AXDS5 / AXDL4, DCA LOGNO / CLEAR THE NUMBER DCA LDSTAD / AND THE DISPLAY / / Need room - now fall through and use same return as does AXDS3 /M021 /D021 JMP AXDS2 / / AXDS3 - CHECKS THE LIST DOCUMENT FOR VALID ENTRYS / AXDS3, JMP AXDS2 / NORMAL RETURN MESFT1, IFDEF ENGLSH < TEXT '^P&THE DEFAULT LIST IS:^P^A' > / / CHANGED FOR ROOM / IFDEF CANADA < TEXT "^P&LA LISTE ATTRIBU[E PAR D[FAUT:^P^A" > /L.A.E, L.A.E / IFDEF ITALIAN< TEXT /^P&LISTA STANDARD:^P^A/ > IFDEF CANADA < TEXT "^P&FAUTE DE LISTE:^P^A" > IFDEF FRENCH < TEXT "^P&FAUTE DE LISTE :^P^A" > IFDEF DUTCH < TEXT "^PAANNAME L[ST :^P^A" > IFDEF GERMAN < TEXT "^P&ANGENOMMENE &LISTE:^P^A" > IFDEF NORWAY < TEXT '^P"&DEFAULT"-LISTEN ER:^P^A' > IFDEF SWEDSH < TEXT '^P"&DEFAULT"-LISTAN [R:^P^A' > /L.U.A IFDEF DANISH < TEXT '^P"&DEFAULT"-LISTEN ER:^P^A' > IFDEF V30SWE < TEXT '^P&SK\VNSV\DRDESLISTAN \DR: ^P^A'> / / PAGE / / ERROR MESSAGES FOR THE LOG DOCUMENT ERROR DISPLAY IN AXDIS / LOGER2, IFDEF ENGLSH < TEXT '^P&PRESS &R&E&T&U&R&N FOR THE &MAIN &MENU.' > IFDEF ITALIAN< TEXT /^P&PREMERE !&RITORNO PER TORNARE AL &MENU &PRINCIPALE./> IFDEF CANADA < TEXT "^P&APPUYER SUR &RETOUR POUR RAPPELER LE &MENU." > IFDEF FRENCH < TEXT "^P&APPUYER SUR &RETOUR POUR RAPPELER LE &MENU" > IFDEF DUTCH < TEXT "^P&RETURN INTOETSEN VOOR &HOOFD &MENU" > IFDEF GERMAN < TEXT "^P&MIT &RETURN ZUR]CK ZUM &HAUPT &MEN]" > /L.U.U, L.U.U IFDEF NORWAY < TEXT "^P&TRYKK &RETUR FOR ] F] &HOVEDMENYEN." > /L.D.A, L.D.A IFDEF SWEDSH < TEXT "^P&TRYCK P] &RETUR F\R ATT F] &HUVUDMENYN." > /L.D.A, L.U.O, L.D.A IFDEF DANISH < TEXT "^P&TRYK &RETUR FOR AT F] &HOVEDMENUEN." > /L.D.A IFDEF V30SWE < TEXT "^P&TILLBAKA TILL HUVUDMENYN: ANV\DND GULD MENY"> / LOGER1, IFDEF ENGLSH < TEXT '^P!E^P&LOG &DOCUMENT^P^A^PDOES NOT EXIST,' > IFDEF ITALIAN< TEXT /^P!E^P&PROCEDURA DI COLLEGAMENTO^P^A^PNON ESISTE,/> IFDEF CANADA < TEXT "^P!E^P&LE DOCUMENT-R[PERTOIRE ^A N'EXISTE PAS," > IFDEF FRENCH < TEXT "^P!E^P&LE DOCUMENT ^A N'EXISTE PAS," > IFDEF DUTCH < TEXT "^P!E^P&LOGBOEK ^A BESTAAT NIET," > IFDEF GERMAN < TEXT "^P!E^P&LOG &DATEI ^A EXISTIERT NICHT,"> IFDEF NORWAY < TEXT '^P!E^P"&LOG"-DOKUMENT ^A EKSISTERER IKKE.' > IFDEF SWEDSH < TEXT '^P!E^P"&LOG"-DOKUMENT ^A EXISTERAR INTE.' > IFDEF DANISH < TEXT '^P!E^P"&LOG"-DOKUMENT ^A EKSISTERER IKKE.' > IFDEF V30SWE < TEXT '^P!E^P"&INLOGGNINGSDOKUMENTET ^P^A^P FINNS INTE'> / / / CLASIX - INITALIZE THE VALUES IN REDSIX AND WRISIX / CLASIX, XX CLA RDF / IF CROSS FIELD CALLED MAKE SURE RETURNS CORRECTLY TAD CIDF0 DCA CLASXX / CDFMYF DCA WRSHIF / WRITE SHIFT FLAG DCA WRIVBF / VERTICAL BAR ESCAPE FLAG DCA WRIBES / ESCAPE / DCA REDNXT / BUFIF RETURNING A 2 CHARACTER ESCAPE THE SECOND CHARACTER / IS STORED HERE FOR NEXT CALL DCA REDESF DCA REDSHF DCA REDSXC / CLASXX, XX JMP I CLASIX / / AXCRT - CREATE THE DOCUMENT TO RECEIVE / AXCRT, CLA TAD AXSRT2 / IF RECEIVE RETURN ERROR SZA CLA / ++++ JMP AXSNO JMS ADRCRT JMP AXSNO / DCA AXSRNO DCA AXSRMO / TAD ("C-200) / SET THE MOD VALUE FOR LOG DOCUMENT IF SET FOR / AX AND LOG IN AFFECT DCA CUPMOD / JMP AXSROK / RETURN / / THE ROUTINE WILL SEND THE CHARACTER IN THE AC TO THE SCREEN / DELDIS, XX JMP DELDI2 DELDI1, CIF 0 / ++++ JWAIT DELDI2, CIF 0 / ++++ TTYOU JMP DELDI1 CLA JMP I DELDIS / / SPTEST - SEE IF THE SPFLAG IS SET WHICH MEANS TO RETURN / SPTEST, /M018 XX CLA CDFEDT TAD I (SPFLAG) CDFMYF / SNA CLA ISZ SPTEST JMP I SPTEST / / PART OF WRISIX / WRSEND, /A018 XX /A018 CLA /A018 TAD T1 / IF ZERO THEN ENO OF FILE /A018 SZA CLA /A018 JMP I WRSEND /A018 TAD (74) / END OF DOCUMENT IN UPPER CASE /A018 CIFFIO /A018 FILEIO /A018 XPUTSB /A018 CLA /A018 JMP I WRSEND /A018 PAGE / / AXDST - WILL READ OR WRITE THE COMMUNICATIONS SETTINGS DEPENDING ON THE / VALUE IN THE AC. THE AC CONTAINS THE FUNCTION TO EXECUTE. / AXDST, XX DCA QUQBLK+RXQFNC / SET THE FUNCTION / CDFMYF TAD .-1 / SET THE BUFFER FIELD DCA QUQBLK+RXQBFD / /D035 TAD USERNO / SET THE DRIVE /D035 TAD USERNO DCA QUQBLK+RXQDRV / TAD (DLDCOM) / SET THE BLOCK TO READ DCA QUQBLK+RXQBLK / TAD (DFCOMA) / SET THE BUFFER TO READ INTO DCA QUQBLK+RXQBAD / JMS QURX / GET THE BLOCK CLA / ISZ QUQBLK+RXQBLK / GET THE NEXT BLOCK / TAD (DFCOMA+400) DCA QUQBLK+RXQBAD / JMS QURX CLA / JMP I AXDST / / AXSNO - SENDS THE NO RESPONSE / THIS IS PART OF AXSR ROUTINE / AXSNO, JMS AXSRPK NOANS TYPNO / JMP AXSNOX / / / AXSRPK - SENDS A PACKET USING AXSNP. IT USES THE SAME CALL MINUS THE ERROR RETURNS / THIS ROUTINE CAN ONLY BE CALLED BY THE AXSR ROUTINE / / CALL / JMS AXSRPK / ADDRESS OF TEXT PART / TYPE OF PACKET / AXSRPK, XX TAD I AXSRPK ISZ AXSRPK DCA AXSRP1 / TAD I AXSRPK ISZ AXSRPK DCA AXSRP2 / JMS AXSNP AXSRP1, XX AXSRP2, XX / JMP AXSNOX / SPFLAG RETURN JMP AXSNOX / TIMED OUT / JMP I AXSRPK / / AXSNO2 - SEND LIST NOT IMPLEMENTED YET MESSAGE IF THE USER TRIES TO USE / ALIST SPECIFICATION. / AXSNO2, JMS AXSRPK NOEXST TYPNO / JMP AXSNOX / NOEXST, IFDEF ENGLSH < "L-200 / L "I-200 / I "S-200 / S "T-200 / T " -200 / Space "D-200 / D "O-200 / O "C-200 / C "U-200 / U "M-200 / M "E-200 / E "N-200 / N "T-200 / T " -200 / Space "O-200 / O "P-200 / P "T-200 / T "I-200 / I "O-200 / O "N-200 / N " -200 / Space "N-200 / N "O-200 / O "T-200 / T " -200 / Space "I-200 / I "M-200 / M "P-200 / P "L-200 / L "E-200 / E "M-200 / M "E-200 / E "N-200 / N "T-200 / T "E-200 / E "D-200 / D 0000 > IFDEF ITALIAN < "O-200 / O "P-200 / P "Z-200 / Z "I-200 / I "O-200 / O "N-200 / N "E-200 / E " -200 / SPACE "D-200 / D "O-200 / O "C-200 / C "U-200 / U "M-200 / M "E-200 / E "N-200 / N "T-200 / T "O-200 / O " -200 / SPACE "L-200 / L "I-200 / I "S-200 / S "T-200 / T "A-200 / A " -200 / SPACE "N-200 / N "O-200 / O "N-200 / N " -200 / "I-200 / I "M-200 / M "P-200 / P "L-200 / L "A-200 / A "M-200 / M "E-200 / E "N-200 / N "T-200 / T "A-200 / A "T-200 / T "A-200 / A 0000 > / / THIS ROUTINE WILL CHANGE THE BUFFER LENGTH IN THE MENU FIELD /A034 / AND SAVE THE OLD VALUE IN T1. /A034 / UPON RETURN FROM THE MENU CALL THE OLD VALUE MUST BE RESTORED /A034 / A19SET, XX / /A034 CLA / /A034 CDFMNU / /A034 TAD I (MUBUF+MNILEN) / FETCH VALUE USED BY THE SYSTEM /A034 CDFMYF / /A034 DCA T1 / SAVE HERE /A034 TAD (-BUFSIZ-1 / THIS WILL LIMIT INPUT TO 64 CHARS. /A034 CDFMNU / /A034 DCA I (MUBUF+MNILEN) / INTO MENU AREA /A034 CDFMYF / /A034 JMP I A19SET / /A034 / PAGE / / AXEC - WILL CONNECT THE DX USER TO THE AX SYSTEM. IT / WILL PROMPT FOR THE INFORMATION NEEDED TO CONNECT. / AXEC, XX CLA / CDFEDT TAD I (GETBUA) / GET THE ADDRESS OF GET AND PUT BUFFER / DCA GETBUF / TAD I (PUTBUA) DCA PUTBUF CDFMYF / TAD (OPTALL) / SET THE OPTIONS TO ALL INITALLY DCA OPTFLG / /D016; CIFMNU /D016; JMS I IOACAL / PUT UP THE MESSAGE OF CONNECTION /D016; 0 /D016; TRYCON /D016; 505 /D016; 2700 / AXSG2, TAD IDSTAD / SEE IF THERE IS AN ID MESSAGE TO SEND SNA CLA / ++++ JMP AXECJ / JMS AXSPK / SEND THE MESSAGE IDSTAD TYPMES / CLA JMP AXECJ AXECX, CLA TAD OPTFLG / RETURN THE DX USER OPTIONS / CDIEDT ISZ AXEC / A2- SKIP RETURN IF OK ISZ AXEC JMP I AXEC AXSP, ISZ AXEC / GO AND WAIT FOR SOMETHING TO DO BUT DONT CONTINUE / THE CONNECTION SEQUENCE AXTO, CLA CDIEDT / RESTART AFTER A TIME OUT / JMP I AXEC AXFLE, 0 / / AXSPK - SENDS A PACKET AND TAKES CARE OF ALL THE ERROR RETURNS / FOR AXEC ROUTINE. IT CALLS AXSNP / AXSPK, XX CLA / Clear the AC TAD I AXSPK / Get the pointer to the message list ISZ AXSPK / Set to skip it on return DCA AXSPK1 / Store the argument / TAD I AXSPK / Get the Next argument ISZ AXSPK / Set to skip it on return DCA AXSPK2 / Store this argument too / JMS AXSNP / Send the packet AXSPK1, XX / Message address AXSPK2, XX / Second parameter / JMP AXSP / MAIN MENU SAID RETURN JMP AXTO / TIMED OUT TRYING TO SEND / JMP I AXSPK / Return / / / AXEJC - CLEARS THE DX USERS SCREEN AFTER A BAD PASSWORD TYPED / AXEJC, CLA TAD (-TRYPSW) / SEE IF THERE WAS A MISTAKE MADE TAD AXPCN SNA CLA / ++++ JMP AXEJ3 / JMS AXSPK CLAMES TYPMES / JMP AXEJ3 / / USED AXSR TO GET THE NAME OF THE DOCUMENT AND THE DRIVE NUMBER / AXSRFD, XX CLA CDFMNU TAD I (MUBUF+MNDRV) CDFMYF / DCA CUPDRV / JMS CUCOPY / NOW THE NAME MUBUF+MNIBUF CDFMNU CUPFNM CDFMYF BUFSIZ+1 / JMP I AXSRFD / / THIS ROUTINE CHECKS TO MAKE SURE THAT THE LD NAME TO BE CREATED IS / .LT. OR .EQ. TO 64 CHARACTERS IN LENGTH. IF LONGER, TRUNCATE THE / NAME TO BE 64 CHARACTERS IN LENGTH, AND THEN CHECK TO SEE IF THIS / FILE ALREADY EXISTS. AXDL5, /A024 XX / RETURN ADDRESS /A024 CDFMNU / /A029 TAD (MUBUF+MNIBUF) / POINTER TO THE INPUT STRING /A029 CIA / MAKE NEG FOR COMPARE /A029 CDFMYF / /A029 TAD AXDLT / TO START OF LOG DOC NAME /A029 TAD (100) / POINT TO 65TH CHAR /A028 CDFMNU / /A028 TAD (MUBUF+MNIBUF) / IN THE INPUT STRING (LD NAME) /A028 DCA TEMP / AND SAVE THE POINTER /A028 TAD I TEMP / GET THE 65TH CHAR /A028 SPA SNA CLA / SKIP IF: NON-VALID TERMINATOR /A028 JMP AXDL6 / VALID TERMINATOR /A028 DCA I TEMP / INSERT THE LD TERMINATOR /A028 AC0001 / /A027 CDFMNU / MENU FIELD /A027 DCA I (MUBUF+MNTMP5) / SIGNIFIES MENU TO CHECK FILENAME /A027 DCA I (MUBUF+MNTMP3) / CLEAR TMP3 /A028 CDFMYF / MY DATA FIELD /A027 CIFMNU / /A027 JMS I MNUCAL / /A027 DLMDU7 / CHECK TO SEE IF FILE EXISTS /A027 CDFMNU / RESULT OF CHECK /A027 TAD I (MUBUF+MNTMP3) / IS IN MNTMP3 /A027 CDFMYF / BACK TO MY FIELD /A027 SMA CLA / SKIP IF: DOCUMENT DOES NOT EXISTS /A027 /D030 JMP AXDL2 / DOCUMENT EXISTS, ASK HOW TO MODIFY /A027 JMP AXDL7 / DOC. EXISTS, FETCH LOGNO /A030 AXDL6, CDFMYF / BACK TO MY FIELD /A027 JMS ADRCRT / CREATE THE DOCUMENT /M024 JMP AXJ1E / ERROR /M024 JMP I AXDL5 / RETURN TO CALLER /A024 / TEMP, 0 / POINTER TO LD NAME /A024 AXDL7, CLA / .... /A030 CDFMNU / MENU FIELD /A030 TAD I (MUBUF+MNFNO) / FETCH LOGNO /A030 CDFMYF / THIS FIELD /A030 DCA LOGNO / SAVE THE DOC. NUMBER /A030 JMP AXDL2 / NOW ASK HOW TO MODIFY /A030 PAGE / / AXECJ - WILL CHECK FOR A VALID PASSWORD / AXECJ, TAD BPSTAD / SEE IF EITHER PASSWORD IS SET TAD WPSTAD SNA CLA / ++++ JMP AXEJ3 / TAD (TRYPSW) / ++++ DCA AXPCN / SET THE LIMIT ON PASSWORD TYRS / AXEJ1, JMS AXSPK / ASK FOR THE PASSWORD PASPMT TYPPNE / AXEJ2, JMS WAITDT / WAIT FOR A STX JMP AXSP / RETURN THE MAIN PROGRAM SAYS TO JMP AXTO / TIMED OUT WAITENG / TAD (-TYPPAN) / CHECK FOR PASSWORD SZA CLA / ++++ JMP AXEJ2 / JMS AXSAM / CHECK FOR EQUAL JMP AXDNO / JMP AXEJC / AXDNO, ISZ AXPCN JMP AXEJ5 / JMS AXSPK / ILLEGAL USER ILLUSE TYPMES / JMP AXSP AXEJ5, JMS AXSPK / TELL THE USER HE TYPED THE WRONG PASSWORD BADPAS TYPMES / JMP AXEJ1 / / AXEJ3 - ASKS FOR IDENTIFICATION / AXEJ3, CLA TAD LOGNO / SEE IF IT IS NEEDED SNA CLA / ++++ JMP AXECX / JMS AXSPK / SEND THE PROMPT IDPMT TYPPMT AXEJ4, JMS WAITDT / WAIT FOR A LEGAL STX JMP AXSP / RETURN SINCE SPFLAG IS SET JMP AXTO / TIMED OUT / TAD (-TYPPAN) / LOOKING FOR AN ANSWER TO THE PROMPT SENT SZA CLA / ++++ JMP AXEJ4 / JMS CUCOPY / STORE THE ID INMBLK+1 CDFMYF AXIDB CDFMYF BUFSIZ / JMP AXECX / DONE FOR NOW RETURN TO WPTRNS / / AXSNP - SENDS A PACKET . / / CALL / JMS AXSNP / TYPE VALUE / ADDRES OF THE TEXT PART / / SPFLAG SET RETURN / TIMED OUT / / OK / AXSNP, XX CLA TAD I AXSNP / GET THE STARTING ADDRESS OF THE MESSAGE ISZ AXSNP / Set to skip it on return DCA AXST2 / Store it for send / JMP AXSNG AXSNW, CIFSYS / ++++ JWAIT JMS SPTEST / SEE IF THE MAIN PROGRAM SAID STOP JMP I AXSNP / SPFLAG SET MUST RETURN AXSNG, CIFEDT JMS I GETBUF / ++++ FREEPT / GET A BUFFER JMP AXSNW DCA AXSNT / SAVE THE STARTING ADDRESS / TAD AXSNT / CLEAR A FEW LOCATIONS DCA X1 CDFEDT DCA I X1 / THE STATUS DCA I X1 / THE SEQ. CDFMYF / TAD I AXSNP / GET THE TYPE CHARACTER ISZ AXSNP / CDFEDT DCA I X1 CDFMYF AXSNL, TAD I AXST2 / GET A CAHRACTER ISZ AXST2 SNA / ++++ JMP AXSNZ CDFEDT DCA I X1 CDFMYF JMP AXSNL AXSNZ, CDFEDT DCA I X1 / INSERT THE TRAILER CDFMYF / TAD AXSNT / SEND THE BUFFER CIFEDT JMS I PUTBUF / ++++ SENDPT / AC0001 TAD AXSNT DCA AXSNS / GET THE STATUS POSITION JMP AXSNB / TEST IT AXSNJ, CIFSYS / ++++ JWAIT JMS SPTEST / ++++ JMP AXSN2 AXSNB, CDFEDT TAD I AXSNS / CHECK FOR DONE CDFMYF SNA / ++++ JMP AXSNJ DCA AXST2 AXSN2, / TAD AXSNT / RELEASE THE BUFFER CIFEDT JMS I PUTBUF / ++++ FREEPT JMS SPTEST / ++++ JMP I AXSNP / SEE IF HAVE TO RETURN TAD AXST2 SMA CLA / ++++ ISZ AXSNP / TIMED OUT ISZ AXSNP JMP I AXSNP / PAGE / / THIS IS THE SEND/RECEIVE PART OF AX. THE AC IS = 0 FOR RECEIVE AND 1 = SEND / ON RETURN THE AC = DOCUMENT NUMBER AND THE MQ = MOD TYPE / / CALL / CIFBUF / JMS I AXSR / ADDRESS OF THE POINTER TO THE PACKET RECEIVED / / NO RETURN / YES / AXSR, XX / DCA AXSRT2 / STORE THE VALUE OF THE ROUTINE CALLED IF 0 = RECEIVE / AND 1 = SEND / TAD I AXSR / GET THE BUFFER ISZ AXSR / THE DATA FIELD IS STILL SET FOR THE CALLING FIELD / CDFMYF / DCA AXSRT3 / SAVE THE ADDRESS OF THE DOCUMENT NAME DCA AXSRNO / CLEAR THE DOCUMENT NUMBER DCA AXSRMO / AND THE MODIFICATION CODE FOR RECEIVE DCA CUPMOD / CLEAR FOR LOG DOCUMENT SO NO OLD INFO IS LEFT AROUND DCA CUPDRV DCA CUPFNM / JMS CUCOPY / COPY THE NAME PART TO SEE IF VALID NAME AXSRT3, XX CDFEDT MUBUF+MNIBUF CDFMNU BUFSIZ+1 / TAD (MUBUF+MNIBUF) / SET THE MENU'S POINTERS FOR THE BUFFER / CDFMNU DCA I (MUBUF+MNPOS / /M036 DCA I (MUBUF+MNTMP1) TAD AXSRT2 / GET AXRS MODE (0/1) /A017 DCA I (MUBUF+MNTMP2) / SAVE FOR MENU TO ALLOW SEND LOG /A017 CDFMYF / / IF TRIES TO RECEIVE A LIST TAD (MUBUF+MNIBUF-1) DCA X1 / AXSRL8, CDFMNU TAD I X1 CDFMYF / TAD (-40) / SKIP LEADING SPACES SNA / ++++ JMP AXSRL8 TAD (40-"@+200) SNA CLA / ++++ JMP AXSNO2 / CIFMNU JMS I MNUCAL / LET THE MENU CHECK FOR A VALID NAME DLMAD6 / JMS AXSRFD / GET THE NAME AND DRIVE / CDFMNU TAD I (MUBUF+MNTMP1) / GET THE RETURN VALUE CDFMYF / SNA / ++++ JMP AXCRT / SEE IF RECEIVE CREATE IT TAD (-1) SZA CLA / ++++ JMP AXSNO / IF ANYTHING BUT EXITST THEN SEND A NO / CDFMNU TAD I (MUBUF+MNFNO) / GET THE DOCUMENT NUMBER CDFMYF DCA AXSRNO / TAD AXSRT2 SZA CLA / ++++ JMP AXSROK TAD (TBOPT) / IF EXISTS THEN SEND A OPTION PACKET IF RECEIVE DCA ANSBUF / JMS AXSRPK / SEND THE PACKET ANSBUF / STARTING ADDRES OF TEXT PART TYPMOD / TYPE / JMS WAITDT / WAIT FOR A RESPONSE JMP AXSNOP / NO RETURN /M018 JMP AXSNOP / TIMED OUT /M018 / TAD (-TYPPAN) / WAIT FOR RESPONSE IF GET SOMETHING ELSE SEND NO SZA CLA / ++++ JMP AXSNOP /M018 / TAD INMBLK+1 / GET THE RESPONSE TAD (-40) / CHECK FOR GOLD MENU SNA / ++++ JMP AXSNOP /M018 TAD (-2) / 40 = GM;41 = -1(OVERWRITE);42 = 0(TOP);43 = 1 (BOTTOM) / DCA AXSRMO / TAD AXSRMO / SET THE VALUE FOR THE LOG DOCUMENT OF MODIFY SNA CLA / ++++ IFDEF ENGLSH < TAD ("T-"B) /M023 TAD ("B-200) /M023 > IFDEF ITALIAN < TAD ("I-"F) /M023 TAD ("F-200) /M023 > IFDEF V30SWE < TAD ("T-"B) /M023 TAD ("B-200) /M023 > DCA CUPMOD AXSROK, CLA TAD AXSRNO / SEE IF DOC REQUESTED IS LOG DOC /A018 CIA /A018 TAD LOGNO /A018 SNA CLA /A018 / JMP AXSRO2 / JUMP IF OK /A018 / JMS CLFILE /A018 JMP AXSNO / SAY NO /A018 AXSRO2, /A018 TAD AXSRMO MQL TAD AXSRNO / THE AC = DOCUMENT NO AND THE MQ THE MODIFICATION / CDIEDT ISZ AXSR JMP I AXSR / RETURN AXSNOX, CLA CDIEDT JMP I AXSR AXSRT2, 0 / HAS TO BE ON THIS PAGE / ANSBUF, ZBLOCK 2 AXSRNO, 0 AXSRMO, 0 AXINDF, 0 / / MOVED TO ANOTHER PAGE /M018 / / SPTEST - SEE IF THE SPFLAG IS SET WHICH MEANS TO RETURN / /SPTEST, / XX / CLA / CDFEDT / TAD I (SPFLAG) / CDFMYF / / SNA CLA / ++++ / ISZ SPTEST / JMP I SPTEST / AXSNOP, CLA / CLOSE FILE (IT'S CURRENTLY OPEN) /A018 JMP AXSNOX / SEND 'NO' /A018 / PAGE / / AXSAM - COMPARES THE INPUT BUFFER TO THE PASSWORD / AXSAM, XX TAD BPSTAD / FIRST SEE IF THE READ/WRITE PWASSWORD IS SET SNA CLA / ++++ JMP AXSA2 / JMS AXCMP / COMPARE WHAT WAS SET TO WHAT IT IS BPSTAD INMBLK+1 / JMP AXSA2 / DOESNT MATCH / AC0001 / DOES MATCH SET THE OPTFLG / JMP AXSRT AXSA2, TAD WPSTAD / CHECK FOR WRITE PASSWORD SNA CLA / ++++ JMP I AXSAM / JMS AXCMP WPSTAD INMBLK+1 / JMP I AXSAM / DOESNT MATCH EITHER AXSRT, TAD (OPTBMS) / SET TO 43 TO NOT ALLOW READ DCA OPTFLG / 44 MEANS READ /WRITE ABILITY / ISZ AXSAM JMP I AXSAM / / AXCMP - COMPARES THE TEXT IN THE FIRST STRING WITH THE SECOND / IT RETURNS A MATCH IF THE SECOND ONE MATCHES THE FIRST. IT IS / NOT CASE DEPENDENT / CALL / JMS AXCMP / ADDRESS OF STRING ONE THE ONE IT HAS TO MATCH / ADDRESS OF THE STRING TO COMPARE / / DOESNT MATCH RETURN / MATCH RETURN / AXCMP, XX AC7777 TAD I AXCMP / GET THE FIRST STRINGS ADDRESS ISZ AXCMP DCA X1 / AC7777 TAD I AXCMP / GET THE STRING TO COMPARE ISZ AXCMP DCA X2 AXCPL, TAD I X1 SNA / ++++ JMP AXCPJ / JMS CNVUPR / CONVERT THE STRING TO CAPS CIA DCA AXCPT / TAD I X2 JMS CNVUPR TAD AXCPT SNA CLA / ++++ JMP AXCPL JMP I AXCMP AXCPJ, TAD I X2 / CK FOR EXTRA CHAR /A031 SNA CLA / IF PRESENT IT DOES NOT MATCH /A031 ISZ AXCMP JMP I AXCMP AXCPT, 0 / / CNVUPR - IF THE CHARACTER IN THE AC IS LOWER CASE IT IS CONVERTED TO UPPER / CNVUPR, XX TAD (-140) SPA / ++++ TAD (40) TAD (100) JMP I CNVUPR / / THE ROUTINE THAT MODIFIES THE FILE THAT KEEPS THE LOG IF WANTED / AXDON, XX CDFMYF CLA TAD LOGNO / SEE IF THE LOG IS WANTED SNA CLA / ++++ JMP AXDDN TAD LOGNO / OPEN THE LOG DOCUMENT MQL TAD LOGMOD CIFFIO / ++++ /M013 FILEIO / ++++ /M013 XDSKIN CLA / CDFMNU TAD I (DATESP) / GET THE ADDRESS OF THE DATE CDFMYF / DCA DATEAD / CIFMNU JMS I TIMCAL / SEE IF THE TIME HAS CHANGED NOP / JMS CUCOPY / COPY THE TIME TO THIS FIELD DATEAD, 0 CDFMNU AXTIM CDFMYF 26 / JMS CUPSH2 / SKIP OVER THE HEADER AND RULER STUFF / TAD AXSRNO / BREAK OUT FILE AND DRIVE NUMBERS AND P377 DCA CUPDAT CIFMNU JMS I IOACAL CUPOTD AXDMS CUPOS1 AXIDB CUPOS1 AXTIM CUPOS1 CUPFNM CUPOS3 CUPDRV CUPDAT, 0 CUPOS3 CUPMOD CUPOS3 CUPOS4 / CIFFIO / ++++ /M013 FILEIO / ++++ /M013 XDSKCL / AXDDN, TAD LOGMOD SPA CLA DCA LOGMOD CDIEDT JMP I AXDON CUPMOD, 0 / ++++ 0 / PAGE / / WAITING FOR SOMETHING TO BE SENT (RECEIVER) / WAITDT, XX CLA TAD (MIN3) / ++++ DCA DLYLIM JMP WAITDG / SEE IF THERE IS ANYTHING WAITDW, CIFSYS / ++++ JWAIT JMS SPTEST / ++++ JMP I WAITDT / SEE IF THE SPFLAG IS SET JMS GETTM SNA CLA / ++++ JMP WAITDG / NO CHANGE IN THE TIME CONTINUE ISZ DLYLIM / SECOND WENT BY CHOW OT JMP WAITDG ISZ WAITDT JMP I WAITDT / WAITED TOO LONG WAITDG, CIFEDT / SEE IF A PACKET HAS BEEN RECEIVED JMS I GETBUF / ++++ RECPT JMP WAITDW / DCA WAITDA / KEEP THE VALUE / AC0003 TAD WAITDA / GET THE START TO MOVE DCA WAITT1 / JMS CUCOPY / COPY THE BUFFER FOUND WAITT1, XX CDFEDT INMBLK CDFMYF BUFSIZ+1 / TAD WAITDA / DONE WITH THE BUFFER RETURN IT CIFEDT JMS I PUTBUF / ++++ FREEPT / TAD INMBLK ISZ WAITDT ISZ WAITDT / JMP I WAITDT / RETURN WITH THE FLAG CHARACTER WAITDA, 0 DLYLIM, 0 / / GET THE TIME CHANGE USING THE SYSTEMS CLOCK / IT RETURNS A 1 IF A SECOND WENT BY AND A 0 IF NO CHANGE / GETTM, XX CLA CDFSYS TAD I (CLOCK+2) / ++++ CIA CDFMYF / ACDF FOR THIS FIELD (MY FIELD) TAD TMPTME / COMPARE TO MY TIME FOR ANY CHANGE SNA / ++++ JMP I GETTM / NO CHANGE CIA / ++++ TAD TMPTME / IF CHANGE STORE THE NEW ONE DCA TMPTME AC0001 JMP I GETTM TMPTME, 0 / RDSIX1, TAD (74-41) / CHECK IF ALPHA SMA RDSIX3, TAD REDSHF / ADD IN SHIFT TAD (41+37) / CONVERT TO ASCII RDSIX2, DCA REDSXC / STORE IT JMP RDSIX4 / CLEAR ESCAPE FLAG AND RETURN / WRDWSF, TAD (40) / SHIFT TO LOWERCASE WRUPSF, DCA REDSHF / STORE NEW CASE JMP RDSIX4 / AND RETURN / REDSHF, 0 / SHIFT WORD REDSXC, 0 / TEMP THAT HOLDS THE CHARACTER TO RETURN / / THIS IS A CLOSE COPY OF THE WT78 REDSIX ROUTINE WHICH TOOK 6-BIT / INPUT AND STORED IT AS 7-BIT DATA. THIS ROUTINE WILL READ 6-BIT DATA FROM DISK / AND RETURN 7-BIT. / REDSIX, XX / CLA RDF TAD CIDF0 / MAKE CROSS FIELD CALLABLE DCA REDS2X DCA REDSXC / CLEAR THE CHARACTER TO RETURN BUFFER / CDFMYF / REDSIL, TAD REDNXT / SEE IF THERE IS A CHARACTER WAITING TO BE / RETURNED SNA / ++++ JMP REDSI2 / IF ZERO GET A CHAR IF NOT OUTPUT IT DCA T1 DCA REDNXT / CLEAR FLAG OUTPUT IT TAD T1 JMP RDSIX2 REDSI2, CIFFIO / ++++ /M013 FILEIO / ++++ /M013 XRDFNB / GET A CHAR SNA SPA / ++++ JMP REDS2X / DONE OR AN ERROR SO RETURN DCA T1 / STORE UNTIL KNOW WHAT TO DO WITH IT TAD REDESF / SEE IF MIDDLE OF ESCAPE SZA CLA / ++++ JMP REDESC / YES TAD T1 TAD (-74) / SEE IF SPECIAL SPA / ++++ JMP RDSIX1 / NO, NORMAL SIXBIT CHAR SNA / ++++ JMP WRUPSF / SHIFT TO UPPERCASE TAD (74-75) / 75 ? SNA / ++++ JMP RDSIX4 / ILLEGAL, RETURN 0 TAD (75-76) / 76 ? SNA CLA / ++++ JMP WRDWSF / SHIFT TO LOWERCASE AC7777 / MUST BE ESCAPE RDSIX4, DCA REDESF / SET FLAG REDSXX, TAD REDSXC / IF CHARACTER IS ZERO THEN GET ANOTHER SNA / ++++ JMP REDSIL REDS2X, XX JMP I REDSIX / AND RETURN / REDESF, 0 / ESCAPE FLAG / PAGE / / THIS IS THE WT78 READ ROUTINE THAT READS 7-BIT CHARACTERS FROM THE DISK AND / TRANSLATES THEM TO 6-BIT. WHAT IT IS DOING HERE IS TAKING THE / 7-BIT INPUTAND STORING IT AS 6-BIT FOR THE WS SYSTEMS / WRISIX, XX DCA T1 / STORE CHARACTER RDF TAD CIDF0 DCA WRSI2X / CDFMYF TAD WRIVBF / SEE IF THE VERTICAL BAR FLAG IS SET SZA CLA / ++++ JMP WRIVB2 TAD WRIBES / NOW CHECK FOR LAST CHAR WAS A LEFT BRACKET ESCAPE CHAR SZA CLA / ++++ JMP WRIBE2 WRSIXE, CLA TAD WRICHR / SEE IF ANYTHING WAITING AROUND SZA / ++++ JMP WRSIX1 / YES GO PROCESS IT TAD T1 / NO, GET CHAR SNA / ++++ JMP WRSIXX / RETURN ON EOF TAD (-173) / CHECK IF ESCAPE SEQUENCE SPA / ++++ JMP WRSIX5 / NO, NORMAL CHAR SNA CLA / WHICH TYPE ? JMP WRSIX2 / {ESCAPE AC0001 / ++++ DCA WRIVBF / SET FLAG JMP WRSIXX / RETURN WRIVB2, DCA WRIVBF / CLEAR FLAG TAD T1 SNA / ++++ JMP WRSIXX / RETURN ON EOF TAD (-76) / SEE IF JUST SUPPOSED TO BE 173 - 176 SMA SZA / ++++ JMP WRSIX3 / NO, LOOK IN TABLE TAD (76+100) / MAKE INTO REAL ASCII JMP WRSIX1 / AND PROCESS AS NORMAL / WRSIX2, AC0001 / ++++ DCA WRIBES / SET FLAG FOR ESCAPE SEQUENCE JMP WRSIXX / RETURN WRIBE2, DCA WRIBES / CLEAR FLAG THAT GOT US HERE TAD T1 / GET THE NEXT CHARACTER OF ESCAPE SEQUENCE SNA / ++++ JMP WRSIXX / RETURN ON EOF TAD (-53) / MAKE SURE IT'S LEGIT SMA SZA / ++++ JMP WRSIXE / ERROR TAD (53-42) SPA / ++++ JMP WRSIXE / ERROR TAD (WRITA2) / COMPUTE TABLE ADDR JMP WRSIX4 / WRSIX3, TAD (76-117) / CHECK IF VALID TABLE ENTRY SMA SZA / ++++ JMP WRSIXE / ERROR TAD (117-107) SPA / ++++ JMP WRSIXE / ERROR TAD (WRITAB) / COMPUTE TABLE ADDR WRSIX4, DCA T1 TAD I T1 / PICK UP ENTRY WRSIX6, DCA WRICHR / SAVE AS NEXT CHAR TAD (77) / AND RETURN AN ESCAPE WRSIXX, SNA / ++++ JMP WRSI3X CIFFIO / ++++ /M013 FILEIO / ++++ /M013 XPUTSB / STORE CHARACTER WRSI3X, TAD WRICHR / SEE IF ANOTHER TO STORE SZA CLA / ++++ JMP WRSIXE JMS WRSEND / END OF DOC. SO SHIFT TO UPPER /A018 WRSI2X, XX JMP I WRISIX / WRIVBF, 0 WRIBES, 0 WRICHR, 0 / WRSIXA, DCA WRICHR / CLEAR HOLD CHAR MQA / ++++ TAD (-37) / CONVERT TO SIXBIT JMP WRSIXX / AND RETURN / WRSIXC, TAD (61) JMP WRSIX6 WRSIX5, TAD (173) WRSIX1, MQL / ++++ MQA / SAVE CHAR IN MQ AND (100) / SEE IF SHIFTABLE SNA CLA / ++++ JMP WRSIXA / NO, CONVERT AND RETURN MQA / ++++ AND (40) / GET SHIFT BIT CIA / ++++ TAD WRSHIF / COMPARE WITH STATE WE'RE IN CLL SNA CLA / ++++ JMP WRSIXB / DIDN'T CHANGE MQA / ++++ AND (40) / STORE NEW STATE (SHIFT BIT) SZA / ++++ CML DCA WRSHIF RAL / FIGURE OUT IF NEED UPSHIFT OR DOWNSHIFT SZA / ++++ IAC TAD (74) DCA T1 / SAVE FOR A MINUTE MQA / ++++ DCA WRICHR / GET CHAR BACK AND SAVE FOR NEXT TIME TAD T1 / RETURN WITH SHIFT CODE JMP WRSIXX / WRSHIF, 0 / PAGE / / THESE TABLES ARE USED BY THE GET SEVEN BIT AND PUT SEVEN BIT ROUTINES / WRITAB, 66 46 45 52 66 / ILLEGAL 53 47 67 70 / WRITA2, 42 / ++++ 41 44 / ++++ 43 51 / ++++ 50 55 / ++++ 54 57 / ++++ 56 / REDTAB, 7343 / ++++ 7342 / TABLE TO CONVERT SIXBIT TO WPW 7-BIT 7345 / ++++ 7344 7411 7410 7415 7347 / ++++ 7346 7412 7414 7351 / ++++ 7350 7353 / ++++ 7352 7407 / ILLEGAL 133 134 135 136 137 7407 7416 7417 / / MESSAGES / CLASCR, TEXT '^P!E' / MESFT2, IFDEF ENGLSH < TEXT '^P&IDENTIFICATION MESSAGE IS:^P^A' > /M022 IFDEF ITALIAN< TEXT /^P&MESSAGGIO IDENTIFICAZIONE SISTEMA:^P^A/ > IFDEF CANADA < TEXT "^P&IDENTIFICATION DU TERMINAL:^P^A" > IFDEF FRENCH < TEXT "^P&IDENTIFICATION EST :^P^A" > /L.A.E IFDEF DUTCH < TEXT "^P&INDENTIFICATIE BERICHT IS:^P^A" > IFDEF GERMAN < TEXT "^P&TERMINAL &KENNUNG:^P^A" > IFDEF NORWAY < TEXT '^P&TERMINAL-&I&D ER:^P^A' > IFDEF SWEDSH < TEXT '^P&TERMINAL-&I&D [R:^P^A' > /L.U.A IFDEF DANISH < TEXT '^P&TERMINAL-&I&D ER:^P^A' > IFDEF V30SWE < TEXT '^P&IDENTIFIERINGSMEDDELANDET \DR:'> / MESFT3, IFDEF ENGLSH < TEXT '^P&LOG DOCUMENT IS:^P^A' > IFDEF ITALIAN< TEXT /^P&PROCEDURA DI COLLEGAMENTO:^P^A/ > IFDEF CANADA < TEXT "^P&DOCUMENT-R[PERTOIRE:^P^A" > /L.A.E IFDEF FRENCH < TEXT "^P&LE JOURNAL DE BORD EST :^P^A" > IFDEF DUTCH < TEXT "^P&LOGBOEK IS:^P^A" > IFDEF GERMAN < TEXT "^P&LOG &DATEI:^P^A" > IFDEF NORWAY < TEXT '^P"&LOG"-DOKUMENTET ER:^P^A' > IFDEF SWEDSH < TEXT '^P"&LOG"-DOKUMENTET [R:^P^A' > /L.U.A IFDEF DANISH < TEXT '^P"&LOG"-DOKUMENTET ER:^P^A' > IFDEF V30SWE < TEXT '^P"&INLOGGNINGSDOKUMENTET \DR:'> / MESFT4, IFDEF ENGLSH < TEXT '^P&SEND ONLY PASSWORD IS:^P^A' > IFDEF ITALIAN< TEXT /^P&PAROLA CHIAVE PER INVIO:^P^A/ > IFDEF CANADA < TEXT "^P&MOT DE PASSE D'ENVOI:^P^A" > IFDEF FRENCH < TEXT "^P&LE MOT DE PASSE POUR ENVOYER EST :^P^A" > /L.A.E IFDEF DUTCH < TEXT "^P&SLEUTELWOORD VOOR ALLEEN ZENDEN:^P^A" > IFDEF GERMAN < TEXT "^P&SENDE &PASSWORT:^P^A" > IFDEF NORWAY < TEXT "^P&PASSORDET FOR ] SENDE ER:^P^A" > /L.D.A IFDEF SWEDSH < TEXT '^P&L\SENORD F\R "S[ND" [R:^P^A' > /L.U.O, L.U.O, L.U.A, L.U.A IFDEF DANISH < TEXT "^P&PASORDET FOR AT SENDE ER:^P^A" > IFDEF V30SWE < TEXT '^P"&S\DND ENDAST L\VSENORD" \DR:'> / MESFT5, IFDEF ENGLSH < TEXT '^P&SEND AND RECEIVE PASSWORD IS:^P^A' > IFDEF ITALIAN< TEXT /^P&PAROLA CHIAVE PER INVIO E RICEZIONE:^P^A/ > IFDEF CANADA < TEXT "^P&MOT DE PASSE D'ENVOI-R[CEPTION:^P^A" > /L.A.E IFDEF FRENCH < TEXT "^P&LE MOT DE PASSE POUR ENVOYER ET RECEVOIR EST :^P^A" /L.A.E > IFDEF DUTCH < TEXT "^P&SLEUTEWOORD VOOR ZENDEN EN ONTVANGEN IS:^P^A" > IFDEF GERMAN < TEXT "^P&SENDE UND &EMPFANGS &PASSWORT:^P^A" > IFDEF NORWAY < TEXT "^P&PASSORDET FOR ] SENDE OG MOTTA ER:^P^A" > /L.D.A IFDEF SWEDSH < TEXT '^P&L\SENORD F\R "S[ND OCH MOTTAG" [R:^P^A' > /L.U.O, L.U.O, L.U.A, L.U.A IFDEF DANISH < TEXT "^P&PASORDET FOR AT SENDE OG MODTAGE ER:^P^A" > IFDEF V30SWE < TEXT '^P"&S\DND OCH TA EMOT L\VSENORD" \DR:'> / /D016;TRYCON, /D016; IFDEF ENGLSH < TEXT '^P!L^P--!L &COMMUNICATIONS ACTIVE --' > /D016; IFDEF CANADA < TEXT "^P!L^P--!L &COMMUNICATION EN COURS --" > /D016; IFDEF FRENCH < TEXT "^P!L^P--!L &COMMUNICATION EN COURS --" > /D016; IFDEF DUTCH < TEXT "^P!L^P--!L &COMMUNICATIE AKTIEF --" > /D016; IFDEF GERMAN < TEXT "^P!L^P--!L &KOMMUNIKATION AKTIV --" > /D016; IFDEF NORWAY < TEXT "^P!L^P--!L &KOMMUNIKASJON AKTIV --" > /D016; IFDEF SWEDSH < TEXT "^P!L^P--!L &KOMMUNIKATION AKTIV --" > /D016; IFDEF DANISH < TEXT "^P!L^P--!L &KOMMUNIKATION AKTIV --" > / IFDEF ENGLSH < NOANS, "C-200 / C "A-200 / A "N-200 / N "N-200 / N "O-200 / O "T-200 / T " -200 / Space "T-200 / T "R-200 / R "A-200 / A "N-200 / N "S-200 / S "F-200 / F "E-200 / E "R-200 / R " -200 / Space "D-200 / D "O-200 / O "C-200 / C "U-200 / U "M-200 / M "E-200 / E "N-200 / N "T-200 / T CLAMES, 0 BADPAS, "I-200 / I "N-200 / N "C-200 / C "O-200 / O "R-200 / R "R-200 / R "E-200 / E "C-200 / C "T-200 / T " -200 / Space "P-200 / P "A-200 / A "S-200 / S "S-200 / S "W-200 / W "O-200 / O "R-200 / R "D-200 / D 00000 PASPMT, 164 / T 150 / H 145 / E " -200 / Space "P-200 / P "A-200 / A "S-200 / S "S-200 / S "W-200 / W "O-200 / O "R-200 / R "D-200 / D 00000 ILLUSE, "--200 / - "--200 / - " -200 / Space "I-200 / I "L-200 / L "L-200 / L "E-200 / E "G-200 / G "A-200 / A "L-200 / L " -200 / Space "U-200 / U "S-200 / S "E-200 / E "R-200 / R " -200 / Space "--200 / - "--200 / - 0000 IDPMT, 171 / Y 157 / O 165 / U 162 / R " -200 / Space "i-200 / I "d-200 / D "e-200 / E "n-200 / N "t-200 / T "i-200 / I "f-200 / F "i-200 / I "c-200 / C "a-200 / A "t-200 / T "i-200 / I "o-200 / O "n-200 / N " -200 / Space "m-200 / M "e-200 / E "s-200 / S "s-200 / S "a-200 / A "g-200 / G "e-200 / E 0000 > / END IFNDEF ENGLSH IFDEF ITALIAN < NOANS, "T-200 / T "R-200 / R "A-200 / A "S-200 / S "F-200 / F "E-200 / E "R-200 / R "I-200 / I "M-200 / M "E-200 / E "N-200 / N "T-200 / T "O-200 / O " -200 / Space "D-200 / D "O-200 / O "C-200 / C "U-200 / U "M-200 / M "E-200 / E "N-200 / N "T-200 / T "O-200 / O " -200 / SPACE "I-200 / I "M-200 / M "P-200 / P "O-200 / O "S-200 / S "S-200 / S "I-200 / I "B-200 / B "I-200 / I "L-200 / L "E-200 / E CLAMES, 0 BADPAS, "P-200 / P "A-200 / A "R-200 / R "O-200 / O "L-200 / L "A-200 / A " -200 / SPACE "C-200 / C "H-200 / H "I-200 / I "A-200 / A "V-200 / V "E-200 / E " -200 / SPACE "N-200 / N "O-200 / O "N-200 / N " -200 / SPACE "C-200 / C "O-200 / O "R-200 / R "R-200 / R "E-200 / E "T-200 / T "T-200 / T "A-200 / A 00000 PASPMT, "L-200 / L "A-200 / A " -200 / Space "P-200 / P "A-200 / A "R-200 / R "O-200 / O "L-200 / L "A-200 / A " -200 / SPACE "C-200 / C "H-200 / H "I-200 / I "A-200 / A "V-200 / V "E-200 / E 00000 ILLUSE, "--200 / - "--200 / - " -200 / Space "U-200 / U "T-200 / T "E-200 / E "N-200 / N "T-200 / T "E-200 / E " -200 / Space "N-200 / N "O-200 / O "N-200 / N " -200 / SPACE "A-200 / A "U-200 / U "T-200 / T "O-200 / O "R-200 / R "I-200 / I "Z-200 / Z "Z-200 / Z "A-200 / A "T-200 / T "O-200 / O " -200 / Space "--200 / - "--200 / - 0000 IDPMT, "i-200 / I "l-200 / L " -200 / SPACE "m-200 / M "e-200 / E "s-200 / S "s-200 / S "a-200 / A "g-200 / G "g-200 / G "i-200 / I "o-200 / O " -200 / SPACE "i-200 / I "d-200 / D "e-200 / E "n-200 / N "t-200 / T "i-200 / I "f-200 / F "i-200 / I "c-200 / C "a-200 / A "z-200 / Z "i-200 / I "o-200 / O "n-200 / N "e-200 / E " -200 / Space "s-200 / S "i-200 / I "s-200 / S "t-200 / T "e-200 / E "m-200 / M "a-200 / A 0000 > / END IFDEF ITALIAN IFDEF CANADA < NOANS, "I-200 / I "M-200 / M "P-200 / P "O-200 / O "S-200 / S "S-200 / S "I-200 / I "B-200 / B "L-200 / L "E-200 / E " -200 / Space "D-200 / D "E-200 / E " -200 / Space "T-200 / T "R-200 / R "A-200 / A "N-200 / N "S-200 / S "M-200 / M "E-200 / E "T-200 / T "T-200 / T "R-200 / R "E-200 / E " -200 / Space "L-200 / L "E-200 / E " -200 / Space "D-200 / D "O-200 / O "C-200 / C ".-200 / . CLAMES, 0 BADPAS, "M-200 / M "O-200 / O "T-200 / T " -200 / Space "D-200 / D "E-200 / E " -200 / Space "P-200 / P "A-200 / A "S-200 / S "S-200 / S "E-200 / E " -200 / Space "I-200 / I "N-200 / N "C-200 / C "O-200 / O "R-200 / R "R-200 / R "E-200 / E "C-200 / C "T-200 / T 0000 PASPMT, "L-200 / L "E-200 / E " -200 / Space "M-200 / M "O-200 / O "T-200 / T " -200 / Space "D-200 / D "E-200 / E " -200 / Space "P-200 / P "A-200 / A "S-200 / S "S-200 / S "E-200 / E 0000 ILLUSE, "--200 / - "U-200 / U "T-200 / T "I-200 / I "L-200 / L "I-200 / I "S-200 / S "A-200 / A "T-200 / T "E-200 / E "U-200 / U "R-200 / R " -200 / Space "N-200 / N "O-200 / O "N-200 / N "--200 / - "A-200 / A "U-200 / U "T-200 / T "O-200 / O "R-200 / R "I-200 / I "S-200 / S "[-200 / [ "--200 / - 0000 IDPMT, "V-200 / V "O-200 / O "T-200 / T "R-200 / R "E-200 / E " -200 / Space "I-200 / I "D-200 / D "E-200 / E "N-200 / N "T-200 / T "I-200 / I "F-200 / F "I-200 / I "C-200 / C "A-200 / A "T-200 / T "I-200 / I "O-200 / O "N-200 / N 0000 > / END IFDEF CANADA / IFDEF FRENCH < NOANS, "N-200 / N "E-200 / E " -200 / Space "P-200 / P "E-200 / E "U-200 / U "T-200 / T " -200 / Space "P-200 / P "A-200 / A "S-200 / S " -200 / Space "O-200 / O "B-200 / B "T-200 / T "E-200 / E "N-200 / N "I-200 / I "R-200 / R " -200 / Space "L-200 / L "E-200 / E " -200 / Space "D-200 / D "O-200 / O "C-200 / C ".-200 / . CLAMES, 0 BADPAS, "M-200 / M "A-200 / A "U-200 / U "V-200 / V "A-200 / A "I-200 / I "S-200 / S " -200 / Space "M-200 / M "O-200 / O "T-200 / T " -200 / Space "D-200 / D "E-200 / E " -200 / Space "P-200 / P "A-200 / A "S-200 / S "S-200 / S "E-200 / E 0000 PASPMT, "L-200 / L "E-200 / E " -200 / Space "M-200 / M "O-200 / O "T-200 / T " -200 / Space "D-200 / D "E-200 / E " -200 / Space "P-200 / P "A-200 / A "S-200 / S "S-200 / S "E-200 / E 0000 ILLUSE, "--200 / - "U-200 / U "T-200 / T "I-200 / I "L-200 / L "I-200 / I "S-200 / S "A-200 / A "T-200 / T "E-200 / E "U-200 / U "R-200 / R " -200 / Space "N-200 / N "O-200 / O "N-200 / N " -200 / Space "A-200 / A "U-200 / U "T-200 / T "O-200 / O "R-200 / R "I-200 / I "S-200 / S "[-200 / [ "--200 / - 0000 IDPMT, "V-200 / V "O-200 / O "T-200 / T "R-200 / R "E-200 / E " -200 / Space "I-200 / I "D-200 / D "E-200 / E "N-200 / N "T-200 / T "I-200 / I "F-200 / F "I-200 / I "C-200 / C "A-200 / A "T-200 / T "I-200 / I "O-200 / O "N-200 / N 0000 > / END IFDEF FRENCH IFDEF GERMAN < NOANS, "K-200 / K "E-200 / E "I-200 / I "N-200 / N " -200 / Space "D-200 / D "A-200 / A "T-200 / T "E-200 / E "I-200 / I " -200 / Space "T-200 / T "R-200 / R "A-200 / A "N-200 / N "S-200 / S "F-200 / F "E-200 / E "R-200 / R CLAMES, 0 BADPAS, "F-200 / F "A-200 / A "L-200 / L "S-200 / S "C-200 / C "H-200 / H "E-200 / E "S-200 / S " -200 / Space "P-200 / P "A-200 / A "S-200 / S "S-200 / S "W-200 / W "O-200 / O "R-200 / R "T-200 / T 0000 PASPMT, "P-200 / P "A-200 / A "S-200 / S "S-200 / S "W-200 / W "O-200 / O "R-200 / R "T-200 / T 0000 ILLUSE, "--200 / - "K-200 / K "E-200 / E "I-200 / I "N-200 / N " -200 / Space "Z-200 / Z "U-200 / U "G-200 / G "R-200 / R "I-200 / I "F-200 / F "F-200 / F "--200 / - 0000 IDPMT, "I-200 / I "H-200 / H "R-200 / R "E-200 / E " -200 / "K-200 / K "E-200 / E "N-200 / N "N-200 / N "U-200 / U "N-200 / N "G-200 / G 0000 > / END IFDEF GERMAN IFDEF DUTCH < NOANS, "O-200 / O "N-200 / N "M-200 / M "O-200 / O "G-200 / G "E-200 / E "L-200 / L "I-200 / I "J-200 / J "K-200 / K " -200 / "T-200 / T "E-200 / E " -200 / "V-200 / V "E-200 / E "R-200 / R "Z-200 / Z "E-200 / E "N-200 / N "D-200 / D "E-200 / E "N-200 / N CLAMES, 0 BADPAS, "F-200 / F "O-200 / O "U-200 / U "T-200 / T "I-200 / I "E-200 / E "F-200 / F " -200 / "S-200 / S "L-200 / L "E-200 / E "U-200 / U "T-200 / T "E-200 / E "L-200 / L "W-200 / W "O-200 / O "O-200 / O "R-200 / R "D-200 / D 0000 PASPMT, "H-200 / H "E-200 / E "T-200 / T " -200 / "S-200 / S "L-200 / L "E-200 / E "U-200 / U "T-200 / T "E-200 / E "L-200 / L "W-200 / W "O-200 / O "O-200 / O "R-200 / R "D-200 / D 0000 ILLUSE, "--200 / - "V-200 / V "E-200 / E "R-200 / R "K-200 / K "E-200 / E "E-200 / E "R-200 / R "D-200 / D "E-200 / E " -200 / "G-200 / G "E-200 / E "B-200 / B "R-200 / R "U-200 / U "I-200 / I "K-200 / K "E-200 / E "R-200 / R "--200 / - 0000 IDPMT, "I-200 / I "D-200 / D "E-200 / E "N-200 / N "T-200 / T "I-200 / I "F-200 / F "I-200 / I "C-200 / C "A-200 / A "T-200 / T "I-200 / I "E-200 / E " -200 / "B-200 / B "E-200 / E "R-200 / R "I-200 / I "C-200 / C "H-200 / H "T-200 / T 0000 > / END IFDEF DUTCH IFDEF NORWAY < NOANS, "K-200 / K "A-200 / A "N-200 / N " -200 / "I-200 / I "K-200 / K "K-200 / K "E-200 / E " -200 / "O-200 / O "V-200 / V "E-200 / E "R-200 / R "F-200 / F "\-200 / \ "R-200 / R "E-200 / E " -200 / "D-200 / D "O-200 / O "K-200 / K "U-200 / U "M-200 / M "E-200 / E "N-200 / N "T-200 / T CLAMES, 0000 BADPAS, "U-200 / U "G-200 / G "Y-200 / Y "L-200 / L "D-200 / D "I-200 / I "G-200 / G " -200 / "P-200 / P "A-200 / A "S-200 / S "S-200 / S "O-200 / O "R-200 / R "D-200 / D 0000 / PASPMT, "P-200 / P "A-200 / A "S-200 / S "S-200 / S "O-200 / O "R-200 / R "D-200 / D "E-200 / E "T-200 / T 0000 ILLUSE, "--200 / - "--200 / - "I-200 / I "K-200 / K "K-200 / K "E-200 / E " -200 / "A-200 / A "U-200 / U "T-200 / T "O-200 / O "R-200 / R "I-200 / I "S-200 / S "E-200 / E "R-200 / R "T-200 / T " -200 / "B-200 / B "R-200 / R "U-200 / U "K-200 / K "E-200 / E "R-200 / R "--200 / - "--200 / - 0000 / IDPMT, "d-200 / d "i-200 / i "n-200 / n " -200 / "I-200 / I "D-200 / D 0000 > / End IFDEF NORWAY IFDEF SWEDSH < / NOANS, "K-200 / K "A-200 / A "N-200 / N " -200 / "I-200 / I "N-200 / N "T-200 / T "E-200 / E " -200 / "\-200 / \ "V-200 / V "E-200 / E "R-200 / R "F-200 / F "\-200 / \ "R-200 / R "A-200 / A " -200 / "D-200 / D "O-200 / O "K-200 / K "U-200 / U "M-200 / M "E-200 / E "N-200 / N "T-200 / T CLAMES, 0000 BADPAS, "U-200 / U "G-200 / G "I-200 / I "L-200 / L "T-200 / T "I-200 / I "G-200 / G " -200 / "L-200 / L "\-200 / \ "S-200 / S "E-200 / E "N-200 / N "O-200 / O "R-200 / R "D-200 / D 0000 / PASPMT, "L-200 / L "\-200 / \ "S-200 / S "E-200 / E "N-200 / N "O-200 / O "R-200 / R "D-200 / D "E-200 / E "T-200 / T 0000 ILLUSE, "--200 / - "I-200 / I "N-200 / N "T-200 / T "E-200 / E " -200 / "A-200 / A "U-200 / U "T-200 / T "O-200 / O "R-200 / R "I-200 / I "S-200 / S "E-200 / E "R-200 / R "A-200 / A "T-200 / T " -200 / "A-200 / A "N-200 / N "V-200 / V "[-200 / [ "N-200 / N "D-200 / D "A-200 / A "R-200 / R "E-200 / E "--200 / - 0000 / IDPMT, "d-200 / d "i-200 / i "n-200 / n " -200 / "I-200 / I "D-200 / D 0000 > / End IFDEF SWEDSH IFDEF DANISH < NOANS, "K-200 / K "A-200 / A "N-200 / N " -200 / "I-200 / I "K-200 / K "K-200 / K "E-200 / E " -200 / "O-200 / O "V-200 / V "E-200 / E "R-200 / R "F-200 / F "\-200 / \ "R-200 / R "E-200 / E " -200 / "D-200 / D "O-200 / O "K-200 / K "U-200 / U "M-200 / M "E-200 / E "N-200 / N "T-200 / T CLAMES, 0000 BADPAS, "U-200 / U "G-200 / G "Y-200 / Y "L-200 / L "D-200 / D "I-200 / I "G-200 / G " -200 / "P-200 / P "A-200 / A "S-200 / S "O-200 / O "R-200 / R "D-200 / D 0000 / PASPMT, "P-200 / P "A-200 / A "S-200 / S "O-200 / O "R-200 / R "D-200 / D "E-200 / E "T-200 / T 0000 ILLUSE, "--200 / - "--200 / - "I-200 / I "K-200 / K "K-200 / K "E-200 / E " -200 / "A-200 / A "U-200 / U "T-200 / T "O-200 / O "R-200 / R "I-200 / I "S-200 / S "E-200 / E "R-200 / R "E-200 / E "T-200 / T " -200 / "B-200 / B "R-200 / R "U-200 / U "G-200 / G "E-200 / E "R-200 / R 0000 / IDPMT, "d-200 / d "i-200 / i "n-200 / n " -200 / "I-200 / I "D-200 / D 0000 > / End IFDEF DANISH IFDEF V30SWE < / NOANS, "K-200 / K "A-200 / A "N-200 / N " -200 / "I-200 / I "N-200 / N "T-200 / T "E-200 / E " -200 / "\-200 / \ "V-200 / V "E-200 / E "R-200 / R "F-200 / F "\-200 / \ "R-200 / R "A-200 / A " -200 / "D-200 / D "O-200 / O "K-200 / K "U-200 / U "M-200 / M "E-200 / E "N-200 / N "T-200 / T CLAMES, 0000 BADPAS, "U-200 / U "G-200 / G "I-200 / I "L-200 / L "T-200 / T "I-200 / I "G-200 / G " -200 / "L-200 / L "\-200 / \ "S-200 / S "E-200 / E "N-200 / N "O-200 / O "R-200 / R "D-200 / D 0000 / PASPMT, "L-200 / L "\-200 / \ "S-200 / S "E-200 / E "N-200 / N "O-200 / O "R-200 / R "D-200 / D "E-200 / E "T-200 / T 0000 ILLUSE, "--200 / - "I-200 / I "N-200 / N "T-200 / T "E-200 / E " -200 / "A-200 / A "U-200 / U "T-200 / T "O-200 / O "R-200 / R "I-200 / I "S-200 / S "E-200 / E "R-200 / R "A-200 / A "T-200 / T " -200 / "A-200 / A "N-200 / N "V-200 / V "[-200 / [ "N-200 / N "D-200 / D "A-200 / A "R-200 / R "E-200 / E "--200 / - 0000 / IDPMT, "d-200 / d "i-200 / i "n-200 / n " -200 / "I-200 / I "D-200 / D 0000 > / End IFDEF V30SWE / CRLF, 15 CUPOS4, 12 / ++++ 0 AXDMS, / / The following foreign language code contains the closing angle bracket / character. This character causes the conditional code compilation to get / quite confused. Therefore it has been necessary to hide these characters / from PAL using their SIXBIT codes rather than the TEXT characters. This / makes quite a mess. The english for the following mess is: / TEXT "^AFROM>^A^ATIME>^A^AN>^A ^A#>!D.^D^Am>^A^A>^A" / IFDEF ENGLSH < TEXT "^AFROM" *.-1 7636 / closing angle and uparrow TEXT "A^ATIM" *.-1 0576 / "E" and closing angle TEXT "^A^A" *.-1 1676 / "N" and closing angle TEXT "^A ^A#" *.-1 7641 / closing angle and "!" TEXT "D.^D^A" *.-1 1576 / "M" and closing angle TEXT "^A^A" *.-1 7636 / closing angle and uparrow 0100 / "A" and null to terminate string > / End IFNDEF ENGLSH / IFDEF ITALIAN < TEXT "^ADA" *.-1 7636 / closing angle and uparrow TEXT "A^ADATA-OR" *.-1 0176 / "A" and closing angle TEXT "^A^A" *.-1 1676 / "N" and closing angle TEXT "^A ^A=" *.-1 7641 / closing angle and "!" TEXT "D.^D^A" *.-1 1576 / "M" and closing angle TEXT "^A^A" *.-1 7636 / closing angle and uparrow 0100 / "A" and null to terminate string > / End IFDEF ITALIAN / IFDEF CANADA < TEXT "^ADE" *.-1 7636 / closing angle and uparrow TEXT "A^ADAT" /M011 *.-1 0576 / "E" and closing angle /M011 TEXT "^A^A" /M011 *.-1 1676 / "N" and closing angle /M011 TEXT "^A ^A#" /M011 *.-1 7641 / closing bracket and "!" /M011 TEXT "D.^D^A" /M011 *.-1 1576 / "M" and closing angle /M011 TEXT "^A^A" /M011 *.-1 7636 / closing angle and uparrow /M011 TEXT "A" /M011 > / IFDEF FRENCH < TEXT "^ADE" *.-1 7636 / closing angle and uparrow TEXT "A^ATEMPS" *.-1 7636 / closing angle and uparrow TEXT "A^AN" *.-1 7636 / closing angle and uparrow TEXT "A ^A" *.-1 4376 / "#" and closing bracket TEXT "!D.^D^AM" *.-1 7636 / closing angle and uparrow TEXT "A^" *.-1 0176 / "A" and closing angle TEXT "^A" > / IFDEF DUTCH < TEXT "^AVA" *.-1 1676 / "N" and closing angle TEXT "^A^ATIJD" *.-1 7636 / closing angle and uparrow TEXT "A^AN" *.-1 7636 / closing angle and uparrow TEXT "A ^A" *.-1 4376 / "#" and closing angle TEXT "!D.^D^AM" *.-1 7636 / closing angle and uparrow TEXT "A^" *.-1 0176 / "A" and closing angle TEXT "^A" > / IFDEF GERMAN < TEXT "^AVO" *.-1 1676 / "N" and closing angle TEXT "^A^AZEIT" *.-1 7636 / closing angle and uparrow TEXT "A^AN" *.-1 7636 / closing angle and uparrow TEXT "A ^A" *.-1 4376 / "#" and closing angle TEXT "!D.^D^AM" *.-1 7636 / closing angle and uparrow TEXT "A^" *.-1 0176 / "A" and closing angle TEXT "^A" > IFDEF NORWAY < TEXT "^AFR" *.-1 0176 / "A"-closing bracket TEXT "^A^ATI" *.-1 0476 / "D"-Closing bracket > IFDEF SWEDSH < TEXT "^AFR]N" *.-1 7636 / Closing bracket-uparrow TEXT "A^ATID" *.-1 4076 / Space-Closing bracket > IFDEF DANISH < TEXT "^AFR" *.-1 0176 / "A"-closing bracket TEXT "^A^ATI" *.-1 0476 / "D"-Closing bracket > IFDEF V30SWE < TEXT "^AFR\EN" *.-1 7636 / closing angle and uparrow TEXT "A^ATIM" *.-1 0576 / "E" and closing angle TEXT "^A^A" *.-1 1676 / "N" and closing angle TEXT "^A ^A#" *.-1 7641 / closing angle and "!" TEXT "D.^D^A" *.-1 1576 / "M" and closing angle TEXT "^A^A" *.-1 7636 / closing angle and uparrow 0100 / "A" and null to terminate string > / End IFDEF V30SWE / / THE STRINGS THAT ARE USED FOR DELIMITERS / DEAX1, "<-200 / ++++ 156 / ++++ ">-200 / ++++ 0 DEAX2, "<-200 / ++++ "#-200 / ++++ ">-200 / ++++ 0 DEAX3, "<-200 / ++++ ">-200 / ++++ 0 / DECKDT, / USED TO COMPAY THE CURRENT CHARACTER IN DECKDS TO < DEAX4, "<-200 / ++++ 0 / IFDEF GERMAN < PAGE / The german TEXT is short enough to cause the code on / the next page to have severe problems. > IFDEF ENGLSH / DITTO FOR ENGLISH. IFDEF V30SWE / DITTO FOR V30SWE? / / / PART OF REDSIX ROUTINE TO AHNDLE THE ESCAPE SEQUENCES / REDESC, AC7776 / PART OF REDSIX ROUTINE TAD T1 / SEE IF LEGAL ESCAPE SEQUENCE SPA / ++++ JMP RDSIX4 / ERROR TAD (2-31) SMA SZA / ++++ JMP RDSIX4 / ERROR TAD (REDTAB+31-2) / COMPUTE TABLE ENTRY DCA T1 TAD I T1 / PICK UP ENTRY / DCA T1 / STORE THE ORIGINAL CHARACTER OUT OF THE TABLE TAD T1 / SMA / ++++ JMP REDES2 / IF NEGATIVE IT IS A ESCAPE SEQUENCE / IF POSITIVE IT IS EITHER 137 THAT IS SPECIAL / OR A CHARACTER THAT IS CASE DEPENDENT / CLA TAD T1 / ESCAPE AND P77 / GET THE SECOND BYTE THE CAHRACTER REPRESENTING DCA T2 / THE TYPE / TAD T1 / NOW GET THE ESCAPE BSW AND P77 TAD (100) REDES3, DCA T3 / TAD T3 / IF THE ESCAPE IS A 174 OR VERTICAL BAR THEN / ADD A 100 TO THE NEXT CHARACTER TAD (-173) SZA CLA / ++++ AC0100 TAD T2 AND P177 DCA REDNXT / SAVE IT FOR THE NEXT TIME THE ROUTINE IS CALLED / TAD T3 JMP RDSIX2 / SEND THE ESCAPE REDES2, TAD (-137) / IF SPECIAL THEN DOESNT MATTER IF UPPER OR LOWER SNA CLA / ++++ JMP REDES4 / SEND A 137 FOR UNDERSCORE TAD REDSHF / ELSE CASE DEPENDENT SNA / ++++ JMP REDES4 / NO CASE CHANGE THE CHARACTER IS OK TAD T1 DCA T2 / MAKE LOWER / TAD (174) / SEND AS A 174 ESCAPE JMP REDES3 REDES4, TAD T1 / GET THE OROGINAL JMP RDSIX2 REDNXT, 0 / / PART OF THE REDSIX ROUTINE / WRSIXB, DCA WRICHR / CLEAR HOLD CHAR MQA TAD (-140) / MAKE LOWER CASE SMA / ++++ TAD (-40) TAD (140-37) TAD (-74) / SEE IF SPECIAL CHAR SMA / ++++ JMP WRSIXC / YES, SEND ESCAPE SEQUENCE INSTEAD TAD (74) JMP WRSIXX / PAGE / / LOCDOC - WILL LOCK THE DOCUMENTS THAT WILL BE USED FOR AX. THIS IS / THE LOG AND DEFAULT LIST DOCUMENTS / Why this routine worked in the English system is anyone's guess. It was / just luck. The XXXXX symbol causes WPCRE to be loaded right after the last / instruction in this routine. This caused all the literals on this page / to be overwritten. It seems that the key literal was not changed when this / occurred--in the English system, that is, in the FORINized systems it is / and AX didn't work. To correct this all literals on this page have been / labeled so that they won't get overwritten. Take care if adding code to / to this page that you label your literals too. / /D032;LOCDOC, /D032; XX /D032; CLA /D032; CDFMYF /D015; TAD I PLOGNO / Get the log document number via pointer /D015; SNA CLA / ++++ /D015; JMP LOCDO2 /D014;/ /D014; CIFPRT /D014; JMS I PLCKFI / Jump to subroutine via pointer /D014; LOGNO /D014; ALTER /D014; USERNO /D014;/ /D014; JMP LOCER1 /D014;/ /D015; CDFMNU / CHANGE DATA FIELD TO MENU. /A014 /D015; DCA I PFLOCK / SET MENU LOCK WORD. /A014 /D015; CDFMYF / BACK TO US. /A014 /D032;LOCDO2, JMP I LOCDOC /D014;LOCER2, /D014; AC0001 / DISPLAY THAT THE DEFAULT LIST DOCUMENT IS LOCKED /D014;LOCER1, /D014; TAD VFOUR / LOG /D014;/ /D014; CDFMNU /D014; DCA I PMNUST / store via pointer to menu stuff /D014; CDFMYF /D014;/ /D014; CIFMNU /D014; JMS I MNUCAL /D014; DLMA13 /D014;/ /D014; JMP I LOCDOC /D014;/ /D015;PLOGNO, LOGNO / Pointer to log document number /D014;VFOUR, 4 / The value four /D014; /D014;/This line was causing an undefined symbol error for the 78. Since it /A010 /D014;/is only accessed when WS102 is defined I conditionalized it. /A010 /D014;IFDEF WS102 < /A010 /D014;PLCKFI, LCKFIL / Pointer to file locking routine /D014;> /A010 /D014;PMNUST, MUBUF+MNTMP2 / Pointer to menu stuff /D014;/ /D015;PFLOCK, MUBUF+MNLOCK / POINTER TO MENU LOCK WORD. /A014 / / CLEAR OUT THE SETTINGS WHEN AX IS LOADED OUT. THE ZBLOCK / MAKES SURE WHAT WE LOAD OUT IS ZEROS. THIS ALSO LIMITS THIS PROGRAM TO / THE VALUE OF DFCOMA / XXXXXX=. / CURRENT POSITION IS = XXXXXX / *DFCOMA / ZBLOCK 1000 / *XXXXXX / RESET THE CURRENT LOCATION COUNTER