Content for everyone
Technical stuff
Links
YouTube Videos
|
ANIMDLL.dllVersion 1a (download, full disasm)BA Retail versions: 1994-10-05 14:32:34 Size: 1686 bytes MD5 sum: fa91c98711e5d6ba89b5d0cfa438874a Initial version with the following functions:
Version 1b (download, full disasm)BA Demo and Special Edition: 1994-11-29 15:44:00 Size: 1646 MD5 sum: 4c93de0157eb5ba9c42bf290249a2c3c This DLL is fully compatible with the retail version and has small improvements. Therefore it should be used instead of the original DLL of October 1994. Modified functions:
Version 2 (download, full disasm)Panic in the Park + Waldo 1: 1995-05-10 17:14 Size: 1796 bytes MD5 sum: 4dd2c6453cb3d5a7fb8a2b7e848a42f2 This DLL is NOT compatible with Blown Away and vice versa! Modified functions:
New functions (stubs that always return 0):
C-style Headers// TODO: Return values unknown
// TODO: Order of arguments and calling convention unknown
// PIP = "Panic in the Park"
// otherwise, "Blown Away"
#define PIP
typedef tagIPMA_CONFIG_DATA {
DWORD fccSignature; // "SUGR" set by game. Can also be "IPMA"
#ifdef PIP
// Unknown data structure. Size: 3Ah (including signature)
#else
// Unknown data structure. Size: 22h (including signature)
#endif
} IPMA_CONFIG_DATA;
// Possibly a TIMERPROC as required by the WinAPI function SetTimer, listens to nIDEvent = 'ANIM'.
VOID CALLBACK TIMERDLL_PROC(HWND hWnd, UINT uMsg, UINT_PTR nIDEvent, DWORD dwTime);
// Only displays a message box "Test Running" with caption "AnimDLL16" and does nothing else.
// Returns the result of MessageBox()
int FAR PASCAL TIMERDLL_TEST();
// Loads a sound file and returns a memory handle
#ifdef PIP
HGLOBAL FAR PASCAL LOAD_SOUND(LPSTR pszFileName, BOOL bShowErrorMsg);
#else
HGLOBAL FAR PASCAL LOAD_SOUND(LPSTR pszFileName);
#endif
// Unloads a sound identified by a memory handle
WORD? FAR PASCAL UNLOAD_SOUND(HGLOBAL hMem);
// Plays a sound identified by a memory handle
WORD? FAR PASCAL PLAY_SOUND(HGLOBAL hMem, BOOL bLoop);
// Opens the codec
#ifdef PIP
WORD? FAR PASCAL OPEN_IPMA_DLL(IPMA_CONFIG_DATA* configData, DWORD fccHandler);
#else
WORD? FAR PASCAL OPEN_IPMA_DLL(IPMA_CONFIG_DATA* configData);
#endif
// Closes the codec
WORD? FAR PASCAL CLOSE_IPMA_DLL(DWORD dwSendMessageDw1);
// Checks if the codecs "IV32" (requires Video for Windows) and "IPMA" (requires game setup) are installed.
#ifdef PIP
#define CHECKMODE_VFW 1
#define CHECKMODE_SECONDARY 2
#define CHECKMODE_BOTH CHECKMODE_VFW|CHECKMODE_SECONDARY
BOOL FAR PASCAL TEST_VIDEO_DLL(DWORD dwCheckMode, DWORD fccHandlerSecondary);
#else
BOOL FAR PASCAL TEST_VIDEO_DLL();
#endif
#ifdef PIP
// Unknown usage. It always returns 0.
WORD? FAR PASCAL INIT_FLI();
// Unknown usage. It always returns 0.
WORD? FAR PASCAL END_FLI();
// Unknown usage. It always returns 0.
WORD? FAR PASCAL PLAY_FLI(WORD unknown1, WORD unknown2);
// Unknown usage. It always returns 0.
WORD? FAR PASCAL STATUS_FLI(WORD unknown1);
// Unknown usage. It always returns 0.
WORD? FAR PASCAL STOP_FLI(WORD unknown1);
#endif
// WEP is the Windows Exit Procedure.
// It always returns the value 1.
WORD? FAR PASCAL WEP(BOOL fSystemExit);
|
|
Please also see my pages for other Imagination Pilots games: Blown Away | Panic in the Park | Waldo at the Circus | Waldo Exploring Geography | Eraser Turnabout | Virtual K'Nex |
|