Wednesday, February 1, 2017

SIMD for classic Amigas

As you all of course know by now, Sonnet cards are rather hard to be found. Even more rare is to find a Sonnet Crescendo 7200 G4. There were a few for sale when I started this project over 2 years ago, but they wouldn't ship to Europe. Since then, it has dried up, even for the G3s, on the various market sites.

A good friend of mine happened to have bought one....maybe 6 months ago. He lives in Germany. While I was in the neighborhood I could setup and test the G4 card. The computer used was a busted up A3000 with a Mediator and a Voodoo3. Also in the picture you can see a CSPPC:


The CSPPC makes it impossible to close the A3000, as the cooler of the 060 was too high. So we set up the system in a very unconventional way :-) It was running a bare OS3.1. 

As the biggest difference between G3 and G4 is AltiVec (I'm not certain about number of pipelines and FPU speed) which is a so called SIMD instruction set which speeds up certain calculations, the first program run was the dnetc program. It supports AltiVec, or so I thought:


As you can see in the above picture, no speedup or AltiVec cores chosen. This was due to two issues. One, the sonnet.library needs to activate the AltiVec stuff when available. And two, dnetc for WarpOS does not have AltiVec compiled in it. So after a bit of work I added AltiVec support to sonnet.library:


Here you can see my system with the G4 card. GetInfo recognizes the card correctly. In the window on the left you see part of the AltiVec support in sonnet.library. It's the loading of the various AltiVec registers after a task switch (when AltiVec is detected (PSL_VEC)).

As AltiVec programs for the classic Amiga are even more rare (WarpOS does not support it and there are 0 (zero) programs which use it), I wrote a small program to test if it works and that seems ok.

Next step would maybe be to port some MPEG-1 player. Or maybe you guys have some AltiVec sources lying around I could test? Much appreciated :-)

Saturday, October 15, 2016

Lies, damned lies and statistics


Added functionality to the sonnet.library which tracks CPU usage (time running), busy time (time not waiting) and activity (time.... I forgot, but the tooltips of WarpStat are very handy :-)



I also noticed that people are having a hard time to install the Sonnet card. (The few people having one). I actually got a copy from a Workbench of someone and my Sonnet refuses to work with that system disk. Not sure what the problem is yet... Seems like the set P96 screen modes are messing with the system. Have to look further into it.

Next post will be probably about all the pitfalls of installation :-)

Sunday, September 4, 2016

Blue in the face!

As said in the previous post, the last update made it possible for more demos to run. Here's one from that OTHER ppc solution back in the days: PowerUP from Phase 5.

The demo called Glare is from the widely known PPC demo group Mad Wizards. The video doesn't handle lighting perfectly (some of it is overexposed for example), but it is the thought that counts :-)

Enjoy!


Tuesday, August 23, 2016

Buggy first try at PPC assembly....

While doing the ReWarp project and testing out all kinds of demos (the hardest things to get going IMHO, they break system conformity quiet often), I decided to test some of the demos also with the sonnet.library. A hard crash with the first demo (bus error) and a DSI error with the other was the result

After debugging I found some serious bugs in the oldest code of the sonnet.library. The very first functions implemented were GetInfo, Alloc/FreeVecPPC and the TagItem functions (NextTagItemPPC etc.). I hadn't looked at this part of the code in almost 1.5 years. It were my first real tries at PPC assembly.

Anyway, that fixed the bus error problem.

The DSI resulted from the demos allocating memory for the PPC using Run68K and not the native PPC memory allocating functions. After a fix to that I had some fun watching demos:

MadWizards - Till I Feel You:


MadWizards - Third Eye Conqueror:



Some gfx bugs in some scenes, but overall it looked good! I hope to publish a video soon!

Thursday, July 7, 2016

Trying some games with ReWarp


When deleting hyperionvideo.library (no movies...alas) and with using the latest ReWarp library you can actually play Shogo MAD and Freespace (sort of...). At least it seems to be a lot more stable than with the old powerpc.library. No crashes while playing. There's one at the start of Shogo which isn't in the old library. I have to track that one down.


Starting up Shogo through the shell as the start GUI crashes (with both ReWarp and old powerpc lib):



The loading screen if you are fast enough. With no movies it goes by quickly:



The in-game menu. Warp3D renderer also works, but the game becomes very dark and unplayable. Maybe there is a gamma option somewhere. Also some glitches in the 3D with hardware acceleration enabled:


Start of the game using the software renderer:


Second level:


Bit further in the second level. Sometimes, NPC models seem to be missing:


Let's look at FreeSpace. Here the launcher works (with the wizard.library from OS4Depot). Don't forget to activate the Warp3D patch when playing. This game is actually playable now:


Works with all sounds enabled:


The tech room with the various models:


Flying around in your ship.. I rather have a blue HUD :-)


As a bonus here's a screenshot of Heretic II demo which also works:


Laters!

Wednesday, July 6, 2016

Up and running again!


I finally got around to check what happened to the Sam440 computer and opened up the PSU to at least check the fuse. Seeing the light show I had it probably was not something a fuse could have handled. And indeed it looked very much beyond repair:



I cannibalized the PSU of my AmigaOneXE system and voila:


You can imagine I cheered when the computer came back on :-) And now back to work.

Monday, June 27, 2016

Thunder and lightning...

Just a quick note to say that after returning from my vacation I had some nice fireworks when I put the power cord back into the wall socket of one of my power extensions. I pulled all cords before going on vacation. Both the wall socket and the power extension box were putting up a nice show for a second with loads of sparkles. Then came the nice smell of burned plastic.

Multiple equipment was connected to the box; a laser printer, 2 monitors, 1 PC and 1 SAM 440. Everything still seems to work....except the SAM 440. I hope it is only the PSU which has fried; I'm still waiting for a replacement to check that out.

First time I saw sparks flying at both ends of a cord (wall socket and extension box), don't know what happened :-(