Click Here
home features news forums classifieds faqs links search
6071 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
9 crawler(s) on-line.
 83 guest(s) on-line.
 0 member(s) on-line.



You are an anonymous user.
Register Now!
 OlafS25:  21 mins ago
 Kronos:  40 mins ago
 VooDoo:  59 mins ago
 RobertB:  1 hr 7 mins ago
 Hammer:  1 hr 33 mins ago
 zipper:  1 hr 40 mins ago
 pixie:  1 hr 47 mins ago
 AndreasM:  1 hr 55 mins ago
 CosmosUnivers:  2 hrs 10 mins ago
 agami:  2 hrs 38 mins ago

/  Forum Index
   /  Amiga OS4.x \ Workbench 4.x
      /  AmigaOS4.1 coding for example OpenScreenTags
Register To Post

Goto page ( 1 | 2 Next Page )
PosterThread
Vanhapolle 
AmigaOS4.1 coding for example OpenScreenTags
Posted on 28-Sep-2014 1:19:35
#1 ]
Regular Member
Joined: 22-Sep-2014
Posts: 372
From: Unknown

I download SDK for AmigaOS4.1 i know i dont yet have oS4.1 but i want look documentation i found there is documentation forexample OpenScreenTags function want know if this means i can use old OS3.9 ways do other things than what documentaiton covers. Is there OS4.1 which text editors what i can use make code
to complie with GCC? i like GoldEd. Any Gui editor for native GUI ? (i think is ReAction)

Last edited by Vanhapolle on 28-Sep-2014 at 01:21 AM.

 Status: Offline
Profile     Report this post  
Nibunnoichi 
Re: AmigaOS4.1 coding for example OpenScreenTags
Posted on 29-Sep-2014 8:03:45
#2 ]
Cult Member
Joined: 18-Nov-2004
Posts: 969
From: Roma + Lecco, Italia

@Vanhapolle

Quote:

Vanhapolle wrote:
I download SDK for AmigaOS4.1 i know i dont yet have oS4.1 but i want look documentation i found there is documentation forexample OpenScreenTags function want know if this means i can use old OS3.9 ways do other things than what documentaiton covers. Is there OS4.1 which text editors what i can use make code
to complie with GCC? i like GoldEd. Any Gui editor for native GUI ? (i think is ReAction)

Don't forget to look at the official Amiga OS Wiki for documentation and reference, it has good information and it should replace the old RKMs.
Also keep an eye on OS4 Coding there are interesting articles (also on GUI programming) in the blogs section.
This is an introductory guide to ReAction programming, and here you can find some examples too using "reaction" as keyword.

As an editor you can also use the freeware Annotate which supports syntax highlighting too.
While CodeBench is a full featured IDE it will be commercial but for now it has free version downloadable.

_________________
Proud Amigan since 1987
Owner of various Commodore and a SAM440ep\OS4.1FE
See them on http://retro.furinkan.org/

 Status: Offline
Profile     Report this post  
Hypex 
Re: AmigaOS4.1 coding for example OpenScreenTags
Posted on 29-Sep-2014 17:48:38
#3 ]
Elite Member
Joined: 6-May-2007
Posts: 11230
From: Greensborough, Australia

@Vanhapolle

Yes you can use old OS3.9 ways as you put it, all the "old" functions are there. Tags for OpenScreenTags() functions are listed in OpenScreen() for some reason.

Some tools though they are getting old. GUI bulders:
http://os4depot.net/index.php?function=browse&cat=development/guitool

IDEs:
http://os4depot.net/index.php?function=browse&cat=development/ide

Tide is good for starters.

 Status: Offline
Profile     Report this post  
eliyahu 
Re: AmigaOS4.1 coding for example OpenScreenTags
Posted on 29-Sep-2014 18:10:14
#4 ]
Super Member
Joined: 3-Mar-2010
Posts: 1961
From: Waterbury, Connecticut (USA)

@thread

on the subject of text editors i'd like to also mention -- in addition to annotate and codebench -- the native version of cygnused pro 5 and the new stormc5ed from alinea, the latter of which i use when i'm not using codebench.

-- eliyahu

_________________
"Physical reality is consistent with universal laws. When the laws do not operate, there is no reality. All of this is unreal."

 Status: Offline
Profile     Report this post  
broadblues 
Re: AmigaOS4.1 coding for example OpenScreenTags
Posted on 29-Sep-2014 19:56:33
#5 ]
Amiga Developer Team
Joined: 20-Jul-2004
Posts: 4446
From: Portsmouth England

@Hypex

I wouldn't bother with any of those IDEs, Codebench is by far the best solution.

_________________
BroadBlues On Blues BroadBlues On Amiga Walker Broad

 Status: Offline
Profile     Report this post  
broadblues 
Re: AmigaOS4.1 coding for example OpenScreenTags
Posted on 29-Sep-2014 19:59:12
#6 ]
Amiga Developer Team
Joined: 20-Jul-2004
Posts: 4446
From: Portsmouth England

@Hypex

Quote:

Yes you can use old OS3.9 ways as you put it, all the "old" functions are there. Tags for OpenScreenTags() functions are listed in OpenScreen() for some reason.


Because functions with Tags name extension are Varargs version on the non Tags Version,

_________________
BroadBlues On Blues BroadBlues On Amiga Walker Broad

 Status: Offline
Profile     Report this post  
Vanhapolle 
Re: AmigaOS4.1 coding for example OpenScreenTags
Posted on 29-Sep-2014 21:18:22
#7 ]
Regular Member
Joined: 22-Sep-2014
Posts: 372
From: Unknown

I must look them when all is working. But is there no free editors ? with Amiga feeling not something like VIM,Emacs. at least i dont like them much. And i cannot imagine buying editor soon maybe even getting hard drives (one for MorphOS and one for AmigaOS),SATA adapters etc is pricey..

 Status: Offline
Profile     Report this post  
broadblues 
Re: AmigaOS4.1 coding for example OpenScreenTags
Posted on 29-Sep-2014 22:25:38
#8 ]
Amiga Developer Team
Joined: 20-Jul-2004
Posts: 4446
From: Portsmouth England

@Vanhapolle

Whilst Coebench is commercial the free version is quite functional IIRC. Limitations are the number of projects open at the same time, either C *or* hollywood not both etc.


_________________
BroadBlues On Blues BroadBlues On Amiga Walker Broad

 Status: Offline
Profile     Report this post  
Chris_Y 
Re: AmigaOS4.1 coding for example OpenScreenTags
Posted on 29-Sep-2014 22:35:53
#9 ]
Elite Member
Joined: 21-Jun-2003
Posts: 3204
From: Beds, UK

@broadblues

Quote:


Quote:

Tags for OpenScreenTags() functions are listed in OpenScreen() for some reason.


Because functions with Tags name extension are Varargs version on the non Tags Version,


As I'm sure you know, they are the varargs version of the "TagList" function.

OpenScreen() is completely different, it's an old legacy function that nobody in their right mind would have used since 2.04 was released.

_________________
"Miracles we do at once, the impossible takes a little longer" - AJS on Hyperion
Avatar is Tabitha by Eric W Schwartz

 Status: Offline
Profile     Report this post  
broadblues 
Re: AmigaOS4.1 coding for example OpenScreenTags
Posted on 29-Sep-2014 22:44:52
#10 ]
Amiga Developer Team
Joined: 20-Jul-2004
Posts: 4446
From: Portsmouth England

@Chris_Y

Yes of course, in the case plain OpenScreen() OpenWindow() et al the tags lists are passed in the Extended versions of the NewWindow / NewScreen structures, instead of as separate function arguments. Which is why the Tag documentation is still in the original function.

_________________
BroadBlues On Blues BroadBlues On Amiga Walker Broad

 Status: Offline
Profile     Report this post  
CodeSmith 
Re: AmigaOS4.1 coding for example OpenScreenTags
Posted on 30-Sep-2014 5:21:25
#11 ]
Elite Member
Joined: 8-Mar-2003
Posts: 3045
From: USA

Somewhat related, today Bombjack posted a nice dump of developer docs from the 1990 Amiga Developer Conference. All sorts of cool stuff in there from the Zorro 3 bus specs to the new features added to AmigaOS 2 (the fundamentals of which are still relevant in OS4.1). Like most of Bomback's scans this one is OCR'd so you can search it. A quick ctrl-F in Adobe Reader revealed a few instances of OpenScreenTags.

Linky: http://www.bombjack.org/commodore/amiga/amiga-commodore/Amiga_Developer_Conference_1990.pdf

 Status: Offline
Profile     Report this post  
Hypex 
Re: AmigaOS4.1 coding for example OpenScreenTags
Posted on 30-Sep-2014 17:35:13
#12 ]
Elite Member
Joined: 6-May-2007
Posts: 11230
From: Greensborough, Australia

@broadblues

Quote:
Codebench is by far the best solution.


It's the most powerful yes but it's also slow to start and crashes in searches and when trying to add lots of source files.

OTOH TIDE starts up fast and is good for small programs, limited as it may be.. I have found it stable.

No solutions I found could locate, sort and add all types of source files to a project in one swoop then generate a generic makefile.

Quote:
Because functions with Tags name extension are Varargs version on the non Tags Version,


I'm not aware of any programs making use of the old functions with extended tags added. Nor would it be recommended for years. Also, when looking up info, you would associate tags with a function having "Tags" in the name, before one that does not.

Last edited by Hypex on 01-Oct-2014 at 03:46 PM.

 Status: Offline
Profile     Report this post  
Hans 
Re: AmigaOS4.1 coding for example OpenScreenTags
Posted on 30-Sep-2014 20:35:30
#13 ]
Elite Member
Joined: 27-Dec-2003
Posts: 5067
From: New Zealand

@Vanhapolle

Quote:

Vanhapolle wrote:
I download SDK for AmigaOS4.1 i know i dont yet have oS4.1 but i want look documentation i found there is documentation forexample OpenScreenTags function want know if this means i can use old OS3.9 ways do other things than what documentaiton covers.


As a general rule you should not use undocumented behaviours of API functions. Anything that isn't in the documentation could change with any update. For example, AllocVec() used to store the allocation size just before the allocation, and some developers used this. However, this was an implementation-specific side-effect, and all software that exploited this no longer work (on AmigaOS 4.x). Commodore themselves begged developers to stick to only what was in the documentation.

For an OpenScreenTags() example, download Composite3DDemo, and look in Composite3DDemo.cpp.

Hans


P.S., The Composite3DDemo uses AmigaOS 4.x' interfaces. If you're writing code that you want to run on AmigaOS 3, MorphOS, and/or AROS, then there's a #define that you can set to drop the "IExec->" part. The details are in the SDK's documentation drawer somewhere.

_________________
http://hdrlab.org.nz/ - Amiga OS 4 projects, programming articles and more. Home of the RadeonHD driver for Amiga OS 4.x project.
https://keasigmadelta.com/ - More of my work.

 Status: Offline
Profile     Report this post  
broadblues 
Re: AmigaOS4.1 coding for example OpenScreenTags
Posted on 30-Sep-2014 23:24:13
#14 ]
Amiga Developer Team
Joined: 20-Jul-2004
Posts: 4446
From: Portsmouth England

@Hypex

Quote:

Quote:

Quote:
Codebench is by far the best solution.

It's the most powerful yes but it's also slow to start and crashes in searches and when trying to add lots of source files.


I don't find start up too bad, but it does depend on how much SDK data is in the dictionary, you can reduce the number of types of thing in the dictionary, but clicking on rebuild in the Projects_>settings->help tab. I have have just System Functions and System Structures, but I also have a lextra with the entire newlib / clib function library in it (including man pages).

I reported the search bug, to avoid falling foul of it simply clip on the chooser gadget at the top of the serach box before searching.


Quote:

Quote:

Quote:
Because functions with Tags name extension are Varargs version on the non Tags Version,


I'm not aware of any programs making use of the old functions with extended tags added.


Aren't you? I can think of one, I'll leave it to the reader to guess which one.

Last edited by broadblues on 30-Sep-2014 at 11:24 PM.

_________________
BroadBlues On Blues BroadBlues On Amiga Walker Broad

 Status: Offline
Profile     Report this post  
Nibunnoichi 
Re: AmigaOS4.1 coding for example OpenScreenTags
Posted on 1-Oct-2014 12:53:10
#15 ]
Cult Member
Joined: 18-Nov-2004
Posts: 969
From: Roma + Lecco, Italia

@Hypex

Quote:

Hypex wrote:
It's the most powerful yes but it's also slow to start and crashes in searches and when trying to add lots of source files.

Dunno, some time ago i tried importing a whole SVN tree and even if i was skeptical at the beginning, it worked great... it was the first time i did something similar on the Amiga so i was quite excited too

_________________
Proud Amigan since 1987
Owner of various Commodore and a SAM440ep\OS4.1FE
See them on http://retro.furinkan.org/

 Status: Offline
Profile     Report this post  
Hypex 
Re: AmigaOS4.1 coding for example OpenScreenTags
Posted on 1-Oct-2014 16:10:10
#16 ]
Elite Member
Joined: 6-May-2007
Posts: 11230
From: Greensborough, Australia

@broadblues

Quote:
I don't find start up too bad, but it does depend on how much SDK data is in the dictionary


I don't recall setting it up, just the defaults AFAIK. I did wonder why it wasn't saved. But there is also the seven second itch before anything happens.

Of course as it stands currently it is free to use.

Quote:
I reported the search bug,


Oh good. I kept a crash log and submitted a report also.

Quote:
Aren't you?


Well I used it years ago when still writing assembler and wanted to write upwards compatible code or even downnwards compaitble code.

But I haven't seen any source code in years using OpenScreen() and passing tags inside an extended NewScreen structurre so if there is an obvious example I've gone a bit blindsighted.

 Status: Offline
Profile     Report this post  
Hypex 
Re: AmigaOS4.1 coding for example OpenScreenTags
Posted on 1-Oct-2014 16:21:31
#17 ]
Elite Member
Joined: 6-May-2007
Posts: 11230
From: Greensborough, Australia

@Nibunnoichi

I imported some Amiga code recently and had to do the .c and .h files seperately and in each source directory. I also found that the included makefiles needed to be modifed as the whole code would not all compile in one go. But that is the way the author organised it. It took a little work to import it all into CodeBench for use.

I first got trouble when I tried to import all the Stratagus files into CodeBench. They changed the build system to CMake and the OS4 port of CMake can't generate working files out of the box to compile. As well as CMake replacing each compile line with a CMake call that slows down compilation considerably. So wanted CodeBench to load it all in and to generate a standard makefile. At first it seemed to be going well, but there were too many files, and CoeBench just crashed in the end. I know how to stress it out.

 Status: Offline
Profile     Report this post  
Vanhapolle 
Re: AmigaOS4.1 coding for example OpenScreenTags
Posted on 14-Oct-2014 4:48:54
#18 ]
Regular Member
Joined: 22-Sep-2014
Posts: 372
From: Unknown

How much i must change code if i want compile old program which used OS2.04 /OS3.9 routines. and i mean modern ones not maybe AllocVec which point is nice but generally i think basic memory allocation routines work fine my needs. of course AllocVec type rountines helps coding...

 Status: Offline
Profile     Report this post  
NutsAboutAmiga 
Re: AmigaOS4.1 coding for example OpenScreenTags
Posted on 14-Oct-2014 12:19:32
#19 ]
Elite Member
Joined: 9-Jun-2004
Posts: 12825
From: Norway

@Vanhapolle

That will depend on the state of the code, for example you should not code for AGA screen modes on AmigaOS4, you could but they will not be 320x256, all fake AGA modes are all 640x480, so you most depends on BytesPerRow form the Bitmap lock, do not assume you know it.

You could use the old 32bit api for DOS.library to read directory, but its better to use 64bit API to read directory’s to get correct filesize right.

You could allocate structs your self, but its better to use AllocSysObjects() and AllocDosObjects(), to tell AmigaOS what the structs are for.

You could compile your program with -D__USE_INLINE__ so that you don't need to add IExec -> and IDOS -> in front of the commands, or you could add that if you like.

You could compile your program with -lauto so you don't need to open the libraries, or you could open the librarys your self, but then you need to obtain the interface "main" from etch lib.

There is also small change for struct TimeVal, there is a compiler switch (define), don't remember the name of the define. So you can use the old struct TimeVal, if you need to.

Anything that try’s to access hardware direct wont work on AmigaONE/Sam computers, this you most rewrite.

Anything that reads or writes from devices using CMD_READ and CMD_WRITE, should be replaced by NSD equvalent commands.

If you wont to keep things backwords compatible you need to add #ifdef #else #endif or can split the code into .o files, so that only parts of code separated and other parts are shared between the two versions.

I don't think there is anything more to add.

Oh yes, keep in mind that font sizes are bigger on AmigaOS 4.x then on AmigaOS 3.x, anything that use static coordinate system like GadTools can easily look ugly. There for I recommend using MUI or Reaction as GUI's.

Last edited by NutsAboutAmiga on 14-Oct-2014 at 11:08 PM.
Last edited by NutsAboutAmiga on 14-Oct-2014 at 12:23 PM.
Last edited by NutsAboutAmiga on 14-Oct-2014 at 12:22 PM.
Last edited by NutsAboutAmiga on 14-Oct-2014 at 12:21 PM.

_________________
http://lifeofliveforit.blogspot.no/
Facebook::LiveForIt Software for AmigaOS

 Status: Offline
Profile     Report this post  
Hypex 
Re: AmigaOS4.1 coding for example OpenScreenTags
Posted on 14-Oct-2014 14:30:30
#20 ]
Elite Member
Joined: 6-May-2007
Posts: 11230
From: Greensborough, Australia

@NutsAboutAmiga

GadTools if fine if you use it to render a font sensitive GUI. I've done it myself, just open the system set font and use that to calculate buttons, which all programers should save been doing as it's easier to manage. Unfortunately this stuffs up when people use Topaz 8 for the GUI

GadTools also have the benefit of being cross compatible on all Amiga platforms. From AmigaOS2 and above to the extents of MorphOS. Depends on your needs.

Of course if Commodore included a layout engine for GdTools it would have helped.

Last edited by Hypex on 14-Oct-2014 at 02:31 PM.

 Status: Offline
Profile     Report this post  
Goto page ( 1 | 2 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