Subject: Pacman by Rez

From: DigitalAxis
Date: Sat Feb 3 06:53:20 2007

To: UADE-User-discussion
The Pacman ingame music by Rez doesn't sound right in UADE.  The tune appears to be using extra octaves (the missing notes are quite evident- notes are either played at the same [highest, perhaps?] pitch, or not played at all)

file can be found here: ftp.modland.com/pub/modules/Protracker/Rez/pacman (game theme).mod

The file does not play correctly in the SurfSmurf Oldskool MOD plugin for Winamp, UADE 2.04, or TiMIDIty++.

It does play correctly in Audacious+DUMB and Audacious+Modplug, and the SurfSmurf Oldskool MOD plugin if you set the player type to Fasttracker.

Now, the question is:  Is this a weird Amiga format that's being misdetected, or is this a PC format that I'll need to blacklist?

I tried running [b:207a18c6e7]uade123 -x type:nt10 pacman\ \(game\ theme\).mod[/b:207a18c6e7] and the rest of them; either none of them work or I'm not using the -x option correctly.

---

From: mld/uade team
Date: Sat Feb 3 09:27:04 2007

To: UADE-User-discussion
ok, me wonders myself.  Can't check atm, but will asap.

About the protracker octaves missing. I think it was due to hardware limitation and also affects MED e.g. (Lemming2 Two tribes Intro song) Listen to it with uade and listen to it with e.g. xmp or modplug.

So, I think a mod using more than the usual protracker octaves is probl. origination from PC or was relying on Softmixing on Amiga like the ps3m replay or the 14bit amplifier... 

Maybe we should reintroduce a fastracker 4ch mod replayer for such special cases to uade again. It's based on the ps3m replay and does softmixing. I could limit it to M.K. mods (rtead 4 ch) and the user can overide Protracker detection with song.conf if necessary.

On the other hand, mod.nazgul also abuses octaves limitation and only sounds right with uade...

---

From: alankila
Date: Sat Feb 3 17:40:07 2007

To: UADE-User-discussion
I checked the song with milkytracker and the bad bits use 6th octave notes.  (Highest sound on Amiga was probably a#5 if I recall correctly.) My guess is that the note number sometimes looks outside the period tables that are possible for Amiga / Protracker. The sample pitches aren't just jarring and off-key, like what happens when Agnus can't supply Paula with data quickly enough, but they actually jump wildly up and down.

Maybe this game was for AGA chipset with higher graphics modes.

---

From: mld/uade team
Date: Mon Feb 5 21:38:44 2007

To: UADE-User-discussion
From the way the song looks it seems to be originating from fastracker or something.

fine tune used, empty instruments loop size &amp; Vol = 0, &quot;Noiserackerbyte&quot; = 0

It's either resaved on a pc or even done on one of them. But since I learned there is a Tracker on PC that was able to save mods in true Protracker form (thanks tempest for the info about st3), there's room for some doubt ;-)

Question is how to proceed. I could hack a Fastrackerplayer, with subsong support and so on where no 5 octave limitation is from the PS3M srcs, question is, do we want to support it for sake of compatibility or do we ignore those files?

---

From: DigitalAxis
Date: Wed Feb 14 02:50:46 2007

To: UADE-User-discussion
I'm curious as to why those octaves are impossible- because of a limitation in Protracker, or because the Amiga couldn't push the sampling rate high enough to put a normalized note at that pitch?

Rez is active on the PC now; I have some tunes of his in Fasttracker I format... It's quite possible this tune was from a PC game, even, and a nearly-Protracker-compatible FT1 module.

---

From: alankila
Date: Thu Feb 15 13:38:18 2007

To: UADE-User-discussion
It is a hardware limitation. Maximum bandwidth for audio data is 31.2 kilobytes per second, of which only about 28.8 kB/s can be achieved in practice due to some additional timing issues.

The limitation arises because Paula, the audio playback chip, can not fetch new data from chipmem at any time, but instead must ask Agnus to do perform a chipmem read for its behalf. There are fetch slots reserved for audio at start of each horizontal scanline, and every read fetches a 16-bit word, which is then sent to Paula for playback. The rate of new scanlines is fixed at 15.6 kHz for OCS Amigas, following from 50 Hz screen refresh rate and 312 lines per screendraw.

Some additional kHz are probably lost for timing-related issues when actually transmitting the fetched data from Agnus to Paula.

When the fetch can not be satisfied in time, Paula replays the data from the last two samples, often partially. This causes a particular type of jittering and sounds quite off-key and bad.

UADE, to my understanding, does not emulate the 28.8 kHz playback rate correctly; it only simulates the data reusing issue when sampling rates exceed 31.2 kHz. I haven't, however, properly tested this so I'm not sure.