APPLICATIONSCREATION MUSICAL ★ AMSON : AMSTRAD MELOMANE ★

Amson|Science et Vie Micro)Applications Creation Musical

Avec ce programme de création musicale sur la série Amstrad, de qualité exceptionnelle, qui a valu à Serge Ceci d'être proclamé vainqueur, il ne vous est demandé que déjouer... et de mordre à l'Amson.

AMSOM PERMET DE jouer de la musique sur le clavier d'un Amstrad à l'aide de la représentation graphique, sur l'écran, d'un clavier de piano. Le jeu est monophonique sur deux octaves. Il ne faut donc pas s'attendre aux performances d'un véritable piano électronique; en revanche, ce programme d'initiation à la synthèse musicale bénéficie d'une présentation graphique et d'une finition tout à fait inhabituelles. Il permet de modifier à volonté les caractéristiques du son, par la modification de l'enveloppe de volume et de l'enveloppe de ton. Chaque note émise par le synthétiseur de la machine est régie par de nombreux paramètres tels que sa durée, son volume et sa hauteur. D'autres paramètres plus complexes entrent en ligne de compte dans l'émission d'un son - ces fameuses enveloppes de volume et de ton - et sont traités par des instructions spécifiques en Basic. La première enveloppe régit l'évolution du volume d'une note dans le temps. Chaque note est constituée d'une attaque pendant laquelle le volume augmente rapidement, d'une période de maintien où il reste stable, d'une période de relâche où il diminue progressivement, et enfin d'une période d'extinction brutale. L'enveloppe de ton régit révolution de la tonalité dans le temps. C'est elle qui permet par exemple de créer des effets de glissando, de sirène ou de pédale « wah-wah » et également déjouer sur la hauteur d'une note : qu'un la se transforme progressivement en si puis en do, par exemple. Mais la gestion de ces paramètres serait assez compliquée si Amson n'était pas là pour vous faciliter la vie.


L'option Choix de l'enveloppe permet de
visualiser une réduction de l enveloppe telle
qu'elle a été définie.

Après une présentation somptueuse, s'affiche la page d'utilisation d'Amson avec, en bas de l'écran, un clavier de deux octaves et au-dessus, un menu d'options. Point n'est besoin d'en passer par ces options pour jouer une mélodie. Pianotez simplement sur les deux rangées supérieures du clavier. La première, celle des chiffres, représente les touches noires d'un piano et par conséquent les touches 3, 7 et 0 sont inactives. Pour vous permettre de reconnaître la note jouée, un petit repère clignotant apparaît sur la touche correspondante à l'écran. Si le volume ne vous convient pas, vous avez deux façons de le modifier : via le bouton situé sur le côté droit de l'Amstrad, ce qui permet d'ajuster le volume de façon globale ou à l'aide des touches
de déplacement vertical du curseur. Dans ce dernier cas, la modification s'effectue sur le volume initial de la note paramétrée dans l'instruction SOUND. Les flèches de déplacement horizontal du curseur vous permettent respectivement d'accéder à l'octave supérieure ou inférieure. En appuyant sur lune des touches qui portent une barre de fraction (normale ou inversée), vous accédez au menu secondaire. Six options y sont présentées.


La page principale du programme Amson
propose un clavier de deux octaves et les
options du menu.

Six options au menu

Avant tout, une remarque. Il est conseillé de ne jamais se servir de la petite touche ENTER du pavé numérique, sous peine d'effets inattendus. Seule exception : si vous voulez sortir du programme, appuyez deux fois sur ESC puis sur ENTER.

La première option a pour but de modifier la durée de la note. L'ordinateur vous demande une valeur comprise entre - 32 000 et + 32 000. Si c'est une valeur positive, elle correspondra à la durée réelle de la note. Si la valeur est nulle, la dernière enveloppe de volume (EMV) choisie déterminera la durée de la note. Dans le cas d'une valeur négative, l'enveloppe de volume déjà définie sera répétée le nombre de fois indiqué. Bien que les limites permises soient beaucoup plus larges, il est conseillé de s'en tenir à des valeurs raisonnables (- 5 à 200) sous peine de passer la nuit à écouter la même note.

Créez des enveloppes

La seconde option permet la définition d'une enveloppe de volume ou de ton. Il faut alors indiquer le numéro de l'enveloppe à créer, entre 1 et 15. Si l'enveloppe précisée est déjà définie, il suffit de confirmer ce choix. Seule la frappe d'un Pi vous permettra de rattraper une éventuelle erreur. Après quoi, une grille numérotée en abscisses et en ordonnées apparaît. C'est sur cette grille que vous définirez vos enveloppes de ton ou de volume, en les dessinant directement à l'écran à l'aide des touches de curseur. La touche COPY sert à valider chaque section de l'enveloppe. Cinq segments d'enveloppe peuvent être définis. Vous pouvez les placer à votre guise, mais n'oubliez pas, pour obtenir un son vraisemblable, que les notes habituellement produites par un instrument se divisent en attaque, maintien, relâchement et extinction, suivant le principe expliqué plus haut. Après définition des cinq segments, un dernier appui sur COPY provoque l'affichage des paramètres numériques correspondant à l'enveloppe que vous venez de tracer, naturellement, vous pouvez tracer une enveloppe de moins de cinq segments. Dans ce cas, appuyez sur l'une des deux barres de fraction pour valider l'ensemble. Tapez ensuite sur une touche quelconque, et vous vous retrouverez devant le menu de choix de type d'enve loppe et de retour au menu principal. L'enveloppe ainsi créée sera sélectionnée pour piloter les sons ultérieurs.


Cette grille permet de créer de nouvelles
enveloppes à l'aide des touches de
déplacement du curseur.

La troisième option vous permettra de choisir une des enveloppes de ton préalablement définies ou, si vous frappez 0, d'annuler l'enveloppe actuellement en cours, après confirmation. Après avoir précisé le numéro de l'enveloppe sélectionnée, un graphique de dimensions réduites représentant l'enveloppe telle qu'elle a été tracée se dessinera, et il vous faudra confirmer votre choix. Vous pourrez alors pianoter sur votre clavier pour ouïr vos créations.

La quatrième option régit la sélection d'une enveloppe de volume, de la même façon que ci-dessus. On peut ajouter un bruit à la note jouée en utilisant le cinquième choix. Cette option vous propose de n'avoir qu'un bruit seul, différent suivant la touche appuyée et les enveloppes sélectionnées. Ou alors, de combiner note normale et bruit, ou ne mettre qu'une note seule, ce qui est bien pratique pour désamorcer ces bruits qui peuvent parfois devenir entêtants. Enfin, la dernière option offre, à ceux que le menu n'inspire pas, de revenir à la page de jeu normal.

La structure de ce programme n'est pas figée. Il est tout à fait possible de lui rajouter des options qui n'existent pas dans l'état actuel des choses. On peut bien sûr penser à en faire un éditeur musical plus perfectionné qui permettrait la sauvegarde des paramètres d'enveloppes sur cassette, ou bien encore inclure la possibilité de jouer des accords polyphoniques. Le problème est qu'en Basic, l'ordinateur ne peut pas détecter très rapidement la position des touches du clavier. Pour aller plus vite, il faudrait écrire cette routine en assembleur. Avis aux amateurs éclairés... Ce programme écrit pour Amstrad CPC 464, 664, et 6128, utilise des fonctions assez spécifiques du Basic de la machine et pourra donc difficilement être transposé. Il occupe un peu plus de 12 Ko en mémoire vive, mais on peut réduire sa taille en supprimant la présentation, et toutes les lignes de remarques (REM) qui commentent le fonctionnement du programme. Le gain est d'environ 2 Ko. Le programme ayant été écrit sous le mode AUTO, il est conseillé de le saisir de la même façon, ce qui évite la frappe des numéros de ligne. Autant de temps mis au service de la musique !

LISTE DES VARIABLES

  • Toutes les variables numériques sont entières sauf Y qui vaut 125000/440.
  • S : section en cours
  • HS : hauteur du pas en cours
  • LS : durée du pas en cours
  • NS : nombre de pas en cours pour la section S
  • N : numéro de l'enveloppe en cours de définition
  • HSO : hauteur du pas précédent
  • LSO : durée du pas précédent
  • L(T) : ordonnée de la note affichée en fonction de la touche (T) appuyée
  • C(T) : abscisse de la note affichée en fonction de la touche (T) appuyée
  • N(T) : note jouée en fonction de la touche (T) appuyée
  • NOI(T) : bruit joué en fonction de la touche (T) appuyée
  • NT(N,S) : nombre de pas de la section S et l'ERT n
  • HT(N,S) : hauteur de pas de la section S et l'ENT PI
  • LT(N,S) : durée de pas de la section S et PETIT N
  • NV(N,S) : idem NV pour i'ElW N
  • HV(N,S) : idem HT pour l'ENV N
  • LV(N,S) : idem LT pour l'ENV N
  • EV(N) : drapeau de définition de l'ENV (si -1, vrai)
  • ET(N) : drapeau de définition de PEUT (vrai si -1)
  • Z : drapeau de validation du pas en cours par Copy.
  • Q : octave base en cours. Q+1 est l'octave haut.
  • DU: paramètre de durée de SOUND.
  • VO: volume initial de SOUND
  • VEN : numéro de l'ENV en fonction
  • TEN : numéro de l'ENT en fonction
  • NOTE : drapeau de note : N(T) est jouée si NOTE=l
  • NOIS : drapeau de bruit : NOI(T) est joué si NOIS^l
  • TRAN$ : Code de transparence pour l'écriture des caractères sur le graphique
  • OUESC$ ; Code XOR pour le graphique (bascule on-off]
  • NORM$ : graphique en mode normal (force le mode)
  • OPAK$ : fin du mode transparent


ANALYSE DU PROGRAMME

Lignes

  • 150-450 : initialisation
  • 470-760: présentation (partie facultative)
  • 780-1710: module clavier musical
  • 820-870: définition de la vitesse de répétition des touches en fonction de la durée de la note. Evite le < hachage > des ENV longues.
  • 900-960: affectation d'une note à chacune des 24 touches supérieures du clavier par calcul.
  • 970-1120: scrutation des touches du clavier musical.
  • 1130-1410: dessin du clavier musical.
  • 1420-1520: affectation des coordonnées de la note affichée en fonction de la touche appuyée.
  • 1530-1550: affichage de la fenêtre
  • 1560-1710: menu accessible par les deux barres obliques
  • 1730-1830: choix de la durée
  • 1850-2830: modèle de définition d'enveloppes
  • 1900-2050: dessin du quadrillage
  • 2060-2240: menu des enveloppes
  • 2250-2320: scrutation des touches
  • 2340-2390: touche Haut
  • 2400-2450: touche Bas
  • 2460-2500: touche Qauche
  • 2510-2560: touche Droite
  • 2570-2640: touche COFY
  • 2650-2830: stockage des variables. Affichage des paramètres définis et affectation à ENV ou ENT (création d'enveloppe)
  • 2850-3060: choix d'une ENT parmi celles définies
  • 2970-3060: visualisation de l'ENT ou de l'ENV choisie, si elle est définie.
  • 3080-3100: choix d'une ENV parmi celles définies
  • 3120-3370: ajout de bruit
  • 3140-3230: menu (note seule, bruit seul, note + bruit)
  • 3360-3370: affectation d'une période de bruit en fonction de la touche appuyée.
  • 3390-3430: détecte l'entrée d'une durée hors-limites.
Serge CECI, SVM n°22

★ ANNÉE: ???
★ CONFIG: 64K + AMSDOS
★ LANGAGE:
★ LICENCE: LISTING
★ AUTEUR: SERGE CECI

★ AMSTRAD CPC ★ DOWNLOAD ★

File:
» AMSON-Serge  CECI-SVM    FRENCHDATE: 2013-09-03
DL: 54 fois
TYPE: ZIP
SIZE: 29Ko
NOTE: 40 Cyls
.HFE: OUI

Type-in/Listing:
» AMSON-Serge  CECI-SVM    LISTING    FRENCHDATE: 2015-10-06
DL: 27 fois
TYPE: text
SIZE: 13Ko

Je participe au site:
» Newfile(s) upload/Envoye de fichier(s)
★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Applications » Tablatur
» Applications » Sound to Light
» Applications » Musik - Tutor (CPC Amstrad International)
» Applications » Amstrad Keyboard Organ (Home Computing Weekly)
» Applications » Env - Composer
» Applications » Generateur de Basse Frequense Stereo

QUE DIT LA LOI FRANÇAISE:

L'alinéa 8 de l'article L122-5 du Code de la propriété intellectuelle explique que « Lorsque l'œuvre a été divulguée, l'auteur ne peut interdire la reproduction d'une œuvre et sa représentation effectuées à des fins de conservation ou destinées à préserver les conditions de sa consultation à des fins de recherche ou détudes privées par des particuliers, dans les locaux de l'établissement et sur des terminaux dédiés par des bibliothèques accessibles au public, par des musées ou par des services d'archives, sous réserve que ceux-ci ne recherchent aucun avantage économique ou commercial ». Pas de problème donc pour nous!

CPCrulez[Content Management System] v8.7-desktop/cache
Page créée en 092 millisecondes et consultée 1112 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.