DO/WHMTG/OpCodes
From Dark Omen Wiki
Legend for Parameters:
int - Integer
int* - Pointer to an integer
char* - Pointer to a string
... - Dynamic amount of parameters
Op | Mnemonic | Parameter | Explanation |
---|---|---|---|
0x41db60 | WH_GOTO | int addr | Continues execution of the script at addr |
0x41db80 | WH_IF | int compare_type, int val | Does a compare depending on the value of compare_type (1: != val, 2: == val, 3: >= val, 4: <= val |
0x41dc30 | WH_ENDIF | - | Ends a WH_IF condition |
0x41dc60 | WH_ELSE | - | Optional Else case for a WH_IF condition |
0x41dc80 | WH_GOSUB | int addr | Same as WH_GOTO but allows returning |
0x41dcd0 | WH_RETURN | - | Jumps to the function placed after the last WH_GOSUB call |
0x41de30 | WH_DO | int unk | Not used. In theory runs up to a WH_LOOP call and then repeats or breaks. |
0x41ddf0 | WH_PUSHLV | - | Placed at the beginning of a function jumped to by WH_GOSUB |
0x41de10 | WH_POPLV | - | Placed before a WH_RETURN call |
0x41de20 | WH_SETLV | int lv | Not used. Changes the value of the LV. |
0x41de60 | WH_LOOP | int unk | Not used. Maybe jumps back to WH_DO |
0x41dd00 | WH_REPEAT | - | The used alternative of WH_DO. |
0x41dd20 | WH_UNTIL | int compare_type, int val | Jumps to WH_REPEAT if the comparison is true (see WH_IF) |
0x41dec0 | WH_BREAK | - | Not used. In theory it breaks a WH_DO and WH_REPEAT |
0x41ded0 | WH_END | - | Stub function (= does nothing). Looks like this marks the end of a Conversation (Removes the heads?) |
0x41c910 | WH_Test | int param | Not used. Reads the param and throws it away. |
0x41c920 | WH_PlayMovie | char* movie | Plays the video sequence pointed to by movie. |
0x41da00 | WH_Narration | - | Stub. |
0x41c970 | WH_MeetingPoint | char* backgroundimage, int speechaddr | Displays a background Image and plays a conversation script pointed to by speechaddr |
0x41ca00 | WH_TravelMap | char* map, char* townspr, char* dotfile, int ... | Displays the mapfile map in the background, displays the town names from the townsprite file and uses the dotfile for plotting. Other params unknown. |
0x41cb10 | WH_Deploy | - | Stub. Used before a WH_BATTLE call. |
0x41cb20 | WH_Battle | char* battlefolder, int unk | Loads the prj file that has the same name as the battlefolder and passes an unknown param. |
0x41cdc0 | WH_GetUnitStatus | int unitId | Used as compare value for WH_IF (and WH_UNTIL). 1 if the unit is alive? |
0x41ce20 | WH_GetUnitHireStatus | ||
0x41ce80 | WH_AddUnit | ||
0x41ced0 | WH_RemoveUnit | ||
0x41da10 | WH_WriteTextToFile | ||
0x41da20 | WH_SetUnitVar | ||
0x41da30 | WH_ReadUnitVar | ||
0x41dee0 | WH_SetVariable | ||
0x41df00 | WH_ReadVariable | ||
0x41d620 | WH_AddCash | ||
0x41d970 | WH_GameOver | ||
0x41da40 | WH_DisableAutosave | ||
0x41df20 | WH_ClearVariables | ||
0x41cfb0 | WH_ForceUnit | ||
0x41cff0 | WH_UnForceUnit | ||
0x41d040 | WH_ExcludeUnit | ||
0x41d080 | WH_IncludeUnit | ||
0x41d0d0 | WH_TemporyUnitSet | ||
0x41d120 | WH_TemporyUnitClear | ||
0x41d170 | WH_UnitIsGoingSet | ||
0x41d1c0 | WH_UnitIsGoingClear | ||
0x41cab0 | WH_Book | ||
0x41c9d0 | WH_MeetingWait | ||
0x41cb40 | WH_InitDebrief | ||
0x41cb70 | WH_Debrief | ||
0x41cae0 | WH_SaveGame | ||
0x41cba0 | WH_Picture | ||
0x41cc00 | WH_Delay | ||
0x41cce0 | WH_Pause | ||
0x41cd90 | WH_HideMouse | ||
0x41cda0 | WH_ShowMouse | ||
0x41cbe0 | WH_SetDeafultSaveName | ||
0x41d640 | WH_AddMagic | ||
0x41d690 | WH_RemoveMagic | ||
0x41d870 | WHMTG_DisplayBitmap | ||
0x41d8a0 | WHMTG_RemoveBitmap | ||
0x41d210 | WH_CheckObjective | ||
0x41d250 | WH_SetObjective | ||
0x41d550 | WHMTG_Voice | ||
0x41d8b0 | WHMTG_SpotAnim | ||
0x41d970 | WH_GameOver2 | ||
0x41d950 | WHMTG_ChooseInit | ||
0x41d740 | WHMTG_PlaySFX | ||
0x41d720 | WHMTG_StopSFX | ||
0x41d980 | WHMTG_StopAllSFX | ||
0x41d9a0 | WHMTG_PlayMusic | ||
0x41d9b0 | WHMTG_StopMusic | ||
0x41d9c0 | WHMTG_SetMusic | ||
0x41d9e0 | WHMTG_SetBackground | ||
0x41da50 | WHMTG_StartAnimAsync | ||
0x41da60 | WHMTG_StopAnim | ||
0x41da70 | WHMTG_PlayAnim | ||
0x41da80 | WHMTG_LoadHeads | ||
0x41da90 | WHMTG_ShowHead | ||
0x41d2a0 | WHMTG_Speak | ||
0x41d360 | WHMTG_SpeakNoWait | ||
0x41d420 | WHMTG_Narrate | ||
0x41daa0 | WHMTG_AddOption | ||
0x41dab0 | WHMTG_ChooseOption | ||
0x41dac0 | WHMTG_HideHead | ||
0x41d410 | WHMTG_Wait | ||
0x41d9f0 | WHMTG_PlaySample | ||
0x41dad0 | WHMTG_PlaySampleNoWait | ||
0x41dae0 | WHMTG_LoadDots | ||
0x41db10 | WHMTG_PlayDots | ||
0x41db20 | WHMTG_WaitForDots | ||
0x41db30 | WHMTG_FinishDots | ||
0x41db40 | WHMTG_ContinuePrompt | ||
0x41daf0 | WHMTG_SetResult | ||
0x41d280 | WHMTG_AddBitmap | ||
0x41db00 | WHMTG_RemoveBitmap2 | ||
0x41db50 | WHMTG_ResetDotList |