Changes

Jump to: navigation, search

CTC-AY SDK libCTC fr

2,274 bytes added, 09:38, 11 July 2013
Created page with "===Bibliotheque de prise en charge du CTC=== Localisation : lib/ctc.asm Cette bibliothèque est composée de macros ainsi que de définitions des drapeaux pour la configurat..."
===Bibliotheque de prise en charge du CTC===

Localisation : lib/ctc.asm

Cette bibliothèque est composée de macros ainsi que de définitions des drapeaux pour la configuration du CTC.

Rappel des abréviations :
*d valeur 8 bits (0-0xFF)
*dd valeur 16 bits (0-0xFFFF)
*r registre 8 bits (A,B,C,D,E,H,L)
*rr registre 16 bits (HL/BC/DE)
*ii registre d'index (IX/IY)

===Macros===


'''CTC_SetYM'''

Configure la fréquence des deux YM.Si le paramètre est omis, c'est la fréquence du CPC qui est automatiquement choisie.


Usage :
*CTC_SetYM d (défaut : 1)


'''CTC_StartChannel'''


Démarre un des canaux du CTC , le premier paramètre correspond au canal choisi , le second aux drapeaux affectant ce canal et le troisième à la valeur de délai du canal.

Les canaux sont définis par les valeurs suivantes :
*ctc.chan0 : canal 0
*ctc.chan1 : canal 1
*ctc.chan2 : canal 2
*ctc.chan3 : canal 3

Les valeurs suivantes sont possibles et combinables en partie pour les drapeaux :
*ctc.int : une interruption est déclenchée quand le compteur du canal atteint 0
*ctc.counter : le canal est en mode counter
*ctc.timer : le canal est en mode timer
*ctc.prescale256 : choisi une échelle de temps de 64µs pour le canal (mode timer uniquement)
*ctc.prescale16 : choisi une échelle de temps de 16µs pour le canal (mode timer uniquement)
*ctc.reset : redémarre le canal avant de le mettre en route.



Usages possibles :
*CTC_StartChannel rr/ii

les paramètres seront charges à la suite en (rr) ou (ii).Il est possible d'ajouter un post ou un pré incrément/décrement pour incrément/décrementer rr/ii.

Exemple : CTC_StartChannel HL++

*CTC_StartChannel d,rr

Le premier paramètre est donnée sous forme de valeur immédiate.Les deux derniers seront chargés à la suite en (rr) ou (ii).Il est possible d'ajouter un post ou un pré incrément/décrement pour incrément/décrementer rr/ii.

Exemple : CTC_StartChannel ctc.chan2,HL++


*CTC_StartChannel d,d,d/r/(rr)/(ii)

Les premiers et second paramètres sont des valeurs immédiates.Les troisième peut être donné sous forme de valeur immédiate , registre 8 bits ou une référence à un registre 16bits ou d'index

Exemple : CTC_StartChannel ctc.chan.3,ctc.int | ctc.timer | ctc.prescale256 | ctc.reset, (HL)
115
edits