8000 GitHub - keirf/amiga-stuff
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

keirf/amiga-stuff

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
< 8000 svg aria-hidden="true" focusable="false" class="octicon octicon-file-directory-fill icon-directory" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom">
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Amiga Stuff: Code & Tools for Amigas

Amiga Test Kit

CI Badge Downloads Badge Version Badge

Download the latest release of Amiga Test Kit here (Github).

Build From Source (Docker)

A Docker image has kindly been supplied (Docker Hub). You can run it as follows to generate the latest Amiga Test Kit zip file in your current directory:

docker run -v $(pwd):/output --rm -ti rjnorthrow/atk:latest

Build From Source (Manual Method)

This is as simple as make all when all prerequisites are installed. The ADF and distribution ZIP file will then be in the testkit/ folder.

Build Prerequisites

Pick a location to install your locally-built toolchains, and make sure it is on your PATH. For example:

mkdir -p $HOME/install/bin
export PATH=$PATH:$HOME/install/bin

1. m68k-elf toolchain

I recommend binutils-2.34 and gcc-9.3.0, or newer, built with the following configuration lines on a Linux host or VM. Note these are not exhaustive toolchain build instructions, as GCC itself has a large number of prerequisites. You can use the .github/workflow scripts for further hints.

../binutils-2.34/configure --prefix=/path/to/install --target=m68k-elf
../gcc-9.3.0/configure --prefix=/path/to/install --target=m68k-elf --enable-languages=c --disable-libssp

On macOS you can instead straightforwardly install from Homebrew:

brew install m68k-elf-gcc

2. m68k-amigaos toolchain

Clone, build and install bebbo's amiga-gcc toolchain (GitHub). Please follow the README instructions very carefully. This is especially important if building on macOS, where careful use of Homebrew-installed tools (including bison!) is required to avoid cryptic build failures.

3. Zopfli

Google's Zopfli is a gzip replacement. It can be installed using your OS package manager, for example apt (Ubuntu) or brew (macOS).

4. amitools/xdftool

This is a Python package which can be installed using pip or pipx. For example:

pipx install amitools

Summary

This is a selection of code that I will add to over time. There are three main file types, distinguished by suffix:

  • .S CPP + GAS assembler syntax (for cross-dev environments)
  • .asm Amiga native asm syntax (Devpac, AsmOne, PhxAss, vasm, Barfly, ...)
  • .c Somewhat-portable C (I will gladly take patches to make the C code work outside a GCC/POSIX environment).

All code is public domain (see the COPYING file).

File Descriptions

For detailed build and usage instructions, see file header comments and run-time help info.

  • base/ GNU build rules, initialisation code, utility code and headers.

  • testkit/ Amiga Test Kit, built as a Workbench/CLI executable and as a bootable disk image.

  • host_tools/kickconv Convert Kickstart ROM images: byte-swap, word-split, decrypt, fix checksums. Especially useful for creating images for burning to EPROM.

  • attic/crc16_ccitt.S Table-driven CRC16-CCITT implementation.

  • inflate/degzip_{gnu,portable}.c Analyse gzip files, extract and write out their raw Deflate streams (can then be processed by inflate, see below). Original version for GNU/Linux, and portable version fixed by phx / EAB.

  • inflate/inflate.{S,asm} Small and efficient implementation of Inflate, as specified in RFC 1951 "DEFLATE Compressed Data Format Specification".

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 6

0