English Amiga Board


Go Back   English Amiga Board > Support > support.Hardware

 
 
Thread Tools
Old 31 May 2024, 23:34   #181
Hedeon
Semi-Retired
 
Join Date: Mar 2012
Location: Leiden / The Netherlands
Posts: 2,047
Proof of concept of a Mediator driver (not OpenPCI) running on the Prometheus.

It is the new voodoo.card from Thomas Richter.
Attached Thumbnails
Click image for larger version

Name:	PoC.jpg
Views:	82
Size:	129.8 KB
ID:	82378  
Hedeon is offline  
Old 01 June 2024, 01:50   #182
Hedeon
Semi-Retired
 
Join Date: Mar 2012
Location: Leiden / The Netherlands
Posts: 2,047
So some P96Speed benchmarks:

Elbox V3 driver running on Prometheus at 640x480x8:

Code:
.============= SPEEDRESULTS ==============.
| RectFill()................  18934 op/s  |
| RectFill() Pattern........  17047 op/s  |
| WritePixel().............. 155769 op/s  |
| WriteChunkyPixels().......    812 op/s  |
| WritePixelArray8()........    794 op/s  |
| WritePixelLine8().........  25065 op/s  |
| DrawEllipse().............   8595 op/s  |
| DrawCircle()..............  10389 op/s  |
| Draw()....................  24537 op/s  |
| Draw() Hor/Ver............  26226 op/s  |
| ScrollRaster() X..........   2449 op/s  |
| ScrollRaster() Y..........   2650 op/s  |
| PutText().................   9013 op/s  |
| BlitBitMap()..............  18127 op/s  |
| BlitBitMapRastPort()......  10462 op/s  |
| BitMapScale().............     75 op/s  |
|--------------- Intuition ---------------|
| OpenWindow()..............     92 op/s  |
| MoveWindow()..............    441 op/s  |
| SizeWindow()..............    106 op/s  |
| CON-Output................    902 op/s  |
| ScreenToFront()...........     67 op/s  |
`========================================='
The new THOR Mediator V3 driver running on Prometheus:
Code:
.============= SPEEDRESULTS ==============.
| RectFill()................  17382 op/s  |
| RectFill() Pattern........  14580 op/s  |
| WritePixel().............. 140518 op/s  |
| WriteChunkyPixels().......    905 op/s  |
| WritePixelArray8()........    891 op/s  |
| WritePixelLine8().........  26528 op/s  |
| DrawEllipse().............  10471 op/s  |
| DrawCircle()..............  11373 op/s  |
| Draw()....................  22128 op/s  |
| Draw() Hor/Ver............  24310 op/s  |
| ScrollRaster() X..........   2394 op/s  |
| ScrollRaster() Y..........   2558 op/s  |
| PutText().................   8553 op/s  |
| BlitBitMap()..............  15384 op/s  |
| BlitBitMapRastPort()......   9115 op/s  |
| BitMapScale().............     94 op/s  |
|--------------- Intuition ---------------|
| OpenWindow()..............     94 op/s  |
| MoveWindow()..............    429 op/s  |
| SizeWindow()..............    122 op/s  |
| CON-Output................    904 op/s  |
| ScreenToFront()...........     60 op/s  |
`========================================='
And the original Prometheus V3 driver (running on Prometheus):

Code:
.============= SPEEDRESULTS ==============.
| RectFill()................  16367 op/s  |
| RectFill() Pattern........  13641 op/s  |
| WritePixel().............. 127919 op/s  |
| WriteChunkyPixels().......    847 op/s  |
| WritePixelArray8()........    836 op/s  |
| WritePixelLine8().........  25214 op/s  |
| DrawEllipse().............   9864 op/s  |
| DrawCircle()..............  10724 op/s  |
| Draw()....................  19137 op/s  |
| Draw() Hor/Ver............  21593 op/s  |
| ScrollRaster() X..........   2258 op/s  |
| ScrollRaster() Y..........   2395 op/s  |
| PutText().................   8063 op/s  |
| BlitBitMap()..............  15519 op/s  |
| BlitBitMapRastPort()......   8058 op/s  |
| BitMapScale().............     88 op/s  |
|--------------- Intuition ---------------|
| OpenWindow()..............     99 op/s  |
| MoveWindow()..............    479 op/s  |
| SizeWindow()..............    107 op/s  |
| CON-Output................    855 op/s  |
| ScreenToFront()...........     62 op/s  |
`========================================='
Hedeon is offline  
Old 01 June 2024, 03:40   #183
grelbfarlk
Registered User
 
Join Date: Dec 2015
Location: USA
Posts: 2,972
Quote:
Originally Posted by Hedeon View Post
Proof of concept of a Mediator driver (not OpenPCI) running on the Prometheus.It is the new voodoo.card from Thomas Richter.
That looks pretty awesome!

I managed to get a USB Ethernet device working with usbpegasus.device on the NEC USB card. Only running at lowspeed USB or "Full Speed" USB, performance is not great at around 100KB/s but at least it works.
grelbfarlk is offline  
Old 01 June 2024, 08:37   #184
Hedeon
Semi-Retired
 
Join Date: Mar 2012
Location: Leiden / The Netherlands
Posts: 2,047
Here's the Elbox Radeon driver running on the Prometheus (640x480x8):

Code:
.============= SPEEDRESULTS ==============.
| RectFill()................  22093 op/s  |
| RectFill() Pattern........  18877 op/s  |
| WritePixel().............. 158676 op/s  |
| WriteChunkyPixels().......    823 op/s  |
| WritePixelArray8()........    808 op/s  |
| WritePixelLine8().........  25339 op/s  |
| DrawEllipse().............   9231 op/s  |
| DrawCircle()..............  11023 op/s  |
| Draw()....................  25460 op/s  |
| Draw() Hor/Ver............  28608 op/s  |
| ScrollRaster() X..........   3702 op/s  |
| ScrollRaster() Y..........   4152 op/s  |
| PutText().................  10091 op/s  |
| BlitBitMap()..............  19008 op/s  |
| BlitBitMapRastPort()......  10972 op/s  |
| BitMapScale().............     76 op/s  |
|--------------- Intuition ---------------|
| OpenWindow()..............     92 op/s  |
| MoveWindow()..............    398 op/s  |
| SizeWindow()..............    132 op/s  |
| CON-Output................    984 op/s  |
| ScreenToFront()...........     60 op/s  |
`========================================='
Hedeon is offline  
Old 01 June 2024, 08:40   #185
Hedeon
Semi-Retired
 
Join Date: Mar 2012
Location: Leiden / The Netherlands
Posts: 2,047
Thing is that the voodoo and radeon drivers from elbox are behaving nice, but the THOR one is not.Only 8 bit works in the THOR voodoo driver. 16+ bit screens are elongated on the horizontal axis with weird colors.

Interrupt=Yes hangs the system. Elbox' drivers add the interrupt no problem (they do it standard without tooltype).

Last edited by Hedeon; 01 June 2024 at 08:55.
Hedeon is offline  
Old 01 June 2024, 09:01   #186
Hedeon
Semi-Retired
 
Join Date: Mar 2012
Location: Leiden / The Netherlands
Posts: 2,047
Quote:
Originally Posted by grelbfarlk View Post
I managed to get a USB Ethernet device working with usbpegasus.device on the NEC USB card.
What device is that?
Hedeon is offline  
Old 01 June 2024, 09:07   #187
Hedeon
Semi-Retired
 
Join Date: Mar 2012
Location: Leiden / The Netherlands
Posts: 2,047
Quote:
Originally Posted by Hedeon View Post
Thing is that the voodoo and radeon drivers from elbox are behaving nice, but the THOR one is not.Only 8 bit works in the THOR voodoo driver. 16+ bit screens are elongated on the horizontal axis with weird colors.
Above is under P96 v2.1.

I replaced only the rtg.library with the one from P96 v3 and all is well. Except Interrupt=Yes still does not work.

GrantDirectAccess=Yes disappears the big endian 16 bit modes, but I think that is intended.

This is all under pci.library emulation, so not sure if this is of any use to Thomas Richter :-)

Last edited by Hedeon; 01 June 2024 at 09:16.
Hedeon is offline  
Old 01 June 2024, 11:54   #188
Thomas Richter
Registered User
 
Join Date: Jan 2019
Location: Germany
Posts: 3,317
Sorry to respond, but I need to make a strong statement here: Please do not follow this direction. I understand your good intentions, but I never ever wanted to make a statement that I would support the elbox pci.library as a "good interface" for PCI. It is not. It is a one-vendor "undocumented interface" solution, and undocumented locked interfaces are not advisable as basis for development.

The voodoo driver I published was not intended as a "final solution", it was only assumed as a "thank you" note to the community from which I received hardware, and as a replacement for the buggy Elbox driver. That's it. It is not a final solution, and there is a reason why this does not go into Aminet. Take it as an interim fix, but that is *really all*.

Thus, there will be no further PCI graphics card drivers at the moment. Not before I have a good solution for the PCI expansion, and no, Elbox is *not* a good solution. Not an undocumented interface locked to particular hardware.

OpenPCI might, but the project is dead. There is a castrated Open Source solution which does not help me, and its current interface is too limited to satisfy all my needs. To give you an approximate idea what I consider a good solution:

An extension of the OpenPCI.library (essentially, a new version with an extended interface), plus potentially an included emulation layer to legacy libraries. Maybe that's not the best solution and you have other ideas, but I'm happy to receive ideas, this is really just the beginning.

What does OpenPCI not deliver? It does not deliver access to the Expansion ROM. The voodoo driver needs that, however, to get the settings for the RAM on the card. It does not deliver a transparent interface to MMU windowing (and the pci.library "solution" is kludgy). This needs to interoperate with the rest of the system nicely, not by the hack-and-slash method Elbox "designed". OpenPCI does not deliver access to multiple PCI busses or bridges. Only a single bridge is supported. PCI can do more than that.

Thus, Hedeon, with all the sympathies, and I understand that you want to push forward, but I first need to clean up this PCI mess we have here, and I would prefer to work on a better solution. This will take time. Let's rather first collect forces to get this dirt area cleaned up before caring about drivers.


If you want to help me work on that, your help would be of course greatly appreciated. Testing, writing code, collecting information, there is a long road ahead of this.
Thomas Richter is offline  
Old 01 June 2024, 14:49   #189
grelbfarlk
Registered User
 
Join Date: Dec 2015
Location: USA
Posts: 2,972
Quote:
Originally Posted by Hedeon View Post
What device is that?
D-Link DSB-650TX, just some 10/100 USB Ethernet adapter I had laying around.
I tried a couple of devices (Netgear FA120 and Belkin F4U047) which are identified under Triton as usbasixeth devices but haven't gotten them working yet, they seem to start with Genesis or Miami but can't ping anything.
grelbfarlk is offline  
Old 02 June 2024, 04:23   #190
grelbfarlk
Registered User
 
Join Date: Dec 2015
Location: USA
Posts: 2,972
Quote:
Originally Posted by Hedeon View Post
So some P96Speed benchmarks:Elbox V3 driver running on Prometheus at 640x480x8:
Code:
.============= SPEEDRESULTS ==============.| RectFill()................  18934 op/s  || RectFill() Pattern........  17047 op/s  || WritePixel().............. 155769 op/s  || WriteChunkyPixels().......    812 op/s  || WritePixelArray8()........    794 op/s  || WritePixelLine8().........  25065 op/s  || DrawEllipse().............   8595 op/s  || DrawCircle()..............  10389 op/s  || Draw()....................  24537 op/s  || Draw() Hor/Ver............  26226 op/s  || ScrollRaster() X..........   2449 op/s  || ScrollRaster() Y..........   2650 op/s  || PutText().................   9013 op/s  || BlitBitMap()..............  18127 op/s  || BlitBitMapRastPort()......  10462 op/s  || BitMapScale().............     75 op/s  ||--------------- Intuition ---------------|| OpenWindow()..............     92 op/s  || MoveWindow()..............    441 op/s  || SizeWindow()..............    106 op/s  || CON-Output................    902 op/s  || ScreenToFront()...........     67 op/s  |`========================================='
The new THOR Mediator V3 driver running on Prometheus:
Code:
.============= SPEEDRESULTS ==============.| RectFill()................  17382 op/s  || RectFill() Pattern........  14580 op/s  || WritePixel().............. 140518 op/s  || WriteChunkyPixels().......    905 op/s  || WritePixelArray8()........    891 op/s  || WritePixelLine8().........  26528 op/s  || DrawEllipse().............  10471 op/s  || DrawCircle()..............  11373 op/s  || Draw()....................  22128 op/s  || Draw() Hor/Ver............  24310 op/s  || ScrollRaster() X..........   2394 op/s  || ScrollRaster() Y..........   2558 op/s  || PutText().................   8553 op/s  || BlitBitMap()..............  15384 op/s  || BlitBitMapRastPort()......   9115 op/s  || BitMapScale().............     94 op/s  ||--------------- Intuition ---------------|| OpenWindow()..............     94 op/s  || MoveWindow()..............    429 op/s  || SizeWindow()..............    122 op/s  || CON-Output................    904 op/s  || ScreenToFront()...........     60 op/s  |`========================================='
And the original Prometheus V3 driver (running on Prometheus):
Code:
.============= SPEEDRESULTS ==============.| RectFill()................  16367 op/s  || RectFill() Pattern........  13641 op/s  || WritePixel().............. 127919 op/s  || WriteChunkyPixels().......    847 op/s  || WritePixelArray8()........    836 op/s  || WritePixelLine8().........  25214 op/s  || DrawEllipse().............   9864 op/s  || DrawCircle()..............  10724 op/s  || Draw()....................  19137 op/s  || Draw() Hor/Ver............  21593 op/s  || ScrollRaster() X..........   2258 op/s  || ScrollRaster() Y..........   2395 op/s  || PutText().................   8063 op/s  || BlitBitMap()..............  15519 op/s  || BlitBitMapRastPort()......   8058 op/s  || BitMapScale().............     88 op/s  ||--------------- Intuition ---------------|| OpenWindow()..............     99 op/s  || MoveWindow()..............    479 op/s  || SizeWindow()..............    107 op/s  || CON-Output................    855 op/s  || ScreenToFront()...........     62 op/s  |`========================================='
What CPU/Accelerator are these with?
I just ask because with a Voodoo 3 3000/CSMK2-060, my results are significantly lower.
grelbfarlk is offline  
Old 02 June 2024, 08:13   #191
Hedeon
Semi-Retired
 
Join Date: Mar 2012
Location: Leiden / The Netherlands
Posts: 2,047
CSMK2-060 55 MHz. It is 640x480x8.
Hedeon is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Best Practices in Localizing a Program? tygre Coders. General 3 29 December 2018 05:38
Looking for prometheus.library v3.0 jarob request.Apps 0 19 January 2012 10:31
Best practices for direct hardware programming ? weiju Coders. Asm / Hardware 27 31 October 2011 13:10
Prometheus vs Mediator? wXR Hardware mods 3 26 December 2010 20:33
Prometheus in A4000T Boot_WB Hardware mods 32 05 September 2009 20:44

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 20:06.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.12780 seconds with 14 queries