home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / CPM / TURBOPAS / RNF-PAS.LBR / RNF1.PQS / RNF1.PAS
Pascal/Delphi Source File  |  2000-06-30  |  3KB  |  111 lines

  1. (* --- rnf1 --- *)  (* segment procedure WriteErrorMessages *)
  2.  
  3.   procedure WriteErrorMessages;
  4.  
  5.   var
  6.     i: integer;
  7.     
  8.   procedure Fst15;
  9.   
  10.     begin
  11.       case i of
  12.          1: WRITE('UNRECOGNIZED SUB-MACRO NAME');
  13.          2: WRITE('Recursive submacro expression.');
  14.          3: WRITE('NON NUMERIC VALUE IN EXPRESSION');
  15.          4: WRITE('ARRAY INDEX OUT OF BOUNDS');   
  16.          5: WRITE('UNRECOGNIZED RELATIONAL OPERATOR');   
  17.          6: WRITE('ERROR IN EXPRESSION:');
  18.          7: WRITE('TOO MANY P OR LIST LEVELS');    
  19.          8: WRITE('TOO MANY POPS');    
  20.          9: WRITE('RECURSIVE MACRO CALL TO');   
  21.         10: WRITE('UNKNOWN COMMAND');    
  22.         11: WRITE('EXPECTING POSITIVE NUMBER; GOT');   
  23.         12: WRITE('LM < 0');
  24.         13: WRITE('LM > 136');    
  25.         14: WRITE('LM OUT OF RANGE');
  26.         15: WRITE('LM FOLLOWED BY')
  27.       end
  28.     end;
  29.     
  30.   procedure Snd15;
  31.     
  32.     begin
  33.       case i of
  34.         16: WRITE('RM > 136');
  35.         17: WRITE('RM < 1');    
  36.         18: WRITE('RM OUT OF RANGE');    
  37.         19: WRITE('RM FOLLOWED BY');    
  38.         20: WRITE('INVALID PS COLUMN');   
  39.         21: WRITE('INVALID PS LINES');    
  40.         22: WRITE('PARAGRAPH TP');   
  41.         23: WRITE('PARAGRAPH SPACE');   
  42.         24: WRITE('PARAGRAPH INDENT');    
  43.         25: WRITE('INDENT LESS THAN 0');   
  44.         26: WRITE('I FOLLOWED BY');    
  45.         27: WRITE('BAD HEADER LEVEL');
  46.         28: WRITE('SP FOLLOWED BY');    
  47.         29: WRITE('PAGE NUMBER WAS');
  48.         30: WRITE('LIST SPACING')
  49.       end
  50.     end;
  51.   
  52.   procedure Third15;
  53.  
  54.     begin
  55.       case i of
  56.         31: WRITE('NO ACTIVE LIST');
  57.         32: WRITE('NO ACTIVE LIST');
  58.         33: WRITE('TOO MANY PENDING FIGS'); 
  59.         34: WRITE('FIG FOLLOWED BY');    
  60.         35: WRITE('MISSING = IN MACRO DEF');
  61.         36: WRITE('NO MACRO NAME');
  62.         37: WRITE('NESTED MACRO DEFS');
  63.         38: WRITE('TOO MANY VARIABLES');   
  64.         39: WRITE('NEED VAR NAME; GOT');   
  65.         40: WRITE('UNDEDECLARED VAR');   
  66.         41: WRITE('INC FOLLOWED BY');    
  67.         42: WRITE('UNDECLARED VAR');
  68.         43: WRITE('DEC FOLLOWED BY');    
  69.         44: WRITE('NO ROOM FOR ARRAY ');
  70.         45: WRITE('BAD ARRAY SIZE')  
  71.       end
  72.     end;
  73.  
  74.   procedure Fourth15;
  75.     
  76.     begin
  77.       case i of
  78.         46: WRITE('ALREADY DECLARED');   
  79.         47: WRITE('NOT A VARIABLE SYMBOL');   
  80.         48: write('ILLEGAL NESTED INCLUDE COMMAND ');
  81.         49: write('INCLUDE FILE NOT PRESENT');
  82.         50: WRITE('TP FOLLOWED BY');    
  83.         51: WRITE('RIGHT SPACE ');    
  84.         52: WRITE('LINES FOLLOWED BY');    
  85.         53: write('Input line truncated');
  86.         54: write('Asis text past right margin.');
  87.         55: write('Unrecognized variable.');
  88.         56: write('Lone period.');
  89.         57: write('Macro stack overflow.');
  90.         58: write('Number too big.');
  91.         59: write('Invalid character constant.')
  92.       end
  93.     end;
  94.  
  95.   begin
  96.     for i := 1 to MaxErrors do
  97.       if i in ErrorSet then
  98.         begin
  99.           write(' >> ',i:2, ': ');
  100.           case (i - 1) div 15 of
  101.             0: Fst15;
  102.             1: Snd15;
  103.             2: Third15;
  104.             3: Fourth15;
  105.           end;
  106.           writeln;
  107.         end;
  108.   end;
  109.           
  110.  
  111.