Click Here
home features news forums classifieds faqs links search
6011 members 
Amiga Q&A /  Free for All /  Emulation /  Gaming / (Latest Posts)
Login

Nickname

Password

Lost Password?

Don't have an account yet?
Register now!

Support Amigaworld.net
Your support is needed and is appreciated as Amigaworld.net is primarily dependent upon the support of its users.
Donate

Menu
Main sections
Home
Features
News
Forums
Classifieds
Links
Downloads
Extras
OS4 Zone
IRC Network
AmigaWorld Radio
Newsfeed
Top Members
Amiga Dealers
Information
About Us
FAQs
Advertise
Polls
Terms of Service
Search

IRC Channel
Server: irc.amigaworld.net
Ports: 1024,5555, 6665-6669
SSL port: 6697
Channel: #Amigaworld
Channel Policy and Guidelines

Who's Online
60 crawler(s) on-line.
 21 guest(s) on-line.
 2 member(s) on-line.


 BSzili,  DiscreetFX

You are an anonymous user.
Register Now!
 BSzili:  14 secs ago
 DiscreetFX:  3 mins ago
 cdimauro:  22 mins ago
 bison:  42 mins ago
 Wizor:  57 mins ago
 terminills:  1 hr 11 mins ago
 bestnewssocial:  1 hr 16 mins ago
 densho:  1 hr 36 mins ago
 Hammer:  1 hr 47 mins ago
 redfox:  2 hrs 9 mins ago

/  Forum Index
   /  Amiga Development
      /  AmigaOS4 SDK?
Register To Post

Goto page ( 1 | 2 | 3 Next Page )
PosterThread
hnl_dk 
AmigaOS4 SDK?
Posted on 3-Jan-2004 10:04:28
#1 ]
Super Member
Joined: 25-Mar-2003
Posts: 1786
From: Denmark

What development tools will be part of the AmigaOS4 SDK?

How much of gcc has been ported to AmigaOS4?
How much of libtool has been ported to AmigaOS4?
How much of autotools has been ported to AmigaOS4?
...

Does anyone know what will be part of the AmigaOS4 SDK?

_________________
Best regards,
hnl_dk - Henning Nielsen Lund [Denmark]

Please send no PM to me, email me if you want to contact me. See you somewhere else.

 Status: Offline
Profile     Report this post  
Rogue 
Re: AmigaOS4 SDK?
Posted on 3-Jan-2004 11:10:05
#2 ]
OS4 Core Developer
Joined: 14-Jul-2003
Posts: 3999
From: Unknown

Quote:
What development tools will be part of the AmigaOS4 SDK?


GCC 2.95.3 and GCC 3.4 have been ported to OS 4 native (and as a cross compiler for Linux/x86, Linux/PPC, Windows/Cygwin, Darwin/PPC, AmigaOS 3.x/m68k)

The SDK will also contain gdb, the Gnu Debugger.

Then there's vbcc. vbcc is Frank Wille's contribution, I don't know if it will be contained in the SDK directly, but it will in any case be downloadable.

The SDK also contains a number of additional utilities, among them "fdtrans", which is a program to convert old-style SFD files into next-gen XML files.

XML files are used by the program "idltool", which is a program that converts these XML files into all sort of output files (much like fd2pragma or SFD before). idltool is primarily used to generate all required include files for an OS 4 style library, but it can also generate a skeleton source code for a library, so that a programmer only has to write an XML file, turn it into source code, and add the functions to it. This should make it easier to write libraries in OS 4.

Quote:
How much of libtools has been ported to AmigaOS4?
How much of autotools has been ported to AmigaOS4?


I'm not sure what you mean with libtools/autotools. If you mean the gnu-style autoconf and friends, you can use these on Linux for cross-compiling (./configure --host=ppc-amigaos works in most cases) but not natively yet, because it requires things like an 'sh' which we don't have yet.

_________________
Seriously, if you want to contact me do not bother sending me a PM here. Write me a mail

 Status: Offline
Profile     Report this post  
Petah 
Re: AmigaOS4 SDK?
Posted on 3-Jan-2004 11:18:09
#3 ]
Regular Member
Joined: 10-Mar-2003
Posts: 422
From: EU <3 ❤️

Rogue,

do you guys plan to distribute the SDK to the public before AmigaOS 4 is released? From what I understand, the API:s have been pretty much nailed to the floor for some time now?

Regards,
Peter

_________________
That'll Put Marzipan In Your Pie Plate, Bingo
💻 Pro-Amiga, 🌍 Pro-Globalism, 🍅 Pro-Vegan & 🇪🇺 Pro-Joint EU Defense Intervention Initiative

 Status: Offline
Profile     Report this post  
Rogue 
Re: AmigaOS4 SDK?
Posted on 3-Jan-2004 11:20:48
#4 ]
OS4 Core Developer
Joined: 14-Jul-2003
Posts: 3999
From: Unknown

Quote:
do you guys plan to distribute the SDK to the public before AmigaOS 4 is released? From what I understand, the API:s have been pretty much nailed to the floor for some time now?


The SDK will be available on the Developer Pre-Release CD. Beyond that I can't say... (I just work here )

_________________
Seriously, if you want to contact me do not bother sending me a PM here. Write me a mail

 Status: Offline
Profile     Report this post  
GregS 
Re: AmigaOS4 SDK?
Posted on 3-Jan-2004 11:59:00
#5 ]
Super Member
Joined: 28-Apr-2003
Posts: 1797
From: Perth Australia

@Rogue
Quote:
XML files are used by the program "idltool", which is a program that converts these XML files into all sort of output files (much like fd2pragma or SFD before). idltool is primarily used to generate all required include files for an OS 4 style library, but it can also generate a skeleton source code for a library, so that a programmer only has to write an XML file, turn it into source code, and add the functions to it. This should make it easier to write libraries in OS 4.


Thnis sounds fantastic to say the least, but perhaps I am misreading this?

It sounds like many framework structures are contained in an XML file (?) which someone like me (who understands C a little but not much) can add in the functions and then compile (?)

Is this what is being put in the SDK -- if it is OS4 will
steamroll -- buit perhaps I am misreading what is being said --
can someone with more knowledge put me straight?

Greg Schofield

_________________
Greg Schofield, Perth Australia

 Status: Offline
Profile     Report this post  
hnl_dk 
Re: AmigaOS4 SDK?
Posted on 3-Jan-2004 13:40:44
#6 ]
Super Member
Joined: 25-Mar-2003
Posts: 1786
From: Denmark

Quote:

Rogue wrote:
Quote:
What development tools will be part of the AmigaOS4 SDK?


GCC 2.95.3 and GCC 3.4 have been ported to OS 4 native (and as a cross compiler for Linux/x86, Linux/PPC, Windows/Cygwin, Darwin/PPC, AmigaOS 3.x/m68k)

The SDK will also contain gdb, the Gnu Debugger.

Then there's vbcc. vbcc is Frank Wille's contribution, I don't know if it will be contained in the SDK directly, but it will in any case be downloadable.

The SDK also contains a number of additional utilities, among them "fdtrans", which is a program to convert old-style SFD files into next-gen XML files.

XML files are used by the program "idltool", which is a program that converts these XML files into all sort of output files (much like fd2pragma or SFD before). idltool is primarily used to generate all required include files for an OS 4 style library, but it can also generate a skeleton source code for a library, so that a programmer only has to write an XML file, turn it into source code, and add the functions to it. This should make it easier to write libraries in OS 4.

Quote:
How much of libtools has been ported to AmigaOS4?
How much of autotools has been ported to AmigaOS4?


I'm not sure what you mean with libtools/autotools. If you mean the gnu-style autoconf and friends, you can use these on Linux for cross-compiling (./configure --host=ppc-amigaos works in most cases) but not natively yet, because it requires things like an 'sh' which we don't have yet.


Ok ... thanks for the information.

About the sh "factor", for Classic AmigaOS I found
pdksh ftp://ftp.geekgadgets.org/pub/geekgadgets/amiga/m68k/snapshots/current/src/pdksh-5.2.12-src.tgz.pi
and bash ftp://ftp.geekgadgets.org/pub/geekgadgets/amiga/m68k/snapshots/current/src/bash-2.03-src.tgz.pi
on Geek Gadgets

But thats still only 68k

_________________
Best regards,
hnl_dk - Henning Nielsen Lund [Denmark]

Please send no PM to me, email me if you want to contact me. See you somewhere else.

 Status: Offline
Profile     Report this post  
hnl_dk 
Re: AmigaOS4 SDK?
Posted on 3-Jan-2004 14:35:16
#7 ]
Super Member
Joined: 25-Mar-2003
Posts: 1786
From: Denmark

Quote:
... I'm not sure what you mean with libtools/autotools. ...


Sorry about the extra "s" ... it should have been libtool

And you were right about the Autotools ... Autoconf & automake

_________________
Best regards,
hnl_dk - Henning Nielsen Lund [Denmark]

Please send no PM to me, email me if you want to contact me. See you somewhere else.

 Status: Offline
Profile     Report this post  
Rogue 
Re: AmigaOS4 SDK?
Posted on 3-Jan-2004 18:44:53
#8 ]
OS4 Core Developer
Joined: 14-Jul-2003
Posts: 3999
From: Unknown

Quote:
It sounds like many framework structures are contained in an XML file


You still have to write some include files (mostly those that deal with the structures and constants your library needs, and an XML file which outlines the functions of your library. Here's an example of such an XML file (sorry for the size of it, it was the shortest example I could find):

Quote:

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE library SYSTEM "library.dtd">
<library name="os4sample" basename="OS4Sample" openname="os4sample.library" basetype="OS4SampleBase">
<include>exec/libraries.h</include>
<!-- The main interface. This usually contains general purpose functions of your library -->
<interface name="main" version="1.0" struct="OS4SampleIFace" prefix="_os4sample_" asmprefix="IOS4Sample" global="IOS4Sample">
<method name="Obtain" result="uint32"/>
<method name="Release" result="uint32"/>
<method name="Expunge" result="void" status="unimplemented"/>
<method name="Clone" result="struct Interface *" status="unimplemented"/>

<!-- Normal methods start here -->
<!-- Add two numbers -->
<method name="AddTwoNumbers" result="uint32">
<arg name="Arg1" type="uint32"/>
<arg name="Arg2" type="uint32"/>
</method>
<!-- Create an instance of the thingy interface -->
<method name="MakeThingy" result="struct ThingyIFace *">
<arg name="ThingyType" type="uint32"/>
</method>
</interface>

<!-- A library may have more than one interface. Here's another one -->
<interface name="thingy" version="1.0" struct="ThingyIFace" prefix="_thingy_" asmprefix="IThingy">
<method name="Obtain" result="uint32"/>
<method name="Release" result="uint32"/>
<method name="Expunge" result="void" status="unimplemented"/>
<method name="Clone" result="struct Interface *" status="unimplemented"/>

<!-- Make the thingy squeak -->
<method name="Squeak" result="void"/>
<!-- Make the thingy jump through a ring -->
<method name="JumpRing" result="BOOL">
<arg name="onFire" type="BOOL"/>
</method>
</interface>
</library>


(Formatting is botched again, run through an XML beautifier )

What this example does is define the structure of a library that has two interfaces (as you might know OS 4 libraries can export more than one jumptable, or "interfaces"), where the "main" interface deals with general purpose stuff, while the "thingy" interface is an example for something specialized (in this case, thingies can squeak and jump through an (optionally burning) ring).

IDLTool will now create the include files (proto/, inline4/, interfaces/ etc) and a directory with a complete library source code; you just go there and type "make" (usually) and it builds os4sample.library, but all functions simply do nothing. You add the pieces by implementing these functions.

It's a bit more complicated than that, of course, but mostly it works this way

_________________
Seriously, if you want to contact me do not bother sending me a PM here. Write me a mail

 Status: Offline
Profile     Report this post  
GregS 
Re: AmigaOS4 SDK?
Posted on 3-Jan-2004 23:37:01
#9 ]
Super Member
Joined: 28-Apr-2003
Posts: 1797
From: Perth Australia

@Rogue, this is a really brillant step forward, using XML in this way.

On the one hand it opens the way for people like me to write useful compiled code. I can get a handle on C for instance, but beyond trivial things cannot go as far as integrating it into the OS at any meaningful level.

Enough XML templates and even a slob like me will be
able to write a fragment of code that actually does something useful.

It also opens the way for a different sort of editing environment (using CSS or XSL -- whatever) where various elements can be presented graphically and dynamically (lists of declared variables etc).

Wonderful and definitely the right direction of simplicity and elegance.

Thanks Rogue and all the team at Hyperion -- this is the stuff I thought we would have to wait forever for, and now it is just about to be delivered .

Thankyou, thankyou thankyou

Greg Schofield

_________________
Greg Schofield, Perth Australia

 Status: Offline
Profile     Report this post  
Rogue 
Re: AmigaOS4 SDK?
Posted on 4-Jan-2004 0:54:27
#10 ]
OS4 Core Developer
Joined: 14-Jul-2003
Posts: 3999
From: Unknown

Quote:
Enough XML templates and even a slob like me will be


Note that it doesn't free you from actually writing the code - it just frees you from the mostly boring task of writing the framework and maintenance code yourself.

_________________
Seriously, if you want to contact me do not bother sending me a PM here. Write me a mail

 Status: Offline
Profile     Report this post  
GregS 
Re: AmigaOS4 SDK?
Posted on 4-Jan-2004 1:43:02
#11 ]
Super Member
Joined: 28-Apr-2003
Posts: 1797
From: Perth Australia

@Rogue

Quote:

Note that it doesn't free you from actually writing the code - it just frees you from the mostly boring task of writing the framework and maintenance code yourself.


It is exactly this stuff that confuses the novice programmer.

For instance a simple little library function, is not hard to write, but making it into an addressable library is another matter (at least in my experience).

Novices like myself, especially impatient ones, have an idea for something and want the function up and in the from they intend using it, the function itself is their main concern, while placing it in a useful context is confusing at best (hence the tendency to write trivial exes which don't integrate well).

For professional programmers, it just looks like plain laziness and ignorance -- afterall you look as such things
as merely boring, I look at them and am simply confused and relating to things well outside my immediate interest.

These XML templates will be a very big bonus, plus in using them it will accelerate my understanding about how things actually work. I mean I just about understood everything in your example, while if I was looking at actual source code, I would find it difficult to see where one thing left-off and another began.

Given a little time I can see a useful graphical interface for programing, useful to novices like myself, probably just distracting to real programmers.

I was under no illusion that anything like this would eliminate coding, but to me the important part is eliminating distractions and fragmenting the coding excercise into something I can handle.

Anyhow, it looks like we are well on the way to getting something I have been wanting for a long time -- again thanks.

Greg Schofield

_________________
Greg Schofield, Perth Australia

 Status: Offline
Profile     Report this post  
CanGuy 
Re: AmigaOS4 SDK?
Posted on 4-Jan-2004 2:07:18
#12 ]
Member
Joined: 26-Jun-2003
Posts: 68
From: Canada

Quote:
you can use these on Linux for cross-compiling (./configure --host=ppc-amigaos works in most cases) but not natively yet, because it requires things like an 'sh' which we don't have yet.


That's great news, there's a few linux apps (the ogg-vorbis libraries for one) that I'd like to try porting once the SDK is released.

If you've got the time, it would be great if there where some examples of cross-compiling, say, how to convert a linux library to an AmigaOS one.

_________________
YYZTech.ca - Toronto talks tech!

 Status: Offline
Profile     Report this post  
pods 
Re: AmigaOS4 SDK?
Posted on 4-Jan-2004 6:27:37
#13 ]
Regular Member
Joined: 7-Apr-2003
Posts: 339
From: Brunswick, Melbourne, Victoria, Australia

Quote:

outlines the functions of your library


In C i remember having to write function prototypes or definitions that described the functions return type and parameter types. So in stead of writing the function prototypes or definitions in the header files, you can write them in this XML file?

I havn't dealt with interfaces before except in Java and i havn't dealt with or heard much of jumptables but i assume thats a technical term for what an interface is actualy doing in C/C++ ?

Is this XML file a pure Amiga thing? Or is it used within Unix programming? I've never seen it before.

 Status: Offline
Profile     Report this post  
Rogue 
Re: AmigaOS4 SDK?
Posted on 4-Jan-2004 12:11:08
#14 ]
OS4 Core Developer
Joined: 14-Jul-2003
Posts: 3999
From: Unknown

Quote:
That's great news, there's a few linux apps (the ogg-vorbis libraries for one) that I'd like to try porting once the SDK is released.


Don't want to disappoint you, but I already did that (port ogg-vorbis)

Quote:
If you've got the time, it would be great if there where some examples of cross-compiling, say, how to convert a linux library to an AmigaOS one.


Without effort, you will most likely only come up with a static link library (for libogg.a, libvorbis.a, libvorbisfile.a etc).

To actually turn that into a shared library, additional effort is needed, however, you *can* dlopen() shared object files to some extend.

_________________
Seriously, if you want to contact me do not bother sending me a PM here. Write me a mail

 Status: Offline
Profile     Report this post  
Rogue 
Re: AmigaOS4 SDK?
Posted on 4-Jan-2004 12:19:54
#15 ]
OS4 Core Developer
Joined: 14-Jul-2003
Posts: 3999
From: Unknown

Quote:
In C i remember having to write function prototypes or definitions that described the functions return type and parameter types. So in stead of writing the function prototypes or definitions in the header files, you can write them in this XML file?


Think of the XML file as a replacement for an FD file, only with a clearer definition. FD files (or rather, SFD files) try to pretend some C-like synax. That makes them rather difficult to parse. XML is well defined in this respect, and much more extensible, so we chose to use it instead.

Quote:
I havn't dealt with interfaces before except in Java and i havn't dealt with or heard much of jumptables but i assume thats a technical term for what an interface is actualy doing in C/C++ ?


In OS 4, you can think of interfaces as additional jump tables for a library, but actually its a bit more. If you know COM on Windows, it comes closer to what you can actually do.

Quote:
Is this XML file a pure Amiga thing? Or is it used within Unix programming? I've never seen it before.


XML itself is a file format (see the W3C XML page). As such, the XML file above is just some sort of textual representation of a hierarchical structure (the library and its interfaces in this case). We could have chosen a different format, but felt that XML was the right choice because it is easier to parse than most formats, making it an ideal choice for automatic processing by a program like idltool...

_________________
Seriously, if you want to contact me do not bother sending me a PM here. Write me a mail

 Status: Offline
Profile     Report this post  
Rogue 
Re: AmigaOS4 SDK?
Posted on 4-Jan-2004 12:22:13
#16 ]
OS4 Core Developer
Joined: 14-Jul-2003
Posts: 3999
From: Unknown

Quote:
Given a little time I can see a useful graphical interface for programing, useful to novices like myself, probably just distracting to real programmers.


Yeah, it would be great to have visual programming tools. Apple's Interface Builder (which really is NeXT''s interface builder) is a step in the right direction. It should become easier for people to build applications out of different "pieces".

I'm afraid, though, that it will take some time to implement such a system.

_________________
Seriously, if you want to contact me do not bother sending me a PM here. Write me a mail

 Status: Offline
Profile     Report this post  
TheJackal 
Re: AmigaOS4 SDK?
Posted on 9-Jan-2004 10:19:07
#17 ]
Regular Member
Joined: 27-Oct-2003
Posts: 109
From: Derby, UK

Hi,

I have a few questions about the up and coming OS4 release as well as some other stuff.

* I remember something around xmas/new year about a pre-release, but can't find the exact details. Can someone tell me what the actual plan of action is for the pre-release/final release?

* On the compiler side there is a cross compiler. Does this mean I can write and compile code on my PC (Win2K) and send the exe's to my Amiga (Ala console dev), or are they only for Linux environments?

* I see mentioned the Gnu Debugger (I have no idea what that is!), but what are the debug tools available besides this? Such as a debugger where you can set break points etc, or is it "old school" type debugging (Shivers)?

* Although I'm a professional programmer, I've never programmed for the Amiga before, and as such would like to know how good the SDK docs are to teach people like me, "The way things are supposed to be done"(tm).

* Following on from this, is there some clear descriptions on all this XML templates/Libraries/FD files/SFD files/vbcc/idltool? Since I have only a vague idea what some of these are, others are just a bunch of acronyms!

* What API's are available? Input/Sound/2D/3D/Networking, and how mature/complete are these?

My main aim in these questions is to try and understand the structure and tools to allow me to write code for OS4, without having to bang my head against a wall to often!

Finally I think there should be (if not already) a page listing information like this, so people at a glance can see what they can expect from the OS4 release.

Thanks in advance.

_________________
_________________
Any views, opinions, statements or advice in this message are solely those of

 Status: Offline
Profile     Report this post  
Rogue 
Re: AmigaOS4 SDK?
Posted on 9-Jan-2004 11:17:49
#18 ]
OS4 Core Developer
Joined: 14-Jul-2003
Posts: 3999
From: Unknown

Quote:
* I remember something around xmas/new year about a pre-release, but can't find the exact details. Can someone tell me what the actual plan of action is for the pre-release/final release?


Probably later this months.

Quote:
* On the compiler side there is a cross compiler. Does this mean I can write and compile code on my PC (Win2K) and send the exe's to my Amiga (Ala console dev), or are they only for Linux environments?


We have cross compilers for OS 4 targeted binaries on Linux/x86, Linux/PPC, Windows, MacOS X and AmigaOS 3.x (68k).

Quote:
* Although I'm a professional programmer, I've never programmed for the Amiga before, and as such would like to know how good the SDK docs are to teach people like me, "The way things are supposed to be done"(tm).


There are essentially the "autodocs" which is the API description. It is some sort of reference. OTOH there is the Rom Kernel Manual (RKM for short) series that describe the processes etc required. The RKM's have been in neglect by former owners of Amiga, so they are not really up-to-date. We are planning to get an up-to-date version done, but right now this is only at around the level of OS 2.04.

Quote:
* Following on from this, is there some clear descriptions on all this XML templates/Libraries/FD files/SFD files/vbcc/idltool? Since I have only a vague idea what some of these are, others are just a bunch of acronyms!


A document exists that describes the process. It's quite easy really, it only looks daunting at first look

Quote:
* What API's are available? Input/Sound/2D/3D/Networking, and how mature/complete are these?


All of them are available, and they have already been in use for quite some time, so I guess that most of them are tried and tested. There are a few known weaknesses which we are planning to get rid off, but the API will be largely the same as in OS 3.9 plus a few additions.

Quote:
Finally I think there should be (if not already) a page listing information like this, so people at a glance can see what they can expect from the OS4 release.


Yeah, there should be, and in fact there will be once the OS is out there. Right now everyone is busy to read that goal.

_________________
Seriously, if you want to contact me do not bother sending me a PM here. Write me a mail

 Status: Offline
Profile     Report this post  
TheJackal 
Re: AmigaOS4 SDK?
Posted on 9-Jan-2004 12:38:24
#19 ]
Regular Member
Joined: 27-Oct-2003
Posts: 109
From: Derby, UK

Quote:

Quote:
* Although I'm a professional programmer, I've never programmed for the Amiga before, and as such would like to know how good the SDK docs are to teach people like me, "The way things are supposed to be done"(tm).


There are essentially the "autodocs" which is the API description. It is some sort of reference. OTOH there is the Rom Kernel Manual (RKM for short) series that describe the processes etc required. The RKM's have been in neglect by former owners of Amiga, so they are not really up-to-date. We are planning to get an up-to-date version done, but right now this is only at around the level of OS 2.04.


Yeah I just downloaded these, I guess the stuff about no memory protection, chip fast ram etc are a bit mute!

Oh, Thanks for the reply!

_________________
_________________
Any views, opinions, statements or advice in this message are solely those of

 Status: Offline
Profile     Report this post  
hnl_dk 
Update
Posted on 18-Jan-2004 10:50:56
#20 ]
Super Member
Joined: 25-Mar-2003
Posts: 1786
From: Denmark

Just for an update:

gcc 3.4 has changed to the active release branch

http://gcc.gnu.org/

_________________
Best regards,
hnl_dk - Henning Nielsen Lund [Denmark]

Please send no PM to me, email me if you want to contact me. See you somewhere else.

 Status: Offline
Profile     Report this post  
Goto page ( 1 | 2 | 3 Next Page )

[ home ][ about us ][ privacy ] [ forums ][ classifieds ] [ links ][ news archive ] [ link to us ][ user account ]
Copyright (C) 2000 - 2019 Amigaworld.net.
Amigaworld.net was originally founded by David Doyle