nv2a: Specify method ranges in words

This commit is contained in:
Matt Borgerson 2022-01-12 12:16:20 -07:00 committed by mborgerson
parent 0b838a6e4c
commit 7bd68b4bfc
2 changed files with 40 additions and 40 deletions

View File

@ -694,7 +694,7 @@ static const struct {
},
#define DEF_METHOD_RANGE(gclass, name, range) \
[METHOD_ADDR_TO_INDEX(METHOD_ADDR(gclass, name)) \
... METHOD_ADDR_TO_INDEX(METHOD_ADDR(gclass, name) + range)] = \
... METHOD_ADDR_TO_INDEX(METHOD_ADDR(gclass, name) + 4*range - 1)] = \
{ \
METHOD_ADDR(gclass, name), \
METHOD_NAME_STR(gclass, name), \
@ -741,7 +741,7 @@ static const struct {
METHOD_ADDR(gclass, name) + 4;
#define DEF_METHOD_RANGE(gclass, name, range) \
static const size_t METHOD_RANGE_END_NAME(gclass, name) = \
METHOD_ADDR(gclass, name) + range + 4;
METHOD_ADDR(gclass, name) + 4*range;
#define DEF_METHOD_CASE_4_OFFSET(gclass, name, offset, stride) /* drop */
#define DEF_METHOD_CASE_4(gclass, name, stride) \
static const size_t METHOD_RANGE_END_NAME(gclass, name) = \

View File

@ -22,7 +22,7 @@ DEF_METHOD(NV097, SET_SURFACE_FORMAT)
DEF_METHOD(NV097, SET_SURFACE_PITCH)
DEF_METHOD(NV097, SET_SURFACE_COLOR_OFFSET)
DEF_METHOD(NV097, SET_SURFACE_ZETA_OFFSET)
DEF_METHOD_RANGE(NV097, SET_COMBINER_ALPHA_ICW, 28)
DEF_METHOD_RANGE(NV097, SET_COMBINER_ALPHA_ICW, 8)
DEF_METHOD(NV097, SET_COMBINER_SPECULAR_FOG_CW0)
DEF_METHOD(NV097, SET_COMBINER_SPECULAR_FOG_CW1)
DEF_METHOD_CASE_4(NV097, SET_TEXTURE_ADDRESS, 64)
@ -33,8 +33,8 @@ DEF_METHOD(NV097, SET_FOG_GEN_MODE)
DEF_METHOD(NV097, SET_FOG_ENABLE)
DEF_METHOD(NV097, SET_FOG_COLOR)
DEF_METHOD(NV097, SET_WINDOW_CLIP_TYPE)
DEF_METHOD_RANGE(NV097, SET_WINDOW_CLIP_HORIZONTAL, 0x1c)
DEF_METHOD_RANGE(NV097, SET_WINDOW_CLIP_VERTICAL, 0x1c)
DEF_METHOD_RANGE(NV097, SET_WINDOW_CLIP_HORIZONTAL, 8)
DEF_METHOD_RANGE(NV097, SET_WINDOW_CLIP_VERTICAL, 8)
DEF_METHOD(NV097, SET_ALPHA_TEST_ENABLE)
DEF_METHOD(NV097, SET_BLEND_ENABLE)
DEF_METHOD(NV097, SET_CULL_FACE_ENABLE)
@ -75,7 +75,7 @@ DEF_METHOD(NV097, SET_CLIP_MAX)
DEF_METHOD(NV097, SET_CULL_FACE)
DEF_METHOD(NV097, SET_FRONT_FACE)
DEF_METHOD(NV097, SET_NORMALIZATION_ENABLE)
DEF_METHOD_RANGE(NV097, SET_MATERIAL_EMISSION, 8)
DEF_METHOD_RANGE(NV097, SET_MATERIAL_EMISSION, 3)
DEF_METHOD(NV097, SET_LIGHT_ENABLE_MASK)
DEF_METHOD_CASE_4(NV097, SET_TEXGEN_S, 16)
DEF_METHOD_CASE_4(NV097, SET_TEXGEN_T, 16)
@ -83,38 +83,38 @@ DEF_METHOD_CASE_4(NV097, SET_TEXGEN_R, 16)
DEF_METHOD_CASE_4(NV097, SET_TEXGEN_Q, 16)
DEF_METHOD_CASE_4(NV097, SET_TEXTURE_MATRIX_ENABLE, 4)
DEF_METHOD(NV097, SET_POINT_SIZE)
DEF_METHOD_RANGE(NV097, SET_PROJECTION_MATRIX, 0x3c)
DEF_METHOD_RANGE(NV097, SET_MODEL_VIEW_MATRIX, 0xfc)
DEF_METHOD_RANGE(NV097, SET_INVERSE_MODEL_VIEW_MATRIX, 0xfc)
DEF_METHOD_RANGE(NV097, SET_COMPOSITE_MATRIX, 0x3c)
DEF_METHOD_RANGE(NV097, SET_TEXTURE_MATRIX, 0xfc)
DEF_METHOD_RANGE(NV097, SET_FOG_PARAMS, 8)
DEF_METHOD_RANGE(NV097, SET_TEXGEN_PLANE_S, 0xfc)
DEF_METHOD_RANGE(NV097, SET_PROJECTION_MATRIX, 16)
DEF_METHOD_RANGE(NV097, SET_MODEL_VIEW_MATRIX, 16*4)
DEF_METHOD_RANGE(NV097, SET_INVERSE_MODEL_VIEW_MATRIX, 16*4)
DEF_METHOD_RANGE(NV097, SET_COMPOSITE_MATRIX, 16)
DEF_METHOD_RANGE(NV097, SET_TEXTURE_MATRIX, 16*4)
DEF_METHOD_RANGE(NV097, SET_FOG_PARAMS, 3)
DEF_METHOD_RANGE(NV097, SET_TEXGEN_PLANE_S, 4*4*4)
DEF_METHOD(NV097, SET_TEXGEN_VIEW_MODEL)
DEF_METHOD_RANGE(NV097, SET_FOG_PLANE, 12)
DEF_METHOD_RANGE(NV097, SET_SCENE_AMBIENT_COLOR, 8)
DEF_METHOD_RANGE(NV097, SET_VIEWPORT_OFFSET, 12)
DEF_METHOD_RANGE(NV097, SET_POINT_PARAMS, 32)
DEF_METHOD_RANGE(NV097, SET_EYE_POSITION, 12)
DEF_METHOD_RANGE(NV097, SET_COMBINER_FACTOR0, 28)
DEF_METHOD_RANGE(NV097, SET_COMBINER_FACTOR1, 28)
DEF_METHOD_RANGE(NV097, SET_COMBINER_ALPHA_OCW, 28)
DEF_METHOD_RANGE(NV097, SET_COMBINER_COLOR_ICW, 28)
DEF_METHOD_RANGE(NV097, SET_VIEWPORT_SCALE, 12)
DEF_METHOD_RANGE(NV097, SET_TRANSFORM_PROGRAM, 0x7c)
DEF_METHOD_RANGE(NV097, SET_TRANSFORM_CONSTANT, 0x7c)
DEF_METHOD_RANGE(NV097, SET_VERTEX3F, 8)
DEF_METHOD_RANGE(NV097, SET_BACK_LIGHT_AMBIENT_COLOR, 0x1C8)
DEF_METHOD_RANGE(NV097, SET_LIGHT_AMBIENT_COLOR, 0x38C)
DEF_METHOD_RANGE(NV097, SET_VERTEX4F, 12)
DEF_METHOD_RANGE(NV097, SET_VERTEX_DATA_ARRAY_FORMAT, 0x3c)
DEF_METHOD_RANGE(NV097, SET_VERTEX_DATA_ARRAY_OFFSET, 0x3c)
DEF_METHOD_RANGE(NV097, SET_FOG_PLANE, 4)
DEF_METHOD_RANGE(NV097, SET_SCENE_AMBIENT_COLOR, 3)
DEF_METHOD_RANGE(NV097, SET_VIEWPORT_OFFSET, 4)
DEF_METHOD_RANGE(NV097, SET_POINT_PARAMS, 8)
DEF_METHOD_RANGE(NV097, SET_EYE_POSITION, 4)
DEF_METHOD_RANGE(NV097, SET_COMBINER_FACTOR0, 8)
DEF_METHOD_RANGE(NV097, SET_COMBINER_FACTOR1, 8)
DEF_METHOD_RANGE(NV097, SET_COMBINER_ALPHA_OCW, 8)
DEF_METHOD_RANGE(NV097, SET_COMBINER_COLOR_ICW, 8)
DEF_METHOD_RANGE(NV097, SET_VIEWPORT_SCALE, 4)
DEF_METHOD_RANGE(NV097, SET_TRANSFORM_PROGRAM, 32)
DEF_METHOD_RANGE(NV097, SET_TRANSFORM_CONSTANT, 32)
DEF_METHOD_RANGE(NV097, SET_VERTEX3F, 3)
DEF_METHOD_RANGE(NV097, SET_BACK_LIGHT_AMBIENT_COLOR, 8*16)
DEF_METHOD_RANGE(NV097, SET_LIGHT_AMBIENT_COLOR, 8*32)
DEF_METHOD_RANGE(NV097, SET_VERTEX4F, 4)
DEF_METHOD_RANGE(NV097, SET_VERTEX_DATA_ARRAY_FORMAT, 16)
DEF_METHOD_RANGE(NV097, SET_VERTEX_DATA_ARRAY_OFFSET, 16)
DEF_METHOD(NV097, SET_LOGIC_OP_ENABLE)
DEF_METHOD(NV097, SET_LOGIC_OP)
DEF_METHOD(NV097, CLEAR_REPORT_VALUE)
DEF_METHOD(NV097, SET_ZPASS_PIXEL_COUNT_ENABLE)
DEF_METHOD(NV097, GET_REPORT)
DEF_METHOD_RANGE(NV097, SET_EYE_DIRECTION, 8)
DEF_METHOD_RANGE(NV097, SET_EYE_DIRECTION, 3)
DEF_METHOD(NV097, SET_BEGIN_END)
DEF_METHOD_CASE_4(NV097, SET_TEXTURE_OFFSET, 64)
DEF_METHOD_CASE_4(NV097, SET_TEXTURE_FORMAT, 64)
@ -134,12 +134,12 @@ DEF_METHOD(NV097, ARRAY_ELEMENT16)
DEF_METHOD(NV097, ARRAY_ELEMENT32)
DEF_METHOD(NV097, DRAW_ARRAYS)
DEF_METHOD(NV097, INLINE_ARRAY)
DEF_METHOD_RANGE(NV097, SET_EYE_VECTOR, 8)
DEF_METHOD_RANGE(NV097, SET_VERTEX_DATA2F_M, 0x7c)
DEF_METHOD_RANGE(NV097, SET_VERTEX_DATA4F_M, 0xfc)
DEF_METHOD_RANGE(NV097, SET_VERTEX_DATA2S, 0x3c)
DEF_METHOD_RANGE(NV097, SET_VERTEX_DATA4UB, 0x3c)
DEF_METHOD_RANGE(NV097, SET_VERTEX_DATA4S_M, 0x7c)
DEF_METHOD_RANGE(NV097, SET_EYE_VECTOR, 3)
DEF_METHOD_RANGE(NV097, SET_VERTEX_DATA2F_M, 32)
DEF_METHOD_RANGE(NV097, SET_VERTEX_DATA4F_M, 64)
DEF_METHOD_RANGE(NV097, SET_VERTEX_DATA2S, 16)
DEF_METHOD_RANGE(NV097, SET_VERTEX_DATA4UB, 16)
DEF_METHOD_RANGE(NV097, SET_VERTEX_DATA4S_M, 32)
DEF_METHOD(NV097, SET_SEMAPHORE_OFFSET)
DEF_METHOD(NV097, BACK_END_WRITE_SEMAPHORE_RELEASE)
DEF_METHOD(NV097, SET_ZSTENCIL_CLEAR_VALUE)
@ -147,9 +147,9 @@ DEF_METHOD(NV097, SET_COLOR_CLEAR_VALUE)
DEF_METHOD(NV097, CLEAR_SURFACE)
DEF_METHOD(NV097, SET_CLEAR_RECT_HORIZONTAL)
DEF_METHOD(NV097, SET_CLEAR_RECT_VERTICAL)
DEF_METHOD_RANGE(NV097, SET_SPECULAR_FOG_FACTOR, 4)
DEF_METHOD_RANGE(NV097, SET_SPECULAR_FOG_FACTOR, 2)
DEF_METHOD(NV097, SET_SHADER_CLIP_PLANE_MODE)
DEF_METHOD_RANGE(NV097, SET_COMBINER_COLOR_OCW, 28)
DEF_METHOD_RANGE(NV097, SET_COMBINER_COLOR_OCW, 8)
DEF_METHOD(NV097, SET_COMBINER_CONTROL)
DEF_METHOD(NV097, SET_SHADOW_ZSLOPE_THRESHOLD)
DEF_METHOD(NV097, SET_SHADER_STAGE_PROGRAM)