15bd8deadSopenharmony_ciXXX - incomplete
25bd8deadSopenharmony_ci
35bd8deadSopenharmony_ciName
45bd8deadSopenharmony_ci
55bd8deadSopenharmony_ci    SGIX_bali_g_instruments
65bd8deadSopenharmony_ci
75bd8deadSopenharmony_ciName Strings
85bd8deadSopenharmony_ci
95bd8deadSopenharmony_ci    GL_SGIX_bali_g_instruments
105bd8deadSopenharmony_ci
115bd8deadSopenharmony_ciVersion
125bd8deadSopenharmony_ci
135bd8deadSopenharmony_ci    $Date: 1998/10/02 18:20:28 $  $Revision: 1.5 $
145bd8deadSopenharmony_ci
155bd8deadSopenharmony_ciNumber
165bd8deadSopenharmony_ci
175bd8deadSopenharmony_ci    XXX
185bd8deadSopenharmony_ci
195bd8deadSopenharmony_ciDependencies
205bd8deadSopenharmony_ci
215bd8deadSopenharmony_ci    SGIX_instruments is required
225bd8deadSopenharmony_ci
235bd8deadSopenharmony_ciOverview
245bd8deadSopenharmony_ci
255bd8deadSopenharmony_ci    This extension defines behavior for instruments which are
265bd8deadSopenharmony_ci    maintained on the Bali G chip.  The behavior is similar to
275bd8deadSopenharmony_ci    standard instruments behavior since there is only one G ship.
285bd8deadSopenharmony_ci
295bd8deadSopenharmony_ci    Additionally, this extension defines four such instruments:  one to
305bd8deadSopenharmony_ci    count the number of triangles culled, a second to count the number of            primitives clipped, a third to count the number of primitives carried      
315bd8deadSopenharmony_ci    through after clipping, and a fourth to count the number of primitives  
325bd8deadSopenharmony_ci    rejected.
335bd8deadSopenharmony_ci
345bd8deadSopenharmony_ciIssues
355bd8deadSopenharmony_ci
365bd8deadSopenharmony_ci    *	Are there any other G instruments we should add?
375bd8deadSopenharmony_ci
385bd8deadSopenharmony_ci    *   Synchronization issues when G and R instruments are used simultaneously.
395bd8deadSopenharmony_ci
405bd8deadSopenharmony_ciNew Procedures and Functions
415bd8deadSopenharmony_ci
425bd8deadSopenharmony_ci    None
435bd8deadSopenharmony_ci
445bd8deadSopenharmony_ciNew Tokens
455bd8deadSopenharmony_ci
465bd8deadSopenharmony_ci    Accepted by the <cap> parameter of Enable, Disable and IsEnabled:
475bd8deadSopenharmony_ci
485bd8deadSopenharmony_ci        BALI_NUM_TRIS_CULLED_INSTRUMENT         0x6080
495bd8deadSopenharmony_ci        BALI_NUM_PRIMS_CLIPPED_INSTRUMENT       0x6081
505bd8deadSopenharmony_ci        BALI_NUM_PRIMS_REJECT_INSTRUMENT        0x6082
515bd8deadSopenharmony_ci        BALI_NUM_PRIMS_CLIP_RESULT_INSTRUMENT   0x6083
525bd8deadSopenharmony_ci
535bd8deadSopenharmony_ciAdditions to Chapter 2 of the 1.2 Specification (OpenGL Operation)
545bd8deadSopenharmony_ci
555bd8deadSopenharmony_ci    Add to the end of section 2.11 (Clipping):
565bd8deadSopenharmony_ci
575bd8deadSopenharmony_ci    If BALI_NUM_PRIMS_CLIPPED_INSTRUMENT is enabled and the instruments have 
585bd8deadSopenharmony_ci    been started via a call to StartInstrumentsSGIX, a counter of the number of 
595bd8deadSopenharmony_ci    primitives clipped is maintained.  This counter is incremented by one for   
605bd8deadSopenharmony_ci    each primitive that is clipped.
615bd8deadSopenharmony_ci
625bd8deadSopenharmony_ci    If BALI_NUM_PRIMS_CLIP_RESULT_INSTRUMENT is enabled and the instruments have
635bd8deadSopenharmony_ci    been started via a call to StartInstrumentsSGIX, a counter of the number of 
645bd8deadSopenharmony_ci    primitives after clipping is maintained.  This counter is incremented by one
655bd8deadSopenharmony_ci    for each primitive that is carried through after clipping.
665bd8deadSopenharmony_ci
675bd8deadSopenharmony_ci    If BALI_NUM_PRIMS_REJECT_INSTRUMENT is enabled and the instruments have been
685bd8deadSopenharmony_ci    started via a call to StartInstrumentsSGIX, a counter of the number of 
695bd8deadSopenharmony_ci    primitives rejected is maintained.  This counter is incremented by one for 
705bd8deadSopenharmony_ci    each prmitive that is rejected.
715bd8deadSopenharmony_ci
725bd8deadSopenharmony_ciAdditions to Chapter 3 of the 1.2 Specification (Rasterization)
735bd8deadSopenharmony_ci
745bd8deadSopenharmony_ci    Add to section 3.5, between section 3.5.1 (Basic Polygon Rasterization) and 
755bd8deadSopenharmony_ci    section 3.5.2 (Stippling):
765bd8deadSopenharmony_ci
775bd8deadSopenharmony_ci    If BALI_NUM_TRIS_CULLED_INSTRUMENT is enabled and the instruments have been 
785bd8deadSopenharmony_ci    started via a call to StartInstrumentsSGIX, a counter of the number of 
795bd8deadSopenharmony_ci    triangles culled is maintained.  This counter is incremented by one for each
805bd8deadSopenharmony_ci    triangle that is culled.     
815bd8deadSopenharmony_ci
825bd8deadSopenharmony_ciAdditions to Chapter 4 of the 1.2 Specification (Per-Fragment Operations
835bd8deadSopenharmony_ciand the Frame Buffer)
845bd8deadSopenharmony_ci
855bd8deadSopenharmony_ci    None
865bd8deadSopenharmony_ci
875bd8deadSopenharmony_ciAdditions to Chapter 5 of the 1.2 Specification (Special Functions)
885bd8deadSopenharmony_ci    
895bd8deadSopenharmony_ci    Add to the end of section 5.X entitled Instruments:
905bd8deadSopenharmony_ci
915bd8deadSopenharmony_ci    Unlike the instruments computed on the Bali R chip, only one response is 
925bd8deadSopenharmony_ci    returned to the buffer for the G chip since there is only one G chip.  Each 
935bd8deadSopenharmony_ci    call to StopInstrumentsSGIX or ReadInstrumentsSGIX will therefore generate 
945bd8deadSopenharmony_ci    only one response for the G chip for each enabled G chip instrument. 
955bd8deadSopenharmony_ci
965bd8deadSopenharmony_ci    Each G chip response from BALI_NUM_TRIS_CULLED_INSTRUMENT, 
975bd8deadSopenharmony_ci    BALI_NUM_PRIMS_CLIPPED_INSTRUMENT, BALI_NUM_PRIMS_CLIP_RESULT_INSTRUMENT, or
985bd8deadSopenharmony_ci    BALI_NUM_PRIMS_REJECT_INSTRUMENT uses 6 32-bit words of the buffer.  The 
995bd8deadSopenharmony_ci    first word (index 0) will be the enum name of the instrument    
1005bd8deadSopenharmony_ci    (BALI_NUM_TRIS_CULLED_INSTRUMENT, BALI_NUM_PRIMS_CLIPPED_INSTRUMENT, 
1015bd8deadSopenharmony_ci    BALI_NUM_PRIMS_CLIP_RESULT_INSTRUMENT, or BALI_NUM_PRIMS_REJECT_INSTRUMENT).
1025bd8deadSopenharmony_ci    The second word (index 1) of the instrument is the size in words of all the 
1035bd8deadSopenharmony_ci    data returned by the instrument, which is six for the instruments defined in
1045bd8deadSopenharmony_ci    this extension.  The fourth word (index 3) will be the instrument value. 
1055bd8deadSopenharmony_ci    (The preceeding word (index 2) would be a dummy word.)  The fifth word would be
1065bd8deadSopenharmony_ci    another dummy value. This will be followed by the sixth word  
1075bd8deadSopenharmony_ci    (index 5) that will contain the marker passed to StopInstrumentsSGIX or  
1085bd8deadSopenharmony_ci    ReadInstrumentsSGIX.  The following is a simple diagram of how 
1095bd8deadSopenharmony_ci    this information will be passed down the pipe.  Since the host and the pipe 
1105bd8deadSopenharmony_ci    will be communicating with 64-bits, three 64-bit packets will be sent down 
1115bd8deadSopenharmony_ci    the pipe for each measurement that is made.
1125bd8deadSopenharmony_ci
1135bd8deadSopenharmony_ci            -------------------------------------------------
1145bd8deadSopenharmony_ci            |                       |                       |
1155bd8deadSopenharmony_ci            | [enabled enum name]   |    [size in words]    |
1165bd8deadSopenharmony_ci            |                       |                       |
1175bd8deadSopenharmony_ci            -------------------------------------------------
1185bd8deadSopenharmony_ci
1195bd8deadSopenharmony_ci            -------------------------------------------------
1205bd8deadSopenharmony_ci            |                       |                       |
1215bd8deadSopenharmony_ci            |        [dummy]        |   [instrument value]  |
1225bd8deadSopenharmony_ci            |                       |                       |
1235bd8deadSopenharmony_ci            -------------------------------------------------
1245bd8deadSopenharmony_ci
1255bd8deadSopenharmony_ci            -------------------------------------------------
1265bd8deadSopenharmony_ci            |                       |                       |
1275bd8deadSopenharmony_ci            |       [dummy]         |       [marker]        |
1285bd8deadSopenharmony_ci            |                       |                       |
1295bd8deadSopenharmony_ci            -------------------------------------------------
1305bd8deadSopenharmony_ci
1315bd8deadSopenharmony_ci
1325bd8deadSopenharmony_ciAdditions to Chapter 6 of the 1.2 Specification (State and State Requests)
1335bd8deadSopenharmony_ci
1345bd8deadSopenharmony_ci    XXX    
1355bd8deadSopenharmony_ci
1365bd8deadSopenharmony_ciAdditions to the GLX Specification
1375bd8deadSopenharmony_ci
1385bd8deadSopenharmony_ci    XXX
1395bd8deadSopenharmony_ci
1405bd8deadSopenharmony_ciErrors
1415bd8deadSopenharmony_ci
1425bd8deadSopenharmony_ci    None
1435bd8deadSopenharmony_ci
1445bd8deadSopenharmony_ciNew State
1455bd8deadSopenharmony_ci
1465bd8deadSopenharmony_ci    XXX
1475bd8deadSopenharmony_ci
1485bd8deadSopenharmony_ciNew Implementation Dependent State
1495bd8deadSopenharmony_ci
1505bd8deadSopenharmony_ci    None
1515bd8deadSopenharmony_ci
152