Start programming - The totally free way
A lot of people would like to try to program in C/C++ for the Amiga platform and the AmigaOS 4.x, but they do not know where to start. It is not difficult to begin writing your first program, but you have to know what you need and which applications are there that could help you.
Every platform has very good and useful applications that cost some money. There are also applications that are totally free, which can help you at your first steps in programming. I’m going to show you the totally free way to start, by recommending applications that I use.
The programs you will need are the following:
- An Integrated Development Environment (IDE)
- The AmigaOS 4.x Software Development Kit (SDK)
- A Graphical User Interface (GUI) Builder
- An Autodoc reader
So what are those programs and which one could do the job without spending money?
Integrated Development Environment (IDE)
An integrated development environment (IDE) is a software application that provides comprehensive facilities to computer programmers for software development. Most of the times an IDE has:
- an editor, where you can write your sources,
- it can use available compilers to compile your sources,
- a way to manage your projects,
- a debugger
For our system there is a very good program that we can use as an IDE, and this is the Codebench, programmed by Simon Archer. With Codebench you can start a project and append in it your already created files or create new ones. Unfortunately, in the free version you can have only one project open, but that’s not a big problem in my opinion.
The Codebench has a very good editor, with syntax highlighting, line numbering and a Tab functionality that helps you having multi files open at the same time. It is really fast on scrolling and the feeling of a complete editor is what made me choose it. You can download it from Codebench official site.
Software Development Kit (SDK)
The Software Development Kit is typically a set of development tools that allows for the creation of applications for a certain software package, software framework, hardware platform, computer system, video game console, operating system, or similar platform. It is a set of programs, libraries, documentations and examples that are totally important to start programming for any platform.
The AmigaOS 4.x SDK can be downloaded for free, from the website of Hyperion Entertainment. I recommend to download the latest version which includes the following:
- the GNU C/C++ compiler, commonly known as gcc version 4.2.4,
- documentation files and Autodocs
- example sources,
- system-level include files
- and many other files that might be needed
The SDK should be the first thing that you should install in your system. The installation is really simple and fast to complete.
Graphical User Interface (GUI) Builder
The Graphical User Interface (GUI) is a type of user interface that allows users to interact with programs in more ways than typing with images rather than text commands. A GUI offers graphical icons, and visual indicators, as opposed to text-based interfaces, typed command labels or text navigation to fully represent the information and actions available to a user. The actions are usually performed through direct manipulation of the graphical elements. The GUI is not necessary if you want to create a program that runs totally from the Shell.
A GUI Builder helps users to create such interfaces in a faster and easier way without the need to write any code. Those programs often are complicated and need some time to learn how to use them, but when you do you can minimize the necessary time to create a GUI interface for a new program you create.
For this job I choose the fine, but a little bit old, Emperor, originally created by Matthias Gietzelt. Vicente Gimeno continued it’s development and created the OS4 version, which you can find at OS4Depot. Emperor can help you create your programs from the scratch, were you can config:
- Screens and windows
- Reaction gadgets
- Locale catalogs
- Function macros and install scripts
- Set tooltypes, includes and libraries that your program will use
- Declare variables
- and many more
With Emperor you can see in almost real time the results of what you are creating, and make changes at every single object. You can save and load your projects, but you can have only one open. The result of your work will be generated in C/C++ source code which can be compiled by an external compiler like gcc. The Emperor creates a few files which include different things. When you get familiar with them, you will know were everything is saved and you can find them really fast.
The autodoc reader is an application that helps developers to explore into the Autodoc files and find the necessary information they need in a faster and easier way. I recommend the fine freeware version of SDK Browser, created by BITbyBIT Software Group LLC (www.bitbybitsoftwaregroup.com) and Jamie Krueger. You can download it from their site and use it right away. When you start SDK Browser, it finds the Autodoc files inside the SDK folder and creates the lists with all the available libraries, commands and autodocs information. It also has a file browser that helps you to find and see any text or code files you like.
SDK Browser also has a very good search engine that could find anything you want inside autodocs or the whole SDK installation. It can even search inside the currently open file or the text files of a folder which you opened in the file browser.
When you open a file and then another one, SDK Browser keeps a history list that helps you to jump from one file to an other instantly. This is a very useful feature because you don’t have to search again and again for something that you already found before.
So, if you want to start creating a small or big application for AmigaOS 4.x, or just try out a few sources, and you don’t want to spend money on that, you know now that there are the above applications that could help you. Go on, download them and develop for your beloved OS.
It’s time for all of us to get creative. Submitted by walkero on Sat, 2010-12-18 00:17