diff --git a/docs/MESA_program_debug.spec b/docs/MESA_program_debug.spec index e9eaa82d897..646cd301787 100644 --- a/docs/MESA_program_debug.spec +++ b/docs/MESA_program_debug.spec @@ -18,7 +18,7 @@ Version Last Modified Date: July 20, 2003 Author Revision: 1.0 - $Date: 2003/07/23 15:45:25 $ $Revision: 1.2 $ + $Date: 2003/09/23 14:46:11 $ $Revision: 1.3 $ Number @@ -50,7 +50,7 @@ Overview user to register a callback function with the GL. The callback will be called prior to executing each vertex or fragment program instruction. - From within the callback, the user may issue glGet* commands to + From within the callback, the user may issue Get* commands to query current GL state. The GetProgramRegisterfvMESA function allows current program values to be queried (such as temporaries, input attributes, and result registers). @@ -72,8 +72,8 @@ Issues 1. Is this the right model for a debugger? It seems prudent to minimize the scope of this extension and leave - it up to the developer (or developer community) to write (a) - debugger(s) that layer on top of this extension. + it up to the developer (or developer community) to write debuggers + that layer on top of this extension. If the debugger were fully implemented within the GL it's not clear how terminal and GUI-based interfaces would work, for @@ -127,21 +127,21 @@ New Tokens Accepted by the parameter of Enable, Disable, IsEnabled, GetBooleanv, GetDoublev, GetFloatv and GetIntegerv: - FRAGMENT_PROGRAM_CALLBACK_MESA 0x???? - VERTEX_PROGRAM_CALLBACK_MESA 0x???? + FRAGMENT_PROGRAM_CALLBACK_MESA 0x8bb1 + VERTEX_PROGRAM_CALLBACK_MESA 0x8bb4 Accepted by the parameter GetBooleanv, GetDoublev, GetFloatv and GetIntegerv: - FRAGMENT_PROGRAM_POSITION_MESA 0x???? - VERTEX_PROGRAM_POSITION_MESA 0x???? + FRAGMENT_PROGRAM_POSITION_MESA 0x8bb0 + VERTEX_PROGRAM_POSITION_MESA 0x8bb4 Accepted by the parameter of GetPointerv: - FRAGMENT_PROGRAM_CALLBACK_FUNC_MESA 0x???? - FRAGMENT_PROGRAM_CALLBACK_DATA_MESA 0x???? - VERTEX_PROGRAM_CALLBACK_FUNC_MESA 0x???? - VERTEX_PROGRAM_CALLBACK_DATA_MESA 0x???? + FRAGMENT_PROGRAM_CALLBACK_FUNC_MESA 0x8bb2 + FRAGMENT_PROGRAM_CALLBACK_DATA_MESA 0x8bb3 + VERTEX_PROGRAM_CALLBACK_FUNC_MESA 0x8bb6 + VERTEX_PROGRAM_CALLBACK_DATA_MESA 0x8bb7 Additions to Chapter 2 of the OpenGL 1.4 Specification (OpenGL Operation) @@ -160,7 +160,8 @@ Additions to Chapter 5 of the OpenGL 1.4 Specification (Special Functions) In section 5.4 "Display Lists", page 202, add the following command to the list of those that are not compiled into display lists: - ProgramCallbackMESA. + + ProgramCallbackMESA. Add a new section 5.7 "Callback Functions" @@ -170,11 +171,12 @@ Additions to Chapter 5 of the OpenGL 1.4 Specification (Special Functions) void ProgramCallbackMESA(enum target, programcallbackMESA callback, void *data) - registers a user-defined callback function with the GL. may - be FRAGMENT_PROGRAM_ARB or VERTEX_PROGRAM_ARB. Callbacks registered - with these targets will be called prior to executing each instruction - in the current fragment or vertex program, respectively. The callbacks - are enabled and disabled by calling Enable or Disable with + registers a user-defined callback function with the GL. + may be FRAGMENT_PROGRAM_ARB or VERTEX_PROGRAM_ARB. The enabled + callback functions registered with these targets will be called + prior to executing each instruction in the current fragment or + vertex program, respectively. The callbacks are enabled and + disabled by calling Enable or Disable with FRAGMENT_PROGRAM_ARB or VERTEX_PROGRAM_ARB. The callback function's signature must match the typedef @@ -216,16 +218,15 @@ State Requests) float *v) Is used to query the value of program variables and registers - during program execution. GetProgramRegisterMESA may only be + during program execution. GetProgramRegisterfvMESA may only be called from within a callback function registered with ProgramCallbackMESA. - and specify the string name of a program - register (such as "R3"), input attribute (such as "vertex.color"), - an output attribute (such as "result.texcoord[0]") or a user- - defined identifier. The current value of that variable is - returned as four floats in . - + and specify the name a variable, input + attribute, temporary, or result register in the program string. + The current value of the named variable is returned as four + values in . If doesn't exist in the program string, + the error INVALID_OPERATION is generated. Additions to Appendix A of the OpenGL 1.4 Specification (Invariance) diff --git a/docs/enums.txt b/docs/enums.txt index 80868159d0a..218391c30df 100644 --- a/docs/enums.txt +++ b/docs/enums.txt @@ -4,27 +4,12 @@ Blocks allocated to Mesa: 0x8BB0-0x8BBF - GL_MESA_packed_depth_stencil - GL_DEPTH_STENCIL_MESA 0x8750 - GL_UNSIGNED_INT_24_8_MESA 0x8751 - GL_UNSIGNED_INT_8_24_REV_MESA 0x8752 - GL_UNSIGNED_SHORT_15_1_MESA 0x8753 - GL_UNSIGNED_SHORT_1_15_REV_MESA 0x8754 - - -GL_MESA_pack_invert.spec - GL_PACK_INVERT_MESA 0x8758 - -GL_MESA_program_debug.spec: - GL_FRAGMENT_PROGRAM_CALLBACK_MESA 0x???? - GL_VERTEX_PROGRAM_CALLBACK_MESA 0x???? - GL_FRAGMENT_PROGRAM_POSITION_MESA 0x???? - GL_VERTEX_PROGRAM_POSITION_MESA 0x???? - GL_FRAGMENT_PROGRAM_CALLBACK_FUNC_MESA 0x???? - GL_FRAGMENT_PROGRAM_CALLBACK_DATA_MESA 0x???? - GL_VERTEX_PROGRAM_CALLBACK_FUNC_MESA 0x???? - GL_VERTEX_PROGRAM_CALLBACK_DATA_MESA 0x???? + GL_DEPTH_STENCIL_MESA 0x8750 + GL_UNSIGNED_INT_24_8_MESA 0x8751 + GL_UNSIGNED_INT_8_24_REV_MESA 0x8752 + GL_UNSIGNED_SHORT_15_1_MESA 0x8753 + GL_UNSIGNED_SHORT_1_15_REV_MESA 0x8754 GL_MESA_trace.spec: GL_TRACE_ALL_BITS_MESA 0xFFFF @@ -38,8 +23,20 @@ GL_MESA_trace.spec: GL_TRACE_NAME_MESA 0x8756 MESA_ycbcr_texture.spec: - GL_YCBCR_MESA 0x8757 - GL_UNSIGNED_SHORT_8_8_MESA 0x85BA /* same as Apple's */ - GL_UNSIGNED_SHORT_8_8_REV_MESA 0x85BB /* same as Apple's */ + GL_YCBCR_MESA 0x8757 + GL_UNSIGNED_SHORT_8_8_MESA 0x85BA /* same as Apple's */ + GL_UNSIGNED_SHORT_8_8_REV_MESA 0x85BB /* same as Apple's */ +GL_MESA_pack_invert.spec + GL_PACK_INVERT_MESA 0x8758 + +GL_MESA_program_debug.spec: + GL_FRAGMENT_PROGRAM_CALLBACK_MESA 0x???? + GL_VERTEX_PROGRAM_CALLBACK_MESA 0x???? + GL_FRAGMENT_PROGRAM_POSITION_MESA 0x???? + GL_VERTEX_PROGRAM_POSITION_MESA 0x???? + GL_FRAGMENT_PROGRAM_CALLBACK_FUNC_MESA 0x???? + GL_FRAGMENT_PROGRAM_CALLBACK_DATA_MESA 0x???? + GL_VERTEX_PROGRAM_CALLBACK_FUNC_MESA 0x???? + GL_VERTEX_PROGRAM_CALLBACK_DATA_MESA 0x????