Subject: Challenge: writing a new AMOS player

From: kyz
Date: Thu May 18 08:17:59 2006

To: UADE-Developer-discussion
The AMOS music player in UADE is based on an AMOS-&gt;Protracker converter plus a
Protracker replayer. I did a reverse engineering of the AMOS music file format and discovered, for example, its timing method is not the same as Protracker:

http://www.kyz.uklinux.net/formats/amos_music_format.txt

The conversion between PTK and AMOS timing methods is lossy, so genuine AMOS music will not play back exactly right when converted to Protracker. Of course, Protracker music converted to AMOS will sound the same because it wasn't intended for AMOS in the first place.

If you'd like to use the actual AMOS music replay, it's here:

http://www.clickteam.com/English/amos.php

The code is in MUSIC.S in AMOS1_23.zip

The interrupt routine is at the label MusInt (this also plays the user's
sounds). It runs all the time on the VBL, in AMOS.

The pointer to the music data is stored in MusBank-MB(a3) (it should
begin with &quot;Music   &quot; - see BkCheck)

The music is started with the &quot;music&quot; instruction in AMOS, which is at label IMusic in the
source. The parameter to music is the subsong number to play (put into d3
with the first instruction of IMusic). Given my format description, you can easily see how many subsongs there are.

You can stop the music with &quot;music stop&quot;, IMuStop.

---

From: shd
Date: Thu May 18 09:36:12 2006

To: UADE-Developer-discussion
[quote:70bdb42f7e="kyz"]The conversion between PTK and AMOS timing methods is lossy, so genuine AMOS music will not play back exactly right when converted to Protracker.
[/quote:70bdb42f7e]

Timing should be easy to fix. Just change to vblank timing and use the tempo counter described in your document. What worries me is the effects that depend on protracker tempo counter.

Can you give us an assesment of protracker effect compatibility to AMOS?

---

From: mld/uade team
Date: Thu May 18 10:02:56 2006

Hi kyz,

Our current Amos player does have other problems as well (Doesn't play some tunes at all). But it was more or less a least effort approach and it bothered me ever since. I was just lazy to do anything. *grin*

i'll have a  look at the source at the link you gave, and see what I can do. :-)

---

From: Guest
Date: Thu May 18 10:18:04 2006

To: UADE-Developer-discussion
[quote:b2f5afd56c="shd"]Can you give us an assesment of protracker effect compatibility to AMOS?[/quote:b2f5afd56c]

AMOS has very few effects, all from Soundtracker (not Protracker). There are possibly some different period values for vibrato and arpeggio. AMOS really doesn't accept many soundtracker or protracker effects, because Francois Lionet gave up trying to compete at the time ST, NT and PT kept adding more and more features.

The AMOS effects are mostly an issue for the converter, not the replayer. AMOS has per-channel patterns of arbitrary length, arbitrary pattern row execution time, in-pattern looping, the potential for more effects occuring at once than can fit in a single ST/PTK row. You generally have to &quot;render&quot; an AMOS tune into raw, sequential Protracker patterns, you can't just convert the pattern list, except in the special case that the AMOS tune was actually converted from PTK or GMC in the first place... which is most of the tunes in AMOS.

---

From: shd
Date: Thu May 18 10:28:38 2006

To: UADE-Developer-discussion
[quote:a387eb2658="Anonymous"][quote:a387eb2658="shd"]Can you give us an assesment of protracker effect compatibility to AMOS?[/quote:a387eb2658]

The AMOS effects are mostly an issue for the converter, not the replayer. AMOS has per-channel patterns of arbitrary length, arbitrary pattern row execution time, in-pattern looping, the potential for more effects occuring at once than can fit in a single ST/PTK row. You generally have to &quot;render&quot; an AMOS tune into raw, sequential Protracker patterns, you can't just convert the pattern list, except in the special case that the AMOS tune was actually converted from PTK or GMC in the first place... which is most of the tunes in AMOS.[/quote:a387eb2658]

In that case maybe we should not consider fixing the timing issue in PTK-Prowiz. Just rip the original source code and make an eagleplayer. Is the AMOS replayer GPL'ed or something? If so, Michael, how about creating as an AMOS replayer?-)

---

From: Guest
Date: Thu May 18 10:35:21 2006

To: UADE-Developer-discussion
[quote:2edf0db5f8="shd"]Is the AMOS replayer GPL'ed or something?[/quote:2edf0db5f8]

It's not GPL, but has an BSD-advertising style license. From the AMOS source code download page:

[quote:2edf0db5f8]
Clickteam provides the source code AMOS as a courtesy to the Amiga computer community. You are allowed to edit and modify the source code, add new features, remove sections of code and recompile it to produce modified final products.

Any product made from the original source code should contain this written notification:

&quot;Contains parts of AMOS source code, originally written by François Lionet and published by Europress Software Ltd. Contact the original authors at http://www.clickteam.com.&quot;
[/quote:2edf0db5f8]

---

From: shd
Date: Thu May 18 10:42:04 2006

To: UADE-Developer-discussion
[quote:5c08df352e="Anonymous"]It's not GPL, but has an BSD-advertising style license. From the AMOS source code download page:
[/quote:5c08df352e]

Memory serves me bad then. BSD-style is very good for us. I hope the source compiles in asmone :-)