Copyright (c) Hyperion Entertainment and contributors.

AmigaOS Apps Development

From AmigaOS Documentation Wiki
Revision as of 00:26, 20 April 2019 by Ray Sbaitso (talk | contribs)
Jump to navigation Jump to search

If you are interested in developing applications for AmigaOS please note that the Developer Section contains documentation that is useful for developing applications, device drivers, games and other programming projects on AmigaOS. The Tutorial Section contains a couple of hands-on tutorials that are intended to allow beginning developers to get into programming with step-by-step examples. Finally, the Autodocs section contains the well-known autodocs, function-by-function documentation of libraries and devices in the AmigaOS system.

The following is a sampling of software development applications that may assist with development for AmigaOS.

Disclaimer

The following list of applications, with the exception of the official AmigaOS Software Development Kit, is neither endorsed by nor supported by Hyperion Entertainment. This list is strictly informational only.

Amiga Image Storage System AISS

The Amiga Image Storage System AISS is an environment to store, access and maintain toolbar images. This can also be used in conjunction with AISS Viewer to easily locate and reference resources into development projects.

Amiga Image Storage System AISS OS4Depot webpage

AISS Viewer OS4Depot webpage

AmigaOS Software Development Kit

The official AmigaOS Software Development Kit contains everything needed to get started writing native applications for AmigaOS.

AmigaOS Software Development Kit download from Hyperion Entertainment

CodeBench

CodeBench is an Integrated Development Environment (IDE).

Designed purely for use on the latest version of AmigaOS, CodeBench is a management system that is modular to allow adaptation to various programming languages.

The tabbed editor allowing multiple files to be open at any one time. Syntax highlighting and all the usual functions are included: Cut, Copy, Paste, Undo, Find, Replace, Indent etc. Blocks of pre-built code can also be inserted as well as handling highlighted blocks. Also supports color " themes" for familiarity.

Utilising a 'project' based system, all files are grouped together by type and are easily accessible from the Project Window. Editing is a simple matter of selecting the required file and it is opened in the built-in editor. Creating the finished article from the project is a one click event from the toolbar.

CodeBench webpage

Cubic IDE

The central component of Cubic IDE is GoldED, a fully-featured developers editor for selected versions of AmigaOS. Cubic IDE includes the Installation Wizard, an AmigaGuide authoring mode, LISP and Rexx support packages, the HTML editing environment Webworld and various other add-ons. Together, they form a set of tools for all steps of your development process, from writing source codes and installations over documentation to creation of a web site for your final product.

The editor offers all functions you can expect from a modern program.

  • Unlimited undo and redo, configurable syntax highlighting, templates, folding, automatic backups, macro recording and extensive rexx support.
  • Single document interface and multiple document interface (all texts in one window)
  • Advanced layout and block functions.
  • Very high speed
  • Optional input aids including context-sensitive completion and automatic case correction.
  • Plug-In interface
  • Support for encryption
  • Spellchecking

All aspects of the Cubic IDE interface are configurable: fonts, colors, toolbars, menus, mouse, etc. Tabbed dialogs simplify the configuration. The software can handle an unlimited number of open screens and windows. Background processes like printing are multithreaded and do not block the user interface. The editor recognizes file types and automatically adjusts the editing environment. For example, the menu will show compiler-specific functions after loading a C source code.

Cubic IDE seamlessly integrates with SAS/C, vbcc, gcc and the StormC3 development environment.

  • Free C/C++ compiler and software development kit included for your convenience for AmigaOS.
  • Revised online version of "The C Book" included for C beginners.
  • Configurable references system for includes, source codes and other material helps you with finding information quickly.
  • The QuickInfo function constantly shows information related to the word under the cursor (e.g. parameters of OS functions).
  • Source level debugger support for StormC3 users (breakpoints are displayed next to the text).
  • The editor automatically highlights matching brackets.
  • Symbol browser lists all functions, structures, labels etc. defined in your source codes.
  • Built-in grep support allows you to search patterns in a list of files.

Cubic IDE webpage

Debug 101

Debug 101 is a source debugger for AmigaOS. It contains many of the features found in other debuggers like GDB as well as a ReAction GUI.

Debug 101 OS4Depot webpage

GNU Compiler Collection GCC

GCC is available for AmigaOS development. The adtools project is the Amiga development tools project that hosts a number of tools that can be used to develop applications for AmigaOS.

adtools webpage

Hollywood

Hollywood is a multimedia-oriented programming language that can be used to create graphical applications very easily. It was designed with the paradigm to make software creation as easy as possible in mind. Thus, Hollywood is suited for beginners and advanced users alike. Hollywood comes with an extensive function library (encompassing over 800 different commands) that simplifies the creation of games, presentations, and applications, to a great extent. Having been in development since 2002 it is a very mature and stable software package today.

One of the highlights of Hollywood is its inbuilt cross-compiler which can be used to deploy software on many different platforms without having to change a single line of the code. The cross-compiler can compile for all platforms from any platform Hollywood is running on. For instance, you can compile macOS application bundles using the Windows version of Hollywood. There is even an optional add-on that can convert Hollywood applets into stand-alone APKs for release on Android! Android development has never been so easy!

Hollywood is a light-weight, but still powerful programming language whose core is just about two megabytes in size and does not require any external components. Hence, it is ideal for creating programs which run right out of the box. In fact, Hollywood programs will run perfectly from an USB flash drive without any prior installation whatsoever.

Platform architectures currently supported include AmigaOS, Android, iOS, MacOS, Windows, Linux and more.

Hollywood webpage

NoWinED

NoWinED is a MUI-based TextEditor that can handle more files simultaneously, using different "pages" for each file. The fact that it is impossible to find a MUI TextEditor on Amiga powerful enough to be used instead of Notepad/Editpad and other editors does not have a reason.

Features:

  • Handling of multiple files through tabs that can be managed via titleButtons, a list, and/or an useful context menu which you can open if you click with right mouse button on right scroll titlebutton (this one appears when it's necessary)
  • Context menus
  • Search and replace module
  • Search into opened files module
  • File Drag & Drop: dragging one or more files on the NoWinED list the files will be opened in new tabs, dragging a file on a page will open it on the current page. Finally dragging more files on a tab will open the first file in the current tab, and the others in new pages (AROS lacks Drag & Drop)
  • Basic texteditor features (C&P, select all, Undo, Redo, etc...).
  • Usage from keyboard supported
  • UTF support (you can load UTF files and export UTF with/without BOM or ASCII)
  • CR/LF/CR+LF support (you can load any kind of txt file and export text with LF/CR/CR+LF)
  • Wrapping process of your text at the column you want
  • Backup of all opened files (you can set time between a backup process and another one)
  • AutoSave of current file (you can set time between a autosave process and another one)
  • Programmable Fn keys with independent profiles
  • Graphic printout

NoWinED webpage

PortablE

PortablE is a recreation of the AmigaE programming language, along with many improvements, and the aim of being portable across many platforms.

PortableE webpage

ProAction

A powerful interface between any Arexx enabled scripting language and the AmigaOS ReAction GUI system. ProAction provides GUIs for script writers, using a unique "dual ARexx Port" approach. ProAction itself is an ARexx host which provides functions for building and managing the GUI, then GUI events are sent as commands to an ARexx port managed by the script.

It can be used from any language that can support an ARexx host. (ARexx (with rexxsupport.libray) python via arexx.so etc etc)

ProAction webpage

SDK Browser

The SDK Browser provides any Amiga Programmer a quick reference tool into the live AmigaOS Software Development Kit installation on your Amiga, via a 100% graphical (GUI) based tool. It can help you find the format (prototype) for any AmigaOS4.x system call as well as lookup a specific structure reference, method, tag item, what-have-you, quicker than any other tool. Or, you can simply use it as a great way to wander through the AmigaOS4.x development documentation (AutoDocs, Includes, etc.) to learn more about how to program for this great machine and its powerful operating system. There is a great deal of (largely untapped) power available with the "standard" OS if you only know where to look.

Features include:

  • Fully multitasking search bar with start/stop and pause/resume. File pattern filter added to search bar, and maintained separately for each search type. Interact with results as they are found, or continue to use all other parts of the SDK Browser as the search continues in the background. Search will continue even when hidden or iconified, and is controllable from the commodity exchange as well.
  • History Bar. Quickly return to any of the last 20 items that have been viewed previously. Browse forward or back with the arrow buttons, or pull down and select a new position within the browser history. The history bar works like a combination of a web browser forward and back buttons and a rotating 20 item tabbed display. Giving you the flexibility to quickly work with the last 20 items that have been referenced already.
  • Support for more than one interface(API) found within the same library. If the XML file for a given library contains more than one interface for accessing that library, then the SDK Browser will create a new browsable Library tree for each interface and name them with their respective interface name. This is also why the Interface name was added to each library entry under the Library list.
  • Faster than ever before using newly optimized viewing routines and less disk access.
  • Function calls under "Commands" or an open view of any "Library" now displays just the description of the function call within the AutoDoc instead of displaying the entire AutoDoc and attempting to search for the start of the description. This makes for a cleaner an easier to read display, while the entire AutoDoc file is still instantly available by selecting the Library name itself, or browsing the "AutoDocs" directly.
  • Quick find ANY item in the active list just by typing the first few letters of its name.
  • New "Includes" browsing. Live browse the system includes using the new embedded directory scanner.
  • Convenient "Send To" menu for launching a helpful set of external viewers right from the SDK Browser. Quickly open source files into the editor of your choice, or open HTML files directly into your web browser of choice. You can also launch the currently selected file with "MultiView", "AmiPDF", or even "Unarc" those archives.
  • Improved interface handles all Library, Commands, AutoDocs, and Includes browsing under the "SDK" clicktab, while also giving the user a "Project" tab and directory scan lister for browsing their own project source or any where you need to, quickly and easily from one tool.
  • Extensive keyboard controls to enhance the existing "mouse-over" focused movement keys and "mouse-wheel" support.
  • Programmable SDK and search paths.
  • Programmable EDITOR and WEBBROWSER tooltypes for use by the "Send To" menu.

SDK Browser webpage

vbcc

vbcc is a highly optimizing portable and retargetable ISO C compiler available for AmigaOS. It supports ISO C according to ISO/IEC 9899:1989 and a subset of the new standard ISO/IEC 9899:1999 (C99).

vbcc webpage