[Scummvm-cvs-logs] SF.net SVN: scummvm: [22708] scummvm/trunk/engines/kyra

lordhoto at users.sourceforge.net lordhoto at users.sourceforge.net
Sun May 28 04:44:05 CEST 2006


Revision: 22708
Author:   lordhoto
Date:     2006-05-28 04:43:04 -0700 (Sun, 28 May 2006)
ViewCVS:  http://svn.sourceforge.net/scummvm/?rev=22708&view=rev

Log Message:
-----------
Commits Chriliths patch for fixing Kyra on PalmOS.

Modified Paths:
--------------
    scummvm/trunk/engines/kyra/kyra.cpp
    scummvm/trunk/engines/kyra/kyra.h
    scummvm/trunk/engines/kyra/resource.cpp
    scummvm/trunk/engines/kyra/sound_adlib.cpp
    scummvm/trunk/engines/kyra/staticres.cpp
Modified: scummvm/trunk/engines/kyra/kyra.cpp
===================================================================
--- scummvm/trunk/engines/kyra/kyra.cpp	2006-05-28 11:33:17 UTC (rev 22707)
+++ scummvm/trunk/engines/kyra/kyra.cpp	2006-05-28 11:43:04 UTC (rev 22708)
@@ -48,6 +48,8 @@
 
 KyraEngine::KyraEngine(OSystem *system)
 	: Engine(system) {
+	setupOpcodeTable();
+
 	_seq_Forest = _seq_KallakWriting = _seq_KyrandiaLogo = _seq_KallakMalcolm =
 	_seq_MalcolmTree = _seq_WestwoodLogo = _seq_Demo1 = _seq_Demo2 = _seq_Demo3 =
 	_seq_Demo4 = 0;

Modified: scummvm/trunk/engines/kyra/kyra.h
===================================================================
--- scummvm/trunk/engines/kyra/kyra.h	2006-05-28 11:33:17 UTC (rev 22707)
+++ scummvm/trunk/engines/kyra/kyra.h	2006-05-28 11:43:04 UTC (rev 22708)
@@ -607,8 +607,9 @@
 	void seq_playCredits();
 	void updateKyragemFading();
 	
-	static OpcodeProc _opcodeTable[];
-	static const int _opcodeTableSize;
+	void setupOpcodeTable();
+	OpcodeProc *_opcodeTable;
+	int _opcodeTableSize;
 	
 	void waitForEvent();
 	void loadPalette(const char *filename, uint8 *palData);

Modified: scummvm/trunk/engines/kyra/resource.cpp
===================================================================
--- scummvm/trunk/engines/kyra/resource.cpp	2006-05-28 11:33:17 UTC (rev 22707)
+++ scummvm/trunk/engines/kyra/resource.cpp	2006-05-28 11:43:04 UTC (rev 22708)
@@ -445,4 +445,3 @@
 }
 
 } // end of namespace Kyra
-

Modified: scummvm/trunk/engines/kyra/sound_adlib.cpp
===================================================================
--- scummvm/trunk/engines/kyra/sound_adlib.cpp	2006-05-28 11:33:17 UTC (rev 22707)
+++ scummvm/trunk/engines/kyra/sound_adlib.cpp	2006-05-28 11:43:04 UTC (rev 22708)
@@ -81,8 +81,9 @@
 		const char *name;
 	};
 
-	static const OpcodeEntry _opcodeList[];
-	static const int _opcodesEntries;
+	void setupOpcodeList();
+	const OpcodeEntry *_opcodeList;
+	int _opcodesEntries;
 
 	int snd_ret0x100(va_list &list);
 	int snd_ret0x1983(va_list &list);
@@ -228,8 +229,10 @@
 		POpcode function;
 		const char *name;
 	};
-	static const ParserOpcode _parserOpcodeTable[];
-	static const int _parserOpcodeTableSize;
+	
+	void setupParserOpcodeTable();
+	const ParserOpcode *_parserOpcodeTable;
+	int _parserOpcodeTableSize;
 
 	int update_setRepeat(uint8 *&dataptr, Channel &channel, uint8 value);
 	int update_checkRepeat(uint8 *&dataptr, Channel &channel, uint8 value);
@@ -384,6 +387,9 @@
 };
 
 AdlibDriver::AdlibDriver(Audio::Mixer *mixer) {
+	setupOpcodeList();
+	setupParserOpcodeTable();
+
 	_mixer = mixer;
 
 	_flags = 0;
@@ -1811,146 +1817,154 @@
 // static res
 
 #define COMMAND(x) { &AdlibDriver::x, #x }
-const AdlibDriver::OpcodeEntry AdlibDriver::_opcodeList[] = {
-	COMMAND(snd_ret0x100),
-	COMMAND(snd_ret0x1983),
-	COMMAND(snd_initDriver),
-	COMMAND(snd_deinitDriver),
-	COMMAND(snd_setSoundData),
-	COMMAND(snd_unkOpcode1),
-	COMMAND(snd_startSong),
-	COMMAND(snd_unkOpcode2),
-	COMMAND(snd_unkOpcode3),
-	COMMAND(snd_readByte),
-	COMMAND(snd_writeByte),
-	COMMAND(snd_getSoundTrigger),
-	COMMAND(snd_unkOpcode4),
-	COMMAND(snd_dummy),
-	COMMAND(snd_getNullvar4),
-	COMMAND(snd_setNullvar3),
-	COMMAND(snd_setFlag),
-	COMMAND(snd_clearFlag)
-};
 
-const AdlibDriver::ParserOpcode AdlibDriver::_parserOpcodeTable[] = {
-	// 0
-	COMMAND(update_setRepeat),
-	COMMAND(update_checkRepeat),
-	COMMAND(update_setupProgram),
-	COMMAND(update_setNoteSpacing),
+void AdlibDriver::setupOpcodeList() {
+	static const OpcodeEntry opcodeList[] = {
+		COMMAND(snd_ret0x100),
+		COMMAND(snd_ret0x1983),
+		COMMAND(snd_initDriver),
+		COMMAND(snd_deinitDriver),
+		COMMAND(snd_setSoundData),
+		COMMAND(snd_unkOpcode1),
+		COMMAND(snd_startSong),
+		COMMAND(snd_unkOpcode2),
+		COMMAND(snd_unkOpcode3),
+		COMMAND(snd_readByte),
+		COMMAND(snd_writeByte),
+		COMMAND(snd_getSoundTrigger),
+		COMMAND(snd_unkOpcode4),
+		COMMAND(snd_dummy),
+		COMMAND(snd_getNullvar4),
+		COMMAND(snd_setNullvar3),
+		COMMAND(snd_setFlag),
+		COMMAND(snd_clearFlag)
+	};
+	
+	_opcodeList = opcodeList;
+	_opcodesEntries = ARRAYSIZE(opcodeList);
+}
 
-	// 4
-	COMMAND(update_jump),
-	COMMAND(update_jumpToSubroutine),
-	COMMAND(update_returnFromSubroutine),
-	COMMAND(update_setBaseOctave),
+void AdlibDriver::setupParserOpcodeTable() {
+	static const ParserOpcode parserOpcodeTable[] = {
+		// 0
+		COMMAND(update_setRepeat),
+		COMMAND(update_checkRepeat),
+		COMMAND(update_setupProgram),
+		COMMAND(update_setNoteSpacing),
 
-	// 8
-	COMMAND(update_stopChannel),
-	COMMAND(update_playRest),
-	COMMAND(update_writeAdlib),
-	COMMAND(update_setupNoteAndDuration),
+		// 4
+		COMMAND(update_jump),
+		COMMAND(update_jumpToSubroutine),
+		COMMAND(update_returnFromSubroutine),
+		COMMAND(update_setBaseOctave),
 
-	// 12
-	COMMAND(update_setBaseNote),
-	COMMAND(update_setupSecondaryEffect1),
-	COMMAND(update_stopOtherChannel),
-	COMMAND(update_waitForEndOfProgram),
+		// 8
+		COMMAND(update_stopChannel),
+		COMMAND(update_playRest),
+		COMMAND(update_writeAdlib),
+		COMMAND(update_setupNoteAndDuration),
 
-	// 16
-	COMMAND(update_setupInstrument),
-	COMMAND(update_setupPrimaryEffect1),
-	COMMAND(update_removePrimaryEffect1),
-	COMMAND(update_setBaseFreq),
+		// 12
+		COMMAND(update_setBaseNote),
+		COMMAND(update_setupSecondaryEffect1),
+		COMMAND(update_stopOtherChannel),
+		COMMAND(update_waitForEndOfProgram),
 
-	// 20
-	COMMAND(update_stopChannel),
-	COMMAND(update_setupPrimaryEffect2),
-	COMMAND(update_stopChannel),
-	COMMAND(update_stopChannel),
+		// 16
+		COMMAND(update_setupInstrument),
+		COMMAND(update_setupPrimaryEffect1),
+		COMMAND(update_removePrimaryEffect1),
+		COMMAND(update_setBaseFreq),
 
-	// 24
-	COMMAND(update_stopChannel),
-	COMMAND(update_stopChannel),
-	COMMAND(update_setPriority),
-	COMMAND(update_stopChannel),
+		// 20
+		COMMAND(update_stopChannel),
+		COMMAND(update_setupPrimaryEffect2),
+		COMMAND(update_stopChannel),
+		COMMAND(update_stopChannel),
 
-	// 28
-	COMMAND(updateCallback23),
-	COMMAND(updateCallback24),
-	COMMAND(update_setExtraLevel1),
-	COMMAND(update_stopChannel),
+		// 24
+		COMMAND(update_stopChannel),
+		COMMAND(update_stopChannel),
+		COMMAND(update_setPriority),
+		COMMAND(update_stopChannel),
 
-	// 32
-	COMMAND(update_setupDuration),
-	COMMAND(update_playNote),
-	COMMAND(update_stopChannel),
-	COMMAND(update_stopChannel),
+		// 28
+		COMMAND(updateCallback23),
+		COMMAND(updateCallback24),
+		COMMAND(update_setExtraLevel1),
+		COMMAND(update_stopChannel),
 
-	// 36
-	COMMAND(update_setFractionalNoteSpacing),
-	COMMAND(update_stopChannel),
-	COMMAND(update_setTempo),
-	COMMAND(update_removeSecondaryEffect1),
+		// 32
+		COMMAND(update_setupDuration),
+		COMMAND(update_playNote),
+		COMMAND(update_stopChannel),
+		COMMAND(update_stopChannel),
 
-	// 40
-	COMMAND(update_stopChannel),
-	COMMAND(update_setChannelTempo),
-	COMMAND(update_stopChannel),
-	COMMAND(update_setExtraLevel3),
+		// 36
+		COMMAND(update_setFractionalNoteSpacing),
+		COMMAND(update_stopChannel),
+		COMMAND(update_setTempo),
+		COMMAND(update_removeSecondaryEffect1),
 
-	// 44
-	COMMAND(update_setExtraLevel2),
-	COMMAND(update_changeExtraLevel2),
-	COMMAND(update_setAMDepth),
-	COMMAND(update_setVibratoDepth),
+		// 40
+		COMMAND(update_stopChannel),
+		COMMAND(update_setChannelTempo),
+		COMMAND(update_stopChannel),
+		COMMAND(update_setExtraLevel3),
 
-	// 48
-	COMMAND(update_changeExtraLevel1),
-	COMMAND(update_stopChannel),
-	COMMAND(update_stopChannel),
-	COMMAND(updateCallback38),
+		// 44
+		COMMAND(update_setExtraLevel2),
+		COMMAND(update_changeExtraLevel2),
+		COMMAND(update_setAMDepth),
+		COMMAND(update_setVibratoDepth),
 
-	// 52
-	COMMAND(update_stopChannel),
-	COMMAND(updateCallback39),
-	COMMAND(update_removePrimaryEffect2),
-	COMMAND(update_stopChannel),
+		// 48
+		COMMAND(update_changeExtraLevel1),
+		COMMAND(update_stopChannel),
+		COMMAND(update_stopChannel),
+		COMMAND(updateCallback38),
 
-	// 56
-	COMMAND(update_stopChannel),
-	COMMAND(updateCallback41),
-	COMMAND(update_resetToGlobalTempo),
-	COMMAND(update_nop1),
+		// 52
+		COMMAND(update_stopChannel),
+		COMMAND(updateCallback39),
+		COMMAND(update_removePrimaryEffect2),
+		COMMAND(update_stopChannel),
 
-	// 60
-	COMMAND(update_setDurationRandomness),
-	COMMAND(update_changeChannelTempo),
-	COMMAND(update_stopChannel),
-	COMMAND(updateCallback46),
+		// 56
+		COMMAND(update_stopChannel),
+		COMMAND(updateCallback41),
+		COMMAND(update_resetToGlobalTempo),
+		COMMAND(update_nop1),
 
-	// 64
-	COMMAND(update_nop2),
-	COMMAND(update_setupRhythmSection),
-	COMMAND(update_playRhythmSection),
-	COMMAND(update_removeRhythmSection),
+		// 60
+		COMMAND(update_setDurationRandomness),
+		COMMAND(update_changeChannelTempo),
+		COMMAND(update_stopChannel),
+		COMMAND(updateCallback46),
 
-	// 68
-	COMMAND(updateCallback51),
-	COMMAND(updateCallback52),
-	COMMAND(updateCallback53),
-	COMMAND(update_setSoundTrigger),
+		// 64
+		COMMAND(update_nop2),
+		COMMAND(update_setupRhythmSection),
+		COMMAND(update_playRhythmSection),
+		COMMAND(update_removeRhythmSection),
 
-	// 72
-	COMMAND(update_setTempoReset),
-	COMMAND(updateCallback56),
-	COMMAND(update_stopChannel)
+		// 68
+		COMMAND(updateCallback51),
+		COMMAND(updateCallback52),
+		COMMAND(updateCallback53),
+		COMMAND(update_setSoundTrigger),
+
+		// 72
+		COMMAND(update_setTempoReset),
+		COMMAND(updateCallback56),
+		COMMAND(update_stopChannel)
+	};
+	
+	_parserOpcodeTable = parserOpcodeTable;
+	_parserOpcodeTableSize = ARRAYSIZE(parserOpcodeTable);
 };
 #undef COMMAND
 
-const int AdlibDriver::_opcodesEntries = ARRAYSIZE(AdlibDriver::_opcodeList);
-const int AdlibDriver::_parserOpcodeTableSize = ARRAYSIZE(AdlibDriver::_parserOpcodeTable);
-
 // This table holds the register offset for operator 1 for each of the nine
 // channels. To get the register offset for operator 2, simply add 3.
 
@@ -2294,4 +2308,3 @@
 }
 
 } // end of namespace Kyra
-

Modified: scummvm/trunk/engines/kyra/staticres.cpp
===================================================================
--- scummvm/trunk/engines/kyra/staticres.cpp	2006-05-28 11:33:17 UTC (rev 22707)
+++ scummvm/trunk/engines/kyra/staticres.cpp	2006-05-28 11:43:04 UTC (rev 22708)
@@ -802,208 +802,212 @@
 
 // CD Version *could* use an different opcodeTable
 #define Opcode(x) &KyraEngine::x
-KyraEngine::OpcodeProc KyraEngine::_opcodeTable[] = {
-	// 0x00
-	Opcode(cmd_magicInMouseItem),
-	Opcode(cmd_characterSays),
-	Opcode(cmd_pauseTicks),
-	Opcode(cmd_drawSceneAnimShape),
-	// 0x04
-	Opcode(cmd_queryGameFlag),
-	Opcode(cmd_setGameFlag),
-	Opcode(cmd_resetGameFlag),
-	Opcode(cmd_runNPCScript),
-	// 0x08
-	Opcode(cmd_setSpecialExitList),
-	Opcode(cmd_blockInWalkableRegion),
-	Opcode(cmd_blockOutWalkableRegion),
-	Opcode(cmd_walkPlayerToPoint),
-	// 0x0c
-	Opcode(cmd_dropItemInScene),
-	Opcode(cmd_drawAnimShapeIntoScene),
-	Opcode(cmd_createMouseItem),
-	Opcode(cmd_savePageToDisk),
-	// 0x10
-	Opcode(cmd_sceneAnimOn),
-	Opcode(cmd_sceneAnimOff),
-	Opcode(cmd_getElapsedSeconds),
-	Opcode(cmd_mouseIsPointer),
-	// 0x14
-	Opcode(cmd_destroyMouseItem),
-	Opcode(cmd_runSceneAnimUntilDone),
-	Opcode(cmd_fadeSpecialPalette),
-	Opcode(cmd_playAdlibSound),
-	// 0x18
-	Opcode(cmd_playAdlibScore),
-	Opcode(cmd_phaseInSameScene),
-	Opcode(cmd_setScenePhasingFlag),
-	Opcode(cmd_resetScenePhasingFlag),
-	// 0x1c
-	Opcode(cmd_queryScenePhasingFlag),
-	Opcode(cmd_sceneToDirection),
-	Opcode(cmd_setBirthstoneGem),
-	Opcode(cmd_placeItemInGenericMapScene),
-	// 0x20
-	Opcode(cmd_setBrandonStatusBit),
-	Opcode(cmd_pauseSeconds),
-	Opcode(cmd_getCharactersLocation),
-	Opcode(cmd_runNPCSubscript),
-	// 0x24
-	Opcode(cmd_magicOutMouseItem),
-	Opcode(cmd_internalAnimOn),
-	Opcode(cmd_forceBrandonToNormal),
-	Opcode(cmd_poisonDeathNow),
-	// 0x28
-	Opcode(cmd_setScaleMode),
-	Opcode(cmd_openWSAFile),
-	Opcode(cmd_closeWSAFile),
-	Opcode(cmd_runWSAFromBeginningToEnd),
-	// 0x2c
-	Opcode(cmd_displayWSAFrame),
-	Opcode(cmd_enterNewScene),
-	Opcode(cmd_setSpecialEnterXAndY),
-	Opcode(cmd_runWSAFrames),
-	// 0x30
-	Opcode(cmd_popBrandonIntoScene),
-	Opcode(cmd_restoreAllObjectBackgrounds),
-	Opcode(cmd_setCustomPaletteRange),
-	Opcode(cmd_loadPageFromDisk),
-	// 0x34
-	Opcode(cmd_customPrintTalkString),
-	Opcode(cmd_restoreCustomPrintBackground),
-	Opcode(cmd_hideMouse),
-	Opcode(cmd_showMouse),
-	// 0x38
-	Opcode(cmd_getCharacterX),
-	Opcode(cmd_getCharacterY),
-	Opcode(cmd_changeCharactersFacing),
-	Opcode(cmd_copyWSARegion),
-	// 0x3c
-	Opcode(cmd_printText),
-	Opcode(cmd_random),
-	Opcode(cmd_loadSoundFile),
-	Opcode(cmd_displayWSAFrameOnHidPage),
-	// 0x40
-	Opcode(cmd_displayWSASequentialFrames),
-	Opcode(cmd_drawCharacterStanding),
-	Opcode(cmd_internalAnimOff),
-	Opcode(cmd_changeCharactersXAndY),
-	// 0x44
-	Opcode(cmd_clearSceneAnimatorBeacon),
-	Opcode(cmd_querySceneAnimatorBeacon),
-	Opcode(cmd_refreshSceneAnimator),
-	Opcode(cmd_placeItemInOffScene),
-	// 0x48
-	Opcode(cmd_wipeDownMouseItem),
-	Opcode(cmd_placeCharacterInOtherScene),
-	Opcode(cmd_getKey),
-	Opcode(cmd_specificItemInInventory),
-	// 0x4c
-	Opcode(cmd_popMobileNPCIntoScene),
-	Opcode(cmd_mobileCharacterInScene),
-	Opcode(cmd_hideMobileCharacter),
-	Opcode(cmd_unhideMobileCharacter),
-	// 0x50
-	Opcode(cmd_setCharactersLocation),
-	Opcode(cmd_walkCharacterToPoint),
-	Opcode(cmd_specialEventDisplayBrynnsNote),
-	Opcode(cmd_specialEventRemoveBrynnsNote),
-	// 0x54
-	Opcode(cmd_setLogicPage),
-	Opcode(cmd_fatPrint),
-	Opcode(cmd_preserveAllObjectBackgrounds),
-	Opcode(cmd_updateSceneAnimations),
-	// 0x58
-	Opcode(cmd_sceneAnimationActive),
-	Opcode(cmd_setCharactersMovementDelay),
-	Opcode(cmd_getCharactersFacing),
-	Opcode(cmd_bkgdScrollSceneAndMasksRight),
-	// 0x5c
-	Opcode(cmd_dispelMagicAnimation),
-	Opcode(cmd_findBrightestFireberry),
-	Opcode(cmd_setFireberryGlowPalette),
-	Opcode(cmd_setDeathHandlerFlag),
-	// 0x60
-	Opcode(cmd_drinkPotionAnimation),
-	Opcode(cmd_makeAmuletAppear),
-	Opcode(cmd_drawItemShapeIntoScene),
-	Opcode(cmd_setCharactersCurrentFrame),
-	// 0x64
-	Opcode(cmd_waitForConfirmationMouseClick),
-	Opcode(cmd_pageFlip),
-	Opcode(cmd_setSceneFile),
-	Opcode(cmd_getItemInMarbleVase),
-	// 0x68
-	Opcode(cmd_setItemInMarbleVase),
-	Opcode(cmd_addItemToInventory),
-	Opcode(cmd_intPrint),
-	Opcode(cmd_shakeScreen),
-	// 0x6c
-	Opcode(cmd_createAmuletJewel),
-	Opcode(cmd_setSceneAnimCurrXY),
-	Opcode(cmd_poisonBrandonAndRemaps),
-	Opcode(cmd_fillFlaskWithWater),
-	// 0x70
-	Opcode(cmd_getCharactersMovementDelay),
-	Opcode(cmd_getBirthstoneGem),
-	Opcode(cmd_queryBrandonStatusBit),
-	Opcode(cmd_playFluteAnimation),
-	// 0x74
-	Opcode(cmd_playWinterScrollSequence),
-	Opcode(cmd_getIdolGem),
-	Opcode(cmd_setIdolGem),
-	Opcode(cmd_totalItemsInScene),
-	// 0x78
-	Opcode(cmd_restoreBrandonsMovementDelay),
-	Opcode(cmd_setMousePos),
-	Opcode(cmd_getMouseState),
-	Opcode(cmd_setEntranceMouseCursorTrack),
-	// 0x7c
-	Opcode(cmd_itemAppearsOnGround),
-	Opcode(cmd_setNoDrawShapesFlag),
-	Opcode(cmd_fadeEntirePalette),
-	Opcode(cmd_itemOnGroundHere),
-	// 0x80
-	Opcode(cmd_queryCauldronState),
-	Opcode(cmd_setCauldronState),
-	Opcode(cmd_queryCrystalState),
-	Opcode(cmd_setCrystalState),
-	// 0x84
-	Opcode(cmd_setPaletteRange),
-	Opcode(cmd_shrinkBrandonDown),
-	Opcode(cmd_growBrandonUp),
-	Opcode(cmd_setBrandonScaleXAndY),
-	// 0x88
-	Opcode(cmd_resetScaleMode),
-	Opcode(cmd_getScaleDepthTableValue),
-	Opcode(cmd_setScaleDepthTableValue),
-	Opcode(cmd_message),
-	// 0x8c
-	Opcode(cmd_checkClickOnNPC),
-	Opcode(cmd_getFoyerItem),
-	Opcode(cmd_setFoyerItem),
-	Opcode(cmd_setNoItemDropRegion),
-	// 0x90
-	Opcode(cmd_walkMalcolmOn),
-	Opcode(cmd_passiveProtection),
-	Opcode(cmd_setPlayingLoop),
-	Opcode(cmd_brandonToStoneSequence),
-	// 0x94
-	Opcode(cmd_brandonHealingSequence),
-	Opcode(cmd_protectCommandLine),
-	Opcode(cmd_pauseMusicSeconds),
-	Opcode(cmd_resetMaskRegion),
-	// 0x98
-	Opcode(cmd_setPaletteChangeFlag),
-	Opcode(cmd_fillRect),
-	Opcode(cmd_vocUnload),
-	Opcode(cmd_vocLoad),
-	Opcode(cmd_dummy)
-};
+
+void KyraEngine::setupOpcodeTable() {
+	static OpcodeProc opcodeTable[] = {
+		// 0x00
+		Opcode(cmd_magicInMouseItem),
+		Opcode(cmd_characterSays),
+		Opcode(cmd_pauseTicks),
+		Opcode(cmd_drawSceneAnimShape),
+		// 0x04
+		Opcode(cmd_queryGameFlag),
+		Opcode(cmd_setGameFlag),
+		Opcode(cmd_resetGameFlag),
+		Opcode(cmd_runNPCScript),
+		// 0x08
+		Opcode(cmd_setSpecialExitList),
+		Opcode(cmd_blockInWalkableRegion),
+		Opcode(cmd_blockOutWalkableRegion),
+		Opcode(cmd_walkPlayerToPoint),
+		// 0x0c
+		Opcode(cmd_dropItemInScene),
+		Opcode(cmd_drawAnimShapeIntoScene),
+		Opcode(cmd_createMouseItem),
+		Opcode(cmd_savePageToDisk),
+		// 0x10
+		Opcode(cmd_sceneAnimOn),
+		Opcode(cmd_sceneAnimOff),
+		Opcode(cmd_getElapsedSeconds),
+		Opcode(cmd_mouseIsPointer),
+		// 0x14
+		Opcode(cmd_destroyMouseItem),
+		Opcode(cmd_runSceneAnimUntilDone),
+		Opcode(cmd_fadeSpecialPalette),
+		Opcode(cmd_playAdlibSound),
+		// 0x18
+		Opcode(cmd_playAdlibScore),
+		Opcode(cmd_phaseInSameScene),
+		Opcode(cmd_setScenePhasingFlag),
+		Opcode(cmd_resetScenePhasingFlag),
+		// 0x1c
+		Opcode(cmd_queryScenePhasingFlag),
+		Opcode(cmd_sceneToDirection),
+		Opcode(cmd_setBirthstoneGem),
+		Opcode(cmd_placeItemInGenericMapScene),
+		// 0x20
+		Opcode(cmd_setBrandonStatusBit),
+		Opcode(cmd_pauseSeconds),
+		Opcode(cmd_getCharactersLocation),
+		Opcode(cmd_runNPCSubscript),
+		// 0x24
+		Opcode(cmd_magicOutMouseItem),
+		Opcode(cmd_internalAnimOn),
+		Opcode(cmd_forceBrandonToNormal),
+		Opcode(cmd_poisonDeathNow),
+		// 0x28
+		Opcode(cmd_setScaleMode),
+		Opcode(cmd_openWSAFile),
+		Opcode(cmd_closeWSAFile),
+		Opcode(cmd_runWSAFromBeginningToEnd),
+		// 0x2c
+		Opcode(cmd_displayWSAFrame),
+		Opcode(cmd_enterNewScene),
+		Opcode(cmd_setSpecialEnterXAndY),
+		Opcode(cmd_runWSAFrames),
+		// 0x30
+		Opcode(cmd_popBrandonIntoScene),
+		Opcode(cmd_restoreAllObjectBackgrounds),
+		Opcode(cmd_setCustomPaletteRange),
+		Opcode(cmd_loadPageFromDisk),
+		// 0x34
+		Opcode(cmd_customPrintTalkString),
+		Opcode(cmd_restoreCustomPrintBackground),
+		Opcode(cmd_hideMouse),
+		Opcode(cmd_showMouse),
+		// 0x38
+		Opcode(cmd_getCharacterX),
+		Opcode(cmd_getCharacterY),
+		Opcode(cmd_changeCharactersFacing),
+		Opcode(cmd_copyWSARegion),
+		// 0x3c
+		Opcode(cmd_printText),
+		Opcode(cmd_random),
+		Opcode(cmd_loadSoundFile),
+		Opcode(cmd_displayWSAFrameOnHidPage),
+		// 0x40
+		Opcode(cmd_displayWSASequentialFrames),
+		Opcode(cmd_drawCharacterStanding),
+		Opcode(cmd_internalAnimOff),
+		Opcode(cmd_changeCharactersXAndY),
+		// 0x44
+		Opcode(cmd_clearSceneAnimatorBeacon),
+		Opcode(cmd_querySceneAnimatorBeacon),
+		Opcode(cmd_refreshSceneAnimator),
+		Opcode(cmd_placeItemInOffScene),
+		// 0x48
+		Opcode(cmd_wipeDownMouseItem),
+		Opcode(cmd_placeCharacterInOtherScene),
+		Opcode(cmd_getKey),
+		Opcode(cmd_specificItemInInventory),
+		// 0x4c
+		Opcode(cmd_popMobileNPCIntoScene),
+		Opcode(cmd_mobileCharacterInScene),
+		Opcode(cmd_hideMobileCharacter),
+		Opcode(cmd_unhideMobileCharacter),
+		// 0x50
+		Opcode(cmd_setCharactersLocation),
+		Opcode(cmd_walkCharacterToPoint),
+		Opcode(cmd_specialEventDisplayBrynnsNote),
+		Opcode(cmd_specialEventRemoveBrynnsNote),
+		// 0x54
+		Opcode(cmd_setLogicPage),
+		Opcode(cmd_fatPrint),
+		Opcode(cmd_preserveAllObjectBackgrounds),
+		Opcode(cmd_updateSceneAnimations),
+		// 0x58
+		Opcode(cmd_sceneAnimationActive),
+		Opcode(cmd_setCharactersMovementDelay),
+		Opcode(cmd_getCharactersFacing),
+		Opcode(cmd_bkgdScrollSceneAndMasksRight),
+		// 0x5c
+		Opcode(cmd_dispelMagicAnimation),
+		Opcode(cmd_findBrightestFireberry),
+		Opcode(cmd_setFireberryGlowPalette),
+		Opcode(cmd_setDeathHandlerFlag),
+		// 0x60
+		Opcode(cmd_drinkPotionAnimation),
+		Opcode(cmd_makeAmuletAppear),
+		Opcode(cmd_drawItemShapeIntoScene),
+		Opcode(cmd_setCharactersCurrentFrame),
+		// 0x64
+		Opcode(cmd_waitForConfirmationMouseClick),
+		Opcode(cmd_pageFlip),
+		Opcode(cmd_setSceneFile),
+		Opcode(cmd_getItemInMarbleVase),
+		// 0x68
+		Opcode(cmd_setItemInMarbleVase),
+		Opcode(cmd_addItemToInventory),
+		Opcode(cmd_intPrint),
+		Opcode(cmd_shakeScreen),
+		// 0x6c
+		Opcode(cmd_createAmuletJewel),
+		Opcode(cmd_setSceneAnimCurrXY),
+		Opcode(cmd_poisonBrandonAndRemaps),
+		Opcode(cmd_fillFlaskWithWater),
+		// 0x70
+		Opcode(cmd_getCharactersMovementDelay),
+		Opcode(cmd_getBirthstoneGem),
+		Opcode(cmd_queryBrandonStatusBit),
+		Opcode(cmd_playFluteAnimation),
+		// 0x74
+		Opcode(cmd_playWinterScrollSequence),
+		Opcode(cmd_getIdolGem),
+		Opcode(cmd_setIdolGem),
+		Opcode(cmd_totalItemsInScene),
+		// 0x78
+		Opcode(cmd_restoreBrandonsMovementDelay),
+		Opcode(cmd_setMousePos),
+		Opcode(cmd_getMouseState),
+		Opcode(cmd_setEntranceMouseCursorTrack),
+		// 0x7c
+		Opcode(cmd_itemAppearsOnGround),
+		Opcode(cmd_setNoDrawShapesFlag),
+		Opcode(cmd_fadeEntirePalette),
+		Opcode(cmd_itemOnGroundHere),
+		// 0x80
+		Opcode(cmd_queryCauldronState),
+		Opcode(cmd_setCauldronState),
+		Opcode(cmd_queryCrystalState),
+		Opcode(cmd_setCrystalState),
+		// 0x84
+		Opcode(cmd_setPaletteRange),
+		Opcode(cmd_shrinkBrandonDown),
+		Opcode(cmd_growBrandonUp),
+		Opcode(cmd_setBrandonScaleXAndY),
+		// 0x88
+		Opcode(cmd_resetScaleMode),
+		Opcode(cmd_getScaleDepthTableValue),
+		Opcode(cmd_setScaleDepthTableValue),
+		Opcode(cmd_message),
+		// 0x8c
+		Opcode(cmd_checkClickOnNPC),
+		Opcode(cmd_getFoyerItem),
+		Opcode(cmd_setFoyerItem),
+		Opcode(cmd_setNoItemDropRegion),
+		// 0x90
+		Opcode(cmd_walkMalcolmOn),
+		Opcode(cmd_passiveProtection),
+		Opcode(cmd_setPlayingLoop),
+		Opcode(cmd_brandonToStoneSequence),
+		// 0x94
+		Opcode(cmd_brandonHealingSequence),
+		Opcode(cmd_protectCommandLine),
+		Opcode(cmd_pauseMusicSeconds),
+		Opcode(cmd_resetMaskRegion),
+		// 0x98
+		Opcode(cmd_setPaletteChangeFlag),
+		Opcode(cmd_fillRect),
+		Opcode(cmd_vocUnload),
+		Opcode(cmd_vocLoad),
+		Opcode(cmd_dummy)
+	};
+	
+	_opcodeTable = opcodeTable;
+	_opcodeTableSize = ARRAYSIZE(opcodeTable);
+}
 #undef Opcode
 
-const int KyraEngine::_opcodeTableSize = ARRAYSIZE(_opcodeTable);
-
 const char *KyraEngine::_musicFiles[] = {
 	"INTRO",
 	"KYRA1A",


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.





More information about the Scummvm-git-logs mailing list