Download Amiga E modules
I've written some interesting and varied reusable modules for the Amiga E language. There are many, but the most interesting modules are:
- args allows you to support Workbench's option system (tooltypes) by using the shell's usual ReadArgs() option system.
- debug allows you to print to the Amiga's standard debugging terminal on the serial or parallel ports.
- hex parses strings with hexidecimal numbers in them into actual numbers. The method used is incredibly short and quick, and is written in assembler.
- keypress allows you to 'ghost press' keys on the keyboard, through software alone.
- loadfile allows you to load files (including compressed files), and allows you to save files.
- makedir creates a directory and all its parent directories, if they don't exist. This is like mkdir -p.
- paths allows you to copy command paths. This basically allows you to run programs from Workbench-launched applications in the same way they would be launched from the shell.
- segtracker allows you to look up an address, to see where it belongs in a loaded program.
- stealchip allows you to read areas of memory that are actually protected by the MMU.
Download Amiga E objects
I've also written some interesting classes using Amiga E. E is both procedural and object oriented. Sometimes one approach is better than the other.
- bitfield is a full-featured representation of a bitfield. It provides individual bit operations and testing, bitfield range operations (with AND-combined and OR-combined test results), combination of bitfields with AND, OR, XOR or just copy, and optional raising of exceptions on range errors.
- catalog is a very simple and powerful way to use localization catalogs in programs, using the object form to make it much easier to use more than one catalog.
- cdplayer is an object-oriented interface to the standard cd.device. It allows you to play audio CDs.
- patch is a very powerful way to install E functions as patches over operating system functions. Once again, the object-oriented system allows us to hide the messy internal details, and present a simple interface to the programmer. An example program is given which reverses the responses to system requesters (i.e. 'lecnaC / erongI / yrteR').
- rexxstate controls the internal workings of the Amiga's ARexx interpreter.