17 changed files with 439 additions and 538 deletions
Binary file not shown.
@ -1,352 +1,296 @@ |
|||||||
// ref: 0x1000FDEE
|
// ref: 0x1000FDEE
|
||||||
_DWORD *UNKCALL Title_1000FDEE(HWND hWnd) { return 0; } |
void __fastcall Title_BlitTitleBuffer(HWND hWnd) |
||||||
/* {
|
{ |
||||||
HWND v1; // esi
|
|
||||||
_DWORD *v2; // edi
|
_DWORD *v2; // edi
|
||||||
_DWORD *result; // eax
|
int v3; // eax
|
||||||
int v4; // eax
|
HANDLE v4; // esi
|
||||||
_DWORD *v5; // esi
|
|
||||||
struct tagRECT Rect; // [esp+Ch] [ebp-18h]
|
struct tagRECT Rect; // [esp+Ch] [ebp-18h]
|
||||||
HWND v7; // [esp+1Ch] [ebp-8h]
|
|
||||||
HWND hWnda; // [esp+20h] [ebp-4h]
|
HWND hWnda; // [esp+20h] [ebp-4h]
|
||||||
|
|
||||||
v1 = hWnd; |
|
||||||
v7 = hWnd; |
|
||||||
v2 = (_DWORD *)GetWindowLongA(hWnd, -21); |
v2 = (_DWORD *)GetWindowLongA(hWnd, -21); |
||||||
hWnda = GetDlgItem(v1, 1043); |
hWnda = GetDlgItem(hWnd, 1043); |
||||||
result = (_DWORD *)IsWindowVisible(v1); |
if ( IsWindowVisible(hWnd) && hWnda && v2 && *v2 && titlePHTrans[0] ) |
||||||
if ( result && hWnda && v2 && *v2 && dword_1002A510[0] ) |
|
||||||
{ |
{ |
||||||
v4 = dword_1002A58C + 1; |
v3 = titleTransIdx + 1; |
||||||
dword_1002A58C = v4; |
titleTransIdx = v3; |
||||||
if ( !dword_1002A510[v4] || v4 >= 30 ) |
if ( !titlePHTrans[v3] || v3 >= 30 ) |
||||||
dword_1002A58C = 0; |
titleTransIdx = 0; |
||||||
GetWindowRect(hWnda, &Rect); |
GetWindowRect(hWnda, &Rect); |
||||||
ScreenToClient(v1, (LPPOINT)&Rect); |
ScreenToClient(hWnd, (LPPOINT)&Rect); |
||||||
ScreenToClient(v7, (LPPOINT)&Rect.right); |
ScreenToClient(hWnd, (LPPOINT)&Rect.right); |
||||||
result = GetPropA(v7, "TITLE_BUFFER"); |
v4 = GetPropA(hWnd, "TITLE_BUFFER"); |
||||||
v5 = result; |
if ( v4 ) |
||||||
if ( result ) |
|
||||||
{ |
{ |
||||||
SBltROP3(*result, Rect.left + *v2 + Rect.top * v2[1], result[1], result[2], result[1], v2[1], 0, 13369376); |
SBltROP3( |
||||||
STransBlt(*v5, 0, 0, v5[1], dword_1002A510[dword_1002A58C]); |
*(void **)v4, |
||||||
result = (_DWORD *)InvalidateRect(hWnda, 0, 0); |
(void *)(Rect.left + *v2 + Rect.top * v2[1]), |
||||||
|
*((_DWORD *)v4 + 1), |
||||||
|
*((_DWORD *)v4 + 2), |
||||||
|
*((_DWORD *)v4 + 1), |
||||||
|
v2[1], |
||||||
|
0, |
||||||
|
0xCC0020u); |
||||||
|
STransBlt(*(void **)v4, 0, 0, *((_DWORD *)v4 + 1), (HANDLE)titlePHTrans[titleTransIdx]); |
||||||
|
InvalidateRect(hWnda, 0, 0); |
||||||
} |
} |
||||||
} |
} |
||||||
return result; |
} |
||||||
} */ |
// 1002A58C: using guessed type int titleTransIdx;
|
||||||
// 1001036A: using guessed type int __stdcall STransBlt(_DWORD, _DWORD, _DWORD, _DWORD, _DWORD);
|
|
||||||
// 100103F4: using guessed type int __stdcall SBltROP3(_DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD);
|
|
||||||
// 1002A58C: using guessed type int dword_1002A58C;
|
|
||||||
|
|
||||||
// ref: 0x1000FEED
|
// ref: 0x1000FEED
|
||||||
int Title_1000FEED() { return 0; } |
void __cdecl Title_DeletePhTrans() |
||||||
/* {
|
{ |
||||||
int *v0; // esi
|
int *v0; // esi
|
||||||
int result; // eax
|
|
||||||
|
|
||||||
v0 = dword_1002A510; |
v0 = (int *)titlePHTrans; |
||||||
do |
do |
||||||
{ |
{ |
||||||
result = *v0; |
|
||||||
if ( *v0 ) |
if ( *v0 ) |
||||||
{ |
{ |
||||||
result = STransDelete(*v0); |
STransDelete((HANDLE)*v0); |
||||||
*v0 = 0; |
*v0 = 0; |
||||||
} |
} |
||||||
++v0; |
++v0; |
||||||
} |
} |
||||||
while ( (signed int)v0 < (signed int)&dword_1002A588 ); |
while ( (signed int)v0 < (signed int)&titlePHTrans[30] ); |
||||||
return result; |
} |
||||||
} */ |
|
||||||
// 1001033A: using guessed type int __stdcall STransDelete(_DWORD);
|
|
||||||
// 1002A588: using guessed type int dword_1002A588;
|
|
||||||
|
|
||||||
// ref: 0x1000FF0F
|
// ref: 0x1000FF0F
|
||||||
void **UNKCALL Title_1000FF0F(HWND hWnd) { return 0; } |
void __fastcall Title_FreeTransMem(HWND hWnd) |
||||||
/* {
|
{ |
||||||
HWND v1; // esi
|
void **v2; // eax MAPDST
|
||||||
_DWORD *result; // eax
|
void *v4; // eax
|
||||||
_DWORD *v3; // esi
|
|
||||||
int v4; // eax
|
|
||||||
|
|
||||||
v1 = hWnd; |
Title_DeletePhTrans(); |
||||||
Title_1000FEED(); |
v2 = (void **)RemovePropA(hWnd, "TITLE_BUFFER"); |
||||||
result = RemovePropA(v1, "TITLE_BUFFER"); |
if ( v2 ) |
||||||
v3 = result; |
|
||||||
if ( result ) |
|
||||||
{ |
{ |
||||||
v4 = *result; |
v4 = *v2; |
||||||
if ( v4 ) |
if ( v4 ) |
||||||
{ |
{ |
||||||
SMemFree(v4, "C:\\Src\\Diablo\\DiabloUI\\Title.cpp", 114, 0); |
SMemFree(v4, "C:\\Src\\Diablo\\DiabloUI\\Title.cpp", 114, 0); |
||||||
*v3 = 0; |
*v2 = 0; |
||||||
} |
} |
||||||
result = (_DWORD *)SMemFree(v3, "C:\\Src\\Diablo\\DiabloUI\\Title.cpp", 117, 0); |
SMemFree(v2, "C:\\Src\\Diablo\\DiabloUI\\Title.cpp", 117, 0); |
||||||
} |
} |
||||||
return result; |
} |
||||||
} */ |
|
||||||
// 10010340: using guessed type int __stdcall SMemFree(_DWORD, _DWORD, _DWORD, _DWORD);
|
|
||||||
|
|
||||||
// ref: 0x1000FF51
|
// ref: 0x1000FF51
|
||||||
HWND UNKCALL Title_1000FF51(HWND arg) { return 0; } |
void __fastcall Title_SetTitleBMP(HWND hWnd) |
||||||
/* {
|
{ |
||||||
HWND result; // eax
|
HWND v1; // eax MAPDST
|
||||||
int *v2; // esi
|
_DWORD *v2; // esi
|
||||||
int v3; // eax
|
void *v3; // eax
|
||||||
struct tagRECT Rect; // [esp+0h] [ebp-18h]
|
struct tagRECT Rect; // [esp+0h] [ebp-18h]
|
||||||
HWND v5; // [esp+10h] [ebp-8h]
|
|
||||||
HWND hDlg; // [esp+14h] [ebp-4h]
|
|
||||||
|
|
||||||
hDlg = arg; |
Title_FreeTransMem(hWnd); |
||||||
Title_1000FF0F(arg); |
v1 = GetDlgItem(hWnd, 1043); |
||||||
result = GetDlgItem(hDlg, 1043); |
if ( v1 ) |
||||||
v5 = result; |
|
||||||
if ( result ) |
|
||||||
{ |
{ |
||||||
GetClientRect(result, &Rect); |
GetClientRect(v1, &Rect); |
||||||
v2 = (int *)SMemAlloc(12, "C:\\Src\\Diablo\\DiabloUI\\Title.cpp", 134, 0); |
v2 = (unsigned int *)SMemAlloc(0xCu, "C:\\Src\\Diablo\\DiabloUI\\Title.cpp", 134, 0); |
||||||
v3 = SMemAlloc(Rect.right * Rect.bottom, "C:\\Src\\Diablo\\DiabloUI\\Title.cpp", 136, 8); |
v3 = SMemAlloc(Rect.right * Rect.bottom, "C:\\Src\\Diablo\\DiabloUI\\Title.cpp", 136, 8); |
||||||
*v2 = v3; |
*v2 = (unsigned int)v3; |
||||||
v2[1] = Rect.right; |
v2[1] = Rect.right; |
||||||
v2[2] = Rect.bottom; |
v2[2] = Rect.bottom; |
||||||
SDlgSetBitmapI(v5, 0, 0, -1, 1, v3, 0, Rect.right, Rect.bottom, -1); |
SDlgSetBitmapI(v1, 0, 0, -1, 1, v3, 0, Rect.right, Rect.bottom, -1); |
||||||
result = (HWND)SetPropA(hDlg, "TITLE_BUFFER", v2); |
SetPropA(hWnd, "TITLE_BUFFER", v2); |
||||||
} |
} |
||||||
return result; |
} |
||||||
} */ |
|
||||||
// 10010364: using guessed type int __stdcall SMemAlloc(_DWORD, _DWORD, _DWORD, _DWORD);
|
|
||||||
// 10010400: using guessed type int __stdcall SDlgSetBitmapI(_DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD);
|
|
||||||
|
|
||||||
// ref: 0x1000FFE8
|
// ref: 0x1000FFE8
|
||||||
_DWORD *__fastcall Title_1000FFE8(HWND hWnd, int a2) { return 0; } |
void __fastcall Title_LoadTitleImage(HWND hWnd, const char *pszFileName) |
||||||
/* {
|
{ |
||||||
HWND v2; // esi
|
|
||||||
int v3; // edi
|
int v3; // edi
|
||||||
_DWORD *result; // eax
|
_DWORD *v4; // eax
|
||||||
int v5; // esi
|
_DWORD *v5; // esi
|
||||||
int v6; // ebx
|
int v6; // ebx
|
||||||
int v7; // [esp+8h] [ebp-20h]
|
int a5[4]; // [esp+8h] [ebp-20h]
|
||||||
int v8; // [esp+Ch] [ebp-1Ch]
|
int data[2]; // [esp+18h] [ebp-10h]
|
||||||
int v9; // [esp+10h] [ebp-18h]
|
HANDLE *phTransOut; // [esp+20h] [ebp-8h]
|
||||||
int v10; // [esp+14h] [ebp-14h]
|
BYTE *pBuffer; // [esp+24h] [ebp-4h]
|
||||||
char v11; // [esp+18h] [ebp-10h]
|
|
||||||
int v12; // [esp+1Ch] [ebp-Ch]
|
|
||||||
int *v13; // [esp+20h] [ebp-8h]
|
|
||||||
int v14; // [esp+24h] [ebp-4h]
|
|
||||||
|
|
||||||
v2 = hWnd; |
|
||||||
v3 = 0; |
v3 = 0; |
||||||
v14 = 0; |
pBuffer = 0; |
||||||
local_100078BE(a2, &v14, &v11); |
local_LoadArtImage(pszFileName, &pBuffer, (DWORD *)data); |
||||||
result = GetPropA(v2, "TITLE_BUFFER"); |
v4 = (unsigned int *)GetPropA(hWnd, "TITLE_BUFFER"); |
||||||
v5 = (int)result; |
v5 = v4; |
||||||
if ( v14 ) |
if ( pBuffer ) |
||||||
{ |
{ |
||||||
if ( result ) |
if ( v4 ) |
||||||
{ |
{ |
||||||
v6 = v12 / result[2]; |
v6 = data[1] / v4[2]; |
||||||
if ( v6 > 30 ) |
if ( v6 > 30 ) |
||||||
v6 = 30; |
v6 = 30; |
||||||
if ( v6 > 0 ) |
if ( v6 > 0 ) |
||||||
{ |
{ |
||||||
v13 = dword_1002A510; |
phTransOut = (HANDLE *)titlePHTrans; |
||||||
do |
do |
||||||
{ |
{ |
||||||
v7 = 0; |
a5[0] = 0; |
||||||
v9 = *(_DWORD *)(v5 + 4) - 1; |
a5[2] = v5[1] - 1; |
||||||
v8 = v3 * *(_DWORD *)(v5 + 8); |
a5[1] = v3 * v5[2]; |
||||||
v10 = *(_DWORD *)(v5 + 8) + v8 - 1; |
a5[3] = v5[2] + a5[1] - 1; |
||||||
STransCreateI(v14, *(_DWORD *)(v5 + 4), *(_DWORD *)(v5 + 8), 8, &v7, 16777466, v13); |
STransCreateI(pBuffer, v5[1], v5[2], 8, (int)a5, 16777466, phTransOut); |
||||||
++v13; |
++phTransOut; |
||||||
++v3; |
++v3; |
||||||
} |
} |
||||||
while ( v3 < v6 ); |
while ( v3 < v6 ); |
||||||
} |
} |
||||||
} |
} |
||||||
result = (_DWORD *)SMemFree(v14, "C:\\Src\\Diablo\\DiabloUI\\Title.cpp", 197, 0); |
SMemFree(pBuffer, "C:\\Src\\Diablo\\DiabloUI\\Title.cpp", 197, 0); |
||||||
} |
} |
||||||
dword_1002A58C = 0; |
titleTransIdx = 0; |
||||||
return result; |
} |
||||||
} */ |
// 1002A58C: using guessed type int titleTransIdx;
|
||||||
// 10010340: using guessed type int __stdcall SMemFree(_DWORD, _DWORD, _DWORD, _DWORD);
|
|
||||||
// 10010346: using guessed type int __stdcall STransCreateI(_DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD);
|
|
||||||
// 1002A58C: using guessed type int dword_1002A58C;
|
|
||||||
|
|
||||||
// ref: 0x1001009E
|
// ref: 0x1001009E
|
||||||
int __fastcall Title_1001009E(HWND hWnd, int a2, HWND hWnda) { return 0; } |
void __fastcall Title_LoadImgSetTimer(HWND hWnd, const char *pszFileName) |
||||||
/* {
|
{ |
||||||
int v3; // edi
|
Title_SetTitleBMP(hWnd); |
||||||
HWND v4; // esi
|
Title_LoadTitleImage(hWnd, pszFileName); |
||||||
|
Title_BlitTitleBuffer(hWnd); |
||||||
v3 = a2; |
SDlgSetTimer((int)hWnd, 2, 55, Title_BlitTitleBufFnc); |
||||||
v4 = hWnd; |
} |
||||||
Title_1000FF51(hWnd); |
|
||||||
Title_1000FFE8(v4, v3); |
|
||||||
Title_1000FDEE(v4); |
|
||||||
return SDlgSetTimer(v4, 2, 55, Title_100100CB); |
|
||||||
} */ |
|
||||||
// 10010412: using guessed type int __stdcall SDlgSetTimer(_DWORD, _DWORD, _DWORD, _DWORD);
|
|
||||||
|
|
||||||
// ref: 0x100100CB
|
// ref: 0x100100CB
|
||||||
_DWORD *__stdcall Title_100100CB(HWND hWnd, int a2, int a3, int a4) { return 0; } |
void __stdcall Title_BlitTitleBufFnc(int hWnd, int a2, int a3, int a4) |
||||||
/* {
|
{ |
||||||
return Title_1000FDEE(hWnd); |
Title_BlitTitleBuffer((HWND)hWnd); |
||||||
} */ |
} |
||||||
|
|
||||||
// ref: 0x100100DC
|
// ref: 0x100100DC
|
||||||
signed int Title_100100DC() { return 0; } |
void __cdecl Title_cpp_init() |
||||||
/* {
|
{ |
||||||
signed int result; // eax
|
Title_cpp_float = Title_cpp_float_value; |
||||||
|
} |
||||||
result = 2139095040; |
// 1001F47C: using guessed type int Title_cpp_float_value;
|
||||||
dword_1002A588 = 2139095040; |
// 1002A588: using guessed type int Title_cpp_float;
|
||||||
return result; |
|
||||||
} */ |
|
||||||
// 1002A588: using guessed type int dword_1002A588;
|
|
||||||
|
|
||||||
// ref: 0x100100E7
|
// ref: 0x100100E7
|
||||||
void **UNKCALL Title_100100E7(HWND hWnd) { return 0; } |
void __fastcall Title_KillTitleTimer(HWND hWnd) |
||||||
/* {
|
{ |
||||||
HWND v1; // esi
|
HWND v1; // esi
|
||||||
|
|
||||||
v1 = hWnd; |
v1 = hWnd; |
||||||
SDlgKillTimer(hWnd, 2); |
SDlgKillTimer((int)hWnd, 2); |
||||||
return Title_1000FF0F(v1); |
Title_FreeTransMem(v1); |
||||||
} */ |
} |
||||||
// 10010418: using guessed type int __stdcall SDlgKillTimer(_DWORD, _DWORD);
|
|
||||||
|
|
||||||
// ref: 0x100100FA
|
// ref: 0x100100FA
|
||||||
void __stdcall UiTitleDialog(int a1) { return; } |
BOOL __stdcall UiTitleDialog(int a1) |
||||||
/* {
|
{ |
||||||
int v1; // eax
|
int v1; // eax
|
||||||
|
|
||||||
artfont_10001159(); |
artfont_LoadAllFonts(); |
||||||
v1 = SDrawGetFrameWindow(); |
v1 = (int)SDrawGetFrameWindow(); |
||||||
SDlgDialogBoxParam(hInstance, "TITLESCREEN_DIALOG", v1, Title_10010126, a1); |
SDlgDialogBoxParam(ghUiInst, "TITLESCREEN_DIALOG", v1, Title_MainProc, a1); |
||||||
return 1; |
return 1; |
||||||
} */ |
} |
||||||
// 10010370: using guessed type int __stdcall SDlgDialogBoxParam(_DWORD, _DWORD, _DWORD, _DWORD, _DWORD);
|
|
||||||
// 10010382: using guessed type _DWORD __stdcall SDrawGetFrameWindow();
|
// 10010382: using guessed type _DWORD __stdcall SDrawGetFrameWindow();
|
||||||
|
|
||||||
// ref: 0x10010126
|
// ref: 0x10010126
|
||||||
int __stdcall Title_10010126(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam) { return 0; } |
LRESULT __stdcall Title_MainProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) |
||||||
/* {
|
{ |
||||||
HWND v5; // eax
|
HWND v5; // eax
|
||||||
int v6; // [esp+0h] [ebp-8h]
|
|
||||||
|
|
||||||
if ( Msg <= 0x111 ) |
if ( uMsg <= 0x111 ) |
||||||
{ |
{ |
||||||
if ( Msg != 273 ) |
if ( uMsg != 273 ) |
||||||
{ |
{ |
||||||
if ( Msg != 2 ) |
if ( uMsg != 2 ) |
||||||
{ |
{ |
||||||
if ( Msg == 135 ) |
if ( uMsg == 135 ) |
||||||
return 4; |
return 4; |
||||||
if ( Msg != 256 ) |
if ( uMsg != 256 ) |
||||||
{ |
{ |
||||||
if ( Msg > 0x103 ) |
if ( uMsg > 0x103 ) |
||||||
{ |
{ |
||||||
if ( Msg <= 0x105 ) |
if ( uMsg <= 0x105 ) |
||||||
{ |
{ |
||||||
v5 = (HWND)SDrawGetFrameWindow(); |
v5 = (HWND)SDrawGetFrameWindow(); |
||||||
SendMessageA(v5, Msg, wParam, lParam); |
SendMessageA(v5, uMsg, wParam, lParam); |
||||||
} |
} |
||||||
else if ( Msg == 272 ) |
else if ( uMsg == 272 ) |
||||||
{ |
{ |
||||||
Title_1001025A(hWnd, lParam); |
Title_LoadAllTitleImgs(hWnd, lParam); |
||||||
PostMessageA(hWnd, 0x7E8u, 0, 0); |
PostMessageA(hWnd, 0x7E8u, 0, 0); |
||||||
return 1; |
return 1; |
||||||
} |
} |
||||||
} |
} |
||||||
return SDlgDefDialogProc(hWnd, Msg, wParam, lParam); |
return (LRESULT)SDlgDefDialogProc(hWnd, uMsg, (HDC)wParam, (HWND)lParam); |
||||||
} |
} |
||||||
goto LABEL_25; |
goto LABEL_25; |
||||||
} |
} |
||||||
Title_10010235(hWnd); |
Title_KillTimerAndFree(hWnd); |
||||||
return SDlgDefDialogProc(hWnd, Msg, wParam, lParam); |
return (LRESULT)SDlgDefDialogProc(hWnd, uMsg, (HDC)wParam, (HWND)lParam); |
||||||
} |
} |
||||||
goto LABEL_25; |
goto LABEL_25; |
||||||
} |
} |
||||||
if ( Msg != 275 ) |
if ( uMsg != 275 ) |
||||||
{ |
{ |
||||||
if ( Msg != 513 && Msg != 516 ) |
if ( uMsg != 513 && uMsg != 516 ) |
||||||
{ |
{ |
||||||
if ( Msg == 528 ) |
if ( uMsg == 528 ) |
||||||
{ |
{ |
||||||
if ( (_WORD)wParam == 513 || (_WORD)wParam == 516 ) |
if ( (_WORD)wParam == 513 || (_WORD)wParam == 516 ) |
||||||
Title_100102D7(hWnd); |
Title_KillAndFadeDlg(hWnd); |
||||||
} |
} |
||||||
else if ( Msg == 2024 ) |
else if ( uMsg == 2024 ) |
||||||
{ |
{ |
||||||
if ( !Fade_1000739F() ) |
if ( !Fade_CheckRange5() ) |
||||||
Fade_100073FD(hWnd, v6); |
Fade_SetFadeTimer((int)hWnd); |
||||||
return 0; |
return 0; |
||||||
} |
} |
||||||
return SDlgDefDialogProc(hWnd, Msg, wParam, lParam); |
return (LRESULT)SDlgDefDialogProc(hWnd, uMsg, (HDC)wParam, (HWND)lParam); |
||||||
} |
} |
||||||
LABEL_25: |
LABEL_25: |
||||||
Title_100102D7(hWnd); |
Title_KillAndFadeDlg(hWnd); |
||||||
return 0; |
return 0; |
||||||
} |
} |
||||||
if ( wParam == 1 ) |
if ( wParam == 1 ) |
||||||
goto LABEL_25; |
goto LABEL_25; |
||||||
return 0; |
return 0; |
||||||
} */ |
} |
||||||
// 1001037C: using guessed type int __stdcall SDlgDefDialogProc(_DWORD, _DWORD, _DWORD, _DWORD);
|
// 1001037C: using guessed type int __stdcall SDlgDefDialogProc(_DWORD, _DWORD, _DWORD, _DWORD);
|
||||||
// 10010382: using guessed type _DWORD __stdcall SDrawGetFrameWindow();
|
// 10010382: using guessed type _DWORD __stdcall SDrawGetFrameWindow();
|
||||||
|
|
||||||
// ref: 0x10010235
|
// ref: 0x10010235
|
||||||
void UNKCALL Title_10010235(HWND hDlg) { return; } |
void __fastcall Title_KillTimerAndFree(HWND hWnd) |
||||||
/* {
|
{ |
||||||
HWND v1; // esi
|
void **v2; // eax
|
||||||
_DWORD *v2; // eax
|
|
||||||
|
|
||||||
v1 = hDlg; |
Title_KillTitleTimer(hWnd); |
||||||
Title_100100E7(hDlg); |
Doom_DeleteFreeProcs(hWnd, titlemsgtbl); |
||||||
Doom_10006C53(v1, (int *)&unk_10023340); |
v2 = (void **)GetWindowLongA(hWnd, -21); |
||||||
v2 = (_DWORD *)GetWindowLongA(v1, -21); |
local_FreeMemPtr(v2); |
||||||
local_10007F72(v2); |
} |
||||||
} */ |
|
||||||
|
|
||||||
// ref: 0x1001025A
|
// ref: 0x1001025A
|
||||||
int __fastcall Title_1001025A(HWND hWnd, int a2) { return 0; } |
void __fastcall Title_LoadAllTitleImgs(HWND hWnd, int time) |
||||||
/* {
|
{ |
||||||
int v2; // ebx
|
DWORD *v4; // edi
|
||||||
HWND v3; // esi
|
|
||||||
int *v4; // edi
|
|
||||||
int result; // eax
|
|
||||||
HWND v6; // [esp+0h] [ebp-Ch]
|
|
||||||
|
|
||||||
v2 = a2; |
v4 = local_AllocWndLongData(); |
||||||
v3 = hWnd; |
SetWindowLongA(hWnd, -21, (LONG)v4); |
||||||
v4 = (int *)local_10007F46(); |
|
||||||
SetWindowLongA(v3, -21, (LONG)v4); |
|
||||||
if ( v4 ) |
if ( v4 ) |
||||||
{ |
{ |
||||||
local_10007944((int)v3, 0, &byte_10029448, -1, 1, (int)"ui_art\\title.pcx", v4, v4 + 1, 0); |
local_LoadArtWithPal(hWnd, 0, &nullcharacter, -1, 1, "ui_art\\title.pcx", (BYTE **)v4, v4 + 1, 0); |
||||||
Fade_100073C5(v3, 0); |
Fade_NoInputAndArt(hWnd, 0); |
||||||
} |
} |
||||||
Doom_100068AB(v3, (int *)&unk_10023340, 3); |
Doom_ParseWndProc3(hWnd, titlemsgtbl, 3); |
||||||
Title_1001009E(v3, (int)"ui_art\\logo.pcx", v6); |
Title_LoadImgSetTimer(hWnd, "ui_art\\logo.pcx"); |
||||||
if ( v2 ) |
if ( time ) |
||||||
result = SDlgSetTimer(v3, 1, 1000 * v2, 0); |
SDlgSetTimer((int)hWnd, 1, 1000 * time, 0); |
||||||
else |
else |
||||||
result = SDlgSetTimer(v3, 1, 5000, 0); |
SDlgSetTimer((int)hWnd, 1, 5000, 0); |
||||||
return result; |
} |
||||||
} */ |
|
||||||
// 10010412: using guessed type int __stdcall SDlgSetTimer(_DWORD, _DWORD, _DWORD, _DWORD);
|
|
||||||
|
|
||||||
// ref: 0x100102D7
|
// ref: 0x100102D7
|
||||||
int UNKCALL Title_100102D7(void *arg) { return 0; } |
void __fastcall Title_KillAndFadeDlg(HWND hWnd) |
||||||
/* {
|
{ |
||||||
void *v1; // esi
|
Fade_Range5SetZero(); |
||||||
|
SDlgKillTimer((int)hWnd, 1); |
||||||
v1 = arg; |
Fade_UpdatePaletteRange(10); |
||||||
Fade_100073B4(); |
SDlgEndDialog(hWnd, (void *)HANDLE_FLAG_INHERIT); |
||||||
SDlgKillTimer(v1, 1); |
} |
||||||
Fade_100072BE(10); |
|
||||||
return SDlgEndDialog(v1, 1); |
|
||||||
} */ |
|
||||||
// 10010376: using guessed type int __stdcall SDlgEndDialog(_DWORD, _DWORD);
|
|
||||||
// 10010418: using guessed type int __stdcall SDlgKillTimer(_DWORD, _DWORD);
|
|
||||||
|
|||||||
Loading…
Reference in new issue