diff options
author | Sven Hesse | 2007-03-20 14:51:57 +0000 |
---|---|---|
committer | Sven Hesse | 2007-03-20 14:51:57 +0000 |
commit | 2dc7cb2cd49c20a5f6bcfe5446fb8340f6a555c8 (patch) | |
tree | 4b442eb88ed1bcc6b4a664890c0b8d8d10b5a912 /engines/gob/parse_v1.cpp | |
parent | d94979c936c4edca5eaa23532b4814b2bf4cb933 (diff) | |
download | scummvm-rg350-2dc7cb2cd49c20a5f6bcfe5446fb8340f6a555c8.tar.gz scummvm-rg350-2dc7cb2cd49c20a5f6bcfe5446fb8340f6a555c8.tar.bz2 scummvm-rg350-2dc7cb2cd49c20a5f6bcfe5446fb8340f6a555c8.zip |
Major clean-up, including:
- Cutting down the code-dup
- Plucking leaks
- Removing dead/unused code
- Properly naming "word_2342F"-style variables and functions (removing the warnings alongside)
- Fleshing out the "stubby" functions
- Moving functions and variables to more appropriate/logical places
- Re-ordering functions and variables
- Re-structuring functions
- Moving the IMD stuff into a new "Imd" class in the new imd.cpp/.h (still to be completely implemented and cleaned up)
- Formatting
- Getting rid off the classes "Anim", "Pack" and "Timer", along with their files
svn-id: r26252
Diffstat (limited to 'engines/gob/parse_v1.cpp')
-rw-r--r-- | engines/gob/parse_v1.cpp | 124 |
1 files changed, 69 insertions, 55 deletions
diff --git a/engines/gob/parse_v1.cpp b/engines/gob/parse_v1.cpp index 379f4601eb..23363dfc9a 100644 --- a/engines/gob/parse_v1.cpp +++ b/engines/gob/parse_v1.cpp @@ -26,8 +26,8 @@ #include "gob/gob.h" #include "gob/parse.h" -#include "gob/inter.h" #include "gob/global.h" +#include "gob/inter.h" namespace Gob { @@ -50,8 +50,10 @@ int16 Parse_v1::parseVarIndex() { case 23: case 25: temp = _vm->_inter->load16() * 4; - debugC(5, kDebugParser, "oper = %d", (int16)*_vm->_global->_inter_execPtr); - if (operation == 25 && *_vm->_global->_inter_execPtr == 13) { + debugC(5, kDebugParser, "oper = %d", + (int16) *_vm->_global->_inter_execPtr); + + if ((operation == 25) && (*_vm->_global->_inter_execPtr == 13)) { _vm->_global->_inter_execPtr++; val = parseValExpr(12); temp += val; @@ -118,7 +120,7 @@ int16 Parse_v1::parseValExpr(unsigned stopToken) { valPtr++; operation = *_vm->_global->_inter_execPtr++; - if (operation >= 19 && operation <= 29) { + if ((operation >= 19) && (operation <= 29)) { *operPtr = 20; switch (operation) { case 19: @@ -131,7 +133,7 @@ int16 Parse_v1::parseValExpr(unsigned stopToken) { break; case 23: - *valPtr = (uint16)VAR(_vm->_inter->load16()); + *valPtr = (uint16) VAR(_vm->_inter->load16()); break; case 25: @@ -145,7 +147,7 @@ int16 Parse_v1::parseValExpr(unsigned stopToken) { case 28: temp = _vm->_inter->load16(); dimCount = *_vm->_global->_inter_execPtr++; - arrDesc = (byte*)_vm->_global->_inter_execPtr; + arrDesc = (byte*) _vm->_global->_inter_execPtr; _vm->_global->_inter_execPtr += dimCount; offset = 0; for (dim = 0; dim < dimCount; dim++) { @@ -153,11 +155,12 @@ int16 Parse_v1::parseValExpr(unsigned stopToken) { offset = arrDesc[dim] * offset + temp2; } if (operation == 26) { - *valPtr = (uint16)VAR(temp + offset); + *valPtr = (uint16) VAR(temp + offset); } else { _vm->_global->_inter_execPtr++; temp2 = parseValExpr(12); - *valPtr = READ_VARO_UINT8(temp * 4 + offset * 4 * _vm->_global->_inter_animDataSize + temp2); + *valPtr = READ_VARO_UINT8(temp * 4 + offset * 4 * + _vm->_global->_inter_animDataSize + temp2); } break; @@ -166,18 +169,20 @@ int16 Parse_v1::parseValExpr(unsigned stopToken) { parseExpr(10, 0); if (operation == 5) { - _vm->_global->_inter_resVal = _vm->_global->_inter_resVal * _vm->_global->_inter_resVal; + _vm->_global->_inter_resVal = + _vm->_global->_inter_resVal * _vm->_global->_inter_resVal; } else if (operation == 7) { if (_vm->_global->_inter_resVal < 0) _vm->_global->_inter_resVal = -_vm->_global->_inter_resVal; } else if (operation == 10) { - _vm->_global->_inter_resVal = _vm->_util->getRandom(_vm->_global->_inter_resVal); + _vm->_global->_inter_resVal = + _vm->_util->getRandom(_vm->_global->_inter_resVal); } *valPtr = _vm->_global->_inter_resVal; break; } // switch - if (stkPos > 0 && operPtr[-1] == 1) { + if ((stkPos > 0) && (operPtr[-1] == 1)) { stkPos--; operPtr--; valPtr--; @@ -185,7 +190,7 @@ int16 Parse_v1::parseValExpr(unsigned stopToken) { valPtr[0] = -valPtr[1]; } - if (stkPos > 0 && operPtr[-1] > 4 && operPtr[-1] < 9) { + if ((stkPos > 0) && (operPtr[-1] > 4) && (operPtr[-1] < 9)) { stkPos -= 2; operPtr -= 2; valPtr -= 2; @@ -207,11 +212,11 @@ int16 Parse_v1::parseValExpr(unsigned stopToken) { valPtr[0] &= valPtr[2]; break; } - } // if (stkPos > 0 && cmdPtr[-1] > 4 && cmdPtr[-1] < 9) + } // if ((stkPos > 0) && (cmdPtr[-1] > 4) && (cmdPtr[-1] < 9)) continue; } - if (operation >= 1 && operation <= 9) { + if ((operation >= 1) && (operation <= 9)) { *operPtr = operation; continue; } @@ -224,7 +229,7 @@ int16 Parse_v1::parseValExpr(unsigned stopToken) { operPtr[-1] = operPtr[0]; valPtr[-1] = valPtr[0]; - if (stkPos > 1 && operPtr[-2] == 1) { + if ((stkPos > 1) && (operPtr[-2] == 1)) { valPtr[-2] = 20; valPtr[-2] = -valPtr[-1]; @@ -233,8 +238,7 @@ int16 Parse_v1::parseValExpr(unsigned stopToken) { valPtr--; } - if (stkPos > 2 && operPtr[-2] > 4 - && operPtr[-2] < 9) { + if ((stkPos > 2) && (operPtr[-2] > 4) && (operPtr[-2] < 9)) { stkPos -= 2; operPtr -= 2; valPtr -= 2; @@ -260,15 +264,14 @@ int16 Parse_v1::parseValExpr(unsigned stopToken) { break; } // operPtr[-2] == 9 - for (brackPos = stkPos - 2; brackPos > 0 && - operStack[brackPos] < 30 - && operStack[brackPos] != 9; brackPos--); + for (brackPos = (stkPos - 2); (brackPos > 0) && + (operStack[brackPos] < 30) && (operStack[brackPos] != 9); + brackPos--); - if (operStack[brackPos] >= 30 - || operStack[brackPos] == 9) + if ((operStack[brackPos] >= 30) || (operStack[brackPos] == 9)) brackPos++; - if (operPtr[-2] < 2 || operPtr[-2] > 8) + if ((operPtr[-2] < 2) || (operPtr[-2] > 8)) break; stkPos -= 2; @@ -300,9 +303,10 @@ int16 Parse_v1::parseValExpr(unsigned stopToken) { } if (operation != 10) { - if (operation != stopToken) { - debugC(5, kDebugParser, "stoptoken error: %d != %d", operation, stopToken); - } + if (operation != stopToken) + debugC(5, kDebugParser, "stoptoken error: %d != %d", + operation, stopToken); + flag = oldflag; return values[0]; } @@ -334,7 +338,7 @@ int16 Parse_v1::parseExpr(char stopToken, byte *arg_2) { int16 brackStart; stkPos = -1; - operPtr = (char *)(operStack - 1); + operPtr = (char *) (operStack - 1); valPtr = values - 1; while (1) { @@ -342,7 +346,7 @@ int16 Parse_v1::parseExpr(char stopToken, byte *arg_2) { operPtr++; valPtr++; operation = *_vm->_global->_inter_execPtr++; - if (operation >= 19 && operation <= 29) { + if ((operation >= 19) && (operation <= 29)) { switch (operation) { case 19: *operPtr = 20; @@ -358,7 +362,8 @@ int16 Parse_v1::parseExpr(char stopToken, byte *arg_2) { case 22: *operPtr = 22; *valPtr = encodePtr(_vm->_global->_inter_execPtr, kExecPtr); - _vm->_global->_inter_execPtr += strlen(_vm->_global->_inter_execPtr) + 1; + _vm->_global->_inter_execPtr += + strlen(_vm->_global->_inter_execPtr) + 1; break; case 23: @@ -369,7 +374,8 @@ int16 Parse_v1::parseExpr(char stopToken, byte *arg_2) { case 25: *operPtr = 22; temp = _vm->_inter->load16() * 4; - *valPtr = encodePtr(_vm->_global->_inter_variables + temp, kInterVar); + *valPtr = encodePtr(_vm->_global->_inter_variables + temp, + kInterVar); if (*_vm->_global->_inter_execPtr == 13) { _vm->_global->_inter_execPtr++; temp += parseValExpr(12); @@ -383,7 +389,7 @@ int16 Parse_v1::parseExpr(char stopToken, byte *arg_2) { *operPtr = operation - 6; temp = _vm->_inter->load16(); dimCount = *_vm->_global->_inter_execPtr++; - arrDescPtr = (byte *)_vm->_global->_inter_execPtr; + arrDescPtr = (byte *) _vm->_global->_inter_execPtr; _vm->_global->_inter_execPtr += dimCount; offset = 0; dim = 0; @@ -396,12 +402,15 @@ int16 Parse_v1::parseExpr(char stopToken, byte *arg_2) { *valPtr = VAR(temp + offset); break; } - *valPtr = encodePtr(_vm->_global->_inter_variables + temp * 4 + offset * _vm->_global->_inter_animDataSize * 4, kInterVar); + *valPtr = encodePtr(_vm->_global->_inter_variables + + temp * 4 + offset * _vm->_global->_inter_animDataSize * 4, + kInterVar); if (*_vm->_global->_inter_execPtr == 13) { _vm->_global->_inter_execPtr++; temp2 = parseValExpr(12); *operPtr = 20; - *valPtr = READ_VARO_UINT8(temp * 4 + offset * 4 * _vm->_global->_inter_animDataSize + temp2); + *valPtr = READ_VARO_UINT8(temp * 4 + + offset * 4 * _vm->_global->_inter_animDataSize + temp2); } break; @@ -411,7 +420,8 @@ int16 Parse_v1::parseExpr(char stopToken, byte *arg_2) { switch (operation) { case 5: - _vm->_global->_inter_resVal = _vm->_global->_inter_resVal * _vm->_global->_inter_resVal; + _vm->_global->_inter_resVal = + _vm->_global->_inter_resVal * _vm->_global->_inter_resVal; break; case 0: @@ -424,12 +434,13 @@ int16 Parse_v1::parseExpr(char stopToken, byte *arg_2) { prevPrevVal = prevVal; prevVal = curVal; curVal = (curVal + _vm->_global->_inter_resVal / curVal) / 2; - } while (curVal != prevVal && curVal != prevPrevVal); + } while ((curVal != prevVal) && (curVal != prevPrevVal)); _vm->_global->_inter_resVal = curVal; break; case 10: - _vm->_global->_inter_resVal = _vm->_util->getRandom(_vm->_global->_inter_resVal); + _vm->_global->_inter_resVal = + _vm->_util->getRandom(_vm->_global->_inter_resVal); break; case 7: @@ -441,7 +452,7 @@ int16 Parse_v1::parseExpr(char stopToken, byte *arg_2) { *valPtr = _vm->_global->_inter_resVal; } - if (stkPos > 0 && (operPtr[-1] == 1 || operPtr[-1] == 11)) { + if ((stkPos > 0) && ((operPtr[-1] == 1) || (operPtr[-1] == 11))) { stkPos--; operPtr--; valPtr--; @@ -503,14 +514,16 @@ int16 Parse_v1::parseExpr(char stopToken, byte *arg_2) { break; } continue; - } // op>= 19 && op <= 29 + } // (op >= 19) && (op <= 29) - if (operation == stopToken || operation == 30 || operation == 31 || operation == 10) { + if ((operation == stopToken) || (operation == 30) || + (operation == 31) || (operation == 10)) { while (stkPos >= 2) { var_1A = 0; - if (operPtr[-2] == 9 && (operation == 10 || operation == stopToken)) { + if ((operPtr[-2] == 9) && + ((operation == 10) || (operation == stopToken))) { operPtr[-2] = operPtr[-1]; - if (operPtr[-2] == 20 || operPtr[-2] == 22) + if ((operPtr[-2] == 20) || (operPtr[-2] == 22)) valPtr[-2] = valPtr[-1]; stkPos--; @@ -569,13 +582,13 @@ int16 Parse_v1::parseExpr(char stopToken, byte *arg_2) { if (operation != stopToken) break; - } // if (operPtr[-2] == 9 && ...) + } // if ((operPtr[-2] == 9) && ...) - for (brackStart = stkPos - 2; brackStart > 0 && - operStack[brackStart] < 30 && - operStack[brackStart] != 9; brackStart--); + for (brackStart = (stkPos - 2); (brackStart > 0) && + (operStack[brackStart] < 30) && (operStack[brackStart] != 9); + brackStart--); - if (operStack[brackStart] >= 30 || operStack[brackStart] == 9) + if ((operStack[brackStart] >= 30) || (operStack[brackStart] == 9)) brackStart++; switch (operPtr[-2]) { @@ -585,7 +598,8 @@ int16 Parse_v1::parseExpr(char stopToken, byte *arg_2) { } else if (operStack[brackStart] == 22) { if (decodePtr(values[brackStart]) != _vm->_global->_inter_resStr) { strcpy(_vm->_global->_inter_resStr, decodePtr(values[brackStart])); - values[brackStart] = encodePtr(_vm->_global->_inter_resStr, kResStr); + values[brackStart] = + encodePtr(_vm->_global->_inter_resStr, kResStr); } strcat(_vm->_global->_inter_resStr, decodePtr(valPtr[-1])); } @@ -775,7 +789,7 @@ int16 Parse_v1::parseExpr(char stopToken, byte *arg_2) { break; } // while (stkPos >= 2) - if (operation == 30 || operation == 31) { + if ((operation == 30) || (operation == 31)) { if (operPtr[-1] == 20) { if (valPtr[-1] != 0) operPtr[-1] = 24; @@ -783,19 +797,19 @@ int16 Parse_v1::parseExpr(char stopToken, byte *arg_2) { operPtr[-1] = 23; } - if ((operation == 30 && operPtr[-1] == 24) || - (operation == 31 && operPtr[-1] == 23)) { - if (stkPos > 1 && operPtr[-2] == 9) { + if (((operation == 30) && (operPtr[-1] == 24)) || + ((operation == 31) && (operPtr[-1] == 23))) { + if ((stkPos > 1) && (operPtr[-2] == 9)) { skipExpr(10); operPtr[-2] = operPtr[-1]; stkPos -= 2; operPtr -= 2; valPtr -= 2; - } else { + } else skipExpr(stopToken); - } + operation = _vm->_global->_inter_execPtr[-1]; - if (stkPos > 0 && operPtr[-1] == 11) { + if ((stkPos > 0) && (operPtr[-1] == 11)) { if (operPtr[0] == 23) operPtr[-1] = 24; else @@ -845,7 +859,7 @@ int16 Parse_v1::parseExpr(char stopToken, byte *arg_2) { break; } return 0; - } // operation == stopToken || operation == 30 || operation == 31 || operation == 10 + } // (operation == stopToken) || (operation == 30) || (operation == 31) || (operation == 10) if (operation < 1 || operation > 11) { if (operation < 32 || operation > 37) |