Coder Social home page Coder Social logo

Comments (4)

ptitSeb avatar ptitSeb commented on August 23, 2024 1

It should work now, with latest version, if you build box86 with the GOA_CLONES profile.

from box86.

ptitSeb avatar ptitSeb commented on August 23, 2024

Ok, I pushed something. Testing it on my Pandora, I can see gl4es only loaded 1 time instead of multiple time. Does it fix it also on your side?

from box86.

Cebion avatar Cebion commented on August 23, 2024

Ok, I pushed something. Testing it on my Pandora, I can see gl4es only loaded 1 time instead of multiple time. Does it fix it also on your side?

Thanks for looking into it.
Just compiled the latest commit.
It looks like less errors now, though game still runs in background with a black screen.
New log output

/roms/ports # ./Super\ Meat\ Boy.sh
No sudo present.
# RG351V - AmberELEC
```bash
DEVICE_INFO_VERSION=0.1.6
CFW_NAME=AmberELEC
CFW_VERSION=prerelease-20240331_2102
DEVICE_NAME=RG351V
DEVICE_CPU=RK3326
DEVICE_ARCH=aarch64
DEVICE_RAM=1
DISPLAY_WIDTH=640
DISPLAY_HEIGHT=480
ASPECT_X=4
ASPECT_Y=3
DISPLAY_ORIENTATION=0
ANALOG_STICKS=1

Setting game resolution to 640x480, detail level to ultralowdetail
Game language is set to
Dynarec is on
Shows details of dlopen / dlsym /dlclose : Yes
BOX86 using "/roms/ports/supermeatboy/box86/native/libGL.so.1" as libGL.so.1
Show Segfault signal even if a signal handler is present
Show Backtrace for signals
Dynarec for ARMv8, with extension: HALF FAST_MULT EDSP NEON VFPv4 IDIVA AES PMUL                                                                             L PageSize:4096 Running on Cortex-A35 with 4 Cores
BOX86_LD_LIBRARY_PATH: /roms/ports/supermeatboy/box86/x86/:/roms/ports/supermeat                                                                             boy/box86/native/:/roms/ports/supermeatboy/libs/x86/:/roms/ports/supermeatboy/ga                                                                             medata/x86/
Using default BOX86_PATH: ./:bin/
Counted 28 Env var
Looking for ./x86/SuperMeatBoy
argv[1]="-640x480"
argv[2]="-ultralowdetail"
argv[3]="-fullscreen"
Rename process to "SuperMeatBoy"
Using native(wrapped) libdl.so.2
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux.so.2
Using native(wrapped) libpthread.so.0
Using native(wrapped) librt.so.1
Using native(wrapped) libbsd.so.0
Using native(wrapped) libSDL2-2.0.so.0
Using native(wrapped) libm.so.6
Using native(wrapped) libopenal.so.1
Using emulated /storage/roms/ports/supermeatboy/gamedata/x86/libmariadb.so.1
Using emulated /storage/roms/ports/supermeatboy/gamedata/x86/libsteam_api.so
Using emulated /roms/ports/supermeatboy/box86/x86/libstdc++.so.6
Using emulated /roms/ports/supermeatboy/box86/x86/libgcc_s.so.1
[S_API FAIL] SteamAPI_Init() failed; SteamAPI_IsSteamRunning() failed.
[S_API FAIL] SteamAPI_Init() failed; unable to locate a running instance of Stea                                                                             m, or a local steamclient.so.
LIBGL: Initialising gl4es
LIBGL: v1.1.5 built on Feb 18 2024 20:01:31
LIBGL: using GBM
LIBGL: Using GLES 2.0 backend
LIBGL: loaded: libGLESv2.so
LIBGL: loaded: libEGL.so
LIBGL: loaded: libgbm.so
LIBGL: loaded: libdrm.so
LIBGL: Using GLES 2.0 backend
LIBGL: GBM on card /dev/dri/card0 is Available
LIBGL: Hardware Full NPOT detected and used
LIBGL: Extension GL_EXT_blend_minmax  detected and used
LIBGL: FBO are in core, and so used
LIBGL: PointSprite are in core, and so used
LIBGL: CubeMap are in core, and so used
LIBGL: BlendColor is in core, and so used
LIBGL: Blend Subtract is in core, and so used
LIBGL: Blend Function and Equation Separation is in core, and so used
LIBGL: Texture Mirrored Repeat is in core, and so used
LIBGL: Extension GL_OES_mapbuffer  detected
LIBGL: Extension GL_OES_element_index_uint  detected and used
LIBGL: Extension GL_OES_packed_depth_stencil  detected and used
LIBGL: Extension GL_OES_depth24  detected and used
LIBGL: Extension GL_OES_rgb8_rgba8  detected and used
LIBGL: Extension GL_EXT_texture_format_BGRA8888  detected and used
LIBGL: Extension GL_OES_depth_texture  detected and used
LIBGL: Extension GL_OES_texture_stencil8  detected and used
LIBGL: Extension GL_EXT_texture_rg  detected and used
LIBGL: Extension GL_EXT_color_buffer_float  detected and used
LIBGL: Extension GL_EXT_color_buffer_half_float  detected and used
LIBGL: high precision float in fragment shader available and used
LIBGL: Max vertex attrib: 16
LIBGL: Extension GL_OES_standard_derivatives  detected and used
LIBGL: Extension GL_ARM_shader_framebuffer_fetch detected and used
LIBGL: Extension GL_OES_get_program_binary  detected and used
LIBGL: Number of supported Program Binary Format: 1
LIBGL: Max texture size: 8192
LIBGL: Max Varying Vector: 15
LIBGL: Texture Units: 16/16 (hardware: 16), Max lights: 8, Max planes: 6
LIBGL: Max Color Attachments: 1 / Draw buffers: 1
LIBGL: Hardware vendor is ARM
LIBGL: sRGB surface supported
LIBGL: EGLImage to Texture2D supported
LIBGL: EGLImage to RenderBuffer supported
LIBGL: Targeting OpenGL 2.1
LIBGL: Not trying to batch small subsequent glDrawXXXX
LIBGL: try to use VBO
LIBGL: glXMakeCurrent FBO workaround enabled
LIBGL: FBO workaround for using binded texture enabled
LIBGL: Force texture for Attachment color0 on FBO
LIBGL: Hack to trigger a SwapBuffers when a Full Framebuffer Blit on default FBO                                                                              is done
LIBGL: glX Will try to recycle EGL Surface
LIBGL: Current folder is:/storage/roms/ports/supermeatboy/gamedata
LIBGL: Loaded a PSA with 13 Precompiled Programs
Calling getGLProcAddress[0xf70cf1e8]("glActiveTexture") => 0x40020040
Call to dlopen("/roms/ports/supermeatboy/box86/native/libGL.so.1"/0x63621198, 10                                                                             1) from 0x81a3004(/storage/roms/ports/supermeatboy/gamedata/x86/SuperMeatBoy/_ZN                                                                             14OpenGLGraphicsC2Ev + 260)
Using native(wrapped) libGL.so.1
dlopen: New handle 0x4 (/roms/ports/supermeatboy/box86/native/libGL.so.1), dlope                                                                             ned=1
Calling getGLProcAddress[0xf70cf1e8]("glAlphaFunc") => 0x40020050
Calling getGLProcAddress[0xf70cf1e8]("glBindTexture") => 0x40020060
Calling getGLProcAddress[0xf70cf1e8]("glBlendEquation") => 0x40020070
Calling getGLProcAddress[0xf70cf1e8]("glBlendFunc") => 0x40020080
Calling getGLProcAddress[0xf70cf1e8]("glClear") => 0x40020090
Calling getGLProcAddress[0xf70cf1e8]("glClearColor") => 0x400200a0
Calling getGLProcAddress[0xf70cf1e8]("glClearDepth") => 0x400200b0
Calling getGLProcAddress[0xf70cf1e8]("glClearStencil") => 0x400200c0
Calling getGLProcAddress[0xf70cf1e8]("glColorMask") => 0x400200d0
Calling getGLProcAddress[0xf70cf1e8]("glCompressedTexImage2D") => 0x400200e0
Calling getGLProcAddress[0xf70cf1e8]("glCullFace") => 0x400200f0
Calling getGLProcAddress[0xf70cf1e8]("glDeleteTextures") => 0x40020100
Calling getGLProcAddress[0xf70cf1e8]("glDepthFunc") => 0x40020110
Calling getGLProcAddress[0xf70cf1e8]("glDepthMask") => 0x40020120
Calling getGLProcAddress[0xf70cf1e8]("glDepthRange") => 0x40020130
Calling getGLProcAddress[0xf70cf1e8]("glDisable") => 0x40020140
Calling getGLProcAddress[0xf70cf1e8]("glDrawArrays") => 0x40020150
Calling getGLProcAddress[0xf70cf1e8]("glDrawElements") => 0x40020160
Calling getGLProcAddress[0xf70cf1e8]("glDrawBuffer") => 0x40020170
Calling getGLProcAddress[0xf70cf1e8]("glEnable") => 0x40020180
Calling getGLProcAddress[0xf70cf1e8]("glFrontFace") => 0x40020190
Calling getGLProcAddress[0xf70cf1e8]("glGetIntegerv") => 0x400201a0
Calling getGLProcAddress[0xf70cf1e8]("glGetString") => 0x400201b0
Calling getGLProcAddress[0xf70cf1e8]("glGenTextures") => 0x400201c0
Calling getGLProcAddress[0xf70cf1e8]("glPixelStorei") => 0x400201d0
Calling getGLProcAddress[0xf70cf1e8]("glPolygonMode") => 0x400201e0
Calling getGLProcAddress[0xf70cf1e8]("glScissor") => 0x400201f0
Calling getGLProcAddress[0xf70cf1e8]("glStencilFunc") => 0x40020200
Calling getGLProcAddress[0xf70cf1e8]("glStencilMask") => 0x40020210
Calling getGLProcAddress[0xf70cf1e8]("glStencilOp") => 0x40020220
Calling getGLProcAddress[0xf70cf1e8]("glTexEnvf") => 0x40020230
Calling getGLProcAddress[0xf70cf1e8]("glTexImage2D") => 0x40020240
Calling getGLProcAddress[0xf70cf1e8]("glTexParameteri") => 0x40020250
Calling getGLProcAddress[0xf70cf1e8]("glTexParameterf") => 0x40020260
Calling getGLProcAddress[0xf70cf1e8]("glTexSubImage2D") => 0x40020270
Calling getGLProcAddress[0xf70cf1e8]("glViewport") => 0x40020280
Calling getGLProcAddress[0xf70cf1e8]("glActiveTexture") => 0x40020040
Calling getGLProcAddress[0xf70cf1e8]("glAlphaFunc") => 0x40020050
Calling getGLProcAddress[0xf70cf1e8]("glBindTexture") => 0x40020060
Calling getGLProcAddress[0xf70cf1e8]("glBlendEquation") => 0x40020070
Calling getGLProcAddress[0xf70cf1e8]("glBlendFunc") => 0x40020080
Calling getGLProcAddress[0xf70cf1e8]("glClear") => 0x40020090
Calling getGLProcAddress[0xf70cf1e8]("glClearColor") => 0x400200a0
Calling getGLProcAddress[0xf70cf1e8]("glClearDepth") => 0x400200b0
Calling getGLProcAddress[0xf70cf1e8]("glClearStencil") => 0x400200c0
Calling getGLProcAddress[0xf70cf1e8]("glColorMask") => 0x400200d0
Calling getGLProcAddress[0xf70cf1e8]("glCompressedTexImage2D") => 0x400200e0
Calling getGLProcAddress[0xf70cf1e8]("glCullFace") => 0x400200f0
Calling getGLProcAddress[0xf70cf1e8]("glDeleteTextures") => 0x40020100
Calling getGLProcAddress[0xf70cf1e8]("glDepthFunc") => 0x40020110
Calling getGLProcAddress[0xf70cf1e8]("glDepthMask") => 0x40020120
Calling getGLProcAddress[0xf70cf1e8]("glDepthRange") => 0x40020130
Calling getGLProcAddress[0xf70cf1e8]("glDisable") => 0x40020140
Calling getGLProcAddress[0xf70cf1e8]("glDrawArrays") => 0x40020150
Calling getGLProcAddress[0xf70cf1e8]("glDrawElements") => 0x40020160
Calling getGLProcAddress[0xf70cf1e8]("glDrawBuffer") => 0x40020170
Calling getGLProcAddress[0xf70cf1e8]("glEnable") => 0x40020180
Calling getGLProcAddress[0xf70cf1e8]("glFrontFace") => 0x40020190
Calling getGLProcAddress[0xf70cf1e8]("glGetIntegerv") => 0x400201a0
Calling getGLProcAddress[0xf70cf1e8]("glGetString") => 0x400201b0
Calling getGLProcAddress[0xf70cf1e8]("glGenTextures") => 0x400201c0
Calling getGLProcAddress[0xf70cf1e8]("glPixelStorei") => 0x400201d0
Calling getGLProcAddress[0xf70cf1e8]("glPolygonMode") => 0x400201e0
Calling getGLProcAddress[0xf70cf1e8]("glScissor") => 0x400201f0
Calling getGLProcAddress[0xf70cf1e8]("glStencilFunc") => 0x40020200
Calling getGLProcAddress[0xf70cf1e8]("glStencilMask") => 0x40020210
Calling getGLProcAddress[0xf70cf1e8]("glStencilOp") => 0x40020220
Calling getGLProcAddress[0xf70cf1e8]("glTexEnvf") => 0x40020230
Calling getGLProcAddress[0xf70cf1e8]("glTexImage2D") => 0x40020240
Calling getGLProcAddress[0xf70cf1e8]("glTexParameteri") => 0x40020250
Calling getGLProcAddress[0xf70cf1e8]("glTexParameterf") => 0x40020260
Calling getGLProcAddress[0xf70cf1e8]("glTexSubImage2D") => 0x40020270
Calling getGLProcAddress[0xf70cf1e8]("glViewport") => 0x40020280
Calling getGLProcAddress[0xf70cf1e8]("glBindBufferARB") => 0x40020290
Calling getGLProcAddress[0xf70cf1e8]("glDeleteBuffersARB") => 0x400202a0
Calling getGLProcAddress[0xf70cf1e8]("glGenBuffersARB") => 0x400202b0
Calling getGLProcAddress[0xf70cf1e8]("glBufferDataARB") => 0x400202c0
Calling getGLProcAddress[0xf70cf1e8]("glBufferSubDataARB") => 0x400202d0
Calling getGLProcAddress[0xf70cf1e8]("glMapBufferARB") => 0x400202e0
Calling getGLProcAddress[0xf70cf1e8]("glUnmapBufferARB") => 0x400202f0
Calling getGLProcAddress[0xf70cf1e8]("glBindRenderbufferEXT") => 0x40020300
Calling getGLProcAddress[0xf70cf1e8]("glDeleteRenderbuffersEXT") => 0x40020310
Calling getGLProcAddress[0xf70cf1e8]("glGenRenderbuffersEXT") => 0x40020320
Calling getGLProcAddress[0xf70cf1e8]("glRenderbufferStorageEXT") => 0x40020330
Calling getGLProcAddress[0xf70cf1e8]("glBindFramebufferEXT") => 0x40020340
Calling getGLProcAddress[0xf70cf1e8]("glDeleteFramebuffersEXT") => 0x40020350
Calling getGLProcAddress[0xf70cf1e8]("glGenFramebuffersEXT") => 0x40020360
Calling getGLProcAddress[0xf70cf1e8]("glCheckFramebufferStatusEXT") => 0x40020370
Calling getGLProcAddress[0xf70cf1e8]("glFramebufferTexture2DEXT") => 0x40020380
Calling getGLProcAddress[0xf70cf1e8]("glFramebufferRenderbufferEXT") => 0x40020390
Calling getGLProcAddress[0xf70cf1e8]("glBlitFramebufferEXT") => 0x400203a0
Calling getGLProcAddress[0xf70cf1e8]("glGetString") => 0x400201b0
Calling getGLProcAddress[0xf70cf1e8]("glGetError") => 0x400203b0
Calling getGLProcAddress[0xf70cf1e8]("glGetIntegerv") => 0x400201a0
Calling getGLProcAddress[0xf70cf1e8]("glEnable") => 0x40020180
Calling getGLProcAddress[0xf70cf1e8]("glDisable") => 0x40020140
Calling getGLProcAddress[0xf70cf1e8]("glDeleteShader") => 0x400203c0
Calling getGLProcAddress[0xf70cf1e8]("glDeleteProgram") => 0x400203d0
Calling getGLProcAddress[0xf70cf1e8]("glAttachShader") => 0x400203e0
Calling getGLProcAddress[0xf70cf1e8]("glCompileShader") => 0x400203f0
Calling getGLProcAddress[0xf70cf1e8]("glCreateShader") => 0x40020400
Calling getGLProcAddress[0xf70cf1e8]("glCreateProgram") => 0x40020410
Calling getGLProcAddress[0xf70cf1e8]("glDisableVertexAttribArray") => 0x40020420
Calling getGLProcAddress[0xf70cf1e8]("glEnableVertexAttribArray") => 0x40020430
Calling getGLProcAddress[0xf70cf1e8]("glGetAttribLocation") => 0x40020440
Calling getGLProcAddress[0xf70cf1e8]("glGetProgramInfoLog") => 0x40020450
Calling getGLProcAddress[0xf70cf1e8]("glGetShaderiv") => 0x40020460
Calling getGLProcAddress[0xf70cf1e8]("glGetProgramiv") => 0x40020470
Calling getGLProcAddress[0xf70cf1e8]("glGetUniformLocation") => 0x40020480
Calling getGLProcAddress[0xf70cf1e8]("glLinkProgram") => 0x40020490
Calling getGLProcAddress[0xf70cf1e8]("glShaderSource") => 0x400204a0
Calling getGLProcAddress[0xf70cf1e8]("glUniform1i") => 0x400204b0
Calling getGLProcAddress[0xf70cf1e8]("glUniform1iv") => 0x400204c0
Calling getGLProcAddress[0xf70cf1e8]("glUniform4fv") => 0x400204d0
Calling getGLProcAddress[0xf70cf1e8]("glUniform4iv") => 0x400204e0
Calling getGLProcAddress[0xf70cf1e8]("glUseProgram") => 0x400204f0
Calling getGLProcAddress[0xf70cf1e8]("glVertexAttribPointer") => 0x40020500
Calling getGLProcAddress[0xf70cf1e8]("glDeleteObjectARB") => 0x40020510
Calling getGLProcAddress[0xf70cf1e8]("glAttachObjectARB") => 0x40020520
Calling getGLProcAddress[0xf70cf1e8]("glCompileShaderARB") => 0x400203f0
Calling getGLProcAddress[0xf70cf1e8]("glCreateProgramObjectARB") => 0x40020530
Calling getGLProcAddress[0xf70cf1e8]("glCreateShaderObjectARB") => 0x40020540
Calling getGLProcAddress[0xf70cf1e8]("glGetInfoLogARB") => 0x40020550
Calling getGLProcAddress[0xf70cf1e8]("glGetObjectParameterivARB") => 0x40020560
Calling getGLProcAddress[0xf70cf1e8]("glGetUniformLocationARB") => 0x40020480
Calling getGLProcAddress[0xf70cf1e8]("glLinkProgramARB") => 0x40020490
Calling getGLProcAddress[0xf70cf1e8]("glShaderSourceARB") => 0x400204a0
Calling getGLProcAddress[0xf70cf1e8]("glUniform1iARB") => 0x400204b0
Calling getGLProcAddress[0xf70cf1e8]("glUniform1ivARB") => 0x400204c0
Calling getGLProcAddress[0xf70cf1e8]("glUniform4fvARB") => 0x400204d0
Calling getGLProcAddress[0xf70cf1e8]("glUniform4ivARB") => 0x400204e0
Calling getGLProcAddress[0xf70cf1e8]("glUseProgramObjectARB") => 0x40020570
Calling getGLProcAddress[0xf70cf1e8]("glDisableVertexAttribArrayARB") => 0x40020420
Calling getGLProcAddress[0xf70cf1e8]("glEnableVertexAttribArrayARB") => 0x40020430
Calling getGLProcAddress[0xf70cf1e8]("glGetAttribLocationARB") => 0x40020440
Calling getGLProcAddress[0xf70cf1e8]("glVertexAttribPointerARB") => 0x40020500
Calling getGLProcAddress[0xf70cf1e8]("glVertexAttribPointerARB") => 0x40020500
Calling getGLProcAddress[0xf70cf1e8]("glGetProgramivARB") => 0x40020580
Calling getGLProcAddress[0xf70cf1e8]("glProgramLocalParameter4fvARB") => 0x40020590
Calling getGLProcAddress[0xf70cf1e8]("glDeleteProgramsARB") => 0x400205a0
Calling getGLProcAddress[0xf70cf1e8]("glGenProgramsARB") => 0x400205b0
Calling getGLProcAddress[0xf70cf1e8]("glBindProgramARB") => 0x400205c0
Calling getGLProcAddress[0xf70cf1e8]("glProgramStringARB") => 0x400205d0
Calling getGLProcAddress[0xf70cf1e8]("glProgramLocalParameterI4ivNV") => (nil)
Calling getGLProcAddress[0xf70cf1e8]("glGetString") => 0x400201b0
Calling getGLProcAddress[0xf70cf1e8]("glGetError") => 0x400203b0
Calling getGLProcAddress[0xf70cf1e8]("glGetIntegerv") => 0x400201a0
Calling getGLProcAddress[0xf70cf1e8]("glEnable") => 0x40020180
Calling getGLProcAddress[0xf70cf1e8]("glDisable") => 0x40020140
Calling getGLProcAddress[0xf70cf1e8]("glDeleteShader") => 0x400203c0
Calling getGLProcAddress[0xf70cf1e8]("glDeleteProgram") => 0x400203d0
Calling getGLProcAddress[0xf70cf1e8]("glAttachShader") => 0x400203e0
Calling getGLProcAddress[0xf70cf1e8]("glCompileShader") => 0x400203f0
Calling getGLProcAddress[0xf70cf1e8]("glCreateShader") => 0x40020400
Calling getGLProcAddress[0xf70cf1e8]("glCreateProgram") => 0x40020410
Calling getGLProcAddress[0xf70cf1e8]("glDisableVertexAttribArray") => 0x40020420
Calling getGLProcAddress[0xf70cf1e8]("glEnableVertexAttribArray") => 0x40020430
Calling getGLProcAddress[0xf70cf1e8]("glGetAttribLocation") => 0x40020440
Calling getGLProcAddress[0xf70cf1e8]("glGetProgramInfoLog") => 0x40020450
Calling getGLProcAddress[0xf70cf1e8]("glGetShaderiv") => 0x40020460
Calling getGLProcAddress[0xf70cf1e8]("glGetProgramiv") => 0x40020470
Calling getGLProcAddress[0xf70cf1e8]("glGetUniformLocation") => 0x40020480
Calling getGLProcAddress[0xf70cf1e8]("glLinkProgram") => 0x40020490
Calling getGLProcAddress[0xf70cf1e8]("glShaderSource") => 0x400204a0
Calling getGLProcAddress[0xf70cf1e8]("glUniform1i") => 0x400204b0
Calling getGLProcAddress[0xf70cf1e8]("glUniform1iv") => 0x400204c0
Calling getGLProcAddress[0xf70cf1e8]("glUniform4fv") => 0x400204d0
Calling getGLProcAddress[0xf70cf1e8]("glUniform4iv") => 0x400204e0
Calling getGLProcAddress[0xf70cf1e8]("glUseProgram") => 0x400204f0
Calling getGLProcAddress[0xf70cf1e8]("glVertexAttribPointer") => 0x40020500
Calling getGLProcAddress[0xf70cf1e8]("glDeleteObjectARB") => 0x40020510
Calling getGLProcAddress[0xf70cf1e8]("glAttachObjectARB") => 0x40020520
Calling getGLProcAddress[0xf70cf1e8]("glCompileShaderARB") => 0x400203f0
Calling getGLProcAddress[0xf70cf1e8]("glCreateProgramObjectARB") => 0x40020530
Calling getGLProcAddress[0xf70cf1e8]("glCreateShaderObjectARB") => 0x40020540
Calling getGLProcAddress[0xf70cf1e8]("glGetInfoLogARB") => 0x40020550
Calling getGLProcAddress[0xf70cf1e8]("glGetObjectParameterivARB") => 0x40020560
Calling getGLProcAddress[0xf70cf1e8]("glGetUniformLocationARB") => 0x40020480
Calling getGLProcAddress[0xf70cf1e8]("glLinkProgramARB") => 0x40020490
Calling getGLProcAddress[0xf70cf1e8]("glShaderSourceARB") => 0x400204a0
Calling getGLProcAddress[0xf70cf1e8]("glUniform1iARB") => 0x400204b0
Calling getGLProcAddress[0xf70cf1e8]("glUniform1ivARB") => 0x400204c0
Calling getGLProcAddress[0xf70cf1e8]("glUniform4fvARB") => 0x400204d0
Calling getGLProcAddress[0xf70cf1e8]("glUniform4ivARB") => 0x400204e0
Calling getGLProcAddress[0xf70cf1e8]("glUseProgramObjectARB") => 0x40020570
Calling getGLProcAddress[0xf70cf1e8]("glDisableVertexAttribArrayARB") => 0x40020420
Calling getGLProcAddress[0xf70cf1e8]("glEnableVertexAttribArrayARB") => 0x40020430
Calling getGLProcAddress[0xf70cf1e8]("glGetAttribLocationARB") => 0x40020440
Calling getGLProcAddress[0xf70cf1e8]("glVertexAttribPointerARB") => 0x40020500
Calling getGLProcAddress[0xf70cf1e8]("glVertexAttribPointerARB") => 0x40020500
Calling getGLProcAddress[0xf70cf1e8]("glGetProgramivARB") => 0x40020580
Calling getGLProcAddress[0xf70cf1e8]("glProgramLocalParameter4fvARB") => 0x40020590
Calling getGLProcAddress[0xf70cf1e8]("glDeleteProgramsARB") => 0x400205a0
Calling getGLProcAddress[0xf70cf1e8]("glGenProgramsARB") => 0x400205b0
Calling getGLProcAddress[0xf70cf1e8]("glBindProgramARB") => 0x400205c0
Calling getGLProcAddress[0xf70cf1e8]("glProgramStringARB") => 0x400205d0
Calling getGLProcAddress[0xf70cf1e8]("glProgramLocalParameterI4ivNV") => (nil)
Calling getGLProcAddress[0xf70cf1e8]("glActiveTexture") => 0x40020040
Calling getGLProcAddress[0xf70cf1e8]("glAlphaFunc") => 0x40020050
Calling getGLProcAddress[0xf70cf1e8]("glBindTexture") => 0x40020060
Calling getGLProcAddress[0xf70cf1e8]("glBlendEquation") => 0x40020070
Calling getGLProcAddress[0xf70cf1e8]("glBlendFunc") => 0x40020080
Calling getGLProcAddress[0xf70cf1e8]("glClear") => 0x40020090
Calling getGLProcAddress[0xf70cf1e8]("glClearColor") => 0x400200a0
Calling getGLProcAddress[0xf70cf1e8]("glClearDepth") => 0x400200b0
Calling getGLProcAddress[0xf70cf1e8]("glClearStencil") => 0x400200c0
Calling getGLProcAddress[0xf70cf1e8]("glColorMask") => 0x400200d0
Calling getGLProcAddress[0xf70cf1e8]("glCompressedTexImage2D") => 0x400200e0
Calling getGLProcAddress[0xf70cf1e8]("glCullFace") => 0x400200f0
Calling getGLProcAddress[0xf70cf1e8]("glDeleteTextures") => 0x40020100
Calling getGLProcAddress[0xf70cf1e8]("glDepthFunc") => 0x40020110
Calling getGLProcAddress[0xf70cf1e8]("glDepthMask") => 0x40020120
Calling getGLProcAddress[0xf70cf1e8]("glDepthRange") => 0x40020130
Calling getGLProcAddress[0xf70cf1e8]("glDisable") => 0x40020140
Calling getGLProcAddress[0xf70cf1e8]("glDrawArrays") => 0x40020150
Calling getGLProcAddress[0xf70cf1e8]("glDrawElements") => 0x40020160
Calling getGLProcAddress[0xf70cf1e8]("glDrawBuffer") => 0x40020170
Calling getGLProcAddress[0xf70cf1e8]("glEnable") => 0x40020180
Calling getGLProcAddress[0xf70cf1e8]("glFrontFace") => 0x40020190
Calling getGLProcAddress[0xf70cf1e8]("glGetIntegerv") => 0x400201a0
Calling getGLProcAddress[0xf70cf1e8]("glGetString") => 0x400201b0
Calling getGLProcAddress[0xf70cf1e8]("glGenTextures") => 0x400201c0
Calling getGLProcAddress[0xf70cf1e8]("glPixelStorei") => 0x400201d0
Calling getGLProcAddress[0xf70cf1e8]("glPolygonMode") => 0x400201e0
Calling getGLProcAddress[0xf70cf1e8]("glScissor") => 0x400201f0
Calling getGLProcAddress[0xf70cf1e8]("glStencilFunc") => 0x40020200
Calling getGLProcAddress[0xf70cf1e8]("glStencilMask") => 0x40020210
Calling getGLProcAddress[0xf70cf1e8]("glStencilOp") => 0x40020220
Calling getGLProcAddress[0xf70cf1e8]("glTexEnvf") => 0x40020230
Calling getGLProcAddress[0xf70cf1e8]("glTexImage2D") => 0x40020240
Calling getGLProcAddress[0xf70cf1e8]("glTexParameteri") => 0x40020250
Calling getGLProcAddress[0xf70cf1e8]("glTexParameterf") => 0x40020260
Calling getGLProcAddress[0xf70cf1e8]("glTexSubImage2D") => 0x40020270
Calling getGLProcAddress[0xf70cf1e8]("glViewport") => 0x40020280
Calling getGLProcAddress[0xf70cf1e8]("glActiveTexture") => 0x40020040
Calling getGLProcAddress[0xf70cf1e8]("glAlphaFunc") => 0x40020050
Calling getGLProcAddress[0xf70cf1e8]("glBindTexture") => 0x40020060
Calling getGLProcAddress[0xf70cf1e8]("glBlendEquation") => 0x40020070
Calling getGLProcAddress[0xf70cf1e8]("glBlendFunc") => 0x40020080
Calling getGLProcAddress[0xf70cf1e8]("glClear") => 0x40020090
Calling getGLProcAddress[0xf70cf1e8]("glClearColor") => 0x400200a0
Calling getGLProcAddress[0xf70cf1e8]("glClearDepth") => 0x400200b0
Calling getGLProcAddress[0xf70cf1e8]("glClearStencil") => 0x400200c0
Calling getGLProcAddress[0xf70cf1e8]("glColorMask") => 0x400200d0
Calling getGLProcAddress[0xf70cf1e8]("glCompressedTexImage2D") => 0x400200e0
Calling getGLProcAddress[0xf70cf1e8]("glCullFace") => 0x400200f0
Calling getGLProcAddress[0xf70cf1e8]("glDeleteTextures") => 0x40020100
Calling getGLProcAddress[0xf70cf1e8]("glDepthFunc") => 0x40020110
Calling getGLProcAddress[0xf70cf1e8]("glDepthMask") => 0x40020120
Calling getGLProcAddress[0xf70cf1e8]("glDepthRange") => 0x40020130
Calling getGLProcAddress[0xf70cf1e8]("glDisable") => 0x40020140
Calling getGLProcAddress[0xf70cf1e8]("glDrawArrays") => 0x40020150
Calling getGLProcAddress[0xf70cf1e8]("glDrawElements") => 0x40020160
Calling getGLProcAddress[0xf70cf1e8]("glDrawBuffer") => 0x40020170
Calling getGLProcAddress[0xf70cf1e8]("glEnable") => 0x40020180
Calling getGLProcAddress[0xf70cf1e8]("glFrontFace") => 0x40020190
Calling getGLProcAddress[0xf70cf1e8]("glGetIntegerv") => 0x400201a0
Calling getGLProcAddress[0xf70cf1e8]("glGetString") => 0x400201b0
Calling getGLProcAddress[0xf70cf1e8]("glGenTextures") => 0x400201c0
Calling getGLProcAddress[0xf70cf1e8]("glPixelStorei") => 0x400201d0
Calling getGLProcAddress[0xf70cf1e8]("glPolygonMode") => 0x400201e0
Calling getGLProcAddress[0xf70cf1e8]("glScissor") => 0x400201f0
Calling getGLProcAddress[0xf70cf1e8]("glStencilFunc") => 0x40020200
Calling getGLProcAddress[0xf70cf1e8]("glStencilMask") => 0x40020210
Calling getGLProcAddress[0xf70cf1e8]("glStencilOp") => 0x40020220
Calling getGLProcAddress[0xf70cf1e8]("glTexEnvf") => 0x40020230
Calling getGLProcAddress[0xf70cf1e8]("glTexImage2D") => 0x40020240
Calling getGLProcAddress[0xf70cf1e8]("glTexParameteri") => 0x40020250
Calling getGLProcAddress[0xf70cf1e8]("glTexParameterf") => 0x40020260
Calling getGLProcAddress[0xf70cf1e8]("glTexSubImage2D") => 0x40020270
Calling getGLProcAddress[0xf70cf1e8]("glViewport") => 0x40020280
Calling getGLProcAddress[0xf70cf1e8]("glBindBufferARB") => 0x40020290
Calling getGLProcAddress[0xf70cf1e8]("glDeleteBuffersARB") => 0x400202a0
Calling getGLProcAddress[0xf70cf1e8]("glGenBuffersARB") => 0x400202b0
Calling getGLProcAddress[0xf70cf1e8]("glBufferDataARB") => 0x400202c0
Calling getGLProcAddress[0xf70cf1e8]("glBufferSubDataARB") => 0x400202d0
Calling getGLProcAddress[0xf70cf1e8]("glMapBufferARB") => 0x400202e0
Calling getGLProcAddress[0xf70cf1e8]("glUnmapBufferARB") => 0x400202f0
Calling getGLProcAddress[0xf70cf1e8]("glBindRenderbufferEXT") => 0x40020300
Calling getGLProcAddress[0xf70cf1e8]("glDeleteRenderbuffersEXT") => 0x40020310
Calling getGLProcAddress[0xf70cf1e8]("glGenRenderbuffersEXT") => 0x40020320
Calling getGLProcAddress[0xf70cf1e8]("glRenderbufferStorageEXT") => 0x40020330
Calling getGLProcAddress[0xf70cf1e8]("glBindFramebufferEXT") => 0x40020340
Calling getGLProcAddress[0xf70cf1e8]("glDeleteFramebuffersEXT") => 0x40020350
Calling getGLProcAddress[0xf70cf1e8]("glGenFramebuffersEXT") => 0x40020360
Calling getGLProcAddress[0xf70cf1e8]("glCheckFramebufferStatusEXT") => 0x40020370
Calling getGLProcAddress[0xf70cf1e8]("glFramebufferTexture2DEXT") => 0x40020380
Calling getGLProcAddress[0xf70cf1e8]("glFramebufferRenderbufferEXT") => 0x40020390
Calling getGLProcAddress[0xf70cf1e8]("glBlitFramebufferEXT") => 0x400203a0
Calling getGLProcAddress[0xf70cf1e8]("glGetString") => 0x400201b0
Calling getGLProcAddress[0xf70cf1e8]("glGetError") => 0x400203b0
Calling getGLProcAddress[0xf70cf1e8]("glGetIntegerv") => 0x400201a0
Calling getGLProcAddress[0xf70cf1e8]("glEnable") => 0x40020180
Calling getGLProcAddress[0xf70cf1e8]("glDisable") => 0x40020140
Calling getGLProcAddress[0xf70cf1e8]("glDeleteShader") => 0x400203c0
Calling getGLProcAddress[0xf70cf1e8]("glDeleteProgram") => 0x400203d0
Calling getGLProcAddress[0xf70cf1e8]("glAttachShader") => 0x400203e0
Calling getGLProcAddress[0xf70cf1e8]("glCompileShader") => 0x400203f0
Calling getGLProcAddress[0xf70cf1e8]("glCreateShader") => 0x40020400
Calling getGLProcAddress[0xf70cf1e8]("glCreateProgram") => 0x40020410
Calling getGLProcAddress[0xf70cf1e8]("glDisableVertexAttribArray") => 0x40020420
Calling getGLProcAddress[0xf70cf1e8]("glEnableVertexAttribArray") => 0x40020430
Calling getGLProcAddress[0xf70cf1e8]("glGetAttribLocation") => 0x40020440
Calling getGLProcAddress[0xf70cf1e8]("glGetProgramInfoLog") => 0x40020450
Calling getGLProcAddress[0xf70cf1e8]("glGetShaderiv") => 0x40020460
Calling getGLProcAddress[0xf70cf1e8]("glGetProgramiv") => 0x40020470
Calling getGLProcAddress[0xf70cf1e8]("glGetUniformLocation") => 0x40020480
Calling getGLProcAddress[0xf70cf1e8]("glLinkProgram") => 0x40020490
Calling getGLProcAddress[0xf70cf1e8]("glShaderSource") => 0x400204a0
Calling getGLProcAddress[0xf70cf1e8]("glUniform1i") => 0x400204b0
Calling getGLProcAddress[0xf70cf1e8]("glUniform1iv") => 0x400204c0
Calling getGLProcAddress[0xf70cf1e8]("glUniform4fv") => 0x400204d0
Calling getGLProcAddress[0xf70cf1e8]("glUniform4iv") => 0x400204e0
Calling getGLProcAddress[0xf70cf1e8]("glUseProgram") => 0x400204f0
Calling getGLProcAddress[0xf70cf1e8]("glVertexAttribPointer") => 0x40020500
Calling getGLProcAddress[0xf70cf1e8]("glDeleteObjectARB") => 0x40020510
Calling getGLProcAddress[0xf70cf1e8]("glAttachObjectARB") => 0x40020520
Calling getGLProcAddress[0xf70cf1e8]("glCompileShaderARB") => 0x400203f0
Calling getGLProcAddress[0xf70cf1e8]("glCreateProgramObjectARB") => 0x40020530
Calling getGLProcAddress[0xf70cf1e8]("glCreateShaderObjectARB") => 0x40020540
Calling getGLProcAddress[0xf70cf1e8]("glGetInfoLogARB") => 0x40020550
Calling getGLProcAddress[0xf70cf1e8]("glGetObjectParameterivARB") => 0x40020560
Calling getGLProcAddress[0xf70cf1e8]("glGetUniformLocationARB") => 0x40020480
Calling getGLProcAddress[0xf70cf1e8]("glLinkProgramARB") => 0x40020490
Calling getGLProcAddress[0xf70cf1e8]("glShaderSourceARB") => 0x400204a0
Calling getGLProcAddress[0xf70cf1e8]("glUniform1iARB") => 0x400204b0
Calling getGLProcAddress[0xf70cf1e8]("glUniform1ivARB") => 0x400204c0
Calling getGLProcAddress[0xf70cf1e8]("glUniform4fvARB") => 0x400204d0
Calling getGLProcAddress[0xf70cf1e8]("glUniform4ivARB") => 0x400204e0
Calling getGLProcAddress[0xf70cf1e8]("glUseProgramObjectARB") => 0x40020570
Calling getGLProcAddress[0xf70cf1e8]("glDisableVertexAttribArrayARB") => 0x40020420
Calling getGLProcAddress[0xf70cf1e8]("glEnableVertexAttribArrayARB") => 0x40020430
Calling getGLProcAddress[0xf70cf1e8]("glGetAttribLocationARB") => 0x40020440
Calling getGLProcAddress[0xf70cf1e8]("glVertexAttribPointerARB") => 0x40020500
Calling getGLProcAddress[0xf70cf1e8]("glVertexAttribPointerARB") => 0x40020500
Calling getGLProcAddress[0xf70cf1e8]("glGetProgramivARB") => 0x40020580
Calling getGLProcAddress[0xf70cf1e8]("glProgramLocalParameter4fvARB") => 0x40020590
Calling getGLProcAddress[0xf70cf1e8]("glDeleteProgramsARB") => 0x400205a0
Calling getGLProcAddress[0xf70cf1e8]("glGenProgramsARB") => 0x400205b0
Calling getGLProcAddress[0xf70cf1e8]("glBindProgramARB") => 0x400205c0
Calling getGLProcAddress[0xf70cf1e8]("glProgramStringARB") => 0x400205d0
Calling getGLProcAddress[0xf70cf1e8]("glProgramLocalParameterI4ivNV") => (nil)
Calling getGLProcAddress[0xf70cf1e8]("glGetString") => 0x400201b0
Calling getGLProcAddress[0xf70cf1e8]("glGetError") => 0x400203b0
Calling getGLProcAddress[0xf70cf1e8]("glGetIntegerv") => 0x400201a0
Calling getGLProcAddress[0xf70cf1e8]("glEnable") => 0x40020180
Calling getGLProcAddress[0xf70cf1e8]("glDisable") => 0x40020140
Calling getGLProcAddress[0xf70cf1e8]("glDeleteShader") => 0x400203c0
Calling getGLProcAddress[0xf70cf1e8]("glDeleteProgram") => 0x400203d0
Calling getGLProcAddress[0xf70cf1e8]("glAttachShader") => 0x400203e0
Calling getGLProcAddress[0xf70cf1e8]("glCompileShader") => 0x400203f0
Calling getGLProcAddress[0xf70cf1e8]("glCreateShader") => 0x40020400
Calling getGLProcAddress[0xf70cf1e8]("glCreateProgram") => 0x40020410
Calling getGLProcAddress[0xf70cf1e8]("glDisableVertexAttribArray") => 0x40020420
Calling getGLProcAddress[0xf70cf1e8]("glEnableVertexAttribArray") => 0x40020430
Calling getGLProcAddress[0xf70cf1e8]("glGetAttribLocation") => 0x40020440
Calling getGLProcAddress[0xf70cf1e8]("glGetProgramInfoLog") => 0x40020450
Calling getGLProcAddress[0xf70cf1e8]("glGetShaderiv") => 0x40020460
Calling getGLProcAddress[0xf70cf1e8]("glGetProgramiv") => 0x40020470
Calling getGLProcAddress[0xf70cf1e8]("glGetUniformLocation") => 0x40020480
Calling getGLProcAddress[0xf70cf1e8]("glLinkProgram") => 0x40020490
Calling getGLProcAddress[0xf70cf1e8]("glShaderSource") => 0x400204a0
Calling getGLProcAddress[0xf70cf1e8]("glUniform1i") => 0x400204b0
Calling getGLProcAddress[0xf70cf1e8]("glUniform1iv") => 0x400204c0
Calling getGLProcAddress[0xf70cf1e8]("glUniform4fv") => 0x400204d0
Calling getGLProcAddress[0xf70cf1e8]("glUniform4iv") => 0x400204e0
Calling getGLProcAddress[0xf70cf1e8]("glUseProgram") => 0x400204f0
Calling getGLProcAddress[0xf70cf1e8]("glVertexAttribPointer") => 0x40020500
Calling getGLProcAddress[0xf70cf1e8]("glDeleteObjectARB") => 0x40020510
Calling getGLProcAddress[0xf70cf1e8]("glAttachObjectARB") => 0x40020520
Calling getGLProcAddress[0xf70cf1e8]("glCompileShaderARB") => 0x400203f0
Calling getGLProcAddress[0xf70cf1e8]("glCreateProgramObjectARB") => 0x40020530
Calling getGLProcAddress[0xf70cf1e8]("glCreateShaderObjectARB") => 0x40020540
Calling getGLProcAddress[0xf70cf1e8]("glGetInfoLogARB") => 0x40020550
Calling getGLProcAddress[0xf70cf1e8]("glGetObjectParameterivARB") => 0x40020560
Calling getGLProcAddress[0xf70cf1e8]("glGetUniformLocationARB") => 0x40020480
Calling getGLProcAddress[0xf70cf1e8]("glLinkProgramARB") => 0x40020490
Calling getGLProcAddress[0xf70cf1e8]("glShaderSourceARB") => 0x400204a0
Calling getGLProcAddress[0xf70cf1e8]("glUniform1iARB") => 0x400204b0
Calling getGLProcAddress[0xf70cf1e8]("glUniform1ivARB") => 0x400204c0
Calling getGLProcAddress[0xf70cf1e8]("glUniform4fvARB") => 0x400204d0
Calling getGLProcAddress[0xf70cf1e8]("glUniform4ivARB") => 0x400204e0
Calling getGLProcAddress[0xf70cf1e8]("glUseProgramObjectARB") => 0x40020570
Calling getGLProcAddress[0xf70cf1e8]("glDisableVertexAttribArrayARB") => 0x40020420
Calling getGLProcAddress[0xf70cf1e8]("glEnableVertexAttribArrayARB") => 0x40020430
Calling getGLProcAddress[0xf70cf1e8]("glGetAttribLocationARB") => 0x40020440
Calling getGLProcAddress[0xf70cf1e8]("glVertexAttribPointerARB") => 0x40020500
Calling getGLProcAddress[0xf70cf1e8]("glVertexAttribPointerARB") => 0x40020500
Calling getGLProcAddress[0xf70cf1e8]("glGetProgramivARB") => 0x40020580
Calling getGLProcAddress[0xf70cf1e8]("glProgramLocalParameter4fvARB") => 0x40020590
Calling getGLProcAddress[0xf70cf1e8]("glDeleteProgramsARB") => 0x400205a0
Calling getGLProcAddress[0xf70cf1e8]("glGenProgramsARB") => 0x400205b0
Calling getGLProcAddress[0xf70cf1e8]("glBindProgramARB") => 0x400205c0
Calling getGLProcAddress[0xf70cf1e8]("glProgramStringARB") => 0x400205d0
Calling getGLProcAddress[0xf70cf1e8]("glProgramLocalParameterI4ivNV") => (nil)
Running in Fake Xbox 360 Mode

from box86.

Cebion avatar Cebion commented on August 23, 2024

It should work now, with latest version, if you build box86 with the GOA_CLONES profile.

Thank you @ptitSeb.
Johnny reported that it now works on his devices.

For some reason on mine my LibGL gets initialized two times and at the end I'm getting a SIGSEGV. Really odd

Calling getGLProcAddress[0xf7182c94]("glTexParameteri") => 0x40020250
Calling getGLProcAddress[0xf7182c94]("glTexParameterf") => 0x40020260
Calling getGLProcAddress[0xf7182c94]("glTexSubImage2D") => 0x40020270
Calling getGLProcAddress[0xf7182c94]("glViewport") => 0x40020280
2419|SIGSEGV @0xf76146bc (???(/usr/lib32/libc.so.6/0xf76146bc)) (x86pc=0x400201bb/???:"???", esp=0xf6bb954c, stack=0xf63ba000:0xf6bba000 own=(nil) fp=0x1), for accessing 0x973 (code=-6/prot=0), db=(nil)((nil):(nil)/(nil):(nil)/???:clean, hash:0/0)
ESP-0x10:0x63d7b8b8 ESP-0x0c:0x00000000 ESP-0x08:0x081a2480 ESP-0x04:0x00000001
ESP+0x00:0x081a33c4 ESP+0x04:0x00001f03 ESP+0x08:0x00000001 ESP+0x0c:0x00000000
Native bactrace:
        ./x86/SuperMeatBoy() [0x6295ddac]
        /usr/lib32/libc.so.6(__default_rt_sa_restorer+0) [0xf75ce210]
        /usr/lib32/libc.so.6(+0x7b6bc) [0xf76146bc]
        /usr/lib32/libc.so.6(raise+0x18) [0xf75cd16c]
2419|SIGSEGV @0xf488017c (???(0xf488017c)) (x86pc=0x400201bb/???:"???", esp=0xf6bb954c, stack=0xf63ba000:0xf6bba000 own=(nil) fp=0x1), for accessing 0xf488017c (code=1/prot=0), db=(nil)((nil):(nil)/(nil):(nil)/???:clean, hash:0/0)
ESP-0x10:0x63d7b8b8 ESP-0x0c:0x00000000 ESP-0x08:0x081a2480 ESP-0x04:0x00000001
ESP+0x00:0x081a33c4 ESP+0x04:0x00001f03 ESP+0x08:0x00000001 ESP+0x0c:0x00000000
Native bactrace:
        ./x86/SuperMeatBoy() [0x6295ddac]
        /usr/lib32/libc.so.6(__default_rt_sa_restorer+0) [0xf75ce210]
2419|Double SIGSEGV (code=1, pc=0xf488017c, addr=0xf488017c)!
LIBGL: Shutting down

from box86.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.