I’ve been porting Play! ps2 emulator to VisionFive2. So far its too slow/unreliable to run anything big but i have some sample apps from ps2dev/ps2sdk working.
Very cool that you got Play! working! I don’t know if there is a way to get better performance immediately. We are kinda waiting for the GPU driver to land in mesa and the kernel. It hopefully won’t take much longer.
Cool machines those, now i want to get a Milk-V Oasis I want add support for using the vector instructions on the Lichee 4A. Apparently its RVV 0.7.1? That might make things a bit easier. I still hope i can improve a lot the non vector version for VisionFive2. It would be cool to support some simple games at least!
I tried to compile Qt5 from the StarFive repo on my Lichee Console.
It looks like it errors out compiling one of the self-tests.
Going to have a look if I can skip that, and see if it gets to the end.
Thanks for trying it on the Lichee Console! I have been taking a little break from this after that initial work. But i got access to a Lichee Pi 4a and hope to have it working there soon!
A little background on my investigation:
I had to replace some instructions with similar T-head extension instructions.
To count the leading zeros of a value. On VisionFive2 the CLZ instruction from Zbb extension seems to work. On Lichee we can use the FF1 from T-head XTheadBb extension.
I still need to find a way to pick which instructions to use for the device its running on. I’m not sure the best way to detect extensions/instructions available? I don’t think the VisionFive2 even officially supports Zbb?
I managed to get it compiled on the VF2. Looks like it doesn’t like ISO images, but it does start with a BIN file (but nothing seems to happen?). I also had to start it with elevated rights.
But now I have to get back to an older Debian image, as x11 doesn’t work with the current image.
Do I need to install Docker for PS2SDK? Or can you supply a link for that cube demo?
Thanks again for testing this! I just added a build on lichee pi (also including a build of the cube demo) here.
Added qt visionfive2 egl build as well
Im going to review the build instructions and try and get something that works for both lichee pi and visionfive.
Just fixed a big issue with branching to big offsets. A lot more stuff seems to be working and I’m now able to get into game play with the demo I’ve been testing on both VisionFive2 and Lichee Pi 4a.
I also added builds for both VisionFive2 and Lichee Pi 4a to the project page here
Next step with be RVV 0.7.1 support for the Lichee Pi
Thanks for the packages.
The Lichee Pi build is also working for me.
I was also able to configure a PS4 controller connected on a USB port.
I have the feeling that I get a lot of graphical glitches, because of the limited OpenGL support. I hope we do get an updated driver for the GPU.
It’s impressive to see we are making progress on RISC-V. I hope we do get improved performance with RVV. Now it’s almost like watching a slideshow. But it’s still an interesting slideshow.
Thanks for testing it! Really cool the PS4 controller is working. I think your right about the GPU stuff, the FPS increases a bit if remove the draw calls. I was adding some RVV instructions it doesn’t have much improvement.
It seems PVRTune is working though, hopefully there is something useful to find there:
I’ll continue to finish the vector stuff on my RVV 0.7.1 branch. Then look at the GPU stuff again after that. Would be cool to try a PCIe GPU on the visionfive