Unimplemented Opcode (00 EB 0D 90) 64 86 8B 30 03 00 00 80 F9 02 75 2E 64 0F B6
While trying to run darwinia 10k (darwinia 10000th anniversary version) i ran into this problem.
In fact, the common log just says this:
Rename process to "darwinia"
Redirecting overridden malloc from symtab function for /storage/roms/ports/darwinia10k/darwinia
Using native(wrapped) libdl.so.2
Using native(wrapped) libm.so.6
Using emulated /roms/ports/darwinia10k/libs/libsentry.so
Using emulated /roms/ports/darwinia10k/box64/x64/libstdc++.so.6
Using emulated /roms/ports/darwinia10k/box64/x64/libgcc_s.so.1
Using native(wrapped) libpthread.so.0
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux-x86-64.so.2
Using native(wrapped) libutil.so.1
Using native(wrapped) librt.so.1
Using emulated /roms/ports/darwinia10k/libs/libcurl.so
Using native(wrapped) libz.so.1
Using emulated /roms/ports/darwinia10k/libs/libssl.so.1.1
Using emulated /roms/ports/darwinia10k/libs/libcrypto.so.1.1
Warning: Global Symbol ZSTD_trace_decompress_begin not found, cannot apply R_X86_64_GLOB_DAT @0x10075bb98 ((nil)) in /storage/roms/ports/darwinia10k/darwinia
Warning: Global Symbol ZSTD_trace_decompress_end not found, cannot apply R_X86_64_GLOB_DAT @0x10075bba0 ((nil)) in /storage/roms/ports/darwinia10k/darwinia
1896|0x1005ee000: Unimplemented Opcode (00 EB 0D 90) 64 86 8B 30 03 00 00 80 F9 02 75 2E 64 0F B6
and i'm unsure whether the crash-on-start is caused by the libz missing simbols or the unimplemented opcode, but i'm guessing it's the opcode.
64 86 8B 30 03 00 00 is xchg byte ptr fs:[rbx+0x330], cl, it's not yet implemented in box64 yes.
Ok, I added this opcode on the interpreter only for now. It should allow the program to load further.
While the program definatelly continues further, and the game seems to start running, it crashes shortly after that (before main menu or intro is shown) and the following info can be seen with LOG=3
Run X86 (0x557d2a50), RIP=0x1005932ea, Stack=0x10118f698 is32bits=0
Run X86 (0x557d2a50), RIP=0x100593321, Stack=0x10118f698 is32bits=0
End of X86 run (0x557d2a50), RIP=0x100593321, Stack=0x10118f698, unimp=1, emu->fork=0, emu->uc_link=(nil), emu->quit=0
2304|0x100593321: Unimplemented Opcode (03 00 00 C3) 64 66 45 39 9C F2 74 03 00 00 74 14 48 8D BC
return 0x0
End of X86 run (0x557d2a50), RIP=0x100593321, Stack=0x10118f698, unimp=0, emu->fork=0, emu->uc_link=(nil), emu->quit=1
cc @ptitSeb @ksco the original problem has been resolved however the binary is running into a different unimplemented opcode. Do i just leave it as a part of this issue, or we mark this issue resolved and I open a new issue?
Oh sorry I missed this, I'll add the missing opcode. I think it's OK to stay on this issue, as it's the same kinda issue.
Added that opcode above, can you try again?
Added that opcode above, can you try again?
ofc. i'll let you know what happens sometime tomorrow, or sunday if life gets in the way :)
Added that opcode above, can you try again?
Ok, it's not complaining about any more unimplemented things, however it's crashing. I'm investigating the real reason why, but so far i think it's hitting a SIGSEGV after failing to create a .darwinia folder in root.
Feel free to resolve the issue as far as i'm concerned :) @ksco
I own this game on both GOG and Steam, but I don’t think it’s the same version as yours, could you send me a copy via the email on my profile? It’s a small game, hoping this isn’t too much trouble for you.
I own this game on both GOG and Steam, but I don’t think it’s the same version as yours, could you send me a copy via the email on my profile? It’s a small game, hoping this isn’t too much trouble for you.
sent.
I took a look, but don't know where the segfault came from. :(
oh btw windows version of the game work great with box64 + wine.
I took a look, but don't know where the segfault came from. :(
oh btw windows version of the game work great with box64 + wine.
Did you hit the segfault at all or... ?
since i'm running this on an ARM device, is wine included with box64 out of the box or... ?
also, regular x86 darwinia 2.0.0.5 works fine with box86.
we're mainly using box86/box64 as a translation layer to run linux games on arm devices, however we still have zero games working with box64. but if it has wine out of the box then perhaps windows games can be tried as well.
but i think we just can't use wine, since i think it needs x11, and we don't have x11 on the device. in fact, anything that needs x11 is a no-go. if it doesn't need x11 then i don't know why it hasn't been tried yet and have no good excuse :D
@RkShaRkz is this still an issue with the latest Box64?
@RkShaRkz is this still an issue with the latest Box64?
Hi @LukeShortCloud - i'll get back at you as soon as I try it, haven't had much time the past few days since you pinged me.
Closing for now but we can reopen if it's still an issue.