Due to a comment by Viznut, I’ve had quick look into music made with the PDP-1 (circa 1960). This was a popular machine in the early hacker culture that grew out of universities such as MIT. A few of the audio hacks are documented in MIT’s HAKMEM (1972). Writing this post, it gradually turned into a form of platforms studies or media-specific analysis, describing note duration on different trackers/hardware, and considering the compositional consequences of it. The scope of platforms here is limited, and comments about alternatives are appreciated.
Sometime between 1960 and 1964, Peter Samson made the music software Harmony Compiler along with additional hardware, enabling 4 channels of square wave audio. Dan Smith and others used it to compose music, or “encode” as they say themselves, which was saved on paper tape (materiality matters!). Peter Samson had previously made music software for the TX-0 (1956), that you controlled with a light pen! Oh the joy. At bitsavers you can find files that seem to be related to his software. And if you want to try to get in on the PDP-fun you can check this video where Peter Samson talks after 80 minutes.
J.S. Bach, Organ Concerto No. 1 in G Major, 3rd movement, BWV
592 being played on DEC PDP-1.Photographer unknown, from here
Harmony Compiler was text-based. According to Smith‘s memory, a melody could look like: 7t4 7t4 8t4 7t4 9t4 8t2. 7t4 means note 7 at duration 4, and you could replace the t with other letters to change e.g staff (bass, tenor) and tempo. For each note you have to state the duration of it, just like in traditional sheet music. I remember using similar ways to make ringtones on my Nokia mobile phone only a few years ago. And in fact, this principle is still the basis for the dominant way of sequencing music today: piano roll sequencing. For each note you enter, the duration of the note must be graphically declared with the mouse. Replacing mouse with light-pen, this is what you did with Samson’s TX-0 software from the 50s.
In step sequencers and trackers, you don’t have to set neither duration nor tempo in the sequencer. You can if you want to, but each step has a predefined length in time and every instrument has a fixed duration. This is true in particular for trackers using synthetical sounds, with its roots in Soundmonitor (C64, 1986). To vary the duration, you use effects to sustain the duration and alter volume envelopes. For example, in JCH Editor for C64 there is a default volume-setting in the instrument, but by writing ‘+++’ in the tracker, you extend the duration of the sound. So in the picture below, the C-4 note on the right lasts longer than usual. There is also an effect to change the volume envelope, so you can make the duration shorter. But effects are abstracted one level; with the command SXX you point to line XX in an effect table where you set the volume.
Synthetic trackers are typically not ideal for playing with more complex volume dynamics. One reason is limitations in the platform that generates the sounds. As a composer you cannot set the volume any way you please; you are dependent on the so called ADSR capabilities of the hardware/software (the volume curve generator). A special example is the C64, where the dynamics are highly determined by the hardware due to the ADSR-bug in the soundchip. It means that you can never be completely sure that an instrument will play with the same volume envelope. It depends on what ADSR-values the previous instrument had, and when it was executed. Also, some ADSR-settings tend to produce clicks, which can make it frustrating to program clean delays for example.
This is easier with sample-based trackers such as Protacker (Amiga, 1990), since you can set absolute volume levels at any point. In these tracker you can also use instruments with fixed volume curve. An audio sample sounds the same each time you trigger it. But the duration varies with different notes, because a higher note means a higher speed, and therefore the sample ends faster. Usually this is fixed by looping the sample, and setting the volume directly in the tracker instead. Each time you initiate the sound, you have to manually set the volume decrease: A0F, A0F in the 1st channel below. Without copy-paste functions, it takes a lot of work to write the same volume envelope each time an instrument is triggered. Being a somewhat lazy composer thus only increases the amount of volume dynamics.
In a sense then, we are back to the explicit note duration style of Harmony Compiler. To complete the circle, we can consider the tracker-like software that works with explicit note duration. HVMEC defines such software as editors, rather than trackers. In the screenshot of DMC below, you can see the pattern editor on the right side. Notes share space with commands (DURation, SouND, SLiDE), which means that step #8 (ADR.00) in this channel, might not be the same place in time as step #8 in the other channels. This adds a new layer of trickery, and I remember cursing a lot when using this back in the days. But the detachment of channels and the lack of overview, means that you can play with polyrhythms very easily – a feature I always appreciated also in LSDj. It is as far as I know, not very common in your average piano roll software, where the master clock is an authoritative master.
To conclude then – it seems that from the software discussed here, the sample-based ones give the most direct control over volume duration. In my view, this is reflected in the amount of volume/duration dynamics in Amiga MOD-music compared to C64-music. But, the difference is not necessarily between sample-based or synthetic trackers. In Musicline Editor (Amiga 1995) you can control synthetic sounds with pattern effects for both instrument volume, ADSR and channel volume. But this flexibility is possible only because the synthesis is made in software. In LSDj (Gameboy) there are also different ways to experiment with the volume, but it’s determined by the hardware’s limitations in ADSR.
The point with medium-specific analysis is to keep one thing constant across different media, and even if this was a rather basic attempt, it does give some interesting results and some basics to start from. Then you can start looking at hacks to overcame hardware limitations in volume control, such as for the 2A03.