egl-wayland was not the silver bullet. WAYLAND_DEBUG=1 EGL_LOG_LEVEL=debug eglinfo -B implies that it’s a bug in the PowerVR drivers and not something we can fix, but I’ve not the motivation to do a thorough check.
With DuckStation, I assume you mean SwanStation that you listed earlier?
Yea Swanstation. Sorry. I couldn’t find a duckstation app that would work with my setup, only libretro cores. But it may work now? These things are developing rapidly
I checked your Luanti video again more closely, I guess what bothered me was the fluctuating framerate (mine is stable). For me it fluctuates around 40 unless I cap it at 30, for the K3 build you’ve shown it’s slightly above 30? In any case I’d expect it to run better, not worse or same. I guess the driver needs more work, but thankfully you’ll have Vulkan there.
I do, I suppose. Thanks. But it’ll have to wait until later this week.
Edit: again almost forgot, I tested Xash3D some more, like Counter-Strike, TF and Blue Shift and stuff. Everything is working amazingly well, possibly one of the flashiest things to showcase on VF2. Except I can’t move with keyboard input in multiplayer games. Well maybe I can. I don’t know how it works, but from what I recall you were usually able to move while waiting in lobbies?
An update.
Gone down the rabbit hole of Firefox acceleration for a little. Looks like a layer of its graphical stack isn’t accelerated. The end output, for some reason, is, so the VF2 reports using the GPU, but the canvas, before display, is calculated by the CPU no matter what I do.
… Sonic CD doesn’t work well after all. In special stages it slows down and CTDs.
… Team Fortress and Counter Strike work fine with keyboard after all. You can find a server and just mingle with PC Master Race. I am not a fan of these games, but do recognize their significance: devs take note - CS sells the machine not only to my grumpy neighbour whom I made drool the other day, but likely to half of Eastern Europe.
(RANT: this is what sells technology. Not AI. Not surveillance tech. The ability to play Counter Strike and Super Mario.
Corporate wants you to think otherwise, but go out on the street. For every paranoid surveillance nerd out there you’ll find 20 normal people who want to have fun. AI tech is invasive and confusing. Who cares if the next machine has AI cores – the only ones who do are loud on the internet, and therein the trap lies.)
Anyhow, my kernel (6.6) lacks joypad support and something that enables box64 to work correctly. So might as well ask here – how do I recompile the same kernel with additional modules? I really want to make sure it’s actually the existing kernel I’m recompiling and the machine won’t pull stuff from the net to ‘upgrade’ and possibly break HDMI or GPU support.
6.6 for vf2 will probably be branch JH7110_VisionFive2_6.6.y_devel from here GitHub - starfive-tech/linux at JH7110_VisionFive2_6.6.y_devel · GitHub
If you don’t want to clone the whole git repo (heavy opeation), I suggest you just click Code → Download ZIP and unzip on the VF2
Then you can run
make olddefconfig
make vmlinuz -j $(nproc)
make modules -j $(nproc)
You should end up with exactly the same kernel module and images. If something doesn’t work, revert back.
Now you can try adding additional modules - instead of olddefconfig you can run menuconfig to configure the kernel features. Follow by modules and vmlinuz
I forgot about the .config file. Take it from /boot/config-6.6.* and copy to .config in the linux folder to start with your current kernel configuration.
I was able to build ioQuake3 and run it with OpenGL ES, but I can only look around, I’m not able to move (walk). There are some graphical glitches, but performance looks playable. I only tested with the shareware game files. Got an error about default.cfg missing, but I fixed that by copying an existing cfg file, and name it default.cfg.
Can you try to build GL4ES from source, and just let it sit there? When I need GL4ES I open a terminal session, and I just do:
export LD_LIBRARY_PATH="PATH_TO_GL4ES/lib:$LD_LIBRARY_PATH"
That way it should only be active in that terminal session.
I’m afraid DuckStation will not work on the VF2. I tried, but building libjpeg-turbo (in the dependencies) fails, as it needs vectors. Unless someone knows a workaround for that. And perhaps we’ll run into other errors. As SwanStation works, using an older state of the DuckStation (and dependencies) repo might work.
As the developer doesn’t release dependency packs for RISC-V, you have to build it yourself. Again, you need a RISC-V chip with vectors.
Copy the resulting files to your DuckStation repo, or try referencing it directly in DuckStationDependencies.cmake. I copied and used something like this: set(DEPS_PATH “${CMAKE_SOURCE_DIR}/dep/prebuilt/”)
Vulkan was showing a lot of graphical glitches, so I used OpenGL ES. Looks like DuckStation automatically detected OpenGL ES, as the menu only shows OpenGL.
Hey, I play quake 3 on my vf2 all the time. Just follow my instructions.
I have gotten Doom 3 to work on Visionfive 2
I compiled d3wasm with debug settings enabled
Works like a charm. I only used the demo game file. I set the resolution to 1600x1200 and I see more than 60fps with one bot. Might drop when you are playing online against a lot of opponents.
Did you test Doom 3 with the full game files? I tested with the demo game file, and got an error about a missing animation. I did the same thing on a Raspberry Pi 4, and the demo plays without problems.
I have built Ollama for RISCV. Run with docker - r0b0sk/ollama - Docker Image It is quite slow so it obviously falls into the games category ![]()
Firefox also does not support WebAssembly on RISC-V which is essential for games in the browser.
Exactly! That’s why I have decided to port my game (Bemined) for RISC-V, despite understanding that I will spend a lot of time on this and earn no money from it. Just wanted to do my little part in popularizing the platform.
Starfive Debian has an old version of Chromium, but performance is poor.
I tested OpenLara back in 2023.