ASMtrad CPC

Apprenez l'assembleur Z80

Vecteurs System – Gestion SON (#BCA7 – #BCC5)

#BCA7 - INITIALISE LE GESTIONNAIRE SONORE.

CE : rien.
CS : AF, BC, DE, HL sont modifiés.

#BCAA - AJOUTE UN SON A UNE QUEUE SONORE.

CE : HL contient l’adresse du programme sonore qui doit se trouver dans les 32K de mémoire vive centrale.
CS : Si le son a pu être ajouté a la queue sonore, C=1 et HL est modifié.
Si toutes les queues sonores sont remplies et que le son n’a pas pu être ajouté à l’une d’entre elles, C=0 et HL est préservé.
De toute façon AF, BC, DE, IX sont modifiés.
Le

#BCAD - VÉRIFIE S’IL Y A DE LA PLACE DANS UNE QUEUE SONORE.

CE : A contient le numéro du canal a tester.
Il vaut 0 si l’on veut tester le canal A.
Il vaut 1 si l’on veut tester le canal B.
Il vaut 2 si l’on veut tester le canal C.
CS : A contient l’état du canal testé.
F, BC, DE, HL sont modifiés.

#BCB0 - PRÉPARE L’ÉXÉCUTION D’UNE INTERRUPTION LORSQU’UNE QUEUE SONORE EST VIDE.

CE : A contient le numéro du canal a tenir prêt ( 0=A 1=B 2=C ).
HL contient l’adresse du programme d’interruption.
CS : AF, BC, DE, HL sont modifiés.

#BCB3 - PERMET DE RELACHER LES SONS ARRETES SUR CHAQUE CANAL (voir #BCB6).

CE : A contient le numéro du canal à relâcher ( 0=A 1=B 2=C ).
CS : AF, BC, DE, HL sont modifiés.

#BCB6 - ARRÊT DE TOUS LES SONS.

CE : rien.
CS : Si un son était actif, C serait=1 sinon C serait=0.
De toute façon, AF, BC, HL sont modifiés.

#BCB9 - REDÉMARRE TOUS LES SONS QUI ONT ÉTÉ ARRÊTÉS PAR BCB6.

CE : Rien.
CS : AF, BC, DE, IX sont modifiés.

#BCBC - ÉTABLISSEMENT D’UNE DES 15 ENVELOPPES D’AMPLITUDE PROGRAMMABLE.

CE : A contient le numéro d’enveloppe.
HL contient l’adresse des données concernant l’amplitude.
CS : Si une enveloppe a été établie, C=1 et HL contient l’adresse du bloc de données augmentée de 16 et A et BC sont modifiés.
Si le numéro d’enveloppe est incorrect, C=0, A, B, HL sont modifiés.
De toute façon F, DE sont modifiés.

#BCBF - ÉTABLISSEMENT D’UNE DES 15 ENVELOPPES DE FRÉQUENCE PROGRAMMABLE.

CE : A contient un numéro d’enveloppe.
HL contient l’adresse des données concernant la fréquence.
CS : Si l’enveloppe de fréquence a bien été établie, C=1 et HL contient l’adresse du bloc de données augmentée de 16, et A et BC sont modifiés.
Si le numéro d’enveloppe est incorrect, C=0 et A, BC, HL sont préservés.
De toute façon F, DE sont modifiés.

#BCC2 - FOURNIT L’ADRESSE D’UNE ENVELOPPE D’AMPLITUDE.

CE : A contient un numéro d’enveloppe.
CS : Si l’enveloppe a bien été trouvée, C=1 et HL contient l’adresse de l’enveloppe d’amplitude et BC contient la longueur d’une enveloppe.
Si le numéro d’enveloppe est incorrect, C=0 et HL est modifié et BC est préservé.
De toute façon AF est modifié.

#BCC5 - FOURNIT L’ADRESSE D’UNE ENVELOPPE DE TON.

CE : A contient un numéro d’enveloppe.
CS : Si l’enveloppe a bien été trouvée, C=1 et HL contient l’adresse de l’enveloppe de ton et BC contient la longueur de l’enveloppe.
Si le numéro d’enveloppe est incorrect, C=0, HL est modifié et BC est préservé.
De toute façon AF est modifié.