goa / w3d on radeon cards
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    Jambalah
    Posts: 820 from 2008/3/30
    From: Roma, Italy
    Thanks for answer Alain!
    The real problem is not WipeOut is that Wazp3d.prefs doesn't save any configuration file and so it won't load anything at start. And so will do the library. The only way I managed to save a config file was to launch prefs, run the cow demo and when I stopped demo it saves a configuration file (!!) which I put in Envarc:
    Pegasos II 1 ghz
    Powermac G4 Quicksilver with Sonnet Encore 1.8 ghz
    Powermac G4 MDD single 1.25 ghz, silenced for ears health...
    Powermac G5 dual 2.7 ghz I'll be back...
    Powermac G5 dual 2.0 ghz
    Powerbook G4 1.67 ghz 17
  • »04.01.14 - 09:10
    Profile
  • MorphOS Developer
    Henes
    Posts: 507 from 2003/6/14
    thellier,
    Quote:

    wipeout dont works = i dont know why as it works with wazp3d/os4

    As I told you on meta-morphos forum, warpup libs are no usual libs. You can not simply rename an amigaos/morphos lib to make a warpup one... The whole ABI is different, amongst other things. I guess all this must be explained somewhere in the old warpup docs from the 90'... The poweropen and systemv ABIs were even documented in the old morphos sdk for more than 10 years (and google knows about them anyway, as they are not some amiga creation)...

    As to why it works on hyperos... I imagine you also didn't write a proper warpup lib there... so I expect its powerpc.library has some kind of hardcoded warp3dppc.llibrary -> warp3d.library wrapper doing all the hard work for you. You tell me :)


    [ Edited by Henes 05.01.2014 - 00:37 ]
  • »04.01.14 - 23:35
    Profile Visit Website
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    BSzili
    Posts: 559 from 2012/6/8
    From: Hungary
    So warpup programs can't use ABox API MorphOS libraries? Is the stock warp3dppc.library a warpup binary? I'm not having a go, but I couldn't tell, because the official libraries are encrypted.
    This is just like television, only you can see much further.
  • »05.01.14 - 12:19
    Profile Visit Website
  • MorphOS Developer
    zukow
    Posts: 642 from 2005/2/9
    From: Poland
    @BSzili

    Morphos 1.4.5 binaries aren't encrypted.
  • »05.01.14 - 12:35
    Profile Visit Website
  • MorphOS Developer
    Henes
    Posts: 507 from 2003/6/14
    Quote:

    BSzili wrote:
    So warpup programs can't use ABox API MorphOS libraries?


    They can and they all (directly or indirectly) do.

    Quote:


    Is the stock warp3dppc.library a warpup binary?


    It is a morphos native binary... respecting warpup abi and api.
    Same for powerpc.library and itix's rtgmaster.library (and I just noticed this one is opensource so it could really help wazp3d if alain can't search/read/understand warpup docs himself).
  • »05.01.14 - 12:50
    Profile Visit Website
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    BSzili
    Posts: 559 from 2012/6/8
    From: Hungary
    @zukow
    Thanks for the tip. I grabbed the 1.4.5 ISO, and the warp3dppc.library is a "normal" MorphOS library there. I must have misunderstood something.

    @Henes
    I get it now, I'll dig into wup.c/wup.h.
    http://aminet.net/package/driver/video/rtgmaster_mos

    [ Edited by BSzili 05.01.2014 - 14:10 ]
    This is just like television, only you can see much further.
  • »05.01.14 - 12:50
    Profile Visit Website
  • MorphOS Developer
    itix
    Posts: 1516 from 2003/2/24
    From: Finland
    WarpUp libraries are built like any native MorphOS library but must use function prologue and epilogue to switch r2 and ctr in PPC calls.
    1 + 1 = 3 with very large values of 1
  • »05.01.14 - 13:12
    Profile
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    BSzili
    Posts: 559 from 2012/6/8
    From: Hungary
    @itix
    I created the glue functions using your macros:
    Code:
    #define	RC_START(x)	ULONG ctrstore; struct EmulHandle *old_r2 = MyEmulHandle; x rc; asm ( "mfctr %0" : "=r" (ctrstore)); MyEmulHandle = SysBase->ThisTask->tc_ETask->EmulHandle; SysBase->ThisTask->tc_ETask->EmulHandle = NULL; {
    #define RC_END } asm ("mtctr %0" : : "r" (ctrstore)); SysBase->ThisTask->tc_ETask->EmulHandle = MyEmulHandle; MyEmulHandle = old_r2; return rc;
    #define NR_START ULONG ctrstore; struct EmulHandle *old_r2 = MyEmulHandle; asm ( "mfctr %0" : "=r" (ctrstore)); MyEmulHandle = SysBase->ThisTask->tc_ETask->EmulHandle; SysBase->ThisTask->tc_ETask->EmulHandle = NULL; {
    #define NR_END } asm ("mtctr %0" : : "r" (ctrstore)); SysBase->ThisTask->tc_ETask->EmulHandle = MyEmulHandle; MyEmulHandle = old_r2;

    The problem is that struct ETask no longer seem to have an EmulHandle field, so this doesn't compile with the latest SDK. Has the EmulHandle field in ETask became private?
    This is just like television, only you can see much further.
  • »09.01.14 - 09:36
    Profile Visit Website
  • MorphOS Developer
    Piru
    Posts: 575 from 2003/2/24
    From: finland, the l...
    Quote:

    BSzili wrote:
    @itix
    I created the glue functions using your macros:
    Code:
    #define	RC_START(x)	ULONG ctrstore; struct EmulHandle *old_r2 = MyEmulHandle; x rc; asm ( "mfctr %0" : "=r" (ctrstore)); MyEmulHandle = SysBase->ThisTask->tc_ETask->EmulHandle; SysBase->ThisTask->tc_ETask->EmulHandle = NULL; {
    #define RC_END } asm ("mtctr %0" : : "r" (ctrstore)); SysBase->ThisTask->tc_ETask->EmulHandle = MyEmulHandle; MyEmulHandle = old_r2; return rc;
    #define NR_START ULONG ctrstore; struct EmulHandle *old_r2 = MyEmulHandle; asm ( "mfctr %0" : "=r" (ctrstore)); MyEmulHandle = SysBase->ThisTask->tc_ETask->EmulHandle; SysBase->ThisTask->tc_ETask->EmulHandle = NULL; {
    #define NR_END } asm ("mtctr %0" : : "r" (ctrstore)); SysBase->ThisTask->tc_ETask->EmulHandle = MyEmulHandle; MyEmulHandle = old_r2;

    The problem is that struct ETask no longer seem to have an EmulHandle field, so this doesn't compile with the latest SDK. Has the EmulHandle field in ETask became private?


    It indeed is private. I think new code was supposed to use NewGetTaskAttrs() and NewSetTaskAttrs() with TASKINFOTYPE_EMULHANDLE. However after some checking it seems that NewGetTaskAttrs TASKINFOTYPE_EMULHANDLE doesn't always return the raw tc_ETask->EmulHandle value and thus it likely cannot be used as a direct replacement here.

    Anyway, this somewhat hackish solution should work:

    Code:

    #pragma pack(2)
    struct HackETask
    {
    UBYTE stuffbefore[130];
    struct EmulHandle *EmulHandle;
    };
    #pragma pack()
    #define TASKEMULHANDLE ((struct HackETask *)SysBase->ThisTask->tc_ETask)->EmulHandle


    Then use TASKEMULHANDLE instead of SysBase->ThisTask->tc_ETask->EmulHandle.

    [ Edited by Piru 09.01.2014 - 15:36 ]
  • »09.01.14 - 12:11
    Profile
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    BSzili
    Posts: 559 from 2012/6/8
    From: Hungary
    Thanks, for the time being I'll probably go with your workaround. Doing 3 New*TaskAttr() calls per function might add too much overhead. Then again, maybe it doesn't make much difference, we'll see when Wipeout 2097 is up and running with Wazp3D.
    This is just like television, only you can see much further.
  • »09.01.14 - 13:02
    Profile Visit Website
  • Caterpillar
    Caterpillar
    Posts: 33 from 2013/6/20
    @BSzili

    Just compiled your latest change : Wazp3D still not workking with Wipeout and others....

    Alain Thellier
  • »09.01.14 - 17:30
    Profile Visit Website
  • vox
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    vox
    Posts: 524 from 2003/11/24
    From: Belgrade
    Quote:

    thellier wrote:
    @BSzili

    Just compiled your latest change : Wazp3D still not workking with Wipeout and others....

    Alain Thellier


    I ve heard MOS 4.6 will have SAM460ex support AND Radeon4000HD driver.
    Nice and I am really waiting just for it :-)

    Should I be AmigaOS happy with 2D driver or MorphOS happy with GOA, REGGAE and yes W3D ... :-)
    ------------------------------------------
    iMac G5 1GB with MorphOS and MacOS X
    Lame PC with AmiKit XE
    YT channel https://www.youtube.com/channel/UCdHl_msNWHEVPf229h_gijQ
    Telegram Amiga group: https://t.me/amigaranchorelaxo
  • »15.01.14 - 19:02
    Profile
  • Yokemate of Keyboards
    Yokemate of Keyboards
    Andreas_Wolf
    Posts: 12058 from 2003/5/22
    From: Germany
    > I ve heard MOS 4.6 will have SAM460ex support AND Radeon4000HD driver.

    I hope this will already come with 3.6 ;-)

    > MorphOS [...] with GOA

    Goa3D doesn't and won't work on Radeon R300 and beyond.
  • »15.01.14 - 20:26
    Profile
  • vox
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    vox
    Posts: 524 from 2003/11/24
    From: Belgrade
    Quote:

    Andreas_Wolf wrote:
    > I ve heard MOS 4.6 will have SAM460ex support AND Radeon4000HD driver.

    >I hope this will already come with 3.6 ;-)


    Ah, nice whowoff I am ex-AmigaOS user :-) Well, it will not come with AOS 4.1.6
    either, so yes, all bets on MorphOS 3.6

    But looking forward to experience MOS 4.6 as well.

    P.S. Will it mean just 4000/4200HD model, or some wider varity based
    on same chips?

    Quote:

    > MorphOS [...] with GOA

    Goa3D doesn't and won't work on Radeon R300 and beyond.


    Doesn`t is enough, please no won`t work ... is there some serious
    reasons since chips should be kind of backward compatibile?

    [ Edited by vox 16.01.2014 - 11:35 ]
    ------------------------------------------
    iMac G5 1GB with MorphOS and MacOS X
    Lame PC with AmiKit XE
    YT channel https://www.youtube.com/channel/UCdHl_msNWHEVPf229h_gijQ
    Telegram Amiga group: https://t.me/amigaranchorelaxo
  • »16.01.14 - 10:35
    Profile
  • Yokemate of Keyboards
    Yokemate of Keyboards
    Andreas_Wolf
    Posts: 12058 from 2003/5/22
    From: Germany
    >>> I ve heard MOS 4.6 will have SAM460ex support AND Radeon4000HD driver.

    >> I hope this will already come with 3.6 ;-)

    > it will not come with AOS 4.1.6 either

    AmigaOS 4.1.6 has been released more than a year ago. And OS4 has Sam460ex support and a 2D driver for Radeon R700 for 3 years.

    > looking forward to experience MOS 4.6 as well.

    Has there anything in particular been announced for this?

    > Will it mean just 4000/4200HD model, or some wider varity based on same chips?

    As you know, "R700 support" was the statement that was reportedly given on the Pianeta Amiga show last year. AFAIK, there is no HD4000 model, and HD42x0 models are R600-based. So I guess it should be HD43x0 models and above, but I have no inside knowledge whatsoever, only what has been stated in public for everybody to read upon.

    >> Goa3D doesn't and won't work on Radeon R300 and beyond.

    > please no won`t work ...

    The MorphOS Team made it pretty clear that there will be no Rave3D for R300 and up, so no Goa3D (which relies on Rave3D) either. But as soon as Wazp3D will run hardware-accelerated via TinyGL, you won't need Goa3D anyway.

    > is there some serious reasons since chips should be kind of backward compatibile?

    It's been explained there by a MorphOS Team member:

    https://morph.zone/modules/newbb_plus/viewtopic.php?topic_id=9256&forum=49&start=4
  • »16.01.14 - 12:53
    Profile
  • Jim
  • Yokemate of Keyboards
    Yokemate of Keyboards
    Jim
    Posts: 4977 from 2009/1/28
    From: Delaware, USA
    No one can say when the SAM460 port will be ready, and an HD4XXX driver has not been mentioned.
    It is not impossible, but the original work centered around the use of an X1300 video card.

    If things remain evolutionary, we should see an R400 driver (for support of the X800XT video card in G5 Power macs), and eventually an R500 driver (for X1300 video cards in the SAM460 and for later support of the X1900GT).

    Who is to say what 3.6 will include?
    Until its released, unless its mentioned prior to that release, its all speculation.
    "Never attribute to malice what can more readily explained by incompetence"
  • »16.01.14 - 15:51
    Profile
  • MorphOS Developer
    Henes
    Posts: 507 from 2003/6/14
    Quote:

    vox wrote:
    is there some serious reasons since chips should be kind of backward compatibile?

    At every new generation, Radeon chips are not "backward compatible" with their ancestors.
  • »16.01.14 - 18:03
    Profile Visit Website
  • Yokemate of Keyboards
    Yokemate of Keyboards
    Andreas_Wolf
    Posts: 12058 from 2003/5/22
    From: Germany
    > No one can say when the SAM460 port will be ready

    There're estimates by the developers at least:

    https://morph.zone/modules/newbb_plus/viewtopic.php?forum=11&topic_id=8931&start=106

    > an HD4XXX driver has not been mentioned.

    https://morph.zone/modules/newbb_plus/viewtopic.php?forum=38&topic_id=9764&start=30
  • »16.01.14 - 18:29
    Profile
  • vox
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    vox
    Posts: 524 from 2003/11/24
    From: Belgrade
    Quote:

    Andreas_Wolf wrote:
    > No one can say when the SAM460 port will be ready

    There're estimates by the developers at least:

    https://morph.zone/modules/newbb_plus/viewtopic.php?forum=11&topic_id=8931&start=106

    > an HD4XXX driver has not been mentioned.

    https://morph.zone/modules/newbb_plus/viewtopic.php?forum=38&topic_id=9764&start=30


    Software based rendering is NOT a solution.

    Every new generation of Radeons is NOT backward compatibile? Phew, AMD doesn`t know how to do the job.

    Please let me know when things go official about this project NAOMO and things speed up. I am really waiting just for it.

    I can buy X1550 LP card if really necessary.
    ------------------------------------------
    iMac G5 1GB with MorphOS and MacOS X
    Lame PC with AmiKit XE
    YT channel https://www.youtube.com/channel/UCdHl_msNWHEVPf229h_gijQ
    Telegram Amiga group: https://t.me/amigaranchorelaxo
  • »16.01.14 - 19:05
    Profile
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    BSzili
    Posts: 559 from 2012/6/8
    From: Hungary
    If you are referring to Wazp3D, it has an OpenGL backend too.
    This is just like television, only you can see much further.
  • »16.01.14 - 19:09
    Profile Visit Website
  • Yokemate of Keyboards
    Yokemate of Keyboards
    Andreas_Wolf
    Posts: 12058 from 2003/5/22
    From: Germany
    >> There're estimates by the developers at least:
    >> https://morph.zone/modules/newbb_plus/viewtopic.php?forum=11&topic_id=8931&start=106
    >>> [...]
    >> https://morph.zone/modules/newbb_plus/viewtopic.php?forum=38&topic_id=9764&start=30

    > Software based rendering is NOT a solution.

    Where did I say anything about software rendering in what you quoted from me?
  • »16.01.14 - 19:20
    Profile
  • Paladin of the Pegasos
    Paladin of the Pegasos
    SoundSquare
    Posts: 1213 from 2004/12/1
    From: Paris, France
    Quote:

    Every new generation of Radeons is NOT backward compatibile? Phew, AMD doesn`t know how to do the job.


    If you want to slow down technological progress then backward compability is the way to go. The Amiga in general is a good example.
  • »17.01.14 - 15:03
    Profile
  • vox
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    vox
    Posts: 524 from 2003/11/24
    From: Belgrade
    Quote:

    SoundSquare wrote:
    Quote:

    Every new generation of Radeons is NOT backward compatibile? Phew, AMD doesn`t know how to do the job.


    If you want to slow down technological progress then backward compability is the way to go. The Amiga in general is a good example.




    No, I dislike Windows being incompatibile with Windows.
    Linux keeps the tradition.

    But I do acknowledge at least sandboxing (virtual boxes, emulators) should
    be included if full compatibility isn`t possible.

    Also, OS can grow in many other ways then just breaking the comaptibility.

    Its way of making money too - look how Windows FORCES people not only to buy new hardware but new software. If I am satisfied with legal copy of Photoshop 6.x I expect it to run at least emulated. MorphOS should keep that tradition.
    ------------------------------------------
    iMac G5 1GB with MorphOS and MacOS X
    Lame PC with AmiKit XE
    YT channel https://www.youtube.com/channel/UCdHl_msNWHEVPf229h_gijQ
    Telegram Amiga group: https://t.me/amigaranchorelaxo
  • »17.01.14 - 23:58
    Profile
  • Yokemate of Keyboards
    Yokemate of Keyboards
    Andreas_Wolf
    Posts: 12058 from 2003/5/22
    From: Germany
    >> we'll see when Wipeout 2097 is up and running with Wazp3D.

    > Wazp3D still not workking with Wipeout and others....

    "I now have Wipeout 2097 running with Wazp3D on MorphOS."
    http://www.amiga.org/forums/showpost.php?p=775361
  • »21.10.14 - 22:09
    Profile
  • Yokemate of Keyboards
    Yokemate of Keyboards
    Andreas_Wolf
    Posts: 12058 from 2003/5/22
    From: Germany
    Update:

    >>> we'll see when Wipeout 2097 is up and running with Wazp3D.

    >> Wazp3D still not workking with Wipeout and others....

    > "I now have Wipeout 2097 running with Wazp3D on MorphOS."
    > http://www.amiga.org/forums/showpost.php?p=775361

    "Wazp3D 56 [...] will appear on Aminet soon [...] This version Allow hardware rendering for morphos/warpos progs : mainly WipeOut2097 (yeeeess) and the demos from "Encore""
    http://www.amiga.org/forums/showpost.php?p=775580

    Now there:

    "Beta 56 [...]: With a BIG help from Szilárd 'BSzili' Biró the WarpOS version works now :-) [...] So now Wazp3D-morphos got soft & hard rendering (based on hard TinyGL)
    1) Old 68k OS3 progs works
    2) WOS ppc progs works (WipeOut2097!!!, BlitzQuake)
    3) New ppc OS4 progs dont works because OS4emu dont support Warp3D v5 (the OS4 one used for MiniGL progs). But some rare OS4 ppc demos just based on OS3 sources may works
    "
    http://aminet.net/package/driver/video/Wazp3D

    Screenshot of WipEout 2097 running on R300 with Wazp3D:
    http://scontent-a.cdninstagram.com/hphotos-xaf1/t51.2885-15/10735342_713050585455104_663802731_n.jpg

    Video of WipEout 2097 running on R300 with Wazp3D:
    http://www.youtube.com/watch?v=vBZMyNrAnKA

    [ Edited by Andreas_Wolf 18.12.2014 - 18:08 ]
  • »24.10.14 - 23:02
    Profile