Lines Matching refs:command
121 bit32* Shader::MakeFullCommand( bit32* command ) const in MakeFullCommand()
124 command = MakePrepareCommand( command ); in MakeFullCommand()
129 command = MakeGeoProgramCommand( command ); in MakeFullCommand()
130 command = MakeGeoSwizzleCommand( command ); in MakeFullCommand()
131 command = MakeGeoConstRgCommand( command ); in MakeFullCommand()
132 command = MakeGeoBoolMapCommand( command ); in MakeFullCommand()
136 command = MakeVtxProgramCommand( command ); in MakeFullCommand()
137 command = MakeVtxSwizzleCommand( command ); in MakeFullCommand()
138 command = MakeVtxConstRgCommand( command ); in MakeFullCommand()
139 command = MakeVtxBoolMapCommand( command ); in MakeFullCommand()
143 command = MakeOutAttrCommand( command ); in MakeFullCommand()
146 return command; in MakeFullCommand()
151 bit32* Shader::MakeDisableCommand( bit32* command ) in MakeDisableCommand() argument
156 command = MakeShaderModeCommand_( command, in MakeDisableCommand()
160 return command; in MakeDisableCommand()
165 bit32* Shader::MakePrepareCommand( bit32* command ) const in MakePrepareCommand()
170 command = in MakePrepareCommand()
171 MakeShaderModeCommand_( command, in MakePrepareCommand()
175 return command; in MakePrepareCommand()
180 bit32* Shader::MakeVtxProgramCommand( bit32* command ) const in MakeVtxProgramCommand()
188 *command++ = 0; in MakeVtxProgramCommand()
189 *command++ = PICA_CMD_HEADER_SINGLE( reg_addr ); in MakeVtxProgramCommand()
205 command = MakeLoadCommand_( command, reg_load, in MakeVtxProgramCommand()
211 *command++ = 1; in MakeVtxProgramCommand()
212 *command++ = PICA_CMD_HEADER_SINGLE( reg_end ); in MakeVtxProgramCommand()
215 return command; in MakeVtxProgramCommand()
220 bit32* Shader::MakeGeoProgramCommand( bit32* command ) const in MakeGeoProgramCommand()
228 *command++ = 0; in MakeGeoProgramCommand()
229 *command++ = PICA_CMD_HEADER_SINGLE( reg_addr ); in MakeGeoProgramCommand()
239 command = MakeLoadCommand_( command, reg_load, in MakeGeoProgramCommand()
245 *command++ = 1; in MakeGeoProgramCommand()
246 *command++ = PICA_CMD_HEADER_SINGLE( reg_end ); in MakeGeoProgramCommand()
249 return command; in MakeGeoProgramCommand()
254 bit32* Shader::MakeShaderModeCommand_( bit32* command, in MakeShaderModeCommand_() argument
262 *command++ = PICA_DATA_DRAW_GEOMETRY_PRIMITIVE << 8; in MakeShaderModeCommand_()
266 *command++ = drawMode << 8; in MakeShaderModeCommand_()
268 *command++ = PICA_CMD_HEADER_SINGLE_BE( PICA_REG_VS_OUT_REG_NUM3, 2 ); in MakeShaderModeCommand_()
273 … command = MakeDummyCommand_( command, PICA_REG_VS_OUT_REG_NUM2, DUMMY_DATA_NUM_251 ); in MakeShaderModeCommand_()
278 … command = MakeDummyCommand_( command, PICA_REG_VERTEX_ATTR_ARRAYS_BASE_ADDR, DUMMY_DATA_NUM_200 ); in MakeShaderModeCommand_()
283 *command++ = isEnableGeoShader ? 2 : 0; in MakeShaderModeCommand_()
284 *command++ = PICA_CMD_HEADER_SINGLE_BE( PICA_REG_DRAW_MODE0, 1 ); in MakeShaderModeCommand_()
289 … command = MakeDummyCommand_( command, PICA_REG_VERTEX_ATTR_ARRAYS_BASE_ADDR, DUMMY_DATA_NUM_200 ); in MakeShaderModeCommand_()
294 *command++ = isEnableGeoShader ? 1 : 0; in MakeShaderModeCommand_()
295 *command++ = PICA_CMD_HEADER_SINGLE_BE( PICA_REG_VS_COM_MODE, 1 ); in MakeShaderModeCommand_()
298 return command; in MakeShaderModeCommand_()
303 bit32* Shader::MakeConstRgCommand_( bit32* command, in MakeConstRgCommand_() argument
343 … *command++ = value[ 0 ] | value[ 1 ] << 8 | value[ 2 ] << 16 | value[ 3 ] << 24; in MakeConstRgCommand_()
344 *command++ = PICA_CMD_HEADER_SINGLE( reg_integer + info.index ); in MakeConstRgCommand_()
348 *command++ = info.index; in MakeConstRgCommand_()
349 *command++ = PICA_CMD_HEADER_BURSTSEQ( reg_float, 4 ); in MakeConstRgCommand_()
350 … *command++ = ( value[ 3 ] << 8 & 0xffffff00 ) | ( value[ 2 ] >> 16 & 0x000000ff ); in MakeConstRgCommand_()
351 … *command++ = ( value[ 2 ] << 16 & 0xffff0000 ) | ( value[ 1 ] >> 8 & 0x0000ffff ); in MakeConstRgCommand_()
352 … *command++ = ( value[ 1 ] << 24 & 0xff000000 ) | ( value[ 0 ] >> 0 & 0x00ffffff ); in MakeConstRgCommand_()
353 *command++ = PADDING_DATA; // padding in MakeConstRgCommand_()
358 return command; in MakeConstRgCommand_()
363 bit32* Shader::MakeOutAttrCommand_( bit32* command ) in MakeOutAttrCommand_() argument
563 *command++ = 0x80000000; in MakeOutAttrCommand_()
568 *command++ = 0x00000000; in MakeOutAttrCommand_()
570 *command++ = PICA_CMD_HEADER_SINGLE_BE( PICA_REG_DRAW_MODE0, 0xa ); in MakeOutAttrCommand_()
573 *command++ = 0x00000000; in MakeOutAttrCommand_()
574 *command++ = PICA_CMD_HEADER_SINGLE_BE( PICA_REG_DRAW_MODE1, 0x3 ); in MakeOutAttrCommand_()
577 *command++ = 0x08000000 | (gsDataMode == 0 ? 0x0000 : 0x0100) | vtxOutNum - 1; in MakeOutAttrCommand_()
578 *command++ = PICA_CMD_HEADER_SINGLE_BE( PICA_REG_GS_ATTR_NUM, 0xb ); in MakeOutAttrCommand_()
581 *command++ = 0x7fff0000 | m_ExeImageInfo[ m_GeoShaderIndex ]->mainAddress; in MakeOutAttrCommand_()
582 *command++ = PICA_CMD_HEADER_SINGLE( PICA_REG_GS_START_ADDR ); in MakeOutAttrCommand_()
585 *command++ = outMask; in MakeOutAttrCommand_()
586 *command++ = PICA_CMD_HEADER_SINGLE( PICA_REG_GS_OUT_REG_MASK ); in MakeOutAttrCommand_()
589 *command++ = 0x7fff0000 | m_ExeImageInfo[ m_VtxShaderIndex ]->mainAddress; in MakeOutAttrCommand_()
590 *command++ = PICA_CMD_HEADER_SINGLE( PICA_REG_VS_START_ADDR ); in MakeOutAttrCommand_()
593 *command++ = vtxOutMask; in MakeOutAttrCommand_()
594 *command++ = PICA_CMD_HEADER_SINGLE( PICA_REG_VS_OUT_REG_MASK ); in MakeOutAttrCommand_()
597 *command++ = vtxOutNum - 1; in MakeOutAttrCommand_()
598 *command++ = PICA_CMD_HEADER_SINGLE( PICA_REG_VS_OUT_REG_NUM2 ); in MakeOutAttrCommand_()
601 *command++ = 0x76543210; in MakeOutAttrCommand_()
602 *command++ = PICA_CMD_HEADER_SINGLE( PICA_REG_GS_ATTR_IN_REG_MAP0 ); // 0x28b in MakeOutAttrCommand_()
605 *command++ = 0xfedcba98; in MakeOutAttrCommand_()
606 *command++ = PICA_CMD_HEADER_SINGLE( PICA_REG_GS_ATTR_IN_REG_MAP1 ); in MakeOutAttrCommand_()
611 *command++ = m_ExeImageInfo[ m_GeoShaderIndex ]->gsVertexNum - 1; in MakeOutAttrCommand_()
612 *command++ = PICA_CMD_HEADER_SINGLE_BE( PICA_REG_GS_MISC_REG1, 0x1 ); in MakeOutAttrCommand_()
625 *command++ = gsDataMode; in MakeOutAttrCommand_()
626 *command++ = PICA_CMD_HEADER_SINGLE( PICA_REG_GS_MISC_REG0 ); in MakeOutAttrCommand_()
629 *command++ = vtxOutNum - 1; in MakeOutAttrCommand_()
630 *command++ = PICA_CMD_HEADER_SINGLE( PICA_REG_VS_OUT_REG_NUM1 ); in MakeOutAttrCommand_()
635 *command++ = 0x0; in MakeOutAttrCommand_()
636 *command++ = PICA_CMD_HEADER_SINGLE_BE( PICA_REG_DRAW_MODE0, 0x8 ); in MakeOutAttrCommand_()
639 *command++ = 0x0; in MakeOutAttrCommand_()
640 *command++ = PICA_CMD_HEADER_SINGLE_BE( PICA_REG_DRAW_MODE1, 0x1 ); in MakeOutAttrCommand_()
643 *command++ = 0xa0000000; in MakeOutAttrCommand_()
644 *command++ = PICA_CMD_HEADER_SINGLE_BE( PICA_REG_GS_ATTR_NUM, 0xb ); in MakeOutAttrCommand_()
647 *command++ = 0x7fff0000 | m_ExeImageInfo[ m_VtxShaderIndex ]->mainAddress; in MakeOutAttrCommand_()
648 *command++ = PICA_CMD_HEADER_SINGLE( PICA_REG_VS_START_ADDR ); in MakeOutAttrCommand_()
651 *command++ = outMask; in MakeOutAttrCommand_()
652 *command++ = PICA_CMD_HEADER_SINGLE( PICA_REG_VS_OUT_REG_MASK ); in MakeOutAttrCommand_()
655 *command++ = outNum - 1; in MakeOutAttrCommand_()
656 *command++ = PICA_CMD_HEADER_SINGLE( PICA_REG_VS_OUT_REG_NUM2 ); in MakeOutAttrCommand_()
659 *command++ = 0; in MakeOutAttrCommand_()
660 *command++ = PICA_CMD_HEADER_SINGLE( PICA_REG_GS_MISC_REG0 ); in MakeOutAttrCommand_()
663 *command++ = outNum - 1; in MakeOutAttrCommand_()
664 *command++ = PICA_CMD_HEADER_SINGLE( PICA_REG_VS_OUT_REG_NUM1 ); in MakeOutAttrCommand_()
669 *command++ = outNum - 1; in MakeOutAttrCommand_()
670 *command++ = PICA_CMD_HEADER_SINGLE_BE( PICA_REG_VS_OUT_REG_NUM3, 0x1 ); in MakeOutAttrCommand_()
673 *command++ = outNum; in MakeOutAttrCommand_()
674 *command++ = PICA_CMD_HEADER_SINGLE( PICA_REG_VS_OUT_REG_NUM0 ); in MakeOutAttrCommand_()
682 *command++ = attr[ index ]; in MakeOutAttrCommand_()
683 *command++ = PICA_CMD_HEADER_SINGLE( PICA_REG_VS_OUT_ATTR0 + outNum ); in MakeOutAttrCommand_()
689 *command++ = attr[ index ]; in MakeOutAttrCommand_()
690 *command++ = PICA_CMD_HEADER_SINGLE( PICA_REG_VS_OUT_ATTR0 + index ); in MakeOutAttrCommand_()
695 *command++ = useTex; in MakeOutAttrCommand_()
696 *command++ = PICA_CMD_HEADER_SINGLE( PICA_REG_VS_OUT_ATTR_MODE ); in MakeOutAttrCommand_()
699 *command++ = clock; in MakeOutAttrCommand_()
700 *command++ = PICA_CMD_HEADER_SINGLE( PICA_REG_VS_OUT_ATTR_CLK ); in MakeOutAttrCommand_()
705 *command++ = 0; in MakeOutAttrCommand_()
706 *command++ = PICA_CMD_HEADER_SINGLE_BE( PICA_REG_VS_OUT_REG_NUM3, 8 ); in MakeOutAttrCommand_()
709 return command; in MakeOutAttrCommand_()
714 bit32* Shader::MakeLoadCommand_( bit32* command, in MakeLoadCommand_() argument
727 *command++ = *src_buffer_ptr++; in MakeLoadCommand_()
728 *command++ = PICA_CMD_HEADER_BURST( load_reg, rest ); in MakeLoadCommand_()
729 std::memcpy( command, src_buffer_ptr, ( rest - 1 ) * sizeof( bit32 ) ); in MakeLoadCommand_()
730 command += rest - 1; in MakeLoadCommand_()
732 if ( ( rest & 1 ) == 0 ) *command++ = PADDING_DATA; // padding in MakeLoadCommand_()
737 *command++ = *src_buffer_ptr++; in MakeLoadCommand_()
738 *command++ = PICA_CMD_HEADER_BURST( load_reg, WRITE_MAX ); in MakeLoadCommand_()
739 std::memcpy( command, src_buffer_ptr, ( WRITE_MAX - 1 ) * sizeof( bit32 ) ); in MakeLoadCommand_()
741 command += WRITE_MAX - 1; in MakeLoadCommand_()
745 if ( ( WRITE_MAX & 1 ) == 0 ) *command++ = PADDING_DATA; // padding in MakeLoadCommand_()
749 return command; in MakeLoadCommand_()
754 bit32* Shader::MakeDummyCommand_( bit32* command, in MakeDummyCommand_() argument
758 *command++ = 0; in MakeDummyCommand_()
759 *command++ = PICA_CMD_HEADER_BURST_BE( load_reg, dataNum, 0 ); in MakeDummyCommand_()
763 *command++ = PADDING_DATA; in MakeDummyCommand_()
766 return command; in MakeDummyCommand_()