f — Provoque l'écriture de valeurs dans une table de fonction en mémoire par une routine GEN.
Provoque l'écriture de valeurs dans une table de fonction en mémoire par une routine GEN pour utilisation par des instruments.
p1 -- Numéro de table sous lequel la fonction mémorisée sera connue. Un nombre négatif signifie une demande de destruction de la table.
p2 -- Date d'activation de la génération de la fonction (ou de sa destruction) en pulsations.
p3 -- Taille de la table de la fonction (c'est-à-dire nombre de points). Doit être une puissance de 2, ou une puissance de 2 plus 1 (voir ci-dessous). La taille de table maximale est 16777216 (224) points.
p4 -- Numéro de la routine GEN à appeler (voir ROUTINES GEN). Une valeur négative supprimera la normalisation.
p5
p6 ... -- Paramètres dont la signification est déterminée par la routine GEN particulière.
Les tables de fonction sont des tableaux de valeurs en virgule flottante. Ces tableaux peuvent avoir n'importe quelle longueur pourvu que ce soit une puissance de 2 ; l'allocation d'espace mémoire est toujours prévue pour 2n points plus un point de garde. La valeur du point de garde, utilisée pour la lecture avec interpolation, peut être fixée automatiquement selon le but de la table : si la taille est une puissance de 2 exacte, le point de garde sera une copie du premier point ; cela convient pour la lecture cyclique avec interpolation comme dans oscili, etc., et devrait même être utilisé pour la version sans interpolation oscil pour rester consistant. Si la taille est fixée à 2n + 1, le point de garde prolongera automatiquement le contour des valeurs de la table ; cela convient pour les fonctions à lecture non-cyclique comme dans envplx, oscil1, oscil1i, etc.
Les tables sont allouées dans la mémoire primaire, avec les données d'instrument. Le nombre maximum de tables était limité à 200. Ceci a changé et il n'est plus limité que par la quantité de mémoire disponible. (Actuellement il y a une limitation logicielle de 300, qui est augmentée automatiquement selon les besoins).
On peut supprimer une table de fonction existante par une instruction f contenant un p1 négatif et une date d'activation adéquate. Une table de fonction est également supprimée par la génération d'une autre table avec le même p1. Les fonctions ne sont pas automatiquement effacées à la fin d'une section de partition.
La date p2 est traitée de la même manière que dans l'instruction i en tenant compte du tri et des modifications par les instructions t. Si une instruction f et une instruction i ont le même p2, le tri donnera la priorité à l'instruction f afin que le table de fonction soit disponible pendant l'initialisation de la note.
On peut utiliser une instruction f 0 (avec zéro en p1 et p2 positif) pour créer une date sans action associée. De tels marqueurs temporels sont utiles pour remplir une section de partition (voir l'instruction s).