Welcome, Guest. Please login or register.

Author Topic: New AGA SDL Development  (Read 33075 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline NovaCoderTopic starter

Re: New AGA SDL Development
« Reply #74 on: May 15, 2013, 12:41:59 AM »
Quote from: Crumb;734957
My advise is using the OS4 port as base and not the SDL one. And about ixemul... get rid of it, specially the nasty 6x versions

Yes everybody already knows that is the way to do it (see above), are you volunteering?

I already spent a couple of months trying to do it the 'right way' but kept hitting road blocks so I decided to switch my limited hobby time back to doing what I know (porting games).

I did suggest to Arti that he ditches ixemul (my new AGA SDL doesn't need it) but I don't know if he's tried to compile without it or not.   I suspect most of the libraries he's using need ixemul unfortunately.

Another why to do it is to use Reaction for the window frame and menu items but use the SDL frame buffer to render everything within the frame.   I'm not sure how hard that is to do.
Life begins at 100 MIPS!


Nice Ports on AmiNet!
 

Offline Crumb

  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 1786
  • Country: 00
    • Show only replies by Crumb
    • http://cuaz.sourceforge.net
Re: New AGA SDL Development
« Reply #75 on: May 15, 2013, 11:48:18 AM »
as I have stated in my previous message I lack time for real coding. My point is that doing reaction guis is not a big problem, check out my old tool and you'll see how to create a gui really fast and easily with almost no Reaction knowledge. Check out in the xml/ directory ide.xml, basilisk and others. You'll need to use fd2pragma to adapt the OS3.9 includes, I included a script to adapt these to MorphOS and it will probably require changing some parameter. If you wanted you could create a Reaction GUI to your ports in a just a few minutes.
The only spanish amiga news web page/club: Club de Usuarios de Amiga de Zaragoza (CUAZ)
 

Offline utri007

Re: New AGA SDL Development
« Reply #76 on: May 15, 2013, 06:20:16 PM »
Crumb: Would money change your mind? I belive it would be possible collect a boynty?

You do agree that Netsurf is only realistic browser to real 68k Amigas? How much time you would need to at least to say how hard/time hungry it would be to port
ACube Sam 440ep Flex 800mhz, 1gb ram and 240gb hd and OS4.1FE
A1200 Micronic tower, OS3.9, Apollo 060 66mhz, xPert Merlin, Delfina Lite and Micronic Scandy, 500Gb hd, 66mb ram, DVD-burner and WLAN.
A1200 desktop, OS3.9, Blizzard 060 66mhz, 66mb ram, Ide Fix Express with 160Gb HD and WLAN
A500 OS2.1, GVP+HD8 with 4mb ram, 1mb chip ram and 4gb HD
Commodore CDTV KS3.1, 1mb chip, 4mb fast ram and IDE HD
 

Offline Crumb

  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 1786
  • Country: 00
    • Show only replies by Crumb
    • http://cuaz.sourceforge.net
Re: New AGA SDL Development
« Reply #77 on: May 15, 2013, 06:36:47 PM »
@utri007

I lack time :-( (and programming skills for sure) working+studying leaves me not much time to troll&code.
The only spanish amiga news web page/club: Club de Usuarios de Amiga de Zaragoza (CUAZ)
 

Offline chris

Re: New AGA SDL Development
« Reply #78 on: May 15, 2013, 10:59:33 PM »
Quote from: Crumb;734927
I don't think using a ClassAct/Reaction GUI requires a "total" rewrite.


It doesn't, it just needs the OS4 specifics ripped out/replaced/back-ported/whatever.

Some light reading:
Roughly what needs to be changed for OS3
Build log for OS3 (what actually needs to be fixed) - I see you have already found this one.
"Miracles we do at once, the impossible takes a little longer" - AJS on Hyperion
Avatar picture is Tabitha by Eric W Schwartz
 

Offline nicholas

Re: New AGA SDL Development
« Reply #79 on: May 16, 2013, 01:40:21 PM »
http://aminet.net/package/dev/c/netsurf-morphos-src

Backporting Itix' Netsurf MUI source to 3.x might be easier, but it's not as up to date a Chris' Reaction port so it would need a fair bit of love and attention to bring it up to feature parity.

No, I'm not volunteering. ;)
“Een rezhim-i eshghalgar-i Quds bayad az sahneh-i ruzgar mahv shaved.” - Imam Ayatollah Sayyed  Ruhollah Khomeini
 

Offline wawrzon

Re: New AGA SDL Development
« Reply #80 on: May 16, 2013, 04:42:28 PM »
so.. since none is volunteering can we come back on topic here, which is aga sdl.
 

Offline Crumb

  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 1786
  • Country: 00
    • Show only replies by Crumb
    • http://cuaz.sourceforge.net
Re: New AGA SDL Development
« Reply #81 on: May 16, 2013, 06:22:11 PM »
Quote from: nicholas;735193
http://aminet.net/package/dev/c/netsurf-morphos-src

Backporting Itix' Netsurf MUI source to 3.x might be easier, but it's not as up to date a Chris' Reaction port so it would need a fair bit of love and attention to bring it up to feature parity.

No, I'm not volunteering. ;)


Netsurf MUI runs way slower than even the first OWB version in my machines (My 604e/180 running OWB is faster than NetSurf2.0 in my 1.5Ghz Mac Mini) and it acts weird, if I type netsurf http://www.google.com it works but if I open it without URL it doesn't do anything when I type URLs.

About libc there are various choices:
-clib2 by olaf barthel. I think it's no longer maintained
-libnix, no longer maintained
-ixemul pre v60, unmaintained but compatible with OS4&MorphOS
-ixemul post v60, incompatible but maintained.
-newlib (would need to be ported to classic)

and there are various GCC branches generating incompatible static libraries:
-GCC2.95.x
-GCC3.x
-GCC4.x

If we used shared amiga libraries at least coders could choose their prefered compiler&clib, now it's quite chaotic and trying to compile your own netsurf version requires setting up exactly the same GCC & libc. The worst thing is that people who could help (MorphOS and OS4 coders) won't be able to even run the binary due to the choice of evil ixemul v6x. Does it really help? couldn't older versions be enough?
The only spanish amiga news web page/club: Club de Usuarios de Amiga de Zaragoza (CUAZ)
 

Offline matthey

  • Hero Member
  • *****
  • Join Date: Aug 2007
  • Posts: 1294
    • Show only replies by matthey
Re: New AGA SDL Development
« Reply #82 on: May 16, 2013, 06:52:38 PM »
Quote from: Crumb;735220
Netsurf MUI runs way slower than even the first OWB version in my machines (My 604e/180 running OWB is faster than NetSurf2.0 in my 1.5Ghz Mac Mini) and it acts weird, if I type netsurf http://www.google.com it works but if I open it without URL it doesn't do anything when I type URLs.

About libc there are various choices:
-clib2 by olaf barthel. I think it's no longer maintained
-libnix, no longer maintained
-ixemul pre v60, unmaintained but compatible with OS4&MorphOS
-ixemul post v60, incompatible but maintained.
-newlib (would need to be ported to classic)

You should probably add PosixLib which is currently maintained by Frank Wille and works with several AmigaOS flavors (not AROS as vbbc can't target AROS). I don't know if anyone has tried to use it for GCC although it should be possible to compile GCC link libs as the source is included.

http://aminet.net/dev/c/vbcc_PosixLib.lha http://aminet.net/dev/c/vbcc_PosixLib.readme

Quote from: Crumb;735220
and there are various GCC branches generating incompatible static libraries:
-GCC2.95.x
-GCC3.x
-GCC4.x

If we used shared amiga libraries at least coders could choose their prefered compiler&clib, now it's quite chaotic and trying to compile your own netsurf version requires setting up exactly the same GCC & libc. The worst thing is that people who could help (MorphOS and OS4 coders) won't be able to even run the binary due to the choice of evil ixemul v6x. Does it really help? couldn't older versions be enough?

A shared clib/POSIX lib and SDL lib for all AmigaOS flavors would be great but isn't so easy to do now. The incompatibility kills Amiga cross development and there aren't any easy answers.
« Last Edit: May 16, 2013, 06:54:58 PM by matthey »
 

Offline nicholas

Re: New AGA SDL Development
« Reply #83 on: May 16, 2013, 06:54:54 PM »
Quote from: matthey;735221
A shared clib/POSIX lib and SDL lib for all AmigaOS flavors would be great but isn't so easy to do now. The incompatibility kills Amiga cross development and there aren't any easy answers.

An OpenJDK bounty. j/k! ;)
“Een rezhim-i eshghalgar-i Quds bayad az sahneh-i ruzgar mahv shaved.” - Imam Ayatollah Sayyed  Ruhollah Khomeini
 

Offline wawrzon

Re: New AGA SDL Development
« Reply #84 on: May 16, 2013, 08:05:45 PM »
so far i can tell aros brings posix compataiblility as well as amiga compatibility. you can prepare stuff to compile against aros and you will almost automatically get 68k stuff for amiga stable as soon as aros v1 is final. or even sooner, but unstable. staf is working on this. so no need to introduce another c library tp amiga-m68k.

what concerns the objections voiced here by crumb and also by chris against netsurf sdl frontend. almost every time someone does anything on 68k, which is maybe not so smart (admittedly), voices from mos or os4 camp try to tell us how wrong it is and that we should do that another way, compatible with theirs. a good example is bernds ixemul library debate. i acknowledge the authority of experienced coders like piru, but on the other hand we are given what we can get. if piru had backported mos ixemul improvements to 68k there wouldnt be the necessity for bernd to hack it. if chris or crumb, or itix would backport netsurf frontend to 68k, arti could put his sdl frontend away (perhaps). quarreling about that takes probably the amount of time it would take to implement it.

im sorry i have no knowledge of programming and no capacity to learn it adequately. im an artist and my (amiga) time is limited too. im doing what i can. maybe im wrong, but except of all the noobs, 50% of people here work and are educated in it branche. why (for heavens sake) do i try to do that all, and those who can, dont even move a finger but complain?
 

Offline Crumb

  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 1786
  • Country: 00
    • Show only replies by Crumb
    • http://cuaz.sourceforge.net
Re: New AGA SDL Development
« Reply #85 on: May 16, 2013, 09:06:18 PM »
@matthey

thx!*I used vbcc years ago and tried phxass+gcc but I don't remember ever trying posixlib. anyway I don't think it's easy to recompile on GCC. Sometimes code is not very portable and only compiles correctly with certain GCC versions (e.g. using \ at the end of defines on GCC2.95.x usually doesn't work but works in later versions)

@wawrzon
Quote from: wawrzon;735224
so far i can tell aros brings posix compataiblility as well as amiga compatibility. you can prepare stuff to compile against aros and you will almost automatically get 68k stuff for amiga stable as soon as aros v1 is final. or even sooner, but unstable. staf is working on this. so no need to introduce another c library tp amiga-m68k.


ATM aros68k stuff can use ELF binaries and can avoid using classic ABI. I mean:*you can do aros 68k apps that won't work on AmigaOS3.x.

Quote

what concerns the objections voiced here by crumb and also by chris against netsurf sdl frontend. almost every time someone does anything on 68k, which is maybe not so smart (admittedly),


I love classics and that's why I point to a tool I did to help development of Reaction GUIs.

Quote
voices from mos or os4 camp try to tell us how wrong it is and that we should do that another way, compatible with theirs.


Sharing code with current OS4 port would mean much less work maintaining the OS3.x port. SDL+ixemul is alien unix and slow platform. Working on the same amiga branch means much less work in the long term. Chris is already helping pointing the parts that should be modified, I think he even modified some parts to make it easier to port to 68k.

Quote
a good example is bernds ixemul library debate. i acknowledge the authority of experienced coders like piru, but on the other hand we are given what we can get. if piru had backported mos ixemul improvements to 68k there wouldnt be the necessity for bernd to hack it.


Perhaps instead of breaking compatibility he should have renamed his version newixemul.library or something like that.

Quote
if chris or crumb, or itix would backport netsurf frontend to 68k, arti could put his sdl frontend away (perhaps). quarreling about that takes probably the amount of time it would take to implement it.


When I grow up I want to be like Chris, Itix. I haven't done any big project for Amiga, sorry. Hats off to both Arti and Novacoder for trying to actually do stuff. I'm not trying to stop them doing what they like, just trying to help them pointing to tools that could help them with Reaction GUI. If they want/like/have time they could take a look once the SDL part works.

Quote
im sorry i have no knowledge of programming and no capacity to learn it adequately. im an artist and my (amiga) time is limited too. im doing what i can. maybe im wrong, but except of all the noobs, 50% of people here work and are educated in it branche. why (for heavens sake) do i try to do that all, and those who can, dont even move a finger but complain?


I'm not complaining of Arti&Novacoder efforts! I don't think anybody complains about that... perhaps it looks like I don't move a finger but I'm quite frustrated with ixemul&clib2&libnix, damn GCC compilers and crappy non-portable unix code that don't compile or crash. There are many ready to use libnix static libraries but if you want to use ixemul these are useless. If people spent more time doing amiga shared libraries we wouldn't have to reinvent the wheel everytime. I say that because take a look at aminet, you'll see same static libraries recompiled n times for stormc, for gcc2.95 with libnix, for gcc2.95 with ixemul, damato MCCs require clib2 to compile (that's why some people couldn't recompile them for plain 68000)... if someone did a proper amiga shared library port then people using E/powerD/Blitz/SASC/StormC/vbcc/GCC+libnix/GCC+clib2/GCC2.95+ixemul/GCC3+ixemul v60... all them could use the same and we wouldn't need n times the same static code. Doing amiga shared libraries is not so easy, of course but what we get with static lib ports? nothing in the mid/long term because people uses other compilers and c libraries. Of course maintenance can be harder, but more people can collaborate. And if we share the interface with OS4/MorphOS guys there's more room for improvement and easier maintenance in the long term.

In order to avoid frustration working in the Reaction port will be better because when the SDL*AGA*port is ready you can be sure a lot of people will moan about speed (and they won't offer you reaction tools to speed up the gui part, they will just moan). SDL port is ok as an internal test "ok, everything compiles and network works, now let's do the Reaction/MUI*gui".

If I use classics & morphos is due to Amiga/MorphOS software and/or good ports, it's not due to quickly recompiled Unix CLI tools or a quickly recompiled SDL video player without even overlay support. I'm typing this from MorphOS Oddisey and you can bet that if I had to use a SDL*OWB port I would probably be using IBrowse. I respect and admire people who keeps using classics everyday.

PS:*I think you did a picture of a pegasos with a text "Pegasos ready for destruction" but don't know where I could find it (at good quality, I just saw a few Ambient backdrops).
The only spanish amiga news web page/club: Club de Usuarios de Amiga de Zaragoza (CUAZ)
 

Offline wawrzon

Re: New AGA SDL Development
« Reply #86 on: May 16, 2013, 09:53:01 PM »
Quote

Sharing code with current OS4 port would mean much less work maintaining the OS3.x port.

Quote

Perhaps instead of breaking compatibility he should have renamed his version newixemul.library or something like that.

Quote

if someone did a proper amiga shared library port then people using E/powerD/Blitz/SASC/StormC/vbcc/GCC+libnix/GCC+clib2/GCC2.95+ixemul/GCC3+ixemul v60... all them could use the same and we wouldn't need n times the same static code.


if.. if.. if...... believe me, id prefer the same like you but neither from os4 nor mos camp there is enough good will to synchronize. aros and genuine amiga people (68k) would come along but usually lack skills. and when you complain about bernd, id prefer he renamed the lib, but since he didnt everybody is free to resign on soft compiled against it and stay with 48.x (already a trouble). i myself always tried to go for libnix first, whatever...

Quote

In order to avoid frustration working in the Reaction port will be better because when the SDL*AGA*port is ready you can be sure a lot of people will moan about speed (and they won't offer you reaction tools to speed up the gui part, they will just moan). SDL port is ok as an internal test "ok, everything compiles and network works, now let's do the Reaction/MUI*gui".

i trust you sdl is slow but have not seen any proof. depends on implementation i guess.
Quote

PS:*I think you did a picture of a pegasos with a text "Pegasos ready for destruction" but don't know where I could find it (at good quality, I just saw a few Ambient backdrops).

its not mine. i did no graphics for morphos. im not a good graphician, sorry. being an artist is usually a different kind of deal even if basics may be the same.
 

Offline NovaCoderTopic starter

Re: New AGA SDL Development
« Reply #87 on: May 17, 2013, 12:49:37 AM »
Using SDL AGA is not going to be much slower than just coding it without the SDL :)

[youtube]KFtTNsPJ7Zs[/youtube]

Descent Rebirth AGA is not optimized on the game side yet so it will get quicker then this (I hope).  My SDL is already as optimized as I can get it (and doesn't need ixemul.lib to link either!).

I've managed to get threaded sound working now, I didn't really want to go down that route as interrupt based sound is a bit quicker but it will do. You can always roll your own interrupt based code if you need to and just choose not to enable it in the SDL library (which means the library won't create any threads).

Timers have been disabled, I got them working fine but didn't really like the way it was coded as it would slow things down too much.   Most ports don't need Timers anyway so it's not a big deal.

After I've got it working properly with Descent Rebirth, I'll test it out with another couple of SDL ports to make sure it's working ok before I release it to AmiNet along with some example applications.

Please note that as I've mention many times before, this will not be a full AGA implementation of the SDL, it's just a hack to help games to be ported to AGA.

:)
Life begins at 100 MIPS!


Nice Ports on AmiNet!
 

Offline magnetic

  • Hero Member
  • *****
  • Join Date: Feb 2002
  • Posts: 2531
    • Show only replies by magnetic
Re: New AGA SDL Development
« Reply #88 on: May 17, 2013, 02:02:05 AM »
Man, just when I thought we were close to Netsurf AGA for classics... :(  Surely a bounty would inspire someone to do this?
bPlan Pegasos2 G4@1ghz
Quad Boot:Reg. MorphOS | OS4.1 U4 |Ubuntu GNU-Linux | MacOS X

Amiga 2000 Rom Switcher w/ 3.1 + 1.3 | HardFrame SCSI | CBM Ram board| A Squared LIVE! 2000 | Vlab Motion | Firecracker 24 gfx

Commodore CDTV: 68010 | ECS | 9mb Ram | SCSI -TV | 3.9 Rom | Developer EPROMs
 

Offline yakumo9275

  • Sr. Member
  • ****
  • Join Date: Jun 2008
  • Posts: 301
    • Show only replies by yakumo9275
    • http://mega-tokyo.com/blog
Re: New AGA SDL Development
« Reply #89 from previous page: May 17, 2013, 02:29:58 AM »
would it be hard to hack the lib to do say 32 colour ecs 320x200 instead of 8bit?
--/\\-[ Stu ]-/\\--
Commodore 128DCR, JiffyDOS, Ultimate 1541 II, uIEC/SD, CBM 1902A  Monitor