|  | ||||||||||||
| Une présentation sommaire des différentes commandes du MSX Basic triées alphabetiquement. 
 | ||||||||||||
|  | 
| READ var1,var2… | |
|  Attribue la valeur lue dans DATA … à la variable var1 puis la suivante à var2, etc. La variable peut être numérique ou une variable chaîne mais la valeur lue doit être de même nature que la variable. | |
| REM commentaire  | |
|  Ignore les données qui vont suivre ; permet de mettre un commentaire dans le programme. REM s’écrit aussi ’ (apostrophe). | 
| RENUM num1,num2,pas | |
|  Numérote les lignes du programme en mémoire. num1 : nouveau numéro de la première ligne.(10 par défaut) num2 : numéro de l’ancienne numérotation à partir duquel le programme est renuméroté.(le premier par défaut) pas : pas de progression des numéros de ligne. (10 par défaut) | |
| RESTORE num | |
|  Renvoie la lecture des DATA par READ à la ligne num. Si num est omis la lecture se fera au premier DATA du programme. | |
| RIGHT$ (vl$,vli) | |
|  Donne une chaine constitué des vli derniers caractères de la chaine vl$. | |
| RND (vli) | |
|  Donne un nombre aléatoire entre 0 et 1.  Si vli > 0 : série de nombre aléatoire à partir du début. Si vli < 0 : série de nombre aléatoire dépandant de la valeur de vli. Si vli =0 : reprend le dernier nombre aléatoire donné. avec var = RND(-TIME) avant d’appeler RND permet d’obtenir de nouveaux nombres aléatoires à chaque « run ». | |
| RSET vr$=”txt” LSET vr$=”txt” | |
|  Ecrit txt dans un fichier à accès direct. RSET aligne txt à droite dans l’emplacement réservé en complétant le reste par des espaces. LSET aligne txt à gauche dans l’emplacement réservé en complétant le reste par des espaces. | |
| RUN num Run”lec:nom”,R | |
|  Lance le programme en mémoire. Si num est spécifié le programme est exécuté à partir de la ligne num. Si « lec :nom » est spécifié le programme nom du lecteur lec est lancé. RUN ferme tous les fichiers encore ouvert sauf si ,R est spécifié. | 
|  | 
| SAVE “lec:nom”,A | |
|  Sauvegarde le programme en mémoire sur le périphérique lec sous le nom de fichier nom. Si A est spécifié le programme est sauvegardé au format ASCII. les deuxièmes guillemets peuvent être omis. | |
| SCREEN num1,num2,num3,num4,num5,num6 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|  Définit le mode écran num1 :mode écran ( 0 à 8 ) - les différents modes écran du MSX2: 
 num3 : signal sonore en appuyant sur une touche ( 1 : allumé ou 0 : éteint) num4 :vitesse d’enregistrement sur cassette ( 1 :1200bauds, 2 :2400bauds) num5 :imprimante ( 0 :MSX, 1 :non MSX ) num6 :affichage (0 :Normal. 1 :Entrelacé. 2 :Normal succession paires & impaires. 3 :Entrelacé succession paires & impaires) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| SET ADJUST (X,Y) | |
|  Recadre l’image suivant X et Y. X peut varier de -7 à 8 .. Y peut varier de -7 à 8 . Le réglage est sauvegardé dans la pile. | |
| SET BEEP (vli1,vli2) | |
|  Réglage du son de la commande BEEP. vli1 : sonorité -1 :1/4 de mesure. -2 :1 mesure. -3 : 2 notes d’une mesure -4 : 3 notes d’1/4 de mesure. vli2 : volume de 1 à 4. Le réglage est sauvegardé dans la pile. | |
| SET DATE ”JJ/MM/AA” ,A | |
|  Réglage de la date. JJ :jour. – MM :mois. – AA :année. Si ,A est spécifié, seul le jour est pris en compte. | |
| SET PAGE pag1,pag2 | |
|  Gestion des pages écrans, dans mode écran 5 à 8. pag1 : page affichée. pag2 : page ou les instuctions sont effectuées. | |
| SET PASSWORD vl$ | |
|  Attribue un mot de passe à l’ordinateur. Ce mot de passe est demandé au démarrage de l’ordinateur. vl$ : chaine de 255 caractères maximum. Instruction annulée par SET PROMPT, SET TITLE ou un nouveau SET PASSWORD. | |
| SET PROMPT vl$ | |
|  Change le message du prompt (Ok) par vl$. | |
| SET SCREEN | |
|  Sauvegarde les paramètre écran dans la pile. Les paramètres sauvegardées sont celles des instructions :SCREEN,WIDTH,COLOR,KEY ON/OFF. | 
| SET TIME “HH:MM:SS”,A | |
|  Réglage de l’heure ou de l’alarme. HH : heure. – MM : minute. – SS : seconde. Si ,A est spécifié, il s’agit du réglage de l’alarme. | |
| SET TITLE vl$,vli | |
|  Affiche le titre vl$ sur l’écran d’accueil (seuls 6 caractères sont affichés.). Si vl$ dépasse 6 caractères il faudra appuyer sur une touche pour lancer l’ordinateur. vli définit la couleur d’affichage de l’écran d’accueil (de 1 à 4) | |
|  | 
| SGN (vln) | |
|  Donne -1 si vln est négatif, 0 si nul et 1 si positif. | |
| SIN (vln) | |
|  Donne le sinus de vln. vln en radians. | |
| SOUND num,vli | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|  Génère un son suivant les paramètres suivants : 
 * Cas particulier du registre 7: On joue sur la valeur binaire des 6 derniers bits pour determiner quels canaux sont "ouverts". 
 Exemple pour 43 (00101011): bruit dans canaux Aet C, son dans canaux A et B. ** Cas particulier du registre13: Forme de l'enveloppe comme suit: 
 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| SPACE$ (vli) | |
|  Donne une chaine de vli espaces compris entre 0 et 255. | |
| SPC (vli) | |
| Donne une chaine de vli espaces compris entre 0 et 255.  Utilisé uniquement avec PRINT (écran) et LPRINT (imprimante) | |
| SPRITE ON   | 
| Active l’interruption ON SPRITE GOSUB lors d’une collision de sprites.  | 
| SPRITE OFF   | 
| désactive l’interruption ON SPRITE GOSUB lors d’une collision de sprites. | 
|  SPRITE STOP | 
| met en pause l’interruption ON SPRITE GOSUB lors d’une collision de sprites. La détection se fait, mais l’action ne sera déclenché que lors de la rencontre de SPRITE ON. | 
| SPRITE$(num)=chr$(oct1)+chr$(oct2)+… | |||||
| Détermine la forme du sprite N°num. num a une valeur maxi de 63 pour des sprites 16x16 et 255 pour 8x8. Différents points du sprite sont allumés suivant la valeur binaire de oct : 0=transparent / 1=coloré. 8 fonctions CHR$ sont nécessaires pour un sprite 8 x 8 et 32 pour un 16 x 16. Les 4 blocs 8x8 d’un sprite 16x16 s’articulent comme suit : 
 | |||||
| SQR (vln) | |
|  Donne la racine carrée de vln. vln doit être positif ! | |
| STICK (vli) | ||||||||||
|  Donne la position de la manette désignée par vli. Si vli = 0 il désigne les flèches du clavier. Si vli = 1 il désigne la manette du port 1. Si vli = 2 il désigne la manette du port 2. Les valeurs suivantes sont renvoyées suivant la position de la manette: 
 | ||||||||||
| STOP | |
|  Interrompt l’exécution du programme. | 
| STOP ON   | 
| Active l’interruption ON STOP GOSUB lors de l’appui sur Ctrl/Stop.  | 
| STOP OFF   | 
| désactive l’interruption ON STOP GOSUB lors de l’appui sur Ctrl/Stop. | 
|  STOP STOP | 
| met en pause l’interruption ON STOP GOSUB lors de l’appui sur Ctrl/Stop. La détection se fait, mais l’action ne sera déclenché que lors de la rencontre de STOP ON. | 
| STRIG(vli) | |
|  Donne -1 si le bouton désigné par vli est enfoncé et 0 sinon. Si vli=0 barre espace. Si vli=1 Bouton 1 manette 1 Si vli=2 Bouton 1 manette 2 Si vli=3 Bouton 2 manette 1 Si vli=4 Bouton 2 manette 2 | |
| STRIG(num) ON   | 
| Active l’interruption ON STRIG GOSUB .  | 
| STRIG(num)OFF   | 
| désactive l’interruption ON STRIG GOSUB . | 
|  STRIG (num) STOP | 
| met en pause l’interruption ON STRIG GOSUB . La détection se fait, mais l’action ne sera déclenché que lors de la rencontre de STOP ON. | 
| num désigne le bouton d'une manette: Strig(0) :Barre espace. Strig(1) :Bouton1 manette1. Strig(2) :Bouton1 manette2. Strig(3) :Bouton2 manette1. Strig(3) :Bouton2 manette2. | 
| STR$ (vln) | |
|  Transforme le nombre vln en chaine de caractères. | |
| STRING$ (vli1,oct2) STRING$ (vli1,vl$) | |
|  Donne une chaîne de vli1 caractères ayant oct2 comme code ASCII ou le premier caractère de vl$. | |
| SWAP var1,var2 | |
|  Echange les valeurs de var1 et var2. var1 et var2 sont de même type. | |