The Lightweight player

The AKL, or Lightweight player, is, as it names implies, a player that takes less memory. Various flags inside the player can help reduce it even more. It is especially useful for 4K demo, or 64kb games, for example.

However, it is also slower than the other players, as a maximum of code is shared instead of duplicating it (this implies the use of index registers a lot, which are known to be slower).

Pros:

  • Smaller player and songs.
  • Sound effects managed.

Cons:

  • Slower than the other AT2 players (about 35 scanlines on a CPC, if you use a lot effects).
  • Less features.

 

Here are the limitations regarding what this player can accomplish:

  • Only one PSG per Subsong is encoded.
  • Instrument:
    • Only software, noSoftNoHard, SoftToHard, SoftAndHard (limited, see below).
    • No forced software period.
    • Only 128 instruments max.
    • Instrument Arpeggio is present.
    • Instrument Pitch is present.
    • Hardware envelope: only 8 or 0xa.
    • No retrig.
    • Length = 128. Only to be sure it is not encoded on more than 256 bytes.
    • No noise for hardware sound (who uses those?).
    • No shift pitch for hardware envelope in SoftToHard.
    • SoftAndHard is limited: The hardware part is only a forced period, to allow “ben daglish” effect.
  • Arpeggio (in tracks):
    • No speed managed by the player, so each step is duplicated.
    • Limited to 7 bits signed values.
    • Only 64 arpeggios max.
    • Limited to 128 in length.
  • Pitch (in tracks):
    • No speed managed by the player, so each step is duplicated.
    • Limited to 7 bits signed values.
    • Only 64 pitches max.
    • Limited to 128 in length.
  • No event track.
  • No speed track, but the first speed of each SpeedTracks encoded, so each Pattern can have its own speed nonetheless.
  • No legato.
  • One effect column. But two specific ones can be combined:
    • Volume + Pitch up/down.
    • Volume + Arpeggio.
    • Reset + Arpeggio.
  • Limited effects: (fast) pitch up/down, reset with volume, volume, arpeggio table, pitch table.

 

On exporting, warnings are shown if some song items could not be correctly exported.