$Id$ Cross-reference for functions and variables for the original source code and the ScummVM implementation. BANKS ===== erase() Graphics::bankErase loadbank() Graphics::bankLoad overpack() Graphics::bankOverpack unpack() Graphics::bankUnpack COMMAND ======= ALTER_DEFAULT() *not needed* (use State::alterDefaultVerb) CLEAR_COMMAND() Command::clear EXECUTE_ACTION() Command::executeCurrentAction FIND_DEFAULT() *not needed* (use State::findDefaultVerb) LOOK() Command::lookAtSelectedObject LOOK_ICON(),LOOK_ITEM() Command::lookForCurrentIcon LOOK_ROOM() Command::lookForCurrentObject OPEN_CLOSE_OTHER() Command::openOrCloseAssociatedObject P1_SET_CONDITIONS() Command::setConditions P2_SET_AREAS() Command::setAreas P3_SET_OBJECTS() Command::setObjects P4_SET_ITEMS() Command::setItems SELECT() Command::grabCurrentSelection SELECT_ITEM() Command::grabSelectedItem SELECT_NOUN() Command::grabSelectedNoun SELECT_VERB() Command::grabSelectedVerb WALK() Command::makeJoeWalkTo - ACTION Command::_state.action ACTION2 Command::_state.selAction CLEVEL Command::_state.commandLevel COM_A Command::_cmdArea COM_A_MAX Command::_numCmdArea COM_O Command::_cmdObject COM_O_MAX Command::_numCmdObject COM_G Command::_cmdGameState COM_G_MAX Command::_numCmdGameState COM_I Command::_cmdInventory COM_I_MAX Command::_numCmdInventory COM_LIST Command::_cmdList COM_LIST_MAX Command::_numCmdList COMMANDstr Command::_command DEFCOMM Command::_state.defaultVerb MKEY Command::_mouseKey OLDVERB,VERB Command::_state.*verb OLDNOUN,NOUN Command::_state.*noun NOUN2 Command::_state.selNoun PARSE Command::_parse SUBJ1,SUBJ2 Command::_state.subject* CREDIT SCRIPTING SYSTEM ======================= Cinit() Ctext() Cupdate() - Ccol Ccount Cfp Cflag Cfontsize Cjustify Cpausecount Czone CUTAWAY ======= action_special_move() Cutaway::actionSpecialMove CUTAWAY() Cutaway::run MAKE_COMPLEX_ANIM() Cutaway::makeComplexAnimation SCENE_START() Logic::sceneStart SCENE_END() Logic::sceneStop - CUTON Input::_cutawayRunning CUTQUIT Input::_cutawayQuit FINAL_ROOM Cutaway::_finalRoom IROOM Cutaway::_initialRoom OBJ_CUT OBJ_ANIM OLDBANK PERSON_DATA SCENE Logic::_scene TROOM Cutaway::_temporaryRoom DEBUG ===== cd_sample_check() debuginfo() Debug::printInfo select_new_room() Debug::jumpToRoom - AREAVAR (boolean, if true display objects/areas boxes) GAME SETTINGS ============= game_load() Logic::gameLoad() game_save() Logic::gameSave() - config_request MUSICTOGGLE Sound::_musicToggle / ConfMan.("music_mute") SFXTOGGLE Sound::_sfxToggle / ConfMan.("sfx_mute") TALKSPD Logic::_talkSpeed / ConfMan.("talkspeed") TEXTTOGGLE Logic::_subtitles / ConfMan.("subtitles") VersionStr GameVersion::versionString VOICETOGGLE Sound::_speechToggle / ConfMan.("speech_mute") VOLUME ? / ConfMan.("master_volume") GRAPHICS ======== bob() Graphics::bobDraw Box() Display::drawBox CHECK_PARALLAX() Graphics::bobCustomParallax clearallbobs() Graphics::bobClearAll clearbob() Graphics::bobClear drawbobs() Graphics::bobDrawAll freeallframes() Graphics::frameEraseAll(true) freeframes() Graphics::frameEraseAll(false) invbob() Graphics::bobDrawInventoryItem loadbackdrop() Graphics::loadBackdrop loadpanel() Graphics::loadPanel MAKE_SPEAK_BOB() Graphics::bobSetText makeanim() BobSlot::animNormal movebob() BobSlot::move pastebob() Graphics::bobPaste requestor() shrinkbob() Graphics::bobShrink sortbobs() Graphics::bobSortAll stringanim() BobSlot::animString - bobs Graphics::_bobs cambob Graphics::_cameraBob sortedbobs Graphics::_sortedBobs INPUT ===== check_keys() Input::checkKeys() get_key() *not needed* - drawmouseflag *not needed* (equivalent to _display->showMouseCursor(bool)) key_commands Input::_currentCommandKeys key_language Input::_commandKeys KEYVERB Input::_keyVerb MouseButton Input::_mouseButton mouseflag *not needed* no_check_keys Input::_noCheckKeys INVENTORY ========= DEL_ITEM_NUM() Logic::inventoryDeleteItem INS_ITEM_NUM() Logic::inventoryInsertItem INVDWN() Logic::inventoryScroll INVENTORY() Logic::inventoryRefresh INVUP() Logic::inventoryScroll SETUP_ITEMS() Logic::inventorySetup - INV1,INV2,INV3,INV4 Logic::_inventoryItem JOE === FACE_JOE() Logic::joeFace GRAB_DIR(),GRAB_JOE() Logic::joeGrab SETUP_HERO() Logic::joeSetupInRoom SETUP_JOE() Logic::joeSetup USE_UNDERWEAR() Logic::joeUseUnderwear USE_CLOTHES() Logic::joeUseClothes USE_DRESS() Logic::joeUseDress - CUTJOEF Logic::_joe.cutFacing JOE_RESPstr Logic::_joeResponse JOEF,JX,JY,JDIR Logic::_joe.* JOEWALK Logic::_joe.walk JOURNAL ======= clearlefttext() Journal::clearPanelTexts drawnames() Journal::drawSaveDescriptions findsaves() Journal::findSaveDescriptions menutext() Journal::drawPanelText predrawbobs() Journal::drawConfigPanel / Journal::drawNormalPanel prompt_do() *not needed* USE_JOURNAL() Logic::useJournal waitmousezone() *not needed* - choice Journal::_currentSaveSlot decbase Journal::_currentSavePage in_journal *not needed* (the hack in puttext() seems useless and CHECK_PARALLAX() is never called) save_descriptions Journal::_saveDescriptions walkgameload *not needed ?* LOGIC ===== CHECK_PLAYER() Logic::checkPlayer DISP_OBJECTS() Logic::roomSetupObjects DISP_ROOM() Logic::roomDisplay FIND_BOB() Logic::findBob FIND_FRAME() Logic::findFrame FIND_GRAPHIC() Logic::graphicData FIND_SCALE() Logic::findScale FIND_VERB() Logic::findVerb P3_COPY_FROM() Logic::objectCopy R_MAP() Logic::handlePinnacleRoom REDISP_OBJECT() Logic::roomRefreshObject restart_game() SETUP_BOBS() Graphics::bobSetupControl SETUP_FURNITURE() Logic::roomSetupFurniture SETUP_ROOM() Logic::changeRoom SETUP_SCREENS() *not needed* (only calls Graphics::loadPanel) SETUP_VARS() *not needed* (equivalent to Command::clear(), SCENE=0, clear(gamestate)) update() Logic::update - A_ANIMstr Logic::_aAnim A_ANIM_MAX Logic::_numAAnim A_NAMEstr Logic::_aName A_NAME_MAX Logic::_numAName A_FILEstr Logic::_aFile A_FILE_MAX Logic::_numAFile ACTOR_DATA_MAX Logic::_numActors AREA Logic::_area AREAMAX Logic::_areaMax bamflag Graphics::_bam.flag bamindex Graphics::_bam.index DESCTOT Logic::_numDescriptions ENTRY_OBJ Logic::_entryObj FMAX Logic::_numFurnitureStatic FMAXA Logic::_numFurnitureAnimated FMAXLEN Logic::_numFurnitureAnimatedLen FRAMES Logic::_numFrames FURN_DATA_MAX Logic::_numFurniture GAMESTATE Logic::_gameState GRAPHIC_ANIM_MAX Logic::_numGraphicAnim GRAPHIC_DATA Logic::_graphicData GRAPHIC_MAX Logic::_numGraphics ITEMTOT Logic::_numItems ITEM_DATA Logic::_itemData NAMETOT Logic::_numNames NEW_ANIM Logic::_newAnim OBJ_DESC_DATA Logic::_objectDescription OBJ_DESC_MAX Logic::_numObjDesc OBJECT_BOX Logic::_objectBox OBJECT_DATA Logic::_objectData OBJECT_DESCRstr Logic::_objDescription OBJECT_NAMEstr Logic::_objName OBJMAX Logic::_objMax OBJTOT Logic::_numObjects OLDROOM,ROOM,NEW_ROOM Logic::_*oom ROOMTOT Logic::_numRooms ROOM_DATA Logic::_roomData ROOM_NAMEstr Logic::_roomName SFACTOR Logic::_joe.scale VERB_NAMEstr Verb::_verbName WALK_OFF_DATA Logic::_walkOffData WALK_OFF_MAX Logic::_numWalkOffs PERSONS ======= ALLOCATE_PERSON() Logic::personAllocate CREATE_ANIM() Logic::animCreate SET_PERSON_DATA() Logic::personSetData SETUP_PERSON() Logic::personSetup OBJ_PERSON() Logic::objectForPerson - PERSON_FACE PERSON_FACE_MAX PERSON_FRAMES Logic::_personFrames P_ANIMstr Person.anim P_NAMEstr Person.name P_STAND,P_BNUM,P_ROOM Person.actor->* P_BANK,P_X,P_Y,P_COLOR Person.actor->* P_VALUE,P_GAMES Person.actor->* SFRAME Person.bobFrame RESOURCE ======== tflen() Resource::fileSize topen() Resource::loadFile tseek() *not needed* SCREEN ====== calc_screen_scroll() Display::horizontalScrollUpdate changejoepal() Display::palSetJoe check_colors() Display::palCustomColors check_pal_scroll Display::palCustomScroll clearpanel() Display::prepareUpdate drawbackdrop() Display::prepareUpdate drawpanel() Display::prepareUpdate drawscreen() Display::update dynalum() Dynalum::update fade_panel() Display::palFadePanel fadein() Display::palFadeIn fadeout() Display::palFadeOut flashspecial() Display::palCustomFlash loadfont() TextRenderer::init palscroll() Display::palScroll putcharacter() TextRenderer::drawChar setpal() Display::palSet - BDxres Display::_bdWidth BDyres Display::_bdHeight clothespal Display::_palJoeClothes COMPANEL *not needed* (argument) dresspal Display::_palJoeDress font TextRenderer::_font font_sizes TextRenderer::charWidth FULLSCREEN Display::_fullscreen nopalscroll Display::_pal.scrollable palette Display::_pal.room panelflag *not needed* (redundant with fullscreen) scrollx Display::_horizontalScroll tpal Display::_pal.screen SOUND ===== alter_current_volume() playsong() Sound::playSong() sfxbusy() Sound::waitSfxFinished() sfxplay() Sound::sfxPlay() - song[] Sound::_song[] tunelist[] Sound::_tune[] lastmerge Sound::_lastMerge altmrgpri Sound::_altMrgPri oldsn Sound::_previousSongNum LASTSONG Sound::_previousSong CURRSONG Sound::_currentSong SFXNAME Sound::_sfxName tmpbamflag VOLUME STATE ===== ALTER_STATE() State::alterState* FIND_STATE() State::findState* - TALK ==== FIND_SACTION() Talk::findSpeechParameters MOVE_SPEAK() SPEAK() Talk::speak SPEAK_SUB() Talk::speakSegment talk() Talk::talk TALK_PROC() Talk::talk - A1,A12 actiondata Talk::_speechParameters HEAD JMAX JOEKEYstr LEVEL LEVELMAX OLDLEVEL OLDS OWALK PERstr PKEYstr TALKHEAD TALKQUIT TALKstr TALK_SELECTED Logic::_talkSelected TEXTS ===== blanktexts() Graphics::textClear drawtext() Graphics::textDrawAll Ink() Graphics::textCurrentColor MIDDLE() Graphics::textCenterX / Graphics::textSetCentered text() Graphics::textSet textlen() Graphics::textWidth - textcol Graphics::_curTextColor texts Graphics::_texts WALK ==== CALC_PATH() Walk::calcPath CALC_WALK() Walk::incWalkData CALC_X() Walk::calcC CALC_Y() Walk::calcC CALCSCALE() Area::calcScale FIND_FREE_AREA Walk::findFreeArea FIND_NEWP() Walk::findAreaPosition FIND_OLDP() Walk::findAreaPosition MOVE_JOE() Walk::moveJoe MOVE_OTHER() Walk::movePerson - AREALIST Walk::_areaList AREASTRIKE Walk::_areaStrike movdata Walk::_moveData WALK_DATA Walk::_walkData WALKI Walk::_walkDataCount ZONES ===== ClearZones() Logic::zoneClearAll SETUP_PANEL_ZONES() Logic::zoneSetupPanel SETUP_ZONES() Logic::zoneSetup SetZone() Logic::zoneSet zone() Logic::zoneIn / Logic::zoneInArea - zones Logic::_zones (UNSORTED) ========== in() defs.h InRange() macro find_cd_cut() findCdCut find_cd_desc() *not needed* (see Logic::joeSpeak()) - Kstr bank9 NEWDEF, M,A, FRAME, AM, WX,WY, PX,PY, LD,FD DESC2,DESC PERSON_OBJ FS,FE,FACE, TY, DY, I2, N,V, ds,bs, bx,by, dx,dy, SFAC,FDIR, OBJ,E,T, CH, OLDG,S2,S1,ITEM,TYPE,C, NAME,TL,TI,TS,WC,IMAGE, D,P,LI,R CANTQUIT (NO NEED TO BE GLOBAL) ====================== Nstr,F1,F2,F3,F4,F5,F6,F7,F8,SF,BF,AS,MS // MOVE_OTHER (struct movdata *) Nstr,S,F,BODY,BF,RF,AF,SANIMstr,FF // FIND_SACTION (struct action *) CURRBOB // SETUP_FURNITURE, REDISP_OBJECT, DISP_OBJECTS PSY,PSX,CSX,DX1,DX2,DY1,DY2,PCF,CCF,CSY // FIND_NEWP, FIND_OLDP tx,ty,SFRAME,EFRAME,SPEED // FIND_GRAPHIC AREAMAXv CURRY OMAX,OMAXA TEMPA BANK,BNUM DIFF // LOOK local var RET // P1_SET_CONDITIONS local var BS,DS // CALC_SCALE SX,SY, NEWA // FIND_FREE_AREA local IX,IY // Cutaway locals COM // EXECUTE_ACTION local COMMAX // EXECUTE_ACTION local COND // EXECUTE_ACTION local CURRCOM // EXECUTE_ACTION local GSET // P1_SET_CONDITIONS local A2 // EXECUTE_ACTION local TEMPI // P1_SET_CONDITIONS local MAPC // findFreeArea local var NEWP,OLDP // locals in joeMove && personMove OLDX,X,OLDY,Y // passed as arguments X2,X1,XD,YD // incWalkData && findFreeArea locals Gstr // not needed, grab state Pstr // not needed, FIND_STATE result OUTLINE // not needed, textSet() Graphics::parameter FTOT // queen.c/SETUP_FURNITURE local var OBJMAXv // == Logic::_objMax[Logic::_currentRoom] TEMPstr WORDstr JOE2str,PERSON2str // locals in Talk::initialTalk SUBJECT