I've been an Amiga user for so many years. I bought the faithful copy of AmigaWorld #1, it seems like yesterday. I've done about all I can do. Even became an Amiga Video Toaster developer using GUI/FX building tools. Now I'm ready for my final Amiga frontier. I don't know why I did not do it sooner. I want to learn Amiga programming in C. I'm ready for the long learning journey and have some great ideas. Where should I start my quest? Books, websites? Anyone have some suggestions please? How long will this journey take?
Forever. And depends on what kind of person you are, what kind of motivation you have and what kind of life you have, how much of time you want to spend on and co. Basics are easy, but with basics you can do nothing most of time.
I want to learn Amiga programming in C. I'm ready for the long learning journey and have some great ideas. Where should I start my quest? Books, websites? Anyone have some suggestions please?
Get a "C for dummies"-type book and start learning the language. Setup a development environment on your computer: download and install the OS4 SDK package from Hyperion's website, then get CodeBench (free download from http://www.codebench.co.uk). Browse through the examples in the SDK to get you an idea of what AmigaOS program code looks like. Register at www.os4coding.net to get advice from more experienced programmers. Bookmark the AmigaOS Documentation Wiki (wiki.amigaos.net) for the most complete Amiga programmer's reference material. Be patient and willing to learn. Most importantly: have fun!
Quote:
How long will this journey take?
Learning C is easy, I've more-or-less mastered the language in a week or so. The hardest part is the AmigaOS API: the individual system components (libraries etc.) containing the functions you'll need to use. This could take a couple of years to get a good grasp of.
Expect it to take a little time. Don;t over estimate what you can do at once...but just learn C and enjoy it as you go, otherwise you will find yourself frustrated and giving up! Get a simple "C for dummies" book with lots of examples. Set up the OS4 SDK etc as per Trixie's advice. Beware, right from the start there may be an issue or two....setting up the correct libraries etc. It often happens. Be persistent. Be patient. And most of all, HAVE FUN!
Why are you posting such a phony bit of tripe? Being that you're already a developer of Amiga software you're already well acquainted with the tools necessary for Amiga development as well as the web sites out there that support Amigans.
The algorithms are merely the interesting bit in the middle. Most of the code relies on the interfaces to the outside world - how you get input from the user running AmigaOS, how you talk back to him/her.
Then there are the problems associated with trying to read stuff from disk, how to write it back. That's the stuff that is not written in any textbook, because it's unique the operating system you are using.
Once you get to that stage, you have all the Amiga documentation on the wiki. Some of it is still old, but it's gradually being replaced with up-to-date versions.
My role today is more of a Project Manager/CEO. I don't do any coding, software projects are assigned to contractors and that has come back to bit me in the ass sometimes. I want to learn to be a coder and think it will help me long term. Today when a project goes off track I feel kind of powerless since I can't code to get it back on track or even understand what work has been done by doing a code review. This puts me in an uncomfortable position I don't want to be in.
@Elwood IMHO, PortablE's GUI system is about as close to "Just make a window, add buttons and then put commands to the buttons" as it can be (example here), without limiting you to a set of infexible templates (as typically happens with Rapid Application Development tools).
edit: I guess that Dirk-B was asking for a kind of "visual programming"... I don't believe in that for many reasons.
Edited by ChrisH on 2013/7/30 9:17:00 Edited by ChrisH on 2013/7/30 9:18:48
Dirk-B wrote: Programming should be made as simple as putting a command in a dopus button. Just make a window, add buttons and then put commands to the buttons.