It remains uncertain whether the two versions of the player are intended for the same hardware. Kyles player is arguably the simpler. (The compiler also lacks a patch to generate leader/trailer and correct checksums, so perhaps Kyle's versions are earlier?) In this version, amplituce information is output using IOT 6551. This is output again with IOT 6552 (with possibly a different DAMP value), and a duration and tempo derived delay is done. Them IOT 6553 is issued with AC clear, followed by a similar delay. The outputs to 6552 and 6553 could be construed as an effort to output a sqaure wave of the desired frequency, and the sequence is repeated for each note. Player version 1.2 outputs, for each note, a frequency using IOT 6554, followed by a duration based delay. Then, amplitude based information is output using 6551, and the delay is continued for the rest of time specified by the duration and amplitude. Finally, a 6552 is done with AC clear, and the player proceeds to the next note. DAMP is a negative number (-1, -2, or -4), which is obtained from a table at 0170, depending on the hight bit of the note. (DAMP may also be zero, in the case of a rest.) DAMP2 is similar to DAMP, but the values 6010 and 6070 are used instead of -2 and -4. 6551 is used to control amplitude by both versions. Amplitude is derived from bits 1-2 of the note, shifted to bits 3-4 in Kyle's version, and bits 5-6 in version 1.2. Before output, the offset indicated by DAMP is added. Both programs have a global tempo control and a duration for each note. The duration data is extracted from a table at 0150. The actual persistance of the note is for "tempo" repititions of an ISZ loop controlled by the duration. Vince