home *** CD-ROM | disk | FTP | other *** search
/ Vectronix 2 / VECTRONIX2.iso / FILES_01 / HP_550C.LZH / DJ550DAT.S < prev    next >
Text File  |  1994-06-22  |  19KB  |  551 lines

  1. *************************************************************************
  2. *                                                                        *
  3. *                                DJ550DAT.S                                *
  4. *                                                                        *
  5. *************************************************************************
  6.  
  7. *************************************************************************
  8. *                                                                        *
  9. *    This module contains definitions of global constants and            *
  10. *    variables used by the assembler portion of the Hewlett-Packard        *
  11. *    PaintJet printer driver.                                            *
  12. *                                                                        *
  13. *    This code has been brought up-to-date with the printer                *
  14. *    driver source received 5/31/85.                                        *
  15. *    J. Shillington, Bell Northern Research                                *
  16. *                                                                        *
  17. *    This code has been brought up-to-date with the printer                *
  18. *    driver source received 10/1/86.                                        *
  19. *    A. Hackerfrom, Atari Corp.                                            *
  20. *                                                                        *
  21. *    This code has been modified.  10/13/88 dlf Atari Corp.                *
  22. *                                                                        *
  23. *    Modifications made by Theresa Estrada 4/10/91 Atari Corp.            *
  24. *                                                                        *
  25. *************************************************************************
  26. *    Portion de Code pour driver HP DeskJet 550c en CYMK.                *
  27. *                                                                        *
  28. *   Modifié par Thierry Rodolfo    24/03/1994    (France)                    *
  29. *                                                                        *
  30. *    Participation de : Brainstorm developement                            *
  31. *                       Marc Abramson                                    *
  32. *                       DAVID RENE                                        *
  33. *                                                                        *
  34. *************************************************************************
  35.  
  36.  
  37.     .data
  38.     .page
  39. *************************************************************************
  40. *                                                                        *
  41. *        Locally Defined Constants and Variables                            *
  42. *                                                                        *
  43. *************************************************************************
  44.  
  45.     .globl    CONTRL_SIZE
  46.     .globl    INTIN_SIZE
  47.     .globl    PTSIN_SIZE
  48.     .globl    INTOUT_SIZE
  49.     .globl    PTSOUT_SIZE
  50.     .globl    xresmx
  51.     .globl    yresmx
  52.     .globl    xsize
  53.     .globl    ysize
  54.     .globl    num_planes
  55.     .globl    num_colors
  56.     .globl    bytes_line
  57.     .globl    byte_offset        * For 24 pin (NB15) implementation
  58.     .globl    back16            *
  59.     .globl    print_wires
  60.     .globl    scan_line_offset
  61.     .globl    slice_width
  62.     .globl    slice_offset
  63.     .globl    bytes_per_scan
  64.     .globl    def_sl_cnt
  65.     .globl    def_sl_sz
  66.     .globl    def_plane_sz
  67.     .globl    drast_sz
  68.     .globl    dlist_sz
  69.     .globl    drast_ad
  70.     .globl    dlist_ad
  71.     .globl    min_free
  72.     .globl    max_list
  73.     .globl    max_rast
  74.     .globl    _g_maxrast        * global max rast buf size 9/5/91 TE
  75.     .globl    _curalpha
  76.     .globl    _reqalpha
  77.     .globl    _com_port
  78.     .globl    _vmu
  79.     .globl    _A_PAGE
  80.     .globl    _A_SLICE
  81.     .globl    _G_PAGE
  82.     .globl    _G_SLICE
  83.     .globl    _DIV_FACT
  84.     .globl    _DEV_TAB
  85.     .globl    _SIZ_TAB
  86.     .globl    _INQ_TAB
  87.     .globl    _INQ_PTS
  88.     .globl    _CLIP
  89.     .globl    _XMN_CLIP
  90.     .globl    _XMX_CLIP
  91.     .globl    _YMN_CLIP
  92.     .globl    _YMX_CLIP
  93.     .globl    _m_dot
  94.     .globl    _m_plus
  95.     .globl    _m_star
  96.     .globl    _m_square
  97.     .globl    _m_cross
  98.     .globl    _m_dmnd
  99.     .globl    _newbuff_ad
  100.  
  101. *  DRIVER STRUCTURE VARIABLES
  102.     .globl    _QUALITY
  103.     .globl    CONFIG_MAP
  104.     .globl    NPLANES
  105.     .globl    TOTPLANES
  106.     .globl    PLANE_VALS
  107.     .globl    XDPI
  108.     .globl    YDPI
  109.     .globl    PAGESIZE
  110.     .globl    XRES
  111.     .globl    YRES
  112.     .globl    PORT
  113.     .globl    PAPER_FEED
  114.     .globl    PRINTER_NAME
  115.     .globl    PGSZ_TAB
  116.  
  117.     .globl    _TOPMRGN    * TE 8/10/92
  118.     .globl    _BOTMRGN
  119.     .globl    _LFTMRGN
  120.     .globl    _RHTMRGN
  121.     .globl    TOPMRGN2    * TE 8/17/92
  122.     .globl    BOTMRGN2
  123.     .globl    LFTMRGN2
  124.     .globl    RHTMRGN2
  125.     
  126. *************************************************************************
  127. *                                                                        *
  128. *            Parameter Array Sizes                                        *
  129. *                                                                        *
  130. *************************************************************************
  131.  
  132. CONTRL_SIZE    .equ    11
  133. INTIN_SIZE    .equ    256
  134. PTSIN_SIZE    .equ    2048
  135. INTOUT_SIZE    .equ    128
  136. PTSOUT_SIZE    .equ    12
  137.  
  138. *************************************************************************
  139. *                                                                        *
  140. *    HP_DJ550     High Resolution Printer Constants                        *
  141. *                                                                        *
  142. *    Taille de la page 8.0 x 10.4 inches au format lettre                *
  143. *    Exemple pour calculer la taille en point de la page:                *
  144. *        8.0 inches * 300 DPI -1 = Nombre de point en horizontale        *
  145. *       10.4 inches * 300 DPI -1 = Nombre de point en verticale            *
  146. *    Ce qui donne pour:                                                    *
  147. *    300 DPI en horizontale = 2399 points                                *
  148. *    300 DPI en verticale   = 3119 points                                *
  149. *    La taille en micron pour 300 DPI est calculer par la formule:        *
  150. *        1/.00003937 = x/(1/300)     Formule américaine                        *
  151. *        1/.00003937/300             Formule française                        *
  152. *   Le resultat doit etre arrondi!                                        *
  153. *    Ce qui donne pour 300 DPI, 85 micron cette valeur doit etre            *
  154. *    modifiée dans le fichier DJ550DEP.S                                    *
  155. *                                                                        *
  156. *************************************************************************
  157.  
  158.  
  159. xresmx        ds.w    1        * maximum resolution in x
  160. yresmx        ds.w    1        * maximum resolution in y
  161. xsize        ds.w    1        * x pixel size in microns
  162. ysize        ds.w    1        * y pixel size in microns
  163.  
  164. num_planes    ds.w    1        * number of planes
  165. num_colors    ds.w    1        * number of colors on screen
  166. bytes_line    ds.w    1        * bytes per scan line
  167. *                             This must be an even value!!!
  168.     .page
  169. *************************************************************************
  170. *                                                                        *
  171. *        Display List/Rasterizing Buffer Equates                            *
  172. *                                                                        *
  173. *************************************************************************
  174.  
  175. print_wires            ds.w    1        * eight lines per print pass
  176. slice_width            ds.w    1        * # of lines per slice
  177. slice_offset        ds.w    1        * minus 1 if fx80
  178. scan_line_offset    ds.w    1        * offset to next scan in slice
  179. bytes_per_scan        ds.w    1        *bytes_line
  180. *
  181. *
  182. def_sl_cnt            ds.w    1        * default number of slices
  183. def_sl_sz            ds.w    1        * default slice size
  184. def_plane_sz        ds.w    1        * default raster
  185. *                                       buffer size for 1 plane
  186. drast_sz            ds.l    1        * default raster buffer
  187. *                                       size for all planes
  188. dlist_sz            ds.l    1    * Internal Display List Buffer size
  189. min_free            ds.l    1    * Minimum Amount of Free Memory Left
  190. max_list            ds.l    1    * Maximum Display List Buffer size
  191. _g_maxrast                        * Global maximum rasterizing buf size
  192. max_rast:            ds.l    1    * Maximum Rasterizing Buffer size
  193. *
  194. dlist_ad:            ds.l    1
  195. drast_ad:            ds.l    1
  196. *
  197. byte_offset            ds.l    1        * For 24 pin printers
  198. back16                ds.l    1        * For 24 pin printers
  199. *
  200. _newbuff_ad            ds.l    1
  201.  
  202. *************************************************************************
  203. *                                                                        *
  204. *            Text Font Buffer Equates                                    *
  205. *                                                                        *
  206. *    These must be changed to the values for specific machines.            *
  207. *    Ces valeures doivent etre modifiées suivant le type de machine.        *
  208. *                                                                        *
  209. *************************************************************************
  210.  
  211. left_offset        .equ    1
  212. right_offset    .equ    5
  213. max_cell_wd        .equ    9
  214. cell_wd            .equ    (left_offset+right_offset+max_cell_wd+15)/8
  215. cell_ht            .equ    24
  216. cell_size        .equ    cell_ht*cell_wd
  217.  
  218.     .page
  219. *************************************************************************
  220. *                                                                        *
  221. *                        Miscellaneous Variables                            *
  222. *                                                                        *
  223. *************************************************************************
  224.  
  225. _curalpha    dc.b    $ff        * current alpha text attributes
  226. _reqalpha    dc.b    0        * requested alpha text attributes
  227. _com_port    dc.b    0        * 0 for "PRN:" , $80 for "AUX:"
  228.             dc.b    0        * ..filler..
  229. _vmu        dc.w    0        * vertical motion unit counter
  230.  
  231. _A_PAGE        ds.w    1        * # of alpha text lines per full page
  232. _A_SLICE    ds.w    1        * alpha text height in pixels
  233. _G_PAGE        ds.w    1        * # of slices per page
  234. _G_SLICE    ds.w    1        * slice height in pixels
  235. _DIV_FACT    dc.w    1
  236.  
  237.  
  238.     .page
  239. *************************************************************************
  240. *                                                                        *
  241. *                                Device Table                            *
  242. *                                                                        *
  243. *************************************************************************
  244.  
  245. _DEV_TAB    dc.w    0        * 1        x resolution
  246.             dc.w    0        * 2        y resolution
  247.             dc.w    1        * 3        0=exact,1=not exact
  248.             dc.w    0        * 4        width of pixel
  249.             dc.w    0        * 5        height of pixel
  250.             dc.w    0        * 6        character sizes
  251.             dc.w    8        * 7        linestyles
  252.             dc.w    75    * 8        linewidths
  253.             dc.w    8        * 9        marker types
  254.             dc.w    8        * 10    marker size
  255.             dc.w    0        * 11    text font
  256.             dc.w    24        * 12    area patterns
  257.             dc.w    12        * 13    crosshatch patterns
  258.             dc.w    16        * 14    colors at one time
  259.             dc.w    10        * 15    number of GDP's
  260.             dc.w    1        * 16    GDP bar
  261.             dc.w    2        * 17    GDP arc
  262.             dc.w    3        * 18    GDP pie
  263.             dc.w    4        * 19    GDP circle
  264.             dc.w    5        * 20    GDP ellipse
  265.             dc.w    6        * 21    GDP elliptical arc
  266.             dc.w    7        * 22    GDP elliptical pie
  267.             dc.w    8         * 23    GDP rounded rectangle
  268.             dc.w    9         * 24    GDP filled rounded rectangle
  269.             dc.w    10        * 25    GDP justified text
  270.  
  271. * GDP attributes
  272.         dc.w        3        * 26    GDP #1
  273.         dc.w        0        * 27    GDP #2
  274.         dc.w        3        * 28    GDP #3
  275.         dc.w        3        * 29    GDP #4
  276.         dc.w        3        * 30    GDP #5
  277.         dc.w        0        * 31    GDP #6
  278.         dc.w        3        * 32    GDP #7
  279.         dc.w        0         * 33    GDP #8
  280.         dc.w        3         * 34    GDP #9
  281.         dc.w        2         * 35    GDP #10
  282.         dc.w        1        * 36    Color capability(0=valeur ecran)
  283.         dc.w        1        * 37    Text Rotation
  284.         dc.w        1        * 38    Polygonfill
  285.         dc.w        0        * 39    Cell Array
  286.         dc.w        16    * 40    Pallette size
  287.         dc.w        0        * 41    # of locator devices
  288.         dc.w        0        * 42    # of valuator devices
  289.         dc.w        0        * 43    # of choice devices
  290.         dc.w        0        * 44    # of string devices
  291.         dc.w        0        * 45    Workstation Type 2 = out/in
  292.  
  293.  
  294. *************************************************************************
  295. *                                                                        *
  296. *                                Size Table                                *
  297. *                                                                        *
  298. *    This table contains text, line, and marker sizes in device            *
  299. *    coordinates.                                                        *
  300. *                                                                        *
  301. *************************************************************************
  302.  
  303. _SIZ_TAB    dc.w    0        * 1  min char width
  304.             dc.w    0        * 2  min char height
  305.             dc.w    0        * 3  max char width
  306.             dc.w    0        * 4  max char height
  307.             dc.w    1        * 5  min line width
  308.             dc.w    0        * 6  -- not used
  309.             dc.w    150        * 7  max line width
  310.             dc.w    0        * 8  -- not used
  311.             dc.w    21        * 9  min marker width
  312.             dc.w    25        * 10 min marker height
  313.             dc.w    168        * 11 max marker width
  314.             dc.w    200        * 12 max marker height
  315.  
  316.     .page
  317. *************************************************************************
  318. *                                                                        *
  319. *                            Extended Inquiry Table                        *
  320. *                                                                        *
  321. *************************************************************************
  322.  
  323. _INQ_TAB    dc.w    0                *  0  type of alpha/graphic controllers
  324.             dc.w    1                *  1  number of background colors
  325.             dc.w    31                *  2  text styles supported
  326.             dc.w    0                *  3  scale rasters = false
  327.             dc.w    3                *  4  number of planes(8 couleurs max)
  328.             dc.w    0                *  5  video lookup table
  329.             dc.w    50                *  6  performance factor
  330.             dc.w    0                *  7  contour fill capability
  331.             dc.w    1                *  8  character rotation capability
  332.             dc.w    4                *  9  number of writing modes
  333.             dc.w    0                *  10 highest input mode
  334.             dc.w    1                *  11 text alignment flag
  335.             dc.w    0                *  12 inking capability
  336.             dc.w    0                *  13 rubber banding
  337.             dc.w    PTSIN_SIZE/2-1    *  14 maximum vertices
  338.             dc.w    INTIN_SIZE        *  15 maximum intin size
  339.             dc.w    0                *  16 number of buttons on mouse
  340.             dc.w    0                *  17 styles for wide lines
  341.             dc.w    0                *  18 writing modes for wide lines
  342. _CLIP        ds.w    1                *  19 clipping flag
  343.             dc.w    0,0,0,0,0,0,0,0
  344.             dc.w    0,0,0,0,0,0,0,0
  345.             dc.w    0,0,0,0,0,0,0,0
  346.             dc.w    0
  347.  
  348.  
  349. *************************************************************************
  350. *                                                                        *
  351. *                    PTSOUT Array for Extended Inquiry                    *
  352. *                                                                        *
  353. *************************************************************************
  354.  
  355. _INQ_PTS    ds.w    0        *  INQ_PTS[0] = XMN_CLIP
  356. _XMN_CLIP    ds.w    1        *  0  upper left x
  357. _YMN_CLIP    ds.w    1        *  1  upper left y
  358. _XMX_CLIP    ds.w    1        *  2  lower right x
  359. _YMX_CLIP    ds.w    1        *  3  lower right y
  360.             dc.w    0,0,0,0,0,0,0,0
  361.  
  362.     .page
  363. *************************************************************************
  364. *                                                                        *
  365. *                            Marker Definitions                            *
  366. *                                                                        *
  367. *************************************************************************
  368.  
  369. _m_dot          dc.w    1               *  number of polylines
  370.                 dc.w    2               *  segments in polyline
  371.                 dc.w    0,0,0,0
  372.  
  373. _m_plus         dc.w    2               *  number of polylines
  374.                 dc.w    2               *  segments in polyline
  375.                 dc.w    0,-10,0,10
  376.                 dc.w    2               *  segments in polyline
  377.                 dc.w    -10,0,10,0
  378.  
  379. _m_star         dc.w    3               *  number of polylines
  380.                 dc.w    2               *  segments in polyline
  381.                 dc.w    0,-10,0,10
  382.                 dc.w    2               *  segments in polyline
  383.                 dc.w    8,8,-8,-8
  384.                 dc.w    2               *  segments in polyline
  385.                 dc.w    8,-8,-8,8
  386.  
  387. _m_square       dc.w    1               *  number of polylines
  388.                 dc.w    5               *  segments in polyline
  389.                 dc.w    -10,-10,10,-10,10,10,-10,10,-10,-10
  390.  
  391. _m_cross        dc.w    2               *  number of polylines
  392.                 dc.w    2               *  segments in polyline
  393.                 dc.w    -10,-10,10,10
  394.                 dc.w    2               *  segments in polyline
  395.                 dc.w    -10,10,10,-10
  396.  
  397. _m_dmnd         dc.w    1               *  number of polylines
  398.                 dc.w    5               *  segments in polyline
  399.                 dc.w    -10,0,0,-10,10,0,0,10,-10,0
  400.  
  401.     .page
  402.     .bss
  403. *************************************************************************
  404. *                                                                        *
  405. *                            Driver Structure                            *
  406. *                                                                        *
  407. *    These variables are necessary for CPX's and Accessories.             *
  408. *    Ces variables sont necessaire pour l'accessoire DRIVER.                *
  409. *    Ces valeur sont celle par défaut, qui pouront etre modifiées        *
  410. *    ensuite par l'accesoire DRIVER.                                        *
  411. *                                                                        *
  412. *************************************************************************
  413.     .data
  414. DUMMY        dc.b    $5F,$46,$53,$4d,$5f,$48,$44,$52    * _FSM_HDR (En-tete)
  415. *
  416. _QUALITY    dc.w    1        * 1=final, 0=draft
  417. CONFIG_MAP    dc.w    1087    * Mapping of bits. Ce champ de bit permet
  418. * de valider ou non les modifications dans l'accessoire.
  419. * Vous devez l'adapter suivant le type de machine.
  420. * Description du champ de bit:
  421. *                  bit 0 = quality                1 => 2^0    
  422. *                  bit 1 = page size 0 below        1 => 2^1
  423. *                  bit 2 = page size 1 below        1 => 2^2
  424. *                  bit 3 = page size 2 below        1 => 2^3
  425. *                  bit 4 = page size 3 below        1 => 2^4
  426. *                  bit 5 = page size 4 below        1 => 2^5
  427. *                  bit 6 = number of colors        1 => 2^6
  428. *                  bit 7 = dots per inch            0
  429. *                  bit 8 = port                    0
  430. *                  bit 9 = tractor                1 => 2^9
  431. *                  bit 10 = tray1                0
  432. *                  bit 11 = tray2                0
  433. *                  bit 12 = manual                0
  434. *                  bit 13 = 2nd page sz table    1 => 2^13
  435. *
  436. *        total = 1+2+4+8+16+32+64+512+8192 = 8831
  437.  
  438. * Entrez les valeurs par défaut!
  439.  
  440. NPLANES        dc.w    4    * default number of planes
  441.  
  442. TOTPLANES    dc.w    4    * number of selectable color modes (1-4possible)
  443.  
  444. PLANE_VALS    dc.w    1    * plane 1 set if 2 colors supported
  445.             dc.w    2    * plane 2 set if 4 colors supported
  446.             dc.w    3    * plane 3 set if 8 colors supported
  447.             dc.w    4    * plane 4 set if 16 colors supported
  448.  
  449. * Nombres de DPI par défault:
  450.  
  451. XDPI        dc.w    300    * Nombre de DPI pour 1 plan
  452.             dc.w    300    * Nombre de DPI pour 2 plan
  453.             dc.w    300    * Nombre de DPI pour 3 plan
  454.             dc.w    300    * Nombre de DPI pour 4 plan
  455.  
  456. YDPI        dc.w    300 * Idem
  457.             dc.w    300
  458.             dc.w    300
  459.             dc.w    300
  460.  
  461. PAGESIZE    dc.w    2    * 0 = letter (Format par defaut)
  462. *                           1 = legal
  463. *                          2 = a4
  464. *                          3 = b5
  465. *                          4 = Use XRES and YRES values
  466.  
  467. * Taille en point par defaut pour 
  468. * le format lettre.(8.0 inches x 10.4 inches)
  469.  
  470. XRES        dc.w    2389    * Default horiz. res = 8.0"
  471. YRES        dc.w    3321    * Default vert. res = 10.4"
  472.  
  473. PORT        dc.w    0        * 0 = parallel, 1 = serial etc..
  474. PAPER_FEED    dc.w    1        * 0=tractor, 1=tray1, 2=tray2, 3=manual
  475.  
  476. * 26 bytes of driver name 
  477. * 26 bytes -1 pour le nom du driver.
  478. PRINTER_NAME    dc.b    'H','P',' ','D','J',' ','5','5'
  479.                 dc.b    '0','C',' ','C','Y','M','K',' '
  480.                 dc.b    'v',' ','1','.','5',' ',' '
  481.                 dc.b    ' ',' '
  482.  
  483. *****************************************************************
  484. *    - Page sizes reflect values that are divisible by             *
  485. *      slice_width = 1 and rounded up (not down).                *
  486. *    - Zero based so subtracted one from all values.                *
  487. *    - All xres & yres values must be odd (since zero based).    *
  488. *    - Default right & left margins = 1/4" (?)                    *
  489. *    Ici vous entrer les valeurs en point pour chaque taille de    *
  490. *    page. Vous avez remarqué il non pas prévu le format A3 et     *
  491. *    A0 c'est super non?(quel con)                                *
  492. *****************************************************************
  493. PGSZ_TAB
  494. * letter: 8.0 x 10.4 in.
  495.         dc.w    2399    * horizontal res:    300 dpi
  496.         dc.w    3119    * vertical res:        300 dpi
  497. * legal: 8.0 x 13.5 in.
  498.         dc.w    2399    * horizontal res:    300 dpi
  499.         dc.w    4049    * vertical res:        300 dpi
  500. * A4: 7.8 x 11.2 in.
  501.         dc.w    2389    * horizontal res:    300 dpi
  502.         dc.w    3321    * vertical res:        300 dpi
  503. * B5: 6.7 x 9.6 in.
  504.         dc.w    2009    * horizontal res:    300 dpi
  505.         dc.w    2879    * vertical res:        300 dpi
  506.  
  507. *****************************************************************
  508. * Second set of dpi values supported - 150 DPI                    *
  509. * Second parti n'est pas uttilisé pour la 550c                    *
  510. *****************************************************************
  511. * letter: 8.0 x 10.5 in.
  512.         dc.w    2399    * horizontal res:    150 dpi
  513.         dc.w    3119    * vertical res:        150 dpi
  514. * legal: 8.0 x 13.5 in.
  515.         dc.w    2399    * horizontal res:    150 dpi
  516.         dc.w    4049    * vertical res:        150 dpi
  517. * A4: 7.8 x 11.2 in.
  518.         dc.w    2389    * horizontal res:    150 dpi
  519.         dc.w    3321    * vertical res:    150 dpi
  520. * B5: 6.7 x 9.6 in.
  521.         dc.w    2009    * horizontal res:    150 dpi
  522.         dc.w    2879    * vertical res:        150 dpi
  523.  
  524. * Alors la mistère et boule de gomme. Ce sont les marges d'impressions.
  525. * Comment les recupèrent-on?
  526. * Pourquoi réduisent-elles la taille en point du document?
  527. * De plus ils proposent de les calculer au pif. Pas mal non?
  528. * Donc pour moi c'est ZERO!...
  529.  
  530. _TOPMRGN    dc.w    0    * 1/4" * 300dpi ==> 0.25*300 = 75
  531. _BOTMRGN    dc.w    0    * 1/4"
  532. _LFTMRGN    dc.w    0    * 1/4"
  533. _RHTMRGN    dc.w    0    * 1/4"
  534.  
  535. TOPMRGN2    dc.w    0    * 1/4" * 150dpi ==> 0.25*150 = 37.5
  536. BOTMRGN2    dc.w    0    * 1/4"
  537. LFTMRGN2    dc.w    0    * 1/4"
  538. RHTMRGN2    dc.w    0    * 1/4"
  539.  
  540.     .page
  541. *************************************************************************
  542. *                                                                        *
  543. *    Data area used for the display list and rasterizing buffer            *
  544. *                                                                        *
  545. *    Partitioning of the two sections of the buffer is done                *
  546. *    dynamically.  The display list buffer is always located at            *
  547. *    the beginning of the buffer.                                        *
  548. *                                                                        *
  549. *************************************************************************
  550.     .end
  551.