1
0
mirror of https://frontier.innolan.net/github/AmigaExamples.git synced 2025-12-06 19:45:07 +00:00

(re)Learning how to program an Amiga after a 20 year break

introduction

This repo is not meant to be an amiga programming guide. I don't do things the "correct" way (especially in the early examples).

I do however try to show exactly what is going on in each example. Wherever possible I try and use constants from the OS includes instead of magic custom addresses and numbers etc.

Where possible I will try and write development system programs that show how data is created/converted.

documentation

Most of the sites I have used during the learning process:

cross development environment

These examples are developed on a mac using cahirwpz's AmigaOS cross compiler for Linux / MacOSX / Windows.

https://github.com/cahirwpz/amigaos-cross-toolchain

The support tools I have developed have additional requirements which you may not have on your system.

For a dump of what I did to install them see installing the cross development environment

building

Build all examples by running make at the top level directory.

Each example will have an ADF file in it's bin directory. These files can be loaded directly as DF0: on FS-UAE or Scripted Amiga Emulator using the AROS ROM.

Invdivual examples can be built by entering the directory and running make:

# cd 001.simple_image
# make

tools

The following tools have been developed to support the examples:

Each tool has a test to check if any changes you have made have broken basic functionality:

# cd tools/imagecon
# make test
______  ___   _____ _____ ___________
| ___ \/ _ \ /  ___/  ___|  ___|  _  \
| |_/ / /_\ \\ `--.\ `--.| |__ | | | |
|  __/|  _  | `--. \`--. \  __|| | | |
| |   | | | |/\__/ /\__/ / |___| |/ /
\_|   \_| |_/\____/\____/\____/|___/
#

or test all by running make test at the top level

license

Some of the code I have included in this repository is copyright by various authors and provided under various licenses. Copyright notices are preseved where possible.

Some of the tools use GPL licensed libraries which would mean they could only be distributed under the conditions of the respective version of the GPL.

All code without a copyright notice is probably in the public domain.

Description
Amiga programming examples
Readme 233 MiB
Languages
Assembly 83.7%
C 9.8%
Makefile 6.2%
SWIG 0.3%