home *** CD-ROM | disk | FTP | other *** search
/ Atari FTP / ATARI_FTP_0693.zip / ATARI_FTP_0693 / Tex / texsrc.arc / TEX1.C < prev    next >
C/C++ Source or Header  |  1988-09-14  |  47KB  |  2,266 lines

  1. overlay "tex1"
  2. #define EXTERN extern
  3. #include "texd.h"
  4.  
  5. zshortdisplay ( p ) 
  6. integer p ; 
  7. {r_shortdisplay 
  8.   integer n ; 
  9.   while ( p > memmin ) { 
  10.     if ( ( p >= himemmin ) ) 
  11.     {
  12.       if ( p <= memend ) 
  13.       {
  14.     if ( mem [(long) p ] .hh.b0 != fontinshortd ) 
  15.     {
  16.       if ( ( mem [(long) p ] .hh.b0 < 0 ) || ( mem [(long) p ] .hh.b0 > fontmax ) ) 
  17.       printchar ( 42 ) ; 
  18.       else printesc ( hash [ 3268 + mem [(long) p ] .hh.b0 ] .v.RH ) ; 
  19.       printchar ( 32 ) ; 
  20.       fontinshortd = mem [(long) p ] .hh.b0 ; 
  21.     } 
  22.     printASCII ( mem [(long) p ] .hh.b1 ) ; 
  23.       } 
  24.     } 
  25.     else switch ( mem [(long) p ] .hh.b0 ) 
  26.     {case 0 : 
  27.     case 1 : 
  28.     case 3 : 
  29.     case 8 : 
  30.     case 4 : 
  31.     case 5 : 
  32.     case 13 : 
  33.       print ( 177 ) ; 
  34.       break ; 
  35.     case 2 : 
  36.       printchar ( 124 ) ; 
  37.       break ; 
  38.     case 10 : 
  39.       if ( mem [(long) p + 1 ] .hh .v.LH != 0 ) 
  40.       printchar ( 32 ) ; 
  41.       break ; 
  42.     case 9 : 
  43.       printchar ( 36 ) ; 
  44.       break ; 
  45.     case 6 : 
  46.       shortdisplay ( mem [(long) p + 1 ] .hh .v.RH ) ; 
  47.       break ; 
  48.     case 7 : 
  49.       {
  50.     shortdisplay ( mem [(long) p + 1 ] .hh .v.LH ) ; 
  51.     shortdisplay ( mem [(long) p + 1 ] .hh .v.RH ) ; 
  52.     n = mem [(long) p ] .hh.b1 ; 
  53.     while ( n > 0 ) { 
  54.       if ( mem [(long) p ] .hh .v.RH != 0 ) 
  55.       p = mem [(long) p ] .hh .v.RH ; 
  56.       decr ( n ) ; 
  57.     } 
  58.       } 
  59.       break ; 
  60.     default : 
  61.       ; 
  62.       break ; 
  63.     } 
  64.     p = mem [(long) p ] .hh .v.RH ; 
  65.   } 
  66. zprintfontand ( p ) 
  67. integer p ; 
  68. {r_printfontand 
  69.   if ( p > memend ) 
  70.   printesc ( 178 ) ; 
  71.   else { 
  72.     if ( ( mem [(long) p ] .hh.b0 < 0 ) || ( mem [(long) p ] .hh.b0 > fontmax ) ) 
  73.     printchar ( 42 ) ; 
  74.     else printesc ( hash [ 3268 + mem [(long) p ] .hh.b0 ] .v.RH ) ; 
  75.     printchar ( 32 ) ; 
  76.     printASCII ( mem [(long) p ] .hh.b1 ) ; 
  77.   } 
  78. zprintmark ( p ) 
  79. integer p ; 
  80. {r_printmark 
  81.   printchar ( 123 ) ; 
  82.   if ( ( p < himemmin ) || ( p > memend ) ) 
  83.   printesc ( 178 ) ; 
  84.   else showtokenlis ( mem [(long) p ] .hh .v.RH , 0 , maxprintline - 10 ) ; 
  85.   printchar ( 125 ) ; 
  86. zprintruledim ( d ) 
  87. scaled d ; 
  88. {r_printruledim 
  89.   if ( ( d == - 1073741824 ) ) 
  90.   printchar ( 42 ) ; 
  91.   else printscaled ( d ) ; 
  92. zprintglue ( d , order , s ) 
  93. scaled d ; 
  94. integer order ; 
  95. strnumber s ; 
  96. {r_printglue 
  97.   printscaled ( d ) ; 
  98.   if ( ( order < 0 ) || ( order > 3 ) ) 
  99.   print ( 179 ) ; 
  100.   else if ( order > 0 ) 
  101.   {
  102.     print ( 180 ) ; 
  103.     while ( order > 1 ) { 
  104.       printchar ( 108 ) ; 
  105.       decr ( order ) ; 
  106.     } 
  107.   } 
  108.   else if ( s != 0 ) 
  109.   print ( s ) ; 
  110. zprintspec ( p , s ) 
  111. integer p ; 
  112. strnumber s ; 
  113. {r_printspec 
  114.   if ( ( p < memmin ) || ( p >= lomemmax ) ) 
  115.   printchar ( 42 ) ; 
  116.   else { 
  117.     printscaled ( mem [(long) p + 1 ] .cint ) ; 
  118.     if ( s != 0 ) 
  119.     print ( s ) ; 
  120.     if ( mem [(long) p + 2 ] .cint != 0 ) 
  121.     {
  122.       print ( 181 ) ; 
  123.       printglue ( mem [(long) p + 2 ] .cint , mem [(long) p ] .hh.b0 , s ) ; 
  124.     } 
  125.     if ( mem [(long) p + 3 ] .cint != 0 ) 
  126.     {
  127.       print ( 182 ) ; 
  128.       printglue ( mem [(long) p + 3 ] .cint , mem [(long) p ] .hh.b1 , s ) ; 
  129.     } 
  130.   } 
  131. zprintfamandc ( p ) 
  132. halfword p ; 
  133. {r_printfamandc 
  134.   printesc ( 329 ) ; 
  135.   printint ( mem [(long) p ] .hh.b0 ) ; 
  136.   printchar ( 32 ) ; 
  137.   printASCII ( mem [(long) p ] .hh.b1 ) ; 
  138. zprintdelimit ( p ) 
  139. halfword p ; 
  140. {r_printdelimit 
  141.   integer a ; 
  142.   a = mem [(long) p ] .qqqq .b0 * 256 + mem [(long) p ] .qqqq .b1 ; 
  143.   a = a * 4096 + mem [(long) p ] .qqqq .b2 * 256 + mem [(long) p ] .qqqq .b3 ; 
  144.   if ( a < 0 ) 
  145.   printint ( a ) ; 
  146.   else printhex ( a ) ; 
  147. zprintsubsidi ( p , c ) 
  148. halfword p ; 
  149. ASCIIcode c ; 
  150. {r_printsubsidi 
  151.   if ( ( poolptr - strstart [ strptr ] ) >= depththresho ) 
  152.   {
  153.     if ( mem [(long) p ] .hh .v.RH != 0 ) 
  154.     print ( 183 ) ; 
  155.   } 
  156.   else { 
  157.     {
  158.       strpool [ poolptr ] = c ; 
  159.       incr ( poolptr ) ; 
  160.     } 
  161.     tempptr = p ; 
  162.     switch ( mem [(long) p ] .hh .v.RH ) 
  163.     {case 1 : 
  164.       {
  165.     println () ; 
  166.     printcurrent () ; 
  167.     printfamandc ( p ) ; 
  168.       } 
  169.       break ; 
  170.     case 2 : 
  171.       showinfo () ; 
  172.       break ; 
  173.     case 3 : 
  174.       if ( mem [(long) p ] .hh .v.LH == 0 ) 
  175.       {
  176.     println () ; 
  177.     printcurrent () ; 
  178.     print ( 713 ) ; 
  179.       } 
  180.       else showinfo () ; 
  181.       break ; 
  182.     default : 
  183.       ; 
  184.       break ; 
  185.     } 
  186.     decr ( poolptr ) ; 
  187.   } 
  188. zprintstyle ( c ) 
  189. integer c ; 
  190. {r_printstyle 
  191.   switch ( c / 2 ) 
  192.   {case 0 : 
  193.     printesc ( 714 ) ; 
  194.     break ; 
  195.   case 1 : 
  196.     printesc ( 715 ) ; 
  197.     break ; 
  198.   case 2 : 
  199.     printesc ( 716 ) ; 
  200.     break ; 
  201.   case 3 : 
  202.     printesc ( 717 ) ; 
  203.     break ; 
  204.   default : 
  205.     print ( 718 ) ; 
  206.     break ; 
  207.   } 
  208. zprintskippar ( n ) 
  209. integer n ; 
  210. {r_printskippar 
  211.   switch ( n ) 
  212.   {case 0 : 
  213.     printesc ( 241 ) ; 
  214.     break ; 
  215.   case 1 : 
  216.     printesc ( 242 ) ; 
  217.     break ; 
  218.   case 2 : 
  219.     printesc ( 243 ) ; 
  220.     break ; 
  221.   case 3 : 
  222.     printesc ( 244 ) ; 
  223.     break ; 
  224.   case 4 : 
  225.     printesc ( 245 ) ; 
  226.     break ; 
  227.   case 5 : 
  228.     printesc ( 246 ) ; 
  229.     break ; 
  230.   case 6 : 
  231.     printesc ( 247 ) ; 
  232.     break ; 
  233.   case 7 : 
  234.     printesc ( 248 ) ; 
  235.     break ; 
  236.   case 8 : 
  237.     printesc ( 249 ) ; 
  238.     break ; 
  239.   case 9 : 
  240.     printesc ( 250 ) ; 
  241.     break ; 
  242.   case 10 : 
  243.     printesc ( 251 ) ; 
  244.     break ; 
  245.   case 11 : 
  246.     printesc ( 252 ) ; 
  247.     break ; 
  248.   case 12 : 
  249.     printesc ( 253 ) ; 
  250.     break ; 
  251.   case 13 : 
  252.     printesc ( 254 ) ; 
  253.     break ; 
  254.   case 14 : 
  255.     printesc ( 255 ) ; 
  256.     break ; 
  257.   case 15 : 
  258.     printesc ( 256 ) ; 
  259.     break ; 
  260.   case 16 : 
  261.     printesc ( 257 ) ; 
  262.     break ; 
  263.   case 17 : 
  264.     printesc ( 258 ) ; 
  265.     break ; 
  266.   default : 
  267.     print ( 259 ) ; 
  268.     break ; 
  269.   } 
  270. zshownodelist ( p ) 
  271. integer p ; 
  272. {/* 10 */ r_shownodelist 
  273.   integer n ; 
  274.   real g ; 
  275.   if ( ( poolptr - strstart [ strptr ] ) > depththresho ) 
  276.   {
  277.     if ( p > 0 ) 
  278.     print ( 183 ) ; 
  279.     return ; 
  280.   } 
  281.   n = 0 ; 
  282.   while ( p > memmin ) { 
  283.     println () ; 
  284.     printcurrent () ; 
  285.     if ( p > memend ) 
  286.     {
  287.       print ( 184 ) ; 
  288.       return ; 
  289.     } 
  290.     incr ( n ) ; 
  291.     if ( n > breadthmax ) 
  292.     {
  293.       print ( 185 ) ; 
  294.       return ; 
  295.     } 
  296.     if ( ( p >= himemmin ) ) 
  297.     printfontand ( p ) ; 
  298.     else switch ( mem [(long) p ] .hh.b0 ) 
  299.     {case 0 : 
  300.     case 1 : 
  301.     case 13 : 
  302.       {
  303.     if ( mem [(long) p ] .hh.b0 == 0 ) 
  304.     printesc ( 104 ) ; 
  305.     else if ( mem [(long) p ] .hh.b0 == 1 ) 
  306.     printesc ( 118 ) ; 
  307.     else printesc ( 187 ) ; 
  308.     print ( 188 ) ; 
  309.     printscaled ( mem [(long) p + 3 ] .cint ) ; 
  310.     printchar ( 43 ) ; 
  311.     printscaled ( mem [(long) p + 2 ] .cint ) ; 
  312.     print ( 189 ) ; 
  313.     printscaled ( mem [(long) p + 1 ] .cint ) ; 
  314.     if ( mem [(long) p ] .hh.b0 == 13 ) 
  315.     {
  316.       if ( mem [(long) p ] .hh.b1 != 0 ) 
  317.       {
  318.         print ( 155 ) ; 
  319.         printint ( mem [(long) p ] .hh.b1 + 1 ) ; 
  320.         print ( 191 ) ; 
  321.       } 
  322.       if ( mem [(long) p + 6 ] .cint != 0 ) 
  323.       {
  324.         print ( 192 ) ; 
  325.         printglue ( mem [(long) p + 6 ] .cint , mem [(long) p + 5 ] .hh.b1 , 0 ) ; 
  326.       } 
  327.       if ( mem [(long) p + 4 ] .cint != 0 ) 
  328.       {
  329.         print ( 193 ) ; 
  330.         printglue ( mem [(long) p + 4 ] .cint , mem [(long) p + 5 ] .hh.b0 , 0 ) ; 
  331.       } 
  332.     } 
  333.     else { 
  334.       g = mem [(long) p + 6 ] .gr ; 
  335.       if ( ( g != 0.0 ) && ( mem [(long) p + 5 ] .hh.b0 != 0 ) ) 
  336.       {
  337.         print ( 194 ) ; 
  338.         if ( mem [(long) p + 5 ] .hh.b0 == 2 ) 
  339.         print ( 195 ) ; 
  340.         if ( fabs ( g ) > 20000.0 ) 
  341.         {
  342.           if ( g > 0.0 ) 
  343.           printchar ( 62 ) ; 
  344.           else print ( 196 ) ; 
  345.           printglue ( 20000 * 65536 , mem [(long) p + 5 ] .hh.b1 , 0 ) ; 
  346.         } 
  347.         else printglue ( round ( 65536 * g ) , mem [(long) p + 5 ] .hh.b1 , 0 ) 
  348.         ; 
  349.       } 
  350.       if ( mem [(long) p + 4 ] .cint != 0 ) 
  351.       {
  352.         print ( 190 ) ; 
  353.         printscaled ( mem [(long) p + 4 ] .cint ) ; 
  354.       } 
  355.     } 
  356.     {
  357.       {
  358.         strpool [ poolptr ] = 46 ; 
  359.         incr ( poolptr ) ; 
  360.       } 
  361.       shownodelist ( mem [(long) p + 5 ] .hh .v.RH ) ; 
  362.       decr ( poolptr ) ; 
  363.     } 
  364.       } 
  365.       break ; 
  366.     case 2 : 
  367.       {
  368.     printesc ( 197 ) ; 
  369.     printruledim ( mem [(long) p + 3 ] .cint ) ; 
  370.     printchar ( 43 ) ; 
  371.     printruledim ( mem [(long) p + 2 ] .cint ) ; 
  372.     print ( 189 ) ; 
  373.     printruledim ( mem [(long) p + 1 ] .cint ) ; 
  374.       } 
  375.       break ; 
  376.     case 3 : 
  377.       {
  378.     printesc ( 198 ) ; 
  379.     printint ( mem [(long) p ] .hh.b1 ) ; 
  380.     print ( 199 ) ; 
  381.     printscaled ( mem [(long) p + 3 ] .cint ) ; 
  382.     print ( 200 ) ; 
  383.     printspec ( mem [(long) p + 4 ] .hh .v.RH , 0 ) ; 
  384.     printchar ( 44 ) ; 
  385.     printscaled ( mem [(long) p + 2 ] .cint ) ; 
  386.     print ( 201 ) ; 
  387.     printint ( mem [(long) p + 1 ] .cint ) ; 
  388.     {
  389.       {
  390.         strpool [ poolptr ] = 46 ; 
  391.         incr ( poolptr ) ; 
  392.       } 
  393.       shownodelist ( mem [(long) p + 4 ] .hh .v.LH ) ; 
  394.       decr ( poolptr ) ; 
  395.     } 
  396.       } 
  397.       break ; 
  398.     case 8 : 
  399.       switch ( mem [(long) p ] .hh.b1 ) 
  400.       {case 0 : 
  401.     {
  402.       printwritewh ( 1129 , p ) ; 
  403.       printchar ( 61 ) ; 
  404.       printfilenam ( mem [(long) p + 1 ] .hh .v.RH , mem [(long) p + 2 ] .hh .v.LH , 
  405.       mem [(long) p + 2 ] .hh .v.RH ) ; 
  406.     } 
  407.     break ; 
  408.       case 1 : 
  409.     {
  410.       printwritewh ( 452 , p ) ; 
  411.       printmark ( mem [(long) p + 1 ] .hh .v.RH ) ; 
  412.     } 
  413.     break ; 
  414.       case 2 : 
  415.     printwritewh ( 1130 , p ) ; 
  416.     break ; 
  417.       case 3 : 
  418.     {
  419.       printesc ( 1131 ) ; 
  420.       printmark ( mem [(long) p + 1 ] .hh .v.RH ) ; 
  421.     } 
  422.     break ; 
  423.       default : 
  424.     print ( 1135 ) ; 
  425.     break ; 
  426.       } 
  427.       break ; 
  428.     case 10 : 
  429.       if ( mem [(long) p ] .hh.b1 >= 100 ) 
  430.       {
  431.     printesc ( 206 ) ; 
  432.     if ( mem [(long) p ] .hh.b1 == 101 ) 
  433.     printchar ( 99 ) ; 
  434.     else if ( mem [(long) p ] .hh.b1 == 102 ) 
  435.     printchar ( 120 ) ; 
  436.     print ( 207 ) ; 
  437.     printspec ( mem [(long) p + 1 ] .hh .v.LH , 0 ) ; 
  438.     {
  439.       {
  440.         strpool [ poolptr ] = 46 ; 
  441.         incr ( poolptr ) ; 
  442.       } 
  443.       shownodelist ( mem [(long) p + 1 ] .hh .v.RH ) ; 
  444.       decr ( poolptr ) ; 
  445.     } 
  446.       } 
  447.       else { 
  448.     printesc ( 202 ) ; 
  449.     if ( mem [(long) p ] .hh.b1 != 0 ) 
  450.     {
  451.       printchar ( 40 ) ; 
  452.       if ( mem [(long) p ] .hh.b1 < 98 ) 
  453.       printskippar ( mem [(long) p ] .hh.b1 - 1 ) ; 
  454.       else if ( mem [(long) p ] .hh.b1 == 98 ) 
  455.       printesc ( 203 ) ; 
  456.       else printesc ( 204 ) ; 
  457.       printchar ( 41 ) ; 
  458.     } 
  459.     if ( mem [(long) p ] .hh.b1 != 98 ) 
  460.     {
  461.       printchar ( 32 ) ; 
  462.       if ( mem [(long) p ] .hh.b1 < 98 ) 
  463.       printspec ( mem [(long) p + 1 ] .hh .v.LH , 0 ) ; 
  464.       else printspec ( mem [(long) p + 1 ] .hh .v.LH , 205 ) ; 
  465.     } 
  466.       } 
  467.       break ; 
  468.     case 11 : 
  469.       if ( mem [(long) p ] .hh.b1 != 99 ) 
  470.       {
  471.     printesc ( 208 ) ; 
  472.     if ( mem [(long) p ] .hh.b1 != 0 ) 
  473.     printchar ( 32 ) ; 
  474.     printscaled ( mem [(long) p + 1 ] .cint ) ; 
  475.     if ( mem [(long) p ] .hh.b1 == 2 ) 
  476.     print ( 209 ) ; 
  477.       } 
  478.       else { 
  479.     printesc ( 210 ) ; 
  480.     printscaled ( mem [(long) p + 1 ] .cint ) ; 
  481.     print ( 205 ) ; 
  482.       } 
  483.       break ; 
  484.     case 9 : 
  485.       {
  486.     printesc ( 211 ) ; 
  487.     if ( mem [(long) p ] .hh.b1 == 0 ) 
  488.     print ( 212 ) ; 
  489.     else print ( 213 ) ; 
  490.     if ( mem [(long) p + 1 ] .cint != 0 ) 
  491.     {
  492.       print ( 214 ) ; 
  493.       printscaled ( mem [(long) p + 1 ] .cint ) ; 
  494.     } 
  495.       } 
  496.       break ; 
  497.     case 6 : 
  498.       {
  499.     printfontand ( p + 1 ) ; 
  500.     print ( 215 ) ; 
  501.     fontinshortd = mem [(long) p + 1 ] .hh.b0 ; 
  502.     shortdisplay ( mem [(long) p + 1 ] .hh .v.RH ) ; 
  503.     printchar ( 41 ) ; 
  504.       } 
  505.       break ; 
  506.     case 12 : 
  507.       {
  508.     printesc ( 216 ) ; 
  509.     printint ( mem [(long) p + 1 ] .cint ) ; 
  510.       } 
  511.       break ; 
  512.     case 7 : 
  513.       {
  514.     printesc ( 217 ) ; 
  515.     if ( mem [(long) p ] .hh.b1 > 0 ) 
  516.     {
  517.       print ( 218 ) ; 
  518.       printint ( mem [(long) p ] .hh.b1 ) ; 
  519.     } 
  520.     {
  521.       {
  522.         strpool [ poolptr ] = 46 ; 
  523.         incr ( poolptr ) ; 
  524.       } 
  525.       shownodelist ( mem [(long) p + 1 ] .hh .v.LH ) ; 
  526.       decr ( poolptr ) ; 
  527.     } 
  528.     {
  529.       strpool [ poolptr ] = 124 ; 
  530.       incr ( poolptr ) ; 
  531.     } 
  532.     shownodelist ( mem [(long) p + 1 ] .hh .v.RH ) ; 
  533.     decr ( poolptr ) ; 
  534.       } 
  535.       break ; 
  536.     case 4 : 
  537.       {
  538.     printesc ( 219 ) ; 
  539.     printmark ( mem [(long) p + 1 ] .cint ) ; 
  540.       } 
  541.       break ; 
  542.     case 5 : 
  543.       {
  544.     printesc ( 220 ) ; 
  545.     {
  546.       {
  547.         strpool [ poolptr ] = 46 ; 
  548.         incr ( poolptr ) ; 
  549.       } 
  550.       shownodelist ( mem [(long) p + 1 ] .cint ) ; 
  551.       decr ( poolptr ) ; 
  552.     } 
  553.       } 
  554.       break ; 
  555.     case 14 : 
  556.       printstyle ( mem [(long) p ] .hh.b1 ) ; 
  557.       break ; 
  558.     case 15 : 
  559.       {
  560.     printesc ( 384 ) ; 
  561.     {
  562.       strpool [ poolptr ] = 68 ; 
  563.       incr ( poolptr ) ; 
  564.     } 
  565.     shownodelist ( mem [(long) p + 1 ] .hh .v.LH ) ; 
  566.     decr ( poolptr ) ; 
  567.     {
  568.       strpool [ poolptr ] = 84 ; 
  569.       incr ( poolptr ) ; 
  570.     } 
  571.     shownodelist ( mem [(long) p + 1 ] .hh .v.RH ) ; 
  572.     decr ( poolptr ) ; 
  573.     {
  574.       strpool [ poolptr ] = 83 ; 
  575.       incr ( poolptr ) ; 
  576.     } 
  577.     shownodelist ( mem [(long) p + 2 ] .hh .v.LH ) ; 
  578.     decr ( poolptr ) ; 
  579.     {
  580.       strpool [ poolptr ] = 115 ; 
  581.       incr ( poolptr ) ; 
  582.     } 
  583.     shownodelist ( mem [(long) p + 2 ] .hh .v.RH ) ; 
  584.     decr ( poolptr ) ; 
  585.       } 
  586.       break ; 
  587.     case 16 : 
  588.     case 17 : 
  589.     case 18 : 
  590.     case 19 : 
  591.     case 20 : 
  592.     case 21 : 
  593.     case 22 : 
  594.     case 23 : 
  595.     case 24 : 
  596.     case 27 : 
  597.     case 26 : 
  598.     case 29 : 
  599.     case 28 : 
  600.     case 30 : 
  601.     case 31 : 
  602.       {
  603.     switch ( mem [(long) p ] .hh.b0 ) 
  604.     {case 16 : 
  605.       printesc ( 719 ) ; 
  606.       break ; 
  607.     case 17 : 
  608.       printesc ( 720 ) ; 
  609.       break ; 
  610.     case 18 : 
  611.       printesc ( 721 ) ; 
  612.       break ; 
  613.     case 19 : 
  614.       printesc ( 722 ) ; 
  615.       break ; 
  616.     case 20 : 
  617.       printesc ( 723 ) ; 
  618.       break ; 
  619.     case 21 : 
  620.       printesc ( 724 ) ; 
  621.       break ; 
  622.     case 22 : 
  623.       printesc ( 725 ) ; 
  624.       break ; 
  625.     case 23 : 
  626.       printesc ( 726 ) ; 
  627.       break ; 
  628.     case 27 : 
  629.       printesc ( 727 ) ; 
  630.       break ; 
  631.     case 26 : 
  632.       printesc ( 728 ) ; 
  633.       break ; 
  634.     case 29 : 
  635.       printesc ( 397 ) ; 
  636.       break ; 
  637.     case 24 : 
  638.       {
  639.         printesc ( 391 ) ; 
  640.         printdelimit ( p + 4 ) ; 
  641.       } 
  642.       break ; 
  643.     case 28 : 
  644.       {
  645.         printesc ( 367 ) ; 
  646.         printfamandc ( p + 4 ) ; 
  647.       } 
  648.       break ; 
  649.     case 30 : 
  650.       {
  651.         printesc ( 729 ) ; 
  652.         printdelimit ( p + 1 ) ; 
  653.       } 
  654.       break ; 
  655.     case 31 : 
  656.       {
  657.         printesc ( 730 ) ; 
  658.         printdelimit ( p + 1 ) ; 
  659.       } 
  660.       break ; 
  661.     } 
  662.     if ( mem [(long) p ] .hh.b1 != 0 ) 
  663.     if ( mem [(long) p ] .hh.b1 == 1 ) 
  664.     printesc ( 731 ) ; 
  665.     else printesc ( 732 ) ; 
  666.     if ( mem [(long) p ] .hh.b0 < 30 ) 
  667.     printsubsidi ( p + 1 , 46 ) ; 
  668.     printsubsidi ( p + 2 , 94 ) ; 
  669.     printsubsidi ( p + 3 , 95 ) ; 
  670.       } 
  671.       break ; 
  672.     case 25 : 
  673.       {
  674.     printesc ( 733 ) ; 
  675.     if ( mem [(long) p + 1 ] .cint == 1073741824 ) 
  676.     print ( 734 ) ; 
  677.     else printscaled ( mem [(long) p + 1 ] .cint ) ; 
  678.     if ( ( mem [(long) p + 4 ] .qqqq .b0 != 0 ) || ( mem [(long) p + 4 ] .qqqq .b1 != 
  679.     0 ) || ( mem [(long) p + 4 ] .qqqq .b2 != 0 ) || ( mem [(long) p + 4 ] .qqqq .b3 
  680.     != 0 ) ) 
  681.     {
  682.       print ( 735 ) ; 
  683.       printdelimit ( p + 4 ) ; 
  684.     } 
  685.     if ( ( mem [(long) p + 5 ] .qqqq .b0 != 0 ) || ( mem [(long) p + 5 ] .qqqq .b1 != 
  686.     0 ) || ( mem [(long) p + 5 ] .qqqq .b2 != 0 ) || ( mem [(long) p + 5 ] .qqqq .b3 
  687.     != 0 ) ) 
  688.     {
  689.       print ( 736 ) ; 
  690.       printdelimit ( p + 5 ) ; 
  691.     } 
  692.     printsubsidi ( p + 2 , 92 ) ; 
  693.     printsubsidi ( p + 3 , 47 ) ; 
  694.       } 
  695.       break ; 
  696.     default : 
  697.       print ( 186 ) ; 
  698.       break ; 
  699.     } 
  700.     p = mem [(long) p ] .hh .v.RH ; 
  701.   } 
  702. zshowbox ( p ) 
  703. halfword p ; 
  704. {r_showbox 
  705.   depththresho = eqtb [ 5292 ] .cint ; 
  706.   breadthmax = eqtb [ 5291 ] .cint ; 
  707.   if ( breadthmax <= 0 ) 
  708.   breadthmax = 5 ; 
  709.   if ( poolptr + depththresho >= poolsize ) 
  710.   depththresho = poolsize - poolptr - 1 ; 
  711.   shownodelist ( p ) ; 
  712.   println () ; 
  713. zdeletetokenr ( p ) 
  714. halfword p ; 
  715. {r_deletetokenr 
  716.   if ( mem [(long) p ] .hh .v.LH == 0 ) 
  717.   flushlist ( p ) ; 
  718.   else decr ( mem [(long) p ] .hh .v.LH ) ; 
  719. zdeletegluere ( p ) 
  720. halfword p ; 
  721. {r_deletegluere 
  722.   if ( mem [(long) p ] .hh .v.RH == 0 ) 
  723.   freenode ( p , 4 ) ; 
  724.   else decr ( mem [(long) p ] .hh .v.RH ) ; 
  725. zflushnodelis ( p ) 
  726. halfword p ; 
  727. {/* 30 */ r_flushnodelis 
  728.   halfword q ; 
  729.   while ( p != 0 ) { 
  730.     q = mem [(long) p ] .hh .v.RH ; 
  731.     if ( ( p >= himemmin ) ) 
  732.     {
  733.       mem [(long) p ] .hh .v.RH = avail ; 
  734.       avail = p ; 
  735.  
  736. #ifdef STAT
  737.       decr ( dynused ) ; 
  738. #endif /* STAT */
  739.     } 
  740.     else { 
  741.       switch ( mem [(long) p ] .hh.b0 ) 
  742.       {case 0 : 
  743.       case 1 : 
  744.       case 13 : 
  745.     {
  746.       flushnodelis ( mem [(long) p + 5 ] .hh .v.RH ) ; 
  747.       freenode ( p , 7 ) ; 
  748.       goto lab30 ; 
  749.     } 
  750.     break ; 
  751.       case 2 : 
  752.     {
  753.       freenode ( p , 4 ) ; 
  754.       goto lab30 ; 
  755.     } 
  756.     break ; 
  757.       case 3 : 
  758.     {
  759.       flushnodelis ( mem [(long) p + 4 ] .hh .v.LH ) ; 
  760.       deletegluere ( mem [(long) p + 4 ] .hh .v.RH ) ; 
  761.       freenode ( p , 5 ) ; 
  762.       goto lab30 ; 
  763.     } 
  764.     break ; 
  765.       case 8 : 
  766.     {
  767.       switch ( mem [(long) p ] .hh.b1 ) 
  768.       {case 0 : 
  769.         freenode ( p , 3 ) ; 
  770.         break ; 
  771.       case 1 : 
  772.       case 3 : 
  773.         {
  774.           deletetokenr ( mem [(long) p + 1 ] .hh .v.RH ) ; 
  775.           freenode ( p , 2 ) ; 
  776.           goto lab30 ; 
  777.         } 
  778.         break ; 
  779.       case 2 : 
  780.         freenode ( p , 2 ) ; 
  781.         break ; 
  782.       default : 
  783.         confusion ( 1137 ) ; 
  784.         break ; 
  785.       } 
  786.       goto lab30 ; 
  787.     } 
  788.     break ; 
  789.       case 10 : 
  790.     {
  791.       {
  792.         if ( mem [(long) mem [(long) p + 1 ] .hh .v.LH ] .hh .v.RH == 0 ) 
  793.         freenode ( mem [(long) p + 1 ] .hh .v.LH , 4 ) ; 
  794.         else decr ( mem [(long) mem [(long) p + 1 ] .hh .v.LH ] .hh .v.RH ) ; 
  795.       } 
  796.       if ( mem [(long) p + 1 ] .hh .v.RH != 0 ) 
  797.       flushnodelis ( mem [(long) p + 1 ] .hh .v.RH ) ; 
  798.     } 
  799.     break ; 
  800.       case 11 : 
  801.       case 9 : 
  802.       case 12 : 
  803.  
  804.     break ; 
  805.       case 6 : 
  806.     flushnodelis ( mem [(long) p + 1 ] .hh .v.RH ) ; 
  807.     break ; 
  808.       case 4 : 
  809.     deletetokenr ( mem [(long) p + 1 ] .cint ) ; 
  810.     break ; 
  811.       case 7 : 
  812.     {
  813.       flushnodelis ( mem [(long) p + 1 ] .hh .v.LH ) ; 
  814.       flushnodelis ( mem [(long) p + 1 ] .hh .v.RH ) ; 
  815.     } 
  816.     break ; 
  817.       case 5 : 
  818.     flushnodelis ( mem [(long) p + 1 ] .cint ) ; 
  819.     break ; 
  820.       case 14 : 
  821.     {
  822.       freenode ( p , 3 ) ; 
  823.       goto lab30 ; 
  824.     } 
  825.     break ; 
  826.       case 15 : 
  827.     {
  828.       flushnodelis ( mem [(long) p + 1 ] .hh .v.LH ) ; 
  829.       flushnodelis ( mem [(long) p + 1 ] .hh .v.RH ) ; 
  830.       flushnodelis ( mem [(long) p + 2 ] .hh .v.LH ) ; 
  831.       flushnodelis ( mem [(long) p + 2 ] .hh .v.RH ) ; 
  832.       freenode ( p , 3 ) ; 
  833.       goto lab30 ; 
  834.     } 
  835.     break ; 
  836.       case 16 : 
  837.       case 17 : 
  838.       case 18 : 
  839.       case 19 : 
  840.       case 20 : 
  841.       case 21 : 
  842.       case 22 : 
  843.       case 23 : 
  844.       case 24 : 
  845.       case 27 : 
  846.       case 26 : 
  847.       case 29 : 
  848.       case 28 : 
  849.     {
  850.       if ( mem [(long) p + 1 ] .hh .v.RH >= 2 ) 
  851.       flushnodelis ( mem [(long) p + 1 ] .hh .v.LH ) ; 
  852.       if ( mem [(long) p + 2 ] .hh .v.RH >= 2 ) 
  853.       flushnodelis ( mem [(long) p + 2 ] .hh .v.LH ) ; 
  854.       if ( mem [(long) p + 3 ] .hh .v.RH >= 2 ) 
  855.       flushnodelis ( mem [(long) p + 3 ] .hh .v.LH ) ; 
  856.       if ( mem [(long) p ] .hh.b0 == 24 ) 
  857.       freenode ( p , 5 ) ; 
  858.       else if ( mem [(long) p ] .hh.b0 == 28 ) 
  859.       freenode ( p , 5 ) ; 
  860.       else freenode ( p , 4 ) ; 
  861.       goto lab30 ; 
  862.     } 
  863.     break ; 
  864.       case 30 : 
  865.       case 31 : 
  866.     {
  867.       freenode ( p , 4 ) ; 
  868.       goto lab30 ; 
  869.     } 
  870.     break ; 
  871.       case 25 : 
  872.     {
  873.       flushnodelis ( mem [(long) p + 2 ] .hh .v.LH ) ; 
  874.       flushnodelis ( mem [(long) p + 3 ] .hh .v.LH ) ; 
  875.       freenode ( p , 6 ) ; 
  876.       goto lab30 ; 
  877.     } 
  878.     break ; 
  879.       default : 
  880.     confusion ( 221 ) ; 
  881.     break ; 
  882.       } 
  883.       freenode ( p , 2 ) ; 
  884.       lab30: ; 
  885.     } 
  886.     p = q ; 
  887.   } 
  888. halfword zcopynodelist ( p ) 
  889. halfword p ; 
  890. {register halfword Result; r_copynodelist 
  891.   halfword h ; 
  892.   halfword q ; 
  893.   halfword r ; 
  894.   quarterword words ; 
  895.   h = getavail () ; 
  896.   q = h ; 
  897.   while ( p != 0 ) { 
  898.     words = 1 ; 
  899.     if ( ( p >= himemmin ) ) 
  900.     r = getavail () ; 
  901.     else switch ( mem [(long) p ] .hh.b0 ) 
  902.     {case 0 : 
  903.     case 1 : 
  904.     case 13 : 
  905.       {
  906.     r = getnode ( 7 ) ; 
  907.     mem [(long) r + 6 ] = mem [(long) p + 6 ] ; 
  908.     mem [(long) r + 5 ] = mem [(long) p + 5 ] ; 
  909.     mem [(long) r + 5 ] .hh .v.RH = copynodelist ( mem [(long) p + 5 ] .hh .v.RH ) ; 
  910.     words = 5 ; 
  911.       } 
  912.       break ; 
  913.     case 2 : 
  914.       {
  915.     r = getnode ( 4 ) ; 
  916.     words = 4 ; 
  917.       } 
  918.       break ; 
  919.     case 3 : 
  920.       {
  921.     r = getnode ( 5 ) ; 
  922.     mem [(long) r + 4 ] = mem [(long) p + 4 ] ; 
  923.     incr ( mem [(long) mem [(long) p + 4 ] .hh .v.RH ] .hh .v.RH ) ; 
  924.     mem [(long) r + 4 ] .hh .v.LH = copynodelist ( mem [(long) p + 4 ] .hh .v.LH ) ; 
  925.     words = 4 ; 
  926.       } 
  927.       break ; 
  928.     case 8 : 
  929.       switch ( mem [(long) p ] .hh.b1 ) 
  930.       {case 0 : 
  931.     {
  932.       r = getnode ( 3 ) ; 
  933.       words = 3 ; 
  934.     } 
  935.     break ; 
  936.       case 1 : 
  937.       case 3 : 
  938.     {
  939.       r = getnode ( 2 ) ; 
  940.       incr ( mem [(long) mem [(long) p + 1 ] .hh .v.RH ] .hh .v.LH ) ; 
  941.       words = 2 ; 
  942.     } 
  943.     break ; 
  944.       case 2 : 
  945.     {
  946.       r = getnode ( 2 ) ; 
  947.       words = 2 ; 
  948.     } 
  949.     break ; 
  950.       default : 
  951.     confusion ( 1136 ) ; 
  952.     break ; 
  953.       } 
  954.       break ; 
  955.     case 10 : 
  956.       {
  957.     r = getnode ( 2 ) ; 
  958.     incr ( mem [(long) mem [(long) p + 1 ] .hh .v.LH ] .hh .v.RH ) ; 
  959.     mem [(long) r + 1 ] .hh .v.LH = mem [(long) p + 1 ] .hh .v.LH ; 
  960.     mem [(long) r + 1 ] .hh .v.RH = copynodelist ( mem [(long) p + 1 ] .hh .v.RH ) ; 
  961.       } 
  962.       break ; 
  963.     case 11 : 
  964.     case 9 : 
  965.     case 12 : 
  966.       {
  967.     r = getnode ( 2 ) ; 
  968.     words = 2 ; 
  969.       } 
  970.       break ; 
  971.     case 6 : 
  972.       {
  973.     r = getnode ( 2 ) ; 
  974.     mem [(long) r + 1 ] = mem [(long) p + 1 ] ; 
  975.     mem [(long) r + 1 ] .hh .v.RH = copynodelist ( mem [(long) p + 1 ] .hh .v.RH ) ; 
  976.       } 
  977.       break ; 
  978.     case 7 : 
  979.       {
  980.     r = getnode ( 2 ) ; 
  981.     mem [(long) r + 1 ] .hh .v.LH = copynodelist ( mem [(long) p + 1 ] .hh .v.LH ) ; 
  982.     mem [(long) r + 1 ] .hh .v.RH = copynodelist ( mem [(long) p + 1 ] .hh .v.RH ) ; 
  983.       } 
  984.       break ; 
  985.     case 4 : 
  986.       {
  987.     r = getnode ( 2 ) ; 
  988.     incr ( mem [(long) mem [(long) p + 1 ] .cint ] .hh .v.LH ) ; 
  989.     words = 2 ; 
  990.       } 
  991.       break ; 
  992.     case 5 : 
  993.       {
  994.     r = getnode ( 2 ) ; 
  995.     mem [(long) r + 1 ] .cint = copynodelist ( mem [(long) p + 1 ] .cint ) ; 
  996.       } 
  997.       break ; 
  998.     default : 
  999.       confusion ( 222 ) ; 
  1000.       break ; 
  1001.     } 
  1002.     while ( words > 0 ) { 
  1003.       decr ( words ) ; 
  1004.       mem [(long) r + words ] = mem [(long) p + words ] ; 
  1005.     } 
  1006.     mem [(long) q ] .hh .v.RH = r ; 
  1007.     q = r ; 
  1008.     p = mem [(long) p ] .hh .v.RH ; 
  1009.   } 
  1010.   mem [(long) q ] .hh .v.RH = 0 ; 
  1011.   q = mem [(long) h ] .hh .v.RH ; 
  1012.   {
  1013.     mem [(long) h ] .hh .v.RH = avail ; 
  1014.     avail = h ; 
  1015.  
  1016. #ifdef STAT
  1017.     decr ( dynused ) ; 
  1018. #endif /* STAT */
  1019.   } 
  1020.   Result = q ; 
  1021.   return(Result) ; 
  1022. zprintmode ( m ) 
  1023. integer m ; 
  1024. {r_printmode 
  1025.   if ( m > 0 ) 
  1026.   switch ( m / ( 100 ) ) 
  1027.   {case 0 : 
  1028.     print ( 223 ) ; 
  1029.     break ; 
  1030.   case 1 : 
  1031.     print ( 224 ) ; 
  1032.     break ; 
  1033.   case 2 : 
  1034.     print ( 225 ) ; 
  1035.     break ; 
  1036.   } 
  1037.   else if ( m == 0 ) 
  1038.   print ( 226 ) ; 
  1039.   else switch ( ( - m ) / ( 100 ) ) 
  1040.   {case 0 : 
  1041.     print ( 227 ) ; 
  1042.     break ; 
  1043.   case 1 : 
  1044.     print ( 228 ) ; 
  1045.     break ; 
  1046.   case 2 : 
  1047.     print ( 211 ) ; 
  1048.     break ; 
  1049.   } 
  1050.   print ( 229 ) ; 
  1051. pushnest () { r_pushnest 
  1052.   if ( nestptr > maxneststack ) 
  1053.   {
  1054.     maxneststack = nestptr ; 
  1055.     if ( nestptr == nestsize ) 
  1056.     overflow ( 230 , nestsize ) ; 
  1057.   } 
  1058.   nest [ nestptr ] = curlist ; 
  1059.   incr ( nestptr ) ; 
  1060.   curlist .headfield = getavail () ; 
  1061.   curlist .tailfield = curlist .headfield ; 
  1062.   curlist .pgfield = 0 ; 
  1063.   curlist .mlfield = line ; 
  1064. popnest () { r_popnest 
  1065.   {
  1066.     mem [(long) curlist .headfield ] .hh .v.RH = avail ; 
  1067.     avail = curlist .headfield ; 
  1068.  
  1069. #ifdef STAT
  1070.     decr ( dynused ) ; 
  1071. #endif /* STAT */
  1072.   } 
  1073.   decr ( nestptr ) ; 
  1074.   curlist = nest [ nestptr ] ; 
  1075. showactiviti () { r_showactiviti 
  1076.   integer p ; 
  1077.   int m ; 
  1078.   integer a ; 
  1079.   halfword q, r ; 
  1080.   integer t ; 
  1081.   nest [ nestptr ] = curlist ; 
  1082.   printnl ( 206 ) ; 
  1083.   println () ; 
  1084.   for ( p = nestptr ; p >= 0 ; p -- ) 
  1085.   {
  1086.     m = nest [ p ] .modefield ; 
  1087.     a = nest [ p ] .auxfield ; 
  1088.     printnl ( 231 ) ; 
  1089.     printmode ( m ) ; 
  1090.     print ( 232 ) ; 
  1091.     printint ( abs ( nest [ p ] .mlfield ) ) ; 
  1092.     if ( nest [ p ] .mlfield < 0 ) 
  1093.     print ( 233 ) ; 
  1094.     if ( p == 0 ) 
  1095.     {
  1096.       if ( memtop - 2 != pagetail ) 
  1097.       {
  1098.     printnl ( 828 ) ; 
  1099.     if ( outputactive ) 
  1100.     print ( 829 ) ; 
  1101.     showbox ( mem [(long) memtop - 2 ] .hh .v.RH ) ; 
  1102.     if ( pagecontents > 0 ) 
  1103.     {
  1104.       printnl ( 830 ) ; 
  1105.       printtotals () ; 
  1106.       printnl ( 831 ) ; 
  1107.       printscaled ( pagesofar [ 0 ] ) ; 
  1108.       r = mem [(long) memtop ] .hh .v.RH ; 
  1109.       while ( r != memtop ) { 
  1110.         println () ; 
  1111.         printesc ( 198 ) ; 
  1112.         t = mem [(long) r ] .hh.b1 ; 
  1113.         printint ( t ) ; 
  1114.         print ( 832 ) ; 
  1115.         t = xovern ( mem [(long) r + 3 ] .cint , 1000 ) * eqtb [ 5317 + t ] 
  1116.         .cint ; 
  1117.         printscaled ( t ) ; 
  1118.         if ( mem [(long) r ] .hh.b0 == 1 ) 
  1119.         {
  1120.           q = memtop - 2 ; 
  1121.           t = 0 ; 
  1122.           do { q = mem [(long) q ] .hh .v.RH ; 
  1123.         if ( ( mem [(long) q ] .hh.b0 == 3 ) && ( mem [(long) q ] .hh.b1 == mem [(long) 
  1124.         r ] .hh.b1 ) ) 
  1125.         incr ( t ) ; 
  1126.           } while ( ! ( q == mem [(long) r + 1 ] .hh .v.LH ) ) ; 
  1127.           print ( 833 ) ; 
  1128.           printint ( t ) ; 
  1129.           print ( 834 ) ; 
  1130.         } 
  1131.         r = mem [(long) r ] .hh .v.RH ; 
  1132.       } 
  1133.     } 
  1134.       } 
  1135.       if ( mem [(long) memtop - 1 ] .hh .v.RH != 0 ) 
  1136.       printnl ( 234 ) ; 
  1137.     } 
  1138.     showbox ( mem [(long) nest [ p ] .headfield ] .hh .v.RH ) ; 
  1139.     switch ( abs ( m ) / ( 100 ) ) 
  1140.     {case 0 : 
  1141.       {
  1142.     printnl ( 235 ) ; 
  1143.     if ( a <= - 65536000 ) 
  1144.     print ( 236 ) ; 
  1145.     else printscaled ( a ) ; 
  1146.     if ( nest [ p ] .pgfield != 0 ) 
  1147.     {
  1148.       print ( 237 ) ; 
  1149.       printint ( nest [ p ] .pgfield ) ; 
  1150.       print ( 238 ) ; 
  1151.       if ( nest [ p ] .pgfield != 1 ) 
  1152.       printchar ( 115 ) ; 
  1153.     } 
  1154.       } 
  1155.       break ; 
  1156.     case 1 : 
  1157.       {
  1158.     printnl ( 239 ) ; 
  1159.     printint ( a ) ; 
  1160.       } 
  1161.       break ; 
  1162.     case 2 : 
  1163.       if ( a != 0 ) 
  1164.       {
  1165.     print ( 240 ) ; 
  1166.     showbox ( a ) ; 
  1167.       } 
  1168.       break ; 
  1169.     } 
  1170.   } 
  1171. zprintparam ( n ) 
  1172. integer n ; 
  1173. {r_printparam 
  1174.   switch ( n ) 
  1175.   {case 0 : 
  1176.     printesc ( 285 ) ; 
  1177.     break ; 
  1178.   case 1 : 
  1179.     printesc ( 286 ) ; 
  1180.     break ; 
  1181.   case 2 : 
  1182.     printesc ( 287 ) ; 
  1183.     break ; 
  1184.   case 3 : 
  1185.     printesc ( 288 ) ; 
  1186.     break ; 
  1187.   case 4 : 
  1188.     printesc ( 289 ) ; 
  1189.     break ; 
  1190.   case 5 : 
  1191.     printesc ( 290 ) ; 
  1192.     break ; 
  1193.   case 6 : 
  1194.     printesc ( 291 ) ; 
  1195.     break ; 
  1196.   case 7 : 
  1197.     printesc ( 292 ) ; 
  1198.     break ; 
  1199.   case 8 : 
  1200.     printesc ( 293 ) ; 
  1201.     break ; 
  1202.   case 9 : 
  1203.     printesc ( 294 ) ; 
  1204.     break ; 
  1205.   case 10 : 
  1206.     printesc ( 295 ) ; 
  1207.     break ; 
  1208.   case 11 : 
  1209.     printesc ( 296 ) ; 
  1210.     break ; 
  1211.   case 12 : 
  1212.     printesc ( 297 ) ; 
  1213.     break ; 
  1214.   case 13 : 
  1215.     printesc ( 298 ) ; 
  1216.     break ; 
  1217.   case 14 : 
  1218.     printesc ( 299 ) ; 
  1219.     break ; 
  1220.   case 15 : 
  1221.     printesc ( 300 ) ; 
  1222.     break ; 
  1223.   case 16 : 
  1224.     printesc ( 301 ) ; 
  1225.     break ; 
  1226.   case 17 : 
  1227.     printesc ( 302 ) ; 
  1228.     break ; 
  1229.   case 18 : 
  1230.     printesc ( 303 ) ; 
  1231.     break ; 
  1232.   case 19 : 
  1233.     printesc ( 304 ) ; 
  1234.     break ; 
  1235.   case 20 : 
  1236.     printesc ( 305 ) ; 
  1237.     break ; 
  1238.   case 21 : 
  1239.     printesc ( 306 ) ; 
  1240.     break ; 
  1241.   case 22 : 
  1242.     printesc ( 307 ) ; 
  1243.     break ; 
  1244.   case 23 : 
  1245.     printesc ( 308 ) ; 
  1246.     break ; 
  1247.   case 24 : 
  1248.     printesc ( 309 ) ; 
  1249.     break ; 
  1250.   case 25 : 
  1251.     printesc ( 310 ) ; 
  1252.     break ; 
  1253.   case 26 : 
  1254.     printesc ( 311 ) ; 
  1255.     break ; 
  1256.   case 27 : 
  1257.     printesc ( 312 ) ; 
  1258.     break ; 
  1259.   case 28 : 
  1260.     printesc ( 313 ) ; 
  1261.     break ; 
  1262.   case 29 : 
  1263.     printesc ( 314 ) ; 
  1264.     break ; 
  1265.   case 30 : 
  1266.     printesc ( 315 ) ; 
  1267.     break ; 
  1268.   case 31 : 
  1269.     printesc ( 316 ) ; 
  1270.     break ; 
  1271.   case 32 : 
  1272.     printesc ( 317 ) ; 
  1273.     break ; 
  1274.   case 33 : 
  1275.     printesc ( 318 ) ; 
  1276.     break ; 
  1277.   case 34 : 
  1278.     printesc ( 319 ) ; 
  1279.     break ; 
  1280.   case 35 : 
  1281.     printesc ( 320 ) ; 
  1282.     break ; 
  1283.   case 36 : 
  1284.     printesc ( 321 ) ; 
  1285.     break ; 
  1286.   case 37 : 
  1287.     printesc ( 322 ) ; 
  1288.     break ; 
  1289.   case 38 : 
  1290.     printesc ( 323 ) ; 
  1291.     break ; 
  1292.   case 39 : 
  1293.     printesc ( 324 ) ; 
  1294.     break ; 
  1295.   case 40 : 
  1296.     printesc ( 325 ) ; 
  1297.     break ; 
  1298.   case 41 : 
  1299.     printesc ( 326 ) ; 
  1300.     break ; 
  1301.   case 42 : 
  1302.     printesc ( 327 ) ; 
  1303.     break ; 
  1304.   case 43 : 
  1305.     printesc ( 328 ) ; 
  1306.     break ; 
  1307.   case 44 : 
  1308.     printesc ( 329 ) ; 
  1309.     break ; 
  1310.   case 45 : 
  1311.     printesc ( 330 ) ; 
  1312.     break ; 
  1313.   case 46 : 
  1314.     printesc ( 331 ) ; 
  1315.     break ; 
  1316.   case 47 : 
  1317.     printesc ( 332 ) ; 
  1318.     break ; 
  1319.   case 48 : 
  1320.     printesc ( 333 ) ; 
  1321.     break ; 
  1322.   case 49 : 
  1323.     printesc ( 334 ) ; 
  1324.     break ; 
  1325.   default : 
  1326.     print ( 335 ) ; 
  1327.     break ; 
  1328.   } 
  1329. begindiagnos () { r_begindiagnos 
  1330.   oldsetting = selector ; 
  1331.   if ( ( eqtb [ 5296 ] .cint <= 0 ) && ( selector == 19 ) ) 
  1332.   {
  1333.     decr ( selector ) ; 
  1334.     if ( history == 0 ) 
  1335.     history = 1 ; 
  1336.   } 
  1337. zenddiagnosti ( blankline ) 
  1338. boolean blankline ; 
  1339. {r_enddiagnosti 
  1340.   printnl ( 206 ) ; 
  1341.   if ( blankline ) 
  1342.   println () ; 
  1343.   selector = oldsetting ; 
  1344. zprintlengthp ( n ) 
  1345. integer n ; 
  1346. {r_printlengthp 
  1347.   switch ( n ) 
  1348.   {case 0 : 
  1349.     printesc ( 338 ) ; 
  1350.     break ; 
  1351.   case 1 : 
  1352.     printesc ( 339 ) ; 
  1353.     break ; 
  1354.   case 2 : 
  1355.     printesc ( 340 ) ; 
  1356.     break ; 
  1357.   case 3 : 
  1358.     printesc ( 341 ) ; 
  1359.     break ; 
  1360.   case 4 : 
  1361.     printesc ( 342 ) ; 
  1362.     break ; 
  1363.   case 5 : 
  1364.     printesc ( 343 ) ; 
  1365.     break ; 
  1366.   case 6 : 
  1367.     printesc ( 344 ) ; 
  1368.     break ; 
  1369.   case 7 : 
  1370.     printesc ( 345 ) ; 
  1371.     break ; 
  1372.   case 8 : 
  1373.     printesc ( 346 ) ; 
  1374.     break ; 
  1375.   case 9 : 
  1376.     printesc ( 347 ) ; 
  1377.     break ; 
  1378.   case 10 : 
  1379.     printesc ( 348 ) ; 
  1380.     break ; 
  1381.   case 11 : 
  1382.     printesc ( 349 ) ; 
  1383.     break ; 
  1384.   case 12 : 
  1385.     printesc ( 350 ) ; 
  1386.     break ; 
  1387.   case 13 : 
  1388.     printesc ( 351 ) ; 
  1389.     break ; 
  1390.   case 14 : 
  1391.     printesc ( 352 ) ; 
  1392.     break ; 
  1393.   case 15 : 
  1394.     printesc ( 353 ) ; 
  1395.     break ; 
  1396.   case 16 : 
  1397.     printesc ( 354 ) ; 
  1398.     break ; 
  1399.   case 17 : 
  1400.     printesc ( 355 ) ; 
  1401.     break ; 
  1402.   case 18 : 
  1403.     printesc ( 356 ) ; 
  1404.     break ; 
  1405.   case 19 : 
  1406.     printesc ( 357 ) ; 
  1407.     break ; 
  1408.   default : 
  1409.     print ( 358 ) ; 
  1410.     break ; 
  1411.   } 
  1412. zprintcmdchr ( cmd , chrcode ) 
  1413. quarterword cmd ; 
  1414. halfword chrcode ; 
  1415. {r_printcmdchr 
  1416.   switch ( cmd ) 
  1417.   {case 1 : 
  1418.     {
  1419.       print ( 415 ) ; 
  1420.       printASCII ( chrcode ) ; 
  1421.     } 
  1422.     break ; 
  1423.   case 2 : 
  1424.     {
  1425.       print ( 416 ) ; 
  1426.       printASCII ( chrcode ) ; 
  1427.     } 
  1428.     break ; 
  1429.   case 3 : 
  1430.     {
  1431.       print ( 417 ) ; 
  1432.       printASCII ( chrcode ) ; 
  1433.     } 
  1434.     break ; 
  1435.   case 6 : 
  1436.     {
  1437.       print ( 418 ) ; 
  1438.       printASCII ( chrcode ) ; 
  1439.     } 
  1440.     break ; 
  1441.   case 7 : 
  1442.     {
  1443.       print ( 419 ) ; 
  1444.       printASCII ( chrcode ) ; 
  1445.     } 
  1446.     break ; 
  1447.   case 8 : 
  1448.     {
  1449.       print ( 420 ) ; 
  1450.       printASCII ( chrcode ) ; 
  1451.     } 
  1452.     break ; 
  1453.   case 9 : 
  1454.     print ( 421 ) ; 
  1455.     break ; 
  1456.   case 10 : 
  1457.     {
  1458.       print ( 422 ) ; 
  1459.       printASCII ( chrcode ) ; 
  1460.     } 
  1461.     break ; 
  1462.   case 11 : 
  1463.     {
  1464.       print ( 423 ) ; 
  1465.       printASCII ( chrcode ) ; 
  1466.     } 
  1467.     break ; 
  1468.   case 12 : 
  1469.     {
  1470.       print ( 424 ) ; 
  1471.       printASCII ( chrcode ) ; 
  1472.     } 
  1473.     break ; 
  1474.   case 74 : 
  1475.   case 75 : 
  1476.     if ( chrcode < 3544 ) 
  1477.     printskippar ( chrcode - 3526 ) ; 
  1478.     else if ( chrcode < 3800 ) 
  1479.     {
  1480.       printesc ( 260 ) ; 
  1481.       printint ( chrcode - 3544 ) ; 
  1482.     } 
  1483.     else { 
  1484.       printesc ( 261 ) ; 
  1485.       printint ( chrcode - 3800 ) ; 
  1486.     } 
  1487.     break ; 
  1488.   case 71 : 
  1489.     if ( chrcode >= 4066 ) 
  1490.     {
  1491.       printesc ( 272 ) ; 
  1492.       printint ( chrcode - 4066 ) ; 
  1493.     } 
  1494.     else switch ( chrcode ) 
  1495.     {case 4057 : 
  1496.       printesc ( 263 ) ; 
  1497.       break ; 
  1498.     case 4058 : 
  1499.       printesc ( 264 ) ; 
  1500.       break ; 
  1501.     case 4059 : 
  1502.       printesc ( 265 ) ; 
  1503.       break ; 
  1504.     case 4060 : 
  1505.       printesc ( 266 ) ; 
  1506.       break ; 
  1507.     case 4061 : 
  1508.       printesc ( 267 ) ; 
  1509.       break ; 
  1510.     case 4062 : 
  1511.       printesc ( 268 ) ; 
  1512.       break ; 
  1513.     case 4063 : 
  1514.       printesc ( 269 ) ; 
  1515.       break ; 
  1516.     case 4064 : 
  1517.       printesc ( 270 ) ; 
  1518.       break ; 
  1519.     default : 
  1520.       printesc ( 271 ) ; 
  1521.       break ; 
  1522.     } 
  1523.     break ; 
  1524.   case 72 : 
  1525.     if ( chrcode < 5317 ) 
  1526.     printparam ( chrcode - 5267 ) ; 
  1527.     else { 
  1528.       printesc ( 336 ) ; 
  1529.       printint ( chrcode - 5317 ) ; 
  1530.     } 
  1531.     break ; 
  1532.   case 73 : 
  1533.     if ( chrcode < 5721 ) 
  1534.     printlengthp ( chrcode - 5701 ) ; 
  1535.     else { 
  1536.       printesc ( 359 ) ; 
  1537.       printint ( chrcode - 5721 ) ; 
  1538.     } 
  1539.     break ; 
  1540.   case 45 : 
  1541.     printesc ( 367 ) ; 
  1542.     break ; 
  1543.   case 89 : 
  1544.     printesc ( 368 ) ; 
  1545.     break ; 
  1546.   case 40 : 
  1547.     printesc ( 369 ) ; 
  1548.     break ; 
  1549.   case 41 : 
  1550.     printesc ( 370 ) ; 
  1551.     break ; 
  1552.   case 76 : 
  1553.     printesc ( 378 ) ; 
  1554.     break ; 
  1555.   case 61 : 
  1556.     printesc ( 371 ) ; 
  1557.     break ; 
  1558.   case 42 : 
  1559.     printesc ( 389 ) ; 
  1560.     break ; 
  1561.   case 16 : 
  1562.     printesc ( 372 ) ; 
  1563.     break ; 
  1564.   case 106 : 
  1565.     printesc ( 363 ) ; 
  1566.     break ; 
  1567.   case 87 : 
  1568.     printesc ( 377 ) ; 
  1569.     break ; 
  1570.   case 15 : 
  1571.     printesc ( 373 ) ; 
  1572.     break ; 
  1573.   case 91 : 
  1574.     printesc ( 374 ) ; 
  1575.     break ; 
  1576.   case 66 : 
  1577.     printesc ( 364 ) ; 
  1578.     break ; 
  1579.   case 62 : 
  1580.     printesc ( 375 ) ; 
  1581.     break ; 
  1582.   case 64 : 
  1583.     printesc ( 32 ) ; 
  1584.     break ; 
  1585.   case 101 : 
  1586.     printesc ( 376 ) ; 
  1587.     break ; 
  1588.   case 32 : 
  1589.     printesc ( 379 ) ; 
  1590.     break ; 
  1591.   case 36 : 
  1592.     printesc ( 380 ) ; 
  1593.     break ; 
  1594.   case 39 : 
  1595.     printesc ( 381 ) ; 
  1596.     break ; 
  1597.   case 37 : 
  1598.     printesc ( 198 ) ; 
  1599.     break ; 
  1600.   case 44 : 
  1601.     printesc ( 47 ) ; 
  1602.     break ; 
  1603.   case 18 : 
  1604.     printesc ( 219 ) ; 
  1605.     break ; 
  1606.   case 46 : 
  1607.     printesc ( 382 ) ; 
  1608.     break ; 
  1609.   case 17 : 
  1610.     printesc ( 383 ) ; 
  1611.     break ; 
  1612.   case 54 : 
  1613.     printesc ( 384 ) ; 
  1614.     break ; 
  1615.   case 90 : 
  1616.     printesc ( 385 ) ; 
  1617.     break ; 
  1618.   case 34 : 
  1619.     printesc ( 386 ) ; 
  1620.     break ; 
  1621.   case 102 : 
  1622.     printesc ( 387 ) ; 
  1623.     break ; 
  1624.   case 55 : 
  1625.     printesc ( 203 ) ; 
  1626.     break ; 
  1627.   case 63 : 
  1628.     printesc ( 388 ) ; 
  1629.     break ; 
  1630.   case 65 : 
  1631.     printesc ( 391 ) ; 
  1632.     break ; 
  1633.   case 95 : 
  1634.     printesc ( 392 ) ; 
  1635.     break ; 
  1636.   case 0 : 
  1637.     printesc ( 393 ) ; 
  1638.     break ; 
  1639.   case 97 : 
  1640.     printesc ( 394 ) ; 
  1641.     break ; 
  1642.   case 79 : 
  1643.     printesc ( 390 ) ; 
  1644.     break ; 
  1645.   case 83 : 
  1646.     printesc ( 273 ) ; 
  1647.     break ; 
  1648.   case 108 : 
  1649.     printesc ( 395 ) ; 
  1650.     break ; 
  1651.   case 70 : 
  1652.     printesc ( 272 ) ; 
  1653.     break ; 
  1654.   case 38 : 
  1655.     printesc ( 220 ) ; 
  1656.     break ; 
  1657.   case 33 : 
  1658.     printesc ( 396 ) ; 
  1659.     break ; 
  1660.   case 56 : 
  1661.     printesc ( 397 ) ; 
  1662.     break ; 
  1663.   case 35 : 
  1664.     printesc ( 398 ) ; 
  1665.     break ; 
  1666.   case 13 : 
  1667.     printesc ( 455 ) ; 
  1668.     break ; 
  1669.   case 103 : 
  1670.     if ( chrcode == 0 ) 
  1671.     printesc ( 487 ) ; 
  1672.     else printesc ( 488 ) ; 
  1673.     break ; 
  1674.   case 109 : 
  1675.     switch ( chrcode ) 
  1676.     {case 1 : 
  1677.       printesc ( 490 ) ; 
  1678.       break ; 
  1679.     case 2 : 
  1680.       printesc ( 491 ) ; 
  1681.       break ; 
  1682.     case 3 : 
  1683.       printesc ( 492 ) ; 
  1684.       break ; 
  1685.     case 4 : 
  1686.       printesc ( 493 ) ; 
  1687.       break ; 
  1688.     default : 
  1689.       printesc ( 489 ) ; 
  1690.       break ; 
  1691.     } 
  1692.     break ; 
  1693.   case 88 : 
  1694.     if ( chrcode == 0 ) 
  1695.     printesc ( 336 ) ; 
  1696.     else if ( chrcode == 1 ) 
  1697.     printesc ( 359 ) ; 
  1698.     else if ( chrcode == 2 ) 
  1699.     printesc ( 260 ) ; 
  1700.     else printesc ( 261 ) ; 
  1701.     break ; 
  1702.   case 78 : 
  1703.     if ( chrcode == 1 ) 
  1704.     printesc ( 527 ) ; 
  1705.     else printesc ( 526 ) ; 
  1706.     break ; 
  1707.   case 81 : 
  1708.     if ( chrcode == 0 ) 
  1709.     printesc ( 528 ) ; 
  1710.     else printesc ( 529 ) ; 
  1711.     break ; 
  1712.   case 82 : 
  1713.     if ( chrcode == 1 ) 
  1714.     printesc ( 530 ) ; 
  1715.     else if ( chrcode == 3 ) 
  1716.     printesc ( 531 ) ; 
  1717.     else printesc ( 532 ) ; 
  1718.     break ; 
  1719.   case 69 : 
  1720.     if ( chrcode == 0 ) 
  1721.     printesc ( 533 ) ; 
  1722.     else if ( chrcode == 1 ) 
  1723.     printesc ( 534 ) ; 
  1724.     else printesc ( 535 ) ; 
  1725.     break ; 
  1726.   case 107 : 
  1727.     switch ( chrcode ) 
  1728.     {case 0 : 
  1729.       printesc ( 592 ) ; 
  1730.       break ; 
  1731.     case 1 : 
  1732.       printesc ( 593 ) ; 
  1733.       break ; 
  1734.     case 2 : 
  1735.       printesc ( 594 ) ; 
  1736.       break ; 
  1737.     case 3 : 
  1738.       printesc ( 595 ) ; 
  1739.       break ; 
  1740.     case 4 : 
  1741.       printesc ( 596 ) ; 
  1742.       break ; 
  1743.     default : 
  1744.       printesc ( 597 ) ; 
  1745.       break ; 
  1746.     } 
  1747.     break ; 
  1748.   case 104 : 
  1749.     switch ( chrcode ) 
  1750.     {case 1 : 
  1751.       printesc ( 614 ) ; 
  1752.       break ; 
  1753.     case 2 : 
  1754.       printesc ( 615 ) ; 
  1755.       break ; 
  1756.     case 3 : 
  1757.       printesc ( 616 ) ; 
  1758.       break ; 
  1759.     case 4 : 
  1760.       printesc ( 617 ) ; 
  1761.       break ; 
  1762.     case 5 : 
  1763.       printesc ( 618 ) ; 
  1764.       break ; 
  1765.     case 6 : 
  1766.       printesc ( 619 ) ; 
  1767.       break ; 
  1768.     case 7 : 
  1769.       printesc ( 620 ) ; 
  1770.       break ; 
  1771.     case 8 : 
  1772.       printesc ( 621 ) ; 
  1773.       break ; 
  1774.     case 9 : 
  1775.       printesc ( 622 ) ; 
  1776.       break ; 
  1777.     case 10 : 
  1778.       printesc ( 623 ) ; 
  1779.       break ; 
  1780.     case 11 : 
  1781.       printesc ( 624 ) ; 
  1782.       break ; 
  1783.     case 12 : 
  1784.       printesc ( 625 ) ; 
  1785.       break ; 
  1786.     case 13 : 
  1787.       printesc ( 626 ) ; 
  1788.       break ; 
  1789.     case 14 : 
  1790.       printesc ( 627 ) ; 
  1791.       break ; 
  1792.     case 15 : 
  1793.       printesc ( 628 ) ; 
  1794.       break ; 
  1795.     case 16 : 
  1796.       printesc ( 629 ) ; 
  1797.       break ; 
  1798.     default : 
  1799.       printesc ( 613 ) ; 
  1800.       break ; 
  1801.     } 
  1802.     break ; 
  1803.   case 105 : 
  1804.     if ( chrcode == 2 ) 
  1805.     printesc ( 630 ) ; 
  1806.     else if ( chrcode == 4 ) 
  1807.     printesc ( 631 ) ; 
  1808.     else printesc ( 632 ) ; 
  1809.     break ; 
  1810.   case 4 : 
  1811.     if ( chrcode == 128 ) 
  1812.     printesc ( 751 ) ; 
  1813.     else { 
  1814.       print ( 755 ) ; 
  1815.       printASCII ( chrcode ) ; 
  1816.     } 
  1817.     break ; 
  1818.   case 5 : 
  1819.     if ( chrcode == 129 ) 
  1820.     printesc ( 752 ) ; 
  1821.     else printesc ( 753 ) ; 
  1822.     break ; 
  1823.   case 80 : 
  1824.     switch ( chrcode ) 
  1825.     {case 0 : 
  1826.       printesc ( 818 ) ; 
  1827.       break ; 
  1828.     case 1 : 
  1829.       printesc ( 819 ) ; 
  1830.       break ; 
  1831.     case 2 : 
  1832.       printesc ( 820 ) ; 
  1833.       break ; 
  1834.     case 3 : 
  1835.       printesc ( 821 ) ; 
  1836.       break ; 
  1837.     case 4 : 
  1838.       printesc ( 822 ) ; 
  1839.       break ; 
  1840.     case 5 : 
  1841.       printesc ( 823 ) ; 
  1842.       break ; 
  1843.     case 6 : 
  1844.       printesc ( 824 ) ; 
  1845.       break ; 
  1846.     default : 
  1847.       printesc ( 825 ) ; 
  1848.       break ; 
  1849.     } 
  1850.     break ; 
  1851.   case 14 : 
  1852.     if ( chrcode == 1 ) 
  1853.     printesc ( 874 ) ; 
  1854.     else printesc ( 873 ) ; 
  1855.     break ; 
  1856.   case 26 : 
  1857.     switch ( chrcode ) 
  1858.     {case 4 : 
  1859.       printesc ( 875 ) ; 
  1860.       break ; 
  1861.     case 0 : 
  1862.       printesc ( 876 ) ; 
  1863.       break ; 
  1864.     case 1 : 
  1865.       printesc ( 877 ) ; 
  1866.       break ; 
  1867.     case 2 : 
  1868.       printesc ( 878 ) ; 
  1869.       break ; 
  1870.     default : 
  1871.       printesc ( 879 ) ; 
  1872.       break ; 
  1873.     } 
  1874.     break ; 
  1875.   case 27 : 
  1876.     switch ( chrcode ) 
  1877.     {case 4 : 
  1878.       printesc ( 880 ) ; 
  1879.       break ; 
  1880.     case 0 : 
  1881.       printesc ( 881 ) ; 
  1882.       break ; 
  1883.     case 1 : 
  1884.       printesc ( 882 ) ; 
  1885.       break ; 
  1886.     case 2 : 
  1887.       printesc ( 883 ) ; 
  1888.       break ; 
  1889.     default : 
  1890.       printesc ( 884 ) ; 
  1891.       break ; 
  1892.     } 
  1893.     break ; 
  1894.   case 28 : 
  1895.     printesc ( 204 ) ; 
  1896.     break ; 
  1897.   case 29 : 
  1898.     printesc ( 208 ) ; 
  1899.     break ; 
  1900.   case 30 : 
  1901.     printesc ( 210 ) ; 
  1902.     break ; 
  1903.   case 21 : 
  1904.     if ( chrcode == 1 ) 
  1905.     printesc ( 902 ) ; 
  1906.     else printesc ( 903 ) ; 
  1907.     break ; 
  1908.   case 22 : 
  1909.     if ( chrcode == 1 ) 
  1910.     printesc ( 904 ) ; 
  1911.     else printesc ( 905 ) ; 
  1912.     break ; 
  1913.   case 20 : 
  1914.     switch ( chrcode ) 
  1915.     {case 0 : 
  1916.       printesc ( 274 ) ; 
  1917.       break ; 
  1918.     case 1 : 
  1919.       printesc ( 906 ) ; 
  1920.       break ; 
  1921.     case 2 : 
  1922.       printesc ( 907 ) ; 
  1923.       break ; 
  1924.     case 3 : 
  1925.       printesc ( 813 ) ; 
  1926.       break ; 
  1927.     case 4 : 
  1928.       printesc ( 908 ) ; 
  1929.       break ; 
  1930.     case 5 : 
  1931.       printesc ( 815 ) ; 
  1932.       break ; 
  1933.     default : 
  1934.       printesc ( 909 ) ; 
  1935.       break ; 
  1936.     } 
  1937.     break ; 
  1938.   case 31 : 
  1939.     if ( chrcode == 100 ) 
  1940.     printesc ( 911 ) ; 
  1941.     else if ( chrcode == 101 ) 
  1942.     printesc ( 912 ) ; 
  1943.     else if ( chrcode == 102 ) 
  1944.     printesc ( 913 ) ; 
  1945.     else printesc ( 910 ) ; 
  1946.     break ; 
  1947.   case 43 : 
  1948.     if ( chrcode == 0 ) 
  1949.     printesc ( 929 ) ; 
  1950.     else printesc ( 928 ) ; 
  1951.     break ; 
  1952.   case 25 : 
  1953.     if ( chrcode == 10 ) 
  1954.     printesc ( 940 ) ; 
  1955.     else if ( chrcode == 11 ) 
  1956.     printesc ( 939 ) ; 
  1957.     else printesc ( 938 ) ; 
  1958.     break ; 
  1959.   case 23 : 
  1960.     if ( chrcode == 1 ) 
  1961.     printesc ( 942 ) ; 
  1962.     else printesc ( 941 ) ; 
  1963.     break ; 
  1964.   case 24 : 
  1965.     if ( chrcode == 1 ) 
  1966.     printesc ( 944 ) ; 
  1967.     else printesc ( 943 ) ; 
  1968.     break ; 
  1969.   case 47 : 
  1970.     if ( chrcode == 1 ) 
  1971.     printesc ( 45 ) ; 
  1972.     else printesc ( 217 ) ; 
  1973.     break ; 
  1974.   case 48 : 
  1975.     if ( chrcode == 1 ) 
  1976.     printesc ( 976 ) ; 
  1977.     else printesc ( 975 ) ; 
  1978.     break ; 
  1979.   case 50 : 
  1980.     switch ( chrcode ) 
  1981.     {case 16 : 
  1982.       printesc ( 719 ) ; 
  1983.       break ; 
  1984.     case 17 : 
  1985.       printesc ( 720 ) ; 
  1986.       break ; 
  1987.     case 18 : 
  1988.       printesc ( 721 ) ; 
  1989.       break ; 
  1990.     case 19 : 
  1991.       printesc ( 722 ) ; 
  1992.       break ; 
  1993.     case 20 : 
  1994.       printesc ( 723 ) ; 
  1995.       break ; 
  1996.     case 21 : 
  1997.       printesc ( 724 ) ; 
  1998.       break ; 
  1999.     case 22 : 
  2000.       printesc ( 725 ) ; 
  2001.       break ; 
  2002.     case 23 : 
  2003.       printesc ( 726 ) ; 
  2004.       break ; 
  2005.     case 26 : 
  2006.       printesc ( 728 ) ; 
  2007.       break ; 
  2008.     default : 
  2009.       printesc ( 727 ) ; 
  2010.       break ; 
  2011.     } 
  2012.     break ; 
  2013.   case 51 : 
  2014.     if ( chrcode == 1 ) 
  2015.     printesc ( 731 ) ; 
  2016.     else if ( chrcode == 2 ) 
  2017.     printesc ( 732 ) ; 
  2018.     else printesc ( 977 ) ; 
  2019.     break ; 
  2020.   case 53 : 
  2021.     printstyle ( chrcode ) ; 
  2022.     break ; 
  2023.   case 52 : 
  2024.     switch ( chrcode ) 
  2025.     {case 1 : 
  2026.       printesc ( 996 ) ; 
  2027.       break ; 
  2028.     case 2 : 
  2029.       printesc ( 997 ) ; 
  2030.       break ; 
  2031.     case 3 : 
  2032.       printesc ( 998 ) ; 
  2033.       break ; 
  2034.     case 4 : 
  2035.       printesc ( 999 ) ; 
  2036.       break ; 
  2037.     case 5 : 
  2038.       printesc ( 1000 ) ; 
  2039.       break ; 
  2040.     default : 
  2041.       printesc ( 995 ) ; 
  2042.       break ; 
  2043.     } 
  2044.     break ; 
  2045.   case 49 : 
  2046.     if ( chrcode == 30 ) 
  2047.     printesc ( 729 ) ; 
  2048.     else printesc ( 730 ) ; 
  2049.     break ; 
  2050.   case 92 : 
  2051.     if ( chrcode == 1 ) 
  2052.     printesc ( 1019 ) ; 
  2053.     else if ( chrcode == 2 ) 
  2054.     printesc ( 1020 ) ; 
  2055.     else printesc ( 1021 ) ; 
  2056.     break ; 
  2057.   case 96 : 
  2058.     if ( chrcode == 0 ) 
  2059.     printesc ( 1022 ) ; 
  2060.     else if ( chrcode == 1 ) 
  2061.     printesc ( 1023 ) ; 
  2062.     else if ( chrcode == 2 ) 
  2063.     printesc ( 1024 ) ; 
  2064.     else printesc ( 1025 ) ; 
  2065.     break ; 
  2066.   case 93 : 
  2067.     if ( chrcode != 0 ) 
  2068.     printesc ( 1040 ) ; 
  2069.     else printesc ( 1039 ) ; 
  2070.     break ; 
  2071.   case 94 : 
  2072.     switch ( chrcode ) 
  2073.     {case 0 : 
  2074.       printesc ( 1041 ) ; 
  2075.       break ; 
  2076.     case 1 : 
  2077.       printesc ( 1042 ) ; 
  2078.       break ; 
  2079.     case 2 : 
  2080.       printesc ( 1043 ) ; 
  2081.       break ; 
  2082.     case 3 : 
  2083.       printesc ( 1044 ) ; 
  2084.       break ; 
  2085.     case 4 : 
  2086.       printesc ( 1045 ) ; 
  2087.       break ; 
  2088.     case 5 : 
  2089.       printesc ( 1046 ) ; 
  2090.       break ; 
  2091.     default : 
  2092.       printesc ( 1047 ) ; 
  2093.       break ; 
  2094.     } 
  2095.     break ; 
  2096.   case 67 : 
  2097.     {
  2098.       printesc ( 372 ) ; 
  2099.       printhex ( chrcode ) ; 
  2100.     } 
  2101.     break ; 
  2102.   case 68 : 
  2103.     {
  2104.       printesc ( 383 ) ; 
  2105.       printhex ( chrcode ) ; 
  2106.     } 
  2107.     break ; 
  2108.   case 84 : 
  2109.     if ( chrcode == 4627 ) 
  2110.     printesc ( 280 ) ; 
  2111.     else if ( chrcode == 5139 ) 
  2112.     printesc ( 284 ) ; 
  2113.     else if ( chrcode == 4755 ) 
  2114.     printesc ( 281 ) ; 
  2115.     else if ( chrcode == 4883 ) 
  2116.     printesc ( 282 ) ; 
  2117.     else if ( chrcode == 5011 ) 
  2118.     printesc ( 283 ) ; 
  2119.     else printesc ( 337 ) ; 
  2120.     break ; 
  2121.   case 85 : 
  2122.     printsize ( chrcode - 4579 ) ; 
  2123.     break ; 
  2124.   case 98 : 
  2125.     if ( chrcode == 1 ) 
  2126.     printesc ( 803 ) ; 
  2127.     else printesc ( 793 ) ; 
  2128.     break ; 
  2129.   case 77 : 
  2130.     if ( chrcode == 0 ) 
  2131.     printesc ( 1063 ) ; 
  2132.     else printesc ( 1064 ) ; 
  2133.     break ; 
  2134.   case 86 : 
  2135.     {
  2136.       print ( 1072 ) ; 
  2137.       print ( fontname [ chrcode ] ) ; 
  2138.       if ( fontsize [ chrcode ] != fontdsize [ chrcode ] ) 
  2139.       {
  2140.     print ( 598 ) ; 
  2141.     printscaled ( fontsize [ chrcode ] ) ; 
  2142.     print ( 262 ) ; 
  2143.       } 
  2144.     } 
  2145.     break ; 
  2146.   case 99 : 
  2147.     switch ( chrcode ) 
  2148.     {case 0 : 
  2149.       printesc ( 143 ) ; 
  2150.       break ; 
  2151.     case 1 : 
  2152.       printesc ( 144 ) ; 
  2153.       break ; 
  2154.     case 2 : 
  2155.       printesc ( 145 ) ; 
  2156.       break ; 
  2157.     default : 
  2158.       printesc ( 1073 ) ; 
  2159.       break ; 
  2160.     } 
  2161.     break ; 
  2162.   case 60 : 
  2163.     if ( chrcode == 0 ) 
  2164.     printesc ( 1075 ) ; 
  2165.     else printesc ( 1074 ) ; 
  2166.     break ; 
  2167.   case 58 : 
  2168.     if ( chrcode == 0 ) 
  2169.     printesc ( 1076 ) ; 
  2170.     else printesc ( 1077 ) ; 
  2171.     break ; 
  2172.   case 57 : 
  2173.     if ( chrcode == 4755 ) 
  2174.     printesc ( 1083 ) ; 
  2175.     else printesc ( 1084 ) ; 
  2176.     break ; 
  2177.   case 19 : 
  2178.     switch ( chrcode ) 
  2179.     {case 1 : 
  2180.       printesc ( 1086 ) ; 
  2181.       break ; 
  2182.     case 2 : 
  2183.       printesc ( 1087 ) ; 
  2184.       break ; 
  2185.     case 3 : 
  2186.       printesc ( 1088 ) ; 
  2187.       break ; 
  2188.     default : 
  2189.       printesc ( 1085 ) ; 
  2190.       break ; 
  2191.     } 
  2192.     break ; 
  2193.   case 100 : 
  2194.     print ( 1095 ) ; 
  2195.     break ; 
  2196.   case 110 : 
  2197.     print ( 1096 ) ; 
  2198.     break ; 
  2199.   case 111 : 
  2200.     printesc ( 1097 ) ; 
  2201.     break ; 
  2202.   case 112 : 
  2203.     printesc ( 1098 ) ; 
  2204.     break ; 
  2205.   case 113 : 
  2206.     {
  2207.       printesc ( 1019 ) ; 
  2208.       printesc ( 1098 ) ; 
  2209.     } 
  2210.     break ; 
  2211.   case 114 : 
  2212.     printesc ( 1099 ) ; 
  2213.     break ; 
  2214.   case 59 : 
  2215.     switch ( chrcode ) 
  2216.     {case 0 : 
  2217.       printesc ( 1129 ) ; 
  2218.       break ; 
  2219.     case 1 : 
  2220.       printesc ( 452 ) ; 
  2221.       break ; 
  2222.     case 2 : 
  2223.       printesc ( 1130 ) ; 
  2224.       break ; 
  2225.     case 3 : 
  2226.       printesc ( 1131 ) ; 
  2227.       break ; 
  2228.     case 4 : 
  2229.       printesc ( 1132 ) ; 
  2230.       break ; 
  2231.     default : 
  2232.       print ( 1133 ) ; 
  2233.       break ; 
  2234.     } 
  2235.     break ; 
  2236.   default : 
  2237.     print ( 425 ) ; 
  2238.     break ; 
  2239.   } 
  2240.