Skip to content

Latest commit

 

History

History
162 lines (117 loc) · 10.7 KB

README.md

File metadata and controls

162 lines (117 loc) · 10.7 KB

My AmigaBASIC library for the Amiga 500. It contains a collection of miscellaneous small endeavours. Some of them are highlighted further below.

My larger AmigaBASIC projects have their own repositories, see:

How to Use

Put the repository into a mounted directory of an emulated A500 and run the start script (assuming that AmigaBASIC is installed in mounted Basic):

execute AmigaBASIC

You can also start using the workbench (info-files provided).

Some programs make use of my Assembly subroutines. Their sources are found here.

The diskfont.library is the only OS routine for which relative paths do not work. Hence, it is put into the src folder.

Highlights

Concentration

An early platformer-like game that test the player's dexterity (and his concentration, of course). Nine levels of increasing difficulty are provided.

Concentration_Level2 Concentration_Collision

Strategic World

An early 4x game in a time before Civilization 1. Four human players compete on a 21x21 for resources, skilled workers, and more. The only completed part is the map and the economic model.

StrategicWorld_Map
Map showing resource density
StrategicWorld_Model StrategicWorld_ModelStats
Available map lenses. Model attributes of one plot.

Modding Sid Meier's Pirates!

Have you ever dreamt of creating a mod on the original Amiga version of Sid Meier's Pirates! on the Amiga? With PiratesModCreateFork, a new mod is forked from the main game (original disk required and not part of this repository). This includes replacing the map (example for the Indian Ocean is data/PiratesMod/IndianOcean), replacing countries (e.g., Portugal instead of Spain) and resources (e.g., pepper instead of spices). PiratesModMapShow draws the mod map and PiratesModCities provides a means of editing the cities, including all their properties. Finally, PiratesModSplitter extracts only the relevant mod parts from the rez files (about 10% of the size). They are provided in data/PiratesMod/*Pirates.rez.section.

  • As a side note, the game is very finicky about the mods it is able to run and may crash at the beginning if the mod goes too far. It is advisable to steadily refine and test the mod to be sure it is runnable.
PiratesMod_MapOriginal PiratesMod_MapIndianOcean
Mesoamerican map from the original game. Mod map for the Indian Ocean.
The major rivers are even navigatable.
PiratesMod_CitiesIndianOcean
List of cities for the Indian Ocean mod.
PiratesMod_CitiesEditor PiratesMod_WelcomeIndianOcean
Available options in the cities editor. Welcome to the Indian Ocean.

Modding TV Sports Basketball

TVSportsRoster: Reads and displays the roster file tdat from the TV Sports Basketball disk or from the self-made 1993-4 NBA roster included in data/TVSports/tdat. The properties shirt number and height are read-only in the game. They can be edited by TVSportsEditorNumber and TVSportsEditorHeight.

TVSportsRoster
The Golden State Warriors in 1993-4.

TVSportsStatsEvaluator: Reads in the season statistics seasonstats.prt from the TV Sports Basketball disk, asks for the number of games played in this season (not available in the file) and calculates one aggregate "worth" value for each player, which is $$_{FGM1.4-.8FGA+TPM2.5-.8TPA+FTM-.8FTA+.6REB+ASS+1.2BLK+1.4STL-1.4TRO-.3FLS}$$

TVSportsStatsEvaluator

Mathmatics

BinomialDistributionGauss: Binomial distribution for $n=200$ and $p=.5$ which clearly approximates the normal distribution.

BinomialDistributionGauss

PerspectivePolyhedron performs linear mappings to draw an Octahedron and a Cuboid from an angle. CartesianProjection starts from the Cartesian coordinate system and draws octahedron points in perspective.

PerspectivePolyhedron CartesianProjection

PolynomialInterpolation: Performs polynomial interpolation of an arbitrary set of points that indicated by the mouse at the start.

PyramidWalkerPolynomialInterpolation

PyramidWalker: Performs linear mappings to repeatedly draw a pyramid while you change the perspective using the numpad and the arrow-up/down keys.

PyramidWalker

Physics

Boomerang: Physical engine to simulate the movement of a boomerang without friction losses.

Boomerang

Dopplerschaukel: Physical engine to simulate the movement of a swing which emits a sinus sound at 1000 hertz. This sound undergoes the Doppler effect and is voiced as if it was heard at the swing's rest position.

Dopplerschaukel

Electrostatics: Physical engine to simulate the movement of an electron in a field of one big and one small negatively loaded ball. Demonstrates that, in electrostatics, repulsion is possible whereas in gravity it is not.

Electrostatics

SpaceShipOrbit: Choose initial velocity, the planet's mass and your initial position. The physical engine to simulate the movement of your spaceship under the effect of gravity.

SpaceShipOrbit

WienFilter: Point will only move through the field to the right for exactly the provided velocity of 10,000 (Wien filter).

Computer Science

ChineseRemainder: Efficient calculation of the Chinese remainder problem for arbitrary input.

ChineseRemainder

KnuthMorrisPratt: Search for substrings in linear time by using Knuth-Morris-Pratt's algorithm.

KnuthMorrisPratt

Miscellaneous

DiskSwapPrompt: Demo for asking the user to change to floppy disk 2. Uses copper list in order to obtain scrolling color gradients.

DiskSwapPrompt

FontLoader: Shell for setting window fonts.

FontLoader

Iff2BitmapConverter: Converts IFF images to bitmap files. They can also be shown. Furthermore, Defender of the Crown's IFF images can also be extracted if the original game disk is provided. This is mostly the functionality of the special purpose Defender2BitmapConverter.

Iff2BitmapConverter

IntervalQuiz: Plays between 2 and 4 notes and you need to find their intervals.

IntervalQuiz_Options IntervalQuiz_BadGuess
The available quiz options.
Intervals beyond the octave
only occur on difficult.
Bad answers are corrected.
The intervals from the bottom-most to
the other notes are to be found.

StarSusannaDemo: Oh! Susanna with a star animation.

StarSusannaDemo

SoundtrackMaker: Tracker for sinus wave sounds.

SoundtrackMaker
Marseillaise

VideoTapeManager: Knows which video tape holds which film. In addition, film metadata like languages and country is also stored. Based on that, several search methods are provided.

VideoTapeManager_Options VideoTapeManager_SearchRun

Wahlen: Visualize election results using cutting-edge pie charts.

Wahlen_parties Wahlen_result Wahlen_pie
Predicting 2024 politics back in 1991

Wissensspektrum: Find the answer to over 130 questions taken from the board game.

Wissensspektrum_qa Wissensspektrum_ergebnis

Zeugnis: Charting tool for comparing diploma of some imaginary pupils.

Zeugnis_categories Zeugnis_chart