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
21 crawler(s) on-line.
 142 guest(s) on-line.
 0 member(s) on-line.



You are an anonymous user.
Register Now!
 zipper:  7 mins ago
 Hammer:  16 mins ago
 Birbo:  31 mins ago
 amigakit:  1 hr 3 mins ago
 MarcioD:  1 hr 26 mins ago
 kolla:  1 hr 34 mins ago
 matthey:  1 hr 41 mins ago
 NancyNash:  1 hr 56 mins ago
 agami:  2 hrs 25 mins ago
 Hypex:  2 hrs 42 mins ago

/  Forum Index
   /  Amiga Development
      /  What's in the way of you writing/porting software?
Register To Post

Goto page ( Previous Page 1 | 2 | 3 | 4 | 5 | 6 Next Page )
PosterThread
billt 
Re: What's in the way of you writing/porting software?
Posted on 28-Jun-2018 0:43:32
#21 ]
Elite Member
Joined: 24-Oct-2003
Posts: 3205
From: Maryland, USA

@simplex

Quote:
C is for most purposes the worst choice of language to use. It's terribly unsafe and outdated;


Reasonably true. But, it's also what OSes have been programmed in for ever. C was invented for the purpose of writing Unix... Our driver APIs are C. Our libraries are largely C. Much f makin gnew libraries etc. is to be in C. It's what our OS APIs are. So very hard to avoid C. I'd actually like to learn how to update to C++ in AmigaOS land, and go beyond the small but of C++ that I was forced into for an embedded systems project using Arduino, which is an odd combination of C++ and "Almost C".

I'd love a reason to learn Rust. It sounds like the one modern language that one can use for embedded programming, hitting the metal, and thus writing drivers in. (I'm also looking for a reason to learn Pyhon, and have started toying with Java small amount)

Now... I understand that Rust exists for PowerPC. Who is going to Amiga-ify it?

_________________
All glory to the Hypnotoad!

 Status: Offline
Profile     Report this post  
Hans 
Re: What's in the way of you writing/porting software?
Posted on 28-Jun-2018 2:42:52
#22 ]
Elite Member
Joined: 27-Dec-2003
Posts: 5067
From: New Zealand

@all

Looking through the responses so far, the most common factor by far is lack of time. Difficulty getting started (setting up the dev environment, learning the APIs) seems to be second, although that's pretty much due to a lack of time too. The other items are all over the place (e.g., people's programming language preferences).

While we can't do anything about people's limited time, there are things that could be done to allow people to do more with that limited time. That means things like:
- Easy to set up dev. environments
- Better dev. tools (e.g., I'd love to have an IDE with a fully working debugger)
- Libraries/middleware (such as?)
- Tutorials (what tutorials are needed most?)
- More documentation (which parts of the system are missing docs?)

Anything that allows people to get results with less time & effort would help.

In theory getting started on AmigaOS 4 should be relatively easy because the SDK comes with all the basics: compiler, includes, examples, docs. What are people's experiences with getting set up?

Hans

_________________
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  
Hans 
Re: What's in the way of you writing/porting software?
Posted on 28-Jun-2018 2:49:37
#23 ]
Elite Member
Joined: 27-Dec-2003
Posts: 5067
From: New Zealand

@Karlos

Quote:

Karlos wrote:
@Hans

A thread safe compiler and toolchain would be nice. That broke all my old 3.x code that made use of C++ and AmigaOS Tasks/Processes. In 3.x with StormGCC linking against threadsafe.lib ensured that this was safe and predictable. In 4.x/GCC none of this worked.

There might be some progress on that front. There's an experimental GCC 8 with support for C++11 threads. That can only work if there's a thread-safe C++ stdlib.

Quote:
I also rely on cross compiling but it seems that C++ code generated by the cross compiler just doesn't link. C code is fine, however. I should mention that this is with a cross compiler that is likely out of date by now.

I have C++ code building using a cross-compiler built by following these instructions. Wish there was an easier way to set it up, but at least it works.


@billt
Quote:

billt wrote:
I was under the impression that one could ask for the modern graphic driver API/dev kit some time back, but I never got a response...

Sorry to hear that. It took a while for me to get access. You could always try again.
NOTE: The API is still the Picasso96 one, although it's been extended a bit with compositing, DDC, etc.

Hans

_________________
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  
ferrels 
Re: What's in the way of you writing/porting software?
Posted on 28-Jun-2018 3:23:20
#24 ]
Cult Member
Joined: 20-Oct-2005
Posts: 922
From: Arizona

@Hans

All this talk of tools and what can be done to make OS4 development easier for coders is useless without a customer base willing to pay for apps and to provide an incentive for programmers to take up a coding challenge in the first place. Altruism doesn't drive businesses nor does it drive application development. You of all people should know this better than most of us here, unless of course you're willing to continue your graphics driver development efforts free of charge.

In times past there have been attempts to drive application development via money (Timberwolf, etc..) but these attempts were so abused/mismanaged that almost no one left in the community will consider donating further. As a developer who has bills to pay, there's no way that I will drop what I'm doing in the PC world to write OS4 apps that have no promise of a pay off. That would be financial suicide.

Even if someone comes up with a "Visual Studio" for OS4, no developer is going to drop what they're doing and develop an office suite or decent web browser for this platform, and those are the things which OS4 most sorely lacks. The return on the developer's investment just wouldn't make it worth his while, so OS4 will continue to hobble along as it has since its inception back in 2003. There has to be a consumer base willing to pay the dev costs, plain and simple. The Amiga's ship sailed long ago and nothing short of a total collapse of Intel, Apple AND Microsoft will change the current situation. Amiga's have been relegated to hobbyist status along with several other operating systems that showed promise in the 1990's and that's where they'll stay.

 Status: Offline
Profile     Report this post  
kamelito 
Re: What's in the way of you writing/porting software?
Posted on 28-Jun-2018 6:54:40
#25 ]
Cult Member
Joined: 26-Jul-2004
Posts: 815
From: Unknown

@Hans

in comparison, the Morphos team provided Flow Studio, MUi and Objective C with some frameworks to reduce development time for applications. A bit like NextStep/OSX.

 Status: Offline
Profile     Report this post  
broadblues 
Re: What's in the way of you writing/porting software?
Posted on 28-Jun-2018 9:11:19
#26 ]
Amiga Developer Team
Joined: 20-Jul-2004
Posts: 4446
From: Portsmouth England

@simplex

Quote:

By "safer", I mean that in most cases you can avoid pretty simple stack and pointer errors that are considered "features" of C, such as a function that returns a pointer but the programmer forgets to include a return statement. A hard-to-debug BOOM occurs when you try to assign the result.


-Wall -Werror will get that instantly. Never compile anything without those two options set.

[edit]
with =>without!

Last edited by broadblues on 28-Jun-2018 at 09:42 AM.

_________________
BroadBlues On Blues BroadBlues On Amiga Walker Broad

 Status: Offline
Profile     Report this post  
simplex 
Re: What's in the way of you writing/porting software?
Posted on 28-Jun-2018 9:20:21
#27 ]
Cult Member
Joined: 5-Oct-2003
Posts: 896
From: Hattiesburg, MS

@billt

Quote:
Reasonably true. But, it's also what OSes have been programmed in for ever. C was invented for the purpose of writing Unix... Our driver APIs are C. Our libraries are largely C. Much f makin gnew libraries etc. is to be in C. It's what our OS APIs are. So very hard to avoid C.

One cannot avoid C entirely without rewriting just about every OS in the world; I agree. However, most modern languages I know of have a foreign function interface that interacts natively with C. In the Nim community, for instance, they've repackaged more C libraries than you can shake a stick at. The result is equivalent execution time and much, much faster compilation time (because Nim uses true modules, rather than including & compiling header files every blasted time they're needed).

It's a bit like saying you can't program in Modula-2 on Amiga because Amiga's OS and API's are in C. That argument doesn't hold because most every Modula-2 compiler I've seen already provides an interface to the API's.

As such, there is no sensible reason to make C the ordinary programming interface.

_________________
I've decided to follow an awful lot of people I respect and leave AmigaWorld. If for some reason you want to talk to me, it shouldn't take much effort to find me.

 Status: Offline
Profile     Report this post  
simplex 
Re: What's in the way of you writing/porting software?
Posted on 28-Jun-2018 9:22:38
#28 ]
Cult Member
Joined: 5-Oct-2003
Posts: 896
From: Hattiesburg, MS

@broadblues

Quote:
-Wall -Werror will get that instantly. Never compile anything with those two options set.

I guess you mean "without" those two options set. Either way, but a lot of software I have to link to either doesn't use those options or ignores all the warnings they produce.

_________________
I've decided to follow an awful lot of people I respect and leave AmigaWorld. If for some reason you want to talk to me, it shouldn't take much effort to find me.

 Status: Offline
Profile     Report this post  
broadblues 
Re: What's in the way of you writing/porting software?
Posted on 28-Jun-2018 9:47:08
#29 ]
Amiga Developer Team
Joined: 20-Jul-2004
Posts: 4446
From: Portsmouth England

@simplex

Quote:

Either way, but a lot of software I have to link to either doesn't use those options or ignores all the warnings they produce.


1. Add the options to the make file.
2. Don't use libraries that spew huge amounts of warnings they are likely not stable.
3. Specific warnings can be switched off if needed deprecated functions being the most common for porting older stuff (but I would advise creating a range of compataibilty function wrappers instead).
4. Fixing the warnings (inteligently) is part of the porting process, it's not an avoidable step.

Last edited by broadblues on 28-Jun-2018 at 09:48 AM.

_________________
BroadBlues On Blues BroadBlues On Amiga Walker Broad

 Status: Offline
Profile     Report this post  
Hans 
Re: What's in the way of you writing/porting software?
Posted on 28-Jun-2018 11:03:38
#30 ]
Elite Member
Joined: 27-Dec-2003
Posts: 5067
From: New Zealand

@ferrels

Quote:
All this talk of tools and what can be done to make OS4 development easier for coders is useless without a customer base willing to pay for apps and to provide an incentive for programmers to take up a coding challenge in the first place...

Respectfully, I disagree. It's still beneficial for those who are interested in OS4 as a hobby (and yes, they exist). Plus, hobbies get more fun the more people are involved.

It's worth it even if we only get a few more involved.

Actually, better dev tools would be worth it for existing developers like me. I also have limited time, so I'd love to have tools that allow me to deliver more in less time.

Hans

_________________
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  
simplex 
Re: What's in the way of you writing/porting software?
Posted on 28-Jun-2018 12:33:38
#31 ]
Cult Member
Joined: 5-Oct-2003
Posts: 896
From: Hattiesburg, MS

@broadblues

Quote:
Add the options to the make file.

"Plural" make files. Often hard to find and modify. You may have to learn the intricacies of automake and CMake or whatever esoteric build system the author slapped together, such as a bunch of bash scripts.

Moreover, in some cases it's one warning in a library with several hundred files. You start to build, walk away, come back, everything compiled, and the warning doesn't show up on the terminal. The error doesn't manifest in -O0, only in -O1 or higher. I ended up spending hours on that stupid bug where the author left out a return statement, and I considered myself lucky.

Quote:
Don't use libraries that spew huge amounts of warnings they are likely not stable.

It would be nice to have this option, but in many situations there's often only one place to go for certain algorithms. Telling me not to use libraries that issue thousands of warnings during compilation is basically telling me not to get work done, or at least, not within a reasonable timeframe. Sometimes I have no choice: if I just have thousands of warnings, great.

Look, I literally (according to the literal meaning of literally, no less) consider myself lucky when I don't have to use a library that links to another library that a professional (!) programmer (!!) at HP (!!!) wrote in the mid- to late 90s but no longer works because the C++ standards committee realized their language was crap and finally improved when they standardized the language in 1998, breaking a bunch of stuff that was perfectly legal up to then, but the guy who wrote the library I need was using a version of g++ (or whatever) that wasn't up-to-date at the time. I am speaking from actual experience here. I just gave up on that particular algorithm; it helped that in my use case the problems were usually small enough that I didn't need the otherwise significant speed improvement.

Quote:
Fixing the warnings (inteligently) is part of the porting process, it's not an avoidable step.

If I had to fix each of thousands of warnings, which I often do, I'd never get actual work done. Sometimes I have no idea how to fix the warnings and errors, because they're buried deep in the code; fixing one thing breaks another (really!); and the original author is no longer responsive. Even the Gnu project pumps out code that vomits warnings to the screen during compilation.

My point has been that C's design encourages bad programming, and C programmers are notorious for writing illegible and dangerous code. Stuff like

int i; scanf("%d", i);

is baked into the design. Saying, "Well, you ought to fix stuff that's shoddily written" doesn't really change that point, and basically means I will never get work done.

This is sort of like why people use Mac and Windows instead of Amiga. Sure, I could spend days, weeks, months, even years rewriting a program from scratch. Or I could, you know, get actual work done.

Last edited by simplex on 28-Jun-2018 at 12:46 PM.
Last edited by simplex on 28-Jun-2018 at 12:38 PM.

_________________
I've decided to follow an awful lot of people I respect and leave AmigaWorld. If for some reason you want to talk to me, it shouldn't take much effort to find me.

 Status: Offline
Profile     Report this post  
Karlos 
Re: What's in the way of you writing/porting software?
Posted on 28-Jun-2018 13:26:36
#32 ]
Elite Member
Joined: 24-Aug-2003
Posts: 4402
From: As-sassin-aaate! As-sassin-aaate! Ooh! We forgot the ammunition!

@Hans

I think the lack of free time is simply a product of the fact we're all hobbyists now with much bigger responsibilities vying for our time.

It's good to hear there's an updated cross compiler. I'll try to look into that as soon as I can. I can't realistically compile on mt actual machine given I'm currently rocking an A1200 ;)

_________________
Doing stupid things for fun...

 Status: Offline
Profile     Report this post  
bison 
Re: What's in the way of you writing/porting software?
Posted on 28-Jun-2018 15:55:45
#33 ]
Elite Member
Joined: 18-Dec-2007
Posts: 2112
From: N-Space

@Hans

1. Hardware. I don't own an NG Amiga. The X5000 is too expensive. I'm waiting for Tabor, although I can feel my enthusiasm waning as the months go by...

2. Time. I'm currently writing (yet another) X11 window manager, and that's taking all my time.

_________________
"Unix is supposed to fix that." -- Jay Miner

 Status: Offline
Profile     Report this post  
ferrels 
Re: What's in the way of you writing/porting software?
Posted on 28-Jun-2018 16:01:06
#34 ]
Cult Member
Joined: 20-Oct-2005
Posts: 922
From: Arizona

@Hans

Quote:
Respectfully, I disagree. It's still beneficial for those who are interested in OS4 as a hobby (and yes, they exist). Plus, hobbies get more fun the more people are involved.


Well, I do know that when the only people programming for a platform are weekend amateurs, then all you can expect, at best, are amateur quality apps. You get what you pay for.

And existing developers like you get paid for their work, amateur hobbyists don't, so you only serve to prove my point.

Last edited by ferrels on 28-Jun-2018 at 04:03 PM.

 Status: Offline
Profile     Report this post  
bison 
Re: What's in the way of you writing/porting software?
Posted on 28-Jun-2018 16:04:18
#35 ]
Elite Member
Joined: 18-Dec-2007
Posts: 2112
From: N-Space

@simplex

Quote:
C is for most purposes the worst choice of language to use.

I am terribly fond of C, especially C11, and especially in conjunction with a modern libc. The inclusion of asprintf alone narrows the chasm between Perl and C by about 30-percent. And I find that tools such as Valgrind, LSan, MSan, etc. mitigate the safety problems.

Of course C on Amiga probably doesn't have any of these things, so I might find that situation less to my liking.

Last edited by bison on 28-Jun-2018 at 04:26 PM.

_________________
"Unix is supposed to fix that." -- Jay Miner

 Status: Offline
Profile     Report this post  
bison 
Re: What's in the way of you writing/porting software?
Posted on 28-Jun-2018 16:12:27
#36 ]
Elite Member
Joined: 18-Dec-2007
Posts: 2112
From: N-Space

@broadblues

Quote:
-Wall -Werror will get that instantly. Never compile anything without those two options set.

Good advice. I'm even more cautious than that; I use -Wall -Wextra -Werror most of the time, which alerts me to things like signed-to-unsigned integer comparisons.

Addendum: if -Wsign-compare were part of -Wall in C as it is in C++ then I probably wouldn't bother with -Wextra.

Last edited by bison on 28-Jun-2018 at 04:24 PM.

_________________
"Unix is supposed to fix that." -- Jay Miner

 Status: Offline
Profile     Report this post  
Jolo 
Re: What's in the way of you writing/porting software?
Posted on 28-Jun-2018 19:19:22
#37 ]
Member
Joined: 7-Oct-2006
Posts: 30
From: Unknown

My answer would be: A simplified graphical user interface with a simple to use build program.

Look at Windows or Android; they have no font sensitive user interfaces and that makes especially the creation of GUIs very easy for inexperienced GUI programmers. Using ReAction (ClassAct) or MUI/Zune in contrast, means to fiddle around with lots of tag-lists, what in turn needs lots of code to be written and even more, a huge bunch of knowledge.

I am an old school Amiga coder and I have no problems creating software for any Amiga alike platform, although I am spending more time, as any other too, creating a GUI than writing the essential stuff.

In my humble opinion is just the complexity of GUIs of any Amiga(oid) system a huge handicap for all programmers, no matter if experienced or inexperienced.

If I wouldn't have a 30 years background in Amiga programming, I would throw in the towel as soon as the GUI exceeds two objects.

How it should be done (in my humble opinion) can be seen in Android Studio - one doesn't need to know which attributes a GUI object supports, it works out of the box, only if support for special stuff is required, one chooses them via mouse and does not enter code (unless one really wants to).

The creation of Windows' GUIs in contrast, can be almost as complex as using ReAction (ClassAct) or MUI/Zune (when using the WinAPI directly). It all depends on the chosen runtime library - and Windows offers several (MFC, .NET, etc.).

I cannot shake off the feeling that GUIs are in the foreground of all Amiga(oid) systems, rather than the program's functionality.


Someone mentioned Flow Studio, MUI and ObjC: Even with those tools at hand the creation of GUIs is terrible slow and even worse, almost practically unachievable for a newbie.


And last; I can only speak for myself, but programming languages don't play any role for me, I am using the one that I think fits best for a purpose, even it means I need to learn a new one.

 Status: Offline
Profile     Report this post  
bennymee 
Re: What's in the way of you writing/porting software?
Posted on 28-Jun-2018 20:06:10
#38 ]
Cult Member
Joined: 19-Aug-2003
Posts: 697
From: Netherlands

@ferrels

If there is 1 guy who is developing Radeon drivers for our beloved Amiga’s everything is possible;)

 Status: Offline
Profile     Report this post  
gonegahgah 
Re: What's in the way of you writing/porting software?
Posted on 28-Jun-2018 23:28:35
#39 ]
Regular Member
Joined: 5-Dec-2008
Posts: 150
From: Australia

@Hans

My obstacles would be mainly time and loss of some of my old files (when my brother's A4000 finally died in 199?) and having to sort through what I have.

Now I've moved onto other big (but foreign) ideas but can't find time for them either this year.

There are so many things that appal me about today's computer systems so that is sad for me!

 Status: Offline
Profile     Report this post  
marko 
Re: What's in the way of you writing/porting software?
Posted on 29-Jun-2018 0:33:03
#40 ]
Super Member
Joined: 17-Dec-2007
Posts: 1816
From: Gothenburg, THE front side of Sweden ;), (via Finland), EU

@Hans

Mainly two things, time and money. The time I put into my day job, pays my bills.

_________________
AmigaOS 4.1 FEu2 on Sam440ep-flex 800MHz 1GB RAM
C128, A500+, A1200, A1200/40, AmigaForever 2008+09+16, 5 x86/x64 boxes
Still waiting (or dreaming) for the Amiga revolution...
m4rko.com/AMIGA

 Status: Offline
Profile     Report this post  
Goto page ( Previous Page 1 | 2 | 3 | 4 | 5 | 6 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