I was looking to get some demos running on the sonnet and a posting on EAB came in very handy (see it here: http://eab.abime.net/showthread.php?t=71650). It listed some demos which are suppose to work on CSPPC/Voodoo3. So I picked the very top one and did a small & quick patch to the hunk header and names and here is the result:
Compare this to a CSPPC on 366MHz and G-Rex/Voodoo3 (Pardon the shaking, it is not mine ;-))
I know it is a bit difficult to read so here are the FPS:
The (working) programs and games in the previous movies/pictures had in common that they mostly consist of 1 running PPC task. The ones with more running tasks would freeze up after a while (main task got stuck in wait) or lost sound (sound task got stuck in wait).
A lot of debugging time went into this and a race condition was found during the messaging between the 2 CPUs.
1) AmiGeneratorT / Mortal Kombat II
2) DarcNes / Double Dragon
3) AmiGeneratorT / Sonic
4) WarpScummVM / DOTT
5) MAME / 88Games
6) UAEWOS / AIBB on LSD101 disk
7) WarpSNES / SuperMario World.
Some stuff is not optimized yet. ScummVM is accessing a lot of FAST memory still which maybe can avoided as each access is a context switch. Sound with Double Dragon is a bit weird in the menus, but I have seen this on a BPPC too.
Sorry for such a bland WB, I forgot to place my WB picture back after tests with WarpDT (no, not working yet). Also I really should install a silent fan into that A3000.
And see if you can spot the growling cat during the movie ;-)
While I'm debugging the code and chasing some nasty bugs, here's the sonnet card doing a PowerUP program using ppclibemu from Frank Wille. Yes, it is an ELF binary.
When I was in Neuss, the library was just about ready to show something moving on the screen without crashing. The picture below is from the Neuss event.
As you can see (with a bit of effort), Voxelspace was about 25 FPS at that time.
In December, direct access to graphics memory was added. And last week I finally found why RunPPC was as 10 times as slow as expected. This resulted in the following speed with Voxelspace.
Getting StormMESA to work has eluded me for some time now. But from the depths of the Internet came the hint to use Warp3D/ForceVersion 3 as an environment variable. And lo and behold:
Most of the StormMESA demos now seem to be working :-)
Not a flashy video showing 3D madness, but a picture showing the Sonnet compiling vasm, the assembler used to compile the sonnet.library. In this instance, the resulting binary runs on the Sonnet and puts out PPC code usable by the Sonnet.
The past few weeks have been mostly involving bug fixing, optimizing and other boring stuff. The coming weeks will probably see more of that, as the library is far from bug free.
But to fill the void here's a movie. The sound has been turned off. Also, my phone stopped recording during the last bit as its memory was full. So I guess that's for another movie.