Box86 - Linux Userspace x86 Emulator


It's weird. Yes, your article is very informative, but opens up new questions (I'm a noob, so I follow it, but there a big field of "unknowns" for me - so feel free to ignore my plea to extend the text).

I would add a better paragraph title in where it says "This saves some time," and "All in all, this can save a lot of time." (notice the redundant use of the same approximate sentence - change one of them, or shorten it). It's downplaying the fact that Box64 is AMAZINGLY BLAZING FREAKING FAST!!!
It should be titled: "Where does box64 get it's speed from" or have text that says: "and that's where the speed boost comes from" or "that's the secret of the near-native speed".
It's not ok to downplay this little fact; because it's the key feature of the software. And we love it for exactly that.
 
It's weird. Yes, your article is very informative,
Thanks! (Yes, I'm the one who wrote it :))
but opens up new questions (I'm a noob, so I follow it, but there a big field of "unknowns" for me - so feel free to ignore my plea to extend the text).
Which ones? I can try adding the answers if needed. (After all, I know how box86 works so it makes sense, especially the wrappers since it's something I upgraded through my script, but for someone who doesn't it can be quite abrupt -- the "Inner workings" was also like that...)
I would add a better paragraph title in where it says "This saves some time," and "All in all, this can save a lot of time." (notice the redundant use of the same approximate sentence - change one of them, or shorten it). It's downplaying the fact that Box64 is AMAZINGLY BLAZING FREAKING FAST!!!
It should be titled: "Where does box64 get it's speed from" or have text that says: "and that's where the speed boost comes from" or "that's the secret of the near-native speed".
It's not ok to downplay this little fact; because it's the key feature of the software. And we love it for exactly that.
Ah yes, I've edited that part. Thanks.
 
And some Q&A on box64 on Boilingsteam

 
Hey, I am having trouble launching factorio on a pi 4 on pi os bullseye. any idea what the issue might be here?

./factorio
Dynarec for ARM64, with extension: ASIMD CRC32 PageSize:4096
Box64 with Dynarec v0.1.5 684d67d built on Nov 19 2021 01:21:40
Using default BOX64_LD_LIBRARY_PATH: ./:lib/:lib64/:x86_64/:bin64/:libs64/
Using default BOX64_PATH: ./:bin/
Counted 48 Env var
Looking for ./factorio
Using native(wrapped) librt.so.1
Using native(wrapped) libSM.so.6
Using native(wrapped) libICE.so.6
Using native(wrapped) libX11.so.6
Using native(wrapped) libXext.so.6
Using native(wrapped) libxcb.so.1
Using native(wrapped) libXau.so.6
Using native(wrapped) libXdmcp.so.6
Using native(wrapped) libGL.so.1
Using native(wrapped) libXinerama.so.1
Using native(wrapped) libXrandr.so.2
Using native(wrapped) libXrender.so.1
Using native(wrapped) libXcursor.so.1
Using native(wrapped) libasound.so.2
Using native(wrapped) libpulse.so.0
Using native(wrapped) libpulse-simple.so.0
Using native(wrapped) libdl.so.2
Using native(wrapped) libm.so.6
Using native(wrapped) libpthread.so.0
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux-x86-64.so.2
0.004 2021-11-20 02:58:55; Factorio 1.1.46 (build 59110, linux64, full)
0.174 Operating system: Linux (Debian 11)
0.176 Program arguments: "/home/pi/noarch/game/bin/x64/factorio"
0.176 Read data path: /home/pi/noarch/game/data
0.176 Write data path: /home/pi/noarch/game [3558/14206MB]
0.177 Binaries path: /home/pi/noarch/game/bin
0.601 System info: [CPU: Intel(R) Pentium(R) 4 CPU 1000MHz, 4 cores, RAM: 3794 MB]
0.603 Environment: DISPLAY=:0 WAYLAND_DISPLAY=<unset> DESKTOP_SESSION=LXDE-pi XDG_SESSION_DESKTOP=lightdm-xsession XDG_CURRENT_DESKTOP=LXDE __GL_FSAA_MODE=<unset> __GL_LOG_MAX_ANISO=<unset> __GL_SYNC_TO_VBLANK=<unset> __GL_SORT_FBCONFIGS=<unset> __GL_YIELD=<unset>
0.607 Display options: [FullScreen: 1] [VSync: 1] [UIScale: automatic (100.0%)] [Native DPI: 1] [Screen: 255] [Special: lmw] [Lang: en]
Using native(wrapped) libXi.so.6
Using native(wrapped) libXss.so.1
Using native(wrapped) libXxf86vm.so.1
1.304 Available displays: 1
1.305 [0]: xxx - {[0,0], xxx, SDL_PIXELFORMAT_RGB888, 60Hz}
1.511 Error Util.cpp:83: Failed to create OpenGL context: Could not create GL context: GLXBadFBConfig
1.518 Error MessageDialog.cpp:211: Unable to show message dialog. SDL Error: [No message system available]
1.567 Goodbye
Stop waiting for remaining thread 4032
4032|SIGSEGV @0x6492d97c (???(/usr/local/bin/box64/0x6492d97c)) (x64pc=0x363a1/???:"???", rsp=0x7f7ac76948, stack=0x7f7a477000:0x7f7ac77000 own=0x7f7a477000 fp=0x20c81c0), for accessing 0x363a0 (code=1/prot=0), db=(nil)((nil):(nil)/(nil):(nil)/???:clean, hash:0/0) handler=0xd4a820
4032|SIGSEGV @0x6492d97c (???(/usr/local/bin/box64/0x6492d97c)) (x64pc=0x36441/???:"???", rsp=0x7f7ac70178, stack=0x7f7a477000:0x7f7ac77000 own=0x7f7a477000 fp=0x2122b60), for accessing 0x36440 (code=1/prot=0), db=(nil)((nil):(nil)/(nil):(nil)/???:clean, hash:0/0) handler=0xd4a820
4032|Double SIGSEGV (code=1, pc=0x6492d97c, addr=0x36440)!
 
Hey, I am having trouble launching factorio on a pi 4 on pi os bullseye. any idea what the issue might be here?

./factorio
Dynarec for ARM64, with extension: ASIMD CRC32 PageSize:4096
Box64 with Dynarec v0.1.5 684d67d built on Nov 19 2021 01:21:40
Using default BOX64_LD_LIBRARY_PATH: ./:lib/:lib64/:x86_64/:bin64/:libs64/
Using default BOX64_PATH: ./:bin/
Counted 48 Env var
Looking for ./factorio
Using native(wrapped) librt.so.1
Using native(wrapped) libSM.so.6
Using native(wrapped) libICE.so.6
Using native(wrapped) libX11.so.6
Using native(wrapped) libXext.so.6
Using native(wrapped) libxcb.so.1
Using native(wrapped) libXau.so.6
Using native(wrapped) libXdmcp.so.6
Using native(wrapped) libGL.so.1
Using native(wrapped) libXinerama.so.1
Using native(wrapped) libXrandr.so.2
Using native(wrapped) libXrender.so.1
Using native(wrapped) libXcursor.so.1
Using native(wrapped) libasound.so.2
Using native(wrapped) libpulse.so.0
Using native(wrapped) libpulse-simple.so.0
Using native(wrapped) libdl.so.2
Using native(wrapped) libm.so.6
Using native(wrapped) libpthread.so.0
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux-x86-64.so.2
0.004 2021-11-20 02:58:55; Factorio 1.1.46 (build 59110, linux64, full)
0.174 Operating system: Linux (Debian 11)
0.176 Program arguments: "/home/pi/noarch/game/bin/x64/factorio"
0.176 Read data path: /home/pi/noarch/game/data
0.176 Write data path: /home/pi/noarch/game [3558/14206MB]
0.177 Binaries path: /home/pi/noarch/game/bin
0.601 System info: [CPU: Intel(R) Pentium(R) 4 CPU 1000MHz, 4 cores, RAM: 3794 MB]
0.603 Environment: DISPLAY=:0 WAYLAND_DISPLAY=<unset> DESKTOP_SESSION=LXDE-pi XDG_SESSION_DESKTOP=lightdm-xsession XDG_CURRENT_DESKTOP=LXDE __GL_FSAA_MODE=<unset> __GL_LOG_MAX_ANISO=<unset> __GL_SYNC_TO_VBLANK=<unset> __GL_SORT_FBCONFIGS=<unset> __GL_YIELD=<unset>
0.607 Display options: [FullScreen: 1] [VSync: 1] [UIScale: automatic (100.0%)] [Native DPI: 1] [Screen: 255] [Special: lmw] [Lang: en]
Using native(wrapped) libXi.so.6
Using native(wrapped) libXss.so.1
Using native(wrapped) libXxf86vm.so.1
1.304 Available displays: 1
1.305 [0]: xxx - {[0,0], xxx, SDL_PIXELFORMAT_RGB888, 60Hz}
1.511 Error Util.cpp:83: Failed to create OpenGL context: Could not create GL context: GLXBadFBConfig
1.518 Error MessageDialog.cpp:211: Unable to show message dialog. SDL Error: [No message system available]
1.567 Goodbye
Stop waiting for remaining thread 4032
4032|SIGSEGV @0x6492d97c (???(/usr/local/bin/box64/0x6492d97c)) (x64pc=0x363a1/???:"???", rsp=0x7f7ac76948, stack=0x7f7a477000:0x7f7ac77000 own=0x7f7a477000 fp=0x20c81c0), for accessing 0x363a0 (code=1/prot=0), db=(nil)((nil):(nil)/(nil):(nil)/???:clean, hash:0/0) handler=0xd4a820
4032|SIGSEGV @0x6492d97c (???(/usr/local/bin/box64/0x6492d97c)) (x64pc=0x36441/???:"???", rsp=0x7f7ac70178, stack=0x7f7a477000:0x7f7ac77000 own=0x7f7a477000 fp=0x2122b60), for accessing 0x36440 (code=1/prot=0), db=(nil)((nil):(nil)/(nil):(nil)/???:clean, hash:0/0) handler=0xd4a820
4032|Double SIGSEGV (code=1, pc=0x6492d97c, addr=0x36440)!
You need to force OpenGL 3.+. ON a PI4, try to use
Code:
MESA_GL_VERSION_OVERRIDE=3.2 ./factorio
 
That didn't seem to change anything. So I tried with 3.0 and 4.0, too. (Didn't really know what I am working around so I just guessed some numbers.
With 4.0 I get to a loading screen. After multiple minutes it hangs at "95% Loading Sounds".
export MESA_GL_VERSION_OVERRIDE=4.0
pi@raspberrypi:~/noarch/game/bin/x64 $ ./factorio
Dynarec for ARM64, with extension: ASIMD CRC32 PageSize:4096
Box64 with Dynarec v0.1.5 684d67d built on Nov 19 2021 01:21:40
Using default BOX64_LD_LIBRARY_PATH: ./:lib/:lib64/:x86_64/:bin64/:libs64/
Using default BOX64_PATH: ./:bin/
Counted 49 Env var
Looking for ./factorio
Using native(wrapped) librt.so.1
Using native(wrapped) libSM.so.6
Using native(wrapped) libICE.so.6
Using native(wrapped) libX11.so.6
Using native(wrapped) libXext.so.6
Using native(wrapped) libxcb.so.1
Using native(wrapped) libXau.so.6
Using native(wrapped) libXdmcp.so.6
Using native(wrapped) libGL.so.1
Using native(wrapped) libXinerama.so.1
Using native(wrapped) libXrandr.so.2
Using native(wrapped) libXrender.so.1
Using native(wrapped) libXcursor.so.1
Using native(wrapped) libasound.so.2
Using native(wrapped) libpulse.so.0
Using native(wrapped) libpulse-simple.so.0
Using native(wrapped) libdl.so.2
Using native(wrapped) libm.so.6
Using native(wrapped) libpthread.so.0
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux-x86-64.so.2
0.004 2021-11-20 09:29:43; Factorio 1.1.46 (build 59110, linux64, full)
0.139 Operating system: Linux (Debian 11)
0.141 Program arguments: "/home/pi/noarch/game/bin/x64/factorio"
0.142 Read data path: /home/pi/noarch/game/data
0.142 Write data path: /home/pi/noarch/game [1879/14206MB]
0.142 Binaries path: /home/pi/noarch/game/bin
0.204 System info: [CPU: Intel(R) Pentium(R) 4 CPU 1000MHz, 4 cores, RAM: 3794 MB]
0.205 Environment: DISPLAY=:0 WAYLAND_DISPLAY=<unset> DESKTOP_SESSION=LXDE-pi XDG_SESSION_DESKTOP=lightdm-xsession XDG_CURRENT_DESKTOP=LXDE __GL_FSAA_MODE=<unset> __GL_LOG_MAX_ANISO=<unset> __GL_SYNC_TO_VBLANK=<unset> __GL_SORT_FBCONFIGS=<unset> __GL_YIELD=<unset>
0.210 Display options: [FullScreen: 1] [VSync: 1] [UIScale: automatic (100.0%)] [Native DPI: 1] [Screen: 255] [Special: lmw] [Lang: en]
Using native(wrapped) libXi.so.6
Using native(wrapped) libXss.so.1
Using native(wrapped) libXxf86vm.so.1
0.949 Available displays: 1
0.950 [0]: xxx SDL_PIXELFORMAT_RGB888, 60Hz}
1.325 Initialised OpenGL:[0] V3D 4.2; driver: 4.0 (Core Profile) Mesa 20.3.5
1.326 [Extensions] s3tc:yes; KHR_debug:yes; ARB_clear_texture:NO, ARB_copy_image:NO
1.326 [Version] 4.0
Error loading needed lib libvulkan.so.1
Warning: Cannot dlopen("libvulkan.so.1"/0x2155991, 2)
1.331 The largest texture size supported by graphics cards it very low (4096). Setting graphics preset to Low.
1.331 Dedicated video memory size 0 MB (failed to detect)
1.333 Error initializeTimestampQueries:647: [OpenGL]: Error INVALID_ENUM (1280).
2.138 Graphics options: [Graphics quality: normal] [Video memory usage: high] [DXT: low-quality] [Color: 32bit]
2.139 [Max threads (load/render): 32/4] [Max texture size: 4096] [Tex.Stream.: 1] [Rotation quality: low] [Other: stDCwt] [B:0,C:0,S:100]
2.186 [Audio] Backend:default; Depth:16, Channel:2, Frequency:44100; MixerQuality:linear
3.332 Loading mod core 0.0.0 (data.lua)
3.932 Loading mod base 1.1.46 (data.lua)
6.031 Loading mod base 1.1.46 (data-updates.lua)
6.795 Checksum for core: 1319320002
6.796 Checksum of base: 3758905726
10.940 Prototype list checksum: 3034860339
11.225 Loading sounds...
12.303 Info PlayerData.cpp:73: Local player-data.json unavailable
12.303 Info PlayerData.cpp:78: Cloud player-data.json unavailable
12.901 Crop bitmaps.
20.376 Parallel Sprite Loader initialized (threads: 1)
65.985 Initial atlas bitmap size is 4096
66.140 Created atlas bitmap 4096x4088 [none]
66.240 Created atlas bitmap 4096x4080 [none]
66.311 Created atlas bitmap 4096x4096 [none]
66.380 Created atlas bitmap 4096x4092 [none]
66.440 Created atlas bitmap 4096x4088 [none]
66.531 Created atlas bitmap 4096x4096 [none]
66.538 Created atlas bitmap 4096x604 [none]
66.551 Created atlas bitmap 4096x2120 [decal]
66.654 Created atlas bitmap 4096x4096 [low-object]
66.670 Created atlas bitmap 4096x1792 [low-object]
66.693 Created atlas bitmap 4096x2464 [mipmap, linear-minification, linear-magnification, linear-mip-level]
66.719 Created atlas bitmap 4096x2304 [terrain, mipmap, linear-minification, linear-mip-level]
66.729 Created atlas bitmap 4096x1152 [terrain-effect-map, mipmap, linear-minification, linear-mip-level]
66.746 Created atlas bitmap 4096x1664 [smoke, mipmap, linear-minification, linear-magnification]
66.746 Error generateTextureObject:110: [OpenGL]: Error INVALID_VALUE (1281).
66.747 Created atlas bitmap 4096x928 [mipmap]
66.930 Created atlas bitmap 4096x4096 [icon, not-compressed, mipmap, linear-minification, linear-magnification, linear-mip-level]
66.940 Created atlas bitmap 3328x320 [icon, not-compressed, mipmap, linear-minification, linear-magnification, linear-mip-level]
66.941 Error generateTextureObject:110: [OpenGL]: Error INVALID_VALUE (1281).
66.942 Created atlas bitmap 2048x684 [alpha-mask]
67.049 Error generateTextureObject:110: [OpenGL]: Error INVALID_VALUE (1281).
67.050 Created atlas bitmap 4096x4096 [shadow, linear-magnification, alpha-mask]
67.093 Error generateTextureObject:110: [OpenGL]: Error INVALID_VALUE (1281).
67.093 Created atlas bitmap 4096x4092 [shadow, linear-magnification, alpha-mask]
67.141 Error generateTextureObject:110: [OpenGL]: Error INVALID_VALUE (1281).
67.141 Created atlas bitmap 4096x4080 [shadow, linear-magnification, alpha-mask]
67.148 Error generateTextureObject:110: [OpenGL]: Error INVALID_VALUE (1281).
67.148 Created atlas bitmap 4096x3132 [shadow, linear-magnification, alpha-mask]
67.148 Error generateTextureObject:110: [OpenGL]: Error INVALID_VALUE (1281).
67.148 Created atlas bitmap 4096x1312 [shadow, mipmap, linear-magnification, alpha-mask]
67.150 Created atlas bitmap 2048x240 [icon-background, not-compressed, mipmap, linear-minification, linear-magnification, linear-mip-level, ]
67.260 Created virtual atlas pages 4096x4096x2
67.296 Error generateTextureObject:110: [OpenGL]: Error INVALID_VALUE (1281).
72.143 Error checkErrors:93: [OpenGL]: Error INVALID_ENUM (1280).
72.155 Error copyDataRaw:317: [OpenGL]: Error INVALID_OPERATION (1282).
72.190 Texture processor created (2048). GPU accelerated compression Supported: yes, Enabled: yes/yes. Test FAILED. YCoCgDXT PSNR: 11.21, BC3 PSNR: 33.82
74.083 Parallel Sprite Loader initialized (threads: 1)
77.071 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 36.
79.584 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 37.
80.178 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 38.
81.136 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 39.
82.304 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 40.
83.555 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 41.
85.165 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 42.
86.226 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 43.
86.767 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 44.
87.704 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 45.
88.289 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 46.
88.893 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 47.
89.308 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 48.
89.870 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 49.
90.399 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 50.
91.724 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 51.
94.180 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 52.
94.997 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 53.
96.613 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 55.
97.570 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 56.
98.635 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 57.
99.753 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 58.
100.233 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 59.
100.785 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 60.
101.370 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 61.
102.075 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 62.
102.816 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 63.
103.881 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 64.
104.960 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 65.
105.864 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 66.
106.312 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 67.
106.887 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 68.
107.510 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 69.
108.005 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 70.
108.573 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 71.
109.850 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 72.
110.572 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 73.
111.652 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 74.
113.851 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 76.
114.682 Error generateTextureObject:110: [OpenGL]: Error INVALID_ENUM (1280).
117.260 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 77.
120.964 Sprites loaded
120.972 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 78.
121.386 Generated mipmaps (3) for atlas [8] of size 4096x4096
121.568 Generated mipmaps (3) for atlas [9] of size 4096x1792
121.799 Generated mipmaps (3) for atlas [10] of size 4096x2464
122.013 Generated mipmaps (3) for atlas [11] of size 4096x2304
122.123 Generated mipmaps (3) for atlas [12] of size 4096x1152
122.308 Generated mipmaps (3) for atlas [13] of size 4096x1664
122.397 Generated mipmaps (3) for atlas [14] of size 4096x928
122.404 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 85.
122.482 Generated mipmaps (5) for atlas [15] of size 4096x4096
122.513 Generated mipmaps (5) for atlas [16] of size 3328x320
122.668 Generated mipmaps (3) for atlas [22] of size 4096x1312
122.719 Custom mipmaps uploaded.
123.200 Generated mipmaps for virtual atlas of size 4096x8192
123.362 Error GraphicsInterfaceOpenGL.cpp:259: [OpenGL]: Error INVALID_ENUM encountered in frame 88.
125.046 Factorio initialised
7746|SIGSEGV @0x7f98fe421c (???(/usr/lib/aarch64-linux-gnu/dri/vc4_dri.so/0x7f98fe421c)) (x64pc=0x351f3/???:"???", rsp=0x7fb68d9368, stack=0x7fb60dd000:0x7fb68dd000 own=(nil) fp=(nil)), for accessing 0x50 (code=1/prot=0), db=(nil)((nil):(nil)/(nil):(nil)/???:clean, hash:0/0) handler=0xd4a820
125.390 Error CrashHandler.cpp:633: Received SIGSEGV
7746|SIGSEGV @0x6492ec9c (???(/usr/local/bin/box64/0x6492ec9c)) (x64pc=0x891e83//home/pi/noarch/game/bin/x64/factorio:"???", rsp=0x7fb68d78a0, stack=0x7fb60dd000:0x7fb68dd000 own=(nil) fp=0x1b7f39), for accessing 0x7fb7698000 (code=2/prot=40), db=(nil)((nil):(nil)/(nil):(nil)/???:clean, hash:0/0) handler=0xd4a820
203.840 Error CrashHandler.cpp:633: Received SIGSEGV
7746|SIGSEGV @0x6492ec9c (???(/usr/local/bin/box64/0x6492ec9c)) (x64pc=0x891e83//home/pi/noarch/game/bin/x64/factorio:"???", rsp=0x7fb68d5dd8, stack=0x7fb60dd000:0x7fb68dd000 own=(nil) fp=0x1b8292), for accessing 0x7fb7698000 (code=2/prot=40), db=(nil)((nil):(nil)/(nil):(nil)/???:clean, hash:0/0) handler=0xd4a820
282.957 Error CrashHandler.cpp:633: Received SIGSEGV
7746|SIGSEGV @0x6492ec9c (???(/usr/local/bin/box64/0x6492ec9c)) (x64pc=0x891e83//home/pi/noarch/game/bin/x64/factorio:"???", rsp=0x7fb68d4310, stack=0x7fb60dd000:0x7fb68dd000 own=(nil) fp=0x1b85eb), for accessing 0x7fb7698000 (code=2/prot=40), db=(nil)((nil):(nil)/(nil):(nil)/???:clean, hash:0/0) handler=0xd4a820
361.406 Error CrashHandler.cpp:633: Received SIGSEGV
7746|SIGSEGV @0x6492ec9c (???(/usr/local/bin/box64/0x6492ec9c)) (x64pc=0x891e83//home/pi/noarch/game/bin/x64/factorio:"???", rsp=0x7fb68d2848, stack=0x7fb60dd000:0x7fb68dd000 own=(nil) fp=0x1b8944), for accessing 0x7fb7698000 (code=2/prot=40), db=(nil)((nil):(nil)/(nil):(nil)/???:clean, hash:0/0) handler=0xd4a820
439.513 Error CrashHandler.cpp:633: Received SIGSEGV
Post automatically merged:

The :( nil :( in there are quite amusing. :D

edit:3.3 leads to a loading screen, too. Same crash though.
 
Last edited:
The crash is within "/usr/lib/aarch64-linux-gnu/dri/vc4_dri.so", that's the RPI4 Mesa driver. The issue is not Box64 or Factorio, it's the graphics driver panicking out! Try to edit the config ini (I don't remember where it is) to reduce graphics settings.
And yeah, OpenGL 3.3 must be the minimum required version.
 
  • Like
Reactions: rSl
I'll see what I can come up with for editing the settings down. Is there any benefit or disadvantage to run with OpenGL versions bigger than 3.3? What are the available options there?

edit: Ok even with the browser closed and "./factorio --graphics-quality very-low --video-memory-usage low --force-graphics-preset very-low --low-vram --disable-audio" it seems to crash the same way, so we might have just hit a limit there...
 
Last edited:
I'll see what I can come up with for editing the settings down. Is there any benefit or disadvantage to run with OpenGL versions bigger than 3.3? What are the available options there?

edit: Ok even with the browser closed and "./factorio --graphics-quality very-low --video-memory-usage low --force-graphics-preset very-low --low-vram --disable-audio" it seems to crash the same way, so we might have just hit a limit there...
Yes. Well. Does factorio support Vulkan renderer? Next box64 will support vulkan, so it might help.
I know Factorio is also difficult to run on RK3399 SBC, and PanFrost doesn't crash but have heavy graphics artefacts. It does run fine on my Phytium with AMD RX550, so I know it's a mesa issue and not a box64 one.
 
I understand that it is not a box64 bug, I just thought I'd follow up with what I found. Interesting that factorio is so relatively demanding, even though on the surface it looks like a Stronghold / Stronghold Crusader 2d graphics type thing. But now thinking about it there are actual shaded flames and the like in there...
I don't think it has a vulkan renderer, (I guess one could try to set directx output and then go through dxvk, but I am not sure that that would improve things :p )
 
I understand that it is not a box64 bug, I just thought I'd follow up with what I found. Interesting that factorio is so relatively demanding, even though on the surface it looks like a Stronghold / Stronghold Crusader 2d graphics type thing. But now thinking about it there are actual shaded flames and the like in there...
I don't think it has a vulkan renderer, (I guess one could try to set directx output and then go through dxvk, but I am not sure that that would improve things :p )
Yes, for 2D game, Factorio actually is quite intensive graphicaly, and use stuffs (like large atlas of compressed textures) that gives a hard time to drivers. It also use some shaders effects yes. 2D games likes RimWorld or StarBound are easier on the graphics card for example.
 
Back
Top