Changes

Jump to: navigation, search

CTC-AY SDK libCTC fr

1,991 bytes added, 12:01, 11 July 2013
*rr registre 16 bits (HL/BC/DE)
*ii registre d'index (IX/IY)
*string chaîne de caractères
 
===Macros===
'''CTC_SetYM'''
Démarre le canal 0 1 pour déclencher une interruption NMI à l'adresse CRTC indiquée.
*CTC_StarNMI dd
Le paramètre correspond à l'adresse CRTC 16bits complète.
 
 
!!!CTC_CreateIntTable!!!
 
 
Crée une table de vecteurs et crée une fonction d'initialisation pour cette table en mode IM2. Néanmoins cette fonction ne change ni l'état des interruptions , ni le mode de gestion des interruptions du Z80. C'est à la charge de l'utilisateur de la bibliothèque d'exécuter les instructions "EI" et "IM2" ensuite.
 
Usage :
*CTC_CreateIntTable string,b,bb,bb,bb,bb
Le premier paramètre est le nom qui sera donné à la table crée.Deux étiquettes sont crées lors du processus, nom_de_la_table.table est l'adresse de la table elle même , nom_de_la_table.set est la fonction qui configure le Z80 et le CTC pour utiliser cette table.
 
Le deuxième paramètre est la partie haute de l'adresse de la table sachant que celle ci s'étend de (partie_haute*256)-10.La mémoire sera remplie de la valeur 0 entre l'adresse d'assemblage actuelle et l'adresse de la table.
 
Les quatre derniers paramètres correspondent respectivement aux vecteurs d'interruption des canaux 0,1,2 et 3 du CTC et à celui du Gate Array.
 
Example : CTC matable,#10,#1000,#2000,#3000,#4000,#5000
 
Crée deux étiquettes nommées "matable.table" et "matable.set".A l'adresse #00F6 se trouve la table qui se décompose de la façon suivante :
 
*0x00F6:0x00 - Adresse basse du vecteur d'interruption du canal 0
 
*0x00F7:0x10 - Adresse haute du vecteur d'interruption du canal 0
 
*0x00F8:0x00 - Adresse basse du vecteur d'interruption du canal 1
 
*0x00F9:0x20 - Adresse haute du vecteur d'interruption du canal 1
 
*0x00FA:0x00 - Adresse basse du vecteur d'interruption du canal 2
 
*0x00FB:0x30 - Adresse haute du vecteur d'interruption du canal 2
 
*0x00FC:0x00 - Adresse basse du vecteur d'interruption du canal 3
 
*0x00FD:0x40 - Adresse haute du vecteur d'interruption du canal 3
 
*0x00FE:0x00 - Octet d'alignement
 
*0x00FF:0x00 - Adresse basse du vecteur d'interruption du Gate Array
 
*0x0100:0x50 - Adresse haute du vecteur d'interruption du Gate Array
115
edits