Beepola Help



Keyboard commands

Beeper Engines

Compiling Songs

Ripping Songs

*.bbsong file format



Huby Beeper Engine

This engine, developed by Shiru, has two tone channels with a single percussive drum sound that can replace the note being played on channel 1. The player routine has the advantage of being tiny (approx. 100 bytes depending on the options selected in Beepola). The music data format is also very compact (and Beepola contains a smart compressor that looks for duplicate patterns of 8 notes across both channels and ensures that any music compiled with this engine is as compact as it is mathematically possible to be). This makes it ideal for use in game music where space is often at a premium - it's quite possible to produce a great sounding 2 channel piece of music in 200 bytes or less using Huby.

The engine itself sounds similar to the beeper engine used by Odin Computer Graphics in games such as Heartland and Robin of the Wood.

There are two minor restrictions with this engine:-

1. All patterns must contain a minimum of 8 rows, and be a multiple of 8 rows long (8, 16, 24, 32, 40, etc. rows per pattern are all fine, up to a maximum of 120 rows). If you use a pattern with, say, 18 rows, Beepola will ignore the two rows at the end of that pattern during playback and compilation (i.e. it treats all pattern lengths as modulo 8 internally).

2. The only option for looping in Huby is to loop back to the very start of the song (or, optionally, exit the player at the end of the song). When compiling a song using Huby that has a loop point other than the first pattern, Beepola will generate a warning -- the song will still be compiled, but with the loop point set to the very start.

The lowest valid note value is C#1 and the highest is F-5. In common with many Spectrum beeper engines, as 8-bit counters are used there is some significant detuning in the top couple of octaves.