diff options
author | Alex Deucher <alexdeucher@gmail.com> | 2010-01-19 12:13:25 -0500 |
---|---|---|
committer | Alex Deucher <alexdeucher@gmail.com> | 2010-01-19 12:13:25 -0500 |
commit | 17bbb4d5c618eff1fde879c6170a45dbd4598329 (patch) | |
tree | b2a4f80c5743282d44fdbf616dc525c0cee0eac8 | |
parent | 4c28d82eea4a5231b3225302a692e10f81c7cd18 (diff) |
ATOM: Upstream parser updates
-rw-r--r-- | src/AtomBios/CD_Operations.c | 7 | ||||
-rw-r--r-- | src/AtomBios/includes/Decoder.h | 1 |
2 files changed, 7 insertions, 1 deletions
diff --git a/src/AtomBios/CD_Operations.c b/src/AtomBios/CD_Operations.c index 1e48f81..9212ba2 100644 --- a/src/AtomBios/CD_Operations.c +++ b/src/AtomBios/CD_Operations.c @@ -296,6 +296,9 @@ VOID PutDataWS(PARSER_TEMP_DATA STACK_BASED * pParserTempData) case WS_ATTRIBUTES_C: pParserTempData->AttributesData=(UINT16)pParserTempData->DestData32; break; + case WS_REGPTR_C: + pParserTempData->CurrentRegBlock=(UINT16)pParserTempData->DestData32; + break; } } @@ -384,6 +387,8 @@ UINT32 GetParametersWS(PARSER_TEMP_DATA STACK_BASED * pParserTempData) return pParserTempData->CurrentFB_Window; case WS_ATTRIBUTES_C: return pParserTempData->AttributesData; + case WS_REGPTR_C: + return (UINT32)pParserTempData->CurrentRegBlock; } return 0; @@ -493,7 +498,7 @@ VOID ProcessMask(PARSER_TEMP_DATA STACK_BASED * pParserTempData) pParserTempData->DestData32=GetDestination[pParserTempData->ParametersType.Destination](pParserTempData); pParserTempData->SourceData32=GetParametersDirect(pParserTempData); - pParserTempData->Index=GetParametersDirect(pParserTempData); + pParserTempData->Index=GetSource[pParserTempData->ParametersType.Source](pParserTempData); pParserTempData->SourceData32 <<= DestinationAlignmentShift[pParserTempData->CD_Mask.DestAlignment]; pParserTempData->SourceData32 |= ~(AlignmentMask[pParserTempData->CD_Mask.SrcAlignment] << DestinationAlignmentShift[pParserTempData->CD_Mask.DestAlignment]); pParserTempData->DestData32 &= pParserTempData->SourceData32; diff --git a/src/AtomBios/includes/Decoder.h b/src/AtomBios/includes/Decoder.h index 24c25fc..5ce2022 100644 --- a/src/AtomBios/includes/Decoder.h +++ b/src/AtomBios/includes/Decoder.h @@ -44,6 +44,7 @@ NEG:27.08.2002 Initiated. #define WS_AND_MASK_C (WS_OR_MASK_C+1) #define WS_FB_WINDOW_C (WS_AND_MASK_C+1) #define WS_ATTRIBUTES_C (WS_FB_WINDOW_C+1) +#define WS_REGPTR_C (WS_ATTRIBUTES_C+1) #define PARSER_VERSION_MAJOR 0x00000000 #define PARSER_VERSION_MINOR 0x0000000E #define PARSER_VERSION (PARSER_VERSION_MAJOR | PARSER_VERSION_MINOR) |