Chipgrid / Documentation / Guides
Mobiles et voies
Des flèches qui avancent, des émetteurs qui les lancent, des rails, des boucles et des aiguillages, pour que la disposition du code devienne le rythme.
Les mobiles
> < ^ v sont des mobiles. À chaque tick, un mobile avance d’une case dans sa
direction. Quand la case suivante n’est pas vide, il s’arrête et devient un bang là où
il est. Si ce bang touche une voix, la voix joue.
E est un émetteur : tous les N ticks (son entrée de gauche), il lance un > vers sa
droite. La distance entre l’émetteur et ce que la flèche heurte est un délai :
4E......P4C24
La polyrythmie
Des émetteurs à des périodes différentes se décalent peu à peu, puis se retrouvent. Tiré de l’exemple Mobiles & polyrythmie :
8E..................P5C02
...................F4
6E..................P5G02
...................F7
cE..................N010
...................Fb
aE..................B3C2o
...................F2
Des couloirs tous les 8, 6, 12 (c) et 10 (a) ticks. Le bang que devient chaque flèche
touche aussi le F en dessous : chaque couloir fait flasher l’écran de sa couleur.
Les rails
_ et | sont des rails. Ils ne font rien tout seuls : un mobile roule dessus, et le
rail réapparaît derrière lui. _ et | sont la même chose, l’un pour les voies
horizontales, l’autre pour les verticales. Ils rendent vos voies visibles, même à l’arrêt.
Les boucles
) tourne un mobile vers sa droite, ( vers sa gauche, de tous les côtés. Un virage n’a
pas d’entrée : ses quatre côtés restent libres, et une voie peut se refermer en
boucle : quatre virages, des rails et une flèche, et ça tourne sans fin.
Quand le mobile passe un virage, tout ce qui touche ce virage reçoit un bang (par la gauche, le haut ou le bas). Placez des voix autour des virages et la boucle devient un séquenceur visible :
)>_____)P5C14
|......|
|......|
)______)
B2C2
Cette boucle fait 7 cases de large et 3 de haut, comptées d’un virage à l’autre : un tour
prend donc 2 × (7 + 3) − 4 = 16 ticks, exactement une mesure. P joue quand la flèche
passe le virage en haut à droite, B une demi-mesure plus tard en bas à gauche. Tapez un
second > sur les rails pour deux fois plus de coups. ) pour les boucles dans le sens des
aiguilles d’une montre, ( pour l’autre sens : côte à côte, elles se répondent en miroir.
Les aiguillages
: est un aiguillage. Un mobile qui l’atteint par la gauche, le haut ou le bas repart
dans le sens indiqué par la case à sa droite : ^ en haut, v en bas, < à gauche, > à
droite, ou vide pour tout droit.
........P4C24
........|
........|
8E______:^
Tous les 8 ticks, une flèche roule sur les rails, monte à l’aiguillage et s’arrête sous
P : un bang. Changez ^ en v et les flèches descendent.
La case de l’aiguillage accepte aussi des nombres : 0 gauche, 1 droite, 2 haut, 3
bas. Une horloge, une séquence ou un lien
peut donc changer la route pendant la lecture :
8C2
..S^v
...@r
........P4C24
........|
........|&r
8E______:
........|
........|
........B2C2
Une horloge parcourt la liste ^v et l’envoie sur le lien r. &r l’écrit dans
l’aiguillage : un seul flot de flèches, deux voix, chacune son tour.
Deux règles : laissez au moins une case vide entre un aiguillage et une voix (le mobile a besoin d’un tick pour devenir un bang), et si la sortie est bloquée, le mobile s’arrête et fait un bang sur place.
S’y retrouver
- reprise remet chaque mobile où vous l’avez tapé et vide l’écran, sans toucher à votre code. Utile quand les flèches se sont accumulées ou égarées.
- Sélectionnez toute une boucle en glissant dessus, puis glissez la sélection (ou Ctrl + flèches) : le code se déplace d’un bloc.
- Les exemples Routes construisent des trains, des routeurs et des tables d’effets ; Le code comme œuvre dispose des programmes entiers en images, avec des roues de rails.