TITLE MESSAG - PPL ERROR MESSAGES /EAT/ 19-NOV-72 SEARCH PPL IFE FTEMF,< HISEG ;MESSAGES BEING ASSEMBLED IN HIGH SEGMENT > XALL ;THIS SUBPROGRAM CONTAINS MOST OF THE ERROR MESSAGES USED IN PPL. ; THEY ARE COLLECTED TOGETHER HERE FOR TWO REASONS: ; (1) TO ELIMINATE REDUNDANT OR NEARLY IDENTICAL MESSAGES FOUND ; IN DIFFERENT SUBPROGRAMS, AND ; (2) TO ALLOW THE MESSAGES TO BE REMOVED FROM THE LANGUAGE PROCESSOR ; ENTIRELY AND BE PLACED IN A FILE. ;IF FTEMF IS OFF, THIS SUBPROGRAM CONSISTS ONLY OF THE ERROR STRINGS ; THEMSELVES, ALONG WITH THE GLOBAL SYMBOLS FOR DIRECTLY REFERENCING ; THEM, AND IS LOADED ALONG WITH THE HIGH SEGMENT IN THE NORMAL WAY. ;IF FTEMF IS ON, THIS SUBPROGRAM ASSEMBLES AND LOADS INTO THE LOW SEGMENT, ; ALONG WITH AN INITIALIZATION ROUTINE THAT WRITES ALL THE ERROR ; MESSAGES INTO FILE PPL.ERR, THEN FLUSHES ITSELF AND RETURNS TO ; THE MONITOR (OR DDT IF LOADED). IN THIS CASE, THE GLOBAL SYMBOLS ; ARE GIVEN VALUES OF THE FORM 700000+N, WHERE N IS THE RELATIVE LOCATION ; IN THE FILE OF THE APPROPRIATE MESSAGE, AND WILL CAUSE THE TTOS ; HANDLER TO READ PPL.ERR TO FIND THE MESSAGE ITSELF. ;THUS, IF FTEMF IS OFF, INSTALLING PPL IS DONE AS FOLLOWS: ; .LOAD @PPL ; .SSAVE DSK:PPL ; AND DEBUGGING IS DONE AS FOLLOWS: ; .DEBUG @DEBUG ; $G (ETC.) ;BUT IF FTEMF IS ON, THE PROCEDURE IS AS FOLLOWS: (FOR INSTALLATION:) ; .EXECUTE @PPL ; PPL.ERR WRITTEN ; .SSAVE DSK:PPL ; AND FOR DEBUGGING: ; .DEBUG @DEBUG ; $G (TO INITIALIZE) ; PPL.ERR WRITTEN ; DDT (ENTERS DDT AGAIN) ; $G (STARTS PPL ITSELF) ;WARNING************* ; MESSAG MUST BE LOADED LAST IF PPL IS BEING LOADED INTO ONE SEGMENT ; (WITH THE LOADER /H SWITCH). IN ANY CASE, MESSAG MUST BE AFTER ; BOTH LOW AND DDT. ;MESSAGES ASSEMBLED HERE ARE DECLARED BY ONE OF THE FOLLOWING ; MACRO CALLS: ; MESSAG LABEL, ; MESNCR LABEL, ; WHERE LABEL IS THE 5-CHARACTER MNEMONIC FOR THE MESSAGE. MESSAG ; AND MESNCR DIFFER ONLY IN THAT MESSAG APPENDS # AND MESNCR APPENDS ; ! TO THE MESSAGE. DEFINE MESSAG(L,M) < MSG L, > DEFINE MESNCR(L,M) < MSG L, > IFE FTEMF,< ;IF NO ERROR MESSAGE FILE CAPABILITY SUBTTL ASSEMBLED MESSAGE STRINGS (FTEMF=0) DEFINE MSG(L,M) < INTERN $'L XLIST $'L: SIXBIT \M\ LIST >> IFN FTEMF,< ;IF ERROR MESSAGE FILE CAPABILITY SUBTTL LOW-SEGMENT ERROR MESSAGE TABLE (FTEMF=1) MESTAB:!PHASE 700001 ;FIRST ERROR MESSAGE LOCATION WC== 1 ;RELATIVE LOCATION IN DIRST BLOCK DEFINE MSG(L,M) < XLIST ZZ== -1 IRPC M< ZZ== ZZ+1> IFG -200,< PHASE <<.-1>!177>+1 EXP 0 WC== ZZ/6+2 > $'L:: SIXBIT \M\ LIST >> MESSAG IATYP, MESSAG ILASG, MESSAG IUALT, MESSAG IPCON, MESSAG WNARC, MESSAG ILIDS, MESSAG CNARG, MESSAG FNNYI, MESSAG TMARG, MESSAG IPSEL, MESSAG SYSEL, MESSAG ATSEL, MESSAG DDMSE, MESSAG DDALT, MESSAG ISELS, MESSAG ILSEL, MESSAG ISELQ, MESSAG SSOUT, MESSAG SYLEN, MESSAG ALLEN, MESSAG MAKE2, MESSAG MAKE3,<3RD ARG. IS NOT OF PROPER TYPE> MESSAG DDMIS, MESSAG ICORI, MESSAG PDLOV, MESSAG ILMEM, MESSAG TTFAL, MESSAG EOFOP, MESSAG PDLSV, IFN FTSTAT,< MESSAG ALROP, MESSAG OPFAI, MESSAG ENFAI, MESSAG NOTOP, MESSAG STERR, > MESSAG IMPFN, MESSAG WARGU, MESSAG IARGU, MESSAG LXTER, MESSAG IFNBL,<"IF" EXPRESSION WAS NOT BOOLEAN> MESSAG WHNBL,<"WHILE" EXPRESSION WAS NOT BOOLEAN> MESSAG RPNBL,<"REPEAT" EXPRESSION WAS NOT BOOLEAN> MESSAG SCFNI, MESSAG ASGDL, MESSAG ERFMT, MESSAG WRDRD, MESSAG FNREQ, MESSAG DNXST, MESSAG ERFNS, MESSAG RECRD, MESSAG NPSAV, MESSAG OVSAV, MESSAG ICENV, MESSAG FAOCH, MESSAG BYOUR, MESSAG IMPDM, MESSAG NOTIN, MESSAG NOTOU, MESSAG NOTAV, MESSAG NOPEN, MESSAG FCNOR, MESSAG CLCH0, MESSAG BDEOF, MESSAG DTMIS, MESSAG NTDSK, MESSAG POSNP, MESSAG CHNIN, MESSAG CHNOU, MESSAG SQRNG, MESSAG ARGNG, MESSAG BSMNN, MESSAG DZEXH, MESSAG PZEXH, MESSAG CORRF, MESSAG IOBFF, MESSAG ERDGC, MESSAG DDMCP, MESSAG PLMFC, MESSAG PNTSY, MESSAG PNTUN, MESSAG DTALT, MESSAG NNFIT, MESSAG CXTEX, MESSAG ENVLS, MESSAG FORDR, MESSAG NOFOR, MESSAG IMPCX, MESSAG RTGLB, MESSAG GOGLB, MESSAG PRGNS, MESSAG GLBEN, MESSAG LLFOR, MESSAG STFOR, MESSAG ULFOR, MESSAG FCVNA,<"FOR" CONTROLLED VARIABLE NOT ARITHMETIC> MESSAG SENCN, MESSAG WNARG, MESSAG UNASG, MESSAG TRCZP, MESSAG NULVO, MESSAG ARGOR, MESSAG BDLHS, MESSAG ILGID, MESSAG ASNLR, MESSAG ILGOP, MESSAG ERSER, MESSAG LGOER, MESSAG ILLST, MESSAG STUNX, MESSAG STLNG, MESSAG NSFUN, MESSAG OFNHU, MESSAG FHDEL, MESSAG FNUNX, MESSAG ILEDC, MESSAG NSUDF, MESSAG NSLIN, ;INPUT/OUTPUT ERRORS MESSAG FILNF, MESSAG ILFIL, MESSAG NSUSR, MESSAG PROTV, MESSAG DIRFL, MESSAG ALRBM, MESSAG UFDER, MESSAG DFOQE, MESSAG WRLKE, MESSAG DEVER, MESSAG CHOPE, MESSAG TAPFL, MESSAG ENDOF, ;ERROR MESSAGES FOR LEX AND PARSE, WHICH NEED TO KNOW THE LENGTH ; OF THE ERROR MESSAGE STRING SO THAT THEY CAN POSITION THE POINTER ; UNDER THE USER'S ERROR. DEFINE LMESS(L,N,M) < INTERN %EML'N MESSAG L, %EML'N==ZZ > LMESS UTSTR,0, LMESS NODIG,1, LMESS MDECC,2, LMESS IDTLN,3, LMESS STRTL,4, LMESS OPSTL,5, LMESS INTOV,6, LMESS FLTOV,7, LMESS TMLEX,10, LMESS ILLIN,11, LMESS UNDOP,12, LMESS MFFNH,13, LMESS LBLER,14,