HippoPlayer - a module player for the classic Amiga
Assembly
Latest commit 1a8776c Jan 30, 2017 @koobo Update README.md
Permalink
Failed to load latest commit information.
Include Add more stuff Jan 30, 2017
gadgets Add more stuff Jan 30, 2017
gfx Add more stuff Jan 30, 2017
pl Add more stuff Jan 30, 2017
scopes Add more stuff Jan 30, 2017
GadEdit Start adding stuff Jan 30, 2017
GadEdit.info Start adding stuff Jan 30, 2017
LICENSE.md Add more stuff Jan 30, 2017
README.md Update README.md Jan 30, 2017
fimp_dec.bin Add more stuff Jan 30, 2017
keyfile0.s Add more stuff Jan 30, 2017
kpl Add more stuff Jan 30, 2017
kpl14.s Add more stuff Jan 30, 2017
kpl_offsets.S Add more stuff Jan 30, 2017
playergroup0.s Add more stuff Jan 30, 2017
puu016.s Add more stuff Jan 30, 2017
regtext.s Add more stuff Jan 30, 2017

README.md

HippoPlayer

This repository contains the source code for HippoPlayer, a module player for the classic Amigas with OS 1.3 or higher. Binary distribution is available here: http://aminet.net/mus/play/hippoplayer.lha

Tools used in development:

  • Amiga 1200 with kickstart 3.0, Amiga 500 with kickstart 1.3
  • ASM-One v1.28
  • fimp file compressor, available here: http://aminet.net/util/pack/imploder-4.0.lzh
  • Gadget's Editor by Stefano Crimì (included without permission)

Files and directories

  • puu016.s: The main very small source file
  • keyfile0.s: Keyfile generator
  • playergroup0.s: HippoPlayer.group data generator, this file includes the compressed binaries for replay routines
  • regtext.s: Possibly important file related to calculating checksums, see notes below
  • kpl14.s: Protracker replay routine source
  • kpl: Protracker replay routine binary
  • gadgets: Gadget's Editor files for the user interface
  • pl: Replay routines for different module types and compressed binaries for each
  • scopes: External scopes and related stuff
  • Include: Some needed include files.
  • gfx: The hippo logo

Build instructions

The standard include files will be searched from include: directory, these are not included. Some custom includes and some others are included.

Tested to compile with ASM-One v1.28 and ASM-Pro v1.17. Compile the file puu016.s to get the main binary. It should start if you have reqtools.library available.

To build the player group file, read the playergroup0.s and assemble, it will create a binary bundle out of the files in the pl-dir.

To build the Protracker replay routine, assemble the file kpl14.s and write out the binary to kpl.

To build individual replay routines, assemble one in the pl-directory, write out the binary and compress it with fimp, then re-create the group file.

Notes

There is a checksum macro check in the main source file which is called at certain points. This checks if the application strings have been altered, making the app exit if the check fails. There is a CRC checksum check in the file Hippo_PS3M.s which does the same as the simpler check mentioned above. It will jump into a busy loop and display colors on screen if the check fails.