Showing posts with label Sonnet. Show all posts
Showing posts with label Sonnet. Show all posts

Thursday, October 28, 2021

Blood for WarpOS!

 Thanks to BSzili (on EAB) Blood from Monolith (in the form of nBlood) is now available to Amiga! Cowcat and I have taken up the task to port this to WarpOS. Below can you see a work-in-progress. Sorry for the bad quality. If it is finished probably somebody else will do a much better job :-)

It is running on my AA3000+ with a Mediator (I replaced the FireBird for development a bit) and a Radeon 9200 Pro card with a Apocalypse card (MPC7410 / 256MB).

The current showstopper for release is multiplayer. It works, but it slows down the game a lot (from the fps you see in this video to below 20 fps).

MIDI slows down a bit in heavy scenes and also window mode is sluggish, but those I don't consider real show-stoppers.

As you can see, FPS is not too shabby. This is on 640x480 with interpolation on and details on highest:




Saturday, February 20, 2021

Playing with my new toys!

Bought myself some covid-comfort gifts a few months ago. First off the amazing AA3000+ made by Hese. It is a hybrid of two prototype Amigas. The AA3000 and the A3000+ meaning it has AGA and a DSP. For more info on the latter I point you to A1K.org.

Secondly, as I was toying with CAMD in the latest ScummVM sources (back then 2.2) and I needed something to actually test it (and was sold by some of the ScummVM plus MIDI movies on the internet). So I bought myself a Roland SC-55 MKII all the way from Japan. Finding a correct power supply took longer than expected, but the result is cool IMHO.


Further specs of this AA3000+ is a CSMK2 running on 55MHz, a Ragnarok PPC card running on 800MHz and some card that cannot be named with 128MB gfx RAM.

Shown are "Day of the Tentacle" and "I Have No Mouth, and I Must Scream".

Thursday, January 3, 2019

Return To Castle Wolfenstein....WarpOS style!

With the WarpOS gcc tool chain getting more and more mature and with CowCat doing his magic with it, more and more stuff is possible.

Here is a video of RTCW being played on an Amiga 4000 with Voodoo3 and a Harrier (Motorola PowerPlus III) based PMC card. Enjoy:


Also Smokin Guns has been ported. Maybe a video next time :-)

Sunday, June 10, 2018

Another member of the family

Over the years I have been trying to get a hold of other cards which could potentially function as a PPC PCI card in a classic Amiga with mediator. You have probably seen the PMC carrier picture from way back in 2016.

Thanks to the help of one person in particular (you know who you are) the Rapture card was identified as being able to run in a classic Amiga and added by me to the number of cards being supported. This was an easy one to add as it also has the MPC107 chip-set. The benefit it being a MPC7410 450MHz which made the search for a Sonnet G4 no longer needed.

That same person also looked into other chip-sets besides the MPC107 and pointed me to them and their documentation. It took a few weeks to program (effectively...I've been busy on and off on it for months) but I can now present the support for the Motorola Harrier chip-set.

I've been developing on a card with 256MB and a 450MHz MPC7410 and it seems faster than the Rapture. It also can be set-up without the help of VGA memory (so it can be run right after C:SetPatch).

See http://eab.abime.net/showthread.php?p=1247533#post1247533 for more info and benchmarks.

The family becomes bigger and bigger. Below picture shows a carrier in the top left corner. The Rapture card in the bottom left corner. A sonnet on the right and in the middle the new supported card.

Happy hunting!




Sunday, May 27, 2018

Developing for WarpOS

Of course it is fun to play with the old stuff on the Sonnet and the Rapture card. But how about new stuff?

The old GCC compiler for WarpOS (2.95.3) was hopelessly outdated and VBCC doesn't support C++ and most of the C sources out there need some adaptation to compile on VBCC.

Enter another project of mine: mos2wos. This stands for MorphOS to WarpOS and is a set of tools to develop for WarpOS on MorphOS machines. Now you can use the newer GCC binutils from MorphOS and what is even better, you can use GCC compilers version 4.4.5, 5.5.0 or 6.4.0 to produce WarpOS executables!

It took a few months to mature, but it is getting to a point that it is getting usable with a freshly compiled SDL library especially made for WarpOS and a very up-to-date C library (newlib 3.0) making porting even more easy!

How useful is it? Here are some examples compiled with version 0.8:


Monday, January 15, 2018

Power in Diversity

A while back, well actually June 2015 or around there, I should a picture of a PMC2PCI card. Since then I have been scouring the Internet for suitable PMC cards. Tried a bunch of them, but none of them worked.

Then I got some help from an expert in PMC cards and he delivered :-)

Below is a Force PowerPMC-250 card with a 450 MHz MPC7410 (G4) card with 256MB SDRAM on-board:


With a PMC to PCI carrier card it was added to my A3000UX and here is the first result after updating the driver:


The card is regarding power consumption on the edge of what the A3000D can handle. The Amiga has to warm up for a couple of minutes before the PPC card becomes stable. It is not the PPC which is crashing, but the 68K when fetching/running code from the PPC memory. But as said, after a while it becomes stable. I guess I need to upgrade my PSU.

I also wish to thank Elbox for their speedy support in updating their pci.library to support these kind of cards!

Hopefully, we can ramp up with faster cards in the near future.

Monday, December 11, 2017

Quake 3 on the Sonnet

Lately, there has been a resurgence of porting of games to WarpOS and Quake 3 is one of them. This port was done by CowCat. Still in alpha, but it definitely has potential.

Sadly, this phone has a worse camera than my previous one. Also, playing with the keyboard which was behind the camera was a tad difficult, hence the weird walking sometimes :-)


Wednesday, July 12, 2017

Dabbling with Warp3D..

Just a teaser. I've been converting some OS4 and/or 68K Warp3D stuff to OS3 and PPC. Here some first results.

I haden't posted in a while....so... :-)


Hope to show you some more the coming weeks. Or not... who knows...

Sunday, May 21, 2017

Further developments...

Now with sound :-)


Some glitches here and there and a annoying mouse pointer in the way, but it's getting there. I also notice I need to silence my A3000UX PSU one of these days.

Saturday, May 20, 2017

Some developments....

There has been a little movement on the WarpOS front as of late. Cowcat, who did a great job the last few years on Quake2 and BlitzQuake now tried his hands on Hexen II.

Here is the result:



Sound needs an overhaul and I guess I need a better camera, but for a first beta is it really cool. Well done!

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!

Friday, April 1, 2016

Increased compatibility

With the introduction of the latest features in the sonnet.library: Correctly working mirror tasks and a shared signal system between the two CPUs, the compatibility with WarpOS has increased. Also some speed was gained (5-10%).

The major result is that in FreeSpace there now is sound. Also the timing task and the sound output task within ScummVM WOS are now correctly working.

Here are some movies with build 140 in action:

Samurai Showdown 4 for the Neo Geo (NeoMAME): I noticed later that the health bar is missing. This is an artifact of the chosen FrameSkip parameter (2):


Here ScummVM for WarpOS version 0.7.1. (no newer version, sadly enough): The heavy hick-up in the beginning is encoding related. It is however not running at full speed due to extra context switches due to CHIP memory access attempts by the PPC.


Finally FreeSpace: The Great War: I had to turn of music streaming due to artifacts in the sound output. It is not always there when I start the game. Need to investigate that one further. I cut out parts of loading screens to shorten the movie a bit.


Until next time!

Saturday, March 12, 2016

PPC Demos on the Sonnet

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:

x - CSPPC 366 MHz - Sonnet 500 MHz
1 -             33              -              46
2 -             22              -              32
3 -             20              -              38
4 -             18              -              30
5 -             21              -              30
6 -             17              -              29
7 -             48              -              50
8 -             18              -              31
9 -             22              -              42

Monday, March 7, 2016

Why settle for real, if you can have emulation?

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.

With the fix, a whole of various emulators became stable to work with. So also with the inspiration I got from https://www.youtube.com/channel/UCqnVlRIiPVJsU2SqsfVwV3w here's a short video with different emulators.



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 ;-)


Friday, February 26, 2016

Picture of the Day: Unlimited Powerrrrrr

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.

Tuesday, February 16, 2016

Picture of the Day: Voxelspace revisited

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.


Another little step taken.

Tuesday, February 9, 2016

Picture of the Day: StormMESA hardware rendering

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 :-)