nngxGetCmdlistParameteri Function

Syntax

NNGX_APICALL void NNGX_APIENTRY nngxGetCmdlistParameteri(
     GLenum pname,
     GLint * param
);

Arguments

Name Description
in pname Parameter name.
out param Region where the parameter values are stored.

Return Values

There is no return value.

Description

Gets a parameter value (param) configured for the current command list.

Set pname to one of the following values.

NN_GX_CMDLIST_RUN_MODEGets the command list's execution mode.
NN_GX_CMDLIST_IS_RUNNINGGets the execution status of the command list. If GL_TRUE is obtained, the command list is running. If GL_FALSE is obtained, the command list is not running.
NN_GX_CMDLIST_USED_BUFSIZEGets the size (in bytes) of the commands accumulated in the 3D command buffer.
NN_GX_CMDLIST_USED_REQCOUNTGets the number of command requests that are currently accumulated.
NN_GX_CMDLIST_MAX_BUFSIZEGets the maximum number of bytes that can be accumulated in the 3D command buffer.
NN_GX_CMDLIST_MAX_REQCOUNTGets the maximum number of command requests that can be accumulated.
NN_GX_CMDLIST_TOP_BUFADDRGets the starting address of the 3D command buffer.
NN_GX_CMDLIST_BINDINGGets the ID of the command list object bound to the current object.
NN_GX_CMDLIST_CURRENT_BUFADDRGets the current export target address in the 3D command buffer.
NN_GX_CMDLIST_RUN_BUFSIZEGets the size in bytes of the 3D command buffer that has been executed.
NN_GX_CMDLIST_RUN_REQCOUNTGets the number of command requests that have been executed.
NN_GX_CMDLIST_TOP_REQADDRGets the starting address of the data memory region for the command request's request queue.
NN_GX_CMDLIST_NEXT_REQTYPEWhen command execution is stopped, gets the type of command for the next command request to be executed. When a command is being executed, gets the type of command for the command request currently being executed. If all command requests have been executed, gets nothing. Command types are indicated by the following macros.
  • NN_GX_CMDLIST_REQTYPE_DMA: DMA transfer command
  • NN_GX_CMDLIST_REQTYPE_RUN3D: 3D execution command
  • NN_GX_CMDLIST_REQTYPE_FILLMEM: Memory fill command
  • NN_GX_CMDLIST_REQTYPE_POSTTRANS: Post-transfer command
  • NN_GX_CMDLIST_REQTYPE_COPYTEX: Render texture transfer command
NN_GX_CMDLIST_NEXT_REQINFOWhen command execution is stopped, gets parameter information for the next command request to be executed. When a command is being executed, gets parameter information for the command request currently being executed. If all command requests have been executed, gets nothing. Only works when the command request to be executed or currently executed is for a 3D command. Gets nothing for any other command type. The first element of the param argument gets the command buffer address, and the second element gets the command buffer size in bytes.
NN_GX_CMDLIST_HW_STATEGets 32 bits of data indicating the hardware state. The meaning of each bit is as follows.
  • [20]: Set to 1 when a post-transfer is being executed.
  • [19]: Set to 1 when a memory fill is being executed.
  • [18]: Set to 1 when a FIFO underrun error occurs for the lower screen.
  • [17]: Set to 1 when a FIFO underrun error occurs for the upper screen.
  • [16]: Set to 1 when the post-vertex cache is busy.
  • [15]: Set to 1 when bit [1:0] of register 0x252 is set to 1.
  • [14]: Set to 1 when vertex processor 3 is busy.
  • [13]: Set to 1 when vertex processor 2 is busy.
  • [12]: Set to 1 when vertex processor 1 is busy.
  • [11]: Set to 1 when vertex processor 0 (which doubles as the geometry shader processor) is busy.
  • [10]: Set to 1 when bit [1:0] of register 0x229 is not set to 0.
  • [9]: Set to 1 when input is busy for the module that loads command buffers and vertex arrays.
  • [8]: Set to 1 when output is busy for the module that loads command buffers and vertex arrays.
  • [7]: Set to 1 when the early depth test module is busy.
  • [6]: Set to 1 when the color app data is busy.
  • [5]: Set to 1 when the color app data is busy.
  • [4]: Set to 1 when the texture combiner is busy.
  • [3]: Set to 1 when fragment lighting is busy.
  • [2]: Set to 1 when the texture unit is busy.
  • [1]: Set to 1 when the rasterization module is busy.
  • [0]: Set to 1 when the triangle setup is busy.

The following errors occur in this function.

GL_ERROR_8017_DMPThe pname argument was set to an invalid value.
GL_ERROR_8018_DMPThe bound command list is 0, and something other than NN_GX_CMDLIST_BINDING was specified for pname.

Revision History

2010/10/25
Added an explanation of NN_GX_CMDLIST_CURRENT_BUFADDR
2010/07/07
Added values that can be specified for pname.
2010/03/12
Added extended error codes.
2010/01/07
Initial version.

CONFIDENTIAL