diff options
| -rw-r--r-- | src/mesa/main/nvvertexec.c | 12 | ||||
| -rw-r--r-- | src/mesa/main/nvvertparse.c | 8 | 
2 files changed, 15 insertions, 5 deletions
| diff --git a/src/mesa/main/nvvertexec.c b/src/mesa/main/nvvertexec.c index fd1519e9a8..9663b38157 100644 --- a/src/mesa/main/nvvertexec.c +++ b/src/mesa/main/nvvertexec.c @@ -1,6 +1,6 @@  /*   * Mesa 3-D graphics library - * Version:  6.0 + * Version:  6.0.1   *   * Copyright (C) 1999-2004  Brian Paul   All Rights Reserved.   * @@ -326,8 +326,16 @@ store_vector4( const struct vp_dst_register *dest,        case PROGRAM_OUTPUT:           dst = state->Outputs[dest->Index];           break; +      case PROGRAM_ENV_PARAM: +         { +            /* a slight hack */ +            GET_CURRENT_CONTEXT(ctx); +            dst = ctx->VertexProgram.Parameters[dest->Index]; +         } +         break;        default: -         _mesa_problem(NULL, "Invalid register file in fetch_vector1(vp)"); +         _mesa_problem(NULL, "Invalid register file in store_vector4(file=%d)", +                       dest->File);           return;     } diff --git a/src/mesa/main/nvvertparse.c b/src/mesa/main/nvvertparse.c index 15451adc71..bacf5a5af3 100644 --- a/src/mesa/main/nvvertparse.c +++ b/src/mesa/main/nvvertparse.c @@ -1,8 +1,8 @@  /*   * Mesa 3-D graphics library - * Version:  5.1 + * Version:  6.0.1   * - * Copyright (C) 1999-2003  Brian Paul   All Rights Reserved. + * Copyright (C) 1999-2004  Brian Paul   All Rights Reserved.   *   * Permission is hereby granted, free of charge, to any person obtaining a   * copy of this software and associated documentation files (the "Software"), @@ -578,8 +578,10 @@ Parse_MaskedDstReg(struct parse_state *parseState, struct vp_dst_register *dstRe        if (!Parse_OutputReg(parseState, &dstReg->Index))           RETURN_ERROR;     } -   else if (parseState->isStateProgram && token[0] == 'c') { +   else if (parseState->isStateProgram && token[0] == 'c' && +            parseState->isStateProgram) {        /* absolute program parameter register */ +      /* Only valid for vertex state programs */        dstReg->File = PROGRAM_ENV_PARAM;        if (!Parse_AbsParamReg(parseState, &dstReg->Index))           RETURN_ERROR; | 
