Information regarding the "Xbyak::Error" issue (Shenmue II?) (mostly for future reference purposes only)
NOTE: I've already received partial support for this issue on the Discord server, and it may be a local issue (or not). I'm posting it here mostly for future reference purposes in case anyone ever need it (otherwise it will get lost in the server). I'm almost finishing the game now anyway.
Since the issue couldn't be solved (I just decided to ignore it), I believe this should remain open in case anyone else ever experience the same problem. Also, I should make it clear that I'm not blaming anyone for this, since the error message of Xbyak itself is so vague it's hard to know what exactly is happening here. (Xbyak is part of the TensorFlow package).
The error: Sometimes when I'm playing Shenmue II, the game will freeze at random moments for about two seconds and then the emulator will close, returning the "Xbyak::Error" message in the log (full message and more details about it below). This usually happens after a load screen, but it did happen during gameplay (while walking) one or two times as well. I believe this happened about three or four times on each disc. After restarting the game I can continue playing normally until it happens again at other point. As far as I remember, it never happened twice at the exact same part, so this isn't specific to some certain places in the game or anything like that. It's completely random from a user's perspective. Thankfully, Shenmue II can be saved at pretty much anywhere and that's what I've been doing. It can be played until the end despite this issue.
The game: First of all, I'm not sure if this only happens with Shenmue II, but for now, it didn't happen with any other game yet. I can at least be sure that my game files are not causing the issue. Here are their CRC32 to confirm this (they all match the libretro's Dreamcast database):
CRC32 of my game files
NOTE: Some copies have the track 2 as a "raw" file instead of "bin" with a different CRC32 (15e73429), that will match the database. I did try using both.
Disc1
21b293fb GDI File
9be2b82c (Track 1).bin
49e43706 (Track 2).bin
49008d97 (Track 3).bin
c26f35dc (Track 4).bin
6dd8f55f (Track 5).bin
ab06006b (Track 6).bin
Disc2
99315706 GDI File
1c5f3a01 (Track 1).bin
49e43706 (Track 2).bin
94a20b71 (Track 3).bin
Disc3
2af33441 GDI File
5c8b2274 (Track 1).bin
49e43706 (Track 2).bin
fb2ade72 (Track 3).bin
Disc4
8a70b5d5 GDI File
7e6982a8 (Track 1).bin
49e43706 (Track 2).bin
d00aa5bb (Track 3).bin
Information about the emulator, my settings, my laptop and the log file:
Redream version and user settings
v1.5.0-350-gce0a987 (the latest development version available in 09-22-2020) with premium license.
fullmode= borderless fullscreen*
aspect= 4:3
region= europe
broadcast= pal*
cable= vga*
autosort= 32ad*
vsync= 1*
Running at the native resolution most of the time.
*I've tried changing these already.
Long version of the settings (redream.cfg)
port0=dev:4,desc:030000005e040000a102000000010000,type:controller
port1=
port2=
port3=
profile0=name:030000005e040000a102000000010000,type:controller,deadzone:57,a:joy0,b:joy1,x:joy2,y:joy3,start:joy7,dpad_up:joy13,dpad_down:joy14,dpad_left:joy11,dpad_right:joy12,ljoy_up:-axis1,ljoy_down:+axis1,ljoy_left:-axis0,ljoy_right:+axis0,ltrig:+axis2,rtrig:+axis5,turbo:joy10,menu:joy8
profile1=name:03000000100800000100000010010000,deadzone:0,a:joy2,b:joy1,x:joy3,y:joy0,start:joy9,dpad_up:hat0,dpad_down:hat1,dpad_left:hat2,dpad_right:hat3,ljoy_up:-axis1,ljoy_down:+axis1,ljoy_left:-axis0,ljoy_right:+axis0,ltrig:joy4,rtrig:joy5,turbo:joy11,menu:joy8
profile2=name:keyboard0,deadzone:12,a:x,b:c,x:z,y:s,start:return,dpad_up:t,dpad_down:g,dpad_left:f,dpad_right:h,ljoy_up:up,ljoy_down:down,ljoy_left:left,ljoy_right:right,ltrig:a,rtrig:d,turbo:',screenshot:f5,menu:escape
profile3=name:03000000ad1b000001fa000010010000,btna:joy0,btnb:joy1,btnx:joy2,btny:joy3,start:joy7,dup:hat0,ddown:hat1,dleft:hat2,dright:hat3,-joyy:-axis1,+joyy:+axis1,-joyx:-axis0,+joyx:+axis0,ltrig:axis2,rtrig:axis5,turbo:joy10,menu:joy8
profile4=hwid:keyboard1
profile5=,btna:joy0,btnb:joy1,btnx:joy2,btny:joy3,start:joy7,dup:hat0,ddown:hat1,dleft:hat2,dright:hat3,-joyy:-axis1,+joyy:+axis1,-joyx:-axis0,+joyx:+axis0,ltrig:axis2,rtrig:axis5,turbo:joy10,menu:joy8
profile6=,btna:joy2,btnb:joy1,btnx:joy3,btny:joy0,start:joy9,dup:hat0,ddown:hat1,dleft:hat2,dright:hat3,-joyy:-axis1,+joyy:+axis1,-joyx:-axis0,+joyx:+axis0,ltrig:joy4,rtrig:joy5,turbo:joy11,menu:joy8
profile7=,btna:l,btnb:p,btnx:k,btny:o,start:space,dup:t,ddown:g,dleft:f,dright:h,-joyy:w,+joyy:s,-joyx:a,+joyx:d,ltrig:[,rtrig:],turbo:tab,screenshot:f5,menu:escape
touch_haptic=1
touch_scale=100
touch_a=
touch_b=
touch_x=
touch_y=
touch_c=
touch_z=
touch_start=
touch_dpad=
touch_joy=
touch_ltrig=
touch_rtrig=
touch_turbo=
gamedir=(DIRECTORY)/ROMs/Sega Dreamcast;
mode=borderless fullscreen
width=1024
height=576
fullmode=borderless fullscreen
fullwidth=1360
fullheight=768
aspect=4:3
res=1
framerate=0
frameskip=0
autosort=32ad
vsync=1
region=europe
language=english
broadcast=pal
cable=vga
cheat=
perf=0
backfixed=0
savesfixed=1
My laptop
OS: Linux Mint 20 x86_64
Kernel: 5.4.0-47-generic
CPU: Intel i5-7200U (4) @ 3.100GHz
GPU: Intel HD Graphics 620
RAM: Two of 4gb giving a total of 8gb, at least 5gb are almost always free.
It's not a gaming dedicated laptop as you may see, however it does run any Dreamcast game I've tried so far at full speed with 2x the native resolution at most. Performance isn't an issue at all.
Log file (redream.log)
redream v1.5.0-350-gce0a987e appdir=(DIRECTORY)/Redream
options_read filename=(DIRECTORY)/Redream/redream.cfg
window_update_mode mode=borderless fullscreen size=1360x768 pts
audio_device_init latency=31.93 ms period=128 frames fifo=1280 frames
input_init
input_register_device id=0 desc=auto name=auto
input_register_device id=2 desc=keyboard name=keyboard
input_register_device id=1 desc=disabled name=disabled
emu_init_port port=0 desc=auto
emu_init_port port=1 desc=auto
emu_init_port port=2 desc=auto
emu_init_port port=3 desc=auto
video_create_context GL_RENDERER=Mesa Intel(R) HD Graphics 620 (KBL GT2) GL_VERSION=4.6 (Core Profile) Mesa 20.0.8 GLSL_VERSION=4.60
rb_test_device_features indexes=1
rb_test_device_features texture_fetch=1
rb_test_device_features fragment_feedback=1
rb_create_abuffer width=1280 height=576
rb_grow_abuffer size=0xb40000 (11.25 mb)
video_init gl_version=4.6 (Core Profile) Mesa 20.0.8 glsl_version=4.60 size=1360x768 px
verify_cache mtime=1599917036
emu_init_port port=0 desc=keyboard
video_create_context GL_RENDERER=Mesa Intel(R) HD Graphics 620 (KBL GT2) GL_VERSION=4.6 (Core Profile) Mesa 20.0.8 GLSL_VERSION=4.60
rb_test_device_features indexes=1
rb_test_device_features texture_fetch=1
rb_test_device_features fragment_feedback=1
video_init gl_version=4.6 (Core Profile) Mesa 20.0.8 glsl_version=4.60 size=1360x768 px
video_create_context GL_RENDERER=Mesa Intel(R) HD Graphics 620 (KBL GT2) GL_VERSION=4.6 (Core Profile) Mesa 20.0.8 GLSL_VERSION=4.60
rb_test_device_features indexes=1
rb_test_device_features texture_fetch=1
rb_test_device_features fragment_feedback=1
rb_create_abuffer width=1280 height=576
rb_grow_abuffer size=0xb40000 (11.25 mb)
video_init gl_version=4.6 (Core Profile) Mesa 20.0.8 glsl_version=4.60 size=1360x768 px
video_create_context GL_RENDERER=Mesa Intel(R) HD Graphics 620 (KBL GT2) GL_VERSION=4.6 (Core Profile) Mesa 20.0.8 GLSL_VERSION=4.60
rb_test_device_features indexes=1
rb_test_device_features texture_fetch=1
rb_test_device_features fragment_feedback=1
rb_create_abuffer width=1280 height=576
rb_grow_abuffer size=0xb40000 (11.25 mb)
video_init gl_version=4.6 (Core Profile) Mesa 20.0.8 glsl_version=4.60 size=1360x768 px
video_create_context GL_RENDERER=Mesa Intel(R) HD Graphics 620 (KBL GT2) GL_VERSION=4.6 (Core Profile) Mesa 20.0.8 GLSL_VERSION=4.60
rb_test_device_features indexes=1
rb_test_device_features texture_fetch=1
rb_test_device_features fragment_feedback=1
rb_create_abuffer width=1280 height=576
rb_grow_abuffer size=0xb40000 (11.25 mb)
video_init gl_version=4.6 (Core Profile) Mesa 20.0.8 glsl_version=4.60 size=1360x768 px
disc_create filename=(DIRECTORY)/ROMs/Sega Dreamcast/S/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3)/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3).gdi
gdi_parse track=1 filename='(DIRECTORY)/ROMs/Sega Dreamcast/S/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3)/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3) (Track 1).bin' fad=150 secsz=2352
gdi_parse track=2 filename='(DIRECTORY)/ROMs/Sega Dreamcast/S/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3)/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3) (Track 2).bin' fad=729 secsz=2352
gdi_parse track=3 filename='(DIRECTORY)/ROMs/Sega Dreamcast/S/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3)/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3) (Track 3).bin' fad=45150 secsz=2352
disc_create supports L JOYX JOYY Y R START/A/B/DPAD X STORAGE VGA
mem_static_init base=0x7fe50f2ff000 sram=0x7fe50e2ff000 vram=0x7fe50daff000 aram=0x7fe570466000 boot=0x7fe570266000
mem_init sram=0x7fe50e2ff000 vram=0x7fe50daff000 aram=0x7fe570466000 boot=0x7fe570266000
sh4_space_init base=0x7fe50f2ff000
serial_create opened
x64_backend_create use_avx=1
x64_backend_create use_avx=1
boot_load_rom path=(DIRECTORY)/Redream/boot.bin
bios_override_settings region=europe lang=english bcast=pal_m time=0x85074145
arm7_suspend
arm7_reset
maple_connect port=0 unit=5 dev=controller
maple_connect port=0 unit=0 dev=vmu
maple_connect port=0 unit=1 dev=purupuru
maple_connect port=1 unit=5 dev=controller
maple_connect port=1 unit=0 dev=vmu
maple_connect port=1 unit=1 dev=purupuru
maple_connect port=2 unit=5 dev=controller
maple_connect port=2 unit=0 dev=vmu
maple_connect port=2 unit=1 dev=purupuru
maple_connect port=3 unit=5 dev=controller
maple_connect port=3 unit=0 dev=vmu
maple_connect port=3 unit=1 dev=purupuru
arm7_suspend
arm7_suspend
arm7_reset
input_init
input_register_device id=0 desc=auto name=auto
input_register_device id=4 desc=030000005e040000a102000000010000 name=Xbox 360 Wireless Receiver
input_register_device id=2 desc=keyboard name=keyboard
input_register_device id=1 desc=disabled name=disabled
emu_init_port port=0 desc=030000005e040000a102000000010000
emu_init_port port=1 desc=auto
emu_init_port port=2 desc=auto
emu_init_port port=3 desc=auto
arm7_suspend
arm7_suspend
arm7_reset
rb_grow_abuffer size=0x1680000 (22.50 mb)
rb_grow_abuffer size=0x21c0000 (33.75 mb)
arm7_suspend
arm7_suspend
arm7_reset
arm7_suspend
arm7_suspend
arm7_reset
arm7_suspend
arm7_suspend
arm7_reset
arm7_suspend
arm7_suspend
arm7_reset
arm7_suspend
arm7_suspend
arm7_reset
r_pvr_prune_textures ignored=47 capacity=4096
emu_init_port port=1 desc=keyboard
arm7_suspend
arm7_suspend
arm7_reset
disc_create filename=(DIRECTORY)/ROMs/Sega Dreamcast/S/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3)/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3).gdi
gdi_parse track=1 filename='(DIRECTORY)/ROMs/Sega Dreamcast/S/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3)/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3) (Track 1).bin' fad=150 secsz=2352
gdi_parse track=2 filename='(DIRECTORY)/ROMs/Sega Dreamcast/S/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3)/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3) (Track 2).bin' fad=729 secsz=2352
gdi_parse track=3 filename='(DIRECTORY)/ROMs/Sega Dreamcast/S/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3)/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3) (Track 3).bin' fad=45150 secsz=2352
disc_create supports L JOYX JOYY Y R START/A/B/DPAD X STORAGE VGA
mem_init sram=0x7fe50e2ff000 vram=0x7fe50daff000 aram=0x7fe570466000 boot=0x7fe570266000
sh4_space_init base=0x7fe50f2ff000
serial_create opened
x64_backend_create use_avx=1
x64_backend_create use_avx=1
boot_load_rom path=(DIRECTORY)/Redream/boot.bin
bios_override_settings region=europe lang=english bcast=pal_m time=0x85074cf8
arm7_suspend
arm7_reset
maple_connect port=0 unit=5 dev=controller
maple_connect port=0 unit=0 dev=vmu
maple_connect port=0 unit=1 dev=purupuru
maple_connect port=1 unit=5 dev=controller
maple_connect port=1 unit=0 dev=vmu
maple_connect port=1 unit=1 dev=purupuru
maple_connect port=2 unit=5 dev=controller
maple_connect port=2 unit=0 dev=vmu
maple_connect port=2 unit=1 dev=purupuru
maple_connect port=3 unit=5 dev=controller
maple_connect port=3 unit=0 dev=vmu
maple_connect port=3 unit=1 dev=purupuru
arm7_suspend
arm7_suspend
arm7_reset
arm7_suspend
arm7_suspend
arm7_reset
disc_create filename=(DIRECTORY)/ROMs/Sega Dreamcast/S/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3)/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3).gdi
gdi_parse track=1 filename='(DIRECTORY)/ROMs/Sega Dreamcast/S/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3)/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3) (Track 1).bin' fad=150 secsz=2352
gdi_parse track=2 filename='(DIRECTORY)/ROMs/Sega Dreamcast/S/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3)/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3) (Track 2).bin' fad=729 secsz=2352
gdi_parse track=3 filename='(DIRECTORY)/ROMs/Sega Dreamcast/S/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3)/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3) (Track 3).bin' fad=45150 secsz=2352
disc_create supports L JOYX JOYY Y R START/A/B/DPAD X STORAGE VGA
mem_init sram=0x7fe50e2ff000 vram=0x7fe50daff000 aram=0x7fe570466000 boot=0x7fe570266000
sh4_space_init base=0x7fe50f2ff000
serial_create opened
x64_backend_create use_avx=1
x64_backend_create use_avx=1
boot_load_rom path=(DIRECTORY)/Redream/boot.bin
bios_override_settings region=europe lang=english bcast=pal_m time=0x85074d0d
arm7_suspend
arm7_reset
maple_connect port=0 unit=5 dev=controller
maple_connect port=0 unit=0 dev=vmu
maple_connect port=0 unit=1 dev=purupuru
maple_connect port=1 unit=5 dev=controller
maple_connect port=1 unit=0 dev=vmu
maple_connect port=1 unit=1 dev=purupuru
maple_connect port=2 unit=5 dev=controller
maple_connect port=2 unit=0 dev=vmu
maple_connect port=2 unit=1 dev=purupuru
maple_connect port=3 unit=5 dev=controller
maple_connect port=3 unit=0 dev=vmu
maple_connect port=3 unit=1 dev=purupuru
arm7_suspend
arm7_suspend
arm7_reset
arm7_suspend
arm7_suspend
arm7_reset
arm7_suspend
arm7_suspend
arm7_reset
arm7_suspend
arm7_suspend
arm7_reset
arm7_suspend
arm7_suspend
arm7_reset
arm7_suspend
arm7_suspend
arm7_reset
arm7_suspend
arm7_suspend
arm7_reset
disc_create filename=(DIRECTORY)/ROMs/Sega Dreamcast/S/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3)/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3).gdi
gdi_parse track=1 filename='(DIRECTORY)/ROMs/Sega Dreamcast/S/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3)/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3) (Track 1).bin' fad=150 secsz=2352
gdi_parse track=2 filename='(DIRECTORY)/ROMs/Sega Dreamcast/S/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3)/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3) (Track 2).bin' fad=729 secsz=2352
gdi_parse track=3 filename='(DIRECTORY)/ROMs/Sega Dreamcast/S/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3)/Shenmue II (Europe) (En,Fr,De,Es) (Disc 3) (Track 3).bin' fad=45150 secsz=2352
disc_create supports L JOYX JOYY Y R START/A/B/DPAD X STORAGE VGA
mem_init sram=0x7fe50e2ff000 vram=0x7fe50daff000 aram=0x7fe570466000 boot=0x7fe570266000
sh4_space_init base=0x7fe50f2ff000
serial_create opened
x64_backend_create use_avx=1
x64_backend_create use_avx=1
boot_load_rom path=(DIRECTORY)/Redream/boot.bin
bios_override_settings region=europe lang=english bcast=pal_m time=0x85075049
maple_connect port=0 unit=5 dev=controller
maple_connect port=0 unit=0 dev=vmu
maple_connect port=0 unit=1 dev=purupuru
maple_connect port=1 unit=5 dev=controller
maple_connect port=1 unit=0 dev=vmu
maple_connect port=1 unit=1 dev=purupuru
maple_connect port=2 unit=5 dev=controller
maple_connect port=2 unit=0 dev=vmu
maple_connect port=2 unit=1 dev=purupuru
maple_connect port=3 unit=5 dev=controller
maple_connect port=3 unit=0 dev=vmu
maple_connect port=3 unit=1 dev=purupuru
arm7_suspend
arm7_suspend
arm7_reset
arm7_suspend
arm7_suspend
arm7_reset
ALSA lib pcm.c:8526:(snd_pcm_recover) underrun occurred
arm7_suspend
arm7_suspend
arm7_reset
r_pvr_prune_textures ignored=166 capacity=4096
arm7_suspend
arm7_suspend
arm7_reset
arm7_suspend
arm7_suspend
arm7_reset
r_pvr_prune_textures ignored=38 capacity=4096
terminate called after throwing an instance of 'Xbyak::Error'
what(): code is too big
Once again, I'm posting this in case if anyone have the same issue in the future and need a reference for it, or if the developer wish to take a closer look. I'm almost finishing the game (it can be finished despite this) so I won't be asking anything more about this issue I believe (but I still think it's at least worth a look).