Helicopter 3 Sound Example

This file is part of Byte Power September 1986 . Download the collection to get this file.
Developer(s): Kristian Boisvert
Date: 1986
Type: Program
Platform(s): TS 2068

This program plays a short musical or sound effect sequence using the SOUND command with multiple channel/register parameters, then waits for a keypress before silencing the sound engine. The SOUND keyword (represented as } in zmakebas source but rendered as SOUND) is a TS2068-specific command that directly controls the AY-3-8910 sound chip registers. The sequence sets registers 8, 7, 6, 12, 13, 0, and 1 in a single compound SOUND statement, configuring envelope and noise parameters typical of a helicopter-like effect, consistent with the “HELICO 3” title. The program is attributed to K. Boisvert and copyrighted 1986 by Byte Power.


Program Structure

The program consists of just three executable lines plus a REM header:

  1. Line 0 — REM block containing the title “HELICO 3”, author credit (K. Boisvert), and copyright notice (©1986 Byte Power).
  2. Line 10 — A compound SOUND statement that writes directly to multiple AY-3-8910 registers in one call.
  3. Line 20PAUSE 0, which halts execution indefinitely until any key is pressed.
  4. Line 30SOUND 13,0, which silences the envelope by resetting register 13.

AY-3-8910 Register Usage

The SOUND command on the TS2068 maps directly to AY-3-8910 sound chip registers. The compound statement on line 10 sets the following registers:

RegisterValueFunction
816Channel A amplitude — value 16 enables envelope-controlled amplitude
755Mixer control — enables noise on channels, disables/enables tones
620Noise period — sets the noise frequency
123Envelope period (fine) — low byte of envelope frequency
138Envelope shape — value 8 selects a sawtooth-rise shape, triggers envelope
010Channel A tone period (fine)
11Channel A tone period (coarse)

Register 7 value 55 (binary 00110111) disables tone on channels B and C, enables noise on channel A, and disables noise on B and C, producing a pure noise-envelope blend on channel A characteristic of rotary or mechanical sounds.

Notable Techniques

  • The compound SOUND syntax (SOUND reg,val;reg,val;...) sets multiple AY registers atomically in a single BASIC statement, minimising timing gaps between register writes.
  • PAUSE 0 at line 20 allows the AY chip to continue sounding asynchronously while the CPU waits, since the AY runs independently of the Z80 once its registers are programmed.
  • SOUND 13,0 at line 30 re-triggers the envelope register with shape 0 (single decay), effectively cutting off the sound after the keypress.

Content

Appears On

Tape-based magazine.

Related Products

Related Articles

This month we will talk about the envelope generator. To enable the generator you must put the value 16 to...

Related Content

Image Gallery

Helicopter 3 Sound Example

Source Code

0 REM                                                            HELICO 3                        WRITTEN BY K. BOISVERT          ©1986 BYTE POWER                           
   10 SOUND 8,16;7,55;6,20;12,3;13,8;0,10;1,1
   20 PAUSE 0
   30 SOUND 13,0

Note: Type-in program listings on this website use ZMAKEBAS notation for graphics characters.

Scroll to Top