T'as raison, j'en suis arrivé à la même conclusion : c'est le gros bordel
En assembleur (A68k, qui nous occupe ici), on peut avoir sur une ligne :
- un label, nécessairement au début et qui ne se termine pas nécessairement par ':' (même si c'est crade, hein PpHd

)
- une instruction ou une macro, qui commence forcément pas en début de ligne
- un commentaire, commençant par ';' n'importe où sur la ligne
Devant ce bordel, je crois que je vais tenter de ré-écrire les règles.
Pour répondre à ta question :
<itemDatas>
<itemData name="Normal Text" defStyleNum="dsNormal" />
<itemData name="Label" defStyleNum="dsNormal" />
<itemData name="Keyword" defStyleNum="dsKeyword" />
<itemData name="Decimal" defStyleNum="dsDecVal" />
<itemData name="Hex" defStyleNum="dsBaseN" />
<itemData name="Binary" defStyleNum="dsBaseN" />
<itemData name="Char" defStyleNum="dsChar" />
<itemData name="String" defStyleNum="dsString" />
<itemData name="String Char" defStyleNum="dsChar" />
<itemData name="Symbol" defStyleNum="dsNormal" />
<itemData name="Comment" defStyleNum="dsComment" />
<itemData name="Instruction" defStyleNum="dsNormal" />
<itemData name="Register" defStyleNum="dsNormal" />
</itemDatas>
</highlighting>
<general>
<comments>
<comment name="singleLine" start=";" />
</comments>
<keywords casesensitive="1" weakDeliminator="_$" />
</general>