https://bugs.winehq.org/show_bug.cgi?id=38128
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|FF3usME: Crashes upon |FF3usME (Final Fantasy 3 us |reading data from ROM file. |Multi Editor) v6.7.0 | |crashes upon reading data | |from ROM file Status|NEEDINFO |NEW URL| |https://web.archive.org/web | |/20200403180728/http://www. | |angelfire.com/pq/jumparound | |/dl/FF3usME670.zip Keywords| |download
--- Comment #9 from Anastasius Focht focht@gmx.net --- Hello folks,
confirming, still present.
Workaround for bug 37557 ("Multiple games and applications need 'mfc100.dll' ('winetricks -q vcrun2010' is a workaround)") is needed.
Super Nintendo (SNES) ROM for "Final Fantasy III [USA]" to test with:
https://wowroms.com/en/roms/super-nintendo/final-fantasy-iii-usa/27587.html
Unpack the ROM from the zip and load it in the editor. By default the file open dialog uses '*.smc' extension so you need to change to wildcard '*'.
It seems one can pass the ROM file directly via command line as well:
--- snip --- $ wine ./FF3usME.exe Final\ Fantasy\ III\ (USA)\ (Rev\ 1).sfc --- snip ---
Use the toolbar buttons for different actions: 'Item Editor' -> 'Reg Items' -> dropdown listbox -> crash.
--- snip --- $ WINEDEBUG=+seh,+relay,+win,+msg,+combo,+comboex wine ./FF3usME.exe >>log.txt 2>&1 ... 002b:trace:win:WIN_CreateWindowEx L"" L"ComboBox"->L"6.0.2600.2982!Combobox" ex=00000000 style=56210613 10,9 128x273 parent=0x200ca menu=0x57a inst=0x400000 params=(nil) 002b:trace:win:dump_window_styles style: WS_CHILD WS_VISIBLE WS_CLIPSIBLINGS WS_CLIPCHILDREN WS_VSCROLL WS_TABSTOP 00000613 002b:trace:win:dump_window_styles exstyle: 002b:trace:win:WIN_SetWindowLong 0x200c6 -12 57a W ... 002b:trace:win:WIN_CreateWindowEx (null) L"ComboLBox"->L"6.0.2600.2982!ComboLBox" ex=00000088 style=44a08151 23,123 128x244 parent=0x200c6 menu=0x3e8 inst=0x400000 params=0x1b2d600 002b:trace:win:dump_window_styles style: WS_CHILD WS_CLIPSIBLINGS WS_BORDER WS_VSCROLL 00008151 002b:trace:win:dump_window_styles exstyle: WS_EX_TOPMOST WS_EX_TOOLWINDOW 002b:trace:win:WIN_SetWindowLong 0x200be -12 3e8 W ... 002b:trace:comboex:COMBOEX_WindowProc hwnd=000200CA msg=111 wparam=8057a lParam=200c6 002b:trace:comboex:COMBOEX_Command for command 8 ... 002b:trace:comboex:COMBOEX_ComboWndProc hwnd=000200C6 msg=150 wparam=4 lParam=0, info_ptr=01B757D8 002b:Call user32.GetPropW(000200c6,0000c026) ret=00714899 002b:Ret user32.GetPropW() retval=01c02b08 ret=00714899 002b:Call user32.IsWindowUnicode(000200c6) ret=007148f7 002b:Ret user32.IsWindowUnicode() retval=00000001 ret=007148f7 002b:Call user32.CallWindowProcW(0070a680,000200c6,00000150,00000004,00000000) ret=0071490c 002b:Call window proc 0x70a680 (hwnd=0x200c6,msg=CB_GETITEMDATA,wp=00000004,lp=00000000) 002b:Call user32.GetWindowLongW(000200c6,00000000) ret=0070a6a8 002b:Ret user32.GetWindowLongW() retval=01b2d600 ret=0070a6a8 002b:trace:combo:COMBO_WindowProc [000200C6]: msg 0x150 wp 00000004 lp 00000000 002b:Call user32.IsWindow(000200c6) ret=0070a6f1 002b:Ret user32.IsWindow() retval=00000001 ret=0070a6f1 002b:Call user32.SendMessageW(000200be,00000199,00000004,00000000) ret=0070b24e 002b:Call window proc 0x730a90 (hwnd=0x200be,msg=LB_GETITEMDATA,wp=00000004,lp=00000000) 002b:Call user32.GetWindowLongW(000200be,00000000) ret=00730aad 002b:Ret user32.GetWindowLongW() retval=01b2d710 ret=00730aad 002b:Ret window proc 0x730a90 (hwnd=0x200be,msg=LB_GETITEMDATA,wp=00000004,lp=00000000) retval=00000000 002b:Ret user32.SendMessageW() retval=00000000 ret=0070b24e 002b:Ret window proc 0x70a680 (hwnd=0x200c6,msg=CB_GETITEMDATA,wp=00000004,lp=00000000) retval=00000000 002b:Ret user32.CallWindowProcW() retval=00000000 ret=0071490c 002b:Ret window proc 0x714520 (hwnd=0x200c6,msg=CB_GETITEMDATA,wp=00000004,lp=00000000) retval=00000000 002b:Ret user32.SendMessageW() retval=00000000 ret=0070ea52 002b:Call user32.SendMessageW(000200c6,00000147,00000000,00000000) ret=0070f4b9 002b:Call window proc 0x714520 (hwnd=0x200c6,msg=CB_GETCURSEL,wp=00000000,lp=00000000) 002b:Call user32.GetPropW(000200c6,0000c026) ret=00714579 002b:Ret user32.GetPropW() retval=01c02b08 ret=00714579 002b:Call user32.GetPropW(000200c6,0000c026) ret=00714899 002b:Ret user32.GetPropW() retval=01c02b08 ret=00714899 002b:Call user32.GetWindowLongW(000200ca,00000000) ret=0070fdec 002b:Ret user32.GetWindowLongW() retval=01b757d8 ret=0070fdec 002b:trace:comboex:COMBOEX_ComboWndProc hwnd=000200C6 msg=147 wparam=0 lParam=0, info_ptr=01B757D8 002b:Call user32.GetPropW(000200c6,0000c026) ret=00714899 002b:Ret user32.GetPropW() retval=01c02b08 ret=00714899 002b:Call user32.IsWindowUnicode(000200c6) ret=007148f7 002b:Ret user32.IsWindowUnicode() retval=00000001 ret=007148f7 002b:Call user32.CallWindowProcW(0070a680,000200c6,00000147,00000000,00000000) ret=0071490c 002b:Call window proc 0x70a680 (hwnd=0x200c6,msg=CB_GETCURSEL,wp=00000000,lp=00000000) 002b:Call user32.GetWindowLongW(000200c6,00000000) ret=0070a6a8 002b:Ret user32.GetWindowLongW() retval=01b2d600 ret=0070a6a8 002b:trace:combo:COMBO_WindowProc [000200C6]: msg 0x147 wp 00000000 lp 00000000 002b:Call user32.IsWindow(000200c6) ret=0070a6f1 002b:Ret user32.IsWindow() retval=00000001 ret=0070a6f1 002b:Call user32.SendMessageW(000200be,00000188,00000000,00000000) ret=0070b24e 002b:Call window proc 0x730a90 (hwnd=0x200be,msg=LB_GETCURSEL,wp=00000000,lp=00000000) 002b:Call user32.GetWindowLongW(000200be,00000000) ret=00730aad 002b:Ret user32.GetWindowLongW() retval=01b2d710 ret=00730aad 002b:Ret window proc 0x730a90 (hwnd=0x200be,msg=LB_GETCURSEL,wp=00000000,lp=00000000) retval=00000004 002b:Ret user32.SendMessageW() retval=00000004 ret=0070b24e 002b:Ret window proc 0x70a680 (hwnd=0x200c6,msg=CB_GETCURSEL,wp=00000000,lp=00000000) retval=00000004 002b:Ret user32.CallWindowProcW() retval=00000004 ret=0071490c 002b:Ret window proc 0x714520 (hwnd=0x200c6,msg=CB_GETCURSEL,wp=00000000,lp=00000000) retval=00000004 002b:Ret user32.SendMessageW() retval=00000004 ret=0070f4b9 002b:trace:seh:raise_exception code=c0000005 flags=0 addr=0x71129c ip=0071129c tid=002b 002b:trace:seh:raise_exception info[0]=00000000 002b:trace:seh:raise_exception info[1]=00000008 002b:trace:seh:raise_exception eax=00000004 ebx=00000000 ecx=01b757d8 edx=00000000 esi=01b757d8 edi=00000000 002b:trace:seh:raise_exception ebp=002ceeb8 esp=002cee60 cs=0023 ds=002b es=002b fs=0063 gs=006b flags=00010206 002b:trace:seh:call_stack_handlers calling handler at 0x7884f3ed code=c0000005 flags=0 ... wine: Unhandled page fault on read access to 00000008 at address 0071129C (thread 002b), starting debugger... --- snip ---
CBN_CLOSEUP -> https://source.winehq.org/git/wine.git/blob/3047385437c7ef36996d0418ac378677...
COMBOEX_GetText (NULL item) -> https://source.winehq.org/git/wine.git/blob/3047385437c7ef36996d0418ac378677...
$ sha1sum Final\ Fantasy\ III\ (USA)\ (Rev\ 1).* 057ada1c641e3e0b3ca34e6e4f4eb1b05a87143a Final Fantasy III (USA) (Rev 1).sfc 799b3984d5a3b9c1f6b9b005ee491573fce5a75e Final Fantasy III (USA) (Rev 1).zip
$ du -sh Final\ Fantasy\ III\ (USA)\ (Rev\ 1).* 3.0M Final Fantasy III (USA) (Rev 1).sfc 2.2M Final Fantasy III (USA) (Rev 1).zip
$ sha1sum FF3usME670.zip 5905001cf86fc14766be3914b4bbefff2f1648e1 FF3usME670.zip
$ du -sh FF3usME670.zip 492K FF3usME670.zip
$ wine --version wine-5.5-208-g3047385437
Regards