Enveloppe. Tandy Cartouche de parole/son
ENVELOPPE
La dernière commande s'utilise pour l'enveloppe. Cette commande permet d'englober les tonalités et bruits précédemment créés dans une enveloppe de son: On dispose d'une seule forme d'enveloppe pour les 3 canaux. Chaque canal peut utiliser l'enveloppe, indépendamment des autres: les 3 canaux peuvent employer la même forme à un moment donné.
Si le premier post-octet qui suit une commande spécifie une enveloppe (et ses 4 caractéristiques de forme), 3 autres octets sont nécessaires pour décrire l'enveloppe.
Le post-octet 2 établit la valeur approximative de période, le post-octet 3 établit la valeur précise de période et le post-octet 4 la durée de l'enveloppe.
Les enveloppes commandent l'amplitude des tonalités ou bruits précédemment
établis. Par exemple, on peut utiliser une enveloppe pour créer un effet de vibrato.
Mémoriser d'abord une tonalité avec le bit d'enveloppe à un (bit 4 de l'octet 1) et créer immédiatement après une enveloppe à répétition lente. Le groupe de données d'enveloppe de 4 octets commande la tonalité ou le bruit de l'octet précédent.
Le groupe de données d'ENVELOPPE se compose des 4 octets suivants:
Bit 7
Bits 6-5
Bit 4
Bits 3-0
Octet
1
Inutilisé
Une enveloppe est établie quand les deux bits sont à un
Inutilisé
Ces bits commandent la forme de l'enveloppe:
Bit 3 = bit de CONTINUITË. Indique au processeur de reproduire l'enveloppe de son une fois seulement ou de la répéter. Quand ce bit est à un, la tonalité se répète: s'il est à zéro, le son ne se produit qu'une seule fois.
Bit 2 = bit d'ATTAQUE. L'attaque détermine si un bruit ou une tonalité passe de l'amplitude minimale au maximum ou s'atténue du maximum au minimum. Quand le bit est à un, le son s'intensifie, quand le bit est à zéro, le son s'atténue.
Bit 1 =bit d'AL TERNANCE. Change l'attaque à chaque cycle.
Quand ce bit est à un, le bruit ou la tonalité s'intensifie, puis s'atténue et s'intensifie de nouveau, etc. Quand le bit est à zéro, l'attaque est identique à celle indiquée pour le bit 2.
Bit 0 = bit de MAINTIEN. Maintient l'amplitude d'une tonalité ou d'un bruit au niveau at\eint par l'attaque (maximum ou silence).
Le tableau suivant indique la modulation de l'amplitude des sons par les différents paramètres de la forme d'enveloppe:
19
REGISTRE 13
B3
B2 B1 BO c
0
N
T A
1
T
N T u A
1
Q
T u
Ë
E
R
N
A
N
A
L
T
E c
E
T
1
E
N
M
A
1
N
0
0 X X
Représentation graphique de
sortie du générateur
d'enveloppe S3 S2 S 1 SO
0 1 X X
1 0 0
0
1 0
0
1
1
0 1
0
1 0 1 1
1 1 0
0
1 1 0
1
0
1
1 1
1
1
1 1
-IE�--
EP correspond
à
la période d'enveloppe (durée d'un cycle)
20
Octet 2
Bits 7-0
Ëtablissent la valeur approximative de période de tonalité de l'enveloppe. La période d'enveloppe utilise une fréquence de base de 6991 Hz divisée par une valeur 16 bits contenue dans cet octet ainsi que dans l'octet suivant. Donc la fréquence d'enveloppe la plus élevée est de 6991 Hz: la plus basse est d'environ .1 Hz (6991 divisé par 65536). La fréquence la plus basse donne une durée d'attaque d'environ 10 secondes.
Octet 3
Bits 7-0
Ëtablissent la valeur précise de période de tonalité de l'enveloppe.
S'utilisent avec l'octet 2 pour donner une valeur de 16 bits.
Octet
4
Bits 7-0
Ëtablissent la durée de l'enveloppe. La durée est relative; la plus courte étant de
O
et la plus longue de 255. La durée est également relative en fonction de la valeur dans le registre de base de temps
(accessible par la commé'.nde hexadécimale 8F).
N° de post-octet
TABLE DE POST-OCTETS D'ENVELOPPE
Bit le plus significatif
Bit le moins significatif
1
2
3
4
X
C7
F7
D7
01
C6
F6
D6
OO
CS
FS
DS
X
C4
F4
D4
S3
C3
F3
D3
S2
C2
F2
D2
Sl
Cl
Fl
Dl so
CO
FO
DO
O= CODE D'OPËRATION
X = INUTILISË
S = BITS DE FORME D'ENVELOPPE
C =VALEUR APPROXIMATIVE DE PËRIODE D'ENVELOPPE
F =VALEUR PRËCISE DE PËRIODE D'ENVELOPPE
D =VALEUR DE DURËE D'ENVELOPPE
21
22
Manipulation des registres de son
La commande AF permet d'accéder directement aux 14 registres du processeur de son pour créer des effets sonores et de la musique. On peut ainsi transférer des paires d'octets directement à la cartouche de parole/son. On écrit d'abord dans l'octet à l'adresse hexadécimale FF7E le numéro de registre (1 à 13). A cette rriême adresse, on inscrit ensuite une valeur dans les limites des paramètres du registre.
Remarque: Des registres différents n'ont pas les mêmes intervalles d'entrée valide. Par exemple, le registre 0 (tonalité de canal A--Valeur précise de période) reçoit des données de 0 à 255; le registre 1 (tonalité de canal
A--Valeur approximative de période) ne reçoit cependant que des données de
0 à 15.
Les paires d'octets qu'on écrit (numéro de registre suivi des données) sont transférées "à la volée" dans le générateur de son jusqu'à ce que l'on envoie un caractère d'arrêt (FF en hexadécimal).
La table suivante décrit les registres, les fonctions et les intervalles de données de la cartouche de parole/son. (Pour plus de détails sur la cartouche de parole/son, voir l'annexe B).
No FONCTION
INTERVALLE
DE DONNÉES
0
2
Générateur de tonalité - Canal A - Période précise
0-255
Générateur de tonalité - Canal A - Période approximative 0-15
Générateur de tonalité - Canal B - Période précise
0-255
Générateur de tonalité - Canal B - Période approximative
0-15 3
4
5
Générateur de tonalité - Canal C - Période précise 0-255
Générateur de tonalité - Canal C - Période approximative
0-15
6 Générateur de bruit
7 Commande de mélangeur
0-31
0-63
0-15 8
9
Commande d'amplitude - Canal A
Commande d'amplitude - Canal B
10 Commande d'amplitude - Canal C
0-15
0-15
23
11
12
13
Commande de période précise d'enveloppe
Commande de période approximative d'enveloppe
Commande de forme d'enveloppe
0-255
0-255
0-15
Le court programme suivant permet de manipuler une tonalité dans le canal A en commandant directement les registres de la cartouche de parole/son:
10 REM
A
L'ETAT INITIAL DE LA CARTOUCHE PAROLE/SON
20 POKE &HFF7D,l:POKE &HFF7D,O
30 REM INITIALISATION DES VARIABLES
40 X=&HFFOO: Y=&HFF7E
50 REM MISE EN FONCTION DU SON DE CARTOUCHE DE
PAROLE/SON
60 POKE X+1,52: POKE X+3,63: POKE X+35,60
70 REM MISE DE LA CARTOUCHE DE PAROLE/SON EN MODE
D'ACCES DIRECT
80 GOSUB 300
90 POKE Y, &HAF
100 REM INSCRIPTION D'UNE TONALITE PRECISE DANS LE CANAL A
110 GOSUB 300
120 POKE Y,O
130 INPUT "ENTRER UNE VALEUR DE TONALITE DANS LE CANA L A";T
140 GOSUB 300
150 POKE Y,T
160 REM APPEL AU REGISTRE DE ME LANGEUR
170 GOSUB 300
180 POKE Y,7
190 REM ETAB LISSEMENT DU MELANGEUR AUX TONA LITES DU
CANAL A SEULEMENT
200 GOSUB 300
210 POKE Y,62
220 REM APPEL AU REGISTRE D'AMPLITUDE POUR LE CANA L A
230 GOSUB 300
240 POKE Y,8
250 REM ETAB LISSEMENT DE L'AMPLITU DE AU MAXIMUM-15
260 GOSUB 300
270 POKE Y,15
280 REM RETOUR A LA TONALITE DE CHANGEMENT SUR LE CANA L
A
290 GOTO 120
300 REM VERIFICATION DU SIGNAL OCCUPE
310 IF PEEK(Y) AND 128
=
0 THEN 300
320 RETURN
Pour arrêter le programme, presser
� puis taper RUN. La ligne 20 remet la cartouche de parole/son en silence.
Le programme ci-dessus illustre l'aisance de la manipulation directe de la cartouche de parole/son. Il montre la manipulation d'une tonalité dans un canal seulement,
24
mais il existe d'autres possibilités. Dans l'annexe F, le programme d'orgue transforme les deux rangées du bas du clavier de l'ordinateur couleur en clavier d'orgue. Dans l'annexe G, le programme d'effets sonores montre l'emploi de la cartouche de parole/son pour créer des effets sonores complexes en manipulant directement les registres de la cartouche avec des instructions de données.
Avec un peu de pratique et une cartouche de parole/son d'ordinateur couleur, chaque programme exécuté avec l'ordinateur peut être un enchantement pour l'oreille.
25
26
ANNEXES
27
28

Public link updated
The public link to your chat has been updated.