Bienvenue sur le wiki de Nuit debout, nous sommes le 3017 mars.




Modification de Villes/Montluçon/sciences/PC-BASIC

Aller à : navigation, rechercher
Besoin d'aide ? Cliquez ici.

Attention : Vous n’êtes pas connecté. Votre adresse IP sera visible de tout le monde si vous faites des modifications. Si vous vous connectez ou créez un compte, vos modifications seront attribuées à votre nom d’utilisateur, entre autres avantages.

Cette modification va être défaite. Veuillez vérifier les modifications ci-dessous, puis publier si c’est bien ce que vous voulez faire.
Version actuelle Votre texte
Ligne 1 : Ligne 1 :
PC-BASIC est un logiciel gratuit, multi-plateforme interprète pour GW-BASIC, Advanced BASIC (BASICA), PCjr Cartridge Basic et Tandy 1000 GWBASIC.
 
  
Il interprète ces dialectes BASIC avec un haut degré de précision, dans le but de compatibilité bogue pour bogue.
+
Overview
  
PC-BASIC émule vidéo et audio du matériel le plus commun sur lequel ces BASICs utilisés pour exécuter.
+
A free, cross-platform emulator for the GW-BASIC family of interpreters.
  
PC-BASIC peut lire  texte brut, tokenised et fichiers .BAS protégés.
+
PC-BASIC is a free, cross-platform interpreter for GW-BASIC, Advanced BASIC (BASICA), PCjr Cartridge Basic and Tandy 1000 GWBASIC. It interprets these BASIC dialects with a high degree of accuracy, aiming for bug-for-bug compatibility. PC-BASIC emulates the most common video and audio hardware on which these BASICs used to run. PC-BASIC runs plain-text, tokenised and protected .BAS files. It implements floating-point arithmetic in the Microsoft Binary Format (MBF) and can therefore read and write binary data files created by GW-BASIC.
  
Il met en oeuvre l'arithmétique flottante dans le format Microsoft binaire (MBF) et peut donc
+
PC-BASIC is free and open source software released under the GPL version 3.
lire et écrire des fichiers de données binaires créés par GW-BASIC.
+
  
PC-BASIC est un logiciel libre et open source publié sous la GPL version 3.
+
See also the PC-BASIC home page.
  
Voir aussi la [page d'accueil PC-BASIC] (http://robhagemans.github.io/pcbasic/).
+
Quick Start Guide
  
! [] (Https://robhagemans.github.io/pcbasic/screenshots/pcbasic.png)
+
This quick start guide covers installation and elementary use of PC-BASIC. For more information, please refer to the full PC-BASIC documentation which covers usage, command-line options and a comprehensive GW-BASIC language reference. This documentation is also included with the current PC-BASIC release.
  
== Contribuer à PC-BASIC ==
+
If you find bugs, please report them on the SourceForge discussion page or open an issue on GitHub. It would be most helpful if you could include a short bit of BASIC code that triggers the bug.
 +
Installation
  
Merci pour votre intérêt à contribuer au PC-BASIC!
+
Packaged distributions can be downloaded from one of the following locations:
  
 +
    PC-BASIC releases on GitHub
 +
    PC-BASIC releases on SourceForge
  
=== rapports de bugs===
+
On Windows:
  
Si vous trouvez des bugs, s'il vous plaît les signaler sur le [Page SourceForge de discussion] (https://sourceforge.net/p/pcbasic/discussion/bugs/) ou [ouvrir une question sur GitHub] (https://github.com/ robhagemans / pcbasic / numéros).
+
    run the installer
 +
    to start, click PC-BASIC in your Start menu
  
Dans votre rapport de bug, s'il vous plaît préciser:
+
On OS X:
  
* Quelle version de PC-BASIC vous utilisez;
+
    mount the disk image
* Quel est le système que vous utilisez, y compris la version et si elle est 64-bit ou 32-bit exploitation;
+
    to start, double click the PC-BASIC app
* Ce que tu as fait;
+
* Qu'est-ce que vous vous attendiez à arriver;
+
* Qu'est-il arrivé à la place.
+
  
La meilleure chose à faire dans un rapport de bogue est d'afficher un petit programme BASIC qui déclenche le bogue ou le comportement indésirable.
+
On Linux and other Unix:
  
Cela permet souvent moi de voir ce qui se passe tout de suite, sinon je peux l'essayer pour moi-même. Il est presque magique comme ça.
+
    untar the archive
 +
    run sudo ./install.sh. You may be asked to install further dependencies through your OS's package management system.
 +
    to start, click PC-BASIC in your Applications menu or run pcbasic on the command line.
  
Une fois que vous postez votre rapport, s'il vous plaît consulter dans les prochains jours: souvent, il est pas évident pour moi depuis le premier rapport que le problème exact est, puisque les gens utilisent différentes configurations, ont des attentes différentes et de faire des hypothèses différentes. Je vais souvent réponds assez rapidement pour vous demander un peu plus d'informations.
+
If the options above are not applicable or you prefer to install from source, please consult INSTALL.md for detailed instructions.
 +
BASIC survival kit
  
=== Code contributifs ===
+
Click on the PC-BASIC application icon or run pcbasic on the Windows, OSX or Linux command line and PC-BASIC will start in direct mode with no program loaded. The default emulation target is GW-BASIC 3.23 on a generic IBM-compatible PC with a VGA video card.
  
La base de code actuel de PC-BASIC a été écrit par un seul auteur, Rob Hagemans.
+
PC-BASIC starts in direct mode, a 1980s-style interface operated by executing BASIC commands directly. There is no menu, nor are there any of the visual clues that we've come to expect of modern software.
Cela ne veut pas dire qu'il doit rester. Si vous souhaitez contribuer
+
code pour PC-BASIC, s'il vous plaît contacter l'auteur au _robhagemans@users.sourceforge.net_.
+
  
Vous aurez besoin de se mettre d'accord pour vos contributions de code pour être distribué sous la licence [License Expat MIT] (https://opensource.org/licenses/MIT).
+
A few essential commands to help you get around:
Ceci est une licence plus permissive que PC-BASIC est (actuellement) publié sous. La raison pour laquelle je demande
+
LOAD "PROGRAM" loads the program file named PROGRAM.BAS into memory, but does not run it yet.
une licence permissive pour les contributions est que cela me permet de re-licence le code à une date ultérieure.
+
LIST displays the BASIC code of the current program.
 +
RUN starts the current program.
 +
SAVE "PROGRAM",A saves the current program to a human-readable text file named PROGRAM.BAS.
 +
NEW immediately deletes the current program from memory.
 +
SYSTEM exits PC-BASIC immediately, discarding any unsaved program or data.
  
== Installation à partir des sources ==
+
Use one of the key combinations Ctrl+Break, Ctrl+Scroll Lock, Ctrl+C or F12+B to interrupt a running program and return to direct mode.
Pour installer à partir des sources, télécharger la distribution source et décompresser l'archive TGZ.
+
Configuration
Les paquets suivants sont nécessaires ou recommandés lors de l'installation PC-BASIC de la source:
+
  
| package | OS | Statut | Nécessaire pour
+
You can supply options to change PC-BASIC's behaviour by editing the configuration file. If you install the Windows package, the installer will automatically create a shortcut to this file in the PC-BASIC start menu folder. The file can also be found in the following location:
|-----------------------------------------------------------------|--------------------|--------------|----------------------------------------
+
OS Configuration file
| [Python 2.7.6] (http://www.python.org/download/releases/2.7.6/) | tout | nécessaire |
+
Windows %APPDATA%\pcbasic\PCBASIC.INI
| [Pywin32] (https://sourceforge.net/projects/pywin32/) | fenêtres | nécessaire |
+
OS X ~/Library/Application Support/pcbasic/PCBASIC.INI
| [PyXDG] (http://freedesktop.org/wiki/Software/pyxdg/) | Linux, autre | nécessaire |
+
Linux ~/.config/pcbasic/PCBASIC.INI
| [PyGame 1.9.1] (http://www.pygame.org/download.shtml) | tout | essentielle | sons et graphiques
+
| [NumPy] (https://sourceforge.net/projects/numpy/files/) | tout | essentielle | sons et graphiques
+
| [Pyserial] (https://pypi.python.org/pypi/pyserial) | tout | recommandé | accès au port série physique ou émulé
+
| [PyParallel] (https://pypi.python.org/pypi/pyserial) | Windows, Linux | option | accès au port parallèle physique
+
| [Pexpect] (http://pexpect.readthedocs.org/en/latest/install.html) | OSX, Linux, autre | option | `Shell` native
+
  
Dans cette liste, _autre_ fait référence aux systèmes d'exploitation autres que Windows, Linux ou OSX.
+
For example, to start with the emulation target set to Tandy 1000 GW-BASIC, include the following line under [pcbasic] in the configuration file:
  
Sur ** de Windows **, vous devez télécharger tous les paquets nécessaires à partir des sites Web des projets liés ci-dessus.
+
preset=tandy
  
Télécharger `launcher.exe` de la [ANSI | tuyau page release] (http://github.com/robhagemans/ansipipe/releases/) et placez-le dans le répertoire où` pcbasic.py` est situé.
+
A default configuration file will be created the first time you run PC-BASIC. See the comments in that file or consult the documentation for more information and example options.
Vous pouvez maintenant exécuter pc-base avec la commande `lanceur python pcbasic.py`. Sans ANSI | pipe, PC-BASIC fonctionne, mais vous
+
être incapable d'utiliser les interfaces à base de texte (les options `` -t` et -b`) car ils n'imprimer que du charabia sur la console.
+
  
L'ANSI | source de tuyau de C est inclus avec PC-BASIC; si vous préférez cela à télécharger le binaire du lanceur, vous pouvez le compiler à partir des sources en exécutant `winbuild.bat`. Vous aurez besoin d'un compilateur C de travail (MinGW ou Microsoft Visual C ++) sur votre système.
+
If you start PC-BASIC from the command prompt (on Windows this is the C:\> prompt), you can supply configuration options directly. For example:
  
Sur ** OSX **, il existe plusieurs versions de Python 2.7 et tous les téléchargements doivent correspondre à votre version et de l'architecture du processeur. Il est un peu délicat, je le crains. L'option la plus simple semble être l'installation à la fois Python et PyGame par MacPorts ou Homebrew.
+
pcbasic PROGRAM.BAS runs the program file named PROGRAM.BAS directly.
 +
pcbasic --preset=tandy starts with the emulation target set to Tandy GW-BASIC on a Tandy 1000.
 +
pcbasic --preset=pcjr starts with the emulation target set to Cartridge BASIC on an IBM PCjr.
 +
pcbasic -h shows all available command line options.
  
Sur les distributions Linux ** avec APT ou DNF ** (y compris Debian, Ubuntu, Mint et Fedora), le script d'installation va installer automatiquement les dépendances si elle est exécutée avec les privilèges root.
+
If you use PC-BASIC from the command prompt on Windows, make sure you run the pcbasic.com binary. You will not see any output if you call the pcbasic.exe binary.
 +
Getting programs
  
Le script d'installation peut également être utilisé sur d'autres Unix ** ** systèmes ou lorsqu'ils ne sont pas l'installation en tant que root. Les dépendances peuvent souvent être installés par votre gestionnaire de paquets. Par exemple, sur les systèmes basés sur Debian:
+
The following pages have GW-BASIC program downloads, lots of information and further links.
  
        sudo apt-get install python2.7 python-xdg python-pygame python-numpy python-serial python-pexpect python-parallèle xsel
+
    KindlyRat's archived Geocities page has a number of classic games and utilities.
 +
    PeatSoft provides GW-BASIC documentation, utilities and some more games.
 +
    Neil C. Obremski's gw-basic.com has some fun new games made recently in GW-BASIC.
 +
    Leon Peyre has a nice collection of GW-BASIC programs, including the (in)famous first IBM PC game DONKEY.BAS.
 +
    Brooks deForest provides his amazing Tandy GW-BASIC games, all released into the public domain.
 +
    TVDog's Archive is a great source of information and GW-BASIC programs for the Tandy 1000.
 +
    Phillip Bigelow provides scientific programs written in GW-BASIC.
 +
    Gary Peek provides miscellaneous GW-BASIC sources which he released into the public domain.
 +
    S.A. Moore's Classic BASIC Games page provides the BASIC games from David Ahl's classic book.
 +
    Joseph Sixpack's Last Book of GW-BASIC has lots of office and utility programs, including the PC-CALC spreadsheet.
 +
    Thomas C. McIntyre's GeeWhiz Collection has business applications, games and reference material.
 +
    cd.textfiles.com has tons of old shareware, among which some good GW-BASIC games.
  
Sur Fedora:
+
User's guide
 +
The working environment
  
        sudo DNF installer python pyxdg pygame numpy pyserial python-pexpect xsel
+
The first thing you'll see when starting PC-BASIC is the working environment. Like GW-BASIC, but unlike practically all modern compilers and interpreters, PC-BASIC's working environment serves both as a development environment and as a canvas on which to execute BASIC commands directly. With a few exceptions, practically all commands that can be run in the working environment can be used in a program, and vice versa.
  
Sur FreeBSD:
+
The default PC-BASIC screen has 25 rows and 80 columns. The 25th row is used by PC-BASIC to show keyboard shortcuts, which means you can't use it to type on. In some video modes, there are only 40 or 20 columns.
  
        sudo pkg installer python27 PY27-xdg PY27-jeu PY27-numpy PY27-série PY27-pexpect xsel
+
Logical lines exceed the width of the physical row: if you keep typing beyond the screen width, the text will wrap to the next line but PC-BASIC will still consider it part of the same line. A logical line can be at most 255 characters long; if you type more than 255 characters, it will ignore the remainder. A line can also be wrapped by a line-feed, entered with Ctrl+Enter.
  
Notez que PyParallel ne sont pas disponibles à partir des prises en pension de Fedora et FreeBSD. PyParallel ne supporte pas BSD; sur Fedora, vous aurez besoin d'installer de la source si vous avez besoin d'accéder aux ports parallèles physiques. Cependant, étant donné que la plupart des machines modernes ne sont pas réellement des ports parallèles, vous ne avez probablement pas besoin. PyParallel est _not_ nécessaire pour l'impression sur un CUPS ou imprimante Windows.
+
If you press Enter, PC-BASIC will attempt to execute the logical line on which the cursor is placed as a command. When the command is executed correctly, PC-BASIC will display the prompt Ok. If there is an error, it will display an error message followed by Ok. If the line starts with a number, it will be stored as a program line. No prompt is displayed.
 +
Special keys
  
=== Compilation des sources de dépôt GitHub ===
+
The following keys have a special effect in the working environment:
Les instructions ci-dessus renvoient à la source * Distribution *, qui a pré-construit
+
↑ or Ctrl+6 Move the cursor up, except at the top row.
les fichiers de documentation et d'autres subtilités.
+
↓ or Ctrl+- Move the cursor down, except at row 24.
Si vous souhaitez utiliser le code source tel quel dans le repo GitHub,
+
← or Ctrl+] Move the cursor left. The left edge of the screen wraps around, except at the top row.
vous aurez besoin pour construire les docs vous. Notez que `-h` pcbasic échouera si vous omettez
+
→ or Ctrl+/ Move the cursor right. The right edge of the screen wraps around, except at row 24.
ce. Compiler la documentation nécessite les modules Python
+
Ctrl+← or Ctrl+B Move to the first letter of the previous word. Words consist of letters A—Z and figures 0—9.
[ `Lxml`] (https://pypi.python.org/pypi/lxml/3.4.3) et [` markdown`] (https://pypi.python.org/pypi/Markdown).
+
Ctrl+→ or Ctrl+F Move to the first letter of the next word.
Bien sûr, vous aurez également besoin [ `git`] (https://git-scm.com/) et toutes les dépendances de PC-BASIC énumérés ci-dessus.
+
Tab or Ctrl+I Move the cursor to the next tab stop. Tab stops are 8 columns wide.
 +
Backspace or Ctrl+H Delete the character left of the cursor, shift all further characters on the logical line one position to the left and change the attributes of those characters to the current attribute. At the left edge of the screen, this does the same as Del.
 +
Del or Ctrl+Backspace Delete the character at the cursor and shift all further characters one position to the left, changing attributes to current.
 +
Esc or Ctrl+[ Delete the current logical line.
 +
Ctrl+End or Ctrl+E Delete all characters from the cursor to the end of the logical line.
 +
Ctrl+Break or Ctrl+C or Ctrl+Scroll Lock Jump to the first column of the next line, without executing or storing the line under the cursor.
 +
Enter or Ctrl+M Execute or store the current logical line. The complete line on the screen is considered part of the command, even if you did not type it. A line starting with a number is stored as a program line.
 +
End or Ctrl+N Move the cursor to the first position after the end of the logical line.
 +
Home or Ctrl+K Move the cursor to the top left of the screen.
 +
Ctrl+Home or Ctrl+L Clear the screen and move the cursor to the top left of the screen.
 +
Ctrl+Enter or Ctrl+J Move to the first column of the next line, connecting the two lines into one logical line.
 +
Ctrl+G Beep the speaker.
 +
Pause or Ctrl+Num Lock Pause. Press another key to resume.
 +
Ctrl+Prt Sc Toggle echoing screen output to the printer (or other device attached to LPT1:).
 +
Shift+Prt Sc Print the screen.
 +
Ins or Ctrl+R Toggle insert mode. In insert mode, characters are inserted rather than overwritten at the current location. If insertion causes the line to extend the physical screen width, the logical line extends onto the next line. Arrow keys exit insert mode.
  
1. Clone le repo github
+
When a program is started, the commands in the program are followed until the program quits and returns to direct mode or until user input is required. When a program is running, a few keys have immediate effect:
 +
Pause or Ctrl+Num Lock Pause execution. Press another key to resume.
 +
Ctrl+Break or Ctrl+Scroll Lock Stop execution and return to direct mode. A Break message is printed.
 +
Ctrl+C If ctrl-c-break=True: stop execution and return to direct mode. A Break message is printed.
  
        git clone --recursive https://github.com/robhagemans/pcbasic.git
+
If user input is required by the statements INPUT, LINE INPUT, or RANDOMIZE, most keys have the same effect as in direct mode. The following keys have a different effect:
 +
Ctrl+Break or Ctrl+C or Ctrl+Scroll Lock Stop execution and return to direct mode. A Break message is printed.
 +
Enter Finish input and return to the previous mode.
 +
Keyboard shortcuts
  
2. Compiler la documentation
+
The function keys and the alt key can be used as keyboard shortcuts for some keywords. The default values for the function keys are:
 +
F1 LIST
 +
F2 RUNEnter
 +
F3 LOAD"
 +
F4 SAVE"
 +
F5 CONTEnter
 +
F6 ,"LPT1:"Enter
 +
F7 TRONEnter
 +
F8 TROFFEnter
 +
F9 KEYSpace
 +
F10 SCREEN 0,0,0Enter
  
        python prepare.py
+
The function key shortcuts can be redefined with the KEY statement. The shortcuts are displayed at the bottom of the screen.
  
3. Exécutez pcbasic directement à partir du répertoire source
+
The following keywords can be entered with Alt+first letter. The Alt shortcuts cannot be redefined.
  
        python pcbasic
+
    AUTO BSAVE COLOR DELETE ELSE FOR GOTO HEX$ INPUT KEY LOCATE MOTOR NEXT OPEN PRINT RUN SCREEN THEN USING VAL WIDTH XOR
  
Pour éviter tout doute, vous devez ignorer `setup.py`, qui est seulement nécessaire
+
Alternative keys
pour générer des paquets avec `setuptools`.
+
  
 +
In PC-BASIC, the F12 key can be used to enter special keys that are not present on some keyboards.
 +
F12+B Break
 +
F12+P Pause
 +
F12+C Caps Lock
 +
F12+N Num Lock
 +
F12+S Scroll Lock
  
=== questions de Pygame ===
+
The F12 key can also be used in combination with the regular number keys and arrow keys to enter numbers from the numeric keypad. The F12 combinations are not present in GW-BASIC.
La 1.9.1 libération de PyGame, tel qu'il est actuellement distribué avec Ubuntu et d'autres, malheureusement, contient encore quelques bugs qui
+
ont déjà été résolus dans le code PyGame amont. Cette section décrit des solutions de contournement pour ces bugs qui peuvent être utilisés
+
jusqu'à ce qu'une nouvelle version de PyGame est libéré avec les principales distributions.
+
  
==== X11 presse-papiers ====
+
Furthermore, as in GW-BASIC, the Alt key can be used to enter characters by their code points (ASCII values). This is done by pressing the Alt key and typing the code point as a decimal value on the numeric keypad, then releasing the Alt key.
PyGame copier-coller ne fonctionne pas correctement sur les systèmes basés sur X11.
+
Clipboard operations
Si vous rencontrez ce problème, installez l'un des [ `xsel`] (http://www.vergenet.net/~conrad/software/xsel/) ou
+
[ `Xclip`] (https://sourceforge.net/projects/xclip/) services publics et PC-BASIC travailleront autour de la question.
+
  
==== messages Joystick de débogage ====
+
Unlike in GW-BASIC, you can copy and paste text to the clipboard. This can be done with the mouse or with the F11 key.
Quelques messages de débogage ont été laissés dans le code de production pour la manipulation du joystick.
+
  
Le résultat est un flux ennuyeux de messages de débogage sur la console qui se produit lorsque vous utilisez un joystick.
+
Operating the clipboard with the mouse works in the style of X11: Left button is select and copy; middle button is paste.
  
Si cela vous dérange, vous devez installer PyGame de la source; voir ci-dessous.
+
The following keyboard combinations also operate the clipboard:
 +
F11+↑↓←→ Select a screen region.
 +
F11+A Select all.
 +
F11+C Copy to clipboard.
 +
F11+V Paste from clipboard.
 +
Emulator control keys
  
==== Segmentation fault ====
+
In PC-BASIC, F11+F toggles fullscreen mode.
Parfois, vous pouvez exécuter dans un accident avec le message d'erreur suivant:
+
Programs and files
  
    Erreur fatale de Python: (pygame parachute) Segmentation Fault
+
PC-BASIC can hold one BASIC program at a time in memory. To enter a program line, start with a line number and enter BASIC commands after that. The maximum length of a program line is 255 characters, including the line number and any spaces. The program line will not be immediately executed, but stored in the program. Program lines are sorted by line number, so that line 10 is executed before line 20. All program lines must have a line number. Line numbers range from 0 to 65535 inclusive. It is not possible to enter a line number higher than 65529, but these can exist in loaded programs. Within one program line, statements are separated by colons :.
    Aborted (core dumped)
+
  
Malheureusement, la seule solution de contournement que je connais est d'installer PyGame des sources actuelles de développement.
+
To run the program, type the command RUN. PC-BASIC will now execute all program lines in order inside the working environment. You cannot move the cursor around or enter commands while the program is running. If and when the program finishes, it will return control of the working environment to you. You can interrupt a program at any time by using one of the key combinations Ctrl+Break or Ctrl+Scroll Lock. The program will stop immediately, print a Break message and return control to you.
  
==== Installation PyGame des sources actuelles de développement ====
+
In GW-BASIC, you can not use Ctrl+C to interrupt a running program. However, many modern keyboards do not have a Break or Scroll Lock key, which would make it impossible to interrupt a program that does not exit. Therefore, by default, PC-BASIC treats Ctrl+C as if it were Ctrl+Break. Set ctrl-c-break=False if you prefer the GW-BASIC style behaviour. When using the text-based or command-line interface, this option is ignored.
  
1. Installez les dépendances. Ce sont les paquets dont je avais besoin sur Ubuntu 15.04:
+
A program can be stored on a drive by using the SAVE command, in one of three ways:
  
        sudo apt-get install mercurial libpython-dev python-numpy ffmpeg libsdl1.2-dev libsdl-ttf2.0-dev libsdl-font1.2-dev libsdl-mixer1.2-dev libsdl-image1.2-dev libportmidi-dev libswscale -dev libavformat-dev libftgl-dev libsmpeg-dev
+
    Plain text, readable by any text editor: SAVE "MYPROG",A
 +
    Tokenised, taking up less storage space: SAVE "MYPROG"
 +
    Protected, which is an encrypted format: SAVE "MYPROG",P
  
 +
In all three cases, the program will be written to the current working directory with the name MYPROG.BAS.
  
2. Faire un répertoire de travail pour votre construction, changer en elle et obtenir la source
+
PC-BASIC can read and write Protected files created by GW-BASIC. Unlike GW-BASIC, however, it does not disable accessing the unencrypted contents of the file. The encryption used by GW-BASIC has been broken many decades ago, so Protected mode offered little protection anyway; disallowing access is a small security hazard as it would allow someone to send you a program that you cannot inspect before running it. However, it is possible to disable access of protected files by enabling the option strict-protect.
  
        hg clone https://bitbucket.org/pygame/pygame
+
You can read a program file into memory with LOAD "MYPROG". This will erase the program currently in memory and replace it with the one read from the current working directory. To access files in a different directory, specify a path from the current directory. The path specification follows DOS conventions. The only valid path separator is the backslash \. For example, LOAD "PROGRAMS\MYPROG".
  
3. Configurer
+
You can load or run a program immediately on starting PC-BASIC by using the load or run options. For example,
 +
pcbasic --run=MYPROG.BAS
  
        ./configure
+
The arguments to these options can be provided as PC-BASIC paths or as paths in the standard form for your operating system.
  
    Le script vous avertira si vous dépendances manquantes.
+
PC-BASIC can be used to convert between the three program formats: either by loading the program and saving in your desired format, or from the command line using the convert option. To convert a tokenised or protected file to plain text you could use, for example:
 +
pcbasic --convert=A PROGRAMP.BAS PROGRAMA.BAS
 +
Accessing your drives
  
4. Compiler
+
By default, drive letter Z: is mapped to the current working directory and is the current drive. In particular, it is not mapped to the Windows Z: drive, if that exists. You can map drives and other file system locations as PC-BASIC drive letters by using the mount option. For example,
 +
pcbasic --mount=A:/home/me/BasicFloppy,C:/home/me/Stuff
 +
or, on Windows,
 +
pcbasic --mount=A:C:\Users\Me\BasicFloppy,C:C:\Users\Me\Stuff
 +
will map those locations to the PC-BASIC A: and C: drives.
  
        faire
+
If you want PC-BASIC's drive letters to be the same as those in Windows, enable the option map-drives. Use this with caution, since it means that your programs can now read and write on all drives that Windows allows you access to.
  
5. Installez dans votre `/ usr / arbre local`
+
PC-BASIC uses DOS conventions for filenames and paths. These are subtly different from Windows short filename conventions and not-so-subtly different from Unix conventions. This may lead to surprising effects in the presence of several files that match the same DOS name. To avoid such surprises, it's best to run PC-BASIC in a working directory of its own and use all-caps 8.3 format for all files.
 +
Compatible BASIC files
  
        sudo make install
+
Many BASIC dialects use the same extension .BAS, but their files are not compatible. PC-BASIC runs GW-BASIC program files only. Some tips to recognise GW-BASIC programs:
  
Voir aussi la [PyGame dépôt source sur BitBucket] (https://bitbucket.org/pygame/pygame/wiki/VersionControl).
+
    GW-BASIC files stored as text are plain text files with line numbers.
 +
    Tokenised files are binary files that start with magic byte &hFF.
 +
    Protected files are binary files that start with magic byte &hFE.
  
== PC-BASIC interprète ==
+
In particular, QBASIC files (which have no line numbers) and QuickBASIC files (magic byte &hFC) will not run.
  
** Copyright © 2013-2016 Rob Hagemans. **
+
PC-BASIC will accept both DOS and Unix newline conventions for programs stored as plain text. Any line not starting with a number will be considered a continuation (through LF) of the previous line. This behaviour is different from GW-BASIC, which only accepts text files with CR LF line endings. As a consequence, in exceptional cases where a program line is continued through LF just before a number, correct GW-BASIC text files may not be loaded correctly. If you encounter such a case, use the strict-newline option to enable GW-BASIC behaviour. If strict-newline is enabled, text files in standard Unix format (LF line endings, no end-of-file character) will fail to load. On Linux or Mac, use a utility such as unix2dos to convert programs saved as text files before loading them. When saving as text, PC-BASIC always uses CR LF line endings and &h1A at end-of-file.
 +
Packages
  
Code promo valide chez _Source de [https://github.com/robhagemans/pcbasic](https://github.com/robhagemans/pcbasic)._
+
PC-BASIC can run packaged programs. A package is simply a directory or zip archive. The directory or zipfile contents will be loaded as the current working directory. If a configuration file named PCBASIC.INI is present inside this directory, its settings are loaded; usually, one of those settings will be a run argument linking to a BASIC program enclosed in the archive or directory. PC-BASIC will recognise zipfiles regardless of their extension. A suggested extension for PC-BASIC packages is .BAZ. Packages are a convenient choice if a program needs to change many PC-BASIC options to function as desired, or if it needs a particular working directory setup.
  
Ce programme est un logiciel libre: vous pouvez le redistribuer et / ou modifier
+
Zipfile packages are unpacked to a temporary directory each time they are loaded. The temporary directory is removed when PC-BASIC closes. With zipfile packages, it is therefore not possible to save files and re-open them on the next run of the package.
selon les termes de la [GNU General Public License] (http://www.gnu.org/licenses/gpl-3.0.en.html) telles que publiées par
+
Tapes and BASICODE
la Free Software Foundation, soit la version 3 de la licence, ou
+
(À votre choix) toute version ultérieure.
+
  
Ce programme est distribué dans l'espoir qu'il sera utile,
+
The CAS1 device interfaces with the cassette tape emulator. Tapes were never very popular on the IBM PC, and indeed only available with the original PC and the PCjr. There are not many IBM PC cassettes in the wild. However, should you come across one, all you have to do to read it with PC-BASIC is record it into a .WAV (RIFF WAVE) file and attach it to the CAS1: device with the cas1=WAV:filename option. You can also generate your own tape images and store your programs on it. WAV files generated by PC-BASIC are large but very easily compressed in a ZIP archive; this works better and leads to smaller files than transcoding to a lossy audio format like MP3.
mais SANS AUCUNE GARANTIE; sans même la garantie implicite de
+
COMMERCIALISATION ou D'ADAPTATION À UN USAGE PARTICULIER. Voir le
+
GNU General Public License pour plus de détails.
+
  
Vous devriez avoir reçu une copie de la GNU General Public License long
+
As an alternative to .WAV, you can store tapes in CAS format. This is simply a bit-dump of the tape and is interchangeable with tape images for the PCE IBM PC emulator.
avec ce programme; sinon, écrivez à la Free Software Foundation, Inc.,
+
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
  
 +
BASICODE was a considerably more common audio encoding format, which enjoyed huge popularity in particular in the Netherlands, the UK and East Germany. BASICODE was distributed through tapes or as audio broadcast over radio. Reading it into a PC required special hardware, usually hooking up a tape recorder to a serial or parallel port. In PC-BASIC, BASICODE tapes are read through the CAS1 device instead, by attaching a .WAV file with the cas1=BC:filename option. PC-BASIC will load the BASICODE, inserting the necessary spaces between keywords where the BASICODE standard leaves these out. Note that you will need a Bascoder program to run the BASICODE, and this is not currently distributed with PC-BASIC.
  
----------
+
If you have a Bascoder named BASCODER.BAS, the way to run a BASICODE program named PROGRAM from tape is:
 +
LOAD "BASCODER"
 +
CHAIN MERGE "CAS1:PROGRAM"
 +
Security
  
== Guide de démarrage rapide ==
+
PC-BASIC makes some default choices with basic security in mind, but does not sandbox its programs in any meaningful way. BASIC programs have more or less full access to your computer. You should treat them with the same caution as you would shell scripts or binaries. Therefore, do not run a program from the internet that you have not inspected first using LIST or
 +
pcbasic --convert=A filename
 +
on the command line. You wouldn't just download an executable from the internet and run it either, right?
 +
Connecting to peripherals
 +
Printing
  
* [[/Guide de démarrage rapide|Guide de démarrage rapide]]
+
You can print from PC-BASIC programs by accessing the LPT1: device. PC-BASIC will send the output to your operating system's default printer, unless you change the lpt1= option. To print through a printer named MyPrinter, set lpt1=PRINTER:MyPrinter. You can also attach printers to the LPT2: and LPT3: devices.
  
== Contributeurs==
+
The output will be sent to the printer when you close PC-BASIC. If you prefer, you can instead send every page separately to the printer by setting print-trigger=page. You can even send every line separately, but this only makes sense on a tractor-fed printer (as was common in GW-BASIC's heyday).
  
PC-BASIC ne serait pas exister sans les codes contribuant, signaler les bogues,
+
It's easy to print to a file instead of a printer: set lpt1=FILE:output.txt to send all LPT1: printer output to the text file output.txt.
envoyant des patches, et documenter le comportement de GW-BASIC. Merci à tous!
+
  
- ** Rob Hagemans **, auteur principal
+
The printing statements LPRINT and LLIST always send their output to PC-BASIC's LPT1: device.
- ** Wengier Wu **, des corrections de bugs, des conseils pour le soutien CJK
+
- ** WJB **, des corrections de bugs
+
- ** Jan Bredenbeek **, des corrections de bugs, des conseils pour le soutien de BASICODE
+
- ** Ronald Herrera **, les essais, la chasse aux bugs
+
- ** Miguel Dorta **, les essais, les ports série
+
- ** Patrik **, les essais, les ports série
+
- ** Duane **, les essais, les ports série
+
  
 +
The presentation of printed documents is left to your operating system: it will be the default presentation of text files. If you wist to change the way documents are printed, please refer to your OS's settings. On Windows, for example, text files are printed by notepad.exe and changing the default settings in that application will change the way PC-BASIC documents are printed. You will need to set a printer font that includes the characters you need to print. On Unix systems, PC-BASIC will use the paps utility if it is available; this will automatically select fonts that support the characters you need.
 +
Serial and parallel ports
  
== épaules des géants==
+
PC-BASIC provides the serial devices COM1: and COM2:. To make use of these, you need to attach them to a communications port on your computer with the com1= or com2= option. To attach to the first physical serial port, set com1=PORT:0 (or, alternatively, com1=PORT:COM1 on Windows or com1=PORT:/dev/ttyS0 on Linux). If you do not have a serial port, you can emulate one by sending the communications over a network socket: set com1=SOCKET:localhost:7000 and all COM1: traffic will be sent through socket 7000.
  
PC-BASIC dépend des projets open-source suivants:
+
To access a parallel port, attach it to one of LPT1:, LPT2: or LPT3:. For example, set lpt2=PARPORT:0 to attach your computer's first parallel port to LPT2:.
 +
Changing the interface
 +
Emulation targets
  
  * [Python] (http://www.python.org)
+
By default, PC-BASIC emulates GW-BASIC on a system with VGA video capabilities. However, it can emulate several other setups, which differ from each other in terms of video and audio capacity, fonts, memory size, as well as available BASIC syntax. The easiest way to set the emulation target is by using a preset option. For example, run pcbasic --preset=pcjr. Other available emulation target presets are:
  * [PyGame] (http://www.pygame.org)
+
Preset Emulation target
  * [Simple DirectMedia Layer (SDL)] (http://www.libsdl.org)
+
pcjr IBM PCjr with Cartridge BASIC, including PCjr video and 3-voice sound capabilities and extended BASIC syntax.
  * [NumPy] (http://www.numpy.org)
+
tandy Tandy 1000 with GW-BASIC, including Tandy video and 3-voice sound capabilities and extended BASIC syntax.
  * [PyXDG] (http://freedesktop.org/wiki/Software/pyxdg/)
+
olivetti Olivetti M24 or AT&T PC 6300.
  * [Python pour les extensions de Windows (pywin32)] (https://sourceforge.net/projects/pywin32/)
+
cga IBM or compatible with Color/Graphics Adapter and a composite monitor. This enables composite colorburst emulation.
  * [Pyserial] (http://pyserial.sourceforge.net/pyserial.html)
+
ega IBM or compatible with Extended Graphics Adapter.
  * [Pexpect] (http://pexpect.readthedocs.org/en/latest/)
+
vga IBM or compatible with Video Graphics Array.
  * [ANSI | tuyau] (https://github.com/robhagemans/ansipipe)
+
mda IBM or compatible with Monochrome Display Adapter and green-tinted monochrome monitor.
 +
hercules IBM compatible with Hercules Graphics Adapter and green-tinted monochrome monitor.
 +
strict Choose strict compatibility with GW-BASIC over convenience, security, rhyme or reason.
  
 +
Presets are groups of options that are defined in the default configuration file. You can create your own presets by creating a header in your private configuration file with the name of the new preset, followed by the options you want to apply. For example, if you define:
 +
[my_preset]
 +
video=vga
 +
syntax=pcjr
 +
you can now run pcbasic --preset=my_preset to start an emulation of a hypothetical machine with a VGA video card running PCjr Cartridge BASIC.
 +
GW-BASIC compatibility features
  
== Documentation technique ==
+
PC-BASIC aims for a very high level of compatibility with GW-BASIC. However, some compatibility features are disabled by default for convenience or security reasons. These features can be switched on using individual command-line options. The highest level of compatibility with GW-BASIC can be attained by setting preset=strict, which switches off all convenience and security features that cause differences with GW-BASIC.
 +
Codepages
  
Bâtiment PC-BASIC aurait été impossible sans les immenses quantités de
+
PC-BASIC supports a large number of legacy codepages that were common at the time GW-BASIC was popular, including double-byte character set codepages used for Chinese, Japanese and Korean. You can select your codepage by using the codepage= option. For example, codepage=936 selects the GBK codepage commonly used on the Chinese mainland. PC-BASIC will load and save all program files as if encoded in the codepage you select.
la documentation technique qui a été mis à disposition en ligne. Il a prouvé pas
+
être possible d'établir une liste complète de la documentation utilisée. Beaucoup
+
merci à tous ceux qui font de l'information technique disponible gratuitement, et
+
excuses à ceux dont la contribution que je l'ai pas reconnu ici.
+
  
=== Format de fichier tokenised GW-BASIC===
+
It is also possible to load and save programs in the nowadays common UTF-8 standard format, by enabling the utf8 option. When utf8 is enabled, plain-text program source will be saved and loaded in standard UTF-8 encoding. Please note that you will still need to select a codepage that provides all the Unicode characters that your program needs.
  
  * ** Norman De Forest ** s 'séminal [documentation de jetons GW-BASIC] (http://www.chebucto.ns.ca/~af380/GW-BASIC-tokens.html).
+
Note that PC-BASIC does not implement the following features relevant to some of these codepages:
    _Ce Documentation a été le point de départ pour le développement de PC-BASIC._
+
  * ** [Décodeur GW-BASIC en ligne] Dan Vanderkam ** s '(http://www.danvk.org/wp/2008-02-03/reading-old-gw-basic-programs/)
+
  
===format de fichier protégé  GW-BASIC===
+
Bidirectional text
 +
    All text is printed left-to-right independent of the codepage selected. To write strings in a language that is written right-to-left, the logical character sequence must be inverted so that the order appears correct visually. While this is inconvenient, it is in line with the behaviour of GW-BASIC. This affects code pages marked with B in the table.
 +
Combining characters
 +
    PC-BASIC recognises single-byte code points (where each glyph shows on a single cell on the screen) and double-byte code points (where a single glyph takes up two cells on the screen). Combining characters (such as the combining diacritics of codepages 874 and 1258) are therefore not shown correctly: instead of being combined with their preceding base character as a single combined glyph, such combinations will be shown as separate glyphs. Where available, alternative codepages with precomposed characters will give better results. This affects code pages marked with C in the table.
  
  * ** Paul Kocher **, _La cryptogramme ordinateur supplement_ ** 19 **, American cryptogramme Association, Été 1994
+
The following codepages are available. PC-BASIC uses the Microsoft OEM codepage number where this is unambiguous. The code pages are expected to agree with Microsoft sources for the ranges &h80–&hFF. Ranges &h00–&h1F and &h7F are implemented as the IBM Special Graphic Characters where some code page sources will list these as the corresponding control characters. For unofficial codepages and those with conflicting numbering, codepage names are used instead of numbers.
 +
codepage_id Codepage Languages Notes
 +
437 DOS Latin USA English
 +
720 Transparent ASMO Arabic B
 +
737 DOS Greek Greek
 +
775 DOS Baltic Rim Estonian, Latvian and Lithuanian
 +
806 IBM-PC Devanagari Hindi
 +
850 DOS Latin 1 Western European languages
 +
851 DOS Greek 1 Greek
 +
852 DOS Latin 2 Central European languages
 +
853 DOS Latin 3 Southern European languages
 +
855 DOS Cyrillic 1 Serbian, Macedonian and Bulgarian
 +
856 DOS Hebrew Hebrew B
 +
857 DOS Latin 5 Turkish
 +
858 DOS Latin 1 with Euro Western European languages
 +
860 DOS Portuguese Portuguese
 +
861 DOS Icelandic Icelandic
 +
862 DOS Hebrew Hebrew B
 +
863 DOS Canadian French French
 +
864 DOS Arabic Arabic B
 +
865 DOS Nordic Danish and Norwegian
 +
866 DOS Cyrillic 2 Russian
 +
868 DOS Urdu Urdu B
 +
869 DOS Greek 2 Greek
 +
874 TIS-620 Thai C
 +
932 Shift-JIS (variant) Japanese
 +
934 DOS/V Korea Korean
 +
936 GBK; GB2312/EUC-CN superset Simplified Chinese
 +
938 DOS/V Taiwan Traditional Chinese
 +
949 IBM-PC Korea KS; EUC-KR superset Korean
 +
950 Big-5 (variant) Traditional Chinese
 +
1258 Vietnamese Vietnamese C
 +
alternativnyj GOST Alternativnyj Variant Russian
 +
armscii8a ArmSCII-8a; FreeDOS cp899 Armenian
 +
big5-2003 Big-5 (Taiwan 2003) Traditional Chinese
 +
big5-hkscs Big-5 (Hong Kong 2008) Traditional Chinese
 +
georgian-academy Academy Standard Georgian
 +
georgian-ps Parliament Standard Georgian
 +
iransystem Iran System Persian B
 +
iscii-as ISCII Assamese Assamese C
 +
iscii-be ISCII Bengali Bengali C
 +
iscii-de ISCII Devanagari Hindi, Marathi, Sanskrit, Konkani, Nepali C
 +
iscii-gu ISCII Gujarati Gujarati C
 +
iscii-ka ISCII Kannada Kannada C
 +
iscii-ma ISCII Malayalam Malayalam C
 +
iscii-or ISCII Oriya Oriya C
 +
iscii-pa ISCII Punjabi Punjabi C
 +
iscii-ta ISCII Tamil Tamil C
 +
iscii-te ISCII Telugu Telugu C
 +
kamenicky Kamenický; cp895 Czech
 +
koi8-r KOI8-R Russian
 +
koi8-ru KOI8-RU Ukrainian, Belarusian, Russian
 +
koi8-u KOI8-U Ukrainian, Russian
 +
mazovia Mazovia; cp667, 991, 790 Polish
 +
mik MIK, FreeDOS cp3021 Bulgarian
 +
osnovnoj GOST Osnovnoj Variant Russian
 +
pascii PASCII Kashmiri, Persian, Sindhi, Urdu B
 +
ruscii RUSCII Ukrainian, Russian
 +
russup3 Cornell Russian Support for DOS v3 Russian
 +
russup4ac Exceller Software Russian Support for DOS v4 Academic Russian
 +
russup4na Exceller Software Russian Support for DOS v4 Non-Academic Russian
 +
viscii VISCII, FreeDOS cp30006 Vietnamese
  
=== Matériel vidéo===
+
You can add custom codepages to PC-BASIC, by adding a file with its mapping to Unicode to the codepage/ directory.
 +
Fonts
  
  * ** John Elliott ** s '[pages Vintage PC] (http://www.seasip.info/VintagePC/)
+
PC-BASIC emulates the distinctive raster fonts of IBM-compatible machines. The ROM fonts of the original IBM and Tandy adapters (which are in the public domain in a number of countries) have been included in PC-BASIC. These provide the most accurate emulation. However, the font ROMs only included a single code page – DOS Latin USA 437.
  * ** Dan Rollins ** '[TechHelp] (http://webpages.charter.net/danrollins/techhelp/0089.HTM) pages sur la mise en page de mémoire vidéo PC
+
  * ** Grand Hiérophante ** s '[Nerdly Pleasures Blog] (http://nerdlypleasures.blogspot.com)
+
  
=== Microsoft Binary Format===
+
To support code pages beyond 437, PC-BASIC defaults to the CPIDOS font used by default in FreeDOS and DOSBox. This font is very similar in style to the IBM VGA font but has support for many more code pages, in particular Western and Middle Eastern alphabets. If CPIDOS does not include the characters you need, PC-BASIC tries to find them in UNI-VGA, which is also very similar in style to VGA. If that does not suffice, PC-BASIC falls back to GNU UniFont for the missing characters. UniFont's Western glyphs are less similar to the VGA font, but it provides support for the full Unicode Basic Multilingual Plane. For example, all Chinese, Japanese and Korean glyphs in PC-BASIC are taken from UniFont.
  
  * Les contributions du forum par ** [Julian Brucknall] (http://www.boyet.com/Articles/MBFSinglePrecision.html) ** et ** [Adam Burgoyne] (http://www.experts-exchange.com/Programming /Languages/Pascal/Delphi/Q_20245266.html)**
+
It is possible to change the choice of font using the font= option. You can provide a list of fonts, where the last font specified is the most preferred one.
  
=== Format de cassette de données===
+
PC-BASIC reads fonts in the .hex format introduced by UniFont. It's easy to define custom fonts in this format: it can be edited in a regular text editor. See the UniFont project for an authoring tool. You can add custom fonts to PC-BASIC by installing them into the font/ subdirectory of PC-BASIC's installation directory.
  
  * ** ** Brutman Mike d '[Analyse du format de la cassette de données IBM PC] (http://www.brutman.com/Cassette_Waveforms/Cassette_Waveforms.html)
+
By default, the following fonts are available:
  * ** Dan Tobias ** '[IBM documentation de format de cassette de données de PC] (http://fileformats.archiveteam.org/wiki/IBM_PC_data_cassette)
+
font_name Name Sizes Codepages
 +
unifont GNU UniFont 16 all
 +
univga Uni-VGA font 16 many
 +
freedos FreeDOS CPIDOS font 8, 14, 16 many
 +
cga IBM Colour/Graphics Adapter font 8 437 only
 +
mda IBM Monochrome Display Adapter font 14 437 only
 +
vga IBM Video Graphics Array font 8, 14, 16 437 only
 +
olivetti Olivetti/AT&T font 16 437 only
 +
tandy1 Tandy-1000 font old version 8 437 only
 +
tandy2 Tandy-1000 font new version 8 437 only
  
=== BASICODE===
+
GNU UniFont contains glyphs for all the defined code points of the Basic Multilingual Plane of Unicode 7.0, which makes it an excellent fallback font. Its glyphs are not, however, very similar to those that were used on DOS machines; both Uni-VGA and the FreeDOS CPIDOS fonts are therefore more suitable, when they have the required glyphs.
 +
Redirecting I/O
  
  * ** Documentation du [format BASICODE] Janny Looyenga ** s '(http://www.nostalgia8.nl/basicode.htm)
+
PC-BASIC supports redirecting input and output the GW-BASIC way: output redirected with the output= option will be sent to the screen as well as the specified file, while input redirected with input= is taken only from the specified file. Note that screen output through the SCRN: device and keyboard input through the KYBD: device are not redirected. Files are read and written in the codepage set with PC-BASIC.
  * ** Prof. documentation du [format de fichier cassette BASICODE] Dr. Horst Völz ** s '(http://www.kc85emu.de/scans/rfe0190/Basicode.htm)
+
  
=== ports série===
+
Note that it is also possible to use your operating system's facility to redirect console output using the < and > operators. It's best to set interface=none so that I/O is redirected through the console. This will produce files in your console's standard encoding, which is often UTF-8 on Unix and Windows-1252 on Windows.
 +
Command-line interface
  
  * ** Craig Peacock ** 'de la documentation sur [interfacer le port série] (http://retired.beyondlogic.org/serial/serial.htm)
+
You can run PC-BASIC as a command-line interface by setting the interface=cli (or -b) option. No window will be opened: you can type BASIC commands straight into your Command Prompt/Terminal. Use the horizontal arrow keys to move on the current line you're editing; use the vertical arrow keys to show screen rows above and below. Copy and paste are available only if the calling shell provides them. On Windows, Ctrl+Break will terminate PC-BASIC immediately. You can use Ctrl+C to interrupt the program. The end-of-file key combination (Ctrl+D on Unix, Ctrl+Z on Windows) will exit PC-BASIC.
  * ** Christopher E. Strangio ** 'de tutoriel sur [la norme RS232] (http://www.camiresearch.com/Data_Com_Basics/RS232_standard.html)
+
  * [QB64 documentation](http://www.qb64.net/wiki/index.php/Port_Access_Libraries#Serial_Communication_Registers)
+
  
=== Informations techniques sur de nombreux sujets===
+
You can use the command-line interface to run one or a few BASIC commands directly, like so:
  
  * [Vogons] (http://www.vogons.org/)
+
me@mybox$ pcbasic -bqe="?1+1"
  * ** Erik S. Klein ** s de '[forums informatiques cru] (http://www.vintage-computer.com)
+
2
  * ** Peter Berg ** s '[site QBasic / QuickBasic Pete] (http://www.petesqbsite.com/)
+
me@mybox$
  
=== Polices===
+
For scripting purposes, it is also possible to run PC-BASIC without any interface by setting interface=none or -n. If this is set, PC-BASIC will take input from and send output to the console as UTF-8 without further modification. This is useful in combination with redirection and pipes.
 +
Text-based interface
  
  * ** Henrique Peron ** s '[pack codepage CPIDOS] (http://www.freedos.org/software/?prog=cpidos)
+
There is also a full-screen text interface available: enable it by setting interface=text (or -t). The text-based interface is very similar to the default graphical interface, but runs in your Command Prompt or Terminal window.
  * ** Dmitry Bolkhovityanov ** s de '[police Uni-VGA] (http://www.inp.nsk.su/~bolkhov/files/fonts/univga/)
+
  * ** Roman Czyborra **, ** Qianqian Fang ** et [GNU unifont] des autres (https://savannah.gnu.org/projects/unifont)
+
  * [DOSBox] (http://www.dosbox.com) polices VGA
+
  * ** Andries Brouwer ** s '[IPC documentation du format de fichier de police] (http://www.win.tue.nl/~aeb/linux/kbd/font-formats-3.html)
+
  
 +
In the text-based and command-line interfaces, graphics are not available. Attempting to open a graphical screen mode will lead to an Illegal function call error. Furthermore, many Ctrl and Alt key combinations are not available.
  
=== mappages Unicode-codepage===
+
On Unix systems only, you can get sound in the text and command-line interfaces over the PC speaker if you install the beep utility and enable the legacy PC-speaker driver or emulation.
 +
Settings and options
  
  * [Le Consortium Unicode et contributeurs] (http://www.unicode.org/Public/MAPPINGS/VENDORS)
+
PC-BASIC has a number of settings that change the way it operates. These settings can be changed by setting options on the command line or through editing the configuration file.
  * [Projet GNU libiconv] (https://www.gnu.org/software/libiconv/)
+
  * [Aivosto] (http://www.aivosto.com/vbtips/charsets-codepages.html)
+
  * ** Konstantinos Kostis ** '[Index Charsets] (http://www.kostis.net/charsets/)
+
  * [IBM CDRA] (http://www-01.ibm.com/software/globalization/cdra/)
+
  * ** Masaki Tojo ** s de '[Camellia] (https://github.com/mtojo/camellia)
+
  
=== Bibliographie===
+
In either method, the options have the same name and syntax. In what follows, we will often refer to a particular option setting; remember that you can set this from the command line as well as from the configuration file.
 +
Command-line options
  
  * _GW-BASIC Guide_ de 3,23 utilisateur, Microsoft Corporation, 1987.
+
You can enter command-line options if you start PC-BASIC from the console (also known as the Command Prompt or Terminal; this is normally CMD or PowerShell on Windows), by preceding the name of the option with two dashes, like so:
  * _IBM Personal Computer Library de référence du matériel: BASIC_, IBM 1982.
+
pcbasic --preset=tandy --ctrl-c-break=True
  * _Tandy 1000 BASIC, A Guide_ Référence, Tandy Corporation.
+
  * ** William Barden, Jr. **, _Graphics Et audio pour les 1000s Tandy et PC Compatibles_, Microtrend 1987.
+
  * ** Don Inman ** et ** Bob Albrecht **, _La GW-BASIC Reference_, Osborne McGraw-Hill, 1990.
+
  * ** Thomas C. McIntyre **, _BLUE: BASIC Langue utilisateur Essay_, 1991, [en ligne] (https://web.archive.org/web/20060410121551/http://scottserver.net/basically/geewhiz. html).
+
  
== Outils de développement==
+
On the command line, you can leave out the expression =True that is common in switching options. Some options have an alternative, short name consisting of a single letter preceded by a single dash, which you can use on the command line. You can combine multiple short options with a single dash.
 +
Configuration files
  
PC-BASIC est développé en utilisant [Git] (https://git-scm.com/) contrôle de source,
+
You can change options by adding or removing lines in your local configuration file, which can be found in the following location:
[GEdit] (https://wiki.gnome.org/Apps/Gedit) et [Atom] (https://atom.io/) texte
+
éditeurs sur un système [Ubuntu] (http://www.ubuntu.com/) Linux et hébergé sur
+
[GitHub] (https://github.com/) et [SourceForge] (https://sourceforge.net/).
+
 
+
Emballage et documentation dépend des projets suivants:
+
 
+
  * [PyInstaller] (http://www.pyinstaller.org)
+
  * [Nullsoft Scriptable Install System] (http://nsis.sourceforge.net)
+
  * [7-Zip] (http://www.7-zip.org)
+
  * [Le système de base de GNU] (http://www.gnu.org/)
+
  * ** Tom Rothamel ** s '[Pygame Subset pour Android] (https://web.archive.org/web/20150712040220/http://pygame.renpy.org/) (remplacé par [RAPT] (http: //www.renpy.org/doc/html/android.html))
+
  * [LXML] (http://lxml.de)
+
  * [Markdown] (https://pypi.python.org/pypi/Markdown)
+
 
+
 
+
== Emulateurs==
+
 
+
Ces excellents émulateurs ont été des outils indispensables pour documenter la
+
comportement de divers dialectes Microsoft BASIC.
+
 
+
  * [DOSBox] (http://www.dosbox.com)
+
  * [MESS] (http://www.mess.org)
+
  * [PCE PC Emulator] (http://www.hampa.ch/pce/)
+
 
+
aperçu
+
 
+
Un libre, multi-plateforme émulateur pour la famille GW-BASIC des interprètes.
+
 
+
PC-BASIC est un logiciel gratuit, multi-plateforme interprète pour GW-BASIC, Advanced BASIC (BASICA), PCjr Cartridge Basic et Tandy 1000 GWBASIC. Il interprète ces dialectes BASIC avec un haut degré de précision, dans le but de compatibilité bogue pour bogue. PC-BASIC émule vidéo et audio du matériel le plus commun sur lequel ces BASICs utilisés pour exécuter. PC-BASIC court texte brut, tokenised et fichiers .BAS protégés. Elle met en oeuvre l'arithmétique flottante dans le format Microsoft binaire (MBF) et peut donc lire et écrire des fichiers de données binaires créés par GW-BASIC.
+
 
+
PC-BASIC est un logiciel libre et open source publié sous la GPL version 3.
+
 
+
Voir aussi la page d'accueil PC-BASIC.
+
 
+
==Guide de démarrage rapide==
+
 
+
Ce guide de démarrage rapide couvre l'installation et l'utilisation élémentaire du PC-BASIC. Pour plus d'informations, s'il vous plaît se référer à la documentation du PC-BASIC complète qui couvre les options d'utilisation, ligne de commande et une approche globale de référence du langage GW-BASIC. Cette documentation est également inclus avec la version PC-BASIC actuelle.
+
 
+
Si vous trouvez des bugs, s'il vous plaît les signaler sur la page de discussion SourceForge ou ouvrir une question sur GitHub. Il serait très utile si vous pourriez inclure un court morceau de code BASIC qui déclenche le bug. Installation
+
 
+
distributions packagées peuvent être téléchargés à partir de l'un des emplacements suivants:
+
 
+
  versions PC-BASIC sur GitHub
+
    versions PC-BASIC sur SourceForge
+
 
+
Sous Windows:
+
 
+
  exécuter le programme d'installation
+
    pour commencer, cliquez sur PC-BASIC dans votre menu Démarrer
+
 
+
Sur OS X:
+
 
+
  monter l'image de disque
+
    pour commencer, cliquez deux fois sur l'application PC-BASIC
+
 
+
Sous Linux et autres Unix:
+
 
+
  décompressez l'archive
+
    exécuter sudo ./install.sh.  Vous pouvez être invité à installer d'autres dépendances à travers le système de gestion des paquets de votre OS.
+
    pour commencer, cliquez sur PC-BASIC dans votre menu Applications ou exécuter pcbasic sur la ligne de commande.
+
 
+
Si les options ci-dessus sont sans objet ou si vous préférez installer de la source, s'il vous plaît consulter INSTALL.md pour obtenir des instructions détaillées. Kit de survie BASIC
+
 
+
Cliquez sur l'icône de l'application PC-BASIC ou exécutez pcbasic sur la ligne de commande Windows, OSX ou Linux et PC-BASIC démarre en mode direct sans programme chargé. La cible d'émulation par défaut est GW-BASIC 3.23 sur un PC compatible IBM générique avec une carte vidéo VGA.
+
 
+
PC-BASIC démarre en mode direct, une interface de style années 1980 opéré par l'exécution des commandes BASIC directement. Il n'y a pas de menu, ni y at-il des indices visuels que nous sommes venus à attendre d'un logiciel moderne.
+
 
+
Quelques commandes essentielles pour vous aider à vous déplacer: LOAD "PROGRAM" charge le fichier de programme nommé program.bas en mémoire, mais ne fonctionne pas encore. LISTE affiche le code BASIC du programme en cours. RUN démarre le programme en cours. SAVE "PROGRAM", A enregistre le programme en cours d'un fichier texte lisible par l'homme nommé program.bas. NEW supprime immédiatement le programme actuel de la mémoire. SYSTÈME sort PC-BASIC immédiatement, en rejetant tout programme ou des données non enregistrées.
+
 
+
Utilisez l'une des combinaisons de touches Ctrl + Pause, Ctrl + Scroll Lock, Ctrl + C ou F12 + B pour interrompre un programme en cours et revenir en mode direct. Configuration
+
 
+
Vous pouvez fournir des options pour modifier le comportement de PC-BASIC en modifiant le fichier de configuration. Si vous installez le package Windows, le programme d'installation crée automatiquement un raccourci vers ce fichier dans le dossier du menu de démarrage PC-BASIC. Le fichier peut aussi être trouvé à l'emplacement suivant: Fichier de configuration OS Windows% APPDATA% \ pcbasic \ PCBASIC.INI OS X ~ / Library / Application Support / pcbasic / PCBASIC.INI Linux ~ / .config / pcbasic / PCBASIC.INI
+
 
+
Par exemple, pour commencer avec la cible d'émulation réglée sur Tandy 1000 GW-BASIC, comprend la ligne suivante sous [pcbasic] dans le fichier de configuration:
+
 
+
preset = tandy
+
 
+
Un fichier de configuration par défaut sera créé la première fois que vous exécutez PC-BASIC. Voir les commentaires dans ce fichier ou consulter la documentation pour plus d'informations et des exemples d'options.
+
 
+
Si vous démarrez PC-BASIC à partir de l'invite de commande (sous Windows, est le C: \> prompt), vous pouvez fournir directement les options de configuration. Par exemple:
+
 
+
pcbasic program.bas exécute le fichier de programme nommé directement program.bas. pcbasic --preset = tandy commence avec la cible d'émulation réglée sur Tandy GW-BASIC sur un Tandy 1000. pcbasic --preset = PCjr commence avec la cible d'émulation réglée sur cartouche BASIC sur un PCjr IBM. -h pcbasic montre toutes les options de ligne de commande disponibles.
+
 
+
Si vous utilisez PC-BASIC de l'invite de commande sous Windows, assurez-vous d'exécuter le binaire pcbasic.com. Vous ne verrez aucune sortie si vous appelez le binaire pcbasic.exe. Obtenir des programmes
+
 
+
Les pages suivantes ont téléchargements de programmes GW-BASIC, beaucoup d'informations et d'autres liens.
+
 
+
  La page Geocities archivé de KindlyRat a un certain nombre de jeux classiques et les services publics.
+
    PeatSoft fournit de la documentation GW-BASIC, les services publics et certains plus de jeux.
+
    Neil C. Obremski gw-basic.com a quelques nouveaux jeux amusants récentes dans GW-BASIC.
+
    Leon Peyre a une belle collection de programmes GW-BASIC, y compris le (en) célèbre premier jeu PC IBM DONKEY.BAS.
+
    Brooks deForest fournit ses étonnants Tandy jeux GW-BASIC, tous libérés dans le domaine public.
+
    Archive de TVDog est une grande source d'informations et de programmes GW-BASIC pour le Tandy 1000.
+
    Phillip Bigelow fournit des programmes scientifiques écrits en GW-BASIC.
+
    Gary Peek fournit des sources GW-BASIC diverses qu'il a mises dans le domaine public.
+
    La page Classique BASE Jeux SA Moore fournit les jeux de base du livre classique de David Ahl.
+
    Dernier livre de Joseph Sixpack de GW-BASIC a beaucoup de programmes de bureau et de services publics, y compris la feuille de calcul PC-CALC.
+
    Geewhiz Collection de Thomas C. McIntyre a des applications d'affaires, des jeux et du matériel de référence.
+
    cd.textfiles.com a des tonnes de vieux shareware, parmi lesquels quelques bons jeux GW-BASIC.
+
 
+
==Guide de l'utilisateur L'environnement de travail==
+
 
+
La première chose que vous verrez lors du démarrage de PC-BASIC est l'environnement de travail. Comme GW-BASIC, mais contrairement à pratiquement tous les compilateurs et interprètes modernes, l'environnement de travail de PC-BASIC sert à la fois comme un environnement de développement et comme une toile sur laquelle exécuter directement les commandes BASIC. A quelques exceptions près, pratiquement toutes les commandes qui peuvent être exécutées dans l'environnement de travail peuvent être utilisés dans un programme, et vice versa.
+
 
+
L'écran de PC-BASIC défaut dispose de 25 lignes et 80 colonnes. La ligne 25 est utilisé par PC-BASIC pour afficher les raccourcis clavier, ce qui signifie que vous ne pouvez pas l'utiliser pour taper sur. Dans certains modes vidéo, il n'y a que 40 ou 20 colonnes.
+
 
+
lignes logiques dépassent la largeur de la ligne physique: si vous continuez à taper au-delà de la largeur de l'écran, le texte se terminera à la ligne suivante, mais PC-BASIC sera toujours considérer comme faisant partie de la même ligne. Une ligne logique peut être au plus 255 caractères; si vous tapez plus de 255 caractères, il ignore le reste. Une ligne peut également être enveloppé par une ligne d'alimentation, entrée avec Ctrl + Entrée.
+
 
+
Si vous appuyez sur Entrée, PC-BASIC tentera d'exécuter la ligne logique sur lequel le curseur est placé comme une commande. Lorsque la commande est exécutée correctement, PC-BASIC affiche l'invite Ok. S'il y a une erreur, il affiche un message d'erreur suivi par Ok. Si la ligne commence par un nombre, elle sera stockée sous la forme d'une ligne de programme. Aucune invite est affichée. touches spéciales
+
 
+
Les touches suivantes ont un effet spécial dans l'environnement de travail: ↑ ou Ctrl + 6 Déplacez le curseur vers le haut, à l'exception de la ligne supérieure. ↓ ou Ctrl + - Déplacez le curseur vers le bas, sauf à la ligne 24. ← ou Ctrl +] Déplacez le curseur vers la gauche. Le bord gauche de l'écran entoure, à l'exception de la ligne supérieure. → ou Ctrl + / Déplacer le curseur à droite. Le bord droit de l'écran entoure, sauf à la ligne 24. Ctrl + ← ou Ctrl + B Déplacer à la première lettre du mot précédent. Les mots se composent de lettres A-Z et chiffres 0-9. Ctrl + → ou Ctrl + F Déplacer à la première lettre du mot suivant. Tab ou Ctrl + I Déplacer le curseur sur le taquet de tabulation suivant. Les taquets de tabulation sont 8 colonnes. Backspace ou Ctrl + H Supprimer le caractère à gauche du curseur, changent tous les autres personnages sur la logique en ligne une position vers la gauche et changer les attributs de ces caractères à l'attribut actuel. Au bord gauche de l'écran, cela fait la même chose que Del. Suppr ou Ctrl + Backspace Supprimer le caractère au niveau du curseur et changent tous les autres caractères d'une position vers la gauche, la modification des attributs de courant. Esc ou Ctrl + [Supprimer la ligne logique actuelle. Ctrl + Fin ou Ctrl + E Supprimer tous les caractères du curseur jusqu'à la fin de la ligne logique. Ctrl + Pause ou Ctrl + C ou Ctrl + Scroll Lock Aller à la première colonne de la ligne suivante, sans exécuter ou de stocker la ligne sous le curseur. Entrée ou Ctrl + M Exécuter ou stocker la ligne logique actuelle. La ligne complète sur l'écran est considéré comme faisant partie de la commande, même si vous ne tapez. Une ligne commençant par un nombre est stocké sous la forme d'une ligne de programme. Fin ou Ctrl + N Déplacer le curseur à la première position après la fin de la ligne logique. Accueil ou Ctrl + K Déplacer le curseur vers le haut à gauche de l'écran. Ctrl + Accueil ou Ctrl + L Effacer l'écran et déplacer le curseur vers le haut à gauche de l'écran. Ctrl + Entrée ou Ctrl + J Déplacer vers la première colonne de la ligne suivante, reliant les deux lignes en une seule ligne logique. Ctrl + G Beep le haut-parleur. Pause ou Ctrl + Num Lock Pause. Appuyez sur une autre touche pour reprendre. Ctrl + sortie Prt Sc Basculer écho de l'écran à l'imprimante (ou un autre périphérique connecté à LPT1 :). Maj + Prt Sc Imprimer l'écran. Ins ou Ctrl + R Basculer en mode insérer. En mode d'insertion, les caractères sont insérés plutôt que écrasées à l'emplacement actuel. Si l'insertion provoque la ligne d'étendre la largeur de l'écran physique, la ligne logique se prolonge sur la ligne suivante. Les touches fléchées mode d'insertion de sortie.
+
 
+
Quand un programme est lancé, les commandes du programme sont suivis jusqu'à ce que le programme se ferme et revient en mode ou jusqu'à ce que l'entrée de l'utilisateur est requise diriger. Quand un programme est en cours d'exécution, quelques touches ont un effet immédiat: Pause ou l'exécution de Pause Ctrl + Num Lock. Appuyez sur une autre touche pour reprendre. Ctrl + Pause ou Ctrl + Arrêt défil Arrêter l'exécution et revenir en mode direct. Un message Break est imprimé. Ctrl + C Si ctrl-c-break = True: arrêter l'exécution et revenir en mode direct. Un message Break est imprimé.
+
 
+
Si l'entrée de l'utilisateur est requise par l'entrée de déclarations, LINE INPUT, ou RANDOMIZE, la plupart des touches ont le même effet que dans le mode direct. Les touches suivantes ont un effet différent: Ctrl + Pause ou Ctrl + C ou Ctrl + Arrêt défil Arrêter l'exécution et revenir en mode direct. Un message Break est imprimé. Entrez entrée Terminer et revenir au mode précédent. Raccourcis clavier
+
 
+
Les touches de fonction et la touche alt peuvent être utilisés comme raccourcis clavier pour certains mots-clés. Les valeurs par défaut pour les touches de fonction sont: F1 LISTE F2 RUNEnter F3 LOAD "F4 SAVE" F5 F6 contenter, "LPT1:" Entrez F7 TRONEnter F8 TROFFEnter F9 keyspace F10 ECRAN 0,0,0Enter
+
 
+
Les raccourcis des touches de fonction peuvent être redéfinis avec l'énoncé KEY. Les raccourcis sont affichés au bas de l'écran.
+
 
+
Les mots-clés suivants peuvent être entrés avec Alt + première lettre. Les raccourcis Alt ne peuvent pas être redéfinis.
+
 
+
  AUTO BSAVE COLOR EFFACER AUTRE POUR GOTO HEX $ INPUT KEY LOCATE MOTOR SUIVANT OUVERT TIRAGE SCREEN puis en utilisant VAL WIDTH XOR
+
 
+
===mots-clés alternatifs===
+
 
+
Dans PC-BASIC, la touche F12 peut être utilisé pour saisir des touches spéciales qui ne sont pas présents sur certains claviers. F12 + B Pause F12 + P Pause F12 + C Caps Lock F12 + N Num Lock F12 + Scroll Lock S
+
 
+
La touche F12 peut également être utilisé en combinaison avec les touches numériques réguliers et les touches fléchées pour saisir des chiffres à partir du clavier numérique. Les combinaisons de F12 ne sont pas présents dans le GW-BASIC.
+
 
+
En outre, comme dans GW-BASIC, la touche Alt peut être utilisé pour saisir des caractères par leurs points de code (valeurs ASCII). Cela se fait en appuyant sur la touche Alt et en tapant le point de code comme une valeur décimale sur le pavé numérique, puis en relâchant la touche Alt. opérations du Presse-papiers
+
 
+
Contrairement à GW-BASIC, vous pouvez copier et coller du texte dans le presse papier. Cela peut être fait avec la souris ou avec la touche F11.
+
 
+
Utilisation du presse-papiers avec la souris fonctionne dans le style de X11: Le bouton gauche est sélectionner et copier; bouton du milieu est la pâte.
+
 
+
Les combinaisons de touches suivantes fonctionnent également le presse-papiers: F11 + ↑ ↓ ← → Sélectionnez une région de l'écran. F11 + A Sélectionner tout. F11 + C Copier. F11 + V Coller du presse-papiers. touches de commande Emulator
+
 
+
Dans PC-BASIC, F11 + F basculer en mode plein écran. Programmes et fichiers
+
 
+
PC-BASIC peut contenir un programme BASIC à la fois dans la mémoire. Pour entrer dans une ligne de programme, commencer par un numéro de ligne et entrez les commandes BASIC après. La longueur maximale d'une ligne de programme est de 255 caractères, y compris le numéro de ligne et tous les espaces. La ligne de programme ne sera pas exécuté immédiatement, mais stockée dans le programme. lignes du programme sont classés par numéro de ligne, de sorte que la ligne 10 est exécutée avant la ligne 20. Toutes les lignes de programme doivent avoir un numéro de ligne. Les numéros de ligne varient entre 0 et 65535 inclus. Il est impossible d'entrer un numéro de ligne supérieure à 65529, mais ceux-ci peuvent exister dans les programmes chargés. Dans une ligne de programme, les états sont séparés par des virgules.
+
 
+
Pour exécuter le programme, tapez la commande RUN. PC-BASIC va maintenant exécuter toutes les lignes de programme pour l'intérieur de l'environnement de travail. Vous ne pouvez pas déplacer le curseur ou entrer des commandes alors que le programme est en cours. Si et quand le programme se termine, il va rendre le contrôle de l'environnement de travail pour vous. Vous pouvez interrompre un programme à tout moment en utilisant l'une des combinaisons de touches Ctrl + Pause ou Ctrl + Scroll Lock. Le programme s'arrête immédiatement, imprimer un message de rupture et de rendre le contrôle de vous.
+
 
+
Dans GW-BASIC, vous ne pouvez pas utiliser Ctrl + C pour interrompre un programme en cours d'exécution. Cependant, de nombreux claviers modernes ne possèdent pas une pause ou la touche Scroll Lock, ce qui rendrait impossible d'interrompre un programme qui ne sort pas. Par conséquent, par défaut, traite de PC-BASIC Ctrl + C comme si elle était Ctrl + Break. Set ctrl-c-break = False si vous préférez le comportement de style GW-BASIC. Lorsque vous utilisez l'interface texte ou de ligne de commande, cette option est ignorée.
+
 
+
Un programme peut être stocké sur un lecteur en utilisant la commande SAVE, dans l'une des trois façons suivantes:
+
 
+
*  Texte brut, lisible par tout éditeur de texte: SAVE "MYPROG", A
+
*    Tokenised, prenant moins d'espace de stockage: SAVE "MYPROG"
+
*    Protégé, qui est un format crypté: SAVE "MYPROG", P
+
 
+
Dans les trois cas, le programme sera écrit dans le répertoire de travail courant avec le nom MYPROG.BAS.
+
 
+
PC-BASIC peut lire et écrire des fichiers protégés créés par GW-BASIC. Contrairement à GW-BASIC, cependant, il ne désactive pas accéder au contenu non crypté du fichier. Le cryptage utilisé par GW-BASIC a été rompu il y a plusieurs décennies, de sorte que le mode protégé a offert peu de protection de toute façon; interdisant l'accès est un petit risque de sécurité car elle permettrait à quelqu'un de vous envoyer un programme que vous ne pouvez pas inspecter avant de l'exécuter. Cependant, il est possible de désactiver l'accès des fichiers protégés en activant l'option strict de protection.
+
 
+
Vous pouvez lire un fichier de programme en mémoire avec LOAD "MYPROG". Cela effacera le programme actuellement en mémoire et le remplacer par une lecture à partir du répertoire de travail courant. Pour accéder à des fichiers dans un répertoire différent, spécifiez un chemin à partir du répertoire en cours. La spécification de chemin suit les conventions DOS. Le seul séparateur de chemin d'accès valide est le backslash \. Par exemple, LOAD "PROGRAMMES \ MYPROG".
+
 
+
Vous pouvez charger ou d'exécuter un programme immédiatement sur le démarrage PC-BASIC en utilisant la charge ou les options d'exécution. Par exemple, pcbasic --run = MYPROG.BAS
+
 
+
Les arguments de ces options peuvent être fournis en tant que chemins de PC-BASIC ou chemins d'accès dans le formulaire standard pour votre système d'exploitation.
+
 
+
PC-BASIC peut être utilisé pour convertir entre les trois formats de programmes: soit en chargeant le programme et l'enregistrement dans le format de votre choix, ou à partir de la ligne de commande en utilisant l'option de conversion. Pour convertir un fichier tokenised ou protégé en texte brut, vous pouvez utiliser, par exemple: pcbasic --convert = A PROGRAMP.BAS PROGRAMA.BAS Accès à vos lecteurs
+
 
+
Par défaut, la lettre de lecteur Z: est mappé sur le répertoire de travail courant et est le lecteur en cours. En particulier, il n'a pas été mappé à Windows Z: lecteur, si cela existe. Vous pouvez tracer des commandes et d'autres endroits du système de fichiers comme des lettres de lecteur PC-BASIC en utilisant l'option de montage. Par exemple, --mount pcbasic = A: / home / moi / BasicFloppy, C: / home / moi / Stuff ou, sous Windows, --mount pcbasic = A: C: \ Users \ Me \ BasicFloppy, C: C: \ Users \ Me \ Stuff tracera ces endroits au PC-BASIC A: et C: les lecteurs.
+
 
+
Si vous voulez que les lettres de lecteur de PC-BASIC soient les mêmes que celles de Windows, activez l'option carte-lecteurs. Utilisez ceci avec prudence, car cela signifie que vos programmes peuvent maintenant lire et écrire sur tous les lecteurs que Windows vous permet d'accéder.
+
 
+
PC-BASIC utilise les conventions DOS pour les noms de fichiers et les chemins. Ce sont subtilement différents de conventions à court de noms de fichiers Windows et pas si subtilement différent de conventions Unix. Cela peut conduire à des effets surprenants en présence de plusieurs fichiers qui correspondent au même nom DOS. Pour éviter de telles surprises, il est préférable d'exécuter PC-BASIC dans un répertoire de travail propre et utiliser tout en majuscules format 8.3 pour tous les fichiers. fichiers de base compatibles
+
 
+
De nombreux dialectes BASIC utilisent les mêmes .BAS d'extension, mais leurs fichiers ne sont pas compatibles. PC-BASIC exécute les fichiers de programme GW-BASIC seulement. Quelques conseils pour reconnaître les programmes GW-BASIC:
+
 
+
*  fichiers GW-BASIC stockées sous forme de texte sont des fichiers texte avec les numéros de ligne.
+
*    fichiers Tokenised sont des fichiers binaires qui commencent par octet magique & hFF.
+
*    Les fichiers protégés sont des fichiers binaires qui commencent par octet magique & hFE.
+
 
+
En particulier, les fichiers QBASIC (qui ont aucun numéro de ligne) et les fichiers QuickBASIC (octet magique et HFC) ne fonctionnera pas.
+
 
+
PC-BASIC va accepter à la fois DOS et Unix conventions newline pour les programmes stockés sous forme de texte brut. Toute ligne ne commençant pas par un nombre sera considéré comme une continuation (par LF) de la ligne précédente. Ce comportement est différent de GW-BASIC, qui accepte uniquement les fichiers texte avec CR fins de ligne LF. En conséquence, dans les cas exceptionnels où une ligne de programme se poursuit par le biais LF juste avant un certain nombre, des fichiers texte GW-BASIC correctes ne peuvent pas être chargés correctement. Si vous rencontrez un tel cas, utilisez l'option stricte-newline pour permettre un comportement GW-BASIC. Si stricte-newline est activée, les fichiers texte au format standard Unix (terminaisons de ligne LF, aucun caractère de fin de fichier) ne parviennent pas à charger. Sous Linux ou Mac, utilisez un utilitaire tel que unix2dos pour convertir des programmes enregistrés en tant que fichiers texte avant de les charger. Lors de l'enregistrement en tant que texte, PC-BASIC utilise toujours les fins de ligne CR LF et & H1A à la fin de fichier. Paquets
+
 
+
PC-BASIC peut exécuter des programmes emballés. Un paquet est tout simplement une archive d'annuaire ou zip. Le répertoire ou le contenu fichier zip seront chargés dans le répertoire de travail actuel. Si un fichier de configuration nommé PCBASIC.INI est présent à l'intérieur de ce répertoire, ses paramètres sont chargés; habituellement, l'un de ces paramètres sera un argument de l'exécution des liens vers un programme BASIC inclus dans l'archive ou un répertoire. PC-BASIC reconnaîtra zipfiles quel que soit leur extension. Une extension suggérée pour les packages de PC-BASIC est .BAZ. Les forfaits sont un choix pratique si un programme a besoin de changer de nombreuses options de PC-BASIC pour fonctionner comme vous le souhaitez, ou si elle a besoin d'une configuration de répertoire de travail particulier.
+
 
+
packages ZipFile sont décompressés dans un répertoire temporaire chaque fois qu'ils sont chargés. Le répertoire temporaire est supprimé lorsque PC-BASIC ferme. Avec des forfaits fichier zip, il est donc pas possible d'enregistrer des fichiers et les rouvrir à la prochaine exécution de l'emballage. Tapes et BASICODE
+
 
+
Les interfaces de périphériques CAS1 avec l'émulateur de cassette. Les bandes ont jamais été très populaire sur l'IBM PC, et en effet uniquement disponible avec le PC d'origine et le PCjr. Il n'y a pas beaucoup de cassettes IBM PC à l'état sauvage. Toutefois, si vous tombez sur l'un, tout ce que vous avez à faire pour le lire avec PC-BASIC est l'enregistrer dans un .WAV (RIFF WAVE) fichier et l'attacher à l'CAS1: appareil avec le CAS1 = WAV: option filename. Vous pouvez également générer vos propres images de bande et stocker vos programmes sur elle. fichiers WAV générés par PC-BASIC sont grandes mais très facilement comprimé dans une archive ZIP; cela fonctionne mieux et conduit à des fichiers plus petits que le transcodage à un format audio lossy comme MP3.
+
 
+
Comme alternative à .WAV, vous pouvez stocker des cassettes au format CAS. Ceci est tout simplement un peu-dump de la bande et est interchangeable avec des images de bande pour le PCE IBM PC émulateur.
+
 
+
BASICODE était un format de codage audio beaucoup plus fréquent, qui a connu une grande popularité, en particulier aux Pays-Bas, le Royaume-Uni et Allemagne de l'Est. BASICODE a été distribué par des bandes ou diffusion audio sur la radio. La lecture dans un matériel spécial de PC nécessaire, habituellement brancher un magnétophone à un port série ou parallèle. Dans PC-BASIC, bandes BASICODE sont lus à travers le dispositif de CAS1 à la place, en attachant un fichier .WAV avec le CAS1 = BC: option filename. PC-BASIC va charger le BASICODE, en insérant les espaces nécessaires entre les mots-clés où la norme de BASICODE laisse ces out. Notez que vous aurez besoin d'un programme Bascoder pour exécuter le BASICODE, et ce n'est pas distribué actuellement avec le PC-BASIC.
+
 
+
Sécurité Si vous avez un Bascoder nommé BASCODER.BAS, la façon d'exécuter un programme de BASICODE programme nommé de la bande est: LOAD "BASCODER" CHAIN ​​MERGE "PROGRAM CAS1"
+
 
+
PC-BASIC fait des choix par défaut avec la sécurité de base à l'esprit, mais ne bac à sable pas ses programmes de manière significative. programmes BASIC ont un accès plus ou moins complet à votre ordinateur. Vous devez les traiter avec la même prudence que vous shell scripts ou binaires. Par conséquent, ne pas exécuter un programme à partir de l'Internet que vous ne l'avez pas inspecté la première utilisation LIST ou --convert pcbasic = Un nom de fichier sur la ligne de commande. Vous ne voudriez pas simplement télécharger un exécutable à partir de l'Internet et l'exécuter soit, non? Connexion à des périphériques d'impression
+
 
+
Vous pouvez imprimer à partir de programmes de PC-BASIC en accédant au LPT1: périphérique. PC-BASIC envoie la sortie à l'imprimante par défaut de votre système d'exploitation, sauf si vous modifiez l'lpt1 = option. Pour imprimer via une imprimante nommée MyPrinter, définissez lpt1 = IMPRIMANTE: MyPrinter. Vous pouvez également joindre des imprimantes au LPT2: et LPT3: dispositifs.
+
 
+
La sortie sera envoyé à l'imprimante lorsque vous fermez PC-BASIC. Si vous préférez, vous pouvez plutôt envoyer chaque page séparément à l'imprimante en réglant l'impression-trigger = page. Vous pouvez même envoyer chaque ligne séparément, mais cela n'a de sens que sur une imprimante tracteur alimenté (comme il était courant à l'apogée de GW-BASIC).
+
 
+
Il est facile d'imprimer un fichier au lieu d'une imprimante: set lpt1 = FICHIER: sortie.txt pour envoyer tous les LPT1: sortie de l'imprimante dans le fichier texte sortie.txt.
+
 
+
Les états d'impression LPRINT et LLIST envoient toujours leur production à LPT1 de PC-BASIC: appareil.
+
 
+
La présentation des documents imprimés est laissée à votre système d'exploitation: ce sera la présentation par défaut des fichiers texte. Si vous Wist changer la façon dont les documents sont imprimés, s'il vous plaît consulter les paramètres de votre OS. Sous Windows, par exemple, les fichiers texte sont imprimés par notepad.exe et en changeant les paramètres par défaut dans cette application va changer la façon dont les documents PC-BASIC sont imprimés. Vous aurez besoin de définir une police d'imprimante qui comprend les caractères dont vous avez besoin d'imprimer. Sur les systèmes Unix, PC-BASIC va utiliser l'utilitaire paps si elle est disponible; cela sélectionnera automatiquement les polices qui prennent en charge les caractères dont vous avez besoin. ports série et parallèle
+
 
+
PC-BASIC fournit les périphériques série COM1: et COM2 :. Pour faire usage de ceux-ci, vous avez besoin de les attacher à un port de communication sur votre ordinateur avec le com1 = ou com2 = option. Pour joindre le premier port série physique, réglez com1 = PORT: 0 (ou, alternativement, com1 = PORT: COM1 sous Windows ou com1 = PORT: / dev / ttyS0 sous Linux). Si vous ne disposez pas d'un port série, vous pouvez émuler un en envoyant les communications sur une prise réseau: set com1 = SOCKET: localhost: 7000 et tout COM1: le trafic sera envoyé par socket 7000.
+
 
+
Pour accéder à un port parallèle, fixez-le à l'un des LPT1 :, LPT2: ou LPT3 :. Par exemple, définissez lpt2 = PARPORT: 0 à joindre premier port parallèle de votre ordinateur pour LPT2 :. Modification des cibles d'émulation de l'interface
+
 
+
Par défaut, PC-BASIC émule GW-BASIC sur un système avec des capacités vidéo VGA. Cependant, il peut émuler plusieurs autres configurations, qui diffèrent les unes des autres en termes de vidéo et de la capacité audio, polices, taille de la mémoire, ainsi que la syntaxe de base disponibles. La meilleure façon de définir la cible d'émulation est en utilisant une option prédéfinie. Par exemple, exécutez pcbasic --preset = PCjr. Autres disponibles presets cibles d'émulation sont: Preset Emulation cible PCjr IBM PCjr avec cartouche BASIC, y compris la vidéo de PCjr et les capacités sonores de 3 voix et la syntaxe BASIC étendu. tandy Tandy 1000 avec GW-BASIC, y compris Tandy capacités vidéo et audio 3-voix et la syntaxe BASIC étendu. Olivetti Olivetti M24 ou AT & T PC 6300. cga IBM ou compatible avec Color Adapter / Graphics et un moniteur composite. Cela permet à l'émulation colorburst composite. ega IBM ou compatible avec Graphics Adapter Extended. vga IBM ou compatible avec Video Graphics Array. mda IBM ou compatible avec l'adaptateur Monochrome Display et moniteur monochrome teinté de vert. hercules IBM compatible avec Hercules Graphics Adapter et moniteur monochrome teinté de vert. stricte Choisissez compatibilité stricte avec GW-BASIC sur la commodité, la sécurité, rime ni raison.
+
 
+
Presets sont des groupes d'options qui sont définies dans le fichier de configuration par défaut. Vous pouvez créer vos propres presets en créant un en-tête dans votre fichier de configuration privée avec le nom du nouveau preset, suivie par les options que vous souhaitez appliquer. Par exemple, si vous définissez: [my_preset] video = vga syntaxe = PCjr vous pouvez maintenant exécuter pcbasic --preset = my_preset pour démarrer une émulation d'une machine hypothétique avec une carte vidéo VGA en cours d'exécution PCjr Cartridge BASIC. caractéristiques de compatibilité GW-BASIC
+
 
+
PC-BASIC vise un très haut niveau de compatibilité avec GW-BASIC. Cependant, certaines fonctionnalités de compatibilité sont désactivées par défaut pour des raisons de commodité ou de sécurité. Ces caractéristiques peuvent être activées à l'aide des options individuelles de ligne de commande. Le plus haut niveau de compatibilité avec GW-BASIC peut être atteint par la mise en preset = strict, qui arrête toutes les caractéristiques de commodité et de sécurité qui provoquent des différences avec GW-BASIC. codepages
+
 
+
PC-BASIC prend en charge un grand nombre de codepages existants qui étaient communs à l'époque GW-BASIC était populaire, y compris deux octets jeu de caractères codepages utilisés pour le chinois, le japonais et le coréen. Vous pouvez choisir votre codepage en utilisant le codepage = option. Par exemple, codepage = 936 sélectionne le codepage GBK couramment utilisé sur le continent chinois. PC-BASIC va charger et sauvegarder tous les fichiers de programme comme si codé dans le codepage vous sélectionnez.
+
 
+
Il est également possible de charger et enregistrer des programmes dans le format UTF-8 norme aujourd'hui commune, en activant l'option utf8. Lorsque utf8 est activé, la source de programme en texte brut sera sauvegardé et chargé dans la norme UTF-8. S'il vous plaît noter que vous aurez toujours besoin de sélectionner un codepage qui fournit tous les caractères Unicode que vos besoins du programme.
+
 
+
Notez que PC-BASIC ne met pas en œuvre les fonctionnalités suivantes relatives à certains de ces codepages:
+
 
+
Le texte bidirectionnel
+
 
+
Tout le texte est imprimé gauche à droite indépendante du codepage sélectionné.  Pour écrire des chaînes dans une langue qui est écrit de droite à gauche, la séquence de caractères logique doit être inversée afin que l'ordre semble correct visuellement.  Bien que ce soit gênant, il est en ligne avec le comportement de GW-BASIC.  Cela affecte les pages de codes marqués par B dans le tableau.
+
 
+
La combinaison de caractères
+
 
+
  PC-BASIC reconnaît les points de code d'un octet (où chaque glyphe montre sur une seule cellule sur l'écran) et les points de code à deux octets (où un seul glyphe prend deux cellules sur l'écran).  Les caractères combinatoires (tels que les caractères combinatoires de codepages 874 et 1258) ne sont donc pas représentés correctement: au lieu d'être combiné avec leur caractère de base précédent comme un seul glyphe combiné, ces combinaisons seront affichés comme des glyphes distincts.  Lorsqu'elles sont disponibles, codepages alternatives avec des caractères précomposés donnera de meilleurs résultats.  Cela affecte les pages de codes marqués par C dans le tableau.
+
 
+
Les codepages suivants sont disponibles. PC-BASIC utilise le numéro de page de code Microsoft OEM lorsque cela est sans ambiguïté. Les pages de code devraient se mettre d'accord avec les sources Microsoft pour les plages et h80- & HFF. Ranges & h00- & H1F et & H7F sont mises en œuvre comme les caractères IBM Special Graphic où certaines sources de page de code va lister ceux-ci comme les caractères de contrôle correspondant. Pour codepages non officiels et ceux avec numérotation contradictoires, les noms de codes de pages sont utilisés à la place des numéros. codepage_id Codepage Langues Remarques 437 DOS latine États-Unis English 720 Transparent ASMO Arabe B 737 DOS grec grec 775 DOS Baltic Rim estonien, letton et lituanien 806 IBM-PC Devanagari Hindi 850 DOS Latin 1 langues d'Europe occidentale 851 DOS grec 1 grec 852 DOS latine 2 Central langues européennes 853 DOS latine 3 langues d'Europe du Sud 855 DOS cyrillique 1 serbe, macédonien et bulgare 856 DOS hébreu hébreu B 857 DOS latine 5 turc 858 DOS latin 1 avec Euro occidentaux langues européennes 860 DOS portugais portugais 861 DOS islandais Icelandic 862 DOS hébreu hébreu B 863 DOS canadienne français français 864 DOS arabe arabe B 865 DOS Nordic danois et norvégien 866 DOS cyrillique 2 Russian 868 DOS Urdu Urdu B 869 DOS grec 2 grec 874 TIS-620 Thai C 932 Shift-JIS (variante) japonais 934 DOS / V Corée Korean 936 GBK; GB2312 / EUC-CN surensemble Chinois simplifié 938 DOS / V Taiwan traditionnelle chinoise 949 IBM-PC Corée KS; EUC-KR superset 950 Big-5 (variante) traditionnelle chinoise 1258 Vietnamiens C alternativnyj GOST Alternativnyj Variant armscii8a russe ArmSCII-8a coréenne; cp899 FreeDOS arménienne Big5-2003 Big-5 (Taiwan 2003) Chinois Big5-HKSCS Les traditionnelles Big-5 (Hong Kong 2008) Chinois georgian-académie traditionnelle Académie standard Georgian georgian-ps Parlement géorgien standard iransystem Iran Système persan B ISCII-as ISCII Assamais assamais C ISCII-être ISCII bengali bengali C ISCII-de ISCII Devanagari hindi, le marathi, le sanskrit, konkani, Nepali C ISCII-gu ISCII gujarati gujarati C ISCII-ka ISCII Kannada Kannada C ISCII-ma ISCII malayalam malayalam C ISCII ou ISCII Oriya Oriya C ISCII-pa ISCII Punjabi Punjabi C ISCII-ta ISCII Tamil Tamil C ISCII-te ISCII Telugu Telugu C Kamenicky Kamenický; cp895 tchèque koi8-r KOI8-R russe koi8-ru KOI8-RU ukrainiens, biélorusses, russes koi8-u KOI8-U ukrainiens, russes mazovia Mazovie; cp667, 991, 790 Polonais mik MIK, FreeDOS cp3021 Osnovnoj bulgare GOST Osnovnoj Variant pascii russe PASCII Kashmiri, le persan, le sindhi, l'ourdou B ruscii RUSCII ukrainienne, russup3 russe Cornell soutien russe pour russup4ac russe Exceller Software Support russe DOS for Academic russe DOS russup4na Exceller Software support russe pour le russe DOS de non-académique VISCII VISCII, FreeDOS cp30006 vietnamienne
+
 
+
Vous pouvez ajouter des codepages à PC-BASIC, en ajoutant un fichier avec son application en Unicode au codepage / répertoire.
+
 
+
==Polices==
+
 
+
PC-BASIC émule les polices raster distinctives des machines compatibles IBM. Les polices ROM des adaptateurs originaux IBM et Tandy (qui sont dans le domaine public dans un certain nombre de pays) ont été inclus dans PC-BASIC. Ceux-ci fournissent l'émulation la plus précise. Cependant, les ROM de police seulement inclus une page de code unique - DOS latine États-Unis 437.
+
 
+
Pour prendre en charge les pages de code au-delà de 437, par défaut de PC-BASIC à la police CPIDOS utilisé par défaut dans FreeDOS et DOSBox. Cette police est très similaire dans le style à la police IBM VGA, mais a un support pour beaucoup plus de pages de code, en particulier de l'Ouest et du Moyen-Orient alphabets. Si CPIDOS ne comprend pas les caractères dont vous avez besoin, essais de PC-BASIC pour les trouver au sein d'UNI-VGA, qui est également très similaire au style VGA. Si cela ne suffit pas, PC-BASIC retombe GNU unifont pour les caractères manquants. glyphes occidentaux unifont sont moins similaires à la police VGA, mais il fournit un support pour le plein plan multilingue de base Unicode. Par exemple, tous les Chinois, les glyphes japonais et coréens dans PC-BASIC sont tirées de unifont.
+
 
+
Il est possible de modifier le choix de la police en utilisant la police = option. Vous pouvez fournir une liste de polices, où la dernière police spécifiée est le plus préféré.
+
 
+
PC-BASIC lit les polices dans le format .hex introduit par unifont. Il est facile de définir des polices personnalisées dans ce format: il peut être modifié dans un éditeur de texte normal. Voir le projet unifont pour un outil de création. Vous pouvez ajouter des polices personnalisées pour PC-BASIC en les installant dans la police / sous-répertoire du répertoire d'installation de PC-BASIC.
+
 
+
Par défaut, les polices suivantes sont disponibles: font_name Nom Tailles Codepages unifont GNU unifont 16 tous univga Uni-VGA police 16 de nombreux freedos FreeDOS CPIDOS font 8, 14, 16 de nombreux cga IBM Couleur / Graphics Adapter police 8 437 seulement mda IBM Monochrome Display Adapter police 14 437 seulement vga Video Graphics IBM tableau font 8, 14, 16 437 seulement Olivetti Olivetti / AT & T font 16 437 seulement tandy1 Tandy-1000 police ancienne version 8 437 seulement tandy2 Tandy-1000 police nouvelle version 8 437 seulement
+
 
+
GNU unifont contient glyphes pour tous les points de code définis du plan multilingue de base d'Unicode 7.0, ce qui en fait une excellente police de repli. Ses glyphes ne sont pas, cependant, très semblables à ceux qui ont été utilisés sur les machines DOS; tant Uni-VGA et les polices FreeDOS CPIDOS sont donc plus approprié, quand ils ont les glyphes nécessaires. Redirection I / O
+
 
+
supports PC-BASIC redirigeant entrée et la sortie de la GW-BASIC façon: sortie redirigée avec la sortie = option sera envoyée à l'écran ainsi que le fichier spécifié, alors que l'entrée redirigée avec entrée = est prise uniquement à partir du fichier spécifié. Notez que la sortie de l'écran à travers le SCRN: appareil et l'entrée au clavier par l'intermédiaire du KYBD: dispositif ne sont pas redirigée. Les fichiers sont lus et écrits dans le codepage ensemble avec PC-BASIC.
+
 
+
Notez qu'il est également possible d'utiliser l'installation de votre système d'exploitation pour rediriger la sortie de la console en utilisant les opérateurs <et>. Il est préférable de définir l'interface = none pour que I / O est redirigé via la console. Cela produira des fichiers dans le codage standard de votre console, ce qui est souvent UTF-8 sur Unix et Windows-1252 sur Windows. Interface de ligne de commande
+
 
+
Vous pouvez exécuter PC-BASIC comme une interface de ligne de commande en définissant l'interface = cli (ou -b). Aucune fenêtre sera ouverte: vous pouvez taper des commandes BASIC directement dans votre invite de commande / Terminal. Utilisez les touches fléchées horizontales pour se déplacer sur la ligne courante que vous éditez; utilisez les touches fléchées verticales pour afficher les lignes d'écran ci-dessus et ci-dessous. Copier et coller ne sont disponibles que si le shell appelant leur fournit. Sous Windows, Ctrl + Pause prendra fin immédiatement PC-BASIC. Vous pouvez utiliser Ctrl + C pour interrompre le programme. La combinaison de touches de fin de fichier (Ctrl + D sur Unix, Ctrl + Z sous Windows) va quitter PC-BASIC.
+
 
+
Vous pouvez utiliser l'interface de ligne de commande pour exécuter une ou quelques commandes de base directement, comme ceci:
+
 
+
moi @ mybox $ pcbasic -bqe = "1 + 1"
+
 
+
  2
+
 
+
moi @ mybox $
+
 
+
Aux fins de script, il est également possible d'exécuter PC-BASIC sans interface en définissant l'interface = none ou -n. Si ce paramètre est réglé, PC-BASIC prendra entrée de et envoyer la sortie à la console en UTF-8 sans autre modification. Cette fonction est utile en combinaison avec la redirection et la tuyauterie. interface texte-
+
 
+
Il y a aussi une interface de texte plein-écran disponible: il permet par l'interface de réglage = texte (ou -t). L'interface à base de texte est très similaire à l'interface graphique par défaut, mais fonctionne dans votre invite de commande ou de la fenêtre Terminal.
+
 
+
Dans les interfaces à base de texte et de ligne de commande, les graphiques ne sont pas disponibles. Toute tentative d'ouverture d'un mode écran graphique conduira à une erreur d'appel de fonction illégale. En outre, de nombreuses combinaisons de touches Ctrl et Alt ne sont pas disponibles.
+
 
+
Sur les systèmes Unix uniquement, vous pouvez obtenir le son dans les interfaces de texte et de ligne de commande sur le haut-parleur du PC si vous installez l'utilitaire de bip et activez l'héritage pilote PC-parleur ou l'émulation. Les réglages et options
+
 
+
PC-BASIC a un certain nombre de paramètres qui modifient la façon dont il fonctionne. Ces paramètres peuvent être modifiés en définissant des options sur la ligne de commande ou par la modification du fichier de configuration.
+
 
+
Dans les deux méthodes, les options ont le même nom et la syntaxe. Dans ce qui suit, nous allons souvent faire référence à un paramètre d'option particulière; rappelez-vous que vous pouvez définir ce à partir de la ligne de commande, ainsi que dans le fichier de configuration.
+
 
+
===Options de ligne de commande===
+
 
+
Vous pouvez entrer des options de ligne de commande si vous démarrez PC-BASIC de la console (également connu sous le nom d'invite de commandes ou de terminal, ce qui est normalement CMD ou PowerShell sous Windows), en faisant précéder le nom de l'option avec deux tirets, comme suit: pcbasic --preset = tandy --ctrl-c-break = True
+
 
+
Sur la ligne de commande, vous pouvez laisser l'expression = True qui est commun dans les options de commutation. Certaines options ont une alternative, nom court composé d'une seule lettre précédée d'un seul tableau de bord, que vous pouvez utiliser sur la ligne de commande. Vous pouvez combiner plusieurs options courtes avec un seul tableau de bord. Les fichiers de configuration
+
 
+
Vous pouvez modifier les options en ajoutant ou en supprimant des lignes dans votre fichier de configuration local, qui se trouve à l'emplacement suivant:
+
 
+
Windowss
+
 
+
  %AppData% \ pcbasic \ PCBASIC.INI
+
  
 +
Windows
 +
    %AppData%\pcbasic\PCBASIC.INI
 
OS X
 
OS X
 
+
    ~/Library/Application Support/pcbasic/PCBASIC.INI
  ~ / Library / Application Support / pcbasic / PCBASIC.INI
+
 
+
 
Linux
 
Linux
 +
    ~/.config/pcbasic/PCBASIC.INI
  
  ~ / .config / Pcbasic / PCBASIC.INI
+
Change an option in the configuration file by adding a line in the section named [pcbasic], like so:
 
+
[pcbasic]
Changer une option dans le fichier de configuration en ajoutant une ligne dans la section [pcbasic], comme ceci: [pcbasic] preset = tandy ctrl-c-break = True
+
preset=tandy
 
+
ctrl-c-break=True
Vous ne pouvez pas utiliser des arguments de position ou le nom court d'options dans le fichier de configuration. Vous pouvez également ne pas laisser de côté l'expression = True.
+
 
+
Le fichier de configuration doit être un fichier texte encodé en ASCII ou UTF-8. Synopsis pcbasic [programme | package [sortie]] [--allow code-piquez [= True | = False]] [--altgr [= True | = False]] [--append [= True | False =]] [--aspect = x, y] [-b] [--border = largeur] [--caption = titre] [--capture-caps [= True | = False]] [--cas1 = Type: valeur] [--cga-bas [= True | = False]] [--codepage = codepage_id] [--config = config_file] [--com1 = Type: valeur] [--com2 = Type: valeur] [--convert = {A | B | P}] [--copy-paste = copy_button, paste_button] [--ctrl-c-break [= True | = False]] [--current-device = {CAS1 | @ | A | B ... | Z}] [--dimensions = x, y] [-d] [--double [= True | = False]] [-e = command_line] [--exec = command_line] [--font = font_name [, font_name ...]] [--fullscreen [= True | = False]] [-h] [--help] [-i] [--input = fichier_entrée] [--interface = {none | cli | texte | graphique}] [-k = keystring] [--keys = keystring] [-l = programme] [--load = programme] [--logfile = log_file] [--lpt1 = Type: valeur] [ --lpt2 = Type: valeur] [--lpt3 = Type: valeur] [--map-disques [= True | = False]] [-f = NUMBER_OF_FILES] [--max-files = NUMBER_OF_FILES] [-m = max_memory [, basic_memory_blocks]] [--max-memory = max_memory [, basic_memory_blocks]] [-s = record_length] [--max-reclen = record_length] [--monitor = {rgb | composite | mono}] [- mono-teinte = r, g, b] [--mount = lecteur: chemin, [lecteur: chemin ...]] [-n] [--nobox [= True | = False]] [--nokill [= True | = False]] [--nosound [= True | = False]] [--output = output_file] [--pcjr terme = terminal_program] [--peek = [seg: addr: val [, seg: addr : val ...]]] [--pen = {left | milieu | right | none}] [--preset = option_block] [--print-trigger = {line | page | fermer}] [-q] [ --quit [= True | = False]] [--reserved-memory = nombre_octets] [--resume [= True | = False] [-r = programme] [--run = programme] [--scaling = { lisse | croquante | natif}] [-c = size] [--serial-buffer-size =] [--shell = {none | native | commande]] [--state = state_file] [--strict-caché trapézoidale [= True | = False]] [--strict-newline [= True | = False]] [--strict-protect [= True | = False]] [--syntax = {avancée | PCjr | tandy} ] [-t] [--text-width = {40 | 80}] [--utf8 [= True | = False]] [-v] [--version] [--video = carte] [--video -Mémoire = size] [-w] [--wait [= True | = False]] arguments positionnels
+
 
+
programme
+
 
+
  Si un programme .BAS est spécifié comme premier argument de position, il sera exécuté.  Le --run, --load et les options --convert remplacent ce comportement.
+
 
+
paquet
+
 
+
  Si un paquet ou un répertoire zipfile est spécifié comme premier argument de position, tout fichier de configuration contenu PCBASIC.INI sera chargé;  habituellement, il exécutera un fichier de programme dans le package.  Toutes les autres options de ligne de commande remplacent le fichier de configuration de package, noter en particulier le potentiel de la --run, --load et les options --convert pour modifier le comportement de l'emballage.
+
 
+
sortie
+
 
+
  Si un second argument de position est spécifié, il définit le fichier de sortie pour la conversion de format de fichier.  Cet argument est ignoré sauf si l'option --convert est donnée.
+
 
+
options de
+
 
+
--allow code-tisonner [= True | = False]
+
 
+
  Permettre aux programmes de Poke dans la mémoire de code.
+
 
+
--altgr [= True | = False]
+
 
+
  Si True (par défaut), interpréter la touche Alt droite comme Alt Gr au lieu de Alt.  La touche Alt gauche est toujours considérée comme Alt.
+
  
--append [= True | = False]
+
You cannot use positional arguments or the short name of options in the configuration file. You also cannot leave out the expression =True.
  
  Si elle est utilisée avec --output = output_file, l'output_file est ajouté à plutôt que écrasé.  
+
The configuration file should be a text file encoded in ASCII or UTF-8.
 +
Synopsis
 +
pcbasic [program|package [output]] [--allow-code-poke[=True|=False]] [--altgr[=True|=False]] [--append[=True|=False]] [--aspect=x,y] [-b] [--border=width] [--caption=title] [--capture-caps[=True|=False]] [--cas1=type:value] [--cga-low[=True|=False]] [--codepage=codepage_id] [--config=config_file] [--com1=type:value] [--com2=type:value] [--convert={A|B|P}] [--copy-paste=copy_button,paste_button] [--ctrl-c-break[=True|=False]] [--current-device={CAS1|@|A|B ... |Z}] [--dimensions=x,y] [-d] [--double[=True|=False]] [-e=command_line] [--exec=command_line] [--font=font_name[,font_name ... ]] [--fullscreen[=True|=False]] [-h] [--help] [-i] [--input=input_file] [--interface={none|cli|text|graphical}] [-k=keystring] [--keys=keystring] [-l=program] [--load=program] [--logfile=log_file] [--lpt1=type:value] [--lpt2=type:value] [--lpt3=type:value] [--map-drives[=True|=False]] [-f=number_of_files] [--max-files=number_of_files] [-m=max_memory[,basic_memory_blocks]] [--max-memory=max_memory[,basic_memory_blocks]] [-s=record_length] [--max-reclen=record_length] [--monitor={rgb|composite|mono}] [--mono-tint=r,g,b] [--mount=drive:path,[drive:path ... ]] [-n] [--nobox[=True|=False]] [--nokill[=True|=False]] [--nosound[=True|=False]] [--output=output_file] [--pcjr-term=terminal_program] [--peek=[seg:addr:val[,seg:addr:val ... ]]] [--pen={left|middle|right|none}] [--preset=option_block] [--print-trigger={line|page|close}] [-q] [--quit[=True|=False]] [--reserved-memory=number_of_bytes] [--resume[=True|=False] [-r=program] [--run=program] [--scaling={smooth|crisp|native}] [-c=size] [--serial-buffer-size=size] [--shell={none|native|command]] [--state=state_file] [--strict-hidden-lines[=True|=False]] [--strict-newline[=True|=False]] [--strict-protect[=True|=False]] [--syntax={advanced|pcjr|tandy}] [-t] [--text-width={40|80}] [--utf8[=True|=False]] [-v] [--version] [--video=card] [--video-memory=size] [-w] [--wait[=True|=False]]
 +
Positional arguments
  
--aspect = x, y
+
program
 +
    If a .BAS program is specified as the first positional argument, it will be run. The --run, --load and --convert options override this behaviour.
 +
package
 +
    If a zipfile package or directory is specified as the first positional argument, any contained configuration file PCBASIC.INI will be loaded; usually, it will run a program file in the package. All other command-line options will override the package configuration file, note in particular the potential of the --run, --load and --convert options to alter the behaviour of the package.
 +
output
 +
    If a second positional argument is specified, it sets the output file for file format conversion. This argument is ignored unless the --convert option is given.
  
  Réglez le format d'affichage pour x: y.  A seulement un effet si elle est combinée avec --interface = graphique.
+
Options
  
 +
--allow-code-poke[=True|=False]
 +
    Allow programs to POKE into code memory.
 +
--altgr[=True|=False]
 +
    If True (default), interpret the right Alt key as Alt Gr instead of Alt. The left Alt key is always seen as Alt.
 +
--append[=True|=False]
 +
    If used with --output=output_file, the output_file is appended to rather than overwritten.
 +
--aspect=x,y
 +
    Set the display aspect ratio to x:y. Only has an effect if combined with --interface=graphical.
 
-b
 
-b
 +
    Use the command-line interface. This is identical to --interface=cli.
 +
--border=width
 +
    Set the width of the screen border as a percentage from 0—100. The percentage refers to the total width of the borders on both sides as a fraction of the usable screen width. Only has an effect if combined with --interface=graphical.
 +
--caption=title
 +
    Set the title bar caption of the PC-BASIC window. Default title is PC-BASIC.
 +
--capture-caps[=True|=False]
 +
    Let PC-BASIC handle the Caps Lock key. This may or may not interfere with the operating system's own handling of that key. Only has an effect if combined with --interface=graphical.
 +
--cas1=type:value
 +
    Attach a resource to the CAS1: cassette device. type:value can be
  
  Utilisez l'interface de ligne de commande. Ceci est identique à --interface = cli.  
+
    WAV:wav_file
 +
        Connect to the RIFF Wave file wav_file with data modulated in IBM PC cassette format.  
 +
    CAS:cas_file
 +
        Connect to the PCE/PC-BASIC CAS tape image cas_file.
 +
    BC:wav_file
 +
        Connect to the RIFF Wave file wav_file with data modulated in BASICODE format.  
  
= largeur --border
+
--cga-low[=True|=False]
 +
    Use low-intensity palettes in CGA modes. Only has an effect if combined with --video={cga|cga_old|ega|vga}.
 +
--codepage=codepage_id
 +
    Load the specified codepage. The codepage determines which characters are associated to a given character byte or, in the case of double-byte codepages, two character bytes. The available codepages are stored in the codepage/ directory; by default, these are:
  
  Régler la largeur de la bordure de l'écran en tant que pourcentage de 0-100.  Le pourcentage se réfère à la largeur totale des frontières des deux côtés comme une fraction de la largeur de l'écran utilisable.  A seulement un effet si elle est combinée avec --interface = graphique.
+
        437 720 737 775 806 850 851 852 853 855 856 857 858 860 861 862 863 864 865 866 868 869 874 932 934 936 938 949 950 1258 alternativnyj armscii8a big5-2003 big5-hkscs georgian-academy georgian-ps iransystem iscii-as iscii-be iscii-de iscii-gu iscii-ka iscii-ma iscii-or iscii-pa iscii-ta iscii-te kamenicky koi8-r koi8-ru koi8-u mazovia mik osnovnoj pascii ruscii russup3 russup4ac russup4na viscii
  
--caption = title
+
    . See the list of codepages in the User's Guide for details.
 +
--config=config_file
 +
    Read a configuration file. The system default configuration is always read first, but any preset group of options in a configuration file replaces the whole equivalent default preset group.
 +
--com1=type:value
 +
    Attach a resource to the COM1: serial device. type:value can be one of the following.
  
  Définir la légende de la barre de titre de la fenêtre de PC-BASIC. Titre par défaut est PC-BASIC.  
+
    PORT:device_name
 +
        Connect to a serial device. device_name can be a device name such as COM1 or /dev/ttyS0 or a number, where the first serial port is number 0.
 +
    SOCKET:host:socket
 +
        Connect to a TCP socket on a remote or local host.
 +
    STDIO[:[CRLF]]
 +
        Connect to standard I/O of the calling shell. If CRLF is specified, PC-BASIC replaces CR characters with LF on its output and LF with CR on its input. This is more intuitive on Unix shells. When using a Unix console, you should use stty -icanon to enable PC-BASIC to read input correctly.  
  
--capture-caps [= True | = False]
+
    If this option is not specified, the COM1: device is unavailable.
 +
--com2=type:value
 +
    Attach a resource to the COM2: serial device. See --com1.
 +
--convert={A|B|P}
 +
    Convert program to one of the following formats:
  
  Laissez PC-BASIC gérer la touche Caps Lock.  Cela peut ou peut ne pas interférer avec sa propre manipulation du système d'exploitation de cette clé.  A seulement un effet si elle est combinée avec --interface = graphique.
+
     A
 
+
         Plain text
--cas1 = Type: valeur
+
 
+
  Joindre une ressource au CAS1: dispositif de cassette.  Type: la valeur peut être
+
 
+
  WAV: wav_file
+
        Connectez-vous au fichier wav_file RIFF Wave avec des données modulées en format de cassette IBM PC.
+
     CAS: cas_file
+
        Connectez-vous au PCE / PC-BASIC bande CAS Image cas_file.
+
    BC: wav_file
+
        Connectez-vous au fichier wav_file RIFF Wave avec des données modulées en format BASICODE.
+
 
+
--cga-bas [= True | = False]
+
 
+
  Utilisez les palettes de faible intensité dans les modes CGA.  A seulement un effet si combiné avec --video = {cga | cga_old | ega | vga}.
+
 
+
--codepage = codepage_id
+
 
+
  Chargez le codepage spécifié.  Le codepage détermine quels caractères sont associés à un octet de caractère donné ou, dans le cas de codepages double octet, deux octets de caractères.  Les codepages disponibles sont stockés dans le codepage / répertoire;  par défaut, ce sont:
+
 
+
  720 737 775 437 806 850 851 852 853 855 856 857 858 860 861 862 863 864 865 866 868 869 874 932 934 936 938 949 950 1258 alternativnyj armscii8a Big5-2003 big5-HKSCS georgian-academy georgian-ps iransystem ISCII-as iscii- be-ka-gu ISCII-de-ma ISCII ISCII ou ISCII-pa-ta ISCII ISCII-te Kamenicky koi8-r koi8-ru koi8-u mazovia mik Osnovnoj pascii ruscii russup3 russup4ac russup4na VISCII
+
 
+
  .  Voir la liste des codepages dans le Guide de l'utilisateur pour plus de détails.
+
 
+
--config = config_file
+
 
+
  Lire un fichier de configuration.  La configuration par défaut du système est toujours lu en premier, mais un groupe prédéfini d'options dans un fichier de configuration remplace l'ensemble du groupe présélectionner équivalent par défaut.
+
 
+
--com1 = Type: valeur
+
 
+
  Joindre une ressource à la COM1: périphérique série.  Type: la valeur peut être l'une des suivantes.
+
 
+
  PORT: device_name
+
        Se connecter à un périphérique série.  device_name peut être un nom de périphérique tel que COM1 ou / dev / ttyS0 ou un numéro, où le premier port série est le numéro 0.
+
    SOCKET: host: socket
+
        Se connecter à un socket TCP sur un hôte distant ou local.
+
    STDIO [: [CRLF]]
+
        Connectez-vous à I / S standard de la coque appelant.  Si CRLF est spécifié, PC-BASIC remplace les caractères CR LF sur sa sortie et LF avec CR sur son entrée.  Ceci est plus intuitive sur shells Unix.  Lorsque vous utilisez une console Unix, vous devez utiliser stty -icanon pour permettre PC-BASIC de lire correctement entrée.
+
 
+
  Si cette option est spécifiée, le COM1: périphérique est indisponible.
+
 
+
--com2 = Type: valeur
+
 
+
  Joindre une ressource au COM2: périphérique série.  Voir --com1.
+
 
+
--convert = {A | B | P}
+
 
+
  Autre programme à l'un des formats suivants:
+
 
+
  UNE
+
         texte brut
+
 
     B
 
     B
 
         Tokenised
 
         Tokenised
 
     P
 
     P
         Protégé
+
         Protected
  
  Si la sortie est pas spécifiée, écrire sur la sortie standard. Si le programme n'a pas été spécifié, utilisez l'argument de --run ou --load. Si aucun de ceux sont donnés, lire à partir de l'entrée standard. Remplacements --resume, --run et --load.  
+
    If output is not specified, write to standard output. If program is not specified, use the argument of --run or --load. If none of those are given, read from standard input. Overrides --resume, --run and --load.  
 +
--copy-paste=copy_button,paste_button
 +
    Choose the mouse buttons for clipboard operations. copy_button and paste_button are chosen from left,middle,right,none.
 +
--ctrl-c-break[=True|=False]
 +
    If False, follow GW-BASIC behaviour where Ctrl+C breaks AUTO and INPUT but not program execution or LIST.
 +
    If True, treat Ctrl+C exactly like Ctrl+Break and Ctrl+Scroll Lock when --interface=graphical.
 +
    With --interface={text|cli}, Ctrl+C is always treated like Ctrl+Break.
 +
    Default is True.
 +
--current-device={CAS1|@|A|B ... |Z}
 +
    Set the current device to the indicated PC-BASIC drive letter or CAS1 for the cassette device. The device chosen should be mounted to an actual location using --mount (or --cas1 if the cassette device is chosen). Default is Z, with the Z: device mounted to your current drive.
 +
--dimensions=x,y
 +
    Set window dimensions to x by y pixels. This overrides --scaling=native and --aspect. Only has an effect if combined with --interface=graphical.
 +
-d --double[=True|=False]
 +
    Enable double-precision transcendental math functions. This is equivalent to the /d option in GW-BASIC.
 +
-e=command_line --exec=command_line
 +
    Execute BASIC command_line. The specified commands are executed before entering into direct mode or running a program.
 +
--font=font_name[,font_name ... ]
 +
    Use the specified fonts for the interface. The last fonts specified take precedence, previous ones are fallback. Default is unifont,univga,freedos (i.e. the freedos font has preference). The available fonts are stored in font/. By default, the following fonts are available:
  
--copy-coller = copy_button, paste_button
+
        unifont univga freedos cga mda vga olivetti tandy1 tandy2  
 
+
  Choisissez les boutons de la souris pour les opérations de presse-papiers.  copy_button et paste_button sont choisis de gauche, au milieu, à droite, aucun.
+
 
+
--ctrl-c-break [= True | = False]
+
 
+
  Si False, suivez le comportement GW-BASIC où Ctrl + C casse AUTO et INPUT, mais pas l'exécution ou LIST programme.
+
    Si vrai, traiter Ctrl + C exactement comme Ctrl + Pause et Ctrl + Scroll Lock quand --interface = graphique.
+
    Avec --interface = {text | cli}, Ctrl + C est toujours traité comme Ctrl + Break.
+
    Par défaut est True.
+
 
+
--current-device = {CAS1 | @ | A | B ... | Z}
+
 
+
  Réglez le dispositif actuel à la lettre de lecteur indiqué PC-BASIC ou CAS1 pour le dispositif de cassette.  Le dispositif choisi doit être monté à un emplacement réel en utilisant --mount (ou --cas1 si le dispositif de cassette est choisi).  Par défaut est Z, avec le Z: dispositif monté sur votre lecteur en cours.
+
 
+
--dimensions = x, y
+
 
+
  Définir les dimensions de la fenêtre de x par y pixels.  Ceci remplace --scaling = native et --aspect.  A seulement un effet si elle est combinée avec --interface = graphique.
+
 
+
-d --double [= True | = False]
+
 
+
  Activer les fonctions mathématiques transcendantes double précision.  Ceci est équivalent à l'option / j en GW-BASIC.
+
 
+
-e = command_line --exec = command_line
+
 
+
  Exécuter command_line BASIC.  Les commandes spécifiées sont exécutées avant d'entrer en mode direct ou en cours d'exécution d'un programme.
+
 
+
--font = font_name [, font_name ...]
+
 
+
  Utilisez les polices spécifiées pour l'interface.  Les dernières polices spécifiées ont priorité, les précédents sont repli.  Par défaut est unifont, univga, freedos (ie la police de freedos a la préférence).  Les polices disponibles sont stockées dans la police /.  Par défaut, les polices suivantes sont disponibles:
+
 
+
  unifont univga freedos cga mda vga olivetti tandy1 tandy2  
+
 
+
  .  Voir la liste des polices dans le Guide de l'utilisateur pour plus de détails.
+
 
+
--fullscreen [= True | = False]
+
 
+
  Mode plein écran.  A seulement un effet si elle est combinée avec --interface = graphique.
+
  
 +
    . See the list of fonts in the User's Guide for details.
 +
--fullscreen[=True|=False]
 +
    Fullscreen mode. Only has an effect if combined with --interface=graphical.
 
-h --help
 
-h --help
 +
    Show a usage message and exit.
 +
-i
 +
    This option is ignored. It is included only for compatibility with GW-BASIC /i.
 +
--input=input_file
 +
    Retrieve keyboard input from input_file, except if KYBD: is read explicitly. Input from KYBD: files is always read from the keyboard, following GW-BASIC behaviour.
 +
--interface={none|cli|text|graphical}
 +
    Choose the type of interface. The following interface types are available:
  
  Afficher un message d'aide et quitter.
+
    none
 
+
         Filter for use with pipes. Also -n.
-je
+
 
+
  Cette option est ignorée.  Il est inclus uniquement pour la compatibilité avec GW-BASIC / i.
+
 
+
--input = fichier_entrée
+
 
+
  Récupérer l'entrée du clavier de fichier_entrée, sauf si KYBD: est lu de manière explicite.  Entrée de Kybd: fichiers est toujours lue à partir du clavier, suivant le comportement GW-BASIC.
+
 
+
--interface = {none | cli | texte | graphique}
+
 
+
  Choisissez le type d'interface.  Les types d'interface suivants sont disponibles:
+
 
+
  aucun
+
         Filtre pour l'utilisation avec des tuyaux. Aussi -n.
+
 
     cli
 
     cli
         Interface de ligne de commande. -b également.
+
         Command-line interface. Also -b.
     texte
+
     text
         basée sur le texte de l'interface. En outre -t.
+
         Text-based interface. Also -t.
     graphique
+
     graphical
         Interface graphique.
+
         Graphical interface.
  
  La valeur par défaut est graphique.  
+
    The default is graphical.  
 +
-k=keystring --keys=keystring
 +
    Insert the keystring into the keyboard buffer.
 +
-l=program --load=program
 +
    Start in direct mode with the BASIC program loaded.
 +
--logfile=log_file
 +
    Write error and warning messages to log_file instead of stderr.
 +
--lpt1=type:value
 +
    Attach a resource to the LPT1: parallel device. type:value can be
  
-k = keystring --keys = keystring
+
    PRINTER:printer_name
 +
        Connect to a Windows, LPR or CUPS printer. If printer_name is not specified, the default printer is used.
 +
    FILE:file_name
 +
        Connect to any file or device such as /dev/stdout on Unix or LPT1 on Windows.
 +
    STDIO[:[CRLF]]
 +
        Connect to standard output of the calling shell. If CRLF is specified, PC-BASIC replaces CR characters with LF on its output. This is more intuitive on Unix shells.
 +
    PARPORT:port_number
 +
        Connect to a Centronics parallel port, where port_number is 0 for the first parallel port, etc. PARPORT only works with physical parallel ports; for example, a Windows printer or other device mapped with NET USE LPT1: can only be attached with FILE:LPT1
  
  Insérez le keystring dans la mémoire tampon du clavier.  
+
    If this option is not specified, LPT1: is connected to the default printer.  
 +
--lpt2=type:value
 +
    Attach a resource to the LPT2: parallel device. See --lpt1. If this option is not specified, LPT2: is unavailable.
 +
--lpt3=type:value
 +
    Attach a resource to the LPT3: parallel device. See --lpt1. If this option is not specified, LPT3: is unavailable.
 +
--map-drives[=True|=False]
 +
    On Windows, assign all Windows drive letters to PC-BASIC drive letters. On other systems, assign to:
  
-l = programme --load = programme
+
     Z:
 
+
         the current working directory
  Démarrez en mode direct avec le programme BASIC chargé.
+
 
+
--logfile = log_file
+
 
+
  Ecrire des messages d'erreur et d'avertissement à LOG_FILE au lieu de stderr.
+
 
+
--lpt1 = Type: valeur
+
 
+
  Joindre une ressource au LPT1: périphérique parallèle.  Type: la valeur peut être
+
 
+
  IMPRIMANTE: printer_name
+
        Se connecter à un Windows, LPR ou imprimante de CUPS.  Si printer_name est pas spécifié, l'imprimante par défaut est utilisée.
+
     DOSSIER: file_name
+
        Connectez-vous à un fichier ou un périphérique tel que / dev / stdout sur Unix ou sur Windows LPT1.
+
    STDIO [: [CRLF]]
+
        Connectez-vous à la sortie standard de la coque d'appel.  Si CRLF est spécifié, PC-BASIC remplace les caractères CR LF sur sa sortie.  Ceci est plus intuitive sur shells Unix.
+
    PARPORT: numéro_port
+
        Se connecter à un port parallèle Centronics, où numéro_port est 0 pour le premier port parallèle, etc. PARPORT fonctionne uniquement avec les ports parallèles physiques;  par exemple, une imprimante Windows ou un autre périphérique mappé avec NET USE LPT1: ne peuvent être attachés avec FILE: LPT1
+
 
+
  Si cette option est spécifiée, LPT1: est connecté à l'imprimante par défaut.
+
 
+
--lpt2 = Type: valeur
+
 
+
  Joindre une ressource au LPT2: périphérique parallèle.  Voir --lpt1.  Si cette option est spécifiée, LPT2: est indisponible.
+
 
+
--lpt3 = Type: valeur
+
 
+
  Joindre une ressource au LPT3: périphérique parallèle.  Voir --lpt1.  Si cette option est spécifiée, LPT3: est indisponible.
+
 
+
--map durs [= True | = False]
+
 
+
  Sous Windows, affectez toutes les lettres de lecteur Windows vers les lettres de lecteur PC-BASIC.  Sur les autres systèmes, affecter à:
+
 
+
  Z:
+
         le répertoire courant
+
 
     C:
 
     C:
         la racine du système de fichiers
+
         the filesystem root
 
     H:
 
     H:
         le répertoire personnel de l'utilisateur.
+
         the user's home directory.
 
+
-f = NUMBER_OF_FILES --max fichiers = NUMBER_OF_FILES
+
 
+
  Définir le nombre maximal de fichiers ouverts à NUMBER_OF_FILES.  Ceci est équivalent à l'option / f GW-BASIC.  Par défaut est 3.
+
 
+
-m = max_memory [, basic_memory_blocks] --max mémoire = max_memory [, basic_memory_blocks]
+
 
+
  Définir la taille maximale du segment de mémoire de données à max_memory et la taille maximale de la mémoire de données disponibles pour BASIC basic_memory_blocks * 16.  PC-Basic, le minimum de ces valeurs est simplement la taille de la mémoire de données;  les deux valeurs sont autorisées pour la compatibilité avec l'option / m de GW-BASIC.
+
 
+
-s = record_length --max-reclen = record_length
+
 
+
  Régler la longueur maximale d'enregistrement des fichiers RANDOM à record_length.  Par défaut est 128, le maximum est 32767. Ceci est équivalent à l'option / GW-BASIC.  
+
 
+
--monitor = {rgb | composite | mono}
+
  
  Définit le type de moniteur à imiter. types disponibles sont:
+
-f=number_of_files --max-files=number_of_files
 +
    Set maximum number of open files to number_of_files. This is equivalent to the /f option in GW-BASIC. Default is 3.
 +
-m=max_memory[,basic_memory_blocks] --max-memory=max_memory[,basic_memory_blocks]
 +
    Set the maximum size of the data memory segment to max_memory and the maximum size of the data memory available to BASIC to basic_memory_blocks*16. In PC-BASIC, the minimum of these values is simply the data memory size; the two values are allowed for compatibility with the /m option in GW-BASIC.
 +
-s=record_length --max-reclen=record_length
 +
    Set maximum record length for RANDOM files to record_length. Default is 128, maximum is 32767. This is equivalent to the /s option in GW-BASIC.
 +
--monitor={rgb|composite|mono}
 +
    Sets the monitor type to emulate. Available types are:
  
  rgb
+
    rgb
         moniteur couleur RGB (par défaut).
+
         RGB colour monitor (default).
 
     composite
 
     composite
         Composite moniteur couleur.  
+
         Composite colour monitor.  
 
     mono
 
     mono
         Monochrome moniteur.
+
         Monochrome monitor.
 
+
  Sur l'écran 2 avec --video = {PCjr | tandy | cga | cga_old}, --monitor = composite permet d'artefacts (brut) de couleur.
+
 
+
--mono-teinte = r, g, b
+
 
+
  Spécifiez la teinte monochrome que les valeurs de rouge-vert-bleu r, g, b, chacun dans l'intervalle 0-255.  A seulement un effet si elle est combinée avec --monitor = mono.
+
 
+
--mount = lecteur: chemin, [lecteur: chemin ...]
+
 
+
  Attribuez le chemin chemin pour conduire la lettre de lecteur :.  Le chemin peut être absolu ou relatif.  Par défaut, Z: est affecté au répertoire de travail courant et pas d'autres lettres de lecteur sont affectées.  
+
  
 +
    On SCREEN 2 with --video={pcjr|tandy|cga|cga_old}, --monitor=composite enables (crude) colour artifacts.
 +
--mono-tint=r,g,b
 +
    Specify the monochrome tint as the red-green-blue values r,g,b, each in the range 0—255. Only has an effect if combined with --monitor=mono.
 +
--mount=drive:path,[drive:path ... ]
 +
    Assign the path path to drive letter drive:. The path can be absolute or relative. By default, Z: is assigned to the current working directory and no other drive letters are assigned.
 
-n
 
-n
 +
    Run PC-BASIC as a command-line filter. Same as --interface=none.
 +
--nobox[=True|=False]
 +
    Disable box-drawing recognition for double-byte character set code pages. By default, sequences of box-drawing characters are recognised by an algorithm that isn't as smart as it thinks it is, and displayed as box drawing rather than as DBCS characters. If --nobox is set, they will be displayed as DBCS.
 +
--nokill[=True|=False]
 +
    Allow BASIC to capture Alt+F4. Graphical interface only. By default, Alt+F4 is captured by most operating systems as a quit signal, and will terminate PC-BASIC. Set --nokill to allow BASIC to capture Alt+F4 instead. This is useful if your program uses this key combination.
 +
--nosound[=True|=False]
 +
    Disable sound output.
 +
--output=output_file
 +
    Send screen output to output_file, except if SCRN: is written to explicitly. Output to SCRN: files will always be shown on the screen, as in GW-BASIC.
 +
--pcjr-term=terminal_program
 +
    Set the terminal program run by the PCjr TERM command to terminal_program. This only has an effect with --syntax={pcjr|tandy}.
 +
--peek=[seg:addr:val[,seg:addr:val ... ]]
 +
    Define PEEK preset values. If defined, DEF SEG:? PEEK(addr) will return val.
 +
--pen={left|middle|right|none}
 +
    Set the mouse button for light pen emulation. Default is left. If set to none, light pen emulation is switched off. On Android, left means touch input.
 +
--preset=option_block
 +
    Load machine preset options. A preset option corresponds to a section defined in a config file by a name between square brackets, like
 +
    [this]
 +
    --preset=this will load all settings defined in that section. Available presets depend on your configuration file. See the list of default presets in the User's Guide.
 +
--print-trigger={line|page|close}
 +
    Set the trigger to flush the print buffer to the printer.
  
  PC-BASIC comme un filtre de ligne de commande Exécuter.  Identique à --interface = none.
+
     line
 
+
         The printer is activated after every line break.
--nobox [= True | = False]
+
 
+
  la reconnaissance de la boîte-dessin Disable pour les pages de codes du jeu de caractères à deux octets.  Par défaut, les séquences de caractères de boîte de dessin sont reconnus par un algorithme qui est pas aussi intelligent qu'il pense qu'elle est, et affichées sous forme de boîte de dessin plutôt que comme des caractères DBCS.  Si --nobox est réglé, ils seront affichés comme DBCS.
+
 
+
--nokill [= True | = False]
+
 
+
  Laisser BASIC pour capturer Alt + F4.  Interface graphique uniquement.  Par défaut, Alt + F4 est capturé par la plupart des systèmes d'exploitation comme un signal quitter, et mettra fin à PC-BASIC.  Set --nokill pour permettre BASIC pour capturer Alt + F4 à la place.  Ceci est utile si votre programme utilise cette combinaison de touches.
+
 
+
--nosound [= True | = False]
+
 
+
  Désactiver la sortie audio.
+
 
+
--output = output_file
+
 
+
  Envoyer la sortie de l'écran à output_file, sauf si SCRN: est écrit explicitement.  Sortie à SCRN: les fichiers seront toujours affichés sur l'écran, comme dans GW-BASIC.
+
 
+
--pcjr terme = terminal_program
+
 
+
  Réglez le programme de terminal géré par la commande TERM PCjr à terminal_program.  Cela n'a d'effet avec --syntax = {PCjr | tandy}.
+
 
+
--peek = [seg: addr: val [, seg: addr: val ...]]
+
 
+
  Définir PEEK valeurs prédéfinies.  Si elle est définie, DEF SEG :?  PEEK (adr) retournera val.
+
 
+
--pen = {left | milieu | right | none}
+
 
+
  Réglez le bouton de la souris pour l'émulation de stylo optique.  Par défaut est à gauche.  Si la valeur none, l'émulation de stylo lumière est éteinte.  Sur Android, gauche signifie la saisie tactile.
+
 
+
--preset = option_block
+
 
+
  machine à charge des options prédéfinies.  Une option prédéfinie correspond à une section définie dans un fichier de configuration par un nom entre crochets, comme
+
     [ce]
+
    --preset = ceci va charger tous les paramètres définis dans cette section.  presets disponibles dépendent de votre fichier de configuration.  Voir la liste des paramètres prédéfinis par défaut dans le Guide de l'utilisateur.
+
 
+
--print-trigger = {line | page | fermer}
+
 
+
  Réglez le déclencheur pour vider le tampon d'impression à l'imprimante.
+
 
+
  ligne
+
         L'imprimante est activé après chaque saut de ligne.
+
 
     page
 
     page
         L'imprimante est activé après chaque saut de page.
+
         The printer is activated after every page break.
     Fermer
+
     close
         L'imprimante est activée uniquement lorsque les sorties PC-BASIC.
+
         The printer is activated only when PC-BASIC exits.
  
  Default est proche.  
+
    Default is close.
 +
-q --quit[=True|=False]
 +
    Quit interpreter when execution stops. If combined with --run, PC-BASIC quits when the program ends. If set in direct mode, PC-BASIC quits after the first command is executed.
 +
--reserved-memory=number_of_bytes
 +
    Reserve number_of_bytes of memory at the bottom of the data segment. For compatibility with GW-BASIC. Default is 3429 bytes. Lowering this value makes more string and variable space available for use by programs.
 +
--resume[=True|=False
 +
    Resume from saved state. Overrides --run and --load.
 +
-r=program --run=program
 +
    Run the specified program. Overrides --load.
 +
--scaling={smooth|crisp|native}
 +
    Choose scaling method.
  
-q --quit [= True | = False]
+
    smooth
 +
        The display is smoothly scaled to the largest size that allows for the correct aspect ratio.
 +
    crisp
 +
        The display is scaled to the same size as with smooth, but without smoothing.
 +
    native
 +
        Scaling and aspect ratio are optimised for the display's native pixel size, without smoothing. --scaling=native overrides --aspect.
  
  Quittez l'interprète lorsque l'exécution arrête. Si combiné avec --run, PC-BASIC se ferme lorsque le programme se termine. Si elle est définie en mode direct, PC-BASIC quitte après la première commande est exécutée.  
+
    Default is smooth. Only has an effect if combined with --interface=graphical.
 +
-c=size --serial-buffer-size=size
 +
    Set serial input buffer size. Default is 256. If set to 0, serial communications are disabled.
 +
--shell={none|native|command]
 +
    Set the command interpreter run on the SHELL command to the operating system's native shell or a custom shell run by command. Default is none, which disables the SHELL command.
 +
--state=state_file
 +
    Set the save-state file to state_file. Default is PCBASIC.SAV in the Application Data directory.
 +
--strict-hidden-lines[=True|=False]
 +
    Disable listing and saving to plain text of lines beyond 65530, as in GW-BASIC. Use with care as this allows execution of hidden lines of code.
 +
--strict-newline[=True|=False]
 +
    Parse CR and LF in files strictly like GW-BASIC. On Unix, you will need to convert your files to DOS text first if using this option.
 +
--strict-protect[=True|=False]
 +
    Disable listing and saving to plain text of protected files, as in GW-BASIC. Use with care as this allows execution of hidden lines of code.
 +
--syntax={advanced|pcjr|tandy}
 +
    Choose BASIC dialect. Available dialects are:
  
--reserved-mémoire = nombre_octets
+
     advanced
 
+
         Microsoft GW-BASIC and IBM BASICA
  nombre_octets réserve de la mémoire au bas du segment de données.  Pour la compatibilité avec GW-BASIC.  Par défaut est 3429 octets.  L'abaissement de cette valeur est plus chaîne et de l'espace variable disponible pour une utilisation par des programmes.
+
     pcjr
 
+
         IBM PCjr Cartridge BASIC
--resume [= True | = False
+
 
+
  Resume de l'état enregistré.  Remplacements --run et --load.
+
 
+
-r = programme --run = programme
+
 
+
  Exécutez le programme spécifié.  Remplacements --load.
+
 
+
--scaling = {lisse | croquante | natif}
+
 
+
  Choisir la méthode mise à l'échelle.
+
 
+
  lisse
+
        L'affichage est facilement mise à l'échelle la plus grande taille qui permet le rapport d'aspect correct.
+
     croustillant
+
        L'affichage est mis à l'échelle à la même taille que des lisses, mais sans lissage.
+
    originaire de
+
        Mise à l'échelle et le ratio d'aspect sont optimisés pour la taille de pixel native de l'écran, sans lissage.  --scaling = remplacements indigènes --aspect.
+
 
+
  Par défaut est lisse.  A seulement un effet si elle est combinée avec --interface = graphique.
+
 
+
-c = taille --serial-buffer-size =
+
 
+
  Régler la taille du tampon série d'entrée.  Par défaut est 256. Si la valeur 0, les communications série sont désactivés.
+
 
+
--shell = {none | native | commande]
+
 
+
  Réglez l'interpréteur de commandes exécuté sur la commande SHELL au shell natif du système d'exploitation ou d'un shell personnalisé géré par commande.  Par défaut est none, qui désactive la commande SHELL.
+
 
+
--state = state_file
+
 
+
  Définir le fichier-état enregistrer sur state_file.  Par défaut est PCBASIC.SAV dans le répertoire Application Data.
+
 
+
--strict-lignes cachées [= True | = False]
+
 
+
  Désactiver l'inscription et l'enregistrement dans le texte brut de lignes au-delà de 65530, comme dans GW-BASIC.  Utilisez car cela permet l'exécution des lignes cachées de code avec soin.
+
 
+
--strict-newline [= True | = False]
+
 
+
  Parse CR et LF dans les fichiers strictement comme GW-BASIC.  Sur Unix, vous aurez besoin de convertir vos fichiers texte DOS d'abord si vous utilisez cette option.
+
 
+
--strict-protect [= True | = False]
+
 
+
  Désactiver l'inscription et l'enregistrement dans le texte brut des fichiers protégés, comme dans GW-BASIC.  Utilisez car cela permet l'exécution des lignes cachées de code avec soin.
+
 
+
--syntax = {avancée | PCjr | tandy}
+
 
+
  Choisissez dialecte BASIC.  dialectes disponibles sont:
+
 
+
  Avancée
+
         Microsoft GW-BASIC et IBM BASICA
+
     PCjr
+
         IBM PCjr cartouche BASIC
+
 
     tandy
 
     tandy
 
         Tandy 1000 GW-BASIC.
 
         Tandy 1000 GW-BASIC.
  
  Par défaut est avancé.  
+
    Default is advanced.  
 
+
 
-t
 
-t
 
+
    Use text-based interface. Same as --interface=text.  
  Utilisez l'interface à base de texte. Identique à --interface = text.  
+
--text-width={40|80}
 
+
    Set the number of columns in text mode at startup. Default is 80.  
--text-width = {40 | 80}
+
--utf8[=True|=False]
 
+
    Use UTF-8 for plain-text programs. If True, programs stored as plain text will be converted from UTF-8 on LOAD and to UTF-8 on SAVE. If False, the PC-BASIC codepage will be used.  
  Définissez le nombre de colonnes en mode texte au démarrage. Par défaut est 80.  
+
 
+
--utf8 [= True | = False]
+
 
+
  Utilisez UTF-8 pour les programmes en texte brut. Si vrai, les programmes stockés sous forme de texte seront convertis du format UTF-8 sur LOAD et UTF-8 sur SAVE. Si False, le codepage PC-BASIC sera utilisé.  
+
 
+
 
-v --version
 
-v --version
 +
    Print PC-BASIC version string and exit.
 +
--video=card
 +
    Set the video card to emulate. Available video cards:
  
  Imprimer PC-BASIC chaîne de version et de sortie.
+
    vga
 
+
--video = carte
+
 
+
  Réglez la carte vidéo pour émuler.  cartes vidéo disponibles:
+
 
+
  vga
+
 
         Video Graphics Array
 
         Video Graphics Array
 
     ega
 
     ega
 
         Enhanced Graphics Adapter
 
         Enhanced Graphics Adapter
 
     cga
 
     cga
         Couleur / Graphics Adapter
+
         Color/Graphics Adapter
 
     cga_old
 
     cga_old
         Couleur / Graphics Adapter (ancienne version, affecte composite)
+
         Color/Graphics Adapter (old version; affects composite)
 
     mda
 
     mda
         Adapter Monochrome Display
+
         Monochrome Display Adapter
     Hercule
+
     hercules
 
         Hercules Graphics Adapter
 
         Hercules Graphics Adapter
     PCjr
+
     pcjr
         graphiques IBM PCjr
+
         IBM PCjr graphics
 
     tandy
 
     tandy
         Tandy 1000 graphiques
+
         Tandy 1000 graphics
 
     olivetti
 
     olivetti
         graphiques Olivetti M24
+
         Olivetti M24 graphics
  
  Par défaut est vga.  
+
    Default is vga.
 +
--video-memory=size
 +
    Set the amount of emulated video memory available. This affects the number of video pages that can be used. On PCjr and Tandy, this can be changed at runtime through the CLEAR statement; at least 32768 needs to be available to enter SCREEN 5 and SCREEN 6. Default is 16384 or PCjr and Tandy and 262144 on other machine presets.
 +
-w --wait[=True|=False]
 +
    If True, PC-BASIC waits for a keystroke before closing the window on exit. Only works for --interface=graphical or --interface=text. Default is False.  
  
--video mémoire = taille
+
GW-BASIC options
  
  Réglez la quantité de mémoire vidéo émulé disponibles. Ceci affecte le nombre de pages vidéo qui peuvent être utilisés.  Sur PCjr et Tandy, cela peut être modifié lors de l'exécution par la CLEAR;  au moins 32768 doit être disponible pour accéder à l'écran 5 et 6. ECRAN par défaut est 16384 ou PCjr et Tandy et 262144 sur d'autres préréglages de la machine.  
+
GW-BASIC recognised a number of DOS-style command-line options on the command-line when invoking it from DOS with a command like BASIC, BASICA, or GWBASIC. These are matched by PC-BASIC with only minor modifications, usually just replacing the forward slash / with a dash -. The GW-BASIC syntax is shown here for reference only; use the Unix-style syntax with PC-BASIC.
  
-w --wait [= True | = False]
+
/d becomes -d
 +
    Enable double-precision floating-point math functions.
 +
/f:n becomes -f=n
 +
    Set the maximum number of open files.
 +
/s:n becomes -s=n
 +
    Set the maximum record length for RANDOM files.
 +
/c:n becomes -c=n
 +
    Set the size of the receive buffer for COM devices.
 +
/i:n becomes -i=n
 +
    No effect.
 +
/m:n,m becomes -m=n,m
 +
    Set the highest memory location to n and maximum BASIC memory size to m*16 bytes.
 +
>filename becomes --output=filename
 +
    Write screen output to filename.
 +
>>filename becomes --output=filename --append
 +
    Append screen output to filename.
 +
<filename becomes --input=filename
 +
    Read keyboard input from filename.
  
  Si, attend PC-BASIC vrai pour une touche avant de fermer la fenêtre à la sortie.  Ne fonctionne que pour --interface = graphique ou --interface = text.  Par défaut est False.
+
Examples
 
+
Options GW-BASIC
+
 
+
GW-BASIC a reconnu un certain nombre d'options de ligne de commande DOS de style sur la ligne de commande lors de l'appel à partir de DOS avec une commande comme BASIC, BASICA ou GWBASIC. Ceux-ci sont compensées par PC-BASIC avec seulement des modifications mineures, habituellement juste remplacer la barre oblique / avec un tiret -. La syntaxe GW-BASIC est montré ici pour référence seulement; utilisez la syntaxe Unix-style avec PC-BASIC.
+
 
+
/ J devient -d
+
 
+
  Activer les fonctions mathématiques à virgule flottante double précision.
+
 
+
/ F: n devient -f = n
+
 
+
  Définissez le nombre maximal de fichiers ouverts.
+
 
+
/ S: n devient -s = n
+
 
+
  Réglez la longueur maximale d'enregistrement des fichiers RANDOM.
+
 
+
/ C: n devient -c = n
+
 
+
  Définissez la taille du tampon de réception pour les périphériques COM.
+
 
+
/ I: n devient -i = n
+
 
+
  Aucun effet.
+
 
+
/ M: n, m devient -m = n, m
+
 
+
  Définissez l'emplacement le plus de mémoire à n et la taille maximale de mémoire BASIC m * 16 octets.
+
 
+
> Nom de fichier devient --output = filename
+
 
+
  Ecrire la sortie de l'écran pour le nom de fichier.
+
 
+
>> Filename devient --output = filename --append
+
 
+
  Ajouter la sortie de l'écran pour le nom de fichier.
+
 
+
<Nom de fichier devient --input = filename
+
 
+
  Lire la saisie au clavier du nom de fichier.
+
 
+
Exemples
+
  
 
pcbasic
 
pcbasic
 
+
    Start PC-BASIC in direct mode, emulating GW-BASIC/BASICA with VGA graphics.  
  Démarrez PC-BASIC en mode direct, émulant GW-BASIC / BASICA avec graphiques VGA.  
+
pcbasic --codepage=950
 
+
    Start PC-BASIC using the Big-5 codepage.  
pcbasic --codepage = 950
+
 
+
  Démarrez PC-BASIC en utilisant le Big-5 codepage.  
+
 
+
 
pcbasic Foobar.baz
 
pcbasic Foobar.baz
 
+
    Start PC-BASIC with package Foobar. Load the settings from the package; usually this will run a main program contained in the package.  
  Démarrez PC-BASIC avec le paquet Foobar. Chargez les paramètres de l'emballage; habituellement ce sera exécuter un programme principal contenu dans le paquet.  
+
pcbasic Foobar.baz --convert=A --utf8
 
+
    List the main program of package Foobar to standard output as UTF-8.  
pcbasic Foobar.baz --convert = A --utf8
+
pcbasic MYPROG.BAS --mount=A:./files,B:./morefiles
 
+
    Mount the current directory's subdirectory files as drive A: and subdirectory morefiles as drive B:, then run MYPROG.BAS.  
  Inscrivez le programme principal du paquet Foobar sur la sortie standard au format UTF-8.  
+
pcbasic --mount=A:C:\fakeflop
 
+
    Run PC-BASIC with Windows directory C:\fakeflop mounted as A: drive.  
pcbasic MYPROG.BAS --mount = A: ./ fichiers, B: ./ MoreFiles
+
pcbasic Z:\INFO.BAS --preset=mda --mono-tint=255,128,0
 
+
    Run INFO.BAS in the current directory on an emulated MDA with amber tinted monitor.  
  Montez les fichiers sous-répertoire du répertoire courant que le lecteur A: et MoreFiles sous-répertoire que le lecteur B :, puis exécutez MYPROG.BAS.  
+
pcbasic /home/me/retro/COMP.BAS --preset=cga --monitor=composite
 
+
    Run COMP.BAS stored at /home/me/retro on an emulated CGA machine with a composite monitor.  
pcbasic --mount = A: C: \ fakeflop
+
pcbasic PCJRGAME.BAS --preset=pcjr -k='start\r'
 
+
    Run PCJRGAME.BAS on an emulated PCjr and feed in the keystrokes startEnter.  
  Exécutez PC-BASIC avec Windows répertoire C: \ fakeflop monté en tant que lecteur A:.  
+
pcbasic BANNER.BAS --lpt2=PRINTER:
 
+
    Run BANNER.BAS in default mode with the default printer attached to LPT2:.  
Z pcbasic: \ INFO.BAS --preset = mda --mono-teinte = 255,128,0
+
 
+
  Exécutez INFO.BAS dans le répertoire courant sur un MDA émulé avec de l'ambre teinté moniteur.  
+
 
+
pcbasic /home/me/retro/COMP.BAS --preset = cga --monitor = composite
+
 
+
  Run COMP.BAS stocké dans / home / moi / rétro sur une machine CGA émulé avec un moniteur composite.  
+
 
+
pcbasic PCJRGAME.BAS --preset = PCjr -k = 'start \ r'
+
 
+
  Run PCJRGAME.BAS sur un PCjr émulé et se nourrissent dans les frappes startEnter.  
+
 
+
pcbasic BANNER.BAS --lpt2 = IMPRIMANTE:
+
 
+
  Exécutez BANNER.BAS en mode par défaut avec l'imprimante par défaut attaché à LPT2 :.  
+
 
+
 
pcbasic --resume
 
pcbasic --resume
 +
    Resume the most recently closed PC-BASIC session.
 +
pcbasic -qbe="?1+1"
 +
    Execute the BASIC command PRINT 1+1 in the command-line interface and return to the calling shell.
  
  Resume session, le PC-BASIC plus récemment fermé.
+
Language guide
 
+
pcbasic -qbe = "1 + 1"
+
 
+
  Exécutez la commande BASIC PRINT 1 + 1 dans l'interface de ligne de commande et retourner au shell appelant.
+
 
+
guide de langue
+
 
+
Cette documentation décrit la langue de PC-BASIC, qui vise à imiter fidèlement GW-BASIC 3.23, IBM Advanced BASIC, IBM cartouche BASIC et Tandy 1000 GW-BASIC.
+
 
+
Le guide linguistique BASIC couvre le sujet de la langue par thème, le regroupement thématique des éléments de langage utilisés à des fins connexes. S'il vous plaît se référer à la référence du langage BASIC pour une description formelle des éléments de Langage et leur syntaxe. Travailler avec des programmes Déclaration Description AUTO Entrer la ligne numérotation automatique CHAÎNE mode Charger un nouveau programme et l'exécuter, en préservant les variables communes Set COMMON variables communes SUPPRIMER Supprimer les lignes du programme EDIT Imprimer une ligne de programme à l'écran pour programme lignes LISTE édition d'impression à l'écran programme lignes LLIST d'impression à la charge de l'imprimante Lire un nouveau programme à partir du fichier MERGE Superposez un fichier de programme sur le programme actuel NEW Effacer le programme actuel de la mémoire RENUM Remplacer les numéros de ligne du programme RUN Démarrez le programme en cours SAUVEGARDER magasin le programme actuel de déposer TRON Activer numéro de la ligne de traçage TROFF Désactiver le numéro de ligne de traçage SYSTEM Quitter le flux de contrôle de l'interpréteur BASIC
+
 
+
Un programme est normalement exécuté à partir de son numéro de ligne le plus bas (ou le numéro de la ligne appelée par RUN). Déclarations sur une ligne sont exécutées de gauche à droite. Lorsque toutes les déclarations sur une ligne sont terminées, l'exécution se déplace vers le numéro de la ligne la plus basse suivante, et ainsi de suite jusqu'à aucun numéro de ligne sont laissés. états des flux de contrôle peuvent être utilisés pour modifier ce flux normal de executon.
+
 
+
Les instructions END et STOP servent dans un programme pour arrêter son exécution et revenir en mode direct. Lorsque STOP est utilisé, un message de rupture est imprimé. De mode direct, CONT peut être exécuté pour reprendre le programme là où il a été arrêté. Bien FIN semble destiné à mettre fin au programme, il ne fait pas obstacle à l'utilisateur de reprendre avec CONT.
+
 
+
sauts inconditionnelles peuvent être faites avec GOTO. Le déroulement du programme se poursuivra au numéro de ligne indiqué dans l'instruction GOTO. En raison de l'absence de boucle sophistiquée, la ramification et des constructions de rupture de la langue de PC-BASIC, des sauts inconditionnels sont essentiels et utilisés fréquemment.
+
 
+
L'instruction GOSUB saute à un sous-programme. Semblable à GOTO, cela est un saut inconditionnel; Cependant, l'emplacement de l'appel est enregistré et le programme continuera son débit là après le sous-programme se termine par une instruction RETURN. Les sous-programmes sont un peu comme des procédures en ce sens qu'ils permettent morceaux de code qui effectuent une tâche donnée à être séparée du corps principal du programme, mais ils ne sont pas avoir une portée distincte puisque toutes les variables de PC-BASIC sont globaux. Ils ne possèdent pas les valeurs de retour. Il est même possible de sauter d'un sous-programme partout dans le programme en fournissant l'instruction RETURN avec un numéro de ligne.
+
 
+
L'instruction ON fournit une ramification construction alternative. Une valeur entière est utilisée pour sélectionner l'une d'une liste de numéros de lignes, et l'exécution se poursuit à partir de là. Il peut être utilisé avec un saut GOTO comme wellas avec un appel de routine GOSUB.
+
 
+
ON, GOTO et GOSUB peuvent également être utilisées en mode direct pour démarrer un programme ou sous-programme sans réinitialiser les variables.
+
 
+
L'IF-THEN-ELSE construction teste une condition et exécuter différentes branches de code sur la base de sa valeur de vérité. Cela ne veut pas un produit d'assemblage de blocs; tout le code dans les branches then et else doit tenir sur une seule ligne. Pour cette raison, la ramification est souvent utilisé en combinaison avec des sauts GOTO. Par exemple: 10 INPUT "Quel âge avez-vous"; AGE% 20% SI AGE> 30 THEN 100 30 SI AGE% <30 THEN 200 ELSE PRINT "Vous êtes âgé de 30 ans." 40 END 100 PRINT "Vous êtes plus de 30." 110 END 200 PRINT "Vous n'êtes pas encore 30." 210 FIN
+
 
+
La construction de boucle WHILE-WEND répète le bloc de code entre WHILE et WEND tant qu'une condition donnée reste vrai.
+
 
+
La construction FOR-NEXT répète un bloc de code alors qu'un compteur reste dans une plage donnée. Le compteur est réglé sur une valeur de départ lors de la première passe de l'état FOR et incrémentée de la valeur incrémentielle à chaque passage de NEXT. Par exemple: 10 POUR I = 1 A 10 20 PRINT STRING $ (I, "*"); EN UTILISANT " [##]"; I 30 NEXT I
+
 
+
constructions Looping peuvent être imbriquées.
+
  
Flux de contrôle est également affectée par l'événement et la récupération d'erreur. Déclaration description Continuer CONT programme interrompu ELSE Ignorez le reste de la ligne (ELSE autonome) d'exécution FIN Arrêt du programme pour le démarrage d'une boucle for GOSUB Appeler un sous-programme GOTO Sauter vers un autre emplacement dans le programme IF Branch sur une condition SUIVANTE Iterate un pour -loop ON Calculé saut ou appel de routine RETURN Retour de sous-programme ARRET Interrompre l'exécution du programme WEND Itérer un certain temps en boucle WHILE Entrez un Arrays en boucle et des variables Déclaration description de DEFDBL Spécifiez la variable plage de nom pour double précision flotteurs DEFINT Spécifiez la variable intervalle de nom pour les entiers DefSng Spécifiez la variable plage de nom pour simple précision flotteurs DEFSTR Spécifiez la variable plage de noms pour les chaînes DIM Allouer un tableau ERASE Désallouer un tableau louer Attribuer une valeur à une OPTION base variable Définir l'index de départ des tableaux SWAP Swap deux variables conversion de type Fonction description ASC Caractère à valeur ordinale valeur CHR $ ordinale à caractère HEX $ Entier à la représentation de chaîne hexadécimale octobre $ Entier à la représentation de chaîne octal valeur STR $ numérique à la représentation de chaîne décimale représentation VAL chaîne à valeur numérique valeur CDBL numérique à double précision float CINT valeur numérique en entier valeur CSNG numérique à simple précision représentation float CVD byte à double précision représentation float CVI byte vers entier CVS représentation byte à simple précision float MKD $ Double précision float à la représentation d'octets MKI $ Entier à octet MKS de représentation $ float simple précision à la représentation d'octets opérations de chaîne Déclaration description de LSET Copie une valeur justifiée à gauche dans une chaîne tampon MID $ Copie une valeur dans le cadre d'un tampon de chaîne RSET Copier une valeur justifiée à droite dans une mémoire tampon de chaîne Fonction description INSTR Trouver gAUCHE Left $ len cordes longueur MID $ Substring dROIT $ Right SPACE substring $ Répéter espaces STRING $ caractères Répéter texte et la Déclaration d'écran description de CLS Effacer les couleurs et la palette des valeurs écran jeu de couleurs LOCATE Réglez la position et la forme du curseur pALETTE écran texte Attribuer une couleur à un attribut PALETTE UTILISATION Attribuer une gamme de couleurs aux attributs PCOPY Copier un écran Imprimer IMPRIMER expressions à la vue de l'écran PRINT Définir le texte zone de défilement WIDTH Définit le nombre de colonnes de texte sur la fonction d'écran description de CSRLIN ligne actuelle du curseur POS colonne actuelle du curseur ECRAN Caractère ou attribut à l'emplacement donné l'imprimante Déclaration description de LCOPY ne rien faire LPRINT impression expressions à la fonction d'imprimante description LPOS position de la colonne de tête d'impression saisie clavier Déclaration description entrée Récupérer l'entrée d'utilisateur sur la console lINE INPUT Récupérez une ligne d'entrée de l'utilisateur sur la fonction de la console Description de INKEY $ non bloquante lu depuis l'entrée du clavier $ Blocage lecture à partir du clavier à touches de fonction macros Déclaration Description de KEY Gérer la visibilité de la macro liste KEY fonction-clé définir une fonction-clé calculs macro et mathématiques fonctions mathématiques fonction Description ABS valeur absolue ATN COS arctangente cosinus EXP exponentielle FIX troncature INT Floor LOG Natural logarithme SIN Sinus SGN Inscription racine SQR place TAN Tangente aléatoire des nombres Déclaration description de RANDOMIZE initialiser le générateur de nombres aléatoires Fonction description RND pseudo-aléatoires numériques Périphériques et fichiers du fichier des opérations Déclaration description fermer Fermer un champ de fichier Attribuer une chaîne un tampon d'enregistrement à accès aléatoire GET Lire un enregistrement à partir d'un fichier d'entrée à accès aléatoire Lire une variable à partir d'un fichier d'entrée lINE Lire une ligne d'un verrou de fichier verrouille un fichier ou une plage d'enregistrements contre toute autre utilisation OUVERT Ouvrir un fichier de données PUT Write la mémoire tampon à accès aléatoire enregistrement sur le disque RÉINITIALISER Fermer tous les fichiers UNLOCK Déverrouille un fichier ou une plage d'enregistrements contre d'autres WIDTH utilisation Définir le nombre de colonnes de texte dans un fichier WRITE écrire des expressions dans un fichier Fonction description EOF Fin du fichier LOC Localisation dans le fichier LOF Longueur du fichier $ INPUT Lire une chaîne à partir d'un fichier Devices
+
This documentation describes the PC-BASIC language, which aims to faithfully emulate GW-BASIC 3.23, IBM Advanced BASIC, IBM Cartridge BASIC and Tandy 1000 GW-BASIC.
  
PC-BASIC reconnaît les périphériques DOS de style suivantes, qui peuvent être utilisés en ouvrant un fichier sur eux. Certains appareils permettent de spécifier d'autres paramètres de fichiers, tels que les spécifications de prise de contact pour les appareils de série, un nom de fichier pour les appareils à cassettes et un chemin d'accès pour les périphériques de disque. Lors de l'utilisation sur les périphériques de disque, en spécifiant un chemin d'accès est obligatoire.
+
The BASIC Language Guide covers the language topic by topic, thematically grouping language elements used for a related purpose. Please refer to the BASIC Language Reference for a formal description of the langage elements and their syntax.
 +
Working with programs
 +
Statement Description
 +
AUTO Enter automatic line numbering mode
 +
CHAIN Load a new program and run it, preserving common variables
 +
COMMON Set common variables
 +
DELETE Delete lines from the program
 +
EDIT Print a program line to the screen for editing
 +
LIST Print program lines to the screen
 +
LLIST Print program lines to the printer
 +
LOAD Read a new program from file
 +
MERGE Overlay a program file onto the current program
 +
NEW Clear the current program from memory
 +
RENUM Replace the program's line numbers
 +
RUN Start the current program
 +
SAVE Store the current program to file
 +
TRON Enable line number tracing
 +
TROFF Disable line number tracing
 +
SYSTEM Exit the BASIC interpreter
 +
Control flow
  
Les alias de nom de fichier listés ici ne sont disponibles que si le dispositif actuel est un périphérique de disque. alias de nom de fichier de périphérique autorisés modes Description de SCRN: CON SORTIE L'écran. Sortie à SCRN: a en grande partie le même effet que la sortie droite en utilisant PRINT. Une différence réside dans le réglage de largeur qui est indépendante de la largeur réelle de l'écran. KYBD: CON ENTREE Le clavier. Entrée lire à partir de KYBD: n'est pas affiché à l'écran. Les touches spéciales comme les touches fléchées sont enregistrées différemment que lors de l'utilisation INPUT ou $ INPUT droite. LPT1: LPT2: LPT3: PRN pour LPT1: SORTIES ports parallèles ALEATOIRES 1-3. dispositifs LPT peuvent être fixés sur le port parallèle physique, à une imprimante ou à un fichier texte avec les options --lptn. Ouverture d'une imprimante pour RANDOM a le même effet que l'ouverture pour SORTIE; tenter des opérations aléatoires de fichiers va augmenter le mode de fichier incorrect. COM1: COM2: AUX pour COM1: ENTREE SORTIE APPEND ports série ALEATOIRES 1-2. dispositifs COM peuvent être attachés à un port série physique ou à une prise réseau avec les options --comn. CAS1: ENTREE SORTIE Cassette pilote de bande. dispositifs CAS peuvent être attachés à un WAV (RIFF Wave) ou d'un CAS (image de bande de bitmap) fichier avec l'option --cas1. A: - Z: et @: appareils APPEND RANDOM disque ENTRÉE DE SORTIE. Ces dispositifs peuvent être montés dans un répertoire sur le système de fichiers hôte avec l'option --mount. Ils ne correspondent pas automatiquement des lettres de lecteur sous Windows, sauf si l'option --map-lecteurs est réglé. NUL INPUT OUTPUT de l'appareil APPEND RANDOM Null. Ce dispositif ne produit pas d'octets lors de l'ouverture pour l'entrée et absorbe tous les octets lorsqu'il est ouvert pour la sortie.
+
A program is normally executed starting with its lowest line number (or the line number called by RUN). Statements on a line are executed from left to right. When all statements on a line are finished, execution moves to the next lowest line number, and so on until no line numbers are left. Control flow statements can be used to modify this normal flow of executon.
  
GW-BASIC reconnaît en outre le peu utilisé périphérique suivant, qui ne sont pas mis en œuvre dans PC-BASIC. Périphériques autorisés modes description CONS: SORTIE L'écran (console). Sortie vers CONS: est affiché directement à la position du curseur lorsque vous appuyez sur Entrée. Il ne met pas à jour la valeur de fin de ligne pour l'interprète, ce qui signifie qu'il ne se déplace pas avec Backspace ou Del et ne sont pas stockées dans les lignes de programme si elle apparaît au-delà de la fin de la ligne existante. CONS: peut être ouvert avec un mode d'accès, mais l'effet est toujours à l'ouvrir pour la sortie. Déclaration graphique Description de CIRCLE Dessiner une section d'ellipse ou arc TIRAGE Dessiner une forme définie par une Graphics chaîne de langage de macros GET Stocker une zone d'écran comme une ligne de sprite Dessinez un PAINT segment de ligne Flood-fill une région PSET connecté Mettez un PRESET pixel Changer un pixel fond attribut PUT Dessinez un sprite à l'écran de l'écran Modifier l'affichage du mode vidéo Réglez le graphique viewport fenêtre Définir les coordonnées logiques Fonction description POINT pointeur graphique coordonnées POINT Pixel attribut PPAFM Convertir entre les coordonnées physiques et logiques Déclaration sonore description de Beep Beep le haut-parleur BEEP Président commutateur NOISE Générer du bruit JOUER Faites un morceau encodé en Musique Langue Macro SOUND Générer une tonalité sonore commutateur Fonction description LECTURE Longueur de la file d'attente de la musique de fond joystick et un stylo Déclaration description STRIG joystick commutateur Fonction description PEN condition STICK stylo lumière Coordonnée du joystick axe STRIG condition joystick feu disques de boutons et DOS
+
The END and STOP statements serve in a program to stop its execution and return to direct mode. When STOP is used, a Break message is printed. From direct mode, CONT can be executed to resume the program where it was stopped. While END seems intended to terminate the program, it does not preclude the user from resuming it with CONT.
  
L'instruction SHELL est, par défaut, désactivé; ceci afin d'éviter des surprises désagréables. Dans GW-BASIC sous MS-DOS, SHELL ouvre une invite DOS ou exécute des commandes en elle. Les coquilles de commande des systèmes d'exploitation modernes fonctionnent différemment que ceux de DOS; en particulier, il est impossible de récupérer les modifications dans les variables d'environnement, de sorte que de nombreux cas d'utilisation de SHELL simplement ne fonctionnerait pas; par exemple, changer le lecteur en cours sur Windows. En outre, les shells Unix ont une syntaxe qui est complètement différent de celui du DOS. Vous pouvez, toutefois, permettre à SHELL en réglant le shell = l'option native. Déclaration Description de CHDIR Changer le répertoire courant Liste FICHIERS les fichiers dans le répertoire courant TUENT Supprimer un fichier sur un périphérique de disque MKDIR Créer un nouveau répertoire NOM Renommer un fichier sur le disque RMDIR Supprimer un répertoire ENVIRON Set une chaîne SHELL environnement shell Entrez un DOS shell Fonction Description ENVIRON $ Chaîne du shell table d'environnement communications série Déclaration description de GET Lire octets à partir d'un port série PUT Ecrire octets à un terme de port série Ouvrez le traitement de l'événement d'émulation de terminal
+
Unconditional jumps can be made with GOTO. The program flow will continue at the line number indicated in the GOTO statement. Due to the PC-BASIC language's lack of sophisticated looping, branching and breaking constructs, unconditional jumps are essential and used frequently.
  
le piégeage de l'événement permet de définir des sous-programmes qui sont exécutés en dehors du cours normal de fonctionnement. Les événements qui peuvent être piégés sont:
+
The GOSUB statement jumps to a subroutine. Similar to GOTO, this is an unconditional jump; however, the location of the call is stored and the program will continue its flow there after the subroutine terminates with a RETURN statement. Subroutines are somewhat like procedures in that they allow chunks of code that perform a given task to be separated from the main body of the program, but they do not have separate scope since all variables in PC-BASIC are global. They do not have return values. It is even possible to jump out of a subroutine to anywhere in the program by supplying the RETURN statement with a line number.
  
  Les intervalles de temps (ON TIMER)
+
The ON statement provides an alternative branching construct. An integer value is used to selects one of a list of line numbers, and execution is continued from there. It can be used with a GOTO jump as wellas with a GOSUB subroutine call.
    (ON KEY enfoncements de touches)
+
    entrée du port série (ON COM)
+
    file d'attente musicale épuisement (ON PLAY)
+
    triggers Joystick (ON STRIG)
+
    activation de stylo Light (ON PEN)
+
  
Event subroutines piégeage sont définis comme des sous-programmes réguliers. A l'instruction RETURN, le cours normal de l'exécution du programme est reprise. Événement piégeage peut être activée et désactivée ou interrompue temporairement avec les déclarations de la forme PEN ON, PEN OFF, PEN STOP. le piégeage de l'événement a lieu seulement pendant l'exécution du programme et est en pause pendant que le programme est dans un piège d'erreur. Si un événement se produit lors de l'événement de piégeage est en pause, l'événement est déclenché immédiatement lorsque l'événement de piégeage est reprise. Déclaration Description de COM Gérer l'événement du port série piégeage KEY Gérer événement clavier piégeage KEY Définir clé piège événement clavier piégeage ON Définir sous-programme d'événements de piégeage PEN Gérer événement stylo lumière piégeage événement JOUER Gérer la file d'attente de la musique piégeant STRIG Gérer événement joystick piégeant TIMER Gérer événement timer piégeage La gestion des erreurs
+
ON, GOTO and GOSUB can also be used from direct mode to start a program or subroutine without resetting variables.
  
Normalement, toute erreur interrompt l'exécution du programme et imprimer un message sur la console (exceptions sont Division Débordement et par zéro, qui impriment un message mais ne pas interrompre l'exécution). Il est possible de gérer les erreurs plus gracieusement en définissant une routine de gestion des erreurs avec l'ON ERROR GOTO instruction line_number. Les mises en chantier de routine de gestion des erreurs au numéro de ligne line_number donné et continue jusqu'à ce qu'une instruction REPRENDRE est rencontrée. Erreur piégeage est en effet à la fois quand un programme est en cours d'exécution et en mode direct. Erreur piégeage est éteint avec l'ON ERROR GOTO 0 déclaration. Si une erreur se produit, ou la récupération d'erreur est éteint, alors que le programme exécute une routine de piégeage d'erreur, le programme se termine et un message d'erreur est affiché. Déclaration Description ERROR Soulever une erreur ON ERROR Définir un REPRENDRE Fin gestionnaire d'erreurs de gestionnaire d'erreur et revenir à l'exécution Fonction Code de la dernière erreur numéro ERL ligne des fonctions définies par l'utilisateur dernière erreur Déclaration description DEF FN Description de ERR Erreur normale Définir une nouvelle fonction Description de la fonction FN défini par l'utilisateur fonction Date et heure Déclaration description DATE $ Réglez le temps de date système $ Réglez l'heure du système Date fonction description DATE $ System comme un temps système $ TIME chaîne comme un temps de système TIMER chaîne en secondes depuis minuit Y compris les données dans une déclaration de programme description des données Définir les données à utiliser par le programme LIRE Récupérer une entrée de données RESTORE réinitialiser la mémoire de pointeur de données et les ports de la machine
+
The IF–THEN–ELSE construct tests for a condition and execute different code branches based on its truth value. This is not a block construct; all code in the THEN and ELSE branches must fit on one line. For this reason, branching is often used in combination with GOTO jumps. For example:
 +
10 INPUT "How old are you"; AGE%
 +
20 IF AGE%>30 THEN 100
 +
30 IF AGE%<30 THEN 200 ELSE PRINT "You are 30 years old."
 +
40 END
 +
100 PRINT "You are over 30."
 +
110 END
 +
200 PRINT "You are not yet 30."
 +
210 END
  
Seuls certains plages de mémoire et les ports sélectionnés sont émulés dans PC-BASIC. Certaines des régions les plus fréquemment consultés de mémoire sont émulées et peut être lu et (parfois) écrit. Il est lu et écrire un soutien pour la mémoire vidéo, la police RAM et les emplacements du segment bas de la mémoire, y compris le tampon de clavier sélectionné. En outre, il est lu support pour la police de ROM, variable, un tableau et de la mémoire de chaîne, des tampons FIELD ainsi que le code du programme lui-même. L'écriture dans le code de programme est désactivée par défaut, mais peut être activée avec l'option allow-code poche. Un certain nombre de ports de la machine liés aux modes d'entrée et de vidéo clavier sont également pris en charge. Déclaration Description de BLOAD Charger un fichier binaire en mémoire BSAVE Enregistrer une région de mémoire à déposer CLEAR Efface la mémoire BASIC DEF SEG Définissez le segment de mémoire OUT Ecrire un octet à un port POKE machine Ecrire un octet à un emplacement de mémoire ATTENDEZ Attendez une valeur sur une machine Fonction description port FRE Montant de la libre Byte mémoire INP dans le port de la machine PEEK Byte à l'adresse de mémoire VARPTR adresse de mémoire de la variable $ VARPTR représentation Octet de longueur et adresse mémoire des caractéristiques variables non encore mis en œuvre
+
The WHILE–WEND looping construct repeats the block of code between WHILE and WEND as long as a given condition remains true.
  
Les éléments de langage suivants ne sont pas actuellement pris en charge dans le PC-BASIC. La syntaxe mot-clé est pris en charge, donc aucune erreur de syntaxe devrait être soulevée si les états ou fonctions sont utilisées correctement. Cependant, les déclarations ne font rien et les fonctions renvoient zéro ou la chaîne vide.
+
The FOR–NEXT construct repeats a block of code while a counter remains in a given range. The counter is set to a starting value at the first pass of the FOR statement and incremented by the STEP value at each pass of NEXT. For example:
 +
10 FOR I=1 TO 10
 +
20 PRINT STRING$(I, "*"); USING " [##]"; I
 +
30 NEXT I
  
Ces éléments de langage peuvent être mises en œuvre dans les futures versions de PC-BASIC. Déclaration Description de PC-BASIC MOTOR de mise en œuvre Allumez le moteur de cassette Ne rien Fonction Description PC-BASIC ERDEV de mise en œuvre valeur d'erreur de périphérique Retour 0 ERDEV $ Nom du dispositif erreur soulevant Retour "" EXTERR Extended de l'information d'erreur DOS retour 0 fonctionnalités non prises en charge
+
Looping constructs may be nested.
  
GW-BASIC était un programme DOS en mode réel, ce qui signifie qu'il avait un contrôle total sur un 8086 ordinateur compatible IBM. Il y avait un accès direct à tous les domaines de la mémoire et tous les périphériques. Certains programmes de base utilisé ce fait, en utilisant des sous-routines code machine pour effectuer des tâches pour lesquelles BASIC n'a pas fourni le soutien. pistes PC-BASIC sur des machines modernes qui peuvent être fondées sur des architectures totalement différentes et ne permettent pas aux applications d'accéder directement à la mémoire. Par conséquent, il est impossible d'exécuter du code de la machine sur PC-BASIC. Si vous avez besoin du code machine, vous aurez besoin d'utiliser l'émulation de CPU complète telle que fournie par DOSBox, Bochs ou VirtualBox.
+
Control flow is also affected by event and error trapping.
 +
Statement Description
 +
CONT Continue interrupted program
 +
ELSE Ignore the remainder of the line (standalone ELSE)
 +
END Stop execution of the program
 +
FOR Start a for-loop
 +
GOSUB Call a subroutine
 +
GOTO Jump to another location in the program
 +
IF Branch on a condition
 +
NEXT Iterate a for-loop
 +
ON Calculated jump or subroutine call
 +
RETURN Return from subroutine
 +
STOP Interrupt program execution
 +
WEND Iterate a while-loop
 +
WHILE Enter a while-loop
 +
Arrays and variables
 +
Statement Description
 +
DEFDBL Specify variable name range for double-precision floats
 +
DEFINT Specify variable name range for integers
 +
DEFSNG Specify variable name range for single-precision floats
 +
DEFSTR Specify variable name range for strings
 +
DIM Allocate an array
 +
ERASE Deallocate an array
 +
LET Assign a value to a variable
 +
OPTION BASE Set the starting index of arrays
 +
SWAP Swap two variables
 +
Type conversion
 +
Function Description
 +
ASC Character to ordinal value
 +
CHR$ Ordinal value to character
 +
HEX$ Integer to hexadecimal string representation
 +
OCT$ Integer to octal string representation
 +
STR$ Numeric value to decimal string representation
 +
VAL String representation to numeric value
 +
CDBL Numeric value to double-precision float
 +
CINT Numeric value to integer
 +
CSNG Numeric value to single-precision float
 +
CVD Byte representation to double-precision float
 +
CVI Byte representation to integer
 +
CVS Byte representation to single-precision float
 +
MKD$ Double-precision float to byte representation
 +
MKI$ Integer to byte representation
 +
MKS$ Single-precision float to byte representation
 +
String operations
 +
Statement Description
 +
LSET Copy a left-justified value into a string buffer
 +
MID$ Copy a value into part of a string buffer
 +
RSET Copy a right-justified value into a string buffer
 +
Function Description
 +
INSTR Find
 +
LEFT$ Left substring
 +
LEN String length
 +
MID$ Substring
 +
RIGHT$ Right substring
 +
SPACE$ Repeat spaces
 +
STRING$ Repeat characters
 +
Text and the screen
 +
Statement Description
 +
CLS Clear the screen
 +
COLOR Set colour and palette values
 +
LOCATE Set the position and shape of the text screen cursor
 +
PALETTE Assign a colour to an attribute
 +
PALETTE USING Assign an array of colours to attributes
 +
PCOPY Copy a screen page
 +
PRINT Print expressions to the screen
 +
VIEW PRINT Set the text scrolling region
 +
WIDTH Set the number of text columns on the screen
 +
Function Description
 +
CSRLIN Current row of cursor
 +
POS Current column of cursor
 +
SCREEN Character or attribute at given location
 +
The printer
 +
Statement Description
 +
LCOPY Do nothing
 +
LPRINT Print expressions to the printer
 +
Function Description
 +
LPOS Column position of printer head
 +
Keyboard input
 +
Statement Description
 +
INPUT Retrieve user input on the console
 +
LINE INPUT Retrieve a line of user input on the console
 +
Function Description
 +
INKEY$ Nonblocking read from keyboard
 +
INPUT$ Blocking read from keyboard
 +
Function-key macros
 +
Statement Description
 +
KEY Manage the visibility of the function-key macro list
 +
KEY Define a function-key macro
 +
Calculations and maths
 +
Mathematical functions
 +
Function Description
 +
ABS Absolute value
 +
ATN Arctangent
 +
COS Cosine
 +
EXP Exponential
 +
FIX Truncation
 +
INT Floor
 +
LOG Natural logarithm
 +
SIN Sine
 +
SGN Sign
 +
SQR Square root
 +
TAN Tangent
 +
Random numbers
 +
Statement Description
 +
RANDOMIZE Seed the random number generator
 +
Function Description
 +
RND Pseudorandom number
 +
Devices and files
 +
File operations
 +
Statement Description
 +
CLOSE Close a file
 +
FIELD Assign a string to a random-access record buffer
 +
GET Read a record from a random-access file
 +
INPUT Read a variable from a file
 +
LINE INPUT Read a line from a file
 +
LOCK Locks a file or a range of records against other use
 +
OPEN Open a data file
 +
PUT Write the random-access record buffer to disk
 +
RESET Close all files
 +
UNLOCK Unlocks a file or a range of records against other use
 +
WIDTH Set the number of text columns in a file
 +
WRITE Write expressions to a file
 +
Function Description
 +
EOF End of file
 +
LOC Location in file
 +
LOF Length of file
 +
INPUT$ Read a string from a file
 +
Devices
  
De même, la fonctionnalité IOCTL dépend d'une interruption MS-DOS et envoie une chaîne de commande de l'appareil à tout pilote de périphérique DOS. La syntaxe de ces chaînes est dépendant du périphérique. Depuis PC-BASIC émule ni DOS, ni quel appareil pourrait être l'analyse de la chaîne de contrôle, il est possible d'utiliser cette fonctionnalité.
+
PC-BASIC recognises the following DOS-style devices, which can be used by opening a file on them. Some devices allow specification of further file parameters, such as handshake specifications for serial devices, a filename for cassette devices and a path for disk devices. When operating on disk devices, specifying a path is mandatory.
  
Les éléments de langage suivants ne sont donc pas pris en charge dans PC-BASIC. La syntaxe mot-clé est pris en charge, donc aucune erreur de syntaxe devrait être soulevée si les états ou fonctions sont utilisées correctement. Cependant, les déclarations ne font rien ou soit augmenter illégal appel de fonction; les fonctions renvoient zéro ou la chaîne vide ou soulèvent illégale appel de fonction. Déclaration Description de PC-BASIC CALL de mise en œuvre Appeler un sous-programme de code machine Ne rien faire APPELS Appel d'un sous-programme FORTRAN Ne rien faire DEF USR Définir une fonction de code machine Ne rien IOCTL Envoyer une chaîne de commande de l'appareil à un dispositif Soulever appel de fonction Description de la fonction PC-BASIC mise en œuvre illégale IOCTL $ response de périphériques pour IOCTL Raise illégal appel de fonction USR code machine fonction retour référence 0 Langue
+
The filename aliases listed here are only available if the current device is a disk device.
 +
Device Filename alias Allowed modes Description
 +
SCRN: CON OUTPUT The screen. Output to SCRN: has largely the same effect as straight output using PRINT. A difference is the WIDTH setting which is independent of the real screen width.
 +
KYBD: CON INPUT The keyboard. Input read from KYBD: is not echoed to the screen. Special keys like arrow keys are registered differently than when using INPUT or INPUT$ straight.
 +
LPT1: LPT2: LPT3: PRN for LPT1: OUTPUT RANDOM Parallel ports 1—3. LPT devices can be attached to the physical parallel port, to a printer or to a text file with the --lptn options. Opening a printer for RANDOM has the same effect as opening it for OUTPUT; attempting random-file operations will raise Bad file mode.
 +
COM1: COM2: AUX for COM1: INPUT OUTPUT APPEND RANDOM Serial ports 1—2. COM devices can be attached to a physical serial port or to a network socket with the --comn options.
 +
CAS1: INPUT OUTPUT Cassette tape driver. CAS devices can be attached to a WAV (RIFF Wave) or a CAS (bitmap tape image) file with the --cas1 option.
 +
A: — Z: and @: INPUT OUTPUT APPEND RANDOM Disk devices. These devices can be mounted to a directory on the host file system with the --mount option. They do not automatically match drive letters on Windows, unless the --map-drives option is set.
 +
NUL INPUT OUTPUT APPEND RANDOM Null device. This device produces no bytes when opened for INPUT and absorbs all bytes when opened for OUTPUT.
  
Cette documentation décrit la langue de PC-BASIC, qui vise à imiter fidèlement GW-BASIC 3.23, IBM Advanced BASIC, IBM cartouche BASIC et Tandy 1000 GW-BASIC.
+
GW-BASIC additionally recognises the following little-used device, which is not implemented in PC-BASIC.
 +
Device Allowed modes Description
 +
CONS: OUTPUT The screen (console). Output to CONS: is displayed directly at the cursor position when Enter is pressed. It does not update the end-of-line value for the interpreter, which means that it does not move with Backspace or Del and is not stored in program lines if it appears beyond the end of the existing line. CONS: can be opened with any access mode, but the effect is always to open it for OUTPUT.
 +
Graphics
 +
Statement Description
 +
CIRCLE Draw an ellipse or arc section
 +
DRAW Draw a shape defined by a Graphics Macro Language string
 +
GET Store a screen area as a sprite
 +
LINE Draw a line segment
 +
PAINT Flood-fill a connected region
 +
PSET Put a pixel
 +
PRESET Change a pixel to background attribute
 +
PUT Draw a sprite to the screen
 +
SCREEN Change the video mode
 +
VIEW Set the graphics viewport
 +
WINDOW Set logical coordinates
 +
Function Description
 +
POINT Graphical pointer coordinates
 +
POINT Pixel attribute
 +
PMAP Convert between physical and logical coordinates
 +
Sound
 +
Statement Description
 +
BEEP Beep the speaker
 +
BEEP Speaker switch
 +
NOISE Generate noise
 +
PLAY Play a tune encoded in Music Macro Language
 +
SOUND Generate a tone
 +
SOUND Sound switch
 +
Function Description
 +
PLAY Length of the background music queue
 +
Joystick and pen
 +
Statement Description
 +
STRIG Joystick switch
 +
Function Description
 +
PEN Status of light pen
 +
STICK Coordinate of joystick axis
 +
STRIG Status of joystick fire button
 +
Disks and DOS
  
Les différences avec les langues d'origine ne se posent, et lorsque cela est le cas, ils sont documentés.
+
The SHELL statement is, by default, disabled; this is to avoid unpleasant surprises. In GW-BASIC under MS-DOS, SHELL opens a DOS prompt or executes commands in it. The command shells of modern operating systems work differently than those of DOS; in particular, it is impossible to retrieve changes in the environment variables, so that many use cases of SHELL simply would not work; for example, changing the current drive on Windows. Moreover, Unix shells have a syntax that is completely different from that of DOS. You can, however, enable SHELL by setting the shell=native option.
 +
Statement Description
 +
CHDIR Change current directory
 +
FILES List the files in the current directory
 +
KILL Delete a file on a disk device
 +
MKDIR Create a new directory
 +
NAME Rename a file on disk
 +
RMDIR Remove a directory
 +
ENVIRON Set a shell environment string
 +
SHELL Enter a DOS shell
 +
Function Description
 +
ENVIRON$ String from shell environment table
 +
Serial communications
 +
Statement Description
 +
GET Read bytes from a serial port
 +
PUT Write bytes to a serial port
 +
TERM Open the terminal emulator
 +
Event handling
  
S'il vous plaît noter que la documentation officielle de Microsoft pour les langues d'origine est plutôt hit-and-miss; il laisse plusieurs fonctionnalités non documentées et décrit de manière incorrecte les autres. Pour éviter de faire les mêmes erreurs, la présente documentation a été écrit à partir de zéro en référence au comportement réel. Les erreurs dans ce document sont donc tout mon propre. S'il vous plaît me contacter si vous les rencontrez. Métasyntaxe
+
Event trapping allows to define subroutines which are executed outside of the normal course of operation. Events that can be trapped are:
  
Dans les descriptions de la syntaxe BASIC, les conventions suivantes sont applicables. rendu exact du balisage peut varier en fonction des moyens utilisés pour afficher cette documentation.
+
    Time intervals (ON TIMER)
 +
    Keypresses (ON KEY)
 +
    Serial port input (ON COM)
 +
    Music queue exhaustion (ON PLAY)
 +
    Joystick triggers (ON STRIG)
 +
    Light pen activation (ON PEN)
  
audacieux
+
Event trapping subroutines are defined as regular subroutines. At the RETURN statement, the normal course of program execution is resumed. Event trapping can be switched on and off or paused temporarily with statements of the form PEN ON, PEN OFF, PEN STOP. Event trapping only takes place during program execution and is paused while the program is in an error trap. If an event occurs while event-trapping is paused, then the event is triggered immediately when event trapping is resumed.
 +
Statement Description
 +
COM Manage serial port event trapping
 +
KEY Manage keyboard event trapping
 +
KEY Define key to trap in keyboard event trapping
 +
ON Define event-trapping subroutine
 +
PEN Manage light pen event trapping
 +
PLAY Manage music queue event trapping
 +
STRIG Manage joystick event trapping
 +
TIMER Manage timer event trapping
 +
Error handling
  
  Tapez exactement comme indiqué.
+
Normally, any error will interrupt program execution and print a message on the console (exceptions are Overflow and Division by zero, which print a message but do not interrupt execution). It is possible to handle errors more graciously by setting an error-handling routine with the ON ERROR GOTO line_number statement. The error-handling routine starts at the given line number line_number and continues until a RESUME statement is encountered. Error trapping is in effect both when a program is running and in direct mode. Error trapping is switched off with the ON ERROR GOTO 0 statement. If an error occurs, or error trapping is switched off, while the program is executing an error-trapping routine, the program terminates and an error message is shown.
 +
Statement Description
 +
ERROR Raise an error
 +
ON ERROR Define an error handler
 +
RESUME End error handler and return to normal execution
 +
Function Description
 +
ERR Error number of last error
 +
ERL Line number of last error
 +
User-defined functions
 +
Statement Description
 +
DEF FN Define a new function
 +
Function Description
 +
FN User-defined function
 +
Date and time
 +
Statement Description
 +
DATE$ Set the system date
 +
TIME$ Set the system time
 +
Function Description
 +
DATE$ System date as a string
 +
TIME$ System time as a string
 +
TIMER System time in seconds since midnight
 +
Including data in a program
 +
Statement Description
 +
DATA Define data to be used by the program
 +
READ Retrieve a data entry
 +
RESTORE Reset the data pointer
 +
Memory and machine ports
  
italique
+
Only selected memory ranges and selected ports are emulated in PC-BASIC. Some of the most commonly accessed regions of memory are emulated and can be read and (sometimes) written. There is read and write support for video memory, font RAM and selected locations of the low memory segment, including the keyboard buffer. Additionally, there is read support for font ROM, variable, array and string memory, FIELD buffers as well as the program code itself. Writing into the program code is disabled by default, but can be enabled with the allow-code-poke option. A number of machine ports related to keyboard input and video modes are supported as well.
 +
Statement Description
 +
BLOAD Load a binary file into memory
 +
BSAVE Save a memory region to file
 +
CLEAR Clears BASIC memory
 +
DEF SEG Set the memory segment
 +
OUT Write a byte to a machine port
 +
POKE Write a byte to a memory location
 +
WAIT Wait for a value on a machine port
 +
Function Description
 +
FRE Amount of free memory
 +
INP Byte at machine port
 +
PEEK Byte at memory address
 +
VARPTR Memory address of variable
 +
VARPTR$ Byte representation of length and memory address of variable
 +
Features not yet implemented
  
  Remplacer par metavariable approprié.
+
The following language elements are not currently supported in PC-BASIC. The keyword syntax is supported, so no Syntax error should be raised if the statements or functions are used correctly. However, the statements do nothing and the functions return zero or the empty string.
  
[une]
+
These language elements may be implemented in future versions of PC-BASIC.
 +
Statement Description PC-BASIC implementation
 +
MOTOR Turn on cassette motor Do nothing
 +
Function Description PC-BASIC implementation
 +
ERDEV Device error value Return 0
 +
ERDEV$ Name of device raising error Return ""
 +
EXTERR Extended error information from DOS Return 0
 +
Unsupported features
  
  Les entités entre crochets sont facultatifs.
+
GW-BASIC was a real-mode DOS program, which means that it had full control over an IBM-compatible 8086 computer. It had direct access to all areas of memory and all devices. Some BASIC programs used this fact, by using machine-code subroutines to perform tasks for which BASIC did not provide support. PC-BASIC runs on modern machines which may be based on completely different architectures and do not allow applications to access the memory directly. Therefore, it is not possible to run machine code on PC-BASIC. If you need machine code, you'll need to use full CPU emulation such as provided by DOSBox, Bochs or VirtualBox.
  
{A | b}
+
Similarly, the IOCTL functionality depends on an MS-DOS interrupt and sends a device control string to any DOS device driver. The syntax of such strings is device-dependent. Since PC-BASIC emulates neither DOS nor whatever device might be parsing the control string, it is not possible to use such functionality.
  
  alternatives disjointes dont l'un doit être choisi.
+
The following language elements are therefore not supported in PC-BASIC. The keyword syntax is supported, so no Syntax error should be raised if the statements or functions are used correctly. However, the statements either do nothing or raise Illegal function call; the functions return zero or the empty string or raise Illegal function call.
 +
Statement Description PC-BASIC implementation
 +
CALL Call a machine code subroutine Do nothing
 +
CALLS Call a FORTRAN subroutine Do nothing
 +
DEF USR Define a machine code function Do nothing
 +
IOCTL Send a device control string to a device Raise Illegal function call
 +
Function Description PC-BASIC implementation
 +
IOCTL$ Device response to IOCTL Raise Illegal function call
 +
USR Machine code function Return 0
 +
Language reference
  
[A | b]
+
This documentation describes the PC-BASIC language, which aims to faithfully emulate GW-BASIC 3.23, IBM Advanced BASIC, IBM Cartridge BASIC and Tandy 1000 GW-BASIC.
  
  alternatives disjointes en option.
+
Differences with the original languages do arise, and where this is the case they are documented.
  
une ...
+
Please note that Microsoft's official documentation for the original languages is rather hit-and-miss; it leaves several features undocumented and incorrectly describes others. To avoid making the same errors, the present documentation was written from scratch with reference to the actual behaviour. The errors in this document are therefore all my own. Please contact me if you encounter them.
 +
Metasyntax
  
  entité précédente peut être répétée.
+
In descriptions of BASIC syntax, the following conventions apply. Exact rendering of the markup may vary depending on the means used to display this documentation.
  
Définitions
+
bold
 +
    Type exactly as shown.
 +
italic
 +
    Replace with appropriate metavariable.
 +
[a]
 +
    Entities within square brackets are optional.
 +
{ a | b }
 +
    Disjunct alternatives of which one must be chosen.
 +
[ a | b ]
 +
    Optional disjunct alternatives.
 +
a ...
 +
    Preceding entity can be repeated.
  
Une ligne de programme se compose d'un numéro de ligne suivi d'une instruction composée. lignes du programme sont terminés par un CR ou ou à la fin du fichier (éventuellement par le biais d'un caractère EOF). Tout sur une ligne de programme après un caractère NUL est ignoré.
+
Definitions
  
Un numéro de ligne est un nombre entier dans l'intervalle [0-65535]. Notez que les numéros de ligne 65530-65535 ne peuvent pas être saisies à partir de la console ou un fichier de programme de texte, mais peuvent faire partie d'un fichier de programme tokenised.
+
A program line consists of a line number followed by a compound statement. Program lines are terminated by a CR or or by the end of the file (optionally through an EOF character). Anything on a program line after a NUL character is ignored.
  
Une instruction composée est constituée d'états séparés par deux points: déclaration [déclaration] ...
+
A line number is a whole number in the range [0—65535]. Note that the line numbers 65530—65535 cannot be entered from the console or a text program file, but can be part of a tokenised program file.
  
Une expression prend l'une des formes suivantes: unary_operator {literal | variables | array_element | fonction} expression binary_operator expression (expression) dont les éléments sont décrits les sections littéraux, variables, opérateurs et fonctions.
+
A compound statement consists of statements separated by colons:
 +
statement [: statement] ...
  
Un élément de tableau prend la forme array {[| (} numeric_expression [, numeric_expression] ... {) |]} littéraux littéraux cordes
+
An expression takes one of the following forms:
 +
unary_operator {literal | variable | array_element | function}
 +
expression binary_operator expression
 +
(expression)
 +
whose elements are described the sections Literals, Variables, Operators and Functions.
  
Les chaînes littérales sont de la forme suivante: "[caractères] {NUL | CR | EOF |"} où les caractères est une chaîne de caractères. Tout caractère de la page de code actuel peut être utilisé, avec les exceptions suivantes, tous qui terminent la chaîne littérale (en dehors des autres effets qu'ils peuvent avoir):
+
An array element takes the form
 +
array {[|(} numeric_expression [, numeric_expression ] ... {)|]}
 +
Literals
 +
String literals
  
  NUL (CHR $ (& h00))
+
String literals are of the following form:
    CR (CHR $ (& h0D))
+
"[characters]{NUL|CR|EOF|"}
    EOF (CHR $ (& H1A))
+
where characters is a string of characters. Any character from the current code page can be used, with the following exceptions, all of which terminate the string literal (aside from other effects they may have):
    "(CHR $ (& h22))
+
  
Les chaînes sont aussi légalement mis fin à la fin du fichier en l'absence d'un caractère EOF.
+
    NUL (CHR$(&h00))
 +
    CR (CHR$(&h0D))
 +
    EOF (CHR$(&h1A))
 +
    " (CHR$(&h22))
  
En dehors de ceux-ci, les chaînes de caractères ne doivent pas contenir les caractères dans la plage ASCII & h0D- & H1F, qui conduisent à des résultats imprévisibles. Il n'y a pas de mécanisme d'échappement. Pour inclure un des caractères ci-dessus dans une chaîne, utilisez la concaténation de chaîne et la fonction CHR $. littéraux numériques
+
Strings are also legally terminated by the end of the file in the absence of an EOF character.
  
Les littéraux numériques ont l'une des formes suivantes: | - [.] [+] [0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | | 8 9] ... [0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9] ... [{e | e | D | d} [+ | -] [0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 ] ...] | # |! |%] et {h | h} [0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | a | b | c | d | e | f] ... et [O | o] [0 | 1 | 2 | 3 | 4 | 5 | 6 | 7] ...
+
Apart from these, string literals should not contain any of the characters in the ASCII range &h0D—&h1F, which lead to unpredictable results. There is no escaping mechanism. To include one of the above characters in a string, use string concatenation and the CHR$ function.
 +
Numeric literals
  
littéraux hexadécimaux ne doivent pas contenir d'espaces, mais décimales et octaux littéraux mai. Le o caractère littéraux octal est facultative: ils peuvent être spécifiés tout aussi & o777 ou & 777.
+
Numeric literals have one of the following forms:
 +
[+|-] [0|1|2|3|4|5|6|7|8|9]... [.][0|1|2|3|4|5|6|7|8|9]... [{E|e|D|d}[+|-][0|1|2|3|4|5|6|7|8|9]...] |#|!|%]
 +
&{H|h}[0|1|2|3|4|5|6|7|8|9|A|B|C|D|E|F|a|b|c|d|e|f]...
 +
&[O|o] [0|1|2|3|4|5|6|7]...
  
Hexadécimal et littéraux octal désignent des nombres entiers et ne comprennent pas un signe. Ils doivent se situer entre [& H0- & HFFFF], dont la gamme [& h8000- & HFFFF] est interprété comme complément négatif entier de deux; par exemple, & HFFFF = -1. Les signes peuvent apparaître à gauche du &, mais ceux-ci forment une expression et ne font pas partie du littéral lui-même.
+
Hexadecimal literals must not contain spaces, but decimal and octal literals may. The o character in octal literals is optional: they can be specified equally as &o777 or &777.
  
À virgule flottante littéraux doivent être spécifiés dans la notation décimale. Le séparateur décimal est le point. Une base 10 exposant peut être spécifié après E dans des flotteurs simple précision, ou après D dans flotteurs double précision. Trailing% est ignoré et ne signifie pas un entier littéral. Trailing! ou # marquent le littéral comme simple ou double précision, respectivement.
+
Hexadecimal and octal literals denote integers and do not include a sign. They must range between [&h0—&hFFFF], of which the range [&h8000—&hFFFF] is interpreted as a two's complement negative integer; for example, &hFFFF = -1. Signs can appear left of the & but these form an expression and are not part of the literal itself.
  
Des exemples de littéraux numériques valides sont -1 42 42! 42 # 1,3523523 0,235435 ± 3 3.. .e .D 1.1e + 7 1.1d + 7 1e2 1e-2 & 7 & HFFFF & O20 & h & 65537% 1.1%
+
Floating-point literals must be specified in decimal notation. The decimal separator is the point. A base-10 exponent may be specified after E in single-precision floats, or after D in double-precision floats. Trailing % is ignored and does not indicate an integer literal. Trailing ! or # mark the literal as single- or double-precision, respectively.
  
Notez que des expressions telles que & o-77 sont légales; ceux-ci ne sont cependant pas octal négatives, mais plutôt l'expression & o (octal vide, zéro) moins 77 (décimal 77). Variables
+
Examples of valid numeric literals are -1 42 42! 42# 1.3523523 .235435 -.3 3. . .e .D 1.1e+7 1.1d+7 1e2 1e-2 &7 &hffff &O20 &h & 65537% 1.1%
  
Les noms de variables doivent commencer par une lettre; tous les caractères du nom de la variable (à l'exception du sigil) doivent être des lettres de A à Z, les chiffres 0-9, ou un point. Seuls les 40 premiers caractères du nom sont significatifs. Un nom de variable ne doit pas être identique à un mot réservé ou un mot réservé, plus sigil. Par conséquent, par exemple, vous ne pouvez pas nommer une variable TO! mais vous pouvez le nommer AS !. Les noms de variables peuvent contenir un mot réservé. Les noms de variables peuvent aussi commencer par un mot réservé, à l'exception de NRS et FN. Ainsi, FNORD% et USRNME $ ne sont pas des noms de variables juridiques alors Tache de rousseur% et LUSR $ sont.
+
Note that expressions such as &o-77 are legal; these are however not negative octals but rather the expression &o (empty octal; zero) less 77 (decimal 77).
 +
Variables
  
Pour chaque nom, quatre variables différentes peuvent exister correspondant aux quatre types. Autrement dit, vous pouvez avoir un $, A%, A! et A # que différentes variables. Lequel de ceux est également connu sous le nom A dépend des paramètres DEFINT / DEFDBL / DefSng / DEFSTR. Par défaut, A est égal à la simple précision A !.
+
Variable names must start with a letter; all characters of the variable name (except the sigil) must be letters A—Z, figures 0—9, or a dot . Only the first 40 characters in the name are significant. A variable name must not be identical to a reserved word or a reserved word plus sigil. Therefore, for example, you cannot name a variable TO! but you can name it AS!. Variable names may contain any reserved word. Variable names may also start with a reserved word, with the exception of USR and FN. Thus, FNORD% and USRNME$ are not legal variable names while FRECKLE% and LUSR$ are.
  
En outre, les matrices A $ (%), A (A)! (), A # () sont séparés à partir des grandeurs scalaires du même nom. Types et sigils
+
For each name, four different variables may exist corresponding to the four types. That is, you can have A$, A%, A! and A# as different variables. Which one of those is also known as A depends on the settings in DEFINT/DEFDBL/DEFSNG/DEFSTR. By default, A equals the single-precision A!.
  
PC-BASIC reconnaît quatre types de variables, qui se distinguent par leur sigil ou de type caractère, le dernier caractère du nom complet de la variable: sigil Type taille plage de précision $ string 3 octets en plus attribués espace de chaîne 0-255 caractères% entiers 2 octets -32.768 à 32.767 exactes! simple précision float 4 octets ± 2.938726 · 10-39- ± 1.701412 · 1038 ~ 6 chiffres significatifs
+
Furthermore, the arrays A$(), A%(), A!(), A#() are separate from the scalar variables of the same name.
 +
Types and sigils
  
    double précision float 8 octets ± 2,938735877055719 · 10-39- ± 1,701411834604692 · 1038 ~ 16 chiffres significatifs
+
PC-BASIC recognises four variable types, distinguished by their sigil or type character, the last character of the variable's full name:
 +
sigil type size range precision
 +
$ string 3 bytes plus allocated string space 0—255 characters
 +
% integer 2 bytes -32768—32767 exact
 +
! single-precision float 4 bytes ±2.938726·10-39—±1.701412·1038 ~6 significant figures
 +
# double-precision float 8 bytes ±2.938735877055719·10-39—±1.701411834604692·1038 ~16 significant figures
  
Notez que les flotteurs double précision peuvent contenir plus de décimales que flotteurs simple précision, mais les numéros pas plus ou moins.
+
Note that double-precision floats can hold more decimals than single-precision floats, but not larger or smaller numbers.
  
Alors que tous les entiers sont signés, certains états vont interpréter des nombres entiers négatifs comme complément à leurs deux. Arrays
+
While all integers are signed, some statements will interpret negative integers as their two's complement.
 +
Arrays
  
Les tableaux sont indexés avec ronds ou crochets; même les supports de mélange est autorisé. Voici tous les éléments juridiques du tableau: A [0], A (0), A (0], A [0). Les tableaux multidimensionnels sont spécifiés en séparant les indices avec des virgules: A (0, 0), A [0, 0, 0], etc.
+
Arrays are indexed with round or square brackets; even mixing brackets is allowed. The following are all legal array elements: A[0], A(0), A(0], A[0). Multidimensional arrays are specified by separating the indices with commas: A(0, 0), A[0, 0, 0], etc.
  
Par défaut, les tableaux sont indexés à partir de 0. Ceci peut être changé à 1 en utilisant OPTION BASE 1.
+
By default, arrays are indexed from 0. This can be changed to 1 using OPTION BASE 1.
  
Les tableaux peuvent être attribués en spécifiant le plus grand indice autorisé en utilisant DIM. Si tous les indices du tableau sont 10 ou moins, ils ne doivent pas être explicitement attribués. Le premier accès du réseau (lecture ou écriture) attribue automatiquement avec un indice maximum de 10 et le même nombre d'indices comme dans le premier accès. Pour ré-allouer un tableau, l'ancien tableau doit d'abord être supprimé avec CLEAR ou ERASE. Conversions
+
Arrays can be allocated by specifying the largest allowed index using DIM. If all indices of the array are 10 or less, they need not be explicitly allocated. The first access of the array (read or write) will automatically allocate it with a maximum index of 10 and the same number of indices as in the first access. To re-allocate an array, the old array must first be deleted with CLEAR or ERASE.
 +
Conversions
  
PC-BASIC va convertir implicitement entre les trois types de données numériques. Lorsqu'une valeur d'un premier type est affecté à une variable, un élément de tableau ou d'un paramètre d'un autre type, il est converti selon les règles suivantes:
+
PC-BASIC will implicitly convert between the three numerical data types. When a value of one type is assigned to a variable, array element or parameter of another type, it is converted according to the following rules:
  
  flotteurs simple et double précision sont convertis en entier en arrondissant au nombre entier le plus proche. Demis sont arrondis loin de zéro. Si le nombre entier résultant est en dehors de la plage autorisée pour les entiers, Overflow est élevé.
+
    Single- and double-precision floats are converted to integer by rounding to the nearest whole number. Halves are rounded away from zero. If the resulting whole number is outside the allowed range for integers, Overflow is raised.
     flotteurs double précision sont convertis en des flotteurs par simple précision arrondi gaussienne de la mantisse, où le nouveau bit le moins significatif de la mantisse est arrondie si la fraction binaire écrêté-off est supérieure à une demi-; moitiés sont arrondies au même.
+
     Double-precision floats are converted to single-precision floats by Gaussian rounding of the mantissa, where the new least significant bit of the mantissa is rounded up if the clipped-off binary fraction is greater than one-half; halves are rounded to even.
     Entiers sont convertis à leur représentation exacte comme flotteurs simple ou double précision.
+
     Integers are converted to their exact representation as single- or double-precision floats.
     flotteurs simple précision sont convertis à leur représentation exacte flotteurs double précision.
+
     Single-precision floats are converted to their exact representation as double-precision floats.
     Il n'y a pas de conversion implicite entre les chaînes et tous les types numériques. Tenter d'assigner une valeur de chaîne à une variable numérique, élément de tableau ou d'un paramètre (ou vice versa) augmentera Incompatibilité de type.  
+
     There is no implicit conversion between strings and any of the numeric types. Attempting to assign a string value to a numeric variable, array element or parameter (or vice versa) will raise Type mismatch.  
  
Opérateurs Ordre de priorité
+
Operators
 +
Order of precedence
  
L'ordre de priorité des opérateurs est la suivante, à partir étroitement lié (haute priorité) à faiblement lié (faible priorité):
+
The order of precedence of operators is as follows, from tightly bound (high precedence) to loosely bound (low precedence):
  
  ^
+
    ^
 
         * /  
 
         * /  
 
     \
 
     \
 
     MOD
 
     MOD
         + - (Unaire et binaire)  
+
         + - (unary and binary)  
         = <>> <<> <= = <> = =>  
+
         = <> >< < > <= =< >= =>  
     NOT (unaire)
+
     NOT (unary)
     ET
+
     AND
     OU
+
     OR
 
     XOR
 
     XOR
 
     EQV
 
     EQV
     LUTIN
+
     IMP
  
Les expressions entre parenthèses () sont évaluées en premier. Tous les opérateurs binaires sont laissés associatif: les opérateurs de même priorité sont évalués de gauche à droite. Exemples
+
Expressions within parentheses () are evaluated first. All binary operators are left-associative: operators of equal precedence are evaluated left to right.
 +
Examples
  
  Exponentiation est plus étroitement lié à la négation: -1 ^ 2 = - (1 ^ 2) = -1, mais (-1) ^ 2 = 1.
+
    Exponentiation is more tightly bound than negation: -1^2 = -(1^2) = -1 but (-1)^2 = 1.
     Exponentiation est gauche associative: 2 ^ 3 ^ 4 = (2 ^ 3) ^ 4 = 4096.
+
     Exponentiation is left-associative: 2^3^4 = (2^3)^4 = 4096.
  
les erreurs
+
Errors
  
     Si un opérateur autre que +, - ou NOT est utilisé sans opérande de gauche, une erreur de syntaxe est soulevée. A la fin d'une instruction, si un opérateur est utilisé sans opérande de droite, opérande manquant est élevé. Si cela se produit ailleurs dans une instruction, comme entre parenthèses, une erreur de syntaxe est soulevée.  
+
     If any operator other than +, - or NOT is used without a left operand, Syntax error is raised.
 +
    At the end of a statement, if any operator is used without a right operand, Missing operand is raised. If this occurs elsewhere inside a statement, such as within brackets, Syntax error is raised.
  
opérateurs mathématiques
+
Mathematical operators
  
Les opérateurs mathématiques fonctionnent sur des expressions numériques seulement. Notez cependant que + peut prendre le rôle de l'opérateur de concaténation si les deux opérandes sont des chaînes. Opération code Résultat x ^ y Exponentiation x élevé à la puissance de yx * y Multiplication des produits de x et yx / y Division Quotient de x et yx \ y Tronqué division entière quotient de x et yx MOD y Modulo Entier reste de x par y ( avec le signe de x) x + y Addition Somme des x et yx - y soustraction Différence de x et y + y unaire valeur plus de y - valeur négative Négation y de y
+
Mathematical operators operate on numeric expressions only. Note however that + can take the role of the string concatenation operator if both operands are strings.
 +
Code Operation Result
 +
x ^ y Exponentiation x raised to the power of y
 +
x * y Multiplication Product of x and y
 +
x / y Division Quotient of x and y
 +
x \ y Truncated division Integer quotient of x and y
 +
x MOD y Modulo Integer remainder of x by y (with the sign of x)
 +
x + y Addition Sum of x and y
 +
x - y Subtraction Difference of x and y
 +
+ y Unary Plus Value of y
 +
- y Negation Negative value of y
  
Le cas échéant, le résultat de l'opération sera mis à niveau vers un type capable de tenir le résultat des données. Par exemple, diviser des nombres entiers 3 par 2 donnera une simple précision 1,5. Cependant, l'opérateur d'exponentiation ^ donnera au plus un résultat simple précision, sauf si la double option est utilisée. les erreurs
+
Where necessary, the result of the operation will be upgraded to a data type able to hold the result. For example, dividing integers 3 by 2 will yield a single-precision 1.5. However, the exponentiation operator ^ will give at most a single-precision result unless the double option is used.
 +
Errors
  
  Si l'un des opérandes est une chaîne, Incompatibilité de type sera soulevée. L'exception est + qui ne fera que soulever Incompatibilité de type se soit, mais pas les deux opérandes sont des chaînes.
+
    If either operand is a string, Type mismatch will be raised. The exception is + which will only raise Type mismatch if either but not both operands are strings.
     Si y = 0, x / y, x MOD y et x \ y soulèvera la division par zéro.
+
     If y=0, x / y, x MOD y and x \ y will raise Division by zero.
     Si x = 0 et y <0, x ^ y soulèvera la division par zéro.
+
     If x=0 and y<0, x^y will raise Division by zero.
     Si le résultat d'une opération est trop grand pour tenir dans un type de données à virgule flottante, Overflow est soulevée.
+
     If the result of any operation is too large to fit in a floating-point data type, Overflow is raised.
     Si opérandes ou résultat de \ ou MOD ne sont pas dans [-32768-32767], Overflow est soulevée.
+
     If operands or result of \ or MOD are not in [-32768–32767], Overflow is raised.
     Si x <0 et y est un nombre fractionnaire, x ^ y soulèvera Illegal appel de fonction.
+
     If x<0 and y is a fractional number, x ^ y will raise Illegal function call.
  
opérateurs relationnels
+
Relational operators
  
Les opérateurs relationnels peuvent fonctionner sur numérique, ainsi que les opérandes de chaîne; cependant, si un opérande est une chaîne et l'autre numérique, Incompatibilité de type est élevé.
+
Relational operators can operate on numeric as well as string operands; however, if one operand is string and the other numeric, Type mismatch is raised.
  
Les opérateurs relationnels renvoient soit 0 (pour faux) ou -1 pour vrai. Code d'opération Résultat = Egal Vrai si a est égal à b, sinon false. <>> <Différent False si un est égal à b, vrai autrement. <Moins Vrai si a est inférieur à b, sinon false. > Supérieur Vrai si a est supérieur à b, sinon false. <= = <Inférieur ou égal False si un est supérieur à b, vrai autrement. > = => Supérieur ou égal False si un est inférieur à b, vrai autrement.
+
Relational operators return either 0 (for false) or -1 for true.
 +
Code Operation Result
 +
= Equal True if a equals b, false otherwise.
 +
<> >< Not equal False if a equals b, true otherwise.
 +
< Less than True if a is less than b, false otherwise.
 +
> Greater than True if a is greater than b, false otherwise.
 +
<= =< Less than or equal False if a is greater than b, true otherwise.
 +
>= => Greater than or equal False if a is less than b, true otherwise.
  
En cas d'utilisation sur des opérandes numériques, les deux opérandes sont comparés en tant que nombres à virgule flottante selon l'ordre habituel de nombres. L'égal opérateur teste pour l'égalité à l'intérieur de la précision de la machine pour la plus haute précision des deux types d'opérateurs.
+
When operating on numeric operands, both operands are compared as floating-point numbers according to the usual ordering of numbers. The equals operator tests for equality to within machine precision for the highest-precision of the two operator types.
  
Lorsque l'on compare les chaînes, l'ordre est le suivant.
+
When comparing strings, the ordering is as follows.
  
  Deux chaînes sont égales seulement si elles sont de la même longueur et chaque code de caractère de la première chaîne est d'accord avec le code de caractère correspondant du second. Ceci inclut tout espace ou des caractères non imprimables.
+
    Two strings are equal only if they are of the same length and every character code of the first string agrees with the corresponding character code of the second. This includes any whitespace or unprintable characters.
     Chaque position de caractère des cordes est comparée à commencer par le premier caractère. Quand une paire de caractères différents est rencontrée, la chaîne avec le caractère de moindre point de code est inférieure à la chaîne avec le caractère d'une plus grande point de code.
+
     Each character position of the strings is compared starting with the leftmost character. When a pair of different characters is encountered, the string with the character of lesser code point is less than the string with the character of greater code point.
     Si les chaînes sont de longueur différente, mais égale à la longueur de la chaîne la plus courte, la chaîne la plus courte est inférieure à la chaîne plus longue.
+
     If the strings are of different length, but equal up to the length of the shorter string, then the shorter string is less than the longer string.
  
opérateurs binaires
+
Bitwise operators
  
PC-BASIC n'a pas de type Boolean et ne met pas en œuvre les opérateurs booléens. Il, cependant, mettre en œuvre les opérateurs de bits.
+
PC-BASIC has no Boolean type and does not implement Boolean operators. It does, however, implement bitwise operators.
  
Opérateurs binaires fonctionnent sur des expressions numériques seulement. À virgule flottante opérandes sont arrondis à des nombres entiers avant d'être utilisés. Opération code Résultat PAS y Complement -y-1 x ET y Bitwise conjonction Le binaire entre x et yx OU y disjonction Bitwise Le OU binaire de x et yx XOR y Bitwise exclusive ou Le XOR de x et yx EQV y Bitwise équivalence PAS (x XOR y) x implication NOT (x) OU y IMP y Bitwise
+
Bitwise operators operate on numeric expressions only. Floating-point operands are rounded to integers before being used.
 +
Code Operation Result
 +
NOT y Complement -y-1
 +
x AND y Bitwise conjunction The bitwise AND of x and y
 +
x OR y Bitwise disjunction The bitwise OR of x and y
 +
x XOR y Bitwise exclusive or The bitwise XOR of x and y
 +
x EQV y Bitwise equivalence NOT(x XOR y)
 +
x IMP y Bitwise implication NOT(x) OR y
  
Ces opérateurs peuvent être utilisés comme des opérateurs booléens uniquement si -1 est utilisé pour représenter vrai pendant que 0 représente faux. Notez que PC-BASIC représente des nombres entiers négatifs en utilisant le complément à deux, donc PAS 0 = -1. L'interprétation booléenne opérateurs binaires est donnée dans le tableau ci-dessous. Opération code Résultat PAS y Négation logique Vrai si y est faux et vice versa x ET y Conjonction Seul vrai si x et y sont de véritables x OU y disjonction Seulement false si x et y sont fausses x XOR y Exclusive ou Vrai si la vérité les valeurs de x et y diffèrent x EQV y Equivalence vrai si les valeurs de vérité de x et y sont les mêmes x IMP y Implication vrai si x est faux ou y est vrai
+
These operators can be used as Boolean operators only if -1 is used to represent true while 0 represents false. Note that PC-BASIC represents negative integers using the two's complement, so NOT 0 = -1. The Boolean interpretation of bitwise operators is given in the table below.
 +
Code Operation Result
 +
NOT y Logical negation True if y is false and vice versa
 +
x AND y Conjunction Only true if both x and y are true
 +
x OR y Disjunction Only false if both x and y are false
 +
x XOR y Exclusive or True if the truth values of x and y differ
 +
x EQV y Equivalence True if the truth values of x and y are the same
 +
x IMP y Implication True if x is false or y is true
  
Sachez que lorsqu'il est utilisé sur des entiers autres que 0 et -1, les opérateurs binaires ne peuvent pas être interprétées comme des opérateurs booléens. Par exemple, 2 et 1 retourne 0. Erreurs
+
Be aware that when used on integers other than 0 and -1, bitwise operators can not be interpreted as Boolean operators. For example, 2 AND 1 returns 0.
 +
Errors
  
  Si l'un des opérandes est une chaîne, Incompatibilité de type sera soulevée.
+
    If either operand is a string, Type mismatch will be raised.
     Si les opérandes ou résultats ne sont pas dans [-32.768 à 32.767], Overflow est soulevée.
+
     If the operands or result are not in [-32768–32767], Overflow is raised.
  
Opérateurs de chaîne
+
String operators
  
L'opérateur de concaténation est +. Il dispose d'un binaire ainsi qu'une forme unaire. Le moins unaire peut également être utilisé sur les chaînes, mais n'a aucun effet. Code d'opération Résultat x + y concaténation La chaîne formée par x suivie d'y + y unaire Valeur Plus d'y - y unaire Minus Valeur des erreurs y
+
The string concatenation operator is +. It has a binary as well as a unary form. The unary minus may also be used on strings, but has no effect.
 +
Code Operation Result
 +
x + y Concatenation The string formed by x followed by y
 +
+ y Unary Plus Value of y
 +
- y Unary Minus Value of y
 +
Errors
  
  Si l'un (mais pas les deux) opérandes à une concaténation sont numériques, Incompatibilité de type sera soulevée.
+
    If either (but not both) operands to a concatenation are numeric, Type mismatch will be raised.
     Si LEN (x) + LEN (y)> 255, x + y soulèveront cordes trop longtemps.
+
     If LEN(x) + LEN(y) > 255, x + y will raise String too long.
  
Les fonctions
+
Functions
  
Fonctions ne peuvent être utilisés dans le cadre d'une expression dans une instruction; ils peuvent prendre des valeurs d'entrée entre parenthèses et de produire une valeur de retour. Par exemple, dans PRINT ABS (-1) la fonction ABS est utilisé dans une expression dans une instruction PRINT; dans Y = SQR (X) + 2 la fonction SQR est utilisé dans une expression dans une instruction LET.
+
Functions can only be used as part of an expression within a statement; they may take input values between parentheses and produce a return value. For example, in PRINT ABS(-1) the ABS function is used in an expression within a PRINT statement; in Y = SQR(X) + 2 the SQR function is used in an expression within a LET statement.
  
Certains ouvrages de référence utilisent également des termes tels que la variable système pour les fonctions qui ne prennent pas une entrée, probablement parce que dans la syntaxe GW-BASIC ces fonctions ont pas entre parenthèses, à la différence des langues dans la famille C (et même quelques notions de base modernes). Toutefois, cela est tout simplement la syntaxe GW-BASIC pour les fonctions sans entrées. Par exemple, on peut faire DEF FNA = 1: PRINT FNA dans laquelle aucun parenthèses. ABS y = ABS (x)
+
Some reference works also use terms such as system variable for functions that do not take an input, presumably since in the GW-BASIC syntax such functions have no parentheses, in contrast to the languages in the C family (and indeed some modern BASICs). However, this is simply the GW-BASIC syntax for functions without inputs. For example, one can do DEF FNA=1: PRINT FNA in which no parentheses are allowed.
 +
ABS
 +
y = ABS(x)
  
Renvoie la valeur absolue de x si x est un nombre et la valeur de x si x est une chaîne. Paramètres
+
Returns the absolute value of x if x is a number and the value of x if x is a string.
 +
Parameters
  
  x est une expression.
+
    x is an expression.
  
ASC val = ASC (char)
+
ASC
 +
val = ASC(char)
  
Renvoie le point de code (valeur ASCII) pour le premier caractère de l'omble. Paramètres
+
Returns the code point (ASCII value) for the first character of char.
 +
Parameters
  
  omble est une expression avec une valeur de chaîne.
+
    char is an expression with a string value.
  
les erreurs
+
Errors
  
  omble a une valeur numérique: incompatibilité de type.
+
    char has a numeric value: Type mismatch.
     omble est égal à "": Illegal appel de fonction.
+
     char equals "": Illegal function call.
  
ATN y = ATN (x)
+
ATN
 +
y = ATN(x)
  
Renvoie la tangente inverse de x. Paramètres
+
Returns the inverse tangent of x.
 +
Parameters
  
  x est une expression numérique qui donne l'angle en radians.
+
    x is a numeric expression that gives the angle in radians.
  
Remarques
+
Notes
  
  Sauf PC-BASIC est exécuté avec l'option double, cette fonction retourne une valeur simple précision.
+
    Unless PC-BASIC is run with the double option, this function returns a single-precision value.
     ATN (x) est différent du chiffre le moins significatif de GW-BASIC.
+
     ATN(x) differs in the least significant digit from GW-BASIC.
  
les erreurs
+
Errors
  
  x a une valeur de chaîne: Type mismatch.
+
    x has a string value: Type mismatch.
  
CDBL y = CDBL (x)
+
CDBL
 +
y = CDBL(x)
  
Convertit l'expression numérique x à une valeur double précision. les erreurs
+
Converts the numeric expression x to a double-precision value.
 +
Errors
  
  x a une valeur de chaîne: Type mismatch.
+
    x has a string value: Type mismatch.
  
CHR $ omble = CHR $ (x)
+
CHR$
 +
char = CHR$(x)
  
Renvoie le caractère avec le point de code x. Paramètres
+
Returns the character with code point x.
 +
Parameters
  
  x est une expression numérique dans l'intervalle [0-255].
+
    x is a numeric expression in the range [0—255].
  
les erreurs
+
Errors
  
  x a une valeur de chaîne: Type mismatch.
+
    x has a string value: Type mismatch.
     x est pas dans [-32768 à 32767]: Overflow.
+
     x is not in [-32768—32767]: Overflow.
     x est pas dans [0-255]: Illegal appel de fonction.
+
     x is not in [0—255]: Illegal function call.
  
CINT y = CINT (x)
+
CINT
 +
y = CINT(x)
  
Convertit l'expression numérique x à un entier signé. les erreurs
+
Converts the numeric expression x to a signed integer.
 +
Errors
  
  x a une valeur de chaîne: Type mismatch.
+
    x has a string value: Type mismatch.
     x est pas dans [-32768 à 32767]: Overflow.
+
     x is not in [-32768—32767]: Overflow.
  
COS cosinus = COS (angle)
+
COS
 +
cosine = COS(angle)
  
Renvoie le cosinus de l'angle. Sauf PC-BASIC est exécuté avec l'option double, cette fonction retourne une valeur simple précision. Paramètres
+
Returns the cosine of angle. Unless PC-BASIC is run with the double option, this function returns a single-precision value.
 +
Parameters
  
  angle est une expression numérique qui donne l'angle en radians.
+
    angle is a numeric expression that gives the angle in radians.
  
Remarques
+
Notes
  
  La valeur de retour diffère généralement de la valeur retournée par GW-BASIC dans le chiffre significatif.
+
    The return value usually differs from the value returned by GW-BASIC in the least significant figure.
  
les erreurs
+
Errors
  
  angle a une valeur de chaîne: Type mismatch.
+
    angle has a string value: Type mismatch.
  
CSNG y = CSNG (x)
+
CSNG
 +
y = CSNG(x)
  
Convertit l'expression numérique x à une valeur simple précision. les erreurs
+
Converts the numeric expression x to a single-precision value.
 +
Errors
  
  x a une valeur de chaîne: Type mismatch.
+
    x has a string value: Type mismatch.
  
CSRLIN y = CSRLIN
+
CSRLIN
 +
y = CSRLIN
  
Retourne la ligne d'écran du curseur sur la page active. La valeur de retour est dans la gamme [1-25]. Remarques
+
Returns the screen row of the cursor on the active page. The return value is in the range [1—25].
 +
Notes
  
  Cette fonction ne prend aucun argument.
+
    This function takes no arguments.
  
CVI y = CVI (s)
+
CVI
 +
y = CVI(s)
  
Convertit une chaîne de deux octets à un entier signé. Paramètres
+
Converts a two-byte string to a signed integer.
 +
Parameters
  
  s est une expression de chaîne qui représente un entier en utilisant le codage de complément à deux little-endian. Seuls les deux premiers octets sont utilisés.
+
    s is a string expression that represents an integer using little-endian two's complement encoding. Only the first two bytes are used.
  
les erreurs
+
Errors
  
  s a une valeur numérique: incompatibilité de type.
+
    s has a numeric value: Type mismatch.
  
CVS y = CVS (s)
+
CVS
 +
y = CVS(s)
  
Convertit une chaîne de quatre octets à une simple précision en virgule flottante. Paramètres
+
Converts a four-byte string to a single-precision floating-point number.
 +
Parameters
  
  s est une expression de chaîne qui représente un nombre simple précision dans Microsoft Binary Format. Seuls les quatre premiers octets sont utilisés.
+
    s is a string expression that represents a single-precision number in Microsoft Binary Format. Only the first four bytes are used.
  
les erreurs
+
Errors
  
  s a une valeur numérique: incompatibilité de type.
+
    s has a numeric value: Type mismatch.
  
CVD y = CVD (s)
+
CVD
 +
y = CVD(s)
  
Convertit une chaîne de huit octets à un double précision nombre à virgule flottante. Paramètres
+
Converts an eight-byte string to a double-precision floating-point number.
 +
Parameters
  
  s est une expression de chaîne qui représente un nombre double précision dans Microsoft Binary Format. Seuls les huit premiers octets sont utilisés.
+
    s is a string expression that represents a double-precision number in Microsoft Binary Format. Only the first eight bytes are used.
  
les erreurs
+
Errors
  
  s a une valeur numérique: incompatibilité de type.
+
    s has a numeric value: Type mismatch.
  
= DATE de $ de $ DATE (fonction)
+
DATE$ (function)
 +
s = DATE$
  
Renvoie la date du système en tant que chaîne dans le format "mm-dd-yyyy". Remarques
+
Returns the system date as a string in the format "mm-dd-yyyy".
 +
Notes
  
  Cette fonction ne prend aucun argument.
+
    This function takes no arguments.
  
ENVIRON $ valeur = ENVIRON [] $ (x)
+
ENVIRON$
 +
value = ENVIRON[ ]$(x)
  
Renvoie une variable d'environnement. Paramètres
+
Returns an environment variable.
 +
Parameters
  
x est une expression.
+
x is an expression.
  
  Si x a une valeur de chaîne, renvoie la valeur de la variable d'environnement x ou la chaîne vide si aucune variable avec le nom x est défini dans le tableau de l'environnement.
+
    If x has a string value, returns the value for the environment variable x or the empty string if no variable with the name x is set in the environment table.
     Si x a une valeur numérique, il doit être dans [1-255]. Renvoie l'entrée xième dans le tableau de l'environnement.
+
     If x has a numeric value, it must be in [1—255]. Returns the xth entry in the environment table.
  
les erreurs
+
Errors
  
  x est la chaîne vide: Illegal appel de fonction.
+
    x is the empty string: Illegal function call.
     x est un nombre non [-32768 à 32767]: Overflow.
+
     x is a number not in [-32768—32767]: Overflow.
     x est un nombre non [1-255]: Illegal appel de fonction.
+
     x is a number not in [1—255]: Illegal function call.
  
EOF is_at_end = EOF (file_num)
+
EOF
 +
is_at_end = EOF(file_num)
  
Renvoie -1 si le fichier avec le numéro file_num a atteint la fin de fichier; 0 autrement. Le fichier doit être ouvert dans le mode INPUT ou RANDOM. EOF (0) renvoie 0. Remarques
+
Returns -1 if file with number file_num has reached end-of-file; 0 otherwise. The file must be open in INPUT or RANDOM mode. EOF(0) returns 0.
 +
Notes
  
  Si file_num est ouvert à KYBD :, effectue un blocage lecture et retourne -1 si CTRL + Z est entré, 0 sinon. Le caractère saisi est ensuite fait écho à la console.
+
    If file_num is open to KYBD:, performs a blocking read and returns -1 if CTRL+Z is entered, 0 otherwise. The character entered is then echoed to the console.
  
les erreurs
+
Errors
  
  file_num a une valeur de chaîne: Type mismatch.
+
    file_num has a string value: Type mismatch.
     file_num est un nombre pas dans [-32768 à 32767]: Overflow.
+
     file_num is a number not in [-32768—32767]: Overflow.
     file_num est un nombre non [0-255]: Illegal appel de fonction.
+
     file_num is a number not in [0—255]: Illegal function call.
     file_num est pas 0 ou le numéro d'un fichier ouvert: Numéro de fichier incorrect.
+
     file_num is not 0 or the number of an open file: Bad file number.
     Le fichier avec le numéro file_num est en SORTIE ou en mode APPEND: le mode de fichier incorrect.
+
     The file with number file_num is in OUTPUT or APPEND mode: Bad file mode.
  
ERDEV zéro = ERDEV
+
ERDEV
 +
zero = ERDEV
  
Renvoie 0. Remarques
+
Returns 0.
 +
Notes
  
  Dans GW-BASIC, renvoie la valeur d'une erreur de périphérique.
+
    In GW-BASIC, returns the value of a device error.
     Cette fonction est pas implémentée dans PC-BASIC.
+
     This function is not implemented in PC-BASIC.
     Cette fonction ne prend aucun argument.
+
     This function takes no arguments.
  
ERDEV $ empty = ERDEV [] $
+
ERDEV$
 +
empty = ERDEV[ ]$
  
Renvoie la chaîne vide. Remarques
+
Returns the empty string.
 +
Notes
  
  Dans GW-BASIC, retourne le nom de l'appareil d'une erreur de périphérique.
+
    In GW-BASIC, returns the device name of a device error.
     Cette fonction est pas implémentée dans PC-BASIC.
+
     This function is not implemented in PC-BASIC.
     Cette fonction ne prend aucun argument.
+
     This function takes no arguments.
  
ERL ERROR_LINE = ERL
+
ERL
 +
error_line = ERL
  
Retourne le numéro de ligne où la dernière erreur a été soulevée. Remarques
+
Returns the line number where the last error was raised.
 +
Notes
  
  Si l'erreur a été soulevée par une déclaration directe, retourne 65535.
+
    If the error was raised by a direct statement, returns 65535.
     Si aucune erreur n'a été relevée, renvoie 0.
+
     If no error has been raised, returns 0.
     Cette fonction ne prend aucun argument.
+
     This function takes no arguments.
  
ERR error_code = ERR
+
ERR
 +
error_code = ERR
  
Retourne le numéro de la dernière erreur. Remarques
+
Returns the number of the last error.
 +
Notes
  
  Si aucune erreur n'a été relevée, renvoie 0.
+
    If no error has been raised, returns 0.
     Si la dernière erreur était une erreur de syntaxe soulevée par une déclaration directe, renvoie 0.
+
     If the last error was a Syntax error raised by a direct statement, returns 0.
     Cette fonction ne prend aucun argument.
+
     This function takes no arguments.
  
EXP y = EXP (x)
+
EXP
 +
y = EXP(x)
  
Renvoie l'exponentielle de x, soit e à la puissance x. Paramètres
+
Returns the exponential of x, i.e. e to the power x.
 +
Parameters
  
  x est une expression de number- valeur.
+
    x is a number- valued expression.
  
Remarques
+
Notes
  
  Sauf PC-BASIC est exécuté avec l'option double, cette fonction retourne une valeur simple précision.
+
    Unless PC-BASIC is run with the double option, this function returns a single-precision value.
     La valeur de retour diffère parfois dans le chiffre le moins significatif de GW-BASIC. Pour de grandes valeurs de x, la différence peut être de 3 chiffres.
+
     The return value sometimes differs in the least significant digit from GW-BASIC. For large values of x, the difference may be 3 digits.
  
les erreurs
+
Errors
  
  x a une valeur de chaîne: Type mismatch.
+
    x has a string value: Type mismatch.
     x est plus grand que le logarithme naturel de la valeur maximale simple précision: Overflow.
+
     x is larger than the natural logarithm of the maximum single-precision value: Overflow.
  
EXTERR zéro = EXTERR (x)
+
EXTERR
 +
zero = EXTERR(x)
  
Renvoie 0. Paramètres
+
Returns 0.
 +
Parameters
  
  x est une expression numérique dans [0-3].
+
    x is a numeric expression in [0—3].
  
Remarques
+
Notes
  
  Dans GW-BASIC, cette fonction renvoie des informations sur l'erreur à partir de MS-DOS.
+
    In GW-BASIC, this function returns extended error information from MS-DOS.
     Cette fonction est pas implémentée dans PC-BASIC.
+
     This function is not implemented in PC-BASIC.
  
les erreurs
+
Errors
  
  x a une valeur de chaîne: Type mismatch.
+
    x has a string value: Type mismatch.
     x est pas dans [-32768 à 32767]: Overflow.
+
     x is not in [-32768—32767]: Overflow.
     x est pas dans [0-3]: Illegal appel de fonction.
+
     x is not in [0—3]: Illegal function call.
  
FIX ensemble = FIX (nombre)
+
FIX
 +
whole = FIX(number)
  
Number Renvoie tronquée vers zéro. Paramètres
+
Returns number truncated towards zero.
 +
Parameters
  
  nombre est une expression numérique.
+
    number is a numeric expression.
  
Remarques
+
Notes
  
  FIX tronque vers zéro: il supprime la partie fractionnaire. En revanche, INT tronque vers l'infini négatif. Pour x négatifs FIX (x) -INT (x) = 1.
+
    FIX truncates towards zero: it removes the fractional part. By contrast, INT truncates towards negative infinity. For negative x, FIX(x)-INT(x)=1.
  
les erreurs
+
Errors
  
  nombre est une chaîne d'expression: incompatibilité de type.
+
    number is a string expression: Type mismatch.
  
résultat FN = FN [] nom [(arg_0 [, Arg_1] ...)]
+
FN
 +
result = FN[ ]name [(arg_0 [, arg_1] ...)]
  
Évalue la fonction définie par l'utilisateur préalablement défini avec le nom DEF FN. Les espaces entre les FN et le nom sont en option. Paramètres
+
Evaluates the user-defined function previously defined with DEF FN name. Spaces between FN and name are optional.
 +
Parameters
  
  est le nom d'une fonction définie précédemment.
+
    name is the name of a previously defined function.
     arg_0, Arg_1, ... sont des expressions, étant donné que les paramètres de la fonction.
+
     arg_0, arg_1, ... are expressions, given as parameters to the function.
  
les erreurs
+
Errors
  
  Aucune fonction nommée nom est défini: la fonction de l'utilisateur non défini.
+
    No function named name is defined: Undefined user function.
     Le nombre de paramètres diffère de la définition de la fonction: Erreur de syntaxe.
+
     The number of parameters differs from the function definition: Syntax error.
     Le type d'un ou plusieurs paramètres diffère de la fonction définition: incompatibilité de type.
+
     The type of one or more parameters differs from the function definition: Type mismatch.
     Le type de retour est incompatible avec sigil du nom de la fonction: Type de décalage.
+
     The return type is incompatible with the function name's sigil: Type mismatch.
     La fonction appelée est récursive ou mutuellement récursives: Out of memory.  
+
     The function being called is recursive or mutually recursive: Out of memory.  
  
FRE free_mem = FRE (x)
+
FRE
 +
free_mem = FRE(x)
  
Renvoie la mémoire de base disponibles. Paramètres
+
Returns the available BASIC memory.
 +
Parameters
  
x est une expression.
+
x is an expression.
  
  Si x a une valeur numérique, il est ignoré.
+
    If x has a numeric value, it is ignored.
     Si x a une valeur de chaîne, la collecte des ordures est effectué avant de retourner la mémoire disponible.  
+
     If x has a string value, garbage collection is performed before returning available memory.  
  
HEX $ hex_repr = HEX $ (x)
+
HEX$
 +
hex_repr = HEX$(x)
  
Retourne une chaîne avec la représentation hexadécimale de x. Paramètres
+
Returns a string with the hexadecimal representation of x.
 +
Parameters
  
  x est une expression numérique dans [-32768 à 65535]. Les valeurs de x négatifs sont présentés comme complément à deux.
+
    x is a numeric expression in [-32768—65535]. Values for negative x are shown as two's-complement.
  
les erreurs
+
Errors
  
  x est pas dans [-32768 à 65535]: Overflow.
+
    x is not in [-32768—65535]: Overflow.
     x a une valeur de chaîne: Type mismatch.
+
     x has a string value: Type mismatch.
  
INKEY $ key = INKEY $
+
INKEY$
 +
key = INKEY$
  
Renvoie une pression de touche de la mémoire tampon du clavier. Si la mémoire tampon du clavier est vide, renvoie la chaîne vide. Dans le cas contraire, la valeur de retour est une chaîne de caractères d'un ou deux contenant le code e-ASCII de la touche enfoncée. Remarques
+
Returns one key-press from the keyboard buffer. If the keyboard buffer is empty, returns the empty string. Otherwise, the return value is a one- or two- character string holding the e-ASCII code of the pressed key.
 +
Notes
  
  Cette fonction ne prend aucun argument.
+
    This function takes no arguments.
     Quand une touche F1-F10 de fonction est pressée, INKEY $ renvoie les lettres de la macro associée - à moins que cette macro a été mis à vider la déclaration KEY, auquel cas il renvoie le code e-ASCII pour la touche de fonction.
+
     When a function key F1–F10 is pressed, INKEY$ will return the letters of the associated macro — unless this macro has been set to empty with the KEY statement, in which case it returns the e-ASCII code for the function key.
  
Code = INP INP (port)
+
INP
 +
code = INP(port)
  
Renvoie la valeur d'un port de la machine émulée. Paramètres
+
Returns the value of an emulated machine port.
 +
Parameters
  
port est une expression numérique dans [0-65535]. Port Effect & h60 Retourne le scancode clavier pour la touche actuelle enfoncée ou la dernière touche relâchée. Les scancodes retournés par INP (& h60) sont ceux qui figurent dans le tableau des scancodes clavier. Si une clé est actuellement vers le bas, la valeur de retour est son scancode. Si aucune touche est enfoncée, la valeur de retour est le scancode de la dernière touche relâchée, incrémenté de 128. & H201 Renvoie la valeur du port de jeu (port joystick). Cette valeur est construite comme suit: Bit Signification 0 joystick 2 x axe 1 joystick 1 y 2 axes joystick 1 axe x 3 joystick 2 y 4 axes joystick 2 bouton 1 5 joystick 1 bouton 2 6 joystick 1 bouton 1 7 joystick 2 bouton 2 les bits de boutons sont 0 lorsque le bouton est tiré, 1 sinon. Les valeurs de l'axe sont normalement 0 mais sont mis à 1 par OUT & H201, x, puis retomber à 0 après un délai. Plus le délai est élevé, plus la valeur de l'axe. d'autres valeurs renvoie zéro. Remarques
+
port is a numeric expression in [0—65535].
 +
port Effect
 +
&h60 Returns the keyboard scancode for the current key pressed or the last key released. The scancodes returned by INP(&h60) are those listed in the keyboard scancodes table. If a key is currently down, the return value is its scancode. If no key is down, the return value is the scancode of the last key released, incremented by 128.
 +
&h201 Returns the value of the game port (joystick port). This value is constructed as follows:
 +
Bit Meaning
 +
0 joystick 2 x-axis
 +
1 joystick 1 y-axis
 +
2 joystick 1 x-axis
 +
3 joystick 2 y-axis
 +
4 joystick 2 button 1
 +
5 joystick 1 button 2
 +
6 joystick 1 button 1
 +
7 joystick 2 button 2
 +
The button bits are 0 when the button is fired, 1 otherwise. The axis values are normally 0 but are set to 1 by OUT &h201, x and then fall back to 0 after a delay. The longer the delay, the higher the axis value.
 +
other values Returns zero.
 +
Notes
  
  Seul un nombre limité de ports de la machine sont émulés dans PC-BASIC.
+
    Only a limited number of machine ports are emulated in PC-BASIC.
  
les erreurs
+
Errors
  
  port est pas dans [-32768 à 65535]: Overflow.
+
    port is not in [-32768—65535]: Overflow.
     port a une valeur de chaîne: Type mismatch.
+
     port has a string value: Type mismatch.
  
ENTREE $ CHARS = entrée [] $ (num_chars [[#] file_num])
+
INPUT$
 +
chars = INPUT[ ]$ (num_chars [, [#] file_num])
  
Retourne une chaîne de caractères NUM_CHARS à partir du clavier ou, si file_num est fourni, à partir d'un fichier texte. Paramètres
+
Returns a string of num_chars characters from the keyboard or, if file_num is provided, from a text file.
 +
Parameters
  
  num_chars est une expression numérique dans [1-255].
+
    num_chars is a numeric expression in [1—255].
     file_num est une expression numérique qui renvoie le numéro d'un fichier texte ouvert en mode INPUT. Le # est facultative et n'a aucun effet.
+
     file_num is a numeric expression that returns the number of a text file opened in INPUT mode. The # is optional and has no effect.
  
Remarques
+
Notes
  
  Ceci est un blocage lu.  Il attendra des caractères s'il n'y en a pas dans la mémoire tampon.
+
    This is a blocking read. It will wait for characters if there are none in the buffer.
     Tous les caractères de contrôle, à l'exception Ctrl + Pause, Ctrl + Arrêt défil et Pause sont transmis à la chaîne par $ INPUT. Ctrl + Pause et l'exécution de pause Ctrl + Arrêt défil Pause alors que les arrêts jusqu'à ce qu'une autre touche est pressée (et non lu).
+
     All control characters except Ctrl+Break, Ctrl+Scroll Lock and Pause are passed to the string by INPUT$. Ctrl+Break and Ctrl+Scroll Lock break execution whereas Pause halts until another key is pressed (and not read).
     Lors de la lecture à partir du clavier directement ou par KYBD :, touches fléchées, Del, Début, Fin, Pg Up, Pg Dn sont passés comme des caractères NUL. Les touches de fonction sont ignorées si elles sont les événements piégés, sinon la fonction-clé macro remplacement est actif comme normal.
+
     When reading from the keyboard directly or through KYBD:, arrow keys, Del, Home, End, Pg Up, Pg Dn are passed as NUL characters. Function keys are ignored if they are event-trapped, otherwise function-key macro replacement is active as normal.
  
les erreurs
+
Errors
  
  num_chars est pas dans [-32.768 à 32.767]: Overflow.
+
    num_chars is not in [-32768—32767]: Overflow.
     num_chars est pas dans [1-255]: Illegal appel de fonction.
+
     num_chars is not in [1—255]: Illegal function call.
     file_num est pas un fichier ouvert: Numéro de fichier incorrect.
+
     file_num is not an open file: Bad file number.
     file_num est inférieur à zéro: Illegal appel de fonction.
+
     file_num is less than zero: Illegal function call.
     file_num est supérieure à 32767: Overflow.
+
     file_num is greater than 32767: Overflow.
     file_num est pas ouvert pour INPUT: mode de fichier incorrect.
+
     file_num is not open for INPUT: Bad file mode.
     num_chars ou file_num sont des chaînes: Incompatibilité de type.
+
     num_chars or file_num are strings: Type mismatch.
     file_num est ouvert à un port COM et ceci est la première entrée, LINE INPUT ou INPUT $ appel sur ce port depuis le tampon a rempli complètement (c.-à-LOF (file_num) est devenu zéro): débordement de mémoire tampon de communication.
+
     file_num is open to a COM port and this is the first INPUT, LINE INPUT or INPUT$ call on that port since the buffer has filled up completely (i.e. LOF(file_num) has become zero): Communication buffer overflow.
  
INSTR position = INSTR ([début,] parent, enfant)
+
INSTR
 +
position = INSTR([start,] parent, child)
  
Renvoie l'emplacement de la première occurrence de l'enfant substring dans parent. Paramètres
+
Returns the location of the first occurrence of the substring child in parent.
 +
Parameters
  
  parents et enfants sont les expressions de chaîne.
+
    parent and child are string expressions.
     commencer est une expression numérique dans [1-255], en précisant la position à partir de où chercher; si non spécifié, la recherche commence au caractère 1.
+
     start is a numeric expression in [1—255], specifying the starting position from where to look; if not specified, the search starts at character 1.
  
Remarques
+
Notes
  
  Si l'enfant ne sont pas une sous-parent se produisant à ou avant le début, INSTR renvoie 0.
+
    If child is not a substring of parent occurring at or before start, INSTR returns 0.
  
les erreurs
+
Errors
  
  démarrage a une valeur de chaîne ou d'un parent ou d'un enfant ont des valeurs numériques: incompatibilité de type.
+
    start has a string value or parent or child have numeric values: Type mismatch.
     début est pas dans [-32768 à 32767]: Overflow.
+
     start is not in [-32768—32767]: Overflow.
     début est pas dans [1-255]: Illegal appel de fonction.
+
     start is not in [1—255]: Illegal function call.
  
ensemble INT = INT (nombre)
+
INT
 +
whole = INT(number)
  
Retourne le nombre tronqué vers l'infini négatif. Paramètres
+
Returns number truncated towards negative infinity.
 +
Parameters
  
  nombre est une expression numérique.
+
    number is a numeric expression.
  
Remarques
+
Notes
  
  FIX tronque vers zéro: il supprime la partie fractionnaire. En revanche, INT tronque vers l'infini négatif. Pour x négatifs FIX (x) -INT (x) = 1.
+
    FIX truncates towards zero: it removes the fractional part. By contrast, INT truncates towards negative infinity. For negative x, FIX(x)-INT(x)=1.
  
les erreurs
+
Errors
  
  nombre est une expression de chaîne, Incompatibilité de type.
+
    number is a string expression, Type mismatch .
  
IOCTL $ result = IOCTL [] $ ([#] file_num)
+
IOCTL$
 +
result = IOCTL[ ]$ ([#] file_num)
  
Déclenche illégale appel de fonction. Remarques
+
Raises Illegal function call.
 +
Notes
  
  Dans GW-BASIC, IOCTL $ lit la réponse à IOCTL à partir d'un appareil.
+
    In GW-BASIC, IOCTL$ reads the reply to IOCTL from a device.
     Cette fonction est pas implémentée dans PC-BASIC.
+
     This function is not implemented in PC-BASIC.
  
les erreurs
+
Errors
  
  file_num a une valeur de chaîne: Type mismatch.
+
    file_num has a string value: Type mismatch.
     file_num est pas dans [-32.768 à 32.767]: Overflow.
+
     file_num is not in [-32768—32767]: Overflow.
     file_num est pas un fichier ouvert: Numéro de fichier incorrect.
+
     file_num is not an open file: Bad file number.
     Dans le cas contraire: Illegal appel de fonction
+
     Otherwise: Illegal function call
  
LEFT $ enfant = LEFT $ (parent, num_chars)
+
LEFT$
 +
child = LEFT$(parent, num_chars)
  
Renvoie les caractères les plus à gauche NUM_CHARS de parent. Paramètres
+
Returns the leftmost num_chars characters of parent.
 +
Parameters
  
  parent est une expression de chaîne.
+
    parent is a string expression.
     num_chars est une expression numérique dans [0-255].
+
     num_chars is a numeric expression in [0—255].
  
Remarques
+
Notes
  
  Si num_chars est zéro ou parent est vide, LEFT $ retourne une chaîne vide.
+
    If num_chars is zero or parent is empty, LEFT$ returns an empty string.
     Si num_chars est supérieure à la longueur de la mère, le rendement parent.
+
     If num_chars is greater than the length of parent, returns parent.
  
les erreurs
+
Errors
  
  parent a une valeur numérique ou num_chars a une valeur chaîne: Incompatibilité de type.
+
    parent has a numeric value or num_chars has a string value: Type mismatch.
     num_chars est pas dans [-32.768 à 32.767]: Overflow.
+
     num_chars is not in [-32768—32767]: Overflow.
     num_chars est pas dans [0-255]: Illegal appel de fonction.
+
     num_chars is not in [0—255]: Illegal function call.
  
longueur LEN = LEN (string)
+
LEN
 +
length = LEN(string)
  
Retourne le nombre de caractères dans la chaîne. Paramètres
+
Returns the number of characters in string.
 +
Parameters
  
  chaîne est une expression de chaîne.
+
    string is a string expression.
  
les erreurs
+
Errors
  
  chaîne a une valeur numérique: incompatibilité de type.
+
    string has a number value: Type mismatch.
  
emplacement LOC = LOC (file_num)
+
LOC
 +
location = LOC(file_num)
  
Renvoie l'emplacement actuel dans le fichier ouvert sous le numéro file_num.
+
Returns the current location in the file opened under number file_num.
  
  Si le fichier est ouvert pour INPUT, OUTPUT ou APPEND, LOC renvoie le nombre de blocs de 128 octets lus ou écrits depuis l'ouverture du fichier.
+
    If the file is opened for INPUT, OUTPUT or APPEND, LOC returns the number of 128-byte blocks read or written since opening the file.
     Si le fichier est ouvert pour RANDOM, LOC renvoie le numéro d'enregistrement dernier lu ou écrit.
+
     If the file is opened for RANDOM, LOC returns the record number last read or written.
     Si le fichier est ouvert pour un dispositif COM, LDC renvoie le nombre de caractères dans le tampon d'entrée, avec un maximum de 255.
+
     If the file is opened to a COM device, LOC returns the number of characters in the input buffer, with a maximum of 255.
     Si le fichier est ouvert à KYBD :, LOC renvoie 0.
+
     If the file is opened to KYBD:, LOC returns 0.
  
Paramètres
+
Parameters
  
  file_num est une expression numérique dans l'intervalle [0-255].
+
    file_num is a numeric expression in the range [0—255].
  
Remarques
+
Notes
  
  file_num ne doit pas être précédé d'un #.
+
    file_num must not be preceded by a #.
     Dans SORTIE ou le mode APPEND, avant écrit tout retourne LOC 0. Après le caractère 128e est écrit, LOC renvoie 1.
+
     In OUTPUT or APPEND mode, before any writes LOC returns 0. After the 128th character is written, LOC returns 1.
     En mode INPUT, avant toute lit retourne LOC 1. Après le caractère 129e est lu, LOC renvoie 2.
+
     In INPUT mode, before any reads LOC returns 1. After the 129th character is read, LOC returns 2.
  
les erreurs
+
Errors
  
  file_num a une valeur de chaîne: Type mismatch.
+
    file_num has a string value: Type mismatch.
     file_num est pas dans [-32.768 à 32.767]: Overflow.
+
     file_num is not in [-32768—32767]: Overflow.
     file_num est pas dans [0-255]: Illegal appel de fonction.
+
     file_num is not in [0—255]: Illegal function call.
     file_num est pas un fichier ouvert: Numéro de fichier incorrect.
+
     file_num is not an open file: Bad file number.
     file_num est ouvert à un dispositif LPT: mode de fichier incorrect.
+
     file_num is open to a LPT device: Bad file mode.
  
longueur LOF = LOF (file_num)
+
LOF
 +
length = LOF(file_num)
  
Retourne le nombre d'octets dans le fichier ouvert sous file_num. Paramètres
+
Returns the number of bytes in the file open under file_num.
 +
Parameters
  
  file_num est une expression numérique dans l'intervalle [0-255].
+
    file_num is a numeric expression in the range [0—255].
  
Remarques
+
Notes
  
  Si file_num est ouvert à un COM: dispositif, LOF renvoie le nombre d'octets libres dans le tampon d'entrée.
+
    If file_num is open to a COM: device, LOF returns the number of bytes free in the input buffer.
  
les erreurs
+
Errors
  
  file_num a une valeur de chaîne: Type mismatch.
+
    file_num has a string value: Type mismatch.
     file_num est pas dans [-32.768 à 32.767]: Overflow.
+
     file_num is not in [-32768—32767]: Overflow.
     file_num est pas dans [0-255]: Illegal appel de fonction.
+
     file_num is not in [0—255]: Illegal function call.
     file_num est pas un fichier ouvert: Numéro de fichier incorrect.
+
     file_num is not an open file: Bad file number.
     file_num est ouvert à un dispositif LPT: mode de fichier incorrect.
+
     file_num is open to a LPT device: Bad file mode.
  
LOG y = LOG (x)
+
LOG
 +
y = LOG(x)
  
Renvoie le logarithme naturel de x. Paramètres
+
Returns the natural logarithm of x.
 +
Parameters
  
  x est une expression numérique supérieure à zéro.
+
    x is a numeric expression greater than zero.
  
Remarques
+
Notes
  
  Sauf PC-BASIC est exécuté avec l'option double, cette fonction retourne une valeur simple précision.
+
    Unless PC-BASIC is run with the double option, this function returns a single-precision value.
     LOG (x) peut différer de GW-BASIC par 1 dans le chiffre le moins significatif.
+
     LOG(x) can differ from GW-BASIC by 1 in the least significant digit.
  
les erreurs
+
Errors
  
  x a une valeur de chaîne: Type mismatch.
+
    x has a string value: Type mismatch.
     x est nul ou négatif: Illegal appel de fonction.
+
     x is zero or negative: Illegal function call.
  
Position LPOS = LPOS (printer_number)
+
LPOS
 +
position = LPOS(printer_number)
  
Renvoie la position de la colonne pour une imprimante. Paramètres
+
Returns the column position for a printer.
 +
Parameters
  
  printer_number est une expression numérique dans [0-3]. Si elle est 0 ou 1, la position LPT1 est retournée. Si elle est 2, LTP2 :; 3, LPT3 :.
+
    printer_number is a numeric expression in [0—3]. If it is 0 or 1, the position for LPT1: is returned. If it is 2, LPT2:; 3, LPT3:.
  
Remarques
+
Notes
  
  Dans GW-BASIC, en entrant dans le mode direct, LPT1: (mais pas d'autres imprimantes) est rouge et sa position est remise à 1. Ce ne sont pas mis en œuvre dans PC-BASIC.
+
    In GW-BASIC, when entering direct mode, LPT1: (but not other printers) is flushed and its position is reset to 1. This is not implemented in PC-BASIC.
  
les erreurs
+
Errors
  
  printer_number a une valeur de chaîne: Type mismatch.
+
    printer_number has a string value: Type mismatch.
     printer_number est pas dans [-32768 à 32767]: Overflow.
+
     printer_number is not in [-32768—32767]: Overflow.
     printer_number est pas dans [0-3]: Illegal appel de fonction.
+
     printer_number is not in [0—3]: Illegal function call.
  
MID $ (function) substring = MID $ (string, la position [, longueur])
+
MID$ (function)
 +
substring = MID$(string, position [, length])
  
Renvoie une sous-chaîne de chaîne commençant à la position, à compter de 1. La chaîne a une longueur de longueur si elle est spécifiée, par défaut 1. Paramètres
+
Returns a substring of string starting at position, counting from 1. The substring has length length if specified, defaulting to 1.
 +
Parameters
  
  chaîne est une expression de chaîne.
+
    string is a string expression.
     position est une expression numérique entre 1 et la longueur de la chaîne, y compris.
+
     position is a numeric expression between 1 and the string length, inclusive.
     longueur est une expression numérique dans [0-255].
+
     length is a numeric expression in [0—255].
  
les erreurs
+
Errors
  
  chaîne a une valeur de nombre ou la position ou la longueur des valeurs de chaîne: Type mismatch.
+
    string has a number value or position or length have string values: Type mismatch.
     la position ou la longueur ne sont pas dans [-32768 à 32767]: Overflow.
+
     position or length are not in [-32768—32767]: Overflow.
     la position est pas dans [1-255]: Illegal appel de fonction.
+
     position is not in [1—255]: Illegal function call.
     longueur est pas dans [0-255]: Illegal appel de fonction.
+
     length is not in [0—255]: Illegal function call.
  
MKD $ octets = MKD $ (double)
+
MKD$
 +
bytes = MKD$(double)
  
Renvoie l'interne de 8 octets Microsoft Binary Format représentation d'un numéro de double précision. les erreurs
+
Returns the internal 8-byte Microsoft Binary Format representation of a double- precision number.
 +
Errors
  
  double a une valeur de chaîne: Type mismatch.
+
    double has a string value: Type mismatch.
  
MKI $ octets = MKI $ (int)
+
MKI$
 +
bytes = MKI$(int)
  
Retourne le 2 octets représentation little-endian interne d'un entier. les erreurs
+
Returns the internal 2-byte little-endian representation of an integer.
 +
Errors
  
  int a une valeur de chaîne: Type mismatch.
+
    int has a string value: Type mismatch.
     int est pas dans [-32768 à 32767]: Overflow.
+
     int is not in [-32768—32767]: Overflow.
  
MKS $ octets = MKS $ (simple)
+
MKS$
 +
bytes = MKS$(single)
  
Renvoie l'interne de 8 octets Microsoft Binary Format représentation d'un nombre de précision unique. les erreurs
+
Returns the internal 8-byte Microsoft Binary Format representation of a single- precision number.
 +
Errors
  
  seule a une valeur de chaîne: Type mismatch.
+
    single has a string value: Type mismatch.
  
Octobre $ octal = octobre $ (x)
+
OCT$
 +
octal = OCT$(x)
  
Retourne une chaîne avec la représentation octal de x. Paramètres
+
Returns a string with the octal representation of x.
 +
Parameters
  
  x est une expression numérique dans [-32768 à 65535]. Les valeurs de x négatifs sont présentés comme complément à deux.
+
    x is a numeric expression in [-32768—65535]. Values for negative x are shown as two's-complement.
  
les erreurs
+
Errors
  
  x a une valeur de chaîne: Type mismatch.
+
    x has a string value: Type mismatch.
     x est pas dans [-32768 à 65535]: Overflow.
+
     x is not in [-32768—65535]: Overflow.
  
valeur PEEK = PEEK (adresse)
+
PEEK
 +
value = PEEK(address)
  
Renvoie la valeur de la mémoire au niveau du segment * 16 + adresse où segment est le segment courant réglé avec DEF SEG. Paramètres
+
Returns the value of the memory at segment * 16 + address where segment is the current segment set with DEF SEG.
 +
Parameters
  
  adresse est une expression numérique dans [-32768-65535]. Les valeurs négatives sont interprétées comme complément à leurs deux.
+
    address is a numeric expression in [-32768—65535]. Negative values are interpreted as their two's complement.
  
Remarques
+
Notes
  
  La mémoire est que partiellement émulée dans PC-BASIC. Voir modèle de mémoire pour les adresses prises en charge. En dehors des zones émulé, PEEK retourne 0.
+
    The memory is only partly emulated in PC-BASIC. See Memory model for supported addresses. Outside emulated areas, PEEK returns 0.
     Les valeurs pour adresse particulière de la mémoire peuvent être préréglés sur la ligne de commande en utilisant l'option de coup d'oeil. Ceci peut être utilisé pour assurer la compatibilité avec les anciens programmes. Ces valeurs remplacent les valeurs vidéo ou de segment de données, si elles sont dans ces endroits.
+
     Values for particular memory address can be preset on the command line using the peek option. This can be used for compatibility with old programs. These values will override video or data segment values, if they are in those locations.
  
les erreurs
+
Errors
  
  adresse a une valeur de chaîne: Type mismatch.
+
    address has a string value: Type mismatch.
     adresse se trouve pas dans [-32768 à 65535]: Overflow.
+
     address is not in [-32768—65535]: Overflow.
  
PEN (fonction) x = PEN (mode)
+
PEN (function)
 +
x = PEN(mode)
  
Lit le crayon optique. Qu'est-ce que cette fonction retourne dépend du mode: Mode Valeur de retour 0 Boolean; si le stylet a été en baisse depuis le dernier sondage. 1 x coordonnée du dernier stylo position 2 coordonnée y de la dernière plume position 3 Boolean; si le stylo est actuellement en baisse de 4 x coordonnée de la position actuelle du stylet 5 coordonnée y de la position actuelle du stylo 6 caractères coordonnée de ligne de la dernière plume position 7 de la colonne de caractères coordonnées de la dernière plume position 8 caractères coordonnée de ligne de la colonne actuelle de 9 caractères de position de plume coordonner des courants Paramètres de position du stylet
+
Reads the light pen. What this function returns depends on mode:
 +
mode Return value
 +
0 Boolean; whether the light pen has been down since last poll.
 +
1 x coordinate of last pen down position
 +
2 y coordinate of last pen down position
 +
3 Boolean; whether the pen is currently down
 +
4 x coordinate of current pen position
 +
5 y coordinate of current pen position
 +
6 character row coordinate of last pen down position
 +
7 character column coordinate of last pen down position
 +
8 character row coordinate of current pen position
 +
9 character column coordinate of current pen position
 +
Parameters
  
  mode est une expression numérique dans [0-9].
+
    mode is a numeric expression in [0—9].
  
Remarques
+
Notes
  
  Dans PC-BASIC, pour stylo lu bouton de la souris enfoncé. Pour la position du stylet lire la position du pointeur de la souris.
+
    In PC-BASIC, for pen down read mouse button pressed. For pen position read mouse pointer position.
  
les erreurs
+
Errors
  
  mode a une valeur de chaîne: Type mismatch.
+
    mode has a string value: Type mismatch.
     mode est pas dans [-32768-32767]: Overflow.
+
     mode is not in [-32768—32767]: Overflow.
     mode est pas dans [0-9]: Illegal appel de fonction.
+
     mode is not in [0—9]: Illegal function call.
  
PLAY (fonction) = longueur PLAY (voix)
+
PLAY (function)
 +
length = PLAY(voice)
  
Retourne le nombre de notes dans la file d'attente de musique de fond. La valeur de retour est dans [0-16]. Paramètres
+
Returns the number of notes in the background music queue. The return value is in [0—16].
 +
Parameters
  
  la voix est une expression numérique dans [0-255]. Si la syntaxe = {PCjr | tandy}, indique pour quel canal ton de voix le nombre de notes doit être retourné. Si la voix est pas dans [0-2], la file d'attente pour la voix 0 est renvoyé. Pour d'autres choix de la syntaxe, la valeur de la voix n'a pas d'effet.
+
    voice is a numeric expression in [0—255]. If syntax={pcjr|tandy}, indicates for which tone voice channel the number of notes is to be returned. If voice is not in [0—2], the queue for voice 0 is returned. For other choices of syntax, the voice value has no effect.
  
Remarques
+
Notes
  
  Il y a au plus 16 notes dans la file d'attente de la musique. Certains manuels GW-BASIC prétendent qu'il peut y avoir jusqu'à 32, mais seulement dans la réalité lecture revient au cours des 16 dernières notes.
+
    There are at most 16 notes in the music queue. Some GW-BASIC manuals claim there can be up to 32, but in reality PLAY only returns at the last 16 notes.
  
les erreurs
+
Errors
  
  voix a une valeur de chaîne: Type mismatch.
+
    voice has a string value: Type mismatch.
     la voix est pas dans [0-255]: Illegal appel de fonction.
+
     voice is not in [0—255]: Illegal function call.
     la voix est pas dans [-32768 à 32767]: Overflow.
+
     voice is not in [-32768—32767]: Overflow.
  
PPAFM transformed_coord = PPAFM (original_coord, fn)
+
PMAP
 +
transformed_coord = PMAP(original_coord, fn)
  
Plans entre viewport et logique (WINDOW) coordonne. Si aucune VIEW a été défini, les coordonnées de viewport sont coordonnées physiques.
+
Maps between viewport and logical (WINDOW) coordinates. If no VIEW has been set, the viewport coordinates are physical coordinates.
  
En fonction de la valeur de fn, PPAFM transforme de logique de coordonnées viewport ou vice versa: fn Valeur de retour 0 retour viewport donné x x 1 retour viewport logique y étant donné y logique 2 retour x logiques viewport donnée x 3 retour logique y viewport donnée y Paramètres
+
Depending on the value of fn, PMAP transforms from logical to viewport coordinates or vice versa:
 +
fn Return value
 +
0 return viewport x given logical x
 +
1 return viewport y given logical y
 +
2 return logical x given viewport x
 +
3 return logical y given viewport y
 +
Parameters
  
  fn est une expression numérique dans [0-3].
+
    fn is a numeric expression in [0—3].
  
Remarques
+
Notes
  
  Dans un premier temps, en mode texte, PPAFM renvoie 0.
+
    Initially, in text mode, PMAP returns 0.
     Dans GW-BASIC, PPAFM se comporte anormalement sur les changements d'écran, où il renvoie parfois des résultats comme si le dernier réglage de WINDOW avait persisté. Ce comportement n'a pas été mis en œuvre dans PC-BASIC.
+
     In GW-BASIC, PMAP behaves anomalously on SCREEN changes, where it sometimes returns results as if the last WINDOW setting had persisted. This behaviour is not implemented in PC-BASIC.
  
les erreurs
+
Errors
  
  Tout des paramètres a une valeur de chaîne: Type mismatch.
+
    Any of the parameters has a string value: Type mismatch.
     Une coordonnée physique est pas dans [-32768 à 32767]: Overflow.
+
     A physical coordinate is not in [-32768—32767]: Overflow.
     fn est pas dans [-32768 à 32767]: Overflow.
+
     fn is not in [-32768—32767]: Overflow.
     fn est pas dans [0-3]: Illegal appel de fonction.
+
     fn is not in [0—3]: Illegal function call.
  
POINT (coordonnées courant) coord = POINT (fn)
+
POINT (current coordinate)
 +
coord = POINT(fn)
  
Retours une coordonnée active de l'écran graphique. Cela est généralement la dernière position à laquelle un pixel a été tracée, le second coin donné dans une commande LIGNE, ou le centre de la fenêtre si rien n'a été tracée. fn est une expression numérique dans [0-3].
+
Returns a currently active coordinate of the graphics screen. This is usually the last position at which a pixel has been plotted, the second corner given in a LINE command, or the centre of the viewport if nothing has been plotted. fn is a numeric expression in [0—3].
  
La coordonnée de retour dépend de la valeur de fn: fn Valeur de retour 0 viewport x 1 viewport y 2 x logique 3 Paramètres y logiques
+
The coordinate returned depends on the value of fn:
 +
fn Return value
 +
0 viewport x
 +
1 viewport y
 +
2 logical x
 +
3 logical y
 +
Parameters
  
  fn est une expression numérique dans [0-3].
+
    fn is a numeric expression in [0—3].
  
Remarques
+
Notes
  
  En mode texte, renvoie la coordonnée active de tout mode graphique précédent; si aucun mode graphique est actif, renvoie 0.
+
    In text mode, returns the active coordinate of any previous graphics mode; if no graphics mode has been active, returns 0.
  
les erreurs
+
Errors
  
  fn a une valeur de chaîne: Type mismatch.
+
    fn has a string value: Type mismatch.
     fn est pas dans [-32768 à 32767]: Overflow.
+
     fn is not in [-32768—32767]: Overflow.
     fn est pas dans [0-3]: Illegal appel de fonction.
+
     fn is not in [0—3]: Illegal function call.
  
POINT (attribut pixel) attrib = POINT (x, y)
+
POINT (pixel attribute)
 +
attrib = POINT(x, y)
  
Renvoie l'attribut du pixel à la logique de coordonnées x, y. Paramètres
+
Returns the attribute of the pixel at logical coordinate x,y.
 +
Parameters
  
  x, y sont des expressions numériques dans [-32768 à 32767].
+
    x, y are numeric expressions in [-32768—32767].
  
Remarques
+
Notes
  
  Si x, y est en dehors de l'écran, renvoie -1.
+
    If x,y is outside the screen, returns -1.
  
les erreurs
+
Errors
  
  La fonction est appelée en mode texte: Illegal appel de fonction.
+
    Function is called in text mode: Illegal function call.
     x ou y a une valeur de chaîne: Type mismatch.
+
     x or y has a string value: Type mismatch.
     x ou y ou les coordonnées physiques qu'ils traduisent ne sont pas dans [-32768 à 32767]: Overflow.
+
     x or y or the physical coordinates they translate into are not in [-32768—32767]: Overflow.
  
POS pos = POS (fictif)
+
POS
 +
pos = POS(dummy)
  
Renvoie la position de la colonne actuelle du curseur, dans l'intervalle [1-80]. Paramètres
+
Returns the current cursor column position, in the range [1—80].
 +
Parameters
  
  dummy est une expression valide de tout type; sa valeur n'a pas d'effet.
+
    dummy is a valid expression of any type; its value has no effect.
  
DROIT $ enfant = RIGHT $ (parent, num_chars)
+
RIGHT$
 +
child = RIGHT$(parent, num_chars)
  
Renvoie les caractères les plus à droite NUM_CHARS de parent. Si num_chars est zéro ou parent est vide, RIGHT $ retourne une chaîne vide. Si num_chars est supérieure à la longueur de la mère, le rendement parent. Paramètres
+
Returns the rightmost num_chars characters of parent. If num_chars is zero or parent is empty, RIGHT$ returns an empty string. If num_chars is greater than the length of parent, returns parent.
 +
Parameters
  
  parent est une expression de chaîne.
+
    parent is a string expression.
     num_chars est une expression numérique dans [0-255].
+
     num_chars is a numeric expression in [0—255].
  
les erreurs
+
Errors
  
  num_chars a une valeur de chaîne: Type mismatch.
+
    num_chars has a string value: Type mismatch.
     num_chars est pas dans [-32.768 à 32.767]: Overflow.
+
     num_chars is not in [-32768—32767]: Overflow.
     num_chars est pas dans [0-255]: Illegal appel de fonction.
+
     num_chars is not in [0—255]: Illegal function call.
  
RND aléatoire = RND [(x)]
+
RND
 +
random = RND[(x)]
  
Renvoie un nombre pseudo-aléatoire dans l'intervalle [0-1). x est une expression numérique. Si x est égal à zéro, RND répète le dernier numéro pseudo-aléatoire. Si x est supérieur à zéro, un nouveau nombre pseudo-aléatoire est retournée. Si x est négatif, la valeur de x est utilisée pour générer un nouveau germe de nombre aléatoire; après cela, un nouveau nombre pseudo-aléatoire est retournée. La graine est générée d'une manière différente que par HASARD. Remarques
+
Returns a pseudorandom number in the interval [0—1). x is a numeric expression. If x is zero, RND repeats the last pseudo-random number. If x is greater than zero, a new pseudorandom number is returned. If x is negative, the value of x is used to generate a new random number seed; after that, a new pseudorandom number is returned. The seed is generated in a different way than by RANDOMIZE.
 +
Notes
  
  La fonction RND de PC-BASIC génère des nombres pseudo-aléatoires à travers un générateur de congruence linéaire, avec modulo 224, multiplicateur 214.013 et incrémenter 2531011. Ce reproduit exactement les nombres aléatoires de la RND de GW-BASIC.
+
    PC-BASIC's RND function generates pseudo-random numbers through a linear congruential generator with modulo 224, multiplier 214013 and increment 2531011. This exactly reproduces the random numbers of GW-BASIC's RND.
     Il convient de noter, toutefois, que ce soit un très mauvais générateur de nombres aléatoires: ses paramètres impliquent une période de récurrence de 224, ce qui signifie que, après moins de 17 millions d'appels RND se terminera autour et commencer à courir à travers la même série exacte des nombres partout encore. RND ne doit pas être utilisé pour la cryptographie, les simulations scientifiques ou toute autre chose à distance sérieux.
+
     It should be noted, however, that this is a very poor random number generator: its parameters imply a recurrence period of 224, meaning that after less than 17 million calls RND will wrap around and start running through the exact same series of numbers all over again. RND should not be used for cryptography, scientific simulations or anything else remotely serious.
  
les erreurs
+
Errors
  
  x a une valeur de chaîne: Type mismatch.
+
    x has a string value: Type mismatch.
  
ECRAN (fonction) value = SCREEN (ligne, colonne [fn])
+
SCREEN (function)
 +
value = SCREEN(row, column [, fn])
  
Renvoie le point de code ou attribut de couleur pour le caractère à la position rangée, col. Paramètres
+
Returns the code point or colour attribute for the character at position row, col.
 +
Parameters
  
  ligne est une expression numérique dans la gamme [1-25].
+
    row is a numeric expression in the range [1—25].
     col est une expression numérique entre 1 et la largeur de l'écran (40 ou 80).
+
     col is a numeric expression between 1 and the screen width (40 or 80).
     fn est une expression numérique dans [0-255]. Si elle est nulle ou non spécifié, le point du caractère de code est retourné. Si elle est non nulle, en mode texte l'attribut est renvoyée; dans d'autres écrans, 0 est renvoyé.
+
     fn is a numeric expression in [0—255]. If it is zero or not specified, the code point of the character is returned. If it is non-zero, in text mode the attribute is returned; in other screens, 0 is returned.
  
les erreurs
+
Errors
  
  Tout paramètre a une valeur de chaîne: Type mismatch.
+
    Any parameter has a string value: Type mismatch.
     fn est pas dans [0-255]: Illegal appel de fonction.
+
     fn is not in [0—255]: Illegal function call.
     fn est pas dans [-32768 à 32767]: Overflow.
+
     fn is not in [-32768—32767]: Overflow.
     ligne est pas à l'intérieur du courant secteur VIEW PRINT: Illegal appel de fonction.
+
     row is not inside the current VIEW PRINT area: Illegal function call.
     KEY ON et rang = 25: Illegal appel de fonction.
+
     KEY ON and row=25: Illegal function call.
     col est pas dans [1, width]: Illegal appel de fonction.
+
     col is not in [1, width]: Illegal function call.
  
signe SGN = SGN (nombre)
+
SGN
 +
sign = SGN(number)
  
Renvoie le signe du nombre: 1 pour le positif, 0 pour zéro et -1 pour le négatif. Paramètres
+
Returns the sign of number: 1 for positive, 0 for zero and -1 for negative.
 +
Parameters
  
  nombre est une expression numérique.
+
    number is a numeric expression.
  
les erreurs
+
Errors
  
  nombre a une valeur de chaîne: Type mismatch.
+
    number has a string value: Type mismatch.
  
SIN sinus = SIN (angle)
+
SIN
 +
sine = SIN(angle)
  
Retourne le sinus de l'angle. Paramètres
+
Returns the sine of angle.
 +
Parameters
  
  angle est une expression numérique donnant l'angle en radians.
+
    angle is a numeric expression giving the angle in radians.
  
Remarques
+
Notes
  
  Sauf PC-BASIC est exécuté avec l'option double, cette fonction retourne une valeur simple précision.
+
    Unless PC-BASIC is run with the double option, this function returns a single-precision value.
     Le sinus retourné généralement diffère de la valeur retournée par GW-BASIC dans le chiffre significatif.
+
     The sine returned usually differs from the value returned by GW-BASIC in the least significant figure.
  
les erreurs
+
Errors
  
  angle a une valeur de chaîne: Type mismatch.
+
    angle has a string value: Type mismatch.
  
SPACE $ espaces = SPACE $ (nombre)
+
SPACE$
 +
spaces = SPACE$(number)
  
Retourne une chaîne d'espaces numériques. Paramètres
+
Returns a string of number spaces.
 +
Parameters
  
  nombre est une expression numérique dans [0-255].
+
    number is a numeric expression in [0—255].
  
les erreurs
+
Errors
  
  nombre a une valeur de chaîne: Type mismatch.
+
    number has a string value: Type mismatch.
     nombre est pas dans [-32768 à 32767]: Overflow.
+
     number is not in [-32768—32767]: Overflow.
     nombre est pas dans [0-255]: Illegal appel de fonction.
+
     number is not in [0—255]: Illegal function call.
  
SQR root = SQR (nombre)
+
SQR
 +
root = SQR(number)
  
Renvoie la racine carrée du nombre. Paramètres
+
Returns the square root of number.
 +
Parameters
  
  nombre est une expression numérique.
+
    number is a numeric expression.
  
Remarques
+
Notes
  
  Sauf PC-BASIC est exécuté avec l'option double, cette fonction retourne une valeur simple précision.
+
    Unless PC-BASIC is run with the double option, this function returns a single-precision value.
  
les erreurs
+
Errors
  
  nombre a une valeur de chaîne: Incompatibilité de type
+
    number has a string value: Type mismatch
  
STICK pos = STICK (axe)
+
STICK
 +
pos = STICK(axis)
  
Renvoie une coordonnée d'un axe de joystick. Toutes les coordonnées retournées sont dans l'intervalle [1-254] avec 128 indiquant la position neutre. axe Valeur de retour 0 1er joystick coordonnée x 1 1er joystick coordonnée y 2 2ème manette coordonnée x 3 2ème manette coordonnée y Paramètres
+
Returns a coordinate of a joystick axis. All coordinates returned are in the range [1—254] with 128 indicating the neutral position.
 +
axis Return value
 +
0 1st joystick x coordinate
 +
1 1st joystick y coordinate
 +
2 2nd joystick x coordinate
 +
3 2nd joystick y coordinate
 +
Parameters
  
  axe est une expression numérique dans [0-3] et indique quel axe à lire.
+
    axis is a numeric expression in [0—3] and indicates which axis to read.
  
les erreurs
+
Errors
  
  axe a une valeur de chaîne: Incompatibilité de type
+
    axis has a string value: Type mismatch
     axe est à [-32768-32767]: Overflow.
+
     axis is not in [-32768—32767]: Overflow.
     axe est à [0-3]: Illegal appel de fonction.
+
     axis is not in [0—3]: Illegal function call.
  
STR $ rééd = STR $ (nombre)
+
STR$
 +
repr = STR$(number)
  
Renvoie la représentation de chaîne du nombre. Paramètres
+
Returns the string representation of number.
 +
Parameters
  
  nombre est une expression numérique.
+
    number is a numeric expression.
  
les erreurs
+
Errors
  
  nombre a une valeur de chaîne: Type mismatch.
+
    number has a string value: Type mismatch.
  
STRIG (fonction) result = STRIG (mode)
+
STRIG (function)
 +
result = STRIG(mode)
  
Renvoie l'état des boutons joystick de déclenchement. STRIG renvoie les résultats suivants, toutes les valeurs booléennes: Mode Valeur de retour 0 1er joystick, 1er déclencheur a été enfoncé depuis le dernier sondage. Une première manette de commande, premier déclencheur est actuellement enfoncée. 2 2e joystick, 1er déclencheur a été enfoncé depuis le dernier sondage. 3 2e joystick, 1er déclencheur est actuellement pressé. 4 1er joystick, 2e déclencheur a été enfoncé depuis le dernier sondage. 5 première manette, deuxième gâchette est actuellement enfoncée. 6 2e joystick, 2e déclencheur a été enfoncé depuis le dernier sondage. 7 deuxième manette, deuxième gâchette est actuellement enfoncée. Paramètres
+
Returns the status of the joystick trigger buttons. STRIG returns the following results, all Boolean values:
 +
mode Return value
 +
0 1st joystick, 1st trigger has been pressed since last poll.
 +
1 1st joystick, 1st trigger is currently pressed.
 +
2 2nd joystick, 1st trigger has been pressed since last poll.
 +
3 2nd joystick, 1st trigger is currently pressed.
 +
4 1st joystick, 2nd trigger has been pressed since last poll.
 +
5 1st joystick, 2nd trigger is currently pressed.
 +
6 2nd joystick, 2nd trigger has been pressed since last poll.
 +
7 2nd joystick, 2nd trigger is currently pressed.
 +
Parameters
  
  mode est une expression numérique dans [0-7].
+
    mode is a numeric expression in [0—7].
  
Remarques
+
Notes
  
  La fonction STRIG retourne des résultats corrects quel que soit le STRIG ON état ou si STRIG (0) a été appelé en premier.
+
    The STRIG function returns correct results regardless of the STRIG ON status or whether STRIG(0) has been called first.
  
les erreurs
+
Errors
  
  mode a une valeur de chaîne: Type mismatch.
+
    mode has a string value: Type mismatch.
     mode est pas dans [-32768-32767]: Overflow.
+
     mode is not in [-32768—32767]: Overflow.
     mode est pas dans [0-7]: Illegal appel de fonction.
+
     mode is not in [0—7]: Illegal function call.
  
STRING $ string = STRING $ (longueur, char)
+
STRING$
 +
string = STRING$(length, char)
  
Renvoie une chaîne de longueur fois le caractère de l'omble. Paramètres
+
Returns a string of length times character char.
 +
Parameters
  
  Si l'omble est une expression numérique, il doit être dans [0-255] et est interprété comme le point le caractère de code.
+
    If char is a numeric expression, it must be in [0—255] and is interpreted as the code point of the character.
     Si l'omble est une expression de chaîne, son premier caractère est utilisé.
+
     If char is a string expression, its first character is used.
  
les erreurs
+
Errors
  
  longueur a une valeur de chaîne: Type mismatch.
+
    length has a string value: Type mismatch.
     carbonisation est la chaîne vide: Illegal appel de fonction.
+
     char is the empty string: Illegal function call.
     char ou longueur est pas dans [-32768 à 32767]: Overflow.
+
     char or length is not in [-32768—32767]: Overflow.
     char ou longueur est pas dans [0-255]: Illegal appel de fonction.
+
     char or length is not in [0—255]: Illegal function call.
  
TAN TAN tangente = (angle)
+
TAN
 +
tangent = TAN(angle)
  
Renvoie la tangente de l'angle. Paramètres
+
Returns the tangent of angle.
 +
Parameters
  
  angle est une expression numérique donnant l'angle en radians.
+
    angle is a numeric expression giving the angle in radians.
  
Remarques
+
Notes
  
  Sauf PC-BASIC est exécuté avec l'option double, cette fonction retourne une valeur simple précision.
+
    Unless PC-BASIC is run with the double option, this function returns a single-precision value.
     La tangente retourné généralement diffère de la valeur retournée par GW-BASIC dans le chiffre significatif.
+
     The tangent returned usually differs from the value returned by GW-BASIC in the least significant figure.
     Pour angle proche de multiples de π / 2, la tangente est divergente ou proche de zéro. Les valeurs retournées auront très faible précision dans ces cas.
+
     For angle close to multiples of π/2, the tangent is divergent or close to zero. The values returned will have very low precision in these cases.
  
les erreurs
+
Errors
  
  angle a une valeur de chaîne: Type mismatch.
+
    angle has a string value: Type mismatch.
  
TIME $ (fonction) temps = TIME $
+
TIME$ (function)
 +
time = TIME$
  
Renvoie l'heure actuelle BASIC sous la forme "HH: mm: ss". Remarques
+
Returns the current BASIC time in the form "HH:mm:ss".
 +
Notes
  
  Cette fonction ne prend aucun argument.
+
    This function takes no arguments.
  
TIMER (fonction) secondes = TIMER
+
TIMER (function)
 +
seconds = TIMER
  
Retourne le nombre de secondes depuis minuit sur l'horloge de base interne. Remarques
+
Returns the number of seconds since midnight on the internal BASIC clock.
 +
Notes
  
  mises à jour TIMER dans les tiques de 1/20 seconde.
+
    TIMER updates in ticks of 1/20 second.
     Les deux moins significatifs octets de TIMER sont souvent utilisés comme une graine pour le générateur de nombres pseudo-aléatoires par RANDOMIZE TIMER. Étant donné que ces octets ne prennent des valeurs à partir d'un ensemble limité, qui est en fait pas particulièrement bonne semence aléatoire. Cependant, le générateur de nombres pseudo-aléatoires inclus avec GW-BASIC et PC-BASIC est si faible qu'il ne devrait pas être utilisé pour quelque chose de sérieux de toute façon.
+
     The least-significant two bytes of TIMER are often used as a seed for the pseudorandom number generator through RANDOMIZE TIMER. Since these bytes only take values from a limited set, that's not in fact a particularly good random seed. However, the pseudorandom number generator included with GW-BASIC and PC-BASIC is so weak that it should not be used for anything serious anyway.
     Cette fonction ne prend aucun argument.
+
     This function takes no arguments.
  
valeur = USR USR [n] (expr)
+
USR
 +
value = USR[n](expr)
  
Retourne zéro. Paramètres
+
Returns zero.
 +
Parameters
  
  n est un chiffre [0-9].
+
    n is a digit [0—9].
     expr est une expression.
+
     expr is an expression.
  
Remarques
+
Notes
  
  Dans GW-BASIC, appelle une fonction code machine et renvoie sa valeur de retour.
+
    In GW-BASIC, calls a machine-code function and returns its return value.
     Cette fonction est pas implémentée dans PC-BASIC.
+
     This function is not implemented in PC-BASIC.
  
les erreurs
+
Errors
  
  n est pas un chiffre [0-9]: Erreur de syntaxe.
+
    n is not a digit [0—9]: Syntax error.
  
valeur VAL = VAL (string)
+
VAL
 +
value = VAL(string)
  
Renvoie la valeur numérique de la chaîne d'expression de chaîne. Parsing arrête dès que le premier caractère est rencontré qui ne peut pas faire partie d'un nombre. Si aucun caractère sont analysés, VAL renvoie zéro. Voir la section sur les littéraux numériques pour les formats numériques reconnus. Remarques
+
Returns the numeric value of the string expression string. Parsing stops as soon as the first character is encountered that cannot be part of a number. If no characters are parsed, VAL returns zero. See the section on numeric literals for the recognised number formats.
 +
Notes
  
  Les espaces avant ou même à l'intérieur d'un certain nombre sont ignorées: VAL ( "1 0") renvoie 10.
+
    Spaces before or even inside a number are ignored: VAL(" 1 0") returns 10.
     Si la chaîne contient un des caractères de séparation ASCII CHR $ (28) (fichier séparateur), CHR $ (29) (séparateur de groupe) ou CHR $ (31) (séparateur d'unité), VAL retourne zéro. Ce n'est pas le cas avec CHR $ (30) (fiche séparateur). Ce comportement est conforme à la GW-BASIC.
+
     If string contains one of the ASCII separator characters CHR$(28) (file separator), CHR$(29) (group separator) or CHR$(31) (unit separator), VAL returns zero. This is not the case with CHR$(30) (record separator). This behaviour conforms to GW-BASIC.
  
les erreurs
+
Errors
  
  chaîne a une valeur numérique: incompatibilité de type.
+
    string has a number value: Type mismatch.
  
VARPTR pointeur = VARPTR ({nom | #file_num})
+
VARPTR
 +
pointer = VARPTR({name|#file_num})
  
Retourne l'adresse mémoire du nom de la variable ou du fichier bloc de contrôle du numéro de dossier file_num. Paramètres
+
Returns the memory address of variable name or of the File Control Block of file number file_num.
 +
Parameters
  
  nom est une variable définie précédemment ou élément de tableau entièrement indexés.
+
    name is a previously defined variable or fully indexed array element.
     file_num est un numéro de dossier juridique.
+
     file_num is a legal file number.
  
Remarques
+
Notes
  
  VARPTR peut être utilisé avec PEEK pour lire la représentation interne d'une variable.
+
    VARPTR can be used with PEEK to read a variable's internal representation.
  
les erreurs
+
Errors
  
  nom n'a pas été défini précédemment: Illegal appel de fonction.
+
    name has not been previously defined: Illegal function call.
     file_num a une valeur de chaîne: Type mismatch.
+
     file_num has a string value: Type mismatch.
     file_num est pas dans [1, MAX_FILES], où MAX_FILES est le nombre maximal de fichiers tel que défini par l'option max-fichiers: Numéro de fichier incorrect.
+
     file_num is not in [1, max_files], where max_files is the maximum number of files as set by the max-files option: Bad file number.
  
VARPTR $ pointeur = VARPTR $ (nom)
+
VARPTR$
 +
pointer = VARPTR$(name)
  
Retourne l'adresse mémoire du nom de la variable sous la forme d'une chaîne de 3 octets. Le premier octet est la longueur de l'enregistrement des points de pointeur à:
+
Returns the memory address of variable name in the form of a 3-byte string. The first byte is the length of the record the pointer points to:
  
 
2
 
2
 
+
    for integers
  pour les entiers
+
 
+
 
3
 
3
 
+
    for strings (length + pointer to string space)
  pour cordes (longueur + pointeur vers l'espace de chaîne)
+
 
+
 
4
 
4
 
+
    for single-precision floats
  pour les flotteurs simple précision
+
 
+
 
8
 
8
 +
    for double-precision floats
  
  pour les flotteurs double précision
+
The last two bytes are the pointer address (as returned by VARPTR) in little-endian order.
 +
Errors
  
Les deux derniers octets sont l'adresse de pointeur (comme retourné par VARPTR) pour little-endian. les erreurs
+
    name has not been previously defined: Illegal function call.
  
  nom n'a pas été défini précédemment: Illegal appel de fonction.
+
Statements
  
Déclarations
+
A program line is composed of a line number and one or more statements. If multiple statements are put on one line, they must be separated by colons :. Statements may be empty. Each statement has its own idiosyncratic syntax.
  
Une ligne de programme est composé d'un numéro de ligne et un ou plusieurs états. Si plusieurs états sont mis sur une seule ligne, ils doivent être séparés par des virgules. Les déclarations peuvent être vides. Chaque énoncé a sa propre syntaxe idiosyncrasique.
+
Many reference works on GW-BASIC distinguish commands and statements; this distinction stems from the original Dartmouth design of the BASIC language, in which commands were not part of the language and could not be used in programs, but were rather used to control the interpreter itself. However, in GW-BASIC this distinction is less useful and therefore this reference includes what is traditionally thought of as commands in the category of statements.
 +
AUTO
 +
AUTO [line_number|.] [, [increment]]
  
De nombreux ouvrages de référence sur GW-BASIC distinguent les commandes et les déclarations; cette distinction découle de la conception Dartmouth originale du langage BASIC, dans lequel les commandes ne faisaient pas partie de la langue et ne pouvait pas être utilisé dans les programmes, mais ont été plutôt utilisé pour contrôler l'interprète lui-même. Cependant, dans GW-BASIC cette distinction est moins utile et donc cette référence comprend ce qui est traditionnellement considéré comme des commandes dans la catégorie des déclarations. AUTO AUTO [line_number |.] [, [Incrément]]
+
Start automatic line numbering. Line numbers are automatically generated when Enter is pressed. If a program line exists at a generated line number, a * is shown after the line number. To avoid overwriting this line, leave it empty and press Enter. To stop automatic line numbering, press Ctrl+Break or Ctrl+C. The line being edited at that point is not saved. BASIC will return to command mode, even if AUTO was run from a program line.
 +
Parameters
  
Lancer la numérotation automatique des lignes. Les numéros de ligne sont générés automatiquement lorsque vous appuyez sur Entrée. Si une ligne de programme existe à un numéro de ligne généré, a * est affiché après le numéro de la ligne. Pour éviter d'écraser cette ligne, laissez-le vide et appuyez sur Entrée. Pour arrêter la numérotation automatique de la ligne, appuyez sur Ctrl + Pause ou Ctrl + C. La ligne en cours d'édition à ce moment ne sont pas sauvegardées. BASIC sera de retour en mode commande, même si AUTO a été exécuté à partir d'une ligne de programme. Paramètres
+
    Line numbering starts at line_number, if specified. If . is specified, line numbering starts at the last program line that was stored. Otherwise, line numbering starts at 10.
 +
    Each next line number is incremented by increment, if specified. If a comma is used without specifying an increment, the last increment specified in an AUTO command is used. If not, increment defaults to 10.
  
  La numérotation des lignes commence à line_number, si spécifié.  Si .  est spécifié, la numérotation des lignes commence à la dernière ligne qui a été stocké de programme.  Dans le cas contraire, la numérotation des lignes commence à 10.
+
Errors
    Chaque numéro de la ligne suivante est incrémenté par incrément, si spécifié.  Si une virgule est utilisée sans spécifier un incrément, le dernier incrément spécifié dans une commande AUTO est utilisé.  Sinon, incrémenter par défaut à 10.
+
  
les erreurs
+
    line_number is not an unsigned-integer value in [0—65529]: Syntax error.
 +
    When automatic line numbering is enabled and Enter is pressed on an empty line with number larger than 65519: Undefined line number.
 +
    increment is 0: Illegal function call.
  
  line_number est pas une valeur non signée entier dans [0-65529]: Erreur de syntaxe.
+
BEEP
    Lorsque la numérotation automatique de la ligne est activée et vous appuyez sur Entrée sur une ligne vide avec un nombre plus grand que 65519: numéro de ligne défini.
+
BEEP
    incrément est 0: Illegal appel de fonction.
+
  
BIP BIP
+
Beep the speaker at 800Hz for 0.25s.
 +
Errors
  
Beep le haut-parleur à 800Hz pour 0,25s. les erreurs
+
    If a Syntax error is raised, the beep is still produced.
  
  Si une erreur de syntaxe est soulevée, le bip est encore produit.
+
BEEP (switch)
 +
BEEP {ON|OFF}
  
BEEP (switch) BEEP {ON | OFF}
+
This statement has no effect.
 +
Notes
  
Cette déclaration n'a aucun effet. Remarques
+
    Only legal with the syntax={pcjr|tandy} option.
 +
    On PCjr and Tandy computers, BEEP OFF would turn off the internal speaker. On PC-BASIC, both the internal and the external speaker are emulated through the same sound system.
  
  Seulement juridique avec le = {PCjr | tandy} syntaxe option.
+
BLOAD
    Sur les ordinateurs PCjr et Tandy, BEEP OFF serait éteindre le haut-parleur interne.  Le PC-BASIC, à la fois interne et haut-parleur externe sont émulées par le même système de sonorisation.
+
BLOAD file_spec [, offset]
  
BLOAD BLOAD file_spec [, offset]
+
Loads a memory image file into memory.
 +
Parameters
  
Charge un fichier d'image de mémoire dans la mémoire. Paramètres
+
    The string expression file_spec is a valid file specification indicating the file to read the memory image from.
 +
    offset is a numeric expression in the range [-32768—65535]. It indicates an offset in the current DEF SEG segment where the file is to be stored. If not specified, the offset stored in the BSAVE file will be used. If negative, its two's complement will be used.
  
  Le file_spec d'expression de chaîne est une spécification de fichier valide indiquant le fichier à lire l'image de la mémoire à partir.
+
Errors
    offset est une expression numérique dans l'intervalle [-32.768 à 65.535].  Il indique un décalage dans le segment actuel DEF SEG où le fichier doit être stocké.  Si non spécifié, le décalage stocké dans le fichier BSAVE sera utilisé.  Si elle est négative, le complément de ses deux sera utilisé.
+
  
les erreurs
+
    The loaded file is not in BSAVE format: Bad file mode.
 +
    file_spec contains disallowed characters: Bad file number (on CAS1:); Bad file name (on disk devices).
 +
    file_spec has a numeric value: Type mismatch.
 +
    offset is not in the range [-32768—65535]: Overflow.
  
  Le fichier chargé est pas au format BSAVE: le mode de fichier incorrect.
+
BSAVE
    file_spec contient des caractères non autorisés: Numéro de fichier incorrect (sur CAS1 :);  Nom de fichier incorrect (sur les unités de disque).
+
BSAVE file_spec, offset, length
    file_spec a une valeur numérique: incompatibilité de type.
+
    offset est pas dans l'intervalle [-32768 à 65535]: Overflow.
+
  
BSAVE BSAVE file_spec, offset, longueur
+
Saves a region of memory to an image file.
 +
Parameters
  
Enregistre une région de mémoire dans un fichier image. Paramètres
+
    The string expression file_spec is a valid file specification indicating the file to write to.
 +
    offset is a numeric expression in the range [-32768—65535] indicating the offset into the current DEF SEG segment from where to start reading.
 +
    length is a numeric expression in the range [-32768—65535] indicating the number of bytes to read.
 +
    If offset or length are negative, their two's complement will be used.
  
  Le file_spec d'expression de chaîne est une spécification de fichier valide indiquant le fichier à écrire.
+
Errors
    offset est une expression numérique dans l'intervalle [-32.768 à 65.535] indiquant le décalage dans le segment courant DEF SEG par où commencer la lecture.
+
    longueur est une expression numérique dans l'intervalle [-32768 à 65535] indiquant le nombre d'octets à lire.
+
    Si le décalage ou la longueur sont négatives, leur complément à deux sera utilisé.
+
  
les erreurs
+
    file_spec has a numeric value: Type mismatch.
 +
    file_spec contains disallowed characters: Bad file number (on CAS1:); Bad file name (on disk devices).
 +
    offset is not in the range [-32768—65535]: Overflow.
 +
    length is not in the range [-32768—65535]: Overflow.
  
  file_spec a une valeur numérique: incompatibilité de type.
+
CALL
    file_spec contient des caractères non autorisés: Numéro de fichier incorrect (sur CAS1 :);  Nom de fichier incorrect (sur les unités de disque).
+
CALL address_var [( p0 [, p1] ... )]
    offset est pas dans l'intervalle [-32768 à 65535]: Overflow.
+
    longueur est pas dans l'intervalle [-32768 à 65535]: Overflow.
+
  
CALL CALL address_var [(p0 [p1] ...)]
+
Does nothing.
 +
Notes
  
Ne fait rien. Remarques
+
    In GW-BASIC, CALL executes a machine language subroutine.
 +
    This statement is not implemented in PC-BASIC.
  
  Dans GW-BASIC, CALL exécute un sous-programme en langage machine.
+
Parameters
    Cette déclaration n'a pas été mis en œuvre dans PC-BASIC.
+
  
Paramètres
+
    address_var is a numeric variable.
 +
    p0, p1, ... are variables.
  
  address_var est une variable numérique.
+
Errors
    P0, P1, ... sont des variables.
+
  
les erreurs
+
    address_var is a string variable: Type mismatch.
 +
    address_var is a literal: Syntax error.
  
  address_var est une variable chaîne: Incompatibilité de type.
+
CALLS
    address_var est un littéral: Erreur de syntaxe.
+
CALLS address_var [( p0 [, p1] ... )]
  
APPELS APPELS address_var [(p0 [p1] ...)]
+
Does nothing.
 +
Notes
  
Ne fait rien. Remarques
+
    In GW-BASIC, CALLS executes a FORTRAN subroutine.
 +
    This statement is not implemented in PC-BASIC.
  
  Dans GW-BASIC, APPELLE exécute un sous-programme FORTRAN.
+
Parameters
    Cette déclaration n'a pas été mis en œuvre dans PC-BASIC.
+
  
Paramètres
+
    address_var is a numeric variable.
 +
    p0, p1, ... are variables.
  
  address_var est une variable numérique.
+
Errors
    P0, P1, ... sont des variables.
+
  
les erreurs
+
    address_var is a string variable: Type mismatch.
 +
    address_var is a literal: Syntax error.
  
  address_var est une variable chaîne: Incompatibilité de type.
+
CHAIN
    address_var est un littéral: Erreur de syntaxe.
+
CHAIN [MERGE] file_spec [, [line_number_expr] [, ALL] [, DELETE range [, ign]]]
  
CHAINE [MERGE] file_spec [[line_number_expr] [, ALL] [, DELETE plage [, ign]]]
+
Loads a program from file into memory and runs it, optionally transferring variables.
  
Charge un programme à partir du fichier dans la mémoire et l'exécute, le transfert éventuellement des variables.
+
    If ALL is specified, all variables are transferred. If not, the variables specified in a COMMON statement are transferred.
 +
    If MERGE is specified, the loaded program is merged into the existing program. To be able to use this, the program file indicated by file_spec must be in plain text format.
 +
    If DELETE is specified, the range of line numbers is deleted from the existing code before the merge. This is pointless without MERGE.
  
Si All Est specified, Toutes les cessionnaires des variables. Sont  Dans le cas contraire, les variables spécifiées dans une déclaration commune sont transférés.
+
Parameters
    Si MERGE est spécifié, le programme chargé est fusionné dans le programme existant.  Pour pouvoir l'utiliser, le fichier de programme indiqué par file_spec doit être au format texte brut.
+
    Si SUPPR est spécifié, la gamme des numéros de ligne est supprimé du code existant avant la fusion.  Cela est inutile sans MERGE.
+
  
Paramètres
+
    The string expression file_spec is a valid file specification indicating the file to read the program from.
 +
    line_number_expr is a numeric expression. It will be interpreted as a line number in the new program and execution will start from this line number. If line_number_expr is negative, it will be interpreted as its two's-complement.
 +
    range is a line number range of which the closing line number is specified and exists before the merge.
 +
    ign is optional and ignored.
  
Le file_spec d'expression de chaîne is a spécification de fichier valide indiquant le programme Initiation à lire à partir chier.
+
Notes
    line_number_expr est une expression numérique.  Il sera interprété comme un numéro de ligne dans le nouveau programme et l'exécution va commencer à partir de ce numéro de ligne.  Si line_number_expr est négatif, il sera interprété comme son complément à deux.
+
    plage est une plage de numéro de ligne dont le numéro de ligne de fermeture est spécifiée et existe avant la fusion.
+
    ign est optionnel et ignoré.
+
  
Remarques
+
    CHAIN preserves the OPTION BASE setting.
 +
    COMMON variables remain COMMON for the next CHAIN.
 +
    Only if ALL is specified, DEF FN definitions are preserved.
 +
    Only if MERGE is specified, DEFINT, DEFSTR, DEFSNG, DEFDBL definitions are preserved.
 +
    If specified, ALL must precede DELETE; if unspecified, no comma must be put in its place and only two commas should precede DELETE.
  
CHAÎNE conserver le reglage OPTION DE BASE.
+
Errors
    variables communes restent COMMON pour la chaîne suivante.
+
    Seulement si ALL est spécifié, les définitions DEF FN sont préservés.
+
    Seulement si MERGE est spécifié, définitions DEFINT, DEFSTR, DefSng, DEFDBL sont préservés.
+
    Si spécifié, ALL doit précéder SUPPRIMER;  si non spécifié, pas de virgule doit être mis à sa place et que deux virgules doit précéder DELETE.
+
  
les erreurs
+
    file_spec has a numeric value: Type mismatch.
 +
    file_spec contains disallowed characters: Bad file number (on CAS1:); Bad file name (on disk devices).
 +
    The file specified in file_spec cannot be found: File not found.
 +
    MERGE is specified and the loaded program was not saved in plain-text mode: Bad file mode.
 +
    A line number in range is greater than 65529: Syntax error.
 +
    If a Syntax error is raised by CHAIN, no lines are deleted and the new program is not loaded.
 +
    The closing line number in range does not exist: Illegal function call
 +
    If line_number_expr does not evaluate to an existing line number in the new program, Illegal function call is raised but the load or merge is being performed.
  
file_spec une Une valeur numérique: incompatibilité de Type.
+
CHDIR
    file_spec contient des caractères non autorisés: Numéro de fichier incorrect (sur CAS1 :);  Nom de fichier incorrect (sur les unités de disque).
+
CHDIR dir_spec
    Le fichier spécifié dans file_spec ne peut pas être trouvé: Fichier non trouvé.
+
    MERGE est spécifié et le programme chargé n'a pas été enregistré en mode texte clair: le mode de fichier incorrect.
+
    Un numéro de ligne dans la plage est supérieure à 65529: Erreur de syntaxe.
+
    Si une erreur de syntaxe est soulevée par CHAIN, pas de lignes sont supprimés et le nouveau programme ne sont pas chargés.
+
    Le numéro de la ligne de clôture dans la gamme n'existe pas: Illegal appel de fonction
+
    Si line_number_expr n'évalue pas à un numéro de ligne existante dans le nouveau programme, Illégal appel de fonction est élevée, mais la charge ou de fusion est en cours d'exécution.
+
  
CHDIR CHDIR dir_spec
+
Change the current directory on a disk device to dir_spec. Each disk device has its own current directory.
 +
Parameters
  
Changer le répertoire courant sur un périphérique de disque à dir_spec. Chaque unité de disque a son propre répertoire en cours. Paramètres
+
    The string expression dir_spec is a valid file specification indicating an existing directory on a disk device.
  
Le dir_spec d'expression de chaîne is a spécification de fichier valide indiquant non folder existant Sur un périphérique de disque.
+
Errors
  
les erreurs
+
    No matching path is found: Path not found.
 +
    dir_spec has a numeric value: Type mismatch.
 +
    dir_spec is empty: Bad file name.
  
Aucun chemin correspondant is found: Chemin d'Accès introuvable.
+
CIRCLE
    dir_spec a une valeur numérique: incompatibilité de type.
+
CIRCLE [STEP] (x, y), radius [, [colour] [, [start] [, [end] [, aspect]]]
    dir_spec est vide: Nom de fichier incorrect.
+
  
CIRCLE CIRCLE [STEP] (x, y), le rayon [[color] [, [start] [, [fin] [aspect]]]
+
Draw an ellipse or ellipse sector.
 +
Parameters
  
Dessiner une ellipse ou d'un secteur ellipse. Paramètres
+
    The midpoint of the ellipse is at (x,y). If STEP is specified, the midpoint is (x,y) away from the current position.
 +
    radius is the radius, in pixels, along the long axis.
 +
    colour is the colour attribute.
 +
    If start and end are specified, a sector of the ellipse is drawn from start radians to end radians, with zero radians the intersection with the right-hand x axis. If a negative value is specified, the arc sector is connected by a line to the midpoint.
 +
    aspect specifies the ratio between the y radius and the x radius. If it is not specified, the standard value for the SCREEN mode is used (see there), so as to make the ellipse appear like a circle on the original hardware.
  
Le point de milieu de l'ellipse se SITUE en (x, y).  Si l'étape est indiquée, le point médian est (x, y) à l'écart de la position actuelle.
+
Notes
    le rayon est le rayon, en pixels, le long de l'axe.
+
    la couleur est l'attribut de couleur.
+
    Si début et de fin sont spécifiés, un secteur de l'ellipse est tirée de radians de début à la fin radians, avec zéro radians l'intersection avec l'axe des x droite.  Si une valeur négative est spécifiée, le secteur d'arc est reliée par une ligne à mi-chemin.
+
    aspect indique le rapport entre le rayon y et le rayon x.  Si elle est pas spécifié, la valeur standard pour le mode écran est utilisé (voir là), de manière à rendre l'ellipse apparaît comme un cercle sur le matériel d'origine.
+
  
Remarques
+
    For aspect <> 1, the midpoint algorithm used does not pixel-perfectly reproduce GW-BASIC's ellipses.
  
Verser aspect <> 1, l'algorithme used milieu n'à pas de pixels Parfaitement Reproduire les ellipses de GW-BASIC.
+
Errors
  
les erreurs
+
    The statement is executed in text mode: Illegal function call.
 +
    start or end is not in [0—2π]: Illegal function call.
 +
    The statement ends with a comma: Missing operand.
  
L'instruction is exécutée en mode de texte: appel illégal de fonction.
+
CLEAR
    début ou la fin est pas dans [0-2π]: Illegal appel de fonction.
+
CLEAR [expr] [, [mem_limit] [, [stack_size] [, video_memory]]]
    La déclaration se termine par une virgule: Missing opérande.
+
  
EFFACER EFFACER [expr] [, [mem_limit] [, [stack_size] [, video_memory]]]
+
Clears all variables, arrays,DEF FN user functions, DEFtype type definitions, and COMMON declarations. Closes all files. Turns off all sound. Resets PLAY state and sets music to foreground. Clears all ON ERROR traps. Resets ERR and ERL to zero. Disables all events. Turns PEN and STRIG off. Resets the random number generator. Clears the loop stack. Resets the DRAW state and the current graphics position.
 +
Parameters
  
Efface toutes les variables, les tableaux, les fonctions utilisateur DEF FN, les définitions de type DefType, et les déclarations communes. Ferme tous les fichiers. Désactive tous les sons. Remet JOUENT Etat et définit la musique au premier plan. Efface tous les pièges ERROR. Remet ERR et ERL à zéro. Désactive tous les événements. Active PEN et STRIG off. Réinitialise le générateur de nombres aléatoires. Efface la pile de boucle. Remet l'état DRAW et la position graphique actuelle. Paramètres
+
    mem_limit specifies the upper limit of usable memory. Default is previous memory size. Default memory size is 65534.
 +
    stack_size specifies the amount of memory available to the BASIC stack. Default is previous stack size. Default stack size is 512.
 +
    video_memory specifies the amount of memory available to the video adapter. This parameter is only legal with one of the options syntax={pcjr, tandy}. Instead of using CLEAR, the option video-memory can also be used to set video memory size.
  
mem_limit PRECISES la limite supérieure de mémoire utilisable.  Par défaut est la taille de la mémoire précédente.  taille de la mémoire par défaut est 65534.
+
Notes
    stack_size spécifie la quantité de mémoire disponible pour la pile BASIC.  Par défaut est la taille de la pile précédente.  taille de la pile par défaut est 512.
+
    video_memory spécifie la quantité de mémoire disponible pour l'adaptateur vidéo.  Ce paramètre est uniquement juridique avec l'une des options de syntaxe = {PCjr, tandy}.  Au lieu d'utiliser CLEAR l'option de mémoire vidéo peut également être utilisé pour définir la taille de la mémoire vidéo.
+
  
Remarques
+
    The purpose of expr is unknown.
 +
    If called inside a FOR—NEXT or WHILE—WEND loop, an error will be raised at the NEXT or WEND statement, since the loop stacks have been cleared.
  
Le mais de expr is inconnue.
+
Errors
    Si elle est appelée dans une boucle FOR-NEXT ou WHILE-WEND, une erreur sera soulevée lors de la déclaration NEXT ou WEND, étant donné que les piles de boucle ont été effacés.
+
  
les erreurs
+
    Any of the arguments has a string value: Type mismatch.
 +
    mem_limit, stack_size are not in [-32768—65535]: Overflow.
 +
    mem_limit or stack_size equal 0: Illegal function call.
 +
    mem_limit equals -1 or 65535: Out of memory.
 +
    mem_limit or expr are too low: Out of memory.
 +
    expr is not in [-32768—32767]: Overflow.
 +
    expr is negative: Illegal function call.
  
Directeur Tous les arguments d'une Une valeur de chaîne: Type mismatch.
+
CLOSE
    mem_limit, stack_size ne sont pas dans [-32.768 à 65.535]: Overflow.
+
CLOSE [[#] file_0 [, [#] file_1] ...]
    mem_limit ou STACK_SIZE égal à 0: Illegal appel de fonction.
+
    mem_limit est égal à -1 ou 65535: Out of memory.
+
    mem_limit ou expr sont trop faibles: Manque de mémoire.
+
    expr est pas dans [-32768-32767]: Overflow.
+
    expr est négatif: Illegal appel de fonction.
+
  
FERMER FERMER [[#] file_0 [[#] file_1] ...]
+
Closes files. If no file numbers are specified, all open files are closed. The hash (#) is optional and has no effect.
 +
Parameters
  
Ferme les fichiers. Si aucun numéro de fichier sont spécifiés, tous les fichiers ouverts sont fermés. Le dièse (#) est facultative et n'a aucun effet. Paramètres
+
    file_1, file_2, ... are numeric expressions yielding file numbers.
  
file_1, file_2, ... des expressions are des Numériques Donnant Numéros de fichier.
+
Notes
  
Remarques
+
    No error is raised if the specified file numbers were not open.
  
Aucune erreur is déclenchée si le Nombre de Fichiers Précise ne pas are ouverts.
+
Errors
  
les erreurs
+
    file_1, file_2, ... are not in [-32768—32767]: Overflow.
 +
    file_1, file_2, ... are not in [0—255]: Illegal function call.
 +
    file_1, file_2, ... have a string value: Type mismatch.
 +
    The statement ends in a comma, Missing operand.
 +
    If an error occurs, only the files before the erratic value are closed.
  
file_1, file_2, ... ne pas are Dans [-32.768 à 32.767]: Overflow.
+
CLS
    file_1, file_2, ... ne sont pas dans [0-255]: Illegal appel de fonction.
+
CLS [x][,]
    file_1, file_2, ... ont une valeur de chaîne: Type mismatch.
+
    La déclaration se termine par une virgule, opérande manquant.
+
    Si une erreur se produit, seuls les fichiers avant la valeur erratique sont fermés.
+
  
CLS CLS [x] [,]
+
Clears the screen or part of it. If x is not specified, in SCREEN 0 the text view region is cleared; in other screens, the graphics view region is cleared. The comma is optional and has no effect.
 +
Parameters
  
Efface l'écran ou une partie de celui-ci. Si x est pas spécifié, dans SCREEN 0 la vue région de texte est effacé; dans d'autres écrans, les graphiques voir la région est effacée. La virgule est facultative et n'a aucun effet. Paramètres
+
x is a numeric valued expression that determines what is cleared:
  
x est une expression d'une valeur de numérique qui détermine ce qui est autorisé:
+
    If x = 0, the whole screen is cleared.
 +
    If x = 1, the graphics view region is cleared.
 +
    If x = 2, the text view region is cleared.
  
Si x = 0, l'ensemble de l'écran is effacé.
+
Errors
    Si x = 1, la vue graphique région est effacé.
+
    Si x = 2, la région d'affichage de texte est effacé.
+
  
les erreurs
+
    x is has a string value: Type mismatch.
 +
    x is not in [-32768—32767]: Overflow .
 +
    x is not in [0, 1, 2]: Illegal function call.
 +
    No comma is specified but more text follows: Illegal function call.
 +
    A comma is specified followed by more: Syntax error.
 +
    If an error occurs, the screen is not cleared.
  
x is Une valeur de chaîne: Type mismatch.
+
COLOR (text mode)
    x est pas dans [-32768 à 32767]: Overflow.
+
COLOR [foreground] [, [background] [, border]]
    x est pas dans [0, 1, 2]: Illegal appel de fonction.
+
    Aucune virgule est spécifié, mais plus de texte suit: Illegal appel de fonction.
+
    Une virgule est spécifié suivie par plus: Erreur de syntaxe.
+
    Si une erreur se produit, l'écran ne sont pas effacées.
+
  
COLOR (mode texte) COLOR [plan] [, [background] [, frontière]]
+
Changes the current foreground and background attributes. All new characters printed will take the newly set attributes. Existing characters on the screen are not affected.
 +
Parameters
  
Modifie les attributs de premier plan et d'arrière-plan en cours. Tous les nouveaux caractères imprimés prendront les attributs nouvellement créées. Les caractères existants sur l'écran ne sont pas affectés. Paramètres
+
    foreground is a numeric expression in [0—31]. This specifies the new foreground attribute. Attributes 16—31 are blinking versions of attributes 0—15.
 +
    background is a numeric expression in [0—15]. This specifies the new background attribute. It is taken MOD 8: Values 8—15 produce the same colour as 0—7.
 +
    border is a numeric expression in [0—15] specifying the border attribute.
  
premier plan de is a expression numérique Dans [0-31].  Ceci spécifie le nouvel attribut de premier plan.  Attributs 16-31 clignotent versions des attributs 0-15.
+
Textmode attributes (colour)
    arrière-plan est une expression numérique dans [0-15].  Ceci spécifie le nouvel attribut de fond.  Il est pris MOD 8: Les valeurs 8-15 produisent la même couleur que 0-7.
+
Background attribute
    la frontière est une expression numérique dans [0-15] spécifiant l'attribut border.
+
0 1 2 3 4 5 6 7
 +
FG 0 00 XX 10 XX 20 XX 30 XX 40 XX 50 XX 60 XX 70 XX
 +
1 01 XX 11 XX 21 XX 31 XX 41 XX 51 XX 61 XX 71 XX
 +
2 02 XX 12 XX 22 XX 32 XX 42 XX 52 XX 62 XX 72 XX
 +
3 03 XX 13 XX 23 XX 33 XX 43 XX 53 XX 63 XX 73 XX
 +
4 04 XX 14 XX 24 XX 34 XX 44 XX 54 XX 64 XX 74 XX
 +
5 05 XX 15 XX 25 XX 35 XX 45 XX 55 XX 65 XX 75 XX
 +
6 06 XX 16 XX 26 XX 36 XX 46 XX 56 XX 66 XX 76 XX
 +
7 07 XX 17 XX 27 XX 37 XX 47 XX 57 XX 67 XX 77 XX
 +
8 08 XX 18 XX 28 XX 38 XX 48 XX 58 XX 68 XX 78 XX
 +
9 09 XX 19 XX 29 XX 39 XX 49 XX 59 XX 69 XX 79 XX
 +
10 0a XX 1a XX 2a XX 3a XX 4a XX 5a XX 6a XX 7a XX
 +
11 0b XX 1b XX 2b XX 3b XX 4b XX 5b XX 6b XX 7b XX
 +
12 0c XX 1c XX 2c XX 3c XX 4c XX 5c XX 6c XX 7c XX
 +
13 0d XX 1d XX 2d XX 3d XX 4d XX 5d XX 6d XX 7d XX
 +
14 0e XX 1e XX 2e XX 3e XX 4e XX 5e XX 6e XX 7e XX
 +
15 0f XX 1f XX 2f XX 3f XX 4f XX 5f XX 6f XX 7f XX
 +
16 80 XX 90 XX a0 XX b0 XX c0 XX d0 XX e0 XX f0 XX
 +
17 81 XX 91 XX a1 XX b1 XX c1 XX d1 XX e1 XX f1 XX
 +
18 82 XX 92 XX a2 XX b2 XX c2 XX d2 XX e2 XX f2 XX
 +
19 83 XX 93 XX a3 XX b3 XX c3 XX d3 XX e3 XX f3 XX
 +
20 84 XX 94 XX a4 XX b4 XX c4 XX d4 XX e4 XX f4 XX
 +
21 85 XX 95 XX a5 XX b5 XX c5 XX d5 XX e5 XX f5 XX
 +
22 86 XX 96 XX a6 XX b6 XX c6 XX d6 XX e6 XX f6 XX
 +
23 87 XX 97 XX a7 XX b7 XX c7 XX d7 XX e7 XX f7 XX
 +
24 88 XX 98 XX a8 XX b8 XX c8 XX d8 XX e8 XX f8 XX
 +
25 89 XX 99 XX a9 XX b9 XX c9 XX d9 XX e9 XX f9 XX
 +
26 8a XX 9a XX aa XX ba XX ca XX da XX ea XX fa XX
 +
27 8b XX 9b XX ab XX bb XX cb XX db XX eb XX fb XX
 +
28 8c XX 9c XX ac XX bc XX cc XX dc XX ec XX fc XX
 +
29 8d XX 9d XX ad XX bd XX cd XX dd XX ed XX fd XX
 +
30 8e XX 9e XX ae XX be XX ce XX de XX ee XX fe XX
 +
31 8f XX 9f XX af XX bf XX cf XX df XX ef XX ff XX
 +
Textmode attributes (monochrome)
 +
Background attribute
 +
0 1 2 3 4 5 6 7
 +
FG 0 00 XX 10 XX 20 XX 30 XX 40 XX 50 XX 60 XX 70 XX
 +
1 01 XX 11 XX 21 XX 31 XX 41 XX 51 XX 61 XX 71 XX
 +
2 02 XX 12 XX 22 XX 32 XX 42 XX 52 XX 62 XX 72 XX
 +
3 03 XX 13 XX 23 XX 33 XX 43 XX 53 XX 63 XX 73 XX
 +
4 04 XX 14 XX 24 XX 34 XX 44 XX 54 XX 64 XX 74 XX
 +
5 05 XX 15 XX 25 XX 35 XX 45 XX 55 XX 65 XX 75 XX
 +
6 06 XX 16 XX 26 XX 36 XX 46 XX 56 XX 66 XX 76 XX
 +
7 07 XX 17 XX 27 XX 37 XX 47 XX 57 XX 67 XX 77 XX
 +
8 08 XX 18 XX 28 XX 38 XX 48 XX 58 XX 68 XX 78 XX
 +
9 09 XX 19 XX 29 XX 39 XX 49 XX 59 XX 69 XX 79 XX
 +
10 0a XX 1a XX 2a XX 3a XX 4a XX 5a XX 6a XX 7a XX
 +
11 0b XX 1b XX 2b XX 3b XX 4b XX 5b XX 6b XX 7b XX
 +
12 0c XX 1c XX 2c XX 3c XX 4c XX 5c XX 6c XX 7c XX
 +
13 0d XX 1d XX 2d XX 3d XX 4d XX 5d XX 6d XX 7d XX
 +
14 0e XX 1e XX 2e XX 3e XX 4e XX 5e XX 6e XX 7e XX
 +
15 0f XX 1f XX 2f XX 3f XX 4f XX 5f XX 6f XX 7f XX
 +
16 80 XX 90 XX a0 XX b0 XX c0 XX d0 XX e0 XX f0 XX
 +
17 81 XX 91 XX a1 XX b1 XX c1 XX d1 XX e1 XX f1 XX
 +
18 82 XX 92 XX a2 XX b2 XX c2 XX d2 XX e2 XX f2 XX
 +
19 83 XX 93 XX a3 XX b3 XX c3 XX d3 XX e3 XX f3 XX
 +
20 84 XX 94 XX a4 XX b4 XX c4 XX d4 XX e4 XX f4 XX
 +
21 85 XX 95 XX a5 XX b5 XX c5 XX d5 XX e5 XX f5 XX
 +
22 86 XX 96 XX a6 XX b6 XX c6 XX d6 XX e6 XX f6 XX
 +
23 87 XX 97 XX a7 XX b7 XX c7 XX d7 XX e7 XX f7 XX
 +
24 88 XX 98 XX a8 XX b8 XX c8 XX d8 XX e8 XX f8 XX
 +
25 89 XX 99 XX a9 XX b9 XX c9 XX d9 XX e9 XX f9 XX
 +
26 8a XX 9a XX aa XX ba XX ca XX da XX ea XX fa XX
 +
27 8b XX 9b XX ab XX bb XX cb XX db XX eb XX fb XX
 +
28 8c XX 9c XX ac XX bc XX cc XX dc XX ec XX fc XX
 +
29 8d XX 9d XX ad XX bd XX cd XX dd XX ed XX fd XX
 +
30 8e XX 9e XX ae XX be XX ce XX de XX ee XX fe XX
 +
31 8f XX 9f XX af XX bf XX cf XX df XX ef XX ff XX
 +
Notes
  
Textmode attributs attribut (couleur) Contexte 0 1 2 3 4 5 6 7 FG 0 00 XX 10 XX 20 XX 30 XX 40 XX 50 XX 60 XX 70 XX 1 01 XX 11 XX 21 XX 31 XX 41 XX 51 XX 61 XX 71 XX 2 02 XX 12 XX 22 XX 32 XX 42 XX 52 XX 62 XX 72 XX 3 03 XX 13 XX 23 XX 33 XX 43 XX 53 XX 63 XX 73 XX 4 04 XX 14 XX 24 XX 34 XX 44 XX 54 XX 64 XX 74 XX 5 05 XX 15 XX 25 XX 35 XX 45 XX 55 XX 65 XX 75 XX 6 06 XX 16 XX 26 XX 36 XX 46 XX 56 XX 66 XX 76 XX 7 07 XX 17 XX 27 XX 37 XX 47 XX 57 XX 67 XX 77 XX 8 08 XX 18 XX 28 XX 38 XX 48 XX 58 XX 68 XX 78 XX 9 09 XX 19 XX 29 XX 39 XX 49 XX 59 XX 69 XX 79 XX 10 0a XX 1a XX 2a XX 3a XX 4a XX 5a XX 6a XX 7a XX 11 0b XX 1b XX 2b XX 3b XX 4b XX 5b XX 6b XX 7b XX 12 0c XX 1c XX 2c XX 3c XX 4c XX 5c XX 6c XX 7c XX 13 0d XX 1d XX 2d XX 3d XX 4d XX 5d XX 6d XX 7d XX 14 0e XX 1e XX 2e XX 3e XX 4e XX 5e XX 6e XX 7e XX 15 0f XX 1f XX 2f XX 3f XX 4f XX 5f XX 6f XX 7f XX 16 80 XX 90 XX a0 XX b0 XX c0 XX d0 XX e0 XX f0 XX 17 81 XX 91 XX a1 XX b1 XX c1 XX d1 XX e1 XX f1 XX 18 82 XX 92 XX a2 XX b2 XX c2 XX d2 XX e2 XX f2 XX 19 83 XX 93 XX a3 XX b3 XX c3 XX d3 XX e3 XX f3 XX 20 84 XX 94 XX a4 XX b4 XX c4 XX d4 XX e4 XX f4 XX 21 85 XX 95 XX a5 XX b5 XX c5 XX d5 XX e5 XX f5 XX 22 86 XX 96 XX a6 XX b6 XX c6 XX d6 XX e6 XX f6 XX 23 87 XX 97 XX a7 XX b7 XX c7 XX d7 XX e7 XX f7 XX 24 88 XX 98 XX a8 XX b8 XX c8 XX d8 XX e8 XX f8 XX 25 89 XX 99 XX a9 XX b9 XX c9 XX d9 XX e9 XX f9 XX 26 8a XX 9a XX aa XX ba XX ca XX da XX ea XX fa XX 27 8b XX 9b XX ab XX bb XX cb XX db XX eb XX fb XX 28 8c XX 9c XX ac XX bc XX cc XX cc XX ec XX fc XX 29 8d XX 9d XX ad XX bd XX cd XX dd XX ed XX fd XX 30 8e XX 9e XX ae XX être XX CE XX de XX ee XX fe XX 31 8f XX 9f XX af XX bf XX cf XX df XX ef XX ff XX Textmode attributs attribut (monochrome) Contexte 0 1 2 3 4 5 6 7 FG 0 00 XX 10 XX 20 XX 30 XX 40 XX 50 XX 60 XX 70 XX 1 01 XX 11 XX 21 XX 31 XX 41 XX 51 XX 61 XX 71 XX 2 02 XX 12 XX 22 XX 32 XX 42 XX 52 XX 62 XX 72 XX 3 03 XX 13 XX 23 XX 33 XX 43 XX 53 XX 63 XX 73 XX 4 04 XX 14 XX 24 XX 34 XX 44 XX 54 XX 64 XX 74 XX 5 05 XX 15 XX 25 XX 35 XX 45 XX 55 XX 65 XX 75 XX 6 06 XX 16 XX 26 XX 36 XX 46 XX 56 XX 66 XX 76 XX 7 07 XX 17 XX 27 XX 37 XX 47 XX 57 XX 67 XX 77 XX 8 08 XX 18 XX 28 XX 38 XX 48 XX 58 XX 68 XX 78 XX 9 09 XX 19 XX 29 XX 39 XX 49 XX 59 XX 69 XX 79 XX 10 0a XX 1a XX 2a XX 3a XX 4a XX 5a XX 6a XX 7a XX 11 0b XX 1b XX 2b XX 3b XX 4b XX 5b XX 6b XX 7b XX 12 0c XX 1c XX 2c XX 3c XX 4c XX 5c XX 6c XX 7c XX 13 0d XX 1d XX 2d XX 3d XX 4d XX 5d XX 6d XX 7d XX 14 0e XX 1e XX 2e XX 3e XX 4e XX 5e XX 6e XX 7e XX 15 0f XX 1f XX 2f XX 3f XX 4f XX 5f XX 6f XX 7f XX 16 80 XX 90 XX a0 XX b0 XX c0 XX d0 XX e0 XX f0 XX 17 81 XX 91 XX a1 XX b1 XX c1 XX d1 XX e1 XX f1 XX 18 82 XX 92 XX a2 XX b2 XX c2 XX d2 XX e2 XX f2 XX 19 83 XX 93 XX a3 XX b3 XX c3 XX d3 XX e3 XX f3 XX 20 84 XX 94 XX a4 XX b4 XX c4 XX d4 XX e4 XX f4 XX 21 85 XX 95 XX a5 XX b5 XX c5 XX d5 XX e5 XX f5 XX 22 86 XX 96 XX a6 XX b6 XX c6 XX d6 XX e6 XX f6 XX 23 87 XX 97 XX a7 XX b7 XX c7 XX d7 XX e7 XX f7 XX 24 88 XX 98 XX a8 XX b8 XX c8 XX d8 XX e8 XX f8 XX 25 89 XX 99 XX a9 XX b9 XX c9 XX d9 XX e9 XX f9 XX 26 8a XX 9a XX aa XX ba XX ca XX da XX ea XX fa XX 27 8b XX 9b XX ab XX bb XX cb XX db XX eb XX fb XX 28 8c XX 9c XX ac XX bc XX cc XX cc XX ec XX fc XX 29 8d XX 9d XX ad XX bd XX cd XX dd XX ed XX fd XX 30 8e XX 9e XX ae XX être XX CE XX de XX ee XX XX fe 31 8f XX 9f XX XX af bf XX cf XX XX df ef XX ff XX Remarques
+
    The syntax and effect of COLOR is different in different SCREEN modes: COLOR (text mode), COLOR (SCREEN 1), (SCREEN 3—9).
 +
    At least one parameter must be provided and the statement must not end in a comma.
  
La syntaxe et l'effet de couleur is Différente Dans les modes Différents d'écran: COULEUR (mode texte), COLOR (ECRAN 1), (SCREEN 3-9).
+
Errors
    Au moins un paramètre doit être fourni et la déclaration ne doit pas se terminer par une virgule.
+
  
les erreurs
+
    Any of the parameters has a string value: Type mismatch.
 +
    Any of the parameters is not in [-32768—32767]: Overflow.
 +
    foreground is not in [0—31], background is not in [0—15] or border is not in [0—15]: Illegal function call.
 +
    Statement is used in SCREEN 2: Illegal function call.
  
Tout des paramêtres a Une valeur de chaîne: Type mismatch.
+
COLOR (SCREEN 1)
    Tous les paramètres ne figure pas dans [-32.768 à 32.767]: Overflow.
+
COLOR [palette_0] [, palette [, override]]
    premier plan est pas dans [0-31], fond se trouve pas dans [0-15] ou à la frontière ne sont pas dans [0-15]: Illegal appel de fonction.
+
    Déclaration est utilisé dans ECRAN 2: Illegal appel de fonction.
+
  
COLOR (ECRAN 1) COLOR [palette_0] [, palette [, override]]
+
Assigns new colours to the palette of attributes.
  
Affecte de nouvelles couleurs à la palette d'attributs.
+
    palette_0 is a numeric expression in [0—255]. This sets the palette colour associated with attribute 0; by default, the background has this attribute. All pixels with this attribute will change colour. The palette colour value is taken from the 64-colour set. palette_0 is taken MOD 64.
 +
    palette is a numeric expression in [0—255] that specifies the palette:
 +
        palette odd sets the standard CGA palette (cyan, magenta, grey).
 +
        palette even sets the alternative palette (green, red, brown).
 +
    All pixels with attributes 1,2,3 will change colour to the new palette.
 +
    override is a numeric expression in [0—255]. If override is specified, palette is set as above but using override instead of palette. palette is then ignored.
  
palette_0 is a expression numérique Dans [0-255].  Ceci définit la couleur de la palette associée à l'attribut 0;  par défaut, l'arrière-plan a cet attribut.  Tous les pixels avec cet attribut changent de couleur.  La valeur de la palette de couleurs est tirée de l'ensemble 64-couleur.  palette_0 est prise MOD 64.
+
CGA palettes
    palette est une expression numérique dans [0-255] qui spécifie la palette:
+
Attribute Palette 0 Palette 1 Alternate palette
        palette ensembles impairs de la palette CGA standard (cyan, magenta, gris).
+
Colour Lo Hi Colour Lo Hi Colour Lo Hi
        palette définit même la palette de remplacement (vert, rouge, brun).
+
0 Black Black Black
    Tous les pixels avec des attributs 1,2,3 changent de couleur à la nouvelle palette.
+
1 Green Cyan Cyan
    override est une expression numérique dans [0-255].  Si override est spécifié, la palette est définie comme ci-dessus, mais en utilisant override au lieu de palette.  palette est alors ignoré.
+
2 Red Magenta Red
 +
3 Brown White White
 +
Notes
  
palettes CGA Attribut Palette 0 Palette 1 palette Alternate Couleur Lo Salut Couleur Lo Salut Couleur Lo Salut 0 Noir Noir Noir 1 Vert Cyan Cyan Magenta 2 Rouge Rouge 3 Brun Blanc Blanc Remarques
+
    The syntax and effect of COLOR is different in different SCREEN modes: COLOR (text mode), COLOR (SCREEN 1), (SCREEN 3—9).
 +
    At least one parameter must be provided and the statement must not end in a comma.
  
La syntaxe et l'effet de couleur is Différente Dans les modes Différents d'écran: COULEUR (mode texte), COLOR (ECRAN 1), (SCREEN 3-9).
+
Errors
    Au moins un paramètre doit être fourni et la déclaration ne doit pas se terminer par une virgule.
+
  
les erreurs
+
    Any of the parameters has a string value: Type mismatch.
 +
    Any of the parameters is not in [-32768—32767]: Overflow.
 +
    Any of the parameters is not in [0—255]: Illegal function call.
  
Tout des paramêtres a Une valeur de chaîne: Type mismatch.
+
COLOR (SCREEN 3—9)
    Tous les paramètres ne figure pas dans [-32.768 à 32.767]: Overflow.
+
COLOR [foreground] [, palette_0 [, dummy]]
    Tous les paramètres ne figure pas dans [0-255]: Illegal appel de fonction.
+
  
COLOR (SCREEN 3-9) COULEUR [plan] [, palette_0 [, dummy]]
+
Changes the current foreground attribute and the colour for attribute 0.
 +
Parameters
  
Modifie l'attribut de premier plan en cours et la couleur pour l'attribut 0. Paramètres
+
    foreground is a numeric expression in [0—15] This sets the new foreground attribute. This applies only to new characters printed or pixels plotted.
 +
    palette_0 is a numeric expression in [0—15] This sets the colour associated with attribute 0; by default, the background has this attribute. All pixels with this attribute will change colour. In SCREEN 7 and 8, the palette_0 colour is taken from the first 8 of the 16-colour EGA set. palette_0 is taken MOD 8. IN SCREEN 9, the colour value is taken from the 64-colour set.
 +
    dummy is a numeric expression with a value in [0—255] The value of dummy is ignored.
  
Plan premier is a expression numérique Dans [0-15] Céci Définit le nouvel plan de premier attribut.  Ceci ne concerne que les nouveaux caractères imprimés ou pixels tracés.
+
EGA default palette
    palette_0 est une expression numérique dans [0-15] Ceci définit la couleur associée à l'attribut 0;  par défaut, l'arrière-plan a cet attribut.  Tous les pixels avec cet attribut changent de couleur.  Dans ÉCRAN 7 et 8, la couleur palette_0 est tirée de la première 8 de la 16 couleurs EGA set.  palette_0 est prise MOD 8. IN SCREEN 9, la valeur de couleur est tirée de l'ensemble 64-couleur.
+
Attribute Colour
    dummy est une expression numérique avec une valeur de [0-255] La valeur de mannequin est ignoré.
+
0 Black
 +
1 Blue
 +
2 Green
 +
3 Cyan
 +
4 Red
 +
5 Magenta
 +
6 Brown
 +
7 Low-intensity white
 +
8 Grey
 +
9 Light Blue
 +
10 Light Green
 +
11 Light Cyan
 +
12 Light Red
 +
13 Light Magenta
 +
14 Light Yellow
 +
15 High-intensity white
 +
EGA colour list
 +
0 8 16 24 32 40 48 56
 +
1 9 17 25 33 41 49 57
 +
2 10 18 26 34 42 50 58
 +
3 11 19 27 35 43 51 59
 +
4 12 20 28 36 44 52 60
 +
5 13 21 29 37 45 53 61
 +
6 14 22 30 38 46 54 62
 +
7 15 23 31 39 47 55 63
 +
Notes
  
palette par défaut EGA Attribut Couleur 0 Black 1 Blue 2 Vert 3 Cyan 4 Red 5 Magenta 6 Brown 7 de faible intensité blanc 8 Gris 9 Light Blue 10 Lumière 11 Green Light Cyan 12 Light 13 Red Light Magenta 14 Jaune clair 15 haute intensité blanche EGA liste couleur 0 8 16 24 32 40 48 56 1 9 17 25 33 41 49 57 2 10 18 26 34 42 50 58 3 11 19 27 35 43 51 59 4 12 20 28 36 44 52 60 5 13 21 29 37 45 53 61 14 22 30 6 38 46 54 62 7 15 23 31 39 47 55 63 notes
+
    The syntax and effect of COLOR is different in different SCREEN modes: COLOR (text mode), COLOR (SCREEN 1), (SCREEN 3—9).
 +
    At least one parameter must be provided and the statement must not end in a comma.
  
La syntaxe et l'effet de couleur is Différente Dans les modes Différents d'écran: COULEUR (mode texte), COLOR (ECRAN 1), (SCREEN 3-9).
+
Errors
    Au moins un paramètre doit être fourni et la déclaration ne doit pas se terminer par une virgule.
+
  
les erreurs
+
    Any of the parameters has a string value: Type mismatch.
 +
    Any of the parameters is not in [-32768—32767]: Overflow.
 +
    foreground is not in [1—15]; background is not in [0—15]; or dummy is not in [0—255]: Illegal function call.
  
Tout des paramêtres a Une valeur de chaîne: Type mismatch.
+
COM
    Tous les paramètres ne figure pas dans [-32.768 à 32.767]: Overflow.
+
COM(port) {ON|OFF|STOP}
    premier plan se trouve pas dans [1-15];  fond est pas dans [0-15];  ou factice est pas dans [0-255]: Illegal appel de fonction.
+
  
COM COM (port) {ON | OFF | STOP}
+
    ON: enables ON COM(port) event trapping of the emulated serial port.
 +
    OFF: disables trapping.
 +
    STOP: halts trapping until COM(port) ON is used. Events that occur while trapping is halted will trigger immediately when trapping is re-enabled.
  
ON: Permet ON COM (port) Événement du port série piégeage Emule.
+
Parameters
    OFF: désactive le piégeage.
+
    STOP: arrête le piégeage jusqu'à COM (port) ON est utilisé.  Les événements qui se produisent pendant le piégeage est arrêté déclenchera immédiatement lorsque le piégeage est réactivé.
+
  
Paramètres
+
    port is a numeric expression with a value of 1 or 2. This specifies which serial port (COM1: or COM2:) is trapped.
  
Port is a expression numérique d'Une valeur de 1 ou 2. Céci PRECISES le port de série (COM1: ou COM2 :) is pris au piège.
+
COMMON
 +
COMMON [var_0 [, [var_1]] ...]
  
COMMUNE COMMUNE [var_0 [[var_1]] ...]
+
Specifies variables to be passed as common variables to the program called with CHAIN. The statement may end with one or more commas.
 +
Parameters
  
Spécifie les variables à transmettre sous forme de variables communes au programme appelé avec CHAIN. La déclaration peut se terminer par une ou plusieurs virgules. Paramètres
+
    var_0, var_1, ... are names of variables or arrays. Array names must be followed by parentheses or square brackets. Brackets may also be mixed: a(] b[).
  
var_0, var_1, ... Sont des Noms de Variables OÜ des tableaux.  Les noms de tableau doivent être suivies par des parenthèses ou des crochets.  Les supports peuvent aussi être mélangés: un (] b [).
+
CONT
 +
CONT [anything]
  
CONT CONT [rien]
+
Resumes execution of a program that has been halted by STOP, END, Ctrl+C, or Ctrl+Break.
 +
Notes
  
Reprend l'exécution d'un programme qui a été arrêté par STOP, FIN, Ctrl + C ou Ctrl + Break. Remarques
+
    Anything after the CONT keyword is ignored.
 +
    This statement can only be used in direct mode.
 +
    If a break is encountered in GOSUB routine called from a continuing direct line (e.g. GOSUB 100:PRINT A$), CONT will overwrite the running direct line. As the subroutine RETURNs to the position after the GOSUB in the old direct line, strange things may happen if commands are given after CONT. In GW-BASIC, this can lead to strange errors in non-existing program lines as the parser executes bytes that are not part of a program line. In PC-BASIC, if the new direct line is shorter, execution stops after RETURN; but if the direct line is extended beyond the old return position, the parser tries to resume at that return position, with strange effects.
  
Tout Ce costume est qui le mot-clé CONT is ignorée.
+
Errors
    Cette déclaration ne peut être utilisé en mode direct.
+
    Si une pause est rencontrée dans GOSUB routine appelée à partir d'une ligne directe continue (par exemple GOSUB 100: IMPRIMER A $), CONT remplacera la ligne directe en cours d'exécution.  Comme les déclarations de sous-programme à la position après la GOSUB dans la vieille ligne directe, des choses étranges peuvent se produire si les commandes sont donnés après CONT.  Dans GW-BASIC, cela peut conduire à des erreurs étranges dans les lignes non-existantes programme comme l'analyseur exécute octets qui ne font pas partie d'une ligne de programme.  Dans PC-BASIC, si la nouvelle ligne directe est plus courte, l'exécution s'arrête après le retour;  mais si la ligne directe est prolongée au-delà de l'ancienne position de retour, l'analyseur tente de reprendre à cette position de retour, avec des effets étranges.
+
  
les erreurs
+
    No program is loaded, a program has not been run, after a program line has been modified or after CLEAR: Can't continue.
 +
    The break occurred in a direct line: Can't continue.
 +
    CONT is used in a program: Can't continue.
  
Aucun programme chargé, Un pas de programme N'a Ete EXECUTE, après juin ligne de programme was Modifié OÜ après CLEAR: Vous ne can pas continuateur.
+
DATA
    La rupture a eu lieu dans une ligne directe: Vous ne pouvez pas continuer.
+
DATA [const_0] [, [const_1]] ...
    CONT est utilisé dans un programme: Vous ne pouvez pas continuer.
+
  
DATA DATA [const_0] [, [const_1]] ...
+
Specifies data that can be read by a READ statement.
 +
Parameters
  
Indique les données qui peuvent être lues par une instruction READ. Paramètres
+
    const_0, const_1, ... are string and number literals or may be empty. String literals can be given with or without quotation marks. If quotation marks are omitted, leading and trailing whitespace is ignored and commas or colons will terminate the data statement.
  
const_0, const_1, ... et littéraux are cordes ous can be vide.  Les chaînes littérales peuvent être donnés avec ou sans guillemets.  Si les guillemets sont omis, espaces avant et après est ignoré et des virgules ou des colons mettra fin à la déclaration de données.
+
Errors
  
les erreurs
+
    If the type of the literal does not match that of the corresponding READ statement, a Syntax error occurs on the DATA statement.
  
Si le Type du littéral ne correspond pas à l'instruction de Celle READ Correspondante, juin erreur de syntaxe se produit sur l'instruction de Données.
+
DATE$ (statement)
 +
DATE$ = date
  
DATE $ (déclaration) DATE $ = date
+
Sets the system date. date is a string expression that represents a date in one of the formats: "mm-dd-yyyy", "mm/dd/yyyy", "mm-dd-yy", "mm/dd/yy".
  
Définit la date système. date est une expression de chaîne qui représente une date dans l'un des formats: "mm-jj-aaaa", "jj / mm / aaaa", "mm-dd-yy", "mm / jj / aa".
+
Of these,
  
Parmi ceux-ci,
+
    mm must be in [01—12].
 +
    dd must be in [01—31].
 +
    yyyy must be in [1980—2099].
 +
    yy must be in one of the ranges:
 +
        [00—77], interpreted as 2000—2077; or
 +
        [80—99], interpreted as 1980—1999.
  
mm Doit Être dans [01-12].
+
Notes
    dd doit être dans [01-31].
+
    aaaa doit être dans [1980-2099].
+
    yy doit être dans l'une des gammes:
+
        [00-77], interprété comme 2000-2077;  ou
+
        [80-99], interprété comme 1980 à 1999.
+
  
Remarques
+
    The system date is not actually changed; rather, PC-BASIC remembers the offset from the true system date. This avoids requiring user permission to change the system time.
 +
    GW-BASIC appears to accept invalid dates such as "02-31-2000". PC-BASIC raises Illegal function call for these.
  
La date de system is pas Changé réellement;  plutôt, PC-BASIC se souvient le décalage de la vraie date du système.  Cela évite nécessitant une autorisation utilisateur pour modifier l'heure du système.
+
Errors
    GW-BASIC semble accepter les dates non valides telles que "31/02/2000".  PC-BASIC soulève illégal appel de fonction pour ces derniers.
+
  
les erreurs
+
    date has a numeric value: Type mismatch.
 +
    date is not in the format specified above: Illegal function call.
  
la date à laquelle une Une valeur numérique: incompatibilité de Type.
+
DEF FN
    la date ne sont pas dans le format spécifié ci-dessus: Illegal appel de fonction.
+
DEF FN[ ]name [(arg_0 [, arg_1] ...)] = expression
  
DEF FN DEF FN nom [] [(de arg_0 [, Arg_1] ...)] = expression
+
Defines a function called FNname (or FN name: spaces between FN and name are optional). On calling FNname( ... ), expression is evaluated with the supplied parameters substituted. Any variable names used in the function that are not in the argument list refer to the corresponding global variables. The result of the evaluation is the return value of FNname. The type of the return value must be compatible with the type indicated by name.
 +
Notes
  
Définit une fonction appelée FNname (ou le nom FN: espaces entre les FN et le nom sont en option). En appelant FNname (...), l'expression est évaluée avec les paramètres fournis substitués. Tous les noms de variables utilisés dans la fonction qui ne sont pas dans la liste des arguments se réfèrent aux variables globales correspondantes. Le résultat de l'évaluation est la valeur de retour de FNname. Le type de la valeur de retour doit être compatible avec le type indiqué par son nom. Remarques
+
    This statement may only be used on a program line.
 +
    As the function must be a single expression and PC-BASIC does not have a ternary operator, there is no way to define a recursive function that actually terminates.
  
This déclaration ne can be used Sur une ligne de programme.
+
Parameters
    Comme la fonction doit être une expression unique et PC-BASIC n'a pas un opérateur ternaire, il n'y a aucun moyen de définir une fonction récursive qui se termine en fait.
+
  
Paramètres
+
    name must be a legal variable name.
 +
    arg_0, arg_1, ... must be legal variable names. These are the parameters of the function. Variables of the same name may or may not exist in the program; their value is not affected or used by the defined function.
 +
    expression must be a legal PC-BASIC expression.
  
nom Doit Être nom non de la variable juridique.
+
Errors
    arg_0, Arg_1, ... doit être des noms de variables juridiques.  Ce sont les paramètres de la fonction.  Les variables du même nom peuvent ou peuvent ne pas exister dans le programme;  leur valeur est pas affectée ou utilisée par la fonction définie.
+
    expression doit être une expression juridique de PC-BASIC.
+
  
les erreurs
+
    The statement is executed directly instead of in a program line: Illegal direct.
 +
    If the type of the return value is incompatible with the type of name, no error is raised at the DEF FN statement; however, a Type mismatch will be raised at the first call of FNname.
  
L'instruction is exécutée directement au lieu d'Une ligne de programme: Illegal direct.
+
DEFINT, DEFDBL, DEFSNG, DEFSTR
    Si le type de la valeur de retour est incompatible avec le type de nom, aucune erreur est soulevée à la déclaration DEF FN;  cependant, une incompatibilité de type sera soulevée lors du premier appel de FNname.
+
{DEFINT|DEFDBL|DEFSNG|DEFSTR} first_0[- last_0] [, first_1[- last_1]] ...
  
DEFINT, DEFDBL, DefSng, DEFSTR {DEFINT | DEFDBL | DefSng | DEFSTR} first_0 [- last_0] [, first_1 [- last_1]] ...
+
Sets the type that is assumed if no sigil is specified when a variable name is used. The statement sets the default type for variables starting with a letter from the ranges specified.
  
Définit le type qui est supposé si aucun sigil est spécifié quand un nom de variable est utilisée. La déclaration définit le type par défaut pour les variables commençant par une lettre des plages spécifiées.
+
The default type is set to:
 
+
Le type par défaut est réglé sur:
+
  
 
DEFINT
 
DEFINT
 
+
    integer (%)
ENTIER (%)
+
 
+
 
DEFDBL
 
DEFDBL
 
+
    double (#)
double (#)
+
DEFSNG
 
+
    single (!)
DefSng
+
 
+
uniques (!)
+
 
+
 
DEFSTR
 
DEFSTR
 +
    string ($)
  
string ($)
+
Parameters
  
Paramètres
+
    first_0, last_0, ... are letters of the alphabet. Pairs of letters connected by a dash - indicate inclusive ranges.
  
first_0, last_0, ... des are lettres de l'alphabet.  Paires de lettres reliées par un tiret - indiquent des plages inclusives.
+
Notes
  
Remarques
+
    DEFSNG A-Z is the default setting.
  
DefSng AZ is le règlage par défaut.
+
DEF SEG
 +
DEF SEG [= address]
  
DEF SEG DEF SEG [= adresse]
+
Sets the memory segment to be used by BLOAD, BSAVE, CALL, PEEK, POKE, and USR.
 +
Parameters
  
Définit le segment de mémoire pour être utilisé par BLOAD, BSAVE, CALL, PEEK, POKE et NRS. Paramètres
+
    address is a numeric expression in [-32768—65535].
  
adresse is expression de juin numérique Dans [-32768 à 65535].
+
Notes
  
Remarques
+
    If address is negative, it is interpreted as its two's complement.
 +
    If address is not specified, the segment is set to the GW-BASIC data segment.
  
Si l'adresse is négative, Elle Est interprétée Comme complément à des ses deux.
+
Errors
    Si l'adresse est pas spécifié, le segment est défini sur le segment de données GW-BASIC.
+
  
les erreurs
+
    address has a string value: Type mismatch.
 +
    address is not in [-32768—65535]: Overflow.
  
une adresse Une valeur de chaîne: Type mismatch.
+
DEF USR
    adresse se trouve pas dans [-32768 à 65535]: Overflow.
+
DEF USR[n] = address
  
DEF USR DEF USR [n] = adresse
+
Does nothing.
 +
Parameters
  
Ne fait rien. Paramètres
+
    n is a digit between 0 and 9 inclusive.
 +
    address is a numeric expression in [-32768—65535].
  
n HNE chiffre non compris Entre 0 et 9 inclus.
+
Notes
    adresse est une expression numérique dans [-32768-65535].
+
  
Remarques
+
    In GW-BASIC, this statement sets the starting address of an assembly-language function.
 +
    This statement is not implemented in PC-BASIC.
 +
    If address is negative, it is interpreted as its two's complement.
  
Dans GW-BASIC, this déclaration Définit l'adresse de départ d'en juin fonction langage assembleur.
+
Errors
    Cette déclaration n'a pas été mis en œuvre dans PC-BASIC.
+
    Si l'adresse est négative, elle est interprétée comme complément à ses deux.
+
  
les erreurs
+
    n is not a digit in [0—9]: Syntax error.
 +
    address has a string value: Type mismatch.
 +
    address is not in [-32768—65535]: Overflow.
  
n is pas non chiffre Dans [0-9]: Erreur de syntaxe.
+
DELETE
    adresse a une valeur de chaîne: Type mismatch.
+
DELETE [line_number_0|.] [-[line_number_1|.] ]
    adresse se trouve pas dans [-32768 à 65535]: Overflow.
+
  
EFFACER EFFACER [line_number_0 |.] [- [Line_number_1 |].]
+
Deletes a range of lines from the program. Also stops program execution and returns control to the user.
 +
Parameters
  
Supprime une plage de lignes du programme. arrête également l'exécution du programme et renvoie le contrôle à l'utilisateur. Paramètres
+
    line_number_0 and line_number_1 are line numbers in the range [0—65529], specifying the inclusive range of line numbers to delete.
 +
    A . indicates the last line edited.
 +
    If the start point is omitted, the range will start at the start of the program.
 +
    If the end point is omitted, the range will end at the end of the program.
 +
    If no range is specified, the whole program will be deleted.
  
line_number_0 et line_number_1 are les Numéros de ligne Dans la gamme [0-65529], en precisant la gamme inclusive des Numéros de ligne à supprimer.
+
Errors
    UNE .  indique la dernière ligne modifiée.
+
    Si le point de départ est omis, la gamme va commencer au début du programme.
+
    Si le point final est omis, la gamme se terminera à la fin du programme.
+
    Si aucune plage est spécifiée, l'ensemble du programme sera supprimé.
+
  
les erreurs
+
    line_number_0 or line_number_1 is greater than 65529: Syntax error.
 +
    The range specified does not include any program lines stored: Illegal function call.
  
line_number_0 ous line_number_1 is supérieur à 65529: Erreur de syntaxe.
+
DIM
    La plage spécifiée ne comporte pas de lignes de programme stockées: Illegal appel de fonction.
+
DIM name {(|[} limit_0 [, limit_1] ... {)|]}
  
DIM DIM nom {(| [} limit_0 [, limit_1] ... {) |]}
+
Allocates memory for arrays. The DIM statement also fixes the number of indices of the array. An array can only be allocated once; to re-allocate an array, ERASE or CLEAR must be executed first. If an array is first used without a DIM statement, it is automatically allocated with its maximum indices set at 10 for each index position used. If an array's DIM statement specifies no indices, it is allocated with a single index with maximum 10. The least index allowed is determined by OPTION BASE.
 +
Parameters
  
Alloue de la mémoire pour les tableaux. L'instruction DIM fixe également le nombre d'indices du tableau. Un tableau ne peut être attribuée qu'une fois; de ré-allouer un tableau, ERASE ou EFFACER doit être exécuté en premier. Si un tableau est utilisé pour la première sans instruction DIM, il est automatiquement attribué avec ses indices maximum fixé à 10 pour chaque position de l'index utilisé. Si la déclaration de DIM un tableau spécifie pas d'indices, il est attribué un indice unique avec un maximum 10. Le moins indice autorisé est déterminé par OPTION BASE. Paramètres
+
    name is a legal variable name specifying the array to be allocated.
 +
    limit_0, limit_1, ... are numeric expressions that specify the greatest index allowed at that position.
  
  nom est un nom de variable juridique spécifiant le tableau à allouer.
+
Notes
    limit_0, limit_1, ... sont des expressions numériques qui spécifient le plus grand indice permis à cette position.
+
  
Remarques
+
    Mixed brackets are allowed.
 +
    The size of arrays is limited by the available BASIC memory.
 +
    The maximum number of indices is, theoretically, 255. In practice, it is limited by the 255-byte limit on the length of program lines.
  
  supports mixtes sont autorisés.
+
Errors
    La taille des réseaux est limitée par la mémoire de base disponibles.
+
    Le nombre maximum d'indices est, théoriquement, 255. Dans la pratique, il est limité par la limite de 255 octets sur la longueur des lignes de programme.
+
  
les erreurs
+
    name has already been dimensioned: Duplicate definition.
 +
    An index is empty: Syntax error.
 +
    An index is missing at the end: Missing operand.
 +
    limit_0, limit_1, ... have a string value: Type mismatch.
 +
    limit_0, limit_1, ... are not within [-32768—32767]: Overflow.
 +
    limit_0, limit_1, ... are negative: Illegal function call.
 +
    The array exceeds the size of available variable space: Out of memory.
  
  nom a déjà été dimensionné: définition en double.
+
DRAW
    Un index est vide: Erreur de syntaxe.
+
DRAW gml_string
    Un index est manquant à la fin: opérande manquant.
+
    limit_0, limit_1, ... ont une valeur de chaîne: Type mismatch.
+
    limit_0, limit_1, ... ne sont pas dans [-32.768 à 32.767]: Overflow.
+
    limit_0, limit_1, ... sont négatifs: Illegal appel de fonction.
+
    Le réseau dépasse la taille de l'espace disponible variables: Out of memory.
+
  
TIRAGE TIRAGE gml_string
+
Draws the shape specified by gml_string, a string expression in Graphics Macro Language (GML).
 +
Graphics Macro Language reference
  
Dessine la forme spécifiée par gml_string, une expression de chaîne dans Graphics Macro Language (GML). Graphics Macro référence Langue
+
Movement commands
 +
    [B][N] movement
 +
    where the default is to move and draw; the optional prefixes mean:
 +
    B move but do not plot
 +
    N return to original point after move
 +
    and movement is one of:
 +
    U[n] up n steps
 +
    L[n] left n steps
 +
    D[n] down n steps
 +
    R[n] right n steps
 +
    E[n] up and right n steps
 +
    F[n] down and right n steps
 +
    G[n] down and left n steps
 +
    H[n] up and left n steps
 +
    M{+|-}x,[+|-]y move (x,y) steps
 +
    Mx,y move to view region coordinate (x,y)
  
commandes de mouvement
+
    where n is an integer in [-32768—32767] and x, y are integers in [0—9999]. Where optional, n defaults to 1.
 +
Scale commands
 +
    Sn set the step size to n/4. The default step size is 1 pixel. n is an integer in [1—255]
 +
    TAn set the angle to n degrees. The default angle is 0 degrees. n is an integer in [-360—360]
 +
    An set the angle to 0 for n=0, 90 for n=1, 180 for n=2, 270 for n=3. n is an integer in [0—3]
 +
Colour commands
 +
    Cn set the foreground attribute to n, where n is an integer in [-32768—32767] See COLOR.
 +
    Pn,b flood fill with attribute n and boundary attribute b, where n, b are integers in [0—9999] See PAINT.
 +
Subroutine command
 +
    Xs execute a substring
  
  [B] [N] mouvement
+
     s is one of the following:
     où la valeur par défaut est de se déplacer et d'en tirer;  les préfixes optionnels signifient:
+
    B déménagement, mais ne pas tracer
+
    N retour à un point d'origine après déménagement
+
    et le mouvement est l'un des:
+
    U [n] jusqu'à n étapes
+
    L [n] à gauche n étapes
+
    D [n] vers le bas n étapes
+
    R [n] à droite n étapes
+
    E [n] et n étapes droite
+
    F [n] vers le bas et n étapes droite
+
    G [n] vers le bas et n pas gauche
+
    H [n] et à gauche n étapes
+
    M {+ | -} x, [+ | -] y déplacer (x, y) étapes
+
    Mx, y déplacer pour voir la région de coordonnées (x, y)
+
  
  où n est un entier dans [-32.768-32767] et x, y sont des nombres entiers [0-9999].  Où en option, n 1 par défaut.
+
        a string variable name followed by semicolon (;)
 +
        the result of VARPTR$() on a string variable
  
les commandes d'échelle
+
Numeric variables n, x, y, b in the commands above can be:
  
  Sn régler la taille de pas à n / 4.  La taille de l'étape par défaut est 1 pixel.  n est un entier dans [1-255]
+
     an integer literal, e.g. DRAW "U100"
     TAn définir l'angle à n degrés. L'angle par défaut est de 0 degrés. n est un entier dans [-360 à 360]
+
     a numeric variable name or array element var preceded by = and followed by ;. For example, DRAW "U=VAR;" or DRAW "U=A(1);"
     Un ensemble à l'angle 0 pour n = 0, 90 pour n = 1, 180 pour n = 2, 270 pour n = 3.  n est un entier dans [0-3]
+
    the result of VARPTR$(var) preceded by =. For example, DRAW "U=" + VARPTR$(VAR)
  
commandes de couleur
+
Notes
  
  Cn définir l'attribut de premier plan à n, n est un entier dans [-32768 à 32767] Voir COLOR.
+
    The CLS statement resets the step size to 1 pixel, angle to 0 degrees and position to the centre of the view region.
     Pn, b inondation remplir avec l'attribut n et limite attribut b, n, b sont des nombres entiers dans [0-9999] Voir PAINT.
+
    The value n in the TA, A and C command can be left out but only if the command is terminated by a semicolon. n defaults to 0.
 +
     In GW-BASIC, the numeric arguments of U, L, D, R, E, F, G, H, and C can be in the range [-99999—99999]; however, results for large numbers are unpredictable. This is not implemented in PC-BASIC.
  
commande Subroutine
+
Errors
  
  Xs exécuter une sous-chaîne
+
    gml_string has a numeric value: Type mismatch.
 +
    gml_string has errors in the GML: Illegal function call.
 +
    A variable referenced in the GML string is of incorrect type: Type mismatch.
  
  s est l'un des éléments suivants:
+
EDIT
 +
EDIT {line_number|.}
  
  un nom variable de chaîne suivie par un point virgule (;)
+
Displays the specified program line with the cursor positioned for editing. line_number must be a line that exists in the program, or a period (.) to indicate the last line stored.
        le résultat de VARPTR $ () sur une variable de chaîne
+
Errors
  
Les variables numériques n, x, y, b dans les commandes ci-dessus peuvent être:
+
    No line_number is specified: Undefined line number.
 +
    More characters are written after the line number: Illegal function call.
 +
    line_number is not in [0—65529]: Illegal function call.
 +
    The specified line number does not exist: Undefined line number.
  
  un littéral entier, par exemple TIRAGE "U100"
+
ELSE
    une variable numérique nom ou élément de tableau var précédé de = et suivie;.  Par exemple, DESSINER "U = VAR;"  ou TIRAGE "U = A (1);"
+
ELSE [anything]
    le résultat de VARPTR $ (var) précédé de =.  Par exemple, DESSINER "U =" + VARPTR $ (VAR)
+
  
Remarques
+
Unless part of an IF statement on the same line, anything after ELSE is ignored in the same way as after ' or :REM. No colon : preceding the ELSE statement is necessary. See IF for normal usage.
 +
END
 +
END
  
  L'instruction CLS réinitialise la taille de pas de 1 pixel, un angle de 0 ° et la position du centre de la région d'affichage.
+
Closes all files, stops program execution and returns control to the user. No message is printed. It is possible to resume execution at the next statement using CONT.
    La valeur n dans la commande TA, A et C peut être laissé de côté, mais seulement si la commande se termine par un point-virgule. n 0 par défaut.
+
ENVIRON
    Dans GW-BASIC, les arguments numériques de U, L, D, R, E, F, G, H et C peuvent être dans l'intervalle [-99999 à 99.999];  cependant, les résultats pour un grand nombre sont imprévisibles.  Ce ne sont pas mis en œuvre dans PC-BASIC.
+
ENVIRON command_string
  
les erreurs
+
Sets a shell environment variable.
 +
Parameters
  
  gml_string a une valeur numérique: incompatibilité de type.
+
command_string is a string expression of one of the following forms:
    gml_string a des erreurs dans le GML: Illegal appel de fonction.
+
    Une variable référencée dans la chaîne GML est de type incorrect: incompatibilité de type.
+
  
EDIT EDIT {line_number |.}
+
"VARIABLE=VALUE"
 +
    to set VARIABLE to VALUE;
 +
"VARIABLE="
 +
    to unset VARIABLE.  
  
Affiche la ligne de programme spécifié avec le curseur positionné pour l'édition. line_number doit être une ligne qui existe dans le programme, ou un point (.) pour indiquer la dernière ligne stockée. les erreurs
+
Errors
  
  Non line_number est spécifié: numéro de ligne défini.
+
     command_string has a numeric value: Type mismatch.
     Plus de caractères sont écrits après le numéro de ligne: Illegal appel de fonction.
+
     command_string is not of the required form: Illegal function call.
     line_number est pas dans [0-65529]: Illegal appel de fonction.
+
    n'existe pas Le numéro de ligne spécifié: numéro de ligne défini.
+
  
AUTRE AUTRE [quelque chose]
+
ERASE
 +
ERASE array_0 [, array_1] ...
  
Sauf partie d'une instruction IF sur la même ligne, rien après ELSE est ignoré de la même manière que, après 'ou: REM. Aucun colon: précédant l'instruction ELSE est nécessaire. Voir SI pour une utilisation normale. FIN FIN
+
De-allocates arrays. The data stored in the arrays is lost.
 +
Parameters
  
Ferme tous les fichiers, arrête l'exécution du programme et renvoie le contrôle à l'utilisateur. Aucun message est imprimé. Il est possible de reprendre l'exécution à l'instruction suivante en utilisant CONT. ENVIRON ENVIRON command_string
+
    array_0, array_1 ... are names of existing arrays. The names must be specified without brackets.
  
Définit une variable d'environnement shell. Paramètres
+
Errors
  
command_string est une expression de chaîne de l'une des formes suivantes:
+
    No array names are given: Syntax error.
 +
    array_0, array_1 ... do not exist: Illegal function call.
 +
    If an error occurs, the arrays named before the error occurred are erased.
  
"VARIABLE = VALEUR"
+
ERROR
 +
ERROR error_number
  
  pour définir VARIABLE à VALUE;
+
Raises the error with number error_number.
 +
Parameters
  
"VARIABLE ="
+
    error_number is an expression with a numeric value.
  
  à VARIABLE unset.
+
Errors
  
les erreurs
+
    error_number has a string value: Type mismatch.
 +
    error_number is not in [-32768—32767]: Overflow.
 +
    error_number is not in [1—255]: Illegal function call.
  
  command_string a une valeur numérique: incompatibilité de type.
+
FIELD
    command_string n'a pas la forme requise: Illegal appel de fonction.
+
FIELD [#] file_number [, width_0 AS name_0 [, width_1 AS name_1] ...]
  
ERASE ERASE array_0 [, array_1] ...
+
Assigns variables to the random-access record buffer. The record buffer is a region of memory of length defined by the OPEN statement; the default record length is 128 bytes. The FIELD statement assigns a portion of this region to one or more fixed-length string variables, so that the value of these strings is whatever happens to be in the record buffer at that location.
 +
Notes
  
De-alloue des tableaux. Les données stockées dans les tableaux sont perdues. Paramètres
+
    A FIELD statement without any variables specified has no effect.
 +
    Another FIELD statement on the same file will specify an alternative mapping of the same file buffer; all mappings will be in effect simultaneously.
 +
    A subsequent assignment or LET or MID$ statement on name_0 , name_1 ... will dis- associate the string variable from the field buffer.
 +
    Use LSET, RSET or MID$ to copy values into a FIELD buffer.
 +
    Use GET to read values from the file into the field buffer, changing the variables.
 +
    Use PUT to write the field buffer to the file.
  
  array_0, array_1 ... sont des noms de réseaux existants.  Les noms doivent être spécifiés sans crochets.
+
Parameters
  
les erreurs
+
    file_number is a numeric expression that yields the number of an open random-access file. The # is optional and has no effect.
 +
    width_0, width_1, ... are numeric expressions giving the length of the string variables
 +
    name_0 , name_1 ... are string variables.
  
  Aucun nom de tableau sont données: Erreur de syntaxe.
+
Errors
    array_0, array_1 ... n'existent pas: Illegal appel de fonction.
+
    Si une erreur se produit, les tableaux nommés avant l'erreur sont effacées.
+
  
ERROR ERROR numéro_erreur
+
    file_number is not in [0—255]: Illegal function call.
 +
    file_number is not the number of an open file: Bad file number.
 +
    file_number is open under a mode other than RANDOM: Bad file mode.
 +
    The statement ends in a comma: Missing operand.
 +
    No file number is specified: Missing operand.
 +
    The lengths in a FIELD statement add up to a number larger than the record length of the field buffer: Field overflow.
 +
    name_0 , name_1 ... specify a non-string variable: Type mismatch.
  
Déclenche l'erreur avec le numéro numéro_erreur. Paramètres
+
FILES
 +
FILES [filter_spec]
  
  numéro_erreur est une expression avec une valeur numérique.
+
Displays the files fitting the specified filter in the specified directory on a disk device. If filter_spec is not specified, displays all files in the current working directory.
 +
Parameters
  
les erreurs
+
    filter_spec is a string expression that is much like a file specification, but optionally allows the file name part to contain wildcards.
  
  numéro_erreur a une valeur de chaîne: Type mismatch.
+
Notes
    numéro_erreur est pas dans [-32768-32767]: Overflow.
+
    numéro_erreur est pas dans [1-255]: Illegal appel de fonction.
+
  
FIELD FIELD [#] file_number [, width_0 AS NAME_0 [, width_1 AS name_1] ...]
+
    The filename filter may contain the following wildcards:
 +
    ? Matches any legal file name character.
 +
    * Matches any series of legal file name characters.
 +
    The filter will only match MS-DOS style filenames.
 +
    Matched character series do not stretch across directory separators \ or extension separators .. To match all files with all extensions, use *.*.
 +
    Alternatively, if all files in a specified directory are required, end the directory name with a backslash \.
  
Affecte variables dans le tampon d'enregistrement à accès aléatoire. Le tampon d'enregistrement est une région de mémoire de longueur définie par l'instruction OPEN; la longueur d'enregistrement par défaut est de 128 octets. L'instruction FIELD attribue une partie de cette région à une ou plusieurs variables de chaîne de longueur fixe, de sorte que la valeur de ces chaînes est tout ce qui arrive à être dans le tampon d'enregistrement à cet endroit. Remarques
+
Errors
  
  Une instruction FIELD sans variables spécifiées n'a pas d'effet.
+
    filter_spec has a numeric value: Type mismatch.
    Une autre instruction FIELD sur le même fichier spécifiera une alternative cartographie du même tampon de fichier;  toutes les applications seront en vigueur simultanément.
+
     filter_spec is the empty string: Bad file name.
    Une affectation subséquente ou louer ou MID $ déclaration sur NAME_0, name_1 ... seront dis- associer la variable de chaîne de la mémoire tampon de champ.
+
     The specified filter does not match any files: File not found.
    Utilisez LSET, RSET ou MID $ pour copier les valeurs dans un tampon de FIELD.
+
     Utilisez GET pour lire les valeurs du fichier dans la mémoire tampon de champ, en changeant les variables.
+
     Utilisez PUT pour écrire le tampon de champ dans le fichier.
+
  
Paramètres
+
FOR
 +
FOR loop_var = start TO stop [STEP step]
  
  file_number est une expression numérique qui donne le nombre d'un fichier à accès aléatoire ouvert.  Le # est facultative et n'a aucun effet.
+
Initiates a FOR—NEXT loop.
    width_0, width_1, ... sont des expressions numériques donnant la longueur des variables de chaîne
+
    NAME_0, name_1 ... sont des variables de chaîne.
+
  
les erreurs
+
Initially, loop_var is set to start. Then, the statements between the FOR statement and the NEXT statement are executed and loop_var is incremented by step (if step is not specified, by 1). This is repeated until loop_var has become greater than stop. Execution then continues at the statement following NEXT. The value of loop_var equals stop+step after the loop.
 +
Parameters
  
  file_number est pas dans [0-255]: Illegal appel de fonction.
+
     loop_var is a numeric variable.
     file_number est pas le nombre d'un fichier ouvert: Numéro de fichier incorrect.
+
     start, stop and step are numeric expressions.
     file_number est ouvert sous un autre mode que RANDOM: Mode de fichier incorrect.
+
    La déclaration se termine par une virgule: Missing opérande.
+
    Aucun numéro de fichier est spécifié: opérande manquant.
+
    Les longueurs dans une instruction FIELD ajouter jusqu'à un nombre plus grand que la longueur d'enregistrement de la mémoire tampon de champ: débordement de terrain.
+
    NAME_0, name_1 ... spécifier un non-variable chaîne: Incompatibilité de type.
+
  
FICHIERS FILES [filter_spec]
+
Errors
  
Affiche les fichiers adaptant le filtre spécifié dans le répertoire spécifié sur un périphérique de disque. Si filter_spec est pas spécifié, affiche tous les fichiers dans le répertoire de travail courant. Paramètres
+
    No NEXT statement is found to match the FOR statement: FOR without NEXT occurs at the FOR statement.
 +
    loop_var is a string variable or start, stop, or end has a string value: Type mismatch.
 +
    loop_var is an array element: Syntax error .
 +
    loop_var is an integer variable and a start, stop or step is outside the range [-32768, 32767]: Overflow .
  
  filter_spec est une expression de chaîne qui est un peu comme une spécification de fichier, mais permet éventuellement le nom du fichier partie pour contenir des caractères génériques.
+
GET (files)
 +
GET [#] file_number [, record_number]
  
Remarques
+
Read a record from the random-access file file_number at position record_number. The record can be accessed through the FIELD variables or through INPUT$, INPUT or LINE INPUT.
 +
Parameters
  
  Le filtre de nom de fichier peut contenir les caractères génériques suivants:
+
     file_number is a numeric expression that yields the number of an open random-access file. The # is optional and has no effect.
  ?  Correspond à tout caractère légal de nom de fichier.
+
     record_number is a numeric expression in [1—33554432] (2^25), and is interpreted as the record number.
     * Correspond une série de noms de fichiers caractères juridiques.
+
    Le filtre ne correspond MS-DOS noms de style.
+
    série de caractères appariés ne pas étirer à travers des séparateurs répertoire \ ou séparateurs d'extension .. Pour faire correspondre tous les fichiers avec toutes les extensions, utilisez *. *.
+
     Par ailleurs, si tous les fichiers dans un répertoire spécifié sont nécessaires, mettre fin au nom du répertoire avec un backslash \.
+
  
les erreurs
+
Notes
  
  filter_spec a une valeur numérique: incompatibilité de type.
+
     If the record number is beyond the end of the file, the file buffer is filled with null bytes.
     filter_spec est la chaîne vide: Nom de fichier incorrect.
+
     The record number is stored as single-precision; this precision is not high enough to distinguish single records near the maximum value of 2^25.
     Le filtre spécifié ne correspond pas à tous les fichiers: Fichier non trouvé.
+
  
POUR POUR loop_var = commencer à arrêter [étape de STEP]
+
Errors
  
Lance une boucle FOR-NEXT.
+
    record_number is not in [1—33554432]: Bad record number.
 +
    file_number is not in [0—255]: Illegal function call.
 +
    file_number is not the number of an open file: Bad file number.
 +
    file_number is open under a mode other than RANDOM: Bad file mode.
 +
    file_number is not specified: Missing operand.
  
Dans un premier temps, loop_var est configuré pour démarrer. Ensuite, les déclarations entre la déclaration FOR et l'instruction NEXT sont exécutées et loop_var est incrémenté par l'étape (si l'étape est pas spécifiée, par 1). Cette opération est répétée jusqu'à ce que loop_var est devenue supérieure à l'arrêt. L'exécution se poursuit alors à l'instruction suivante NEXT. La valeur de loop_var égale arrêt + étape après la boucle. Paramètres
+
GET (communications)
 +
GET [#] com_file_number [, number_bytes]
  
  loop_var est une variable numérique.
+
Read number_bytes bytes from the communications buffer opened under file number com_file_number. The record can be accessed through the FIELD variables or through INPUT$, INPUT or LINE INPUT.
    démarrage, l'arrêt et l'étape sont des expressions numériques.
+
Parameters
  
les erreurs
+
    file_number is a numeric expression that yields the number of a file open to a COM device. The # is optional and has no effect.
 +
    number_bytes is a numeric expression between 1 and the COM buffer length, inclusive.
  
  Aucune instruction NEXT se trouve pour correspondre à l'instruction FOR: POUR LA PROCHAINE sans se produit à l'instruction FOR.
+
Notes
    loop_var est une variable de chaîne ou de démarrer, arrêter, ou à la fin a une valeur chaîne: Incompatibilité de type.
+
    loop_var est un élément de tableau: Erreur de syntaxe.
+
    loop_var est une variable entière et un démarrage, l'arrêt ou l'étape est en dehors de l'intervalle [-32768, 32767]: Overflow.
+
  
GET (fichiers) GET [#] file_number [, record_number]
+
    If bytes is 32768 or greater, GW-BASIC hangs. This functionality is not implemented in PC-BASIC.
 +
    In GW-BASIC, Device I/O error is raised for overrun error, framing error, and break interrupt. Device fault is raised if DSR is lost during I/O. Parity error is raised if parity is enabled and incorrect parity is encountered. This is according to the manual; it is untested.
  
Lire un enregistrement du fichier file_number à accès aléatoire à la position record_number. Le dossier peut être consulté par les variables de champ ou par le biais $ INPUT, INPUT ou LINE INPUT. Paramètres
+
Errors
  
  file_number est une expression numérique qui donne le nombre d'un fichier à accès aléatoire ouvert. Le # est facultative et n'a aucun effet.
+
    bytes is less than 1: Bad record number
     record_number est une expression numérique dans [1-33554432] (2 ^ 25), et est interprété comme le numéro d'enregistrement.
+
    bytes is less than 32768 and greater than the COM buffer length: Illegal function call.
 +
    com_file_number is not specified: Missing operand.
 +
     com_file_number is not in [0—255]: Illegal function call.
 +
    com_file_number is not the number of an open file: Bad file number.
 +
    If the serial input buffer is full, i.e. LOF(com_file_number) = 0, and LOC(com_file_number) = 255: Communication buffer overflow
 +
    If the carrier drops during GET, hangs until the Ctrl+Break key is pressed.
  
Remarques
+
GET (graphics)
 +
GET (x0, y0) - [STEP] (x1, y1), array_name
  
  Si le numéro d'enregistrement est au-delà de la fin du fichier, le tampon de fichier est rempli d'octets nuls.
+
Stores a rectangular area of the graphics screen in an array. The area stored is a rectangle parallel to the screen edges, bounded by the top-left and bottom-right coordinates x0,y0 and x1,y1. If STEP is specified, x1,y1 is an offset from x0,y0. The area is such that these corner points are inside it.
    Le numéro d'enregistrement est stocké sous forme de simple précision;  cette précision est pas assez élevé pour distinguer des enregistrements uniques à proximité de la valeur maximale de 2 ^ 25.
+
  
les erreurs
+
The image stored in the array can then be put on the screen using PUT. For the purposes of GET, any array is considered a string of bytes. The byte size of an array can be calculated as number_elements * byte_size with byte_size equal to 2 for integers (%), 4 for single (!) and 8 for double (#). Array byte size for string is 3, but string arrays are not allowed in GET. For calculating the number of elements, keep in mind that OPTION BASE 0 is the default; in which case an array with maximum index 10 has 11 elements. This works through in multidimensional arrays.
  
  record_number est pas dans [1-33554432]: Numéro d'enregistrement Bad.
+
The array format is as follows:
    file_number est pas dans [0-255]: Illegal appel de fonction.
+
Byte Contains
    file_number est pas le nombre d'un fichier ouvert: Numéro de fichier incorrect.
+
0, 1 Number of x pixels, unsigned int. In SCREEN 1, this value is doubled.
    file_number est ouvert sous un autre mode que RANDOM: Mode de fichier incorrect.
+
2, 3 Number of y pixels, unsigned int.
    file_number est pas spécifié: opérande manquant.
+
4— Pixel data. Data is arranged in 2-byte words. The first 16-bit word holds the bit 0 of the first 16 pixels on the top row. The second word holds the second bit, etc. Data is word-aligned at the end of each row. Thus, in a screen mode with 4 bits per pixel, the first row takes at least 8 bytes (4 words), even if it consists of only one pixel. The number of bits per pixel depends on the SCREEN mode.
 +
Parameters
  
GET (communications) GET [#] com_file_number [, nombre_octets]
+
    array_name is the name of a numeric array dimensioned with enough space to store the area.
 +
    x0, y0, x1, y1 are numeric expressions.
  
Lire nombre_octets octets de la mémoire tampon de communication ouvert sous le numéro de fichier com_file_number. Le dossier peut être consulté par les variables de champ ou par le biais $ INPUT, INPUT ou LINE INPUT. Paramètres
+
Notes
  
  file_number est une expression numérique qui donne le nombre d'un fichier ouvert à un dispositif de COM.  Le # est facultative et n'a aucun effet.
+
     In PCjr/Tandy mode, in SCREEN 6, GET stores an area of twice the width of the specified rectangle.
     nombre_octets est une expression numérique entre 1 et la longueur du tampon de COM, inclus.
+
  
Remarques
+
Errors
  
  Si octets est 32768 ou plus, se bloque GW-BASIC. Cette fonctionnalité est pas implémentée dans PC-BASIC.
+
    The array does not exist: Illegal function call.
     Dans GW-BASIC, Dispositif d'erreur d'E / S est élevé pour erreur de dépassement, le cadrage d'erreur, et de briser interruption. Erreur appareil est déclenchée si DSR est perdue au cours d'E / S. Erreur de parité est déclenchée si la parité est activé et la parité incorrecte est rencontrée. Ceci est indiqué dans le manuel;  il n'a pas été testé.
+
    array_name refers to a string array: Type mismatch.
 +
    The area is too large for the array: Illegal function call.
 +
    x0, ... y1 are string expressions: Type mismatch.
 +
     x0, ... y1 are not in [-32768—32767]: Overflow.
 +
    x0, ... y1 are outside the current VIEW or WINDOW: Illegal function call
  
les erreurs
+
GOSUB
 +
GO[ ]SUB line_number [anything]
  
  octets est inférieur à 1: Numéro d'enregistrement Bad
+
Jumps to a subroutine at line_number. The next RETURN statement jumps back to the statement after GOSUB. Anything after line_number until the end of the statement is ignored. If executed from a direct line, GOSUB runs the subroutine and the following RETURN returns execution to the direct line.
    octets est inférieur à 32768 et supérieure à la longueur de la mémoire tampon de COM: Illegal appel de fonction.
+
Parameters
    com_file_number est pas spécifié: opérande manquant.
+
    com_file_number est pas dans [0-255]: Illegal appel de fonction.
+
    com_file_number est pas le nombre d'un fichier ouvert: Numéro de fichier incorrect.
+
    Si le tampon d'entrée série est complète, à savoir LOF (com_file_number) = 0, et LOC (com_file_number) = 255: débordement de mémoire tampon de communication
+
    Si le transporteur baisse pendant GET, se bloque jusqu'à ce que la touche Ctrl + Pause est enfoncée.
+
  
GET (graphiques) GET (x0, y0) - [STEP] (x1, y1), array_name
+
    line_number is an existing line number literal.
 +
    Further characters on the line are ignored until end of statement.
  
Enregistre une zone rectangulaire de l'écran graphique dans un tableau. La zone stockée est un rectangle parallèle aux bords de l'écran, délimitée par le haut-gauche et les coordonnées en bas à droite x0, y0 et x1, y1. Si STEP est spécifié, x1, y1 est un décalage de x0, y0. La zone est telle que ces points d'angle sont à l'intérieur.
+
Notes
  
L'image stockée dans le réseau peut alors être mis sur l'écran en utilisant PUT. Aux fins de l'EEG, tout tableau est considéré comme une chaîne d'octets. La taille en octets d'un tableau peut être calculée comme number_elements * byte_size avec byte_size égal à 2 pour les entiers (%), 4 pour unique (!) Et 8 pour le double (#). Tableau taille en octets pour la chaîne est 3, mais des tableaux de chaînes ne sont pas autorisés dans GET. Pour calculer le nombre d'éléments, gardez à l'esprit que OPTION BASE 0 est la valeur par défaut; auquel cas un tableau avec indice maximum 10 a 11 éléments. Cela fonctionne par le biais de tableaux multidimensionnels.
+
    If no RETURN is encountered, no problem.
 +
    One optional space is allowed between GO and SUB; it will not be retained in the program.
  
Le format de tableau est la suivante: Octet Contient 0, 1 x Nombre de pixels, unsigned int. Dans ECRAN 1, cette valeur est doublée. 2, 3 Nombre de pixels y, unsigned int. 4- Des données de pixels. Les données sont disposées dans des mots de 2 octets. Le premier mot de 16 bits contient le bit 0 des 16 premiers pixels de la rangée supérieure. Le deuxième mot tient le second bit, etc. Les données sont mot-alignés à la fin de chaque ligne. Ainsi, dans un mode écran avec 4 bits par pixel, la première ligne prend au moins 8 octets (4 mots), même si elle est constituée d'un seul pixel. Le nombre de bits par pixel dépend du mode ECRAN. Paramètres
+
Errors
  
  array_name est le nom d'un tableau numérique dimensionné avec suffisamment d'espace pour stocker la zone.
+
    If line_number does not exist: Undefined line number.
     x0, y0, x1, y1 sont des expressions numériques.
+
     If line_number is greater than 65529, only the first 4 characters are read (e.g. 6553)
  
Remarques
+
GOTO
 +
GO[ ]TO line_number [anything]
  
  En mode PCjr / Tandy, dans l'écran 6, GET magasins une superficie de deux fois la largeur du rectangle spécifié.
+
Jumps to line_number. Anything after line_number until the end of the statement is ignored. If executed from a direct line, GOTO starts execution of the program at the specified line.
 +
Parameters
  
les erreurs
+
    line_number is an existing line number literal.
 +
    Further characters on the line are ignored until end of statement.
  
  Le tableau n'existe pas: Illegal appel de fonction.
+
Notes
    array_name fait référence à un tableau de chaînes: Incompatibilité de type.
+
    La zone est trop grande pour le tableau: Illegal appel de fonction.
+
    x0, ... y1 sont des expressions de chaîne: Type mismatch.
+
    X0, ... y1 ne sont pas dans [-32768 à 32767]: Overflow.
+
    X0, ... y1 sont en dehors de la vue ou la fenêtre courante: Illegal appel de fonction
+
  
GOSUB GO [] SUB line_number [quelque chose]
+
    Any number of optional spaces is allowed between GO and TO, but they will not be retained in the program.
 +
    If line_number is greater than 65529, only the first 4 characters are read (e.g. GOTO 65530 is executed as GOTO 6553)
  
Saute à un sous-programme à line_number. La prochaine instruction RETURN revient à la déclaration après GOSUB. Tout ce qui suit line_number jusqu'à la fin de l'instruction est ignorée. Si elle est exécutée à partir d'une ligne directe, GOSUB exécute le sous-programme et le retour suivant renvoie l'exécution à la ligne directe. Paramètres
+
Errors
  
  line_number est un numéro de ligne existante littérale.
+
     line_number does not exist: Undefined line number.
     D'autres caractères sur la ligne sont ignorées jusqu'à la fin de la déclaration.
+
  
Remarques
+
IF
 +
IF truth_value [,] {THEN|GOTO} [compound_statement_true|line_number_true [anything]] [ELSE [compound_statement_false|line_number_false [anything]]]
  
  Si aucun RETURN est rencontrée, pas de problème.
+
If truth_value is non-zero, executes compound_statement_true or jumps to line_number_true . If it is zero, executes compound_statement_false or jumps to line_number_false .
    Un espace optionnel est autorisé entre GO et SUB;  il ne sera pas retenu dans le programme.
+
Parameters
  
les erreurs
+
    truth_value is a numeric expression.
 +
    line_number_false and line_number_true are existing line numbers.
 +
    compound_statement_false and compound_statement_true are compound statements, consisting of at least one statement, optionally followed by further statements separated by colons :. The compound statements may contain nested IF—THEN—ELSE statements.
  
  Si line_number n'existe pas: Undefined numéro de ligne.
+
Notes
    Si line_number est supérieur à 65529, seuls les 4 premiers caractères sont lus (par exemple 6553)
+
  
GOTO GO [] À LINE_NUMBER [quelque chose]
+
    The comma is optional and ignored.
 +
    ELSE clauses are optional; they are bound to the innermost free IF statement if nested. Additional ELSE clauses that have no matching IF are ignored.
 +
    All clauses must be on the same program line.
 +
    THEN and GOTO are interchangeable; which one is chosen is independent of whether a statement or a line number is given. GOTO PRINT 1 is fine.
 +
    As in GOTO, anything after the line number is ignored.
  
Saute à LINE_NUMBER. Tout ce qui suit line_number jusqu'à la fin de l'instruction est ignorée. Si elle est exécutée à partir d'une ligne directe, GOTO commence l'exécution du programme à la ligne spécifiée. Paramètres
+
Errors
  
  line_number est un numéro de ligne existante littérale.
+
    If truth_value has a string value: Type mismatch.
     D'autres caractères sur la ligne sont ignorées jusqu'à la fin de la déclaration.
+
     truth_value equals 0 and line_number_false is a non-existing line number, or truth_value is nonzero and line_number_true is a non-existing line number: Undefined line number.
  
Remarques
+
INPUT (console)
 +
INPUT [;] [prompt {;|,}] var_0 [, var_1] ...
  
  Tout nombre de places en option est autorisée entre GO et TO, mais ils ne seront pas conservées dans le programme.
+
Prints prompt to the screen and waits for the user to input values for the specified variables. The semicolon before the prompt, if present, stops a newline from being printed after the values have been entered. If the prompt is followed by a semicolon, it is printed with a trailing ?. If the prompt is followed by a comma, no question mark is added.
    Si line_number est supérieur à 65529, seuls les 4 premiers caractères sont lus (par exemple GOTO 65530 est exécuté comme GOTO 6553)
+
Parameters
  
les erreurs
+
    prompt is a string literal.
 +
    var_0, var_1, ... are variable names or fully indexed array elements.
  
  line_number n'existe pas: numéro de ligne défini.
+
Notes
  
SI SI truth_value [,] {THEN | GOTO} [compound_statement_true | line_number_true [rien]] [AUTRE [compound_statement_false | line_number_false [quelque chose]]]
+
    Values entered must be separated by commas. Leading and trailing whitespace is discarded.
 +
    String values can be entered with or without double quotes (").
 +
    If a string with a comma, leading or trailing whitespace is needed, quotes are the only way to enter it.
 +
    Between a closing quote and the comma at the end of the entry, only white- space is allowed.
 +
    If quotes are needed in the string itself, the first character must be neither a quote nor whitespace. It is not possible to enter a string that starts with a quote through INPUT.
 +
    If a given var_n is a numeric variable, the value entered must be number literal.
 +
    Characters beyond the 255th character of the screen line are discarded.
 +
    If user input is interrupted by Ctrl+Break, CONT will re-execute the INPUT statement.
  
Si truth_value est non nul, exécute des sauts de compound_statement_true ou line_number_true. Si elle est nulle, exécute compound_statement_false ou saute à line_number_false. Paramètres
+
Errors
  
  truth_value est une expression numérique.
+
     If the value entered for a numeric variable is not a valid numeric literal, or the number of values entered does not match the number of variables in the statement, ?Redo from start is printed and all values must be entered again.
     line_number_false et line_number_true sont les numéros de ligne existants.
+
     A Syntax error that is caused after the prompt is printed is only raised after the value shave been entered. No values are stored.
     compound_statement_false et compound_statement_true sont des instructions composées, composé d'au moins une déclaration, suivie éventuellement d'autres déclarations séparées par des virgules. Les états composés peuvent contenir des déclarations imbriquées IF-THEN-ELSE.
+
  
Remarques
+
INPUT (files)
 +
INPUT # file_num, var_0 [, var_1] ...
  
  La virgule est optionnel et ignoré.
+
Reads string or numeric variables from a text file or the FIELD buffer of a random access file.
    clauses AUTRE sont facultatifs;  ils sont liés à la déclaration la plus intérieure libre IF si imbriqué.  clauses ELSE supplémentaires qui ont pas de correspondance IF sont ignorées.
+
Parameters
    Toutes les clauses doivent être sur la même ligne de programme.
+
    THEN et GOTO sont interchangeables;  dont l'un est choisi est indépendant si l'on indique une déclaration ou un numéro de ligne.  GOTO PRINT 1 est très bien.
+
    Comme dans GOTO, quoi que ce soit après le numéro de ligne est ignoré.
+
  
les erreurs
+
    file_num is the number of a file open in INPUT mode or a random-access file open in RANDOM mode.
 +
    var_0, var_1, ... are variable names or fully indexed array elements.
  
  Si truth_value a une valeur de chaîne: Type mismatch.
+
Notes
    truth_value est égal à 0 et line_number_false est un numéro de ligne non-existante, ou truth_value est non nul et line_number_true est un numéro de ligne non-existante: numéro de ligne défini.
+
  
INPUT (console) INPUT [;] [invite {; |,}] var_0 [, var_1] ...
+
    The # is mandatory. There may or may not be whitespace between INPUT and #.
 +
    String values can be entered with or without double quotes (").
 +
    Numeric values are terminated by  , LF, CR, ,.
 +
    Unquoted strings are terminated by LF, CR, ,.
 +
    Quoted strings are terminated by the closing quote.
 +
    Any entry is terminated by EOF character or its 255th character.
 +
    Leading and trailing whitespace is discarded.
 +
    If the entry cannot be converted to the requested type, a zero value is returned.
 +
    If file_num is open to KYBD:, INPUT# reads from the keyboard until a return or comma is encountered (as in a file). Arrow keys and delete are passed as their control characters (not scancodes!) preceded by CHR$(&hFF).
  
Prints invitent à l'écran et attend pour l'utilisateur de valeurs d'entrée pour les variables spécifiées. Le point-virgule avant l'invite, le cas échéant, arrête une nouvelle ligne d'être imprimé après les valeurs ont été saisies. Si l'invite est suivie par un point-virgule, il est imprimé avec une fuite?. Si l'invite est suivi d'une virgule, pas de point d'interrogation est ajouté. Paramètres
+
Errors
  
  invite est une chaîne littérale.
+
    Input is requested after the end of a text file has been reached or an EOF character has been encountered: Input past end.
     var_0, var_1, ... sont des noms de variables ou éléments du tableau entièrement indexés.
+
     The last character of the field buffer is read: Field overflow.
 +
    file_num has a string value: Type mismatch.
 +
    file_num is greater than 32767: Overflow.
 +
    file_num is less than zero: Illegal function call.
 +
    file_num is not an open file: Bad file number.
 +
    file_num is not open for INPUT or RANDOM: Bad file mode.
 +
    file_num is open to a COM port and this is the first INPUT, LINE INPUT or INPUT$ call on that port since the buffer has filled up completely (i.e. LOF(file_num) has become zero): Communication buffer overflow.
  
Remarques
+
IOCTL
 +
IOCTL [#] file_num, control_string
  
  Les valeurs entrées doivent être séparées par des virgules.  Espaces avant et après est jeté.
+
Raises Illegal function call.
    Les valeurs de chaîne peuvent être saisies avec ou sans guillemets doubles ( ").
+
Notes
    Si une chaîne avec une virgule, avant ou arrière des espaces est nécessaire, les citations sont la seule façon d'y entrer.
+
    Entre une citation de clôture et la virgule à la fin de l'entrée, seul espace blanc- est autorisé.
+
    Si les guillemets sont nécessaires dans la chaîne elle-même, le premier caractère ne doit être ni un devis ni des espaces.  Il est impossible d'entrer dans une chaîne qui commence avec une citation par INPUT.
+
    Si un var_n donné est une variable numérique, la valeur saisie doit être littéral.
+
    Les personnages au-delà du 255e caractère de la ligne de l'écran sont jetés.
+
    Si l'entrée de l'utilisateur est interrompu par Ctrl + Break, CONT sera ré-exécuter l'instruction INPUT.
+
  
les erreurs
+
    In GW-BASIC, IOCTL sends a control string to a device.
 +
    This statement is not implemented in PC-BASIC.
  
  Si la valeur saisie pour une variable numérique est un littéral numérique valide, ou le nombre de valeurs entrées ne correspond pas au nombre de variables dans la déclaration,? Refaire du début est imprimé et toutes les valeurs doit être saisi à nouveau.
+
Errors
    Une erreur de syntaxe qui est causée après l'invite est imprimée est uniquement soulevée après que la valeur shave été saisie.  Aucune valeur sont stockées.
+
  
INPUT (fichiers) ENTRÉE # file_num, var_0 [, var_1] ...
+
    file_num has a string value: Type mismatch.
 +
    file_num is not in [-32768—32767]: Overflow.
 +
    file_num is not an open file: Bad file number.
 +
    Otherwise: Illegal function call
  
Lit chaîne ou variables numériques à partir d'un fichier texte ou le tampon de champ d'un fichier d'accès aléatoire. Paramètres
+
KEY (macro list)
 +
KEY {ON|OFF|LIST}
  
  file_num est le numéro d'un fichier ouvert en mode INPUT ou un fichier à accès aléatoire ouvert en mode RANDOM.
+
Turns the list of function-key macros on the bottom of the screen ON or OFF. If LIST is specified, prints a list of the 10 (or 12 with syntax=tandy) function keys with the function-key macros defined for those keys to the console.
    var_0, var_1, ... sont des noms de variables ou éléments du tableau entièrement indexés.
+
  
Remarques
+
Most characters are represented by their symbol equivalent in the current codepage. However, some characters get a different representation, which is a symbolic representation of their effect as control characters on the screen.
 +
Code point Replacement Usual glyph
 +
&h07 &h0E ♫
 +
&h08 &hFE ■
 +
&h09 &h1A →
 +
&h0A &h1B ←
 +
&h0B &h7F ⌂
 +
&h0C &h16 ▬
 +
&h0D &h1B ←
 +
&h1C &h10 ►
 +
&h1D &h11 ◄
 +
&h1E &h18 ↑
 +
&h1F &h19 ↓
 +
KEY (macro definition)
 +
KEY key_id, string_value
  
  Le # est obligatoire. Il peut ou peut ne pas être d'espace entre INPUT et #.
+
Defines the string macro for function key key_id. Only the first 15 characters of string_value are stored.
    Les valeurs de chaîne peuvent être saisies avec ou sans guillemets doubles ( ").
+
Parameters
    Les valeurs numériques sont terminées par, LF, CR,.
+
    cordes Unquoted sont terminées par LF, CR,.
+
    Les chaînes entre guillemets sont terminés par la citation de clôture.
+
    Toute inscription se termine par le caractère EOF ou son caractère 255e.
+
    Espaces avant et après est jeté.
+
    Si l'entrée ne peut pas être converti en le type demandé, une valeur zéro est retourné.
+
    Si file_num est ouvert à INPUT N ° KYBD lit à partir du clavier jusqu'à ce qu'un retour ou une virgule est rencontré (comme dans un fichier).  Les touches fléchées et supprimer sont transmis leurs caractères de contrôle (non scancodes!) Précédés de CHR $ (& HFF).
+
  
les erreurs
+
    key_id is a numeric expression in the range [1—10] (or [1—12] when syntax=tandy).
 +
    string_value is a string expression.
  
  L'entrée est demandée après la fin d'un fichier texte a été atteint ou un caractère EOF a été rencontrée: Entrée passé fin.
+
Notes
    Le dernier caractère de la mémoire tampon de champ est en lecture: débordement de terrain.
+
    file_num a une valeur de chaîne: Type mismatch.
+
    file_num est supérieure à 32767: Overflow.
+
    file_num est inférieur à zéro: Illegal appel de fonction.
+
    file_num est pas un fichier ouvert: Numéro de fichier incorrect.
+
    file_num est pas ouvert pour INPUT ou RANDOM: Mode de fichier incorrect.
+
    file_num est ouvert à un port COM et ceci est la première entrée, LINE INPUT ou INPUT $ appel sur ce port depuis le tampon a rempli complètement (c.-à-LOF (file_num) est devenu zéro): débordement de mémoire tampon de communication.
+
  
IOCTL IOCTL [#] file_num, control_string
+
    If key_id is not in the prescribed range, the statement is interpreted as an event-trapping KEY statement.
 +
    If string_value is the empty string or the first character of string_value is CHR$(0), the function key macro is switched off and subsequent catching of the associated function key with INKEY$ is enabled.
  
Déclenche illégale appel de fonction. Remarques
+
Errors
  
  Dans GW-BASIC, IOCTL envoie une chaîne de commande à un dispositif.
+
    key_id is not in [-32768—32767]: Overflow.
     Cette déclaration n'a pas été mis en œuvre dans PC-BASIC.
+
     key_id is not in [1—255]: Illegal function call.
 +
    key_id has a string value: Type mismatch.
  
les erreurs
+
KEY (event switch)
 +
KEY (key_id) {ON|OFF|STOP}
  
  file_num a une valeur de chaîne: Type mismatch.
+
Controls event trapping of the key with identifier key_id. Event trapping is switched ON or OFF. STOP suspends event trapping until a KEY() ON is executed. Up to one event can be triggered during suspension, provided that event handling was switched on prior to suspension. The event triggered during suspension is handled immediately after the next KEY() ON statement.
    file_num est pas dans [-32.768 à 32.767]: Overflow.
+
Parameters
    file_num est pas un fichier ouvert: Numéro de fichier incorrect.
+
    Dans le cas contraire: Illegal appel de fonction
+
  
KEY (macro liste) KEY {ON | OFF | LIST}
+
key_id is a numeric expression in [1—20]. Keys are:
 +
1 F1
 +
2 F2
 +
3 F3
 +
4 F4
 +
5 F5
 +
6 F6
 +
7 F7
 +
8 F8
 +
9 F9
 +
10 F10
 +
11 ↑
 +
12 ←
 +
13 →
 +
14 ↓
  
Active la liste des macros de touches de fonction sur le bas de l'écran ON ou OFF. Si LISTE est spécifié, affiche une liste des 10 (ou 12 avec syntaxe = tandy) touches de fonction avec les macros de touches de fonction définies pour les clés de la console.
+
Keys 15 to 20 are defined using the event trapping KEY definition statement.
 +
Notes
  
La plupart des personnages sont représentés par leur symbole équivalent dans le codepage actuel. Cependant, certains caractères obtiennent une représentation différente, qui est une représentation symbolique de leur effet que les caractères de contrôle sur l'écran. Code de point de remplacement glyphe Usual & h07 & H0e ♫ & H08 & hFE ■ & h09 & H1A → & H0A & H1B ← & H0B & H7F ⌂ & h0C & h16 ▬ & h0D & H1B ← & h1C & h10 ► & h1d & h11 ◄ & H1E & h18 ↑ & H1F & h19 ↓ KEY (macro définition) key_id KEY, STRING_VALUE
+
    With syntax=tandy, key 11 is F11 and key 12 is F12. Pre-defined keys 11—14 shift to 13—16.
  
Définit la macro de chaîne pour la touche de fonction key_id. Seuls les 15 premiers caractères du STRING_VALUE sont stockés. Paramètres
+
Errors
  
  key_id est une expression numérique dans l'intervalle [1-10] (ou [1-12] lorsque la syntaxe = tandy).
+
    key_id is not in [-32768—32767]: Overflow.
     STRING_VALUE est une expression de chaîne.
+
    key_id is not in [0—20]: Illegal function call.
 +
     key_id has a string value: Type mismatch.
  
Remarques
+
KEY (event definition)
 +
KEY key_id, two_char_string
  
  Si key_id est pas dans la plage prescrite, la déclaration est interprétée comme une déclaration KEY événement de piégeage.
+
Defines the key to trap for key_id.
    Si STRING_VALUE est la chaîne vide ou le premier caractère de STRING_VALUE est CHR $ (0), la macro touche de fonction est désactivée et la capture ultérieure de la touche de fonction associée à INKEY $ est activée.
+
Parameters
  
les erreurs
+
    key_id is a numeric expression in [15—20] (or [17—20] when syntax=tandy).
 +
    two_char_string is a string expression of length 2. The first character is interpreted as a modifier while the second character is interpreted as a scancode. The modifier character is a bitwise OR combination of the following flags:
 +
    CHR$(&h80) Extended
 +
    CHR$(&h40) Caps Lock
 +
    CHR$(&h20) Num Lock
 +
    CHR$(&h08) Alt
 +
    CHR$(&h04) Ctrl
 +
    CHR$(&h02) Shift (either side)
 +
    CHR$(&h01) Shift (either side)
 +
    For the unmodified key, the modifier character is CHR$(0).
  
  key_id est pas dans [-32768 à 32767]: Overflow.
+
Notes
    key_id est pas dans [1-255]: Illegal appel de fonction.
+
    key_id a une valeur de chaîne: Type mismatch.
+
  
KEY (commutateur d'événement) KEY (key_id) {ON | OFF | STOP}
+
    If key_id is not in the prescribed range, no error is raised; such values are ignored. In GW-BASIC strange things can happen in this case: screen anomalies and crashes suggestive of unintended memory access.
 +
    If key_id is in [1—10] (or [1—12] when syntax=tandy), the statement is interpreted as a function-key macro definition.
  
Contrôles événement piégeage de la clé avec identifiant key_id. le piégeage de l'événement est allumé ou éteint. ARRÊT suspend événement piégeage jusqu'à ce qu'une touche () ON est exécutée. Jusqu'à un événement peut être déclenché pendant la suspension, à condition que la gestion des événements a été activée avant la suspension. L'événement déclenché pendant la suspension est traitée immédiatement après la prochaine KEY () ON déclaration. Paramètres
+
Errors
  
key_id est une expression numérique dans [1-20]. Les clés sont: 1 F1 2 F2 F3 3 4 F4 F5 5 6 F6 7 F7 8 F8 9 F9 10 F10 11 ↑ 12 ← 13 → 14 ↓
+
    key_id is not in [-32768—32767]: Overflow.
 +
    key_id is not in [1—255]: Illegal function call.
 +
    key_id has a string value: Type mismatch.
 +
    two_char_string is longer than two: Illegal function call.
 +
    two_char_string has a numeric value: Type mismatch.
  
Touches 15 à 20 sont définies en utilisant l'événement de piégeage énoncé de définition KEY. Remarques
+
KILL
 +
KILL file_spec
  
  Avec la syntaxe = tandy, la clé 11 est F11 et la clé 12 est F12.  Prédéfinis clés 11-14 passage à 13-16.
+
Deletes a file on a disk device.
 +
Parameters
  
les erreurs
+
    The string expression file_spec is a valid file specification indicating the file to delete. It must point to an existing file on a disk device.
  
  key_id est pas dans [-32768 à 32767]: Overflow.
+
Errors
    key_id est pas dans [0-20]: Illegal appel de fonction.
+
    key_id a une valeur de chaîne: Type mismatch.
+
  
KEY (définition d'événement) de key_id KEY, two_char_string
+
    file_spec has a number value: Type mismatch.
 +
    The file file_spec is open: File already open
 +
    The file or path file_spec does not exist: File not found
 +
    The user has no write permission: Permission denied
 +
    If a syntax error occurs after the closing quote, the file is removed anyway.
  
Définit la clé de piège pour key_id. Paramètres
+
LCOPY
 +
LCOPY [num]
  
  key_id est une expression numérique dans [15-20] (ou [17-20] lorsque la syntaxe = tandy).
+
Does nothing.
    two_char_string est une expression de chaîne de longueur 2. Le premier caractère est interprété comme un modificateur tandis que le second caractère est interprété comme un scancode.  Le caractère modificateur est un OU binaire combinaison des drapeaux suivants:
+
Parameters
    CHR $ (& h80) Extended
+
    CHR $ (& h40) Caps Lock
+
    CHR $ (& h20) Num Lock
+
    CHR $ (& H08) Alt
+
    CHR $ (& h04) Ctrl
+
    CHR $ (& H02) Maj (de chaque côté)
+
    CHR $ (& h01) Maj (de chaque côté)
+
    Pour la clé non modifié, le caractère modificateur est CHR $ (0).
+
  
Remarques
+
    num is a numeric expression in [0—255].
  
  Si key_id est pas dans la plage prescrite, aucune erreur est soulevée;  ces valeurs sont ignorées.  Dans GW-BASIC choses étranges peuvent se produire dans ce cas: anomalies de l'écran et les accidents évocateurs d'accès à la mémoire involontaire.
+
Notes
    Si key_id est en [1-10] (ou [1-12] lorsque la syntaxe = tandy), la déclaration est interprétée comme une macro définition de la fonction-clé.
+
  
les erreurs
+
    This statement does nothing in GW-BASIC. Presumably, it is left over from a statement in older versions of MS Basic that would copy the screen to the printer.
  
  key_id est pas dans [-32768 à 32767]: Overflow.
+
Errors
    key_id est pas dans [1-255]: Illegal appel de fonction.
+
    key_id a une valeur de chaîne: Type mismatch.
+
    two_char_string est plus longue que deux: Illegal appel de fonction.
+
    two_char_string a une valeur numérique: incompatibilité de type.
+
  
KILL KILL file_spec
+
    num is not in [-32768—32767]: Overflow.
 +
    num is not in [0—255]: Illegal function call.
 +
    num has a string value: Type mismatch.
  
Supprime un fichier sur un périphérique de disque. Paramètres
+
LET
 +
[LET] name = expression
  
  Le file_spec d'expression de chaîne est une spécification de fichier valide indiquant le fichier à supprimer.  Il doit pointer vers un fichier existant sur un périphérique de disque.
+
Assigns the value of expression to the variable or array element name.
 +
Parameters
  
les erreurs
+
    name is a variable that may or may not already exist.
 +
    The type of expression matches that of name: that is, all numeric types can be assigned to each other but strings can only be assigned to strings.
  
  file_spec a une valeur numérique: incompatibilité de type.
+
Errors
    Le file_spec de fichier est ouvert: Fichier déjà ouvert
+
    Le fichier ou le chemin file_spec n'existe pas: Fichier introuvable
+
    L'utilisateur n'a pas l'autorisation d'écriture: Autorisation refusée
+
    Si une erreur de syntaxe se produit après le cours de clôture, le fichier est supprimé de toute façon.
+
  
LCOPY LCOPY [num]
+
    name and expression are not of matching types: Type mismatch.
  
Ne fait rien. Paramètres
+
LINE
 +
LINE [[STEP] (x0, y0)] - [STEP] (x1, y1) [, [attr] [, [B [F]] [, pattern]]]
  
  num est une expression numérique dans [0-255].
+
Draws a line or a box in graphics mode. If B is not specified, a line is drawn from (x0, y0) to (x1, y1), endpoints inclusive. If B is specified, a rectangle is drawn with sides parallel to the screen and two opposing corners specified by (x0, y0) and (x1, y1). If the starting point is not given, the current graphics position is used as a staring point. If STEP is specified, (x0, y0) is an offset from the current position and (x1, y1) is an offset from (x0, y0). LINE moves the current graphics position to the last given endpoint. If F is specified with B, the rectangle is filled with the specified attribute. F and B may be separated by zero or more spaces.
 +
Parameters
  
Remarques
+
    attr is a numeric expression in [0—255], which specifies the colour attribute of the line. If it is not given, the current attribute is used.
 +
    pattern is a numeric expression in [-32768—32767]. This is interpreted as a 16-bit binary pattern mask applied to consecutive pixels in the line: a 1 bit indicates a pixel plotted; a 0 bit indicates a pixel left untouched. The pattern starts at the most significant bit, which is applied to the topmost endpoint. If a box is drawn, the pattern is applied in the following counter-intuitive sequence: (x1, y1)—(x0, y1), (x1, y0)—(x0, y0), then (x1, y0)—(x1, y1), (x0, y0)—(x0, y1) if y0<y1 and y0, y1 reversed if y1<y0. When drawing a filled box, LINE ignores the pattern.
  
  Cette déclaration ne fait rien en GW-BASIC.  Vraisemblablement, il est laissé plus d'une déclaration dans les anciennes versions de MS Basic qui copie l'écran à l'imprimante.
+
Notes
  
les erreurs
+
    If a coordinate is outside the screen boundary, it is replaced with -1 (if less than 0) or the screen dimension (if larger than the screen dimension).
  
  num est pas dans [-32768 à 32767]: Overflow.
+
Errors
    num est pas dans [0-255]: Illegal appel de fonction.
+
    num a une valeur de chaîne: Type mismatch.
+
  
LET [LET] name = expression
+
    The statement ends in a comma and it is the first or third: Missing operand. If it is the second: Syntax error.
 +
    Any of the coordinates is not in [-32768—32767]: Overflow.
 +
    Any of the parameters has a string value: Type mismatch.
  
Affecte la valeur d'expression au nom de l'élément variable ou un tableau. Paramètres
+
LINE INPUT (console)
 +
LINE INPUT [;] [prompt_literal {;|,}] string_name
  
  nom est une variable qui peut ou peut ne pas exister déjà.
+
Displays the prompt given in prompt_literal and reads user input from the keyboard, storing it into the variable string_name. All input is read until Enter is pressed; the first 255 characters are stored. If the ; is given right after LINE INPUT, the Enter ending user input is not echoed to the screen.
    Le type d'expression correspond à celle du nom: qui est, tous les types numériques peuvent être affectés à l'autre, mais les chaînes ne peuvent être affectées à des chaînes.
+
Parameters
  
les erreurs
+
    prompt_literal is a string literal. It makes no difference whether it is followed by a comma or a semicolon.
 +
    string_name is a string variable or array element.
  
  le nom et l'expression ne sont pas des types correspondant: incompatibilité de type.
+
Notes
  
LINE LINE [[STEP] (x0, y0)] - [STEP] (x1, y1) [[attr] [, [B [F]] [, motif]]]
+
    If user input is interrupted by Ctrl+Break, CONT will re-execute the LINE INPUT statement.
 +
    Unlike INPUT, LINE INPUT does not end the prompt with ?.
  
Dessine une ligne ou une boîte en mode graphique. Si B est pas spécifié, une ligne est tracée à partir de (x0, y0) à (x1, y1), les paramètres inclus. Si B est spécifié, un rectangle est dessiné avec des côtés parallèles à l'écran et deux angles opposés définis par (x0, y0) et (x1, y1). Si le point de départ est pas donné, la position graphique actuelle est utilisée comme point de regard fixe. Si STEP est spécifié, (x0, y0) est un décalage par rapport à la position actuelle et (x1, y1) est un décalage de (x0, y0). LINE déplace la position graphique actuelle à la dernière extrémité donnée. Si F est défini par B, le rectangle est rempli avec l'attribut spécifié. F et B peuvent être séparés par zéro, un ou plusieurs espaces. Paramètres
+
LINE INPUT (files)
 +
LINE INPUT # file_num, string_name
  
  attr est une expression numérique dans [0-255], qui spécifie l'attribut de couleur de la ligne. Si elle ne reçoit pas, l'attribut courant est utilisé.
+
Reads string or numeric variables from a text file or the FIELD buffer of a random access file. All input is read until Enter is pressed; the first 255 characters are stored. file_num must be the number of a file open in INPUT mode or a random-access file open in RANDOM mode.
    motif est une expression numérique dans [-32768 à 32767].  Cela est interprété comme un 16-bit masque de motif binaire appliqué aux pixels consécutifs dans la ligne: un bit 1 indique un pixel tracé; un bit 0 indique un pixel laissé intact. Le schéma commence par le bit le plus significatif qui est appliqué au point d'extrémité le plus haut.  Si une zone est tirée, le motif est appliqué dans la séquence de contre-intuitive suivante: (x1, y1) - (x0, y1), (x1, y0) - (x0, y0), puis (x1, y0) - ( x1, y1), (x0, y0) - (x0, y1), si Y0 <y1 et y0, y1 y1 inversées si <y0.  Lors de l'élaboration d'une boîte remplie, LINE ignore le motif.
+
Parameters
  
Remarques
+
    string_name is a string variable or array element.
  
  Si une coordonnée est en dehors des limites de l'écran, il est remplacé par -1 (si moins de 0) ou la dimension de l'écran (si elle est supérieure à la dimension de l'écran).
+
Notes
  
les erreurs
+
    The # is mandatory. There may or may not be whitespace between INPUT and #.
 +
    Input is only terminated by a CR.
 +
    If file_num is open to KYBD:, LINE INPUT# reads from the keyboard until a return or comma is encountered (as in a file). Arrow keys and delete are passed as their control characters (not scancodes!) preceded by CHR$(&hFF).
  
  La déclaration se termine par une virgule et il est le premier ou le troisième: Missing opérande.  Si elle est la deuxième: Erreur de syntaxe.
+
Errors
    Tout des coordonnées est pas dans [-32768 à 32767]: Overflow.
+
    Tout des paramètres a une valeur de chaîne: Type mismatch.
+
  
LINE INPUT (console) LINE INPUT [;] [prompt_literal {; |,}] string_name
+
    Input is requested after the end of a text file has been reached or an EOF char has been encountered: Input past end.
 +
    The last character of the field buffer is read: Field overflow.
 +
    file_num is not an open file: Bad file number.
 +
    file_num is less than zero: Illegal function call.
 +
    file_num is not in [-32768—32767]: Overflow.
 +
    file_num is not open for INPUT or RANDOM: Bad file mode.
 +
    file_num has a string value: Type mismatch.
 +
    file_num is open to a COM port and this is the first INPUT, LINE INPUT or INPUT$ call on that port since the buffer has filled up completely (i.e. LOF(file_num) has become zero): Communication buffer overflow.
  
Affiche l'invite donnée dans prompt_literal et lit l'entrée d'utilisateur à partir du clavier, le stockage dans le string_name variable. Toutes les entrées sont lues jusqu'à ce que vous appuyez sur Entrée; les 255 premiers caractères sont stockés. Si la ; est donnée juste après LINE INPUT, l'entrée utilisateur Entrez fin est pas fait écho à l'écran. Paramètres
+
LIST
 +
LIST [line_number_0|.] [-[line_number_1|.]] [, file_spec [anything]]
  
  prompt_literal est une chaîne littérale. Il ne fait aucune différence si elle est suivie par une virgule ou un point-virgule.
+
Prints the program to the screen or a file, starting with line_number_0 up to and including line_number_1. Also stops program execution and returns control to the user. If the LIST statement ends with a file specification, anything further is ignored. In all cases, any further statements in a compound after LIST will be ignored, both in a program and in direct mode.
    string_name est un élément variable ou tableau chaîne.
+
  
Remarques
+
When listing to the screen, the same control characters are recognised as in the PRINT statement.
 +
Notes
  
  Si l'entrée de l'utilisateur est interrompu par Ctrl + Break, CONT sera ré-exécuter l'instruction LINE INPUT.
+
    In GW-BASIC 3.23, LIST will not show line numbers 65531—65535 inclusive. By default, PC-BASIC's LIST does show these lines. However, showing them can be disabled with the option strict-hidden-lines.
    Contrairement INPUT, LINE INPUT ne se termine pas l'invite avec?.
+
  
LINE INPUT (fichiers) LINE INPUT # file_num, string_name
+
Parameters
  
Lit chaîne ou variables numériques à partir d'un fichier texte ou le tampon de champ d'un fichier d'accès aléatoire. Toutes les entrées sont lues jusqu'à ce que vous appuyez sur Entrée; les 255 premiers caractères sont stockés. file_num doit être le numéro d'un fichier ouvert en mode INPUT ou un fichier à accès aléatoire ouvert en mode RANDOM. Paramètres
+
    line_number_0 and line_number_1 are line numbers in the range [0—65529] or a . to indicate the last line edited. The line numbers do not need to exist; they specify a range. If the range is empty, nothing is printed.
 +
    The string expression file_spec is a valid file specification indicating the file to list to. If this file already exists, it will be overwritten.
  
  string_name est un élément variable ou tableau chaîne.
+
Errors
  
Remarques
+
    A line number is greater than 65529: Syntax error.
 +
    file_spec has a numeric value: Type mismatch.
 +
    file_spec ends in a colon but is not a device name or drive letter: Bad file number.
 +
    file_spec contains disallowed characters: Bad file number (on CAS1:); Bad file name (on disk devices).
  
  Le # est obligatoire.  Il peut ou peut ne pas être d'espace entre INPUT et #.
+
LLIST
    L'entrée est seulement terminée par un CR.
+
LLIST [line_number_0|.] [-[line_number_1|.]]
    Si file_num est ouvert à LINE INPUT N ° KYBD lit à partir du clavier jusqu'à ce qu'un retour ou une virgule est rencontré (comme dans un fichier). Les touches fléchées et supprimer sont transmis leurs caractères de contrôle (non scancodes!) Précédés de CHR $ (& HFF).
+
  
les erreurs
+
Prints the program to the screen, starting with line_number_0 up to and including line_number_1. Also stops program execution and returns control to the user. Any further statements on a line after LLIST will be ignored, both in a program and in direct mode.
 +
Notes
  
  L'entrée est demandée après la fin d'un fichier texte a été atteint ou un char EOF a été rencontrée: Entrée passé fin.
+
     In GW-BASIC 3.23, LLIST will not show line numbers 65531—65535 inclusive. By default, PC-BASIC's LLIST does show these lines. However, showing them can be disabled with the option strict-hidden-lines.
     Le dernier caractère de la mémoire tampon de champ est en lecture: débordement de terrain.
+
    file_num est pas un fichier ouvert: Numéro de fichier incorrect.
+
    file_num est inférieur à zéro: Illegal appel de fonction.
+
    file_num est pas dans [-32.768 à 32.767]: Overflow.
+
    file_num est pas ouvert pour INPUT ou RANDOM: Mode de fichier incorrect.
+
    file_num a une valeur de chaîne: Type mismatch.
+
    file_num est ouvert à un port COM et ceci est la première entrée, LINE INPUT ou INPUT $ appel sur ce port depuis le tampon a rempli complètement (c.-à-LOF (file_num) est devenu zéro): débordement de mémoire tampon de communication.
+
  
LISTE LISTE [line_number_0 |.] [- [Line_number_1 |.]] [, File_spec [rien]]
+
Parameters
  
Imprime le programme à l'écran ou un fichier, en commençant par line_number_0 jusqu'au line_number_1. arrête également l'exécution du programme et renvoie le contrôle à l'utilisateur. Si l'instruction LIST se termine par une spécification de fichier, autre chose est ignoré. Dans tous les cas, d'autres déclarations dans un composé après LIST seront ignorés, à la fois dans un programme et en mode direct.
+
    line_number_0 and line_number_1 are line numbers in the range [0—65529]. or a . to indicate the last line edited. The line numbers do not need to exist; they specify a range. If the range is empty, nothing is printed.
  
Lorsque la liste à l'écran, les mêmes caractères de contrôle sont reconnus comme dans l'instruction PRINT. Remarques
+
Errors
  
  Dans GW-BASIC 3.23, LIST ne montrera pas les numéros de ligne 65531-65535 inclus.  Par défaut, la liste de PC-BASIC fait apparaître ces lignes.  Cependant, leur montrant peut être désactivé avec l'option stricte-lignes cachées.
+
    A line number is greater than 65529: Syntax error.
  
Paramètres
+
LOAD
 +
LOAD file_spec [, R]
  
  line_number_0 et line_number_1 sont les numéros de ligne dans la gamme [0-65529] ou a. pour indiquer la dernière ligne modifiée. Les numéros de ligne ne doivent pas exister;  ils spécifient une plage.  Si la plage est vide, rien n'est imprimé.
+
Loads the program stored in a file into memory. Existing variables will be cleared and any program in memory will be erased. LOAD implies a CLEAR.
    Le file_spec d'expression de chaîne est une spécification de fichier valide indiquant le fichier à la liste à.  Si ce fichier existe déjà, il sera écrasé.
+
  
les erreurs
+
If ,R is specified, keeps all data files open and runs the specified file.
 +
Parameters
  
  Un numéro de ligne est supérieure à 65529: Erreur de syntaxe.
+
     The string expression file_spec is a valid file specification indicating the file to read the program from.
     file_spec a une valeur numérique: incompatibilité de type.
+
    file_spec se termine par un colon, mais est pas un nom de périphérique ou lettre de lecteur: Numéro de fichier incorrect.
+
    file_spec contient des caractères non autorisés: Numéro de fichier incorrect (sur CAS1 :);  Nom de fichier incorrect (sur les unités de disque).
+
  
LLIST LLIST [line_number_0 |.] [- [Line_number_1 |].]
+
Notes
  
Le programme imprime à l'écran, en commençant par line_number_0 jusqu'à et y compris line_number_1. arrête également l'exécution du programme et renvoie le contrôle à l'utilisateur. Les autres déclarations sur une ligne après LLIST seront ignorés, à la fois dans un programme et en mode direct. Remarques
+
    Refer to
  
  Dans GW-BASIC 3.23, LLIST ne montrera pas les numéros de ligne 65531-65535 inclus.  Par défaut, le LLIST de PC-BASIC fait apparaître ces lignes.  Cependant, leur montrant peut être désactivé avec l'option stricte-lignes cachées.
+
Errors
  
Paramètres
+
    file_spec has a numeric value: Type mismatch.
 +
    file_spec contains disallowed characters: Bad file number (on CAS1:); Bad file name (on disk devices).
 +
    The file specified in file_spec cannot be found: File not found.
 +
    A loaded text file contains lines without line numbers: Direct statement in file.
  
  line_number_0 et line_number_1 sont les numéros de ligne dans la gamme [0-65529].  ou a.  pour indiquer la dernière ligne modifiée.  Les numéros de ligne ne doivent pas exister;  ils spécifient une plage.  Si la plage est vide, rien n'est imprimé.
+
LOCATE
 +
LOCATE [row] [, [col] [, [cursor_visible] [, [start_line] [, [stop_line] [,]]]]]
  
les erreurs
+
Positions the cursor at row, col on the screen and changes the cursor shape and visibility. cursor_visible may be 0 or 1. If cursor_visible is 0, it makes the cursor invisible; if it is 1, makes the cursor visible. This works only while a program is running. The cursor shape is adjusted within a character cell to start from start_line and end on end_line where start_line and end_line are in [0—31]. If start_line or end_line is greater than the character cell height (15), substitute 15.
 +
Notes
  
  Un numéro de ligne est supérieure à 65529: Erreur de syntaxe.
+
    On emulated VGA cards, the cursor shape parameters are interpreted in a complicated way that is intended to maintain functional compatibility with CGA.
 +
    In GW-BASIC, cursor shape is preserved after pressing Ins twice. The insert-mode cursor is different from the usual half-block. In PC-BASIC, insert mode resets the cursor shape to default.
 +
    Cursor shape and visibility options have no effect in graphics mode.
 +
    Locate accepts a 5th comma at the end, which is ignored.
  
CHARGE CHARGE file_spec [R]
+
Errors
  
Charge le programme stocké dans un fichier dans la mémoire. les variables existantes seront effacées et tout programme en mémoire seront effacées. LOAD implique une CLEAR.
+
    Any parameter has a string value: Type mismatch.
 +
    Any parameter is not in [-32768—32767]: Overflow.
 +
    row is outside the current view area: Illegal function call.
 +
    col is greater than the current width: Illegal function call.
 +
    cursor_visible is not in [0, 1] ([0—255] on Tandy/PCjr): Illegal function call.
  
Si, R est spécifié, conserve les fichiers toutes les données ouvertes et exécute le fichier spécifié. Paramètres
+
LOCK
 +
LOCK [#] file_number [, record_0]
 +
LOCK [#] file_number, [record_0] TO record_1
  
  Le file_spec d'expression de chaîne est une spécification de fichier valide indiquant le fichier à lire le programme à partir.
+
Locks a file or part of a file against access by other users. On a RANDOM file, record_0 is the first record locked and record_1 is the last record locked. On any other kind of file record_0 and record_1 have no effect. If record_0 is not specified, it is assumed to be 1. If no records are specified, the whole file is locked.
 +
Parameters
  
Remarques
+
    file_number is a numeric expression in [0—255].
 +
    record_0 and record_1 are numeric expressions in [1—2^25-2].
  
  Faire référence à
+
Notes
  
les erreurs
+
    In GW-BASIC under MS-DOS, the LOCK command requires SHARE.EXE to be loaded. The maximum number of locks is specified in the MS-DOS SHARE command. If SHARE has not been activated or all locks are used, LOCK raises Permission denied. PC-BASIC behaves as if SHARE has been activated with unlimited locks.
 +
    If file_number is open for RANDOM, LOCK and UNLOCK statements must match in terms of record_0 and record_1. An non-matching UNLOCK will raise Permission denied.
  
  file_spec a une valeur numérique: incompatibilité de type.
+
Errors
    file_spec contient des caractères non autorisés: Numéro de fichier incorrect (sur CAS1 :);  Nom de fichier incorrect (sur les unités de disque).
+
    Le fichier spécifié dans file_spec ne peut pas être trouvé: Fichier non trouvé.
+
    Un fichier texte chargé contient des lignes sans numéros de ligne: déclaration directe dans le fichier.
+
  
Localiser Situer [suite] [, [col] [, [cursor_visible] [, [start_line] [, [stop_line] [,]]]]]
+
     Any parameter has a string value: Type mismatch.
 
+
     file_num is not in [-32768—32767]: Overflow.
Amène le curseur à la ligne, col sur l'écran et change la forme du curseur et de la visibilité. cursor_visible peut être 0 ou 1. Si cursor_visible est 0, il rend le curseur invisible; si elle est de 1, rend le curseur visible. Cela ne fonctionne que si un programme est en cours d'exécution. La forme du curseur est réglé dans une cellule de caractère à partir de start_line et se termine le end_line où start_line et end_line sont dans [0-31]. Si start_line ou end_line est supérieure à la hauteur de cellule de caractère (15), remplacer 15. Note
+
     file_num is not in [0—255]: Illegal function call.
 
+
     file_num is not an open file: Bad file number.
  Sur les cartes VGA émulés, les paramètres de forme du curseur sont interprétées d'une manière compliquée qui est destiné à maintenir la compatibilité fonctionnelle avec CGA.
+
     LOCK (part of) a file already locked: Permission denied.
     Dans GW-BASIC, la forme du curseur est conservé après avoir appuyé deux fois Ins.  Le curseur insert mode est différent du demi-bloc habituel.  Dans PC-BASIC, le mode d'insertion réinitialise la forme du curseur par défaut.
+
     record_0 or record_1 is not in [1—2^25-2]: Bad record number.
    forme du curseur et les options de visibilité sont sans effet en mode graphique.
+
    Repérez accepte une 5ème virgule à la fin, qui est ignoré.
+
 
+
les erreurs
+
 
+
  Tout paramètre a une valeur de chaîne: Type mismatch.
+
    Tout paramètre est pas dans [-32768 à 32767]: Overflow.
+
    ligne est en dehors de la vue actuelle zone: Illegal appel de fonction.
+
    col est supérieure à la largeur actuelle: Illegal appel de fonction.
+
    cursor_visible est pas dans [0, 1] ([0-255] sur Tandy / PCjr): Illegal appel de fonction.
+
 
+
LOCK LOCK [#] file_number [, record_0] BLOCAGE [#] file_number, [record_0] À record_1
+
 
+
Verrouille un fichier ou d'une partie d'un fichier contre l'accès par d'autres utilisateurs. Sur un fichier RANDOM, record_0 est le premier enregistrement verrouillé et record_1 est le dernier enregistrement verrouillé. Sur tout autre type de fichier record_0 et record_1 n'a aucun effet. Si record_0 est pas spécifié, il est supposé être 1. Si aucun enregistrement sont spécifiés, le fichier entier est verrouillé. Paramètres
+
 
+
  file_number est une expression numérique dans [0-255].
+
    record_0 et record_1 sont des expressions numériques dans [1-2 ^ 25-2].
+
 
+
Remarques
+
 
+
  Dans GW-BASIC sous MS-DOS, la commande LOCK requiert SHARE.EXE à charger.  Le nombre maximum de verrous est spécifié dans la commande SHARE MS-DOS.  Si SHARE n'a pas été activé ou tous les verrous sont utilisés, BLOCAGE soulève Permission denied.  PC-BASIC se comporte comme si SHARE a été activé avec des serrures illimitées.
+
    Si file_number est ouvert pour RANDOM, verrouiller et déverrouiller les états doivent correspondre en termes de record_0 et record_1.  Un UNLOCK non-appariement augmentera Permission denied.
+
 
+
les erreurs
+
 
+
  Tout paramètre a une valeur de chaîne: Type mismatch.
+
     file_num est pas dans [-32.768 à 32.767]: Overflow.
+
     file_num est pas dans [0-255]: Illegal appel de fonction.
+
     file_num est pas un fichier ouvert: Numéro de fichier incorrect.
+
     LOCK (partie) d'un fichier déjà verrouillé: Autorisation refusée.
+
     record_0 ou record_1 est pas dans [1-2 ^ 25-2]: Numéro d'enregistrement Bad.
+
  
 
LPRINT
 
LPRINT
  
Voir PRINT. LSET LSET string_name = expression
+
See PRINT.
 +
LSET
 +
LSET string_name = expression
  
Copie une valeur de chaîne dans une chaîne élément variable ou tableau existant. La valeur sera justifiée à gauche et tous les caractères restants sont remplacés par des espaces. Paramètres
+
Copies a string value into an existing string variable or array element. The value will be left-justified and any remaining characters are replaced by spaces.
 +
Parameters
  
  string_name est un élément variable ou tableau chaîne.
+
    string_name is a string variable or array element.
     expression est une expression de chaîne.
+
     expression is a string expression.
  
Remarques
+
Notes
  
  Si l'expression a une valeur qui est supérieure à la longueur de la variable cible, elle est tronquée à la queue de la longueur de la variable cible.
+
    If expression has a value that is longer than the length of the target variable, it is truncated at the tail to the length of the target variable.
     Si string_name n'a pas été alloué avant, cette déclaration n'a aucun effet.
+
     If string_name has not been allocated before, this statement has no effect.
     Utilisez LSET, RSET ou MID $ pour copier les valeurs dans un tampon de FIELD.
+
     Use LSET, RSET or MID$ to copy values into a FIELD buffer.
     Si LET est utilisé sur une variable au lieu de L FIELD | RSET, la variable est détaché du terrain et une nouvelle variable de chaîne normale est attribuée.
+
     If LET is used on a FIELD variable instead of L|RSET, the variable is detached from the field and a new, normal string variable is allocated.
  
les erreurs
+
Errors
  
  string_name est pas une variable chaîne: Incompatibilité de type.
+
    string_name is not a string variable: Type mismatch.
     expression n'a pas de valeur de chaîne: Type mismatch.
+
     expression does not have a string value: Type mismatch.
  
Merge Merge file_spec
+
MERGE
 +
MERGE file_spec
  
Superpose les lignes d'un programme à partir d'un fichier de programme en texte clair dans le programme existant. Les lignes chargées d'écraser les lignes existantes si elles ont le même numéro de ligne. Paramètres
+
Overlays the lines of a program from a plain-text program file into the existing program. The loaded lines overwrite existing lines if they have the same line number.
 +
Parameters
  
  Le file_spec d'expression de chaîne est une spécification de fichier valide indiquant le fichier à lire le programme à partir.
+
    The string expression file_spec is a valid file specification indicating the file to read the program from.
  
les erreurs
+
Errors
  
  file_spec ne peut pas être trouvé: Fichier non trouvé.
+
    file_spec cannot be found: File not found.
     file_spec contient des caractères non autorisés: Numéro de fichier incorrect (sur CAS1 :); Nom de fichier incorrect (sur les unités de disque).
+
     file_spec contains disallowed characters: Bad file number (on CAS1:); Bad file name (on disk devices).
     file_spec n'a pas été enregistré en tant que texte brut: le mode de fichier incorrect.
+
     file_spec was not saved as plain text: Bad file mode.
     Un fichier texte chargé contient des lignes sans numéros de ligne: déclaration directe dans le fichier.
+
     A loaded text file contains lines without line numbers: Direct statement in file.
  
MID $ (déclaration) MID $ (string_name position [, longueur]) = substring
+
MID$ (statement)
 +
MID$(string_name, position [, length]) = substring
  
Remplace une partie de string_name avec substring. Paramètres
+
Replaces part of string_name with substring.
 +
Parameters
  
  string_name est une chaîne nom de variable valide.
+
    string_name is a valid string variable name.
     position est une expression numérique entre 1 et la longueur de la chaîne, y compris.
+
     position is a numeric expression between 1 and the string length, inclusive.
     longueur est une expression numérique dans [0-255].
+
     length is a numeric expression in [0—255].
  
Remarques
+
Notes
  
  Aucun espace est autorisé entre MID $ et (.
+
    No whitespace is allowed between MID$ and (.
     Si substring est plus longue que la longueur, seuls les premiers caractères de longueur sont utilisés.
+
     If substring is longer than length, only the first length characters are used.
     Si substring est plus courte que la longueur, seulement LEN (substring) caractères sont remplacés.
+
     If substring is shorter than length, only LEN(substring) characters are replaced.
  
les erreurs
+
Errors
  
  position est supérieure à la longueur de string_name: Illegal appel de fonction, sauf si la longueur est spécifiée comme 0.
+
    position is greater than the length of string_name: Illegal function call, except if length is specified as 0.
     la position est pas dans [1-255]: Illegal appel de fonction.
+
     position is not in [1—255]: Illegal function call.
     longueur est pas dans [0-255]: Illegal appel de fonction.
+
     length is not in [0—255]: Illegal function call.
     la position ou la longueur ne sont pas dans [-32768 à 32767]: Overflow.
+
     position or length are not in [-32768—32767]: Overflow.
  
MKDIR MKDIR dir_spec
+
MKDIR
 +
MKDIR dir_spec
  
Crée un nouveau répertoire sur un périphérique de disque. Paramètres
+
Creates a new directory on a disk device.
 +
Parameters
  
  Le dir_spec d'expression de chaîne est une spécification de fichier valide qui spécifie le chemin du nouveau répertoire sur un périphérique de disque.
+
    The string expression dir_spec is a valid file specification that specifies the path of the new directory on a disk device.
  
les erreurs
+
Errors
  
  dir_spec est pas une chaîne: Incompatibilité de type.
+
    dir_spec is not a string: Type mismatch.
     Le répertoire parent n'existe pas: Chemin d'accès introuvable.
+
     The parent directory does not exist: Path not found.
     Le nom du répertoire existe déjà sur ce chemin: Erreur d'accès Chemin / Fichier.
+
     The directory name already exists on that path: Path/File access error.
     L'utilisateur n'a pas l'autorisation d'écriture: Autorisation refusée.
+
     The user has no write permission: Permission denied.
  
MOTOR MOTOR [num]
+
MOTOR
 +
MOTOR [num]
  
Ne fait rien. Paramètres
+
Does nothing.
 +
Parameters
  
  num est une expression numérique dans [0-255].
+
    num is a numeric expression in [0—255].
  
Remarques
+
Notes
  
  Dans GW-BASIC, cette déclaration met en marche le moteur de la cassette si num est différent de zéro ou omis, et l'éteint si num est nul. Ce ne sont pas mis en œuvre dans PC-BASIC.
+
    In GW-BASIC, this statement turns on the cassette motor if num is nonzero or omitted, and turns it off if num is zero. This is not implemented in PC-BASIC.
  
les erreurs
+
Errors
  
  num a une valeur de chaîne: Type mismatch.
+
    num has a string value: Type mismatch.
     num est pas dans [-32768 à 32767]: Overflow.
+
     num is not in [-32768—32767]: Overflow.
     num est pas dans [0-255]: Illegal appel de fonction.
+
     num is not in [0—255]: Illegal function call.
  
NOM NOM OLD_NAME AS new_name
+
NAME
 +
NAME old_name AS new_name
  
Renomme le fichier de disque OLD_NAME en new_name. Paramètres
+
Renames the disk file old_name into new_name.
 +
Parameters
  
  Les expressions de chaîne OLD_NAME et new_name sont des spécifications de fichiers valides donnant le chemin sur un dispositif de disque pour les anciens et les nouveaux noms de fichiers, respectivement.
+
    The string expressions old_name and new_name are valid file specifications giving the path on a disk device to the old and new filenames, respectively.
  
Remarques
+
Notes
  
  new_name sera modifié en un format tout-en majuscules 8.3.
+
    new_name will be modified into all-uppercase 8.3 format.
  
les erreurs
+
Errors
  
  old_name ou new_name ont des valeurs numériques: incompatibilité de type.
+
    old_name or new_name have number values: Type mismatch.
     old_name n'existe pas: Fichier non trouvé.
+
     old_name does not exist: File not found.
     old_name est ouvert: Fichier déjà ouvert.
+
     old_name is open: File already open.
     new_name existe: Le fichier existe déjà.
+
     new_name exists: File already exists.
  
NOUVEAU NOUVEAU
+
NEW
 +
NEW
  
Arrête l'exécution d'un programme, supprime le programme en mémoire, exécute CLEAR et RESTORE et renvoie le contrôle à l'utilisateur. SUIVANT SUIVANT [var_0 [, var_1] ...]
+
Stops execution of a program, deletes the program in memory, executes CLEAR and RESTORE and returns control to the user.
 +
NEXT
 +
NEXT [var_0 [, var_1] ...]
  
Itère une boucle FOR-NEXT: incrémente la variable de boucle et saute à l'instruction FOR. Si aucune variables sont spécifiées, correspond à côté de la plus récente instruction FOR. Plusieurs déclarations PROCHAINES imbriqués peuvent être regroupés en un seul en utilisant la liste des variables. Si une ou plusieurs variables sont spécifiées, leur ordre doit correspondre à l'ordre de l'heure pour les états. Paramètres
+
Iterates a FOR—NEXT loop: increments the loop variable and jumps to the FOR statement. If no variables are specified, next matches the most recent FOR statement. Several nested NEXT statements can be consolidated into one by using the variable list. If one or more variables are specified, their order must match the order of earlier FOR statements.
 +
Parameters
  
  var_0, var_1, ... sont des variables numériques qui sont des compteurs de boucle dans une instruction FOR.
+
    var_0, var_1, ... are numeric variables which are loop counters in a FOR statement.
  
les erreurs
+
Errors
  
  Aucune instruction FOR est trouvée pour correspondre à l'instruction NEXT et les variables: SUIVANTE sans POUR.
+
    No FOR statement is found to match the NEXT statement and variables: NEXT without FOR.
     var_0, var_1, ... sont des variables de chaîne: NEXT sans FOR.
+
     var_0, var_1, ... are string variables: NEXT without FOR.
     La variable (implicite ou explicite) boucle est une variable entière et est pris en dehors de la gamme [-32768, 32767] lorsque incrémenté après la dernière itération: Overflow.
+
     The (implicit or explicit) loop variable is an integer variable and is taken outside the range [-32768, 32767] when incremented after the final iteration: Overflow .
  
source BRUIT BRUIT, le volume, la durée
+
NOISE
 +
NOISE source, volume, duration
  
Génère divers types de bruit. Paramètres
+
Generates various kinds of noise.
 +
Parameters
  
  source est une expression numérique dans [0-7]. Il indique le type de bruit:
+
    source is a numeric expression in [0—7]. It indicates the type of noise:
     type de source supérieure de la bande de fréquence (Hz)
+
     source type top of frequency band (Hz)
     0 périodique 6991
+
     0 periodic 6991
     1 périodique 3495
+
     1 periodic 3495
     2 périodiques 1747
+
     2 periodic 1747
     3 dernière tonalité périodique joué sur la voix 2
+
     3 periodic last tone played on voice 2
     0 bruit blanc 6991
+
     0 white noise 6991
     1 bruit blanc 3495
+
     1 white noise 3495
     2 bruit blanc 1747
+
     2 white noise 1747
     3 blanc dernier ton de bruit joué sur la voix 2
+
     3 white noise last tone played on voice 2
     volume est une expression numérique dans [0-15].
+
     volume is a numeric expression in [0—15].
     la durée est une expression numérique.
+
     duration is a numeric expression.
  
Volume et la durée sont déterminés de la même manière que pour l'instruction SOUND; voir là. Remarques
+
Volume and duration are determined in the same way as for the SOUND statement; see there.
 +
Notes
  
  Cette déclaration est disponible uniquement si la syntaxe = {PCjr | tandy} est réglé.
+
    This statement is only available if syntax={pcjr|tandy} is set.
  
les erreurs
+
Errors
  
  SOUND ON n'a pas été exécuté: Illegal appel de fonction.
+
    SOUND ON has not been executed: Illegal function call.
     durée est pas dans [-65535 à 65535]: Illegal appel de fonction.
+
     duration is not in [-65535—65535]: Illegal function call.
     volume est pas dans [0-15]: Illegal appel de fonction.
+
     volume is not in [0—15]: Illegal function call.
     source est pas dans [0-7]: Illegal appel de fonction.
+
     source is not in [0—7]: Illegal function call.
  
ON (saut calculé) ON n {GOTO | GOSUB} line_number_0 [, line_number_1] ...
+
ON (calculated jump)
 +
ON n {GOTO|GOSUB} line_number_0 [, line_number_1] ...
  
Passe au numéro de ligne nième spécifié dans la liste. Si n est égal à 0 ou supérieur au nombre de numéros de lignes dans la liste, aucun saut est effectué. Si GOTO est spécifié, le saut est inconditionnel; si GOSUB est spécifié, des sauts à un sous-programme. Paramètres
+
Jumps to the nth line number specified in the list. If n is 0 or greater than the number of line numbers in the list, no jump is performed. If GOTO is specified, the jump is unconditional; if GOSUB is specified, jumps to a subroutine.
 +
Parameters
  
  n est une expression numérique dans [0-255]. L'expression ne doit pas commencer par les STRIG, PEN, PLAY ou la fonction TIMER mots-clés; si vous avez besoin de ces fonctions, l'expression doit être placé entre crochets.
+
    n is a numeric expression in [0—255]. The expression must not start with the STRIG, PEN, PLAY or TIMER function keywords; if you need these functions, the expression must be bracketed.
     line_number_0, line_number_1, ... sont les numéros de ligne existante dans le programme.
+
     line_number_0, line_number_1, ... are existing line numbers in the program.
  
les erreurs
+
Errors
  
  n a une valeur de chaîne: Type mismatch.
+
    n has a string value: Type mismatch.
     n est pas dans [-32768 à 32767], Overflow.
+
     n is not in [-32768—32767], Overflow .
     n est pas dans [0-255]: Illegal appel de fonction.
+
     n is not in [0—255]: Illegal function call.
     n'existe pas La ligne nombre a bondi à: numéro de ligne non définie.
+
     The line number jumped to does not exist: Undefined line number.
  
ON (événement piégeage) ON {COM (n) | KEY (n) | STRIG (n) | PEN | PLAY (n) | TIMER (x)} GOSUB line_number
+
ON (event trapping)
 +
ON {COM(n)|KEY(n)|STRIG(n)|PEN|PLAY(n)|TIMER(x)} GOSUB line_number
  
Définit un événement de piégeage sous-programme. Le type d'événement est donné par l'un des mots clés suivants: COM (n), l'événement est déclenché si des données sont présentes dans la mémoire tampon d'entrée du COMn :. n est le numéro de port dans [1,2]. KEY (n) L'événement est déclenché si la clé n est pressée. n est le numéro de la clé [1-10] défini dans la déclaration KEY. STRIG (n) Ils événement est déclenché si le bouton de feu n est pressé. n dans [0,2,4,6] se réfèrent aux deux incendies déclenche sur deux joysticks. PEN L'événement est déclenché si le stylet sur l'écran. (Dans PC-BASIC, le stylet est émulé par défaut par le bouton droit de la souris). PLAY (n) L'événement est déclenché s'il y a exactement n notes laissées sur la file d'attente de la musique de fond. n est une expression numérique dans [1-32]. TIMER (x) L'événement est déclenché toutes les x secondes après la TIMER ON déclaration. x est une expression numérique dans [1-86400]. Remarques
+
Defines an event trapping subroutine. The type of event is given by one of the following keywords:
 +
COM(n) The event is triggered if data is present in the input buffer of the COMn:. n is the port number in [1,2].
 +
KEY(n) The event is triggered if key n is pressed. n is the key number [1—10] defined in the KEY statement.
 +
STRIG(n) They event is triggered if fire button n is pressed. n in [0,2,4,6] refer to the two fire triggers on two joysticks.
 +
PEN The event is triggered if the light pen is on the screen. (In PC-BASIC, the light pen is emulated by default by the right mouse button).
 +
PLAY(n) The event is triggered if there are exactly n notes left on the music background queue. n is a numeric expression in [1—32].
 +
TIMER(x) The event is triggered every x seconds after the TIMER ON statement. x is a numeric expression in [1—86400].
 +
Notes
  
  piégeage pour votre événement choisi premier événement doit être activé en utilisant l'une des déclarations: COM (n) ON, KEY (n) ON, STRIG (n) ON, PEN ON, jouer, TIMER ON
+
    Event trapping for your chosen event first needs to be enabled using one of the statements: COM(n) ON, KEY(n) ON, STRIG(n) ON, PEN ON, PLAY ON, TIMER ON
     Les événements ne sont piégés lorsqu'un programme est en cours d'exécution.
+
     Events are only trapped when a program is running.
  
les erreurs
+
Errors
  
  n ou x a une valeur de chaîne: Type mismatch.
+
    n or x has a string value: Type mismatch.
     n est pas dans [-32768 à 32767]: Overflow.
+
     n is not in [-32768—32767]: Overflow.
     n ou x est en dehors de la plage spécifiée: Illegal appel de fonction.
+
     n or x is outside the specified range: Illegal function call.
  
ON ERROR ON ERROR GOTO {line_number | 0}
+
ON ERROR
 +
ON ERROR GOTO {line_number|0}
  
Active le piégeage ou désactiver erreur. Lorsque line_number est réglé, toute erreur provoque la manipulation de routine à partir de ce numéro de ligne à être appelé erreur; aucun message est imprimé et l'exécution du programme ne soit pas arrêté. La routine de gestion des erreurs se termine par une déclaration de REPRENDRE. Alors que dans une routine de gestion des erreurs, des événements sont mis en pause et la récupération d'erreur est désactivé. Après la déclaration de REPRENDRE, tout les événements déclenchés sont ramassés dans l'ordre suivant: KEY, TIMER, PLAY - l'ordre des autres est inconnu. Contrairement à l'événement le piégeage, la récupération d'erreur reste active quand aucun programme est en cours. ON ERROR GOTO 0 désactive la récupération d'erreur. Paramètres
+
Turns error trapping on or off. When line_number is set, any error causes the error handling routine starting at that line number to be called; no message is printed and program execution is not stopped. The error handling routine is ended by a RESUME statement. While in an error handling routine, events are paused and error trapping is disabled. After the RESUME statement, any triggered events are picked up in the following order: KEY, TIMER, PLAY - the order of the others is unknown. Unlike event trapping, error trapping remains active when no program is running. ON ERROR GOTO 0 turns off error trapping.
 +
Parameters
  
  line_number est un numéro de ligne existante dans le programme.
+
    line_number is an existing line number in the program.
  
Remarques
+
Notes
  
  Il est impossible de démarrer le gestionnaire d'erreur au numéro de la ligne 0.
+
    It is not possible to start the error handler at line number 0.
  
les erreurs
+
Errors
  
  line_number n'existe pas: numéro de ligne défini.
+
    line_number does not exist: Undefined line number.
  
OPEN OPEN mode_char, [#] file_num, file_spec [, rec_len] OUVRIR file_spec [POUR {ENTREE | SORTIE | APPEND | RANDOM}] [ACCESS {LIRE | ECRITURE | WRITE LIRE}] [PARTAGÉE | BLOCAGE {LIRE | ECRITURE | WRITE LIRE }] AS [#] file_num [LEN = rec_len]
+
OPEN
 +
OPEN mode_char, [#] file_num, file_spec [, rec_len]
 +
OPEN file_spec [FOR {INPUT|OUTPUT|APPEND|RANDOM}] [ACCESS {READ|WRITE|READ WRITE}] [SHARED|LOCK {READ|WRITE|READ WRITE}] AS [#] file_num [LEN = rec_len]
  
Ouvre un fichier de données sur un périphérique. Paramètres
+
Opens a data file on a device.
 +
Parameters
  
  Le file_spec d'expression de chaîne est une spécification de fichier valide.
+
    The string expression file_spec is a valid file specification.
     file_num est une expression numérique dans [1-MAX_FILES], où MAX_FILES est le nombre maximum de fichier (par défaut 3).
+
     file_num is a numeric expression in [1—max_files], where max_files is the maximum file number (default 3).
     rec_len est une expression numérique dans [1-128]: la longueur d'enregistrement.
+
     rec_len is a numeric expression in [1—128]: the record length.
     mode_char est une expression de chaîne dont le premier caractère est un [ "I", "O", "A", "R"].
+
     mode_char is a string expression of which the first character is one of ["I", "O", "A", "R"].
  
Les modes d'accès
+
Access modes
  
Le FOR modes ou mode_char sont les suivants: mode_char POUR Effect "I" INPUT Ouvre un fichier texte pour la lecture et positionne le pointeur de fichier au début. "O" SORTIE tronque un fichier texte au début et à l'ouvre pour l'écriture. Toutes les données précédemment présentes dans le fichier seront supprimés. "A" APPEND Ouvre un fichier texte pour écrire à la fin de toutes les données existantes. "R" RANDOM Ouvre un fichier pour un accès aléatoire; le fichier est divisé en enregistrements de longueur rec_len. Si LEN est pas spécifié, la longueur d'enregistrement par défaut 128. Le contenu du fichier sont accessibles en utilisant GET et PUT du tampon FIELD; le tampon de champ peut être accessible par le biais de variables FIELD ou par PRINT # et INPUT # déclarations.
+
The FOR modes or mode_char are as follows:
 +
mode_char FOR Effect
 +
"I" INPUT Opens a text file for reading and positions the file pointer at the start.
 +
"O" OUTPUT Truncates a text file at the start and opens it for writing. Any data previously present in the file will be deleted.
 +
"A" APPEND Opens a text file for writing at the end of any existing data.
 +
"R" RANDOM Opens a file for random access; the file is divided in records of length rec_len. If LEN is not specified, the record length defaults to 128. The file contents can be accessed using GET and PUT of the FIELD buffer; the FIELD buffer can be accessed through FIELD variables or through PRINT# and INPUT# statements.
  
Si aucun pour le mode ou mode_char est spécifié, le fichier est ouvert pour RANDOM.
+
If no FOR mode or mode_char is specified, the file is opened for RANDOM.
  
Si les deux et l'accès sont spécifiés, tout mode d'accès est autorisé pour RANDOM mais pour les autres modes d'accès doit correspondre à la manière suivante: pour l'accès par défaut autorisé ACCÈS ENTREE READ LECTURE ECRITURE DE SORTIE WRITE APPEND Lecture Ecriture Lecture Ecriture RANDOM LIRE ECRIRE tous Partage et serrures
+
If both FOR and ACCESS are specified, any ACCESS mode is allowed for RANDOM but for the other modes the access must match as follows:
 +
FOR default ACCESS allowed ACCESS
 +
INPUT READ READ
 +
OUTPUT WRITE WRITE
 +
APPEND READ WRITE READ WRITE
 +
RANDOM READ WRITE all
 +
Sharing and locks
  
Si ni PARTAGÉE ni BLOCAGE sont spécifiés. A l'intérieur de ce processus, un fichier peut être ouvert plusieurs fois pour INPUT ou RANDOM mais seulement une fois pour OUTPUT ou APPEND, tant qu'il est ouvert à nouveau en mode par défaut. Il ne peut pas être ouvert en PARTAGÉ ou des modes LOCK.
+
If neither SHARED nor LOCK are specified. Inside this process, a file may be opened multiple times for INPUT or RANDOM but only once for OUTPUT or APPEND, as long as it is again opened in default mode. It may not be opened in SHARED or any LOCK modes.
  
Si PARTAGÉE, BLOCAGE READ, WRITE LOCK ou LOCK READ WRITE est spécifié, si deux états OPEN peuvent accéder au même fichier dépend de son statut LOCK et le statut de l'autre ACCESS et vice versa. Pour deux déclarations OUVERTES comme suit: "fichier" OPEN lock_1 AS 1 OPEN "fichier" acc_2 ACCESS AS 2, les combinaisons suivantes sont autorisées: Accès autorisé acc_2 LECTURE ECRITURE LECTURE ECRITURE lock_1 PARTAGÉE oui oui oui BLOCAGE READ non oui non BLOCAGE ECRITURE oui non non BLOCAGE READ pas ECRIRE no no
+
If SHARED, LOCK READ, LOCK WRITE or LOCK READ WRITE is specified, whether two OPEN statements may access the same file depends on one's LOCK status and the other's ACCESS status and vice versa. For two OPEN statements as follows:
 +
OPEN "file" lock_1 AS 1
 +
OPEN "file" ACCESS acc_2 AS 2
 +
the following combinations are allowed:
 +
Access allowed acc_2
 +
READ WRITE READ WRITE
 +
lock_1 SHARED yes yes yes
 +
LOCK READ no yes no
 +
LOCK WRITE yes no no
 +
LOCK READ WRITE no no no
  
Dans GW-BASIC sous MS-DOS avec SHARE.EXE actif, ces verrous doivent être appliquées à travers un réseau, ainsi que l'intérieur d'un processus de base unique. Sans PARTAGÉ et LOCK, le fichier est verrouillé exclusivement pour une utilisation par le processus GW-BASIC. En revanche, dans PC-BASIC, les verrous ne sont mises en œuvre en interne. Que d'autres processus peuvent accéder au fichier dépendent du système d'exploitation hôte. Spécifications des fichiers
+
In GW-BASIC under MS-DOS with SHARE.EXE active, these locks should be enforced across a network as well as inside a single BASIC process. Without SHARED and LOCK, the file is locked exclusively for use by the GW-BASIC process. By contrast, in PC-BASIC, the locks are only implemented internally. Whether other processes may access the file will depend on the host OS.
 +
File specifications
  
Une spécification de fichier file_spec est une chaîne d'expression non vide de la forme "[device:] paramètres", device est un dispositif de PC-BASIC et la forme des paramètres est spécifique au type de dispositif. Si le dispositif est omis, le dispositif actuel (une des unités de disque ou CAS1 :) est utilisé.
+
A file specification file_spec is a non-empty string expression of the form "[device:]parameters", where device is a PC-BASIC device and the form of the parameters is specific to the type of device. If device is omitted, the current device (one of the disk devices or CAS1:) is used.
  
dispositifs de disque A: -Z: et @:
+
Disk devices A:—Z: and @:
  
  paramètres doivent spécifier un chemin de fichier valide de la forme [\] [dirname \] ... filename.
+
    parameters must specify a valid file path of the form [\][dirname\] ... filename.
  
  PC-BASIC suit DOS conventions du système de fichiers. Les noms de répertoires sont séparés par des antislashs \ (même si le système d'exploitation hôte sépare les chemins avec des barres obliques). Les noms de fichiers et de répertoires sont constitués d'un nom de 8 caractères et extension de 3 caractères. Les noms sont insensibles à la casse. Les caractères autorisés pour les deux nom et l'extension sont les caractères ASCII imprimables dans la gamme & h20- & H7E excluant les caractères "* +, /:; <=> \ [] | Les espaces sont autorisés, mais avant et arrière espaces sont ignorés Le.?.. noms AUX, CON, PRN et NUL sont réservés comme alias de périphériques et ne sont pas des noms juridiques pour des fichiers ou des répertoires sur un périphérique de disque.
+
    PC-BASIC follows DOS file system conventions. Directory names are separated with backslashes \ (even if the host OS separates paths with forward slashes). File and directory names consist of a 8-character name and 3-character extension. Names are case insensitive. Permissible characters for both filename and extension are the printable ASCII characters in the range &h20–&h7E excluding the characters " * + . , / : ; < = > ? \ [ ] |. Spaces are allowed but leading and trailing spaces are ignored. The names AUX, CON, PRN and NUL are reserved as device aliases and are not legal names for files or directories on a disk device.
  
  Un chemin commençant par une barre oblique inverse est interprété comme un chemin absolu, à partir de la racine du périphérique de disque spécifié. Sinon, le chemin est interprété par rapport au répertoire courant sur le périphérique spécifié. Le nom du répertoire spécial .. se réfère au répertoire parent d'un chemin précédent, ou le répertoire parent du répertoire courant si aucun chemin est donné. Le nom du répertoire spécial. se réfère au même répertoire que donné par le chemin précédent, ou le répertoire courant si aucun chemin précédent est donné.
+
    A path starting with a backslash is interpreted as an absolute path, starting at the root of the specified disk device. Otherwise, the path is interpreted as relative to the current directory on the specified device. The special directory name .. refers to the parent directory of a preceding path, or the parent directory of the current directory if no path is given. The special directory name . refers to the same directory as given by the preceding path, or the current directory if no preceding path is given.
  
  Le LOAD, SAVE, BLOAD, BSAVE, CHAIN, merge, RUN, et les déclarations de LISTE (mais pas OUVRIR) implicitement ajouter une extension par défaut .BAS si aucune extension est spécifiée. Pour faire référence à un nom de fichier sans extension, la spécification du fichier doit se terminer par un point ..
+
    The LOAD, SAVE, BLOAD, BSAVE, CHAIN, MERGE, RUN, and LIST statements (but not OPEN) implicitly add a default extension .BAS if no extension is specified. To refer to a file name without an extension, the file specification should end in a dot ..
     notes de compatibilité
+
     Compatibility notes
  
  Contrairement à PC-BASIC, certaines versions de MS-DOS permettent à certains caractères de la plage et h7F- & hFF. Cependant, leur licéité et l'interprétation dépend de la page de code de la console, qui peut être différente de la page de code d'affichage qui affecte GW-BASIC. En fonction de sa page de code de la console, MS-DOS remplace les lettres accentuées par leur variante en majuscules non accentuées. Certaines implémentations DOS va supprimer les espaces de noms; notamment, cela est le cas sur DOSBox.
+
    Unlike PC-BASIC, some versions of MS-DOS allow certain characters in the range &h7F–&hFF. However, their permissibility and interpretation depends on the console code page, which may be different from the display code page that affects GW-BASIC. Depending on its console code page, MS-DOS will replace accented letters by their unaccented uppercase variant. Some DOS implementations will remove spaces from filenames; notably, this is the case on DOSBox.
  
  Depuis les unités de disque sont mappés sur les répertoires sur le système hôte, les noms de style DOS doivent être mappés sur les noms de fichiers en suivant les normes (généralement beaucoup moins restrictive) du système hôte. Pour autoriser l'accès à des fichiers dont le nom sur le système hôte ne sont pas conformes aux normes DOS, les procédures d'appariement suivantes sont respectées.
+
    Since disk devices are mapped onto directories on the host system, DOS style names need to be mapped onto file names following the host system's (usually much less restrictive) standards. To allow access to files whose name on the host system does not conform to DOS standards, the following matching procedures are observed.
  
  OUVERT, KILL, NOM, CHDIR, MKDIR, RMDIR
+
    OPEN, KILL, NAME, CHDIR, MKDIR, RMDIR
         PC-BASIC va d'abord chercher un fichier avec le nom exactement comme prévu. Cela peut être un nom long et sera sensible cas si votre système de fichiers est. Si un tel fichier est introuvable, il tronque le nom fourni au format 8.3 et convertir en majuscules. Si ce nom exact ne se trouve pas, il va chercher 8.3 noms dans le cas mixte qui correspondent au nom fourni de manière insensible à la casse. Ces fichiers sont recherchés dans l'ordre lexicographique. Fichiers noms plus que 8.3 ne seront pas jumelés, à moins que leur nom est entré exactement. Sous Windows, le nom correspondant peut être un nom de fichier court ainsi qu'un nom de fichier long à condition qu'il soit de 8,3 longueur - il peut, par exemple, contient des espaces et donc ne pas être un nom valide de Windows de fichier court.  
+
         PC-BASIC will first look for a file with the name exactly as provided. This can be a long name and will be case sensitive if your file system is. If such a file is not found, it will truncate the name provided to 8.3 format and convert to all uppercase. If that exact name is not found, it will look for 8.3 names in mixed case which match the name provided in a case-insensitive way. Such files are searched in lexicographic order. Files names longer than 8.3 will not be matched, unless their name is entered exactly. On Windows, the name matched can be a short filename as well as a long filename provided it is of 8.3 length — it may, for example, contain spaces and thus not be a valid Windows short file name.  
     LOAD, SAVE, BLOAD, BSAVE, CHAIN, merge, RUN, LIST
+
     LOAD, SAVE, BLOAD, BSAVE, CHAIN, MERGE, RUN, LIST
         On n'a pas tenté de trouver une correspondance exacte. Au lieu de cela, la recherche va d'abord faire correspondre les tous-caps version 8.3 du nom et de continuer dans l'ordre lexicographique comme ci-dessus. Si aucune extension est spécifiée, les .BAS d'extension seront ajoutés implicitement. Pour charger un programme sans extension, fin du nom de fichier dans un point. Sur les systèmes de fichiers sans noms de fichiers courts, il est impossible de charger un programme si son nom est plus long que 8.3, contient des caractères non-autorisés ou se termine par un point.  
+
         No attempt is made to find an exact match. Instead, the search will first match the all-caps 8.3 version of the name and continue in lexicographic order as above. If no extension is specified, the extension .BAS will be implicitly added. To load a program with no extension, end the filename in a dot. On file systems without short filenames, it is not possible to load a program if its filename is longer than 8.3, contains non-permissible characters or ends in a dot.  
  
  Si aucun fichier correspondant est trouvé pour un nom de fichier de sortie, un nouveau fichier sera créé avec un tout en majuscules 8.3 nom de fichier.
+
    If no matching file is found for an output file name, a new file will be created with an all-caps 8.3 file name.
 +
Cassette device CAS1:
 +
    parameters can be a file name of up to eight characters. Cassette file names are case sensitive, have no path or extension, may be empty and do not need to be unique. They may contain any character in the range &h20–&hFF. On the cassette device, when called in direct mode, OPEN, CHAIN, MERGE, LOAD and BLOAD will print a message to the console for each file found while winding the tape. The message consists of the filename followed by a dot and the file type and concluded with a status message. The file type is one of the following:
  
Cassette dispositif CAS1:
+
    A
 
+
         Program file in text format
  paramètres peuvent être un nom de fichier de huit caractères maximum.  les noms de fichiers de cassette sont sensibles à la casse, ont aucun chemin ou d'extension, peut être vide et ne pas besoin d'être unique.  Ils peuvent contenir des caractères dans la gamme & h20- & hFF.  Sur le dispositif de cassette, lorsqu'il est appelé en mode direct, OUVERT, CHAIN, merge, LOAD et BLOAD imprime un message à la console pour chaque fichier trouvé lors de l'enroulement de la bande.  Le message se compose du nom du fichier suivi d'un point et le type de fichier et conclu avec un message d'état.  Le type de fichier est l'un des éléments suivants:
+
 
+
  UNE
+
         Fichier de programme en format texte
+
 
     B
 
     B
         Fichier de programme au format tokenised
+
         Program file in tokenised format
    
+
     D
         Fichier de données
+
         Data file
 
     M
 
     M
         image mémoire BSAVE
+
         BSAVE memory image
 
     P
 
     P
         Fichier de programme en format protégé
+
         Program file in protected format
  
  Si le fichier ne correspond pas à la spécification de fichier et le type de fichier requis, le statut est arrêté; si le fichier correspond, l'état est trouvé. Lorsqu'il est appelé à partir d'un programme, ces déclarations n'impriment des messages à la console. Si le dispositif a été explicitement spécifié, les paramètres peuvent également être vide. Dans ce cas, le premier fichier du type approprié est ouvert.  
+
    If the file does not match the file specification and required file type, the status is Skipped; if the file matches, the status is Found. When called from a program, these statements do not print messages to the console. If the device was specified explicitly, parameters may also be empty. In this case the first file of the appropriate type is opened.
 +
Console and parallel devices SCRN:, KYBD:, and LPTn:
 +
    These devices do not allow further device parameters.  
 +
Serial devices COMn:
  
dispositifs de console et parallèles SCRN :, Kybd :, et LPTn:
+
    When opening a COM port, the file_spec has the form
 +
    "COMn:[speed[,parity[,data[,stop[,RS][,CS[n]][,DS[n]][,CD[n]][,LF][,PE]]]]]"
 +
    The first four parameters after the device colon must be given in the order specified but the named parameters can be given in any order. The meaning of the parameters is:
 +
    Parameter Default Meaning
 +
    speed 300 Baud (bps) rate for the connection. speed is one of [75, 110, 150, 300, 600, 1200, 1800, 2400, 4800, 9600].
 +
    parity E Parity bit convention. parity is one of [S, M, O, E, N].
 +
    parity Meaning Effect
 +
    S SPACE Parity bit always set to 0.
 +
    M MARK Parity bit always set to 1.
 +
    O ODD Parity bit set so that character parity is odd.
 +
    E EVEN Parity bit set so that character parity is even.
 +
    N NONE No parity bit transmitted or received.
 +
    data 7 Data bits per byte. data must be one of [4, 5, 6, 7, 8]. A byte consists of the data bits plus parity bit, if any. Byte size must be in the range [5—8]: if data is 4, parity must not be N; if data is 8, parity must be N.
 +
    stop 1 The number of stop bits. stop must be 1 or 2. Default is 2 if speed is 75 or 110; 1 otherwise.
 +
    RS no Suppress Request To Send.
 +
    CS[n] CS1000 Set Clear To Send timeout to n milliseconds. If n is 0 or not given, disable CTS check. Default is CS0 if RS is set; CS1000 otherwise.
 +
    DS[n] DS1000 Set Data Set Ready timeout to n milliseconds. If n is 0 or not given, disable DSR check.
 +
    CD[n] CD0 Set Carrier Detect timeout to n milliseconds. If n is 0 or not given, disable CD check.
 +
    LF no Send a line feed after each carriage return.
 +
    PE no Enable parity checking (This setting is ignored by PC-BASIC).
  
  Ces dispositifs ne permettent pas d'autres paramètres de l'appareil.
+
Notes
  
Les périphériques série COMn:
+
    If a COM port is opened for RANDOM, access is byte-for-byte rather than through FIELD records; PRINT# and INPUT# access the port directly. rec_len sets the number of bytes read by the GET and PUT statements.
 +
    For INPUT, OUTPUT and APPEND modes, LEN may be specified but is ignored.
 +
    If I/O is attempted contravening the FOR mode specified, the PRINT or INPUT statement will raise Bad file mode.
 +
    If RANDOM I/O is attempted contravening the ACCESS mode specified, the PUT or GET statement will raise Path/File access error.
 +
    The # is optional and has no effect.
  
  Lors de l'ouverture d'un port COM, le file_spec a la forme
+
Errors
    "COMn: [vitesse [, la parité [, données [, arrêtez [RS] [, CS [n]] [, DS [n]] [, CD [n]] [, LF] [, PE]]]] ] "
+
    Les quatre premiers paramètres après le côlon de l'appareil doivent être donnés dans l'ordre spécifié mais les paramètres nommés peuvent être donnés dans un ordre quelconque.  La signification des paramètres est:
+
    Paramètre Valeur par défaut Signification
+
    vitesse 300 bauds (bps) Taux pour la connexion.  la vitesse est l'un [75, 110, 150, 300, 600, 1200, 1800, 2400, 4800, 9600].
+
    parité E convention de bit de parité.  la parité est l'une des [S, M, O, E, N].
+
    parité Signification Effet
+
    S bit SPACE de parité toujours réglé sur 0.
+
    M MARK bit de parité toujours réglé sur 1.
+
    O bit de parité impaire réglé de telle sorte que la parité de caractères est impair.
+
    E bit de parité pair réglé de telle sorte que la parité de caractère est encore.
+
    N NONE Pas de bit de parité transmis ou reçu.
+
    données 7 bits de données par octet.  les données doivent être l'un de [4, 5, 6, 7, 8].  Un octet est constitué de bits de données ainsi que le bit de parité, le cas échéant.  la taille de l'octet doit être dans l'intervalle [5-8]: si les données sont 4, la parité ne doit pas être N;  si les données sont 8, la parité doit être N.
+
    stop 1 Le nombre de bits d'arrêt.  arrêt doit être 1 ou 2. Par défaut est 2 si la vitesse est de 75 ou 110;  1 sinon.
+
    RS ne Suppress demande d'envoi.
+
    CS [n] CS1000 Set Clear To Send timeout n millisecondes.  Si n est 0 ou non donné, désactiver l'enregistrement CTS.  Par défaut est CS0 si RS est réglé;  CS1000 autrement.
+
    DS [n] DS1000 Data Set Ready Set timeout n millisecondes.  Si n est 0 ou non donné, désactiver l'enregistrement DSR.
+
    CD [n] CD0 Set Carrier Detect timeout n millisecondes.  Si n est 0 ou non donné, désactiver l'enregistrement de CD.
+
    LF pas Envoyer un saut de ligne après chaque retour chariot.
+
    PE n'Activer contrôle de parité (Ce paramètre est ignoré par PC-BASIC).
+
  
Remarques
+
    file_spec is empty or a non-existent device: Bad file number.
 +
    FOR APPEND ACCESS WRITE is specified: Path/File access error.
 +
    FOR and ACCESS mismatch in other ways: Syntax error.
 +
    The COM: file_spec parameters do not follow the specification: Bad file name.
 +
    The CAS1: file_spec contains disallowed characters: Bad file number.
 +
    A file is already open for OUTPUT or APPEND: File already open. This is only raised for COMn:, CASn: and disk devices.
 +
    rec_len or file_num have string values: Type mismatch.
 +
    file_spec or mode_char have number values: Type mismatch.
 +
    file_num is not in [-32768—32767]: Overflow.
 +
    file_num is not in [0—255]: Illegal function call.
 +
    file_num is not in [1—max_files]: Bad file number.
 +
    rec_len is not in [-32768—32767]: Overflow.
 +
    rec_len is not in [1—128]: Illegal function call.
 +
    mode_char is empty or the first character is not in ["I", "O", "A", "R"]: Bad file mode.
  
  Si un port COM est ouvert pour RANDOM, l'accès est octet par octet plutôt que par des enregistrements sur le terrain;  PRINT # et INPUT # accès au port directement.  rec_len définit le nombre d'octets lus par les déclarations GET et PUT.
+
OPTION BASE
    Pour l'entrée, la sortie et les modes APPEND, LEN peut être spécifié, mais est ignoré.
+
OPTION BASE n
    Si I / O est tenté de contrevenir à la FOR mode spécifié, l'instruction PRINT ou INPUT soulèvera le mode de fichier incorrect.
+
    Si RANDOM I / O est tenté de contrevenir à la mode d'accès spécifié, la PUT ou GET déclaration soulèvera erreur d'accès Chemin / Fichier.
+
    Le # est facultative et n'a aucun effet.
+
  
les erreurs
+
Sets the starting index of all arrays to n.
 +
Parameters
  
  file_spec est vide ou un dispositif non-existant: Numéro de fichier incorrect.
+
     n is a literal digit 0 or 1. Expressions are not allowed.
     POUR APPEND ACCESS WRITE est spécifié: Erreur d'accès Chemin / Fichier.
+
    Et l'accès non-concordance d'autres manières: Erreur de syntaxe.
+
    Les COM: paramètres file_spec ne suivent pas la spécification: nom de fichier incorrect.
+
    Le CAS1: file_spec contient des caractères non autorisés: Numéro de fichier incorrect.
+
    Un fichier est déjà ouvert pour OUTPUT ou APPEND: Fichier déjà ouvert.  Ceci est soulevé seulement pour COMn :, ACESI: et les unités de disque.
+
    rec_len ou file_num ont des valeurs de chaîne: Type mismatch.
+
    file_spec ou mode_char ont des valeurs numériques: incompatibilité de type.
+
    file_num est pas dans [-32.768 à 32.767]: Overflow.
+
    file_num est pas dans [0-255]: Illegal appel de fonction.
+
    file_num est pas dans [1-MAX_FILES]: Numéro de fichier incorrect.
+
    rec_len est pas dans [-32.768 à 32.767]: Overflow.
+
    rec_len est pas dans [1-128]: Illegal appel de fonction.
+
    mode_char est vide ou le premier caractère est pas dans [ "I", "O", "A", "R"]: le mode de fichier incorrect.
+
  
OPTION BASE OPTION BASE n
+
Notes
  
Définit l'indice de départ de tous les tableaux à n. Paramètres
+
    If OPTION BASE has not been called, the first array allocation defaults to starting index 0.
  
  n est un chiffre littérale 0 ou 1. Les expressions ne sont pas autorisés.
+
Errors
  
Remarques
+
    n is not a digit 0 or 1: Syntax error.
 +
    OPTION BASE 1 is called but an array has already been allocated before: Duplicate definition.
 +
    OPTION BASE is called more than once with different starting index: Duplicate definition.
  
  Si OPTION BASE n'a pas été appelé, les premiers défauts de répartition de tableau à partir index 0.
+
OUT
 +
OUT port, value
  
les erreurs
+
Sends a byte to an emulated machine port.
  
  n est pas un chiffre 0 ou 1: Erreur de syntaxe.
+
The following machine ports are emulated in PC-BASIC:
    OPTION BASE 1 est appelé, mais un tableau a déjà été allouée avant: définition en double.
+
port Effect
    OPTION BASE est appelé plus d'une fois avec différents index de départ: Dupliquer définition.
+
&h201 resets the game port (joystick port)
 +
&h3C5 sets the write bitmask for SCREEN 7, 8, 9 colour planes. bitmask = 2 ^ value.
 +
&h3CF sets the read colour plane to value.
 +
&h3D8 if value = &h1A, enable composite colorburst.
 +
if value = &h1E, disable composite colorburst.
 +
Requires video={cga, tandy, pcjr}.
 +
Notes
  
OUT OUT port, la valeur
+
    Only a limited number of machine ports are emulated.
 +
    In GW-BASIC under MS-DOS, the sequence needed to set the colour plane mask is:
 +
    OUT &h3C4, 2
 +
    OUT &h3C5, 2 ^ plane
 +
    The sequence needed to set the colour plane is:
 +
    OUT &h3CE, 4
 +
    OUT &h3CF, plane
 +
    The initial OUT statements currently have no effect in PC-BASIC.
  
Envoie un octet à un port de la machine émulé.
+
Parameters
  
Les ports de machine suivants sont émulés dans PC-BASIC: port Effect & H201 réinitialise le port de jeu (port joystick) et h3C5 définit le bitmask d'écriture pour ECRAN 7, 8, 9 plans de couleur. bitmask = 2 ^ valeur. & H3CF définit le plan de couleur de lecture à la valeur. & H3D8 si la valeur = & H1A, activez colorburst composite. si la valeur = & H1E, désactivez colorburst composite. Requiert video = {cga, tandy, PCjr}. Remarques
+
    port is a numeric expression in [-32768—65535].
 +
    value is a numeric expression in [0—255].
  
  Seul un nombre limité de ports de la machine sont émulés.
+
Errors
    Dans GW-BASIC sous MS-DOS, la séquence nécessaire pour définir le masque de plan de couleur est:
+
    OUT & H3C4, 2
+
    OUT & h3C5, 2 ^ plan
+
    La séquence nécessaire pour définir le plan de couleur est:
+
    OUT & h3CE, 4
+
    OUT & h3CF, avion
+
    Les déclarations initiales OUT ont actuellement aucun effet dans PC-BASIC.
+
  
Paramètres
+
    port or value has a string value: Type mismatch.
 +
    port is not in [-32768—65535]: Overflow.
 +
    value is not in [-32768—32767]: Overflow.
 +
    value is not in [0—255]: Illegal function call.
  
  port est une expression numérique dans [-32768 à 65535].
+
PAINT
    La valeur est une expression numérique dans [0-255].
+
PAINT [STEP] (x, y) [, attrib [, border [, background]]]
  
les erreurs
+
Flood-fills the screen with a colour or pattern, starting from the given seed point.
 +
Parameters
  
  le port ou la valeur a une valeur de chaîne: Type mismatch.
+
     x, y are numeric expressions in the range [-32768—32767] If STEP is specified, x y are offsets from the current position. If the seed point is outside the visible screen area, no flood fill is performed.
     port est pas dans [-32768 à 65535]: Overflow.
+
     attrib is an expression that specifies the fill attribute or pattern. If not specified, the current foreground attribute is used.
     valeur est pas dans [-32768 à 32767]: Overflow.
+
    If attrib has a number value, it must be in [0—255]; it specifies the colour attribute used to fill.
     valeur est pas dans [0-255]: Illegal appel de fonction.
+
     If attrib has a string value, it specifies a tile pattern (see below).
 +
    border is a numeric expression in [0—255]. It specifies the attribute of the fill boundary (see below).
 +
    background is a string expression that represents a background tile pattern to ignore when determining boundaries (see below).
  
PAINT PAINT [STEP] (x, y) [, attrib [, frontière [, fond]]]
+
Tile patterns
  
Flood-remplit l'écran avec une couleur ou un motif, à partir du point de semences donné. Paramètres
+
A tile pattern can be specified by a string of up to 255 characters. The interpretation of the string depends on the number of bits per pixel and on the current screen mode.
  
     x, y sont des expressions numériques dans l'intervalle [-32768 à 32767] Si STEP est spécifié, xy sont des décalages de la position actuelle. Si le point de semences est en dehors de la zone d'écran visible, pas de remplissage d'inondation est effectuée. attrib est une expression qui spécifie l'attribut de remplissage ou d'un motif. Si non spécifié, l'attribut de premier plan en cours est utilisé. Si attrib a une valeur numérique, il doit être dans [0-255]; il spécifie l'attribut de couleur utilisée pour remplir. Si attrib a une valeur de chaîne, il spécifie un motif de carreaux (voir ci-dessous). la frontière est une expression numérique dans [0-255]. Elle spécifie l'attribut de la limite de remplissage (voir ci-dessous). arrière-plan est une expression de chaîne qui représente un motif de carreaux de fond à ignorer lors de la détermination des limites (voir ci-dessous).  
+
1 bit per pixel (e.g. SCREEN 2)
 +
     Here is an example:
 +
    76543210 Byte value
 +
    *....... &h80
 +
    .*...... &h40
 +
    ..*..... &h20
 +
    ...*.... &h10
 +
    ....*... &h08
 +
    .....*.. &h04
 +
    ......*. &h02
 +
    This diagonal stripe pattern can thus be produced with
 +
    PAINT (0, 0), CHR$(128)+CHR$(64)+CHR$(32)+CHR$(16)+CHR$(8)+CHR$(4)+CHR$(2)
 +
SCREEN 7, 8, 9
 +
    The tile pattern is always 8 pixels wide. The first character in the pattern string contains the first bit of each of these 8 pixels, the second character contains the second bits, etc. For example, in a 2-bits-per-pixel mode, four colour attributes can be used in the pattern. To create a diagonal stripe pattern of the same shape, in attribute &h03, we now need a tile string that is twice as long:
 +
    Attribute bit 76543210 Byte value
 +
    0 *....... &h80
 +
    1 *....... &h80
 +
    0 .*...... &h40
 +
    1 .*...... &h40
 +
    0 ..*..... &h20
 +
    1 ..*..... &h20
 +
    0 ...*.... &h10
 +
    1 ...*.... &h10
 +
    0 ....*... &h08
 +
    1 ....*... &h08
 +
    0 .....*.. &h04
 +
    1 .....*.. &h04
 +
    0 ......*. &h02
 +
    1 ......*. &h02
 +
    If the pattern string is truncated before all bits of the last line have been defined, the remaining bits will be zero.  
 +
SCREEN 1, 3, 4, 5 , 6
 +
    Each row of the tile pattern represents a screen row. Colours are encoded in consecutive bits; the more bits per pixel, the narrower the pattern is. For 2 bits per pixel, the pattern is 4 pixels wide; for 4 bits per pixel it is 2 pixels wide. The following pattern string encodes a diagonal dotted stripe in two colours:
 +
    3210 76543210 Byte value
 +
    2000 *....... &h80
 +
    1000 .*...... &h40
 +
    0200 ..*..... &h20
 +
    0100 ...*.... &h10
 +
    0020 ....*... &h08
 +
    0010 .....*.. &h04
 +
    0002 ......*. &h02
  
motifs de carreaux
+
The tile pattern is anchored to the screen; imagine a grid starting at (0,0) and covering the screen. Whenever an area is tile-filled, the tiles are put into this grid. In this way, adjacent areas will have continuous tiling even if they were filled from different seed points.
 +
Boundaries
  
Un motif de tuile peut être spécifié par une chaîne de 255 caractères. L'interprétation de la chaîne dépend du nombre de bits par pixel et sur le mode d'écran actuel.
+
A solid flood fill stops at pixels that have the same attribute as the fill or that have the specified border attribute, if specified. A tiling flood fill stops at the specified border attribute; if no border attribute is specified, it stops at the current foreground attribute. A tiling flood fill also stops at scan line intervals that are the same as the tiling pattern for that line, unless a background pattern is specified and the interval also equals the background pattern for that line.
 +
Errors
  
1 bit par pixel (par exemple ECRAN 2)
+
    In SCREEN 7, 8, 9, if background equals attrib up to the length of attrib: Illegal function call.
 +
    background has a number value: Illegal function call.
 +
    border,x, or y have a string value: Type mismatch.
 +
    border,x, or y are not in [-32768—32767]: Overflow.
 +
    border is not in [0—255]: Illegal function call.
 +
    attrib is numeric and not in [-32768—32767]: Overflow.
 +
    attrib is numeric and not in [0—255]: Illegal function call.
  
  Voici un exemple:
+
PALETTE
    valeur 76543210 Byte
+
PALETTE [attrib, colour]
    * ....... & H80
+
    . * ...... & H40
+
    .. * ..... & H20
+
    ... * .... & H10
+
    .... * ... Et H08
+
    ..... * .. & H04
+
    ...... *.  & H02
+
    Ce modèle de bande diagonale peut donc être produit avec
+
    PEINTURE (0, 0), CHR $ (128) + CHR $ (64) + CHR $ (32) + CHR $ (16) + CHR $ (8) + CHR $ (4) + CHR $ (2)
+
  
Ecran 7, 8, 9
+
Assigns a colour to an attribute. All pixels with that attribute will change colour immediately. If no parameters are specified, PALETTE resets to the initial setting.
 +
Parameters
  
  Le motif de tuile est toujours de 8 pixels de large.  Le premier caractère de la chaîne de configuration contient le deuxième caractère du premier bit de chacun des 8 pixels, contient les seconds bits, etc. Par exemple, dans un mode de 2 bits par pixel, les quatre attributs de couleur peuvent être utilisés dans la modèle.  Pour créer un motif de rayure diagonale de la même forme, dans l'attribut & h03, nous avons maintenant besoin d'une chaîne de tuile qui est deux fois plus long:
+
     attrib is a numeric expression between 0 and the current palette size, less one.
    Attribut bit valeur 76543210 Byte
+
     colour is a numeric expression between -1 and the maximum number of colours for the current screen mode, less one. If colour equals -1, the palette remains unchanged.
     0 * ....... & h80
+
     1 * ....... & h80
+
    0. * ...... & H40
+
    1. * ...... & H40
+
    0 .. * ..... & h20
+
    1 .. * ..... & h20
+
    0 ... * .... & h10
+
    1 ... * .... & h10
+
    0 .... * ... et H08
+
    1 .... * ... et H08
+
    0 ..... * .. & h04
+
    1 ..... * .. & h04
+
    0 ...... *.  & H02
+
    1 ......*.  & H02
+
    Si la chaîne de motif est tronqué avant que tous les bits de la dernière ligne ont été définis, les bits restants seront nuls.  
+
  
ÉCRAN 1, 3, 4, 5, 6
+
Errors
  
  Chaque ligne du motif de carreaux représente une ligne d'écran.  Les couleurs sont codées en bits consécutifs;  les plus de bits par pixel, plus la tendance est.  Pour 2 bits par pixel, le motif est de 4 pixels de large;  4 bits par pixel, il est de 2 pixels de large.  La chaîne de modèle suivant code une bande diagonale en pointillés en deux couleurs:
+
    attrib or colour has a string value: Type mismatch.
    3210 valeur 76543210 Byte
+
     attrib or colour is not in [-32768—32767]: Overflow
    2000 * ....... & h80
+
     attrib or colour is not in range: Illegal function call
     1000. * ...... & H40
+
     0200 .. * ..... & h20
+
    0100 ... * .... & h10
+
    0020 .... * ... et H08
+
    0010 ..... * .. & h04
+
    0002 ...... *.  & H02
+
  
Le motif de carreaux est ancré à l'écran; Imaginez une grille à partir de (0,0) et couvrant l'écran. Chaque fois qu'une zone est remplie de tuiles, les carreaux sont mis dans cette grille. De cette façon, les zones adjacentes auront carrelage continu, même si elles étaient remplies de différents points de semences. Limites
+
PALETTE USING
 +
PALETTE USING int_array_name {(|[} start_index {)|]}
  
Un remplissage d'inondation solide arrête à des pixels qui ont le même attribut que le remplissage ou qui ont l'attribut border spécifié, si spécifié. Un remplissage de carrelage d'inondation arrête à l'attribut border spécifié; si aucun attribut border est spécifié, il arrête à l'attribut de premier plan en cours. Un remplissage de carrelage d'inondation empêche également à des intervalles de lignes de balayage qui sont les mêmes que le motif de carrelage pour cette ligne, à moins d'un motif d'arrière-plan est spécifiée, et l'intervalle est aussi égale le motif de fond pour cette ligne. les erreurs
+
Assigns new colours to all attributes.
 +
Parameters
  
  Dans ÉCRAN 7, 8, 9, si le fond est égale à attrib jusqu'à la longueur du attrib: Illegal appel de fonction.
+
    int_array_name is an array of integers (%) that will supply the new values for the palette.
     arrière-plan a une valeur numérique: Illegal appel de fonction.
+
     start_index is a numeric expression that indicates at which index in the array to start mapping to the palette.
    frontière, x ou y ont une valeur de chaîne: Type mismatch.
+
    frontière, x ou y ne sont pas dans [-32.768 à 32.767]: Overflow.
+
    la frontière est pas dans [0-255]: Illegal appel de fonction.
+
    attrib est numérique et non pas dans [-32768 à 32767]: Overflow.
+
    attrib est numérique et non pas dans [0-255]: Illegal appel de fonction.
+
  
PALETTE PALETTE [attrib, color]
+
If an array entry has value -1, the matching attribute is left unchanged.
 +
Errors
  
Affecte une couleur à un attribut. Tous les pixels avec cet attribut changeront de couleur immédiatement. Si aucun paramètres sont spécifiés, PALETTE réinitialise au réglage initial. Paramètres
+
    int_array_name has not been allocated: Illegal function call. The array will not be automatically allocated.
 +
    int_array_name is not an integer array: Type mismatch.
 +
    int_array_name is too short: Illegal function call.
 +
    start_index has a string value: Type mismatch.
 +
    start_index is not in [-32768—32767]: Overflow
 +
    start_index is outside array dimensions: Subscript out of range
  
  attrib est une expression numérique entre 0 et la taille de la palette actuelle, moins un.
+
PCOPY
    la couleur est une expression numérique entre -1 et le nombre maximum de couleurs pour le mode d'écran actuel, moins un.  Si la couleur est égal à -1, la palette reste inchangée.
+
PCOPY src, dst
  
les erreurs
+
Copies the screen page src to dst. All text and graphics on dst is replaced by those of src.
 +
Parameters
  
  attrib ou de couleur a une valeur de chaîne: Type mismatch.
+
    src and dst are numeric expressions between 0 and the current video mode's number of pages, less one.
    attrib ou de couleur ne sont pas dans [-32768 à 32767]: Overflow
+
    attrib ou de couleur ne sont pas dans la plage: Illegal appel de fonction
+
  
PALETTE UTILISATION PALETTE UTILISATION int_array_name {(| [} {start_index) |]}
+
Errors
  
Affecte de nouvelles couleurs à tous les attributs. Paramètres
+
    src or dst has a string value: Type mismatch.
 +
    src or dst is not in [-32768—32767]: Overflow.
 +
    src or dst is out of range: Illegal function call.
  
  int_array_name est un tableau de nombres entiers (%) qui fournira les nouvelles valeurs pour la palette.
+
PEN (statement)
    start_index est une expression numérique qui indique à quel index dans le tableau pour commencer la cartographie à la palette.
+
PEN {ON|OFF|STOP}
  
Si une entrée de gamme a une valeur -1, l'attribut correspondant est laissé inchangé. les erreurs
+
Controls event trapping and read access of the light pen (emulated through the mouse in PC-BASIC). PEN ON switches pen reading and trapping on. PEN OFF switches it off. PEN STOP suspends PEN event trapping until PEN ON is executed. Up to one event can be triggered during suspension, provided that event handling was switched on prior to suspension. The event triggered during suspension is handled immediately after the next PEN ON statement.
 +
PLAY (event switch)
 +
PLAY {ON|OFF|STOP}
  
  int_array_name n'a pas été affectée: Illegal appel de fonction.  Le tableau ne sera pas automatiquement attribué.
+
     ON: enables ON PLAY event trapping of the music queue.
     int_array_name est pas un entier tableau: Incompatibilité de type.
+
     OFF: disables trapping.
     int_array_name est trop court: Illegal appel de fonction.
+
     STOP: halts trapping until PLAY ON is used. Events that occur while trapping is halted will trigger immediately when trapping is re-enabled.
     start_index a une valeur de chaîne: Type mismatch.
+
    start_index est pas dans [-32.768 à 32.767]: Overflow
+
    start_index est dimensions du tableau à l'extérieur: Indice hors de portée
+
  
PCOPY PCOPY src, dst
+
PLAY (music statement)
 +
PLAY [mml_string_0] [, [mml_string_1] [, mml_string_2]]
  
Copie la page d'écran src dst. Tous les textes et graphiques sur dst est remplacé par ceux de src. Paramètres
+
Plays the tune defined by the Music Macro Language strings mml_string_0, ....
  
  src et dst sont des expressions numériques entre 0 et le numéro du mode vidéo actuel de pages, moins un.
+
Unless syntax={tandy | pcjr} is set, only the single-voice syntax is available. The three separate MML strings correspond to the three voices of the PCjr/Tandy sound adapter. The notes in these strings are played synchronously.
 +
Parameters
  
les erreurs
+
    mml_string_0, mml_string_1, mml_string_2 are string expressions in MML.
 +
    At least one parameter must be provided and the statement must not end in a comma.
  
  src ou dst a une valeur de chaîne: Type mismatch.
+
Music Macro Language reference
    src ou dst est pas dans [-32.768 à 32.767]: Overflow.
+
Notes and Pauses
    src ou dst est hors de portée: Illegal appel de fonction.
+
Command Effect
 +
{A|B|C|D|E|F|G}[#|+|-][m] Play a note.
 +
+ or # indicates sharp.
 +
- indicates flat.
 +
m is a numeric literal and indicates duration of an mth note. m is in the range [0—64]. If m=0 or omitted, use the default length.
 +
Nn Play note n, in the range [0—84] (7 octaves).
 +
n = 0 means rest.
 +
On Set the current octave to n, in the range [0—6]. Default is 4.
 +
> Increase the current octave by 1, with a maximum of 6.
 +
< Decrease the current octave by 1, with a minimum of 0.
 +
Pn Pause for the duration of an nth note. n is in the range [0—64]. If n=0, this has no effect.
 +
Timing commands
 +
Command Effect
 +
. Increase the duration of the preceding note by 1/2 times its normal duration. Periods can be repeated to increase duration further.
 +
Ln Set the duration of following note to an nth note. (n=4 is a quarter note, etc.) n is in the range [1—64].
 +
MN Normal: 7/8 of the duration is sound, with 1/8 silence. Default mode.
 +
ML Legato: full duration is sound.
 +
MS Staccato: 3/4 of the duration is sound, with 1/4 silence.
 +
Tn Sets the tempo to n L4s per minute. n is in the range [32—255]. Default is 120.
 +
Background-mode commands
  
PEN (déclaration) PEN {ON | OFF | STOP}
+
These commands affect SOUND, PLAY and BEEP
 +
Command Effect
 +
MB Turns on background mode; sound commands exit without waiting for the music to finish. The music keeps playing while other commands are executed. There can be up to 16 notes in the background music queue; if more notes are played, PLAY will block until there are only 16 left.
 +
MF Turns off background mode; sound commands block. Default mode.
 +
Subroutine command
 +
Command Effect
 +
Xs Execute substring. s is one of the following:
  
Contrôles événement piégeage et l'accès en lecture de la plume de lumière (émulé par la souris dans PC-BASIC). PEN ON commute la lecture de stylo et de piégeage sur. PEN OFF l'éteint. PEN arrêt suspend événement PEN piégeant jusqu'à PEN ON est exécutée. Jusqu'à un événement peut être déclenché pendant la suspension, à condition que la gestion des événements a été activée avant la suspension. L'événement déclenché pendant la suspension est traitée immédiatement après l'instruction suivante PEN ON. PLAY (commutateur d'événement) PLAY {ON | OFF | STOP}
+
    a string variable name followed by a;
 +
    the result of VARPTR$() on a string variable
  
  ON: permet ON événement PLAY piégeage de la file d'attente de la musique.
+
Volume control
    OFF: désactive le piégeage.
+
    STOP: arrête le piégeage jusqu'à JOUER ON est utilisé.  Les événements qui se produisent pendant le piégeage est arrêté déclenchera immédiatement lorsque le piégeage est réactivé.
+
  
PLAY (déclaration de la musique) PLAY [mml_string_0] [, [mml_string_1] [, mml_string_2]]
+
Volume control is available on syntax={tandy | pcjr} only:
 +
Command Effect
 +
Vn Set the volume to n, in the range [0—15]. On syntax=pcjr, if SOUND ON has not been executed, this has no effect. On syntax=tandy it does have.
 +
MML Parameters
  
Joue la mélodie définie par les chaînes de musique Langue Macro mml_string_0, ....
+
Numeric variables n in the commands above can be:
  
Sauf si la syntaxe = {tandy | PCjr} est définie, seule la syntaxe simple vocale est disponible. Les trois chaînes MML distinctes correspondent aux trois voix de la carte son PCjr / Tandy. Les notes de ces cordes sont jouées de manière synchrone. Paramètres
+
    an integer literal, e.g. PLAY "L4G"
 +
    a numeric variable name or array element var preceded by = and followed by ;. For example, PLAY "L=VAR;G" or PLAY "L=A(1);G"
 +
    the result of VARPTR$(var) preceded by =. For example, PLAY "L=" + VARPTR$(VAR) + "G"
  
  mml_string_0, mml_string_1, mml_string_2 sont des expressions de chaîne dans MML.
+
Note that only number literals may follow named notes and dereferencing variables or arrays is not allowed there. It is an error to write PLAY "G=VAR;" or PLAY "G=" + VARPTR$(VAR). Use PLAY "G4" or PLAY "L=VAR;G" or PLAY "L=" + VARPTR$(VAR) + "G" instead.
    Au moins un paramètre doit être fourni et la déclaration ne doit pas se terminer par une virgule.
+
Errors
  
Musique macro notes de référence du langage et Pauses Effet Commande {A | B | C | D | E | F | G} [# | + | -] [m] Jouez une note. + Ou # indique forte. - Indique plat. m est un littéral numérique et indique la durée d'une note d'mth. m est dans la gamme [0-64]. Si m = 0 ou omis, utilisez la longueur par défaut. Nn Jouer la note n, dans la gamme [0-84] (7 octaves). n = 0 signifie repos. Sur Réglez l'octave en cours à n, dans l'intervalle [0-6]. Par défaut est 4.> Augmenter l'octave courant de 1, avec un maximum de 6. <Diminution de l'octave courant de 1, avec un minimum de 0. Pn Pause pour la durée d'une note nième. n est dans la gamme [0-64]. Si n = 0, cela n'a aucun effet. Timing commandes Commande Effet. Augmenter la durée de la note précédente de 1/2 fois la durée normale. Les périodes peuvent être répétées pour augmenter la durée plus loin. Ln Régler la durée de la note suivante à une note nième. (N = 4 est un quart de note, etc.) n est dans la gamme [1-64]. MN normal: 7/8 de la durée est saine, avec 1/8 silence. Mode par défaut. ML Legato: toute la durée est saine. MS Staccato: 3/4 de la durée est solide, avec 1/4 silence. Tn Définit le tempo n L4s par minute. n est dans la gamme [32-255]. Par défaut est 120. commandes Contexte mode
+
    mml_string has a numeric value: Type mismatch.
 +
    mml_string has errors in the MML: Illegal function call.
 +
    A variable in an MML string is of incorrect type: Type mismatch.
 +
    No MML string is specified: Missing operand.
 +
    On PCjr, if SOUND ON has not been executed, using the three-voice syntax will raise Syntax error. This is not the case on Tandy.
  
Ces commandes affectent SOUND, PLAY et BEEP Commande Effet MB Active le mode d'arrière-plan; son commandes sortie sans attendre la musique pour terminer. La musique continue à jouer alors que d'autres commandes sont exécutées. Il peut y avoir jusqu'à 16 notes dans la file d'attente de musique de fond; si plusieurs notes sont jouées, PLAY bloquera jusqu'à ce que il y a seulement 16 gauche. MF Met le mode d'arrière-plan; commandes sonores bloquent. Mode par défaut. commande Subroutine Commande Effet Xs Execute substring. s est l'un des éléments suivants:
+
POKE
 +
POKE address, value
  
  un nom variable de chaîne suivie par un;
+
Sets the value of the memory byte at segment * 16 + address to value, where segment is the current segment set with DEF SEG.
    le résultat de VARPTR $ () sur une variable de chaîne
+
Parameters
  
Contrôle du volume
+
    address is a numeric expression in [-32768—65535]. Negative values are interpreted as their two's complement.
 +
    value is a numeric expression in [0—255].
  
Contrôle du volume est disponible sur la syntaxe = {tandy | PCjr} uniquement: Commande Effet Vn Réglez le volume à n, dans la gamme [0-15]. Sur la syntaxe = PCjr, si SOUND ON n'a pas été exécutée, cela n'a aucun effet. Sur la syntaxe = tandy ne possède. Paramètres MML
+
Notes
  
Les variables numériques n dans les commandes ci-dessus peuvent être:
+
    The memory is only partly emulated in PC-BASIC. See Memory model for supported addresses. Outside emulated areas of memory, this statement has no effect.
  
  un littéral entier, par exemple PLAY "L4G"
+
Errors
    une variable numérique nom ou élément de tableau var précédé de = et suivie;.  Par exemple, PLAY "L = VAR; G" ou PLAY "L = A (1); G"
+
    le résultat de VARPTR $ (var) précédé de =.  Par exemple, PLAY "L =" + VARPTR $ (VAR) + "G"
+
  
Notez que le numéro seulement littéraux peuvent suivre les notes et les variables nommées déréférencement ou tableaux ne sont pas autorisés là. Il est une erreur d'écrire PLAY "G = VAR;" ou PLAY "G =" + VARPTR $ (VAR). Utilisez PLAY "G4" ou PLAY "L = VAR; G" ou PLAY "L =" + VARPTR $ (VAR) + "G" à la place. les erreurs
+
    address or value has a string value: Type mismatch.
 +
    address is not in [-32768—65535]: Overflow.
 +
    value is not in [-32768—32767]: Overflow.
 +
    value is not in [0—255]: Illegal function call.
  
  mml_string a une valeur numérique: incompatibilité de type.
+
PSET and PRESET
    mml_string a des erreurs dans le MML: Illegal appel de fonction.
+
{ PSET | PRESET } [STEP] (x, y) [, attrib]
    Une variable dans une chaîne MML est de type incorrect: incompatibilité de type.
+
    Aucune chaîne de MML est spécifié: opérande manquant.
+
    Sur PCjr, si SOUND ON n'a pas été exécuté, en utilisant la syntaxe à trois voix soulèvera une erreur de syntaxe.  Ce n'est pas le cas sur Tandy.
+
  
POKE POKE adresse, valeur
+
Change the attribute of a pixel on the screen at position (x, y). If STEP is specified, (x, y) is an offset from the current position.
  
Définit la valeur de l'octet de mémoire au niveau du segment * 16 + adresse à la valeur, où le segment est le segment courant réglé avec DEF SEG. Paramètres
+
If attrib is between 0 and the screen mode's palette size, the pixel is changed to attribute attrib. If attrib is larger than the palette size, the pixel's attribute is changed to the highest legal attribute value. If attrib is not specified, PSET changes the attribute to the current foreground attribute while PRESET changes it to zero.
 +
Parameters
  
  adresse est une expression numérique dans [-32768-65535].  Les valeurs négatives sont interprétées comme complément à leurs deux.
+
    x, y are numeric expressions in [-32768—32767].
     La valeur est une expression numérique dans [0-255].
+
     attrib is a numeric expression in [0—255].
  
Remarques
+
Errors
  
  La mémoire est que partiellement émulée dans PC-BASIC. Voir modèle de mémoire pour les adresses prises en charge.  En dehors des zones émulés de mémoire, cette déclaration n'a aucun effet.
+
    x or y has a string value: Type mismatch.
 +
    attrib, x or y or the physical coordinates they translate into are not in [-32768—32767]: Overflow.
 +
    attrib is not in [0—255]: Illegal function call.
  
les erreurs
+
PRINT and LPRINT
 +
{LPRINT|{PRINT|?} [# file_num,]} [expr_0|;|,|SPC(n)|TAB(n)] ... [USING format; uexpr_0 [{;|,} uexpr_1] ... [;|,]]
  
  adresse ou valeur a une valeur de chaîne: Type mismatch.
+
Writes expressions to the screen, printer, or file. If LPRINT is used, output goes to LPT1:. If file_num is specified, output goes to the file open under that number. ? is a shorthand for PRINT.
    adresse se trouve pas dans [-32768 à 65535]: Overflow.
+
    valeur est pas dans [-32768 à 32767]: Overflow.
+
    valeur est pas dans [0-255]: Illegal appel de fonction.
+
  
PSET et PRESET {PSET | PRESET} [STEP] (x, y) [, attrib]
+
When writing a string expression to the screen, the following control characters have special meaning. Other characters are shown as their corresponding glyph in the current codepage.
 +
Code point Control character Effect
 +
&h07 BEL Beep the speaker.
 +
&h08 BS Erase the character in the previous column and move the cursor back.
 +
&h09 HT Jump to the next 8-cell tab stop.
 +
&h0A LF Go to the leftmost column in the next row; connect the rows to one logical line.
 +
&h0B VT Move the cursor to the top left of the screen.
 +
&h0C FF Clear the screen.
 +
&h0D CR Go to the leftmost column in the next row.
 +
&h1C FS Move the cursor one column to the right.
 +
&h1D GS Move the cursor one column to the left.
 +
&h1E RS Move the cursor one row up.
 +
&h1F US Move the cursor one row down.
  
Modifiez l'attribut d'un pixel sur l'écran à la position (x, y). Si l'étape est spécifiée, (x, y) est décalée par rapport à la position actuelle.
+
Expressions can optionally be separated by one or more of the following keywords:
 +
Keyword Effect
 +
; Attaches two expressions tight together; strings will be printed without any space in between, numbers will have one space separating them, in addition to the space or minus sign that indicate the sign of the number.
 +
, The expression after will be positioned at the next available zone. The output file is divided in 14-character zones; if the width of the file is not a multiple of 14, the remaining spaces are unused and the first zone of the next line is used instead. If the file has a width of less than 14 characters, the zones are determined as if the file were wrapping continuously.
 +
SPC(n) Produces n spaces, where n is a numeric expression. if n is less than zero, it defaults to zero. If n is greater than the file width, it is taken modulo the file width.
 +
TAB(n) Moves to column n, where n is a numeric expression. if n is less than zero, it defaults to zero. If n is greater than the file width, it is taken modulo the file width. If the current column is greater than n, TAB moves to column n on the next line.
  
Si attrib est entre 0 et la taille de la palette du mode d'écran, le pixel est modifié pour attribuer attrib. Si attrib est plus grande que la taille de la palette, l'attribut du pixel est modifiée à la valeur la plus élevée de l'attribut juridique. Si attrib est pas spécifié, PSET modifie l'attribut à l'attribut de premier plan en cours tandis que PRESET il change à zéro. Paramètres
+
If the print statement does not end in one of these four separation tokens, a newline is printed after the last expression. String expressions can be separated by one or more spaces, which has the same effect as separating by semicolons.
 +
Format string syntax
  
  x, y sont des expressions numériques dans [-32768 à 32767].
+
A USING declaration occurs at the end of an [L]PRINT[#] statement and writes a formatted string to the screen, printer or file. The following tables list the format tokens that can be used inside the format string.
    attrib est une expression numérique dans [0-255].
+
_ Escape character; causes the next character in the format string to be printed as is rather than interpreted as a format token.
  
les erreurs
+
For string expressions:
 +
! Prints the first character of a string.
 +
\\ Prints 2 or more characters of a string. A greater number of characters is selected by separating the \s by spaces.
 +
& Prints the whole string.
  
  x ou y a une valeur de chaîne: Type mismatch.
+
For numeric expressions, the format string specifies a width and alignment.
    attrib, x ou y ou les coordonnées physiques qu'ils traduisent ne sont pas dans [-32768-32767]: Overflow.
+
# Indicate a position for a digit.
    attrib est pas dans [0-255]: Illegal appel de fonction.
+
. Indicate the decimal point.
 +
, Before the decimal point: cause digits to be grouped in threes separated by commas. After the decimal point it is not a token. Provides one digit position.
  
PRINT et LPRINT {LPRINT | {PRINT |} [# file_num,]?} [Expr_0 |; |, | SPC (n) | TAB (n)] ... [en utilisant le format; uexpr_0 [{; |,} uexpr_1] ... [; |]]
+
The number of characters in the field must not exceed 24.
  
Ecrit expressions à l'écran, une imprimante ou un fichier. Si LPRINT est utilisé, la sortie va vers LPT1 :. Si file_num est spécifié, la sortie va vers le fichier ouvert sous ce numéro. ? est un raccourci pour PRINT.
+
Tokens preceding the number field:
 +
+ Cause the sign to be printed for positive as well as negative numbers. The sign is to be printed to the left of the number.
 +
** Cause any leading spaces to be replaced with *s. Provides two digit positions.
 +
$$ Cause a $ to be printed to the left of the number. Provides one digit position.
  
Lors de l'écriture d'une expression de chaîne à l'écran, les caractères de contrôle suivants ont une signification spéciale. D'autres personnages sont présentés comme leur glyphe correspondant dans le codepage actuel. caractère point de contrôle de code Effet & h07 BEL Beep le haut-parleur. & H08 BS Effacer le caractère dans la colonne précédente et déplacer le curseur. & H09 HT Aller à la prochaine étape de l'onglet 8 cellules. & H0A LF Aller à la colonne de gauche dans la rangée suivante; connecter les lignes à une ligne logique. & H0B VT Déplacez le curseur sur la partie supérieure gauche de l'écran. & H0C FF Effacer l'écran. & H0D CR Aller à la colonne de gauche dans la rangée suivante. & H1C FS Déplacer le curseur d'une colonne à droite. & H1d GS Déplacer le curseur d'une colonne vers la gauche. & H1E RS Déplacer le curseur d'une ligne vers le haut. & H1F US déplacer le curseur d'une ligne vers le bas.
+
Tokens trailing the number field:
 +
+ Cause the sign to be printed for positive as well as negative numbers. The sign will be printed to the right of the number.
 +
- Cause the sign for negative numbers to be printed to the right of the number. Note that - preceding the field is not a token but printed literally.
 +
^^^^ Specify that scientific notation E+00 is to be used.
  
Les expressions peuvent être éventuellement séparés par un ou plusieurs des mots-clés suivants: Mot-clé Effet
+
Numeric expressions are always fully printed, even if they do not fit in the positions specified. If the number does not fit in the allowed space, a % is printed preceding it.
  
Attaches deux expressions serrées ensemble; chaînes seront imprimées sans espace entre les deux, les numéros auront un espace qui les sépare, en plus de l'espace ou signe moins qui indiquent le signe du nombre.
+
    If there are more expressions than format fields, the format string is wrapped around.
 +
    Expressions may be separated with semicolons or commas; the effect is the same.
 +
    If the USING declaration ends in a comma or semicolon, no newline is printed at the end.
 +
    After a USING declaration, other elements of the PRINT syntax such as SPC( and TAB( can not be used.
  
, L'expression sera après être positionné à la prochaine zone disponible. Le fichier de sortie est divisé en zones de 14 caractères; si la largeur du fichier est pas un multiple de 14, les espaces restants sont inutilisés et la première zone de la ligne suivante est utilisée à la place. Si le fichier a une largeur de moins de 14 caractères, les zones sont déterminées comme si le fichier a été enveloppait en continu. SPC (n) Produit n espaces, où n est une expression numérique. si n est inférieur à zéro, il est par défaut à zéro. Si n est supérieure à la largeur de fichier, il est pris modulo la largeur du fichier. TAB (n) Déplace à la colonne n, où n est une expression numérique. si n est inférieur à zéro, il est par défaut à zéro. Si n est supérieure à la largeur de fichier, il est pris modulo la largeur du fichier. Si la colonne courante est supérieure à n, TAB se déplace à la colonne n de la ligne suivante.
+
Parameters
  
Si l'instruction d'impression ne se termine pas dans l'une de ces quatre jetons de séparation, une nouvelle ligne est imprimée après la dernière expression. Les expressions de chaîne peuvent être séparés par un ou plusieurs espaces, ce qui a le même effet que la séparation par des points-virgules. Format syntaxe de chaîne
+
    expr_0, expr_1, ... are expressions of any type.
 +
    format is a string expression that specifies the output format.
 +
    uexpr_0, uexpr_1, ... are expressions matching a token in the format string.
  
Une déclaration UTILISATION se produit à la fin d'un [L] PRINT [#] déclaration et écrit une chaîne formatée à l'écran, une imprimante ou un fichier. Les tableaux suivants présentent les jetons de format qui peuvent être utilisés dans la chaîne de format. _ Caractère d'échappement; provoque le caractère suivant dans la chaîne de format pour être imprimé tel quel plutôt que interprété comme un signe de format.
+
Notes
  
Pour les expressions de chaîne: Imprime le premier caractère d'une chaîne. \\ Prints 2 ou plusieurs caractères d'une chaîne. Un plus grand nombre de caractères est sélectionné en séparant le \ s par des espaces. & Imprime la chaîne entière.
+
    If an error is raised, the output before the error was encountered is printed as normal.
  
Pour les expressions numériques, la chaîne de format spécifie une largeur et d'alignement.
+
Errors
  
     Indiquez une position pour un chiffre.  
+
     n has a string value: Type mismatch.
 +
    n is not in [-32768—65535]: Overflow.
 +
    The format string contains no tokens: Illegal function call.
 +
    An expression doesn't match the corresponding format token type: Type mismatch.
 +
    A number field in the format string exceeds 24 characters: Illegal function call.
 +
    A number field in the format string contains no # characters: Illegal function call.
  
. Indiquez le point décimal. , Avant la virgule: la cause chiffres à être groupés par trois séparés par des virgules. Après la virgule, il est pas un jeton. Fournit une position de chiffres.
+
PUT (files)
 +
PUT [#] file_number [, record_number]
  
Le nombre de caractères dans le champ ne doit pas dépasser 24.
+
Writes a record to the random-access file file_number at position record_number.
 +
Parameters
  
Tokens précédant le champ de numéro: + Parce que le signe à imprimer pour les nombres positifs et négatifs. Le signe doit être imprimé à la gauche du numéro.
+
    file_number is a numeric expression that yields the number of an open random-access file. The # is optional and has no effect.
 +
    record_number is a numeric expression in [1—33554432] (2^25) and is interpreted as the record number.
  
        Causer des espaces menant à être remplacés par des * s. Fournit deux positions de chiffres.
+
Notes
  
$$ Cause a $ à imprimer à la gauche du numéro. Fournit une position de chiffres.
+
    The record number is stored as single-precision; this precision is not high enough to distinguish single records near the maximum value of 2^25.
  
Tokens suivi le champ du numéro: + Parce que le signe à imprimer pour les nombres positifs et négatifs. Le signe sera imprimé à la droite du numéro. - Parce que le signe pour les nombres négatifs à imprimer à la droite du numéro. Notez que - précédant le champ est un jeton, mais imprimé littéralement. ^^^^ Spécifiez que la notation scientifique E + 00 doit être utilisé.
+
Errors
  
Les expressions numériques sont toujours entièrement imprimées, même si elles ne rentrent pas dans les positions indiquées. Si le nombre ne tient pas dans l'espace alloué, un% est imprimé qui le précède.
+
    record_number is not in [1—33554432]: Bad record number.
 +
    file_number is not in [0—255]: Illegal function call.
 +
    file_number is not the number of an open file: Bad file number.
 +
    file_number is open under a mode other than RANDOM: Bad file mode.
 +
    file_number is not specified: Missing operand.
  
  S'il y a plus d'expressions que les champs de format, la chaîne de format est enroulé autour.
+
PUT (communications)
    Les expressions peuvent être séparés par des virgules ou des virgules;  l'effet est le même.
+
PUT [#] com_file_number [, number_bytes]
    Si la déclaration UTILISATION se termine par une virgule ou point-virgule, aucune nouvelle ligne est imprimé à la fin.
+
    Après une déclaration UTILISATION, d'autres éléments de la syntaxe PRINT telles que la CPS (et TAB (ne peuvent pas être utilisés.
+
  
Paramètres
+
Writes number_bytes bytes to the communications buffer opened under file number com_file_number. number_bytes is a numeric expression between 1 and the COM buffer length, inclusive.
 +
Notes
  
  expr_0, expr_1, ... sont des expressions de tout type.
+
    In GW-BASIC, Device I/O error is raised for overrun error, framing error, and break interrupt. Device fault is raised if DSR is lost during I/O. A Parity error is raised if parity is enabled and incorrect parity is encountered. This is according to the manual; it is untested.
    format est une expression de chaîne qui spécifie le format de sortie.
+
    uexpr_0, uexpr_1, ... sont des expressions correspondant à un jeton dans la chaîne de format.
+
  
Remarques
+
Errors
  
  Si une erreur est déclenchée, la sortie avant que l'erreur a été rencontrée est imprimé comme normal.
+
    bytes is less than 1: Bad record number.
 +
    bytes is less than 32768 and greater than the COM buffer length: Illegal function call.
 +
    com_file_number is not specified: Missing operand.
 +
    com_file_number is not in [0—255]: Illegal function call.
 +
    com_file_number is not the number of an open file: Bad file number.
 +
    The serial input buffer is full, i.e. LOF(com_file_number) = 0 and LOC(com_file_number)=255: Communication buffer overflow.
  
les erreurs
+
PUT (graphics)
 +
PUT (x0, y0), array_name [, {PSET|PRESET|AND|OR|XOR}]
  
  n a une valeur de chaîne: Type mismatch.
+
Displays an array to a rectangular area of the graphics screen. Usually, PUT is used with arrays that have been stored using GET. See GET for the format of the array.
    n est pas dans [-32768 à 65535]: Overflow.
+
    La chaîne de format ne contient pas de jetons: Illegal appel de fonction.
+
    Une expression ne correspond pas au type de jeton de format correspondant: incompatibilité de type.
+
    Un champ de numéro dans la chaîne de format dépasse 24 caractères: Illegal appel de fonction.
+
    Un champ de numéro dans la chaîne de format ne contient pas de caractères #: Illegal appel de fonction.
+
  
PUT (fichiers) PUT [#] file_number [, record_number]
+
The keywords have the following effect:
 +
PSET Overwrite the screen location with the new image
 +
PRESET Overwrite the screen location with the inverse image
 +
AND Combines the old and new attributes with bitwise AND
 +
OR Combines the old and new attributes with bitwise OR
 +
XOR Combines the old and new attributes with bitwise XOR
 +
Parameters
  
Ecrit un enregistrement dans le fichier file_number à accès aléatoire à la position record_number. Paramètres
+
    array_name is a numeric array.
 +
    x0, y0 are numeric expressions.
  
  file_number est une expression numérique qui donne le nombre d'un fichier à accès aléatoire ouvert.  Le # est facultative et n'a aucun effet.
+
Errors
    record_number est une expression numérique dans [1-33554432] (2 ^ 25) et est interprété comme le numéro d'enregistrement.
+
  
Remarques
+
    The array does not exist: Illegal function call.
 +
    array_name refers to a string array: Type mismatch.
 +
    x0, y0 are string expressions: Type mismatch.
 +
    x0, y0 are not in [-32768—32767]: Overflow.
 +
    x0, y0 is outside the current VIEW or WINDOW: Illegal function call
  
  Le numéro d'enregistrement est stocké sous forme de simple précision;  cette précision est pas assez élevé pour distinguer des enregistrements uniques à proximité de la valeur maximale de 2 ^ 25.
+
RANDOMIZE
 +
RANDOMIZE [expr]
  
les erreurs
+
Seeds the random number generator with expr. If no seed is specified, RANDOMIZE will prompt the user to enter a random seed. The user-provided value is rounded to an integer. The random seed is formed of the last two bytes of that integer or expr. If expr is a float (4 or 8 bytes), these are XORed with the preceding 2. The first 4 bytes of a double are ignored. The same random seed will lead to the same sequence of pseudorandom numbers being generated by the RND function.
 +
Parameters
  
  record_number est pas dans [1-33554432]: Numéro d'enregistrement Bad.
+
     expr is a numeric expression.
     file_number est pas dans [0-255]: Illegal appel de fonction.
+
    file_number est pas le nombre d'un fichier ouvert: Numéro de fichier incorrect.
+
    file_number est ouvert sous un autre mode que RANDOM: Mode de fichier incorrect.
+
    file_number est pas spécifié: opérande manquant.
+
  
PUT (communications) PUT [#] com_file_number [, nombre_octets]
+
Notes
  
Ecrit nombre_octets octets dans la mémoire tampon de communication ouvert sous le numéro de fichier com_file_number. nombre_octets est une expression numérique entre 1 et la longueur du tampon de COM, inclus. Remarques
+
    For the same seed, PC-BASIC produces the same pseudorandom numbers as GW-BASIC 3.23.
 +
    The random number generator is very poor and should not be used for serious purposes. See RND for details.
  
  Dans GW-BASIC, Dispositif d'erreur d'E / S est élevé pour erreur de dépassement, le cadrage d'erreur, et de briser interruption.  Erreur appareil est déclenchée si DSR est perdue au cours d'E / S.  Une erreur de parité est déclenchée si la parité est activé et la parité incorrecte est rencontrée.  Ceci est indiqué dans le manuel;  il n'a pas été testé.
+
Errors
  
les erreurs
+
    expr has a string value: Illegal function call.
 +
    The user provides a seed outside [-32768—32767] at the prompt: Overflow.
  
  octets est inférieur à 1: Numéro d'enregistrement Bad.
+
READ
    octets est inférieur à 32768 et supérieure à la longueur de la mémoire tampon de COM: Illegal appel de fonction.
+
READ var_0 [, var_1] ...
    com_file_number est pas spécifié: opérande manquant.
+
    com_file_number est pas dans [0-255]: Illegal appel de fonction.
+
    com_file_number est pas le nombre d'un fichier ouvert: Numéro de fichier incorrect.
+
    Le tampon d'entrée série est complète, à savoir LOF (com_file_number) = 0 et LOC (com_file_number) = 255: débordement de mémoire tampon de communication.
+
  
PUT (graphiques) PUT (x0, y0), Nom_groupe [, {PSET | PRESET | ET | OU | XOR}]
+
Assigns data from a DATA statement to variables. Reading starts at the current DATA position, which is the DATA entry immediately after the last one read by previous READ statements. The DATA position is reset to the start by the RUN and RESTORE statements.
 +
Parameters
  
Affiche un tableau à une zone rectangulaire de l'écran graphique. Habituellement, PUT est utilisé avec des tableaux qui ont été stockés en utilisant GET. Voir GET pour le format du tableau.
+
    var_0, var_1 are variables or array elements.
  
Les mots-clés ont l'effet suivant: PSET Ecraser l'emplacement de l'écran avec la nouvelle image PRESET Ecraser l'emplacement de l'écran avec l'image inverse et combine les anciens et les nouveaux attributs avec bitwise ET OU Combine les anciens et les nouveaux attributs avec un OU binaire XOR Combine l'ancien et nouveaux attributs avec des paramètres au niveau du bit XOR
+
Errors
  
  array_name est un tableau numérique.
+
    Not enough data is present in DATA statements: Out of DATA.
     x0, y0 sont des expressions numériques.
+
     The type of the variable is not compatible with that of the data entry being read: a Syntax error occurs on the DATA line.
  
les erreurs
+
REM
 +
{REM|'} [anything]
  
  Le tableau n'existe pas: Illegal appel de fonction.
+
Ignores everything until the end of the line. The REM statement is intended for comments. Everything after REM will be stored in the program unaltered and uninterpreted. ' (apostrophe) is an alias for :REM'; it can be placed at any point in the program line and will ensure that the rest of the line is ignored.
    array_name fait référence à un tableau de chaînes: Incompatibilité de type.
+
    x0, y0 sont les expressions de chaîne: Type mismatch.
+
    x0, y0 ne sont pas dans [-32768 à 32767]: Overflow.
+
    x0, y0 est en dehors de la vue actuelle ou WINDOW: Illegal appel de fonction
+
  
HASARD HASARD [expr]
+
Note that a colon : does not terminate the REM statement; the colon and everything after it will be treated as part of the comment.
 +
RENUM
 +
RENUM [new|.] [, [old|.] [, increment]]
  
Semences du générateur de nombres aléatoires avec expr. Si aucune graine est spécifié, RANDOMIZE demandera à l'utilisateur d'entrer une graine aléatoire. La valeur fournie par l'utilisateur est arrondi à un nombre entier. La graine aléatoire est formé des deux derniers octets de cet entier ou expr. Si expr est un flotteur (4 ou 8 octets), ceux-ci sont XORés avec le 2. précédent Les 4 premiers octets d'une double sont ignorées. La même graine aléatoire va conduire à la même séquence de nombres pseudo-aléatoires étant généré par la fonction RND. Paramètres
+
Replaces the line numbers in the program by a systematic enumeration starting from new and increasing by increment. If old is specified, line numbers less than old remain unchanged. new, old are line numbers; the dot . signifies the last line edited. increment is a line number but must not be a dot or zero.
 +
Notes
  
  expr est une expression numérique.
+
    The following keywords can reference line numbers, which will be renumbered by RENUM: AUTO, EDIT, ELSE, ERL, DELETE, GOSUB, GOTO, LIST, LLIST, RENUM, RESTORE, RESUME, RETURN, RUN, THEN.
 +
    One keyword contains line numbers in a different program, which will not be renumbered: CHAIN. However, a line number in a RUN statement that opens a new file will be renumbered, and incorrectly so. Furthermore, any RENUM or AUTO statements in a program will have all their arguments 'renumbered', including any line number offsets or increments. However silly, this agrees with GW-BASIC's behaviour.
 +
    A zero line number following the keywords ERROR GOTO will not be renumbered.
 +
    If a referenced line number does not exist in the program, the statement prints a message (not an error) Undefined line ref in old_line where old_line is the line number prior to renumbering. The referenced line number will be left unchanged, but the line's old line number will be renumbered.
  
Remarques
+
Errors
  
  Pour la même semence, PC-BASIC produit les mêmes nombres pseudo-aléatoires que GW-BASIC 3.23.
+
    Any of the parameters is not in [0—65529]: Syntax error.
     Le générateur de nombres aléatoires est très pauvre et ne doit pas être utilisé à des fins graves. Voir ROND pour plus de détails.
+
    Any of the newly generated line numbers is greater than 65529: Illegal function call. The line numbers up to the error have not been changed.
 +
     increment is empty or zero: Illegal function call.
 +
    old is specified and new is less than or equal to an existing line number less than old: Illegal function call.
  
les erreurs
+
RESET
 +
RESET
  
  expr a une valeur de chaîne: Illegal appel de fonction.
+
Closes all open files.
    L'utilisateur fournit une graine à l'extérieur [-32.768 à 32.767] à l'invite: Overflow.
+
Notes
  
LIRE LIRE var_0 [, var_1] ...
+
    Official GW-BASIC documentation and many other sources state that RESET closes all files on disk devices. However, in reality GW-BASIC 3.23 also closes files on tape and any other device, making this statement identical to CLOSE with no arguments. PC-BASIC follows this behaviour.
  
Affecte les données d'une instruction de données variables. La lecture commence à la position de données en cours, qui est l'entrée immédiatement après la dernière lecture par les déclarations READ précédents DATA. La position DATA est réinitialisé au début par le RUN et RESTORE déclarations. Paramètres
+
RESTORE
 +
RESTORE [line]
  
  var_0, var_1 sont variables ou éléments du tableau.
+
Resets the DATA pointer. line is a line number. If line is not specified, the DATA pointer is reset to the first DATA entry in the program. If it is specified, the DATA pointer is reset to the first DATA entry in or after line.
 +
Errors
  
les erreurs
+
    line is not an existing line number: Undefined line number.
  
  Pas assez de données est présent dans les états DATA: Out of DATA.
+
RESUME
    Le type de la variable est pas compatible avec celle de l'entrée de données en cours de lecture: une erreur de syntaxe se produit sur la ligne DATA.
+
RESUME [0|NEXT|line]
  
REM {REM | '} [quelque chose]
+
Continues normal execution after an error handling routine. If 0 or no option is specified, re-executes the statement that caused the error. If NEXT is specified, executes the statement following the one that caused the error. If line is specified, it must be a valid line number.
 +
Errors
  
Ignore tout jusqu'à la fin de la ligne. L'instruction REM est destiné aux commentaires. Tout ce qui suit REM sera stocké dans le programme inchangé et non interprété. '(Apostrophe) est un alias pour: REM'; il peut être placé à tout moment dans la ligne de programme et veillera à ce que le reste de la ligne est ignoré.
+
    RESUME is encountered outside of an error trapping routine: RESUME without error.
 +
    The program ends inside an error trapping routine without a RESUME or END statement: No RESUME.
 +
    line is not an existing line number: Undefined line number.
  
Notez que deux points: ne termine pas l'instruction REM; le côlon et tout après seront considérés comme faisant partie du commentaire. RENUM RENUM [nouvelle |.] [[Old |.] [, Incrément]]
+
RETURN
 +
RETURN [line]
  
Remplace les numéros de ligne dans le programme par une énumération systématique à partir de nouvelles et de plus en plus par incrément. Si vieux est spécifié, le nombre de moins de ligne restent inchangés. nouveau, vieux sont les numéros de ligne; le point . signifie la dernière ligne modifiée. incrément est un numéro de ligne, mais ne doit pas être un point ou zéro. Remarques
+
Returns from a GOSUB subroutine. If line is not specified, RETURN jumps back to the statement after the GOSUB that jumped into the subroutine. If line is specified, it must be a valid line number. RETURN jumps to that line (and pops the GOSUB stack). When returning from an error trapping routine, RETURN re-enables the event trapping which was stopped on entering the trap routine.
 +
Errors
  
  Les mots-clés suivants peuvent référencer les numéros de ligne, qui sera renuméroté par RENUM: AUTO, EDIT, AUTRE, ERL, DELETE, GOSUB, GOTO, LIST, LLIST, RENUM, RESTORE, REPRENDRE, RETURN, RUN, ALORS.
+
     line is not an existing line number: Undefined line number.
     Un mot-clé contient les numéros de ligne dans un autre programme, qui ne sera pas renuméroté: CHAINE.  Toutefois, un numéro de ligne dans une instruction RUN qui ouvre un nouveau fichier sera renuméroté, et de manière incorrecte.  En outre, les déclarations de RENUM ou AUTO dans un programme auront tous leurs arguments 'renumérotés', y compris les décalages de numéro de ligne ou incréments.  Cependant idiot, cela concorde avec le comportement de GW-BASIC.
+
    Un numéro de ligne zéro suite à la GOTO mots-clés d'erreur ne sera pas renumérotés.
+
    Si un numéro de ligne référencé n'existe pas dans le programme, la déclaration affiche un message (pas d'erreur) Undefined ligne ref dans old_line où old_line est le numéro de la ligne avant renumérotation.  Le numéro de ligne référencé sera laissé inchangé, mais le vieux numéro de ligne de la ligne sera renuméroté.
+
  
les erreurs
+
RMDIR
 +
RMDIR dir_spec
  
  Tous les paramètres ne figure pas dans [0-65529]: Erreur de syntaxe.
+
Removes an empty directory on a disk device.
    Tous les numéros de ligne nouvellement générées est supérieure à 65529: Illegal appel de fonction.  Les numéros de ligne jusqu'à l'erreur n'a pas été modifié.
+
Parameters
    incrément est vide ou nul: Illegal appel de fonction.
+
    ancienne est spécifiée et nouvelle est inférieure ou égale à un nombre de ligne existante de moins de: Illegal appel de fonction.
+
  
RAZ RAZ
+
    The string expression dir_spec is a valid file specification that specifies the path and name of the directory.
  
Ferme tous les fichiers ouverts. Remarques
+
Errors
  
  Officiel documentation GW-BASIC et de nombreuses autres sources indiquent que RAZ ferme tous les fichiers sur les unités de disque. Cependant, en réalité GW-BASIC 3,23 ferme également les fichiers sur bande et tout autre appareil, ce qui rend cette déclaration identique à FERMEZ sans arguments. PC-BASIC suit ce comportement.
+
    dir_spec has a numeric value: Type mismatch.
 +
    dir_spec is an empty string: Bad file name .
 +
    No matching path is found: Path not found .
  
RESTORE RESTORE [en ligne]
+
RSET
 +
RSET string_name = expression
  
Remet le pointeur DATA. ligne est un numéro de ligne. Si la ligne est pas spécifié, le pointeur de données est remise à la première entrée de données dans le programme. Si elle est spécifiée, le pointeur de données est remise à la première entrée de données dans ou après la ligne. les erreurs
+
Copies a string value into an existing string variable or array element. The value will be right-justified and any remaining characters are replaced by spaces.
 +
Parameters
  
  la ligne est pas un numéro de ligne existante: numéro de ligne défini.
+
    string_name is a string variable or array element.
 +
    expression is a string expression.
  
REPRENDRE REPRENDRE [0 | SUIVANT | ligne]
+
Notes
  
Poursuit l'exécution normale après une routine de traitement des erreurs. Si 0 ou aucune option est spécifiée, re-exécute l'instruction qui a provoqué l'erreur. Si NEXT est spécifié, exécute l'instruction qui suit celle qui a causé l'erreur. Si la ligne est spécifié, il doit être un numéro de ligne valide. les erreurs
+
    If expression has a value that is longer than the length of the target variable, it is truncated at the tail to the length of the target variable.
 +
    If string_name has not been allocated before, this statement has no effect.
 +
    Use LSET, RSET or MID$ to copy values into a FIELD buffer.
 +
    If LET is used on a FIELD variable instead of L|RSET, the variable is detached from the field and a new, normal string variable is allocated.
  
  REPRENDRE est rencontré en dehors d'une erreur de piégeage de routine: REPRENDRE sans erreur.
+
Errors
    Le programme se termine à l'intérieur d'un piégeage de routine d'erreur sans instruction REPRENDRE ou END: Non REPRENDRE.
+
    la ligne est pas un numéro de ligne existante: numéro de ligne défini.
+
  
RETURN RETURN [en ligne]
+
    string_name is not a string variable: Type mismatch.
 +
    expression does not have a string value: Type mismatch.
  
Retours à partir d'un sous-programme GOSUB. Si la ligne est pas spécifié, RETURN revient à la déclaration après la GOSUB qui a sauté dans le sous-programme. Si la ligne est spécifié, il doit être un numéro de ligne valide. RETURN saute à cette ligne (et saute la pile GOSUB). Lors du retour à partir d'une routine de piégeage d'erreur, RETURN re-permet le piégeage de l'événement qui a été arrêté en entrant dans la routine d'interruption. les erreurs
+
RUN
 +
RUN [line_number [anything]|file_spec [, R]]
  
  la ligne est pas un numéro de ligne existante: numéro de ligne défini.
+
Executes a program. Existing variables will be cleared and any program in memory will be erased. RUN implies a CLEAR If ,R is specified after file_spec, files are kept open; if not, all files are closed.
 +
Parameters
  
RMDIR RMDIR dir_spec
+
    line_number is a valid line number in the current program. If specified, execution starts from this line number. The rest of the RUN statement is ignored in this case.
 +
    The string expression file_spec, if specified, is a valid file specification indicating the file to read the program from.
  
Supprime un répertoire vide sur un périphérique de disque. Paramètres
+
Errors
  
  Le dir_spec d'expression de chaîne est une spécification de fichier valide qui spécifie le chemin et le nom du répertoire.
+
    line_number is not a line number in the current program: Undefined line number.
 +
    file_spec cannot be found: File not found.
 +
    file_spec is an empty string: Bad file number.
 +
    A loaded text file contains lines without line numbers: Direct statement in file.
  
les erreurs
+
SAVE
 +
SAVE file_spec [, {A|P}]
  
  dir_spec a une valeur numérique: incompatibilité de type.
+
Stores the current program in a file.
    dir_spec est une chaîne vide: nom de fichier incorrect.
+
    Aucun chemin correspondant est trouvé: Chemin d'accès introuvable.
+
  
RSET RSET string_name = expression
+
    If ,A is specified, the program will be saved in plain text format.
 +
    If ,P is specified, the program will be saved in protected format. When a protected program is loaded in GW-BASIC, it cannot be LISTed or SAVEd in non-protected format.
 +
    If neither is specified, the program will be saved in tokenised format.
  
Copie une valeur de chaîne dans une chaîne élément variable ou tableau existant. La valeur sera justifié à droite et tous les caractères restants sont remplacés par des espaces. Paramètres
+
Parameters
  
  string_name est un élément variable ou tableau chaîne.
+
     The string expression file_spec is a valid file specification indicating the file to store to.
     expression est une expression de chaîne.
+
  
Remarques
+
Errors
  
  Si l'expression a une valeur qui est supérieure à la longueur de la variable cible, elle est tronquée à la queue de la longueur de la variable cible.
+
    file_spec has a number value: Type mismatch.
     Si string_name n'a pas été alloué avant, cette déclaration n'a aucun effet.
+
     file_spec is an empty string: Bad file number.
     Utilisez LSET, RSET ou MID $ pour copier les valeurs dans un tampon de FIELD.
+
     file_spec contains disallowed characters: Bad file number (on CAS1:); Bad file name (on disk devices).
     Si LET est utilisé sur une variable au lieu de L FIELD | RSET, la variable est détaché du terrain et une nouvelle variable de chaîne normale est attribuée.
+
     strict-protect is enabled, the current program is protected and ,P is not specified: Illegal function call.
  
les erreurs
+
SCREEN (statement)
 +
SCREEN [mode] [, [colorburst] [, [apage] [, [vpage] [, erase]]]]
  
  string_name est pas une variable chaîne: Incompatibilité de type.
+
Change the video mode, composite colorburst, active page and visible page. Video modes are described in the Video Modes section.
    expression n'a pas de valeur de chaîne: Type mismatch.
+
Parameters
  
RUN RUN [line_number [rien] | file_spec [R]]
+
    mode is a numeric expression that sets the screen mode.
 +
    colorburst is a numeric expression. See notes below.
 +
    apage is a numeric expression that sets the active page.
 +
    vpage is a numeric expression that sets the visible page.
 +
    erase is a numeric expression in the range [0, 1, 2]. It is only legal with syntax={pcjr, tandy}. See notes below.
  
Exécute un programme. les variables existantes seront effacées et tout programme en mémoire seront effacées. RUN implique une EFFACER Si, R est spécifié après file_spec, les dossiers sont conservés ouverts; sinon, tous les fichiers sont fermés. Paramètres
+
Video modes
  
  line_number est un numéro de ligne valide dans le programme actuel.  Si spécifié, l'exécution commence à partir de ce numéro de ligne.  Le reste de l'instruction RUN est ignorée dans ce cas.
+
The video modes are as follows:
    Le file_spec d'expression de chaîne, si spécifié, est une spécification de fichier valide indiquant le fichier à lire le programme à partir.
+
  
les erreurs
+
SCREEN 0 Text mode
 
+
     80x25 or 40x25 characters of 8x16 pixels
  line_number est pas un numéro de ligne dans le programme actuel: numéro de ligne défini.
+
     16 attributes picked from 64 colours
    file_spec ne peut pas être trouvé: Fichier non trouvé.
+
     Attributes 16-31 are blinking versions of 0-15
    file_spec est une chaîne vide: Numéro de fichier incorrect.
+
    Un fichier texte chargé contient des lignes sans numéros de ligne: déclaration directe dans le fichier.
+
 
+
SAUVER SAUVER file_spec [, {A | P}]
+
 
+
Enregistre le programme en cours dans un fichier.
+
 
+
  Si, A est spécifié, le programme sera enregistré au format texte brut.
+
    Si, P est spécifié, le programme sera enregistré au format protégé.  Quand un programme protégé est chargé dans GW-BASIC, il ne peut pas être inscrits ou enregistrés au format non protégé.
+
    Si ni est spécifié, le programme sera enregistré au format tokenised.
+
 
+
Paramètres
+
 
+
  Le file_spec d'expression de chaîne est une spécification de fichier valide indiquant le fichier à stocker à.
+
 
+
les erreurs
+
 
+
  file_spec a une valeur numérique: incompatibilité de type.
+
    file_spec est une chaîne vide: Numéro de fichier incorrect.
+
    file_spec contient des caractères non autorisés: Numéro de fichier incorrect (sur CAS1 :);  Nom de fichier incorrect (sur les unités de disque).
+
    strict protection est activé, le programme actuel est protégé et, P est pas spécifié: Illegal appel de fonction.
+
 
+
ECRAN (déclaration) ÉCRAN [Mode] [, [colorburst] [, [apage] [, [vpage] [, effacer]]]]
+
 
+
Changer le mode vidéo, colorburst composite, page active et page visible. Les modes vidéo sont décrits dans la section Modes vidéo. Paramètres
+
 
+
  mode est une expression numérique qui définit le mode d'écran.
+
     colorburst est une expression numérique.  Voir les notes ci-dessous.
+
    apage est une expression numérique qui définit la page active.
+
    vpage est une expression numérique qui définit la page visible.
+
    effacer est une expression numérique dans l'intervalle [0, 1, 2].  Il est seulement légal avec la syntaxe = {PCjr, tandy}.  Voir les notes ci-dessous.
+
 
+
Modes vidéo
+
 
+
Les modes vidéo sont les suivantes:
+
 
+
ECRAN mode 0 texte
+
 
+
  80x25 ou 40x25 caractères de 8x16 pixels
+
     16 attributs cueillis dans 64 couleurs
+
     Attributs 16-31 sont des versions clignotantes de 0-15
+
 
     4 pages ega  
 
     4 pages ega  
 
+
SCREEN 1 CGA colour
ECRAN 1 couleur CGA
+
    320x200 pixels
 
+
     40x25 characters of 8x8 pixels
  320x200 pixels
+
     4 attributes picked from 16 colours; 2 bits per pixel
     caractères 40x25 de 8x8 pixels
+
     1 page ega 2 pages pcjr tandy
     4 attributs cueillis dans 16 couleurs; 2 bits par pixel,
+
SCREEN 2 CGA monochrome
     1 page EGA 2 pages PCjr tandy
+
    640x200 pixels
 
+
     80x25 characters of 8x8 pixels
ECRAN 2 CGA monochrome
+
     2 attributes picked from 16 colours; 1 bit per pixel
 
+
     1 page ega 2 pages pcjr tandy
  640x200 pixels
+
SCREEN 3 Low-res 16-colour pcjr tandy
     caractères 80x25 de 8x8 pixels
+
    160x200 pixels
     2 attributs cueillis dans 16 couleurs; 1 bit par pixel
+
     20x25 characters of 8x8 pixels
     1 page EGA 2 pages PCjr tandy
+
     16 attributes picked from 16 colours; 4 bits per pixel
 
+
ECRAN 3 Basse résolution 16 couleurs PCjr tandy
+
 
+
  160x200 pixels
+
     caractères 20x25 de 8x8 pixels
+
     16 attributs cueillis dans 16 couleurs; 4 bits par pixel,
+
 
     2 pages
 
     2 pages
 
+
SCREEN 3 Hercules monochrome hercules
ÉCRAN 3 Hercules hercules monochromes
+
    720x348 pixels
 
+
     80x25 characters of 9x14 pixels (with bottom line truncated by 2 px)
  720x348 pixels
+
     2 attributes; 1 bit per pixel
     caractères 80x25 de 9x14 pixels (avec ligne de fond tronqué par 2 px)
+
     2 attributs; 1 bit par pixel
+
 
     2 pages
 
     2 pages
 
+
SCREEN 3—255 Altissima risoluzione olivetti
ECRAN 3-255 Altissima Risoluzione olivetti
+
    640x400 pixels
 
+
     80x25 characters of 8x16 pixels
  640x400 pixels
+
     2 attributes of which one picked from 16 colours; 2 bits per pixel
     caractères 80x25 de 8x16 pixels
+
     2 attributs dont une cueillies dans 16 couleurs; 2 bits par pixel,
+
 
     1 page
 
     1 page
 
+
SCREEN 4 Med-res 4-colour pcjr tandy
ECRAN 4 Med-res 4 couleurs PCjr tandy
+
    320x200 pixels
 
+
     40x25 characters of 8x8 pixels
  320x200 pixels
+
     4 attributes picked from 16 colours; 2 bits per pixel
     caractères 40x25 de 8x8 pixels
+
     4 attributs cueillis dans 16 couleurs; 2 bits par pixel,
+
 
     2 pages
 
     2 pages
 
+
SCREEN 5 Med-res 16-colour pcjr tandy
ECRAN 5 Med-res 16 couleurs PCjr tandy
+
    320x200 pixels
 
+
     40x25 characters of 8x8 pixels
  320x200 pixels
+
     16 attributes picked from 16 colours; 4 bits per pixel
     caractères 40x25 de 8x8 pixels
+
     16 attributs cueillis dans 16 couleurs; 4 bits par pixel,
+
 
     1 page
 
     1 page
  
  Note: un minimum de 32768 octets de mémoire vidéo doit être réservé à utiliser ce mode vidéo. Utilisez l'instruction EFFACER ,,, 32768! ou l'option de mémoire vidéo = 32768.
+
    Note: a minimum of 32768 bytes of video memory must be reserved to use this video mode. Use the statement CLEAR ,,,32768! or the option video-memory=32768.
 
+
SCREEN 6 High-res 4-colour pcjr tandy
ECRAN 6 haut-rés 4 couleurs PCjr tandy
+
    640x200 pixels
 
+
     80x25 characters of 8x8 pixels
  640x200 pixels
+
     4 attributes picked from 16 colours; 2 bits per pixel
     caractères 80x25 de 8x8 pixels
+
     4 attributs cueillis dans 16 couleurs; 2 bits par pixel,
+
 
     1 page
 
     1 page
  
  Note: un minimum de 32768 octets de mémoire vidéo doit être réservé à utiliser ce mode vidéo. Utilisez l'instruction EFFACER ,,, 32768! ou l'option de mémoire vidéo = 32768.
+
    Note: a minimum of 32768 bytes of video memory must be reserved to use this video mode. Use the statement CLEAR ,,,32768! or the option video-memory=32768.
 
+
SCREEN 7 EGA colour ega
ECRAN 7 EGA couleur ega
+
    320x200 pixels
 
+
     40x25 characters of 8x8 pixels
  320x200 pixels
+
     16 attributes picked from 16 colours; 4 bits per pixel
     caractères 40x25 de 8x8 pixels
+
     16 attributs cueillis dans 16 couleurs; 4 bits par pixel,
+
 
     8 pages
 
     8 pages
 
+
SCREEN 8 EGA colour ega
ECRAN 8 EGA couleur ega
+
    640x200 pixels
 
+
     80x25 characters of 8x8 pixels
  640x200 pixels
+
     16 attributes picked from 16 colours; 4 bits per pixel
     caractères 80x25 de 8x8 pixels
+
     16 attributs cueillis dans 16 couleurs; 4 bits par pixel,
+
 
     4 pages
 
     4 pages
 
+
SCREEN 9 EGA colour ega
ECRAN 9 EGA couleur ega
+
    640x350 pixels
 
+
     80x25 characters of 8x14 pixels
  640x350 pixels
+
     16 attributes picked from 64 colours; 4 bits per pixel
     caractères 80x25 de 8x14 pixels
+
     16 attributs cueillis dans 64 couleurs; 4 bits par pixel,
+
 
     2 pages
 
     2 pages
 
+
SCREEN 10 EGA monochrome ega monitor=mono
ECRAN 10 EGA moniteur monochrome EGA = mono
+
    640x350 pixels
 
+
     80x25 characters of 8x14 pixels
  640x350 pixels
+
     4 attributes picked from 9 pseudocolours; 2 bits per pixel
     caractères 80x25 de 8x14 pixels
+
     4 attributs cueillies à partir de 9 pseudocolours; 2 bits par pixel,
+
 
     2 pages
 
     2 pages
  
 
NTSC Composite Colorburst
 
NTSC Composite Colorburst
  
Le CGA, Tandy et PCjr, colorburst a les effets suivants, en fonction du type de moniteur - RGB (par défaut) ou composite: Mode colorburst CGA en mode Effet (composite) Effet (RVB) 0 0 0, 2 greyscale palette par défaut 0 1 1 , 3 palette de couleurs par défaut 1 0 4 palette couleur par défaut 1 1 5 greyscale palette suppléant
+
On CGA, Tandy and PCjr, colorburst has the following effects, depending on the type of monitor - RGB (default) or composite:
 +
mode colorburst CGA mode Effect (composite) Effect (RGB)
 +
0 0 0, 2 greyscale default palette
 +
0 1 1, 3 colour default palette
 +
1 0 4 colour default palette
 +
1 1 5 greyscale alternate palette
  
Sur l'écran 2, colorburst n'a aucun effet; sur un moniteur composite, des artefacts de couleur peuvent être activés sur cet écran par OUT (voir là). Sur l'écran 3 et plus, colorburst n'a aucun effet. Effacer
+
On SCREEN 2, colorburst has no effect; on a composite monitor, colour artifacts can be enabled on this screen through OUT (see there). On SCREEN 3 and up, colorburst has no effect.
 +
Erase
  
Par défaut, si les changements de mode ou les changements Colorburst entre zéro et non nul, l'ancienne page et la nouvelle page de l'écran sont effacés. Sur la syntaxe = {PCjr, tandy}, le paramètre d'effacement peut être utilisé pour modifier ce comportement. Ses valeurs sont les suivantes: effacer Effet 0 Ne pas effacer tout écran page 1 (par défaut) Si les changements de mode ou les changements Colorburst entre zéro et non nul, l'ancienne page et la nouvelle page de l'écran sont effacés. 2 Si les changements de mode ou les changements Colorburst entre zéro et non-zéro, toutes les pages de l'écran sont effacées. Remarques
+
By default, if the mode changes or the colorburst changes between zero and non-zero, the old page and the new page of the screen are cleared. On syntax={pcjr, tandy}, the erase parameter can be used to change this behaviour. Its values are as follows:
 +
erase Effect
 +
0 Do not erase any screen page
 +
1 (default) If the mode changes or the colorburst changes between zero and non-zero, the old page and the new page of the screen are cleared.
 +
2 If the mode changes or the colorburst changes between zero and non-zero, all pages of the screen are cleared.
 +
Notes
  
  Au moins un paramètre doit être spécifié.
+
    At least one parameter must be specified.
     artefacts de couleur composites sont émulées seulement grossièrement dans PC-BASIC, et pas du tout dans l'écran 1.  
+
     Composite colour artifacts are emulated only crudely in PC-BASIC, and not at all in SCREEN 1.  
  
les erreurs
+
Errors
  
  Aucun paramètres sont spécifiés: opérande manquant.
+
    No parameters are specified: Missing operand.
     Tout paramètre a une valeur de chaîne: Type mismatch.
+
     Any parameter has a string value: Type mismatch.
     Tout paramètre est pas dans [-32768 à 32767]: Overflow.
+
     Any parameter is not in [-32768—32767]: Overflow.
     mode est pas un numéro de mode vidéo disponible pour le réglage de la carte vidéo: Illegal appel de fonction.
+
     mode is not an available video mode number for your video card setting: Illegal function call.
     vpage, apage ne sont pas entre 0 et le nombre de pages pour le mode vidéo choisi, moins un: Illegal appel de fonction.
+
     vpage, apage are not between 0 and the number of pages for the chosen video mode, less one: Illegal function call.
     colorburst est pas dans [0-255]: Illegal appel de fonction.
+
     colorburst is not in [0—255]: Illegal function call.
     effacer est pas dans [0, 1, 2]: Illegal appel de fonction.
+
     erase is not in [0, 1, 2]: Illegal function call.
  
SHELL SHELL [commande]
+
SHELL
 +
SHELL [command]
  
Démarre une sous-couche sur la console. Le type d'enveloppe est déterminée par votre système d'exploitation. Sur les systèmes Unix, un shell sh est démarré. Sur les systèmes Windows, un shell cmd.exe est démarré. Si la commande est spécifié, la commande est exécutée sur la coque et d'exécution revient au programme. Paramètres
+
Starts a subshell on the console. The type of shell is determined by your OS. On Unix systems, an sh shell is started. On Windows systems, a CMD.EXE shell is started. If command is specified, the command is executed on the shell and execution returns to the program.
 +
Parameters
  
  commande est une expression de chaîne.
+
    command is a string expression.
  
Remarques
+
Notes
  
  Si le shell = l'option native est pas spécifié, cette déclaration ne fait rien.
+
    If the shell=native option is not specified, this statement does nothing.
     Soyez prudent lors de l'activation de cette commande, car il permet au programme BASIC accès complet à vos fichiers et système d'exploitation en cours d'exécution.
+
     Be careful when enabling this command, as it allows the running BASIC program full access to your files and operating system.
  
les erreurs
+
Errors
  
  commande a une valeur numérique: incompatibilité de type.
+
    command has a number value: Type mismatch.
     Toutes les sorties de la sous-couche du système d'exploitation, y compris les messages d'erreur, est affiché sur l'écran du PC-BASIC.
+
     All output from the operating system subshell, including error messages, is displayed on the PC-BASIC screen.
  
SOUND (tonalité) de fréquence SOUND, la durée [volume [voix]]
+
SOUND (tone)
 +
SOUND frequency, duration [, volume [, voice]]
  
Produit un son à la fréquence Hz pour la durée / 18.2 secondes. Sur PCjr et Tandy, le volume et le canal vocal peuvent en outre être spécifiés.
+
Produces a sound at frequency Hz for duration/18.2 seconds. On PCjr and Tandy, the volume and voice channel can additionally be specified.
  
Si PLAY "Mo" a été exécuté, SOUND joue en arrière-plan. Si PLAY "MF" a été exécuté, son joue au premier plan et les blocs d'interprètes jusqu'à ce que le son est terminé. le mode de premier plan est par défaut. Contrairement PLAY, le son joué par la plus récente déclaration de SOUND joue toujours en arrière-plan, même si PLAY "MF" a été saisi. En mode d'arrière-plan, chaque instruction SOUND compte comme 1 vers la longueur de la file d'attente déclarés par la fonction PLAY. Paramètres
+
If PLAY "MB" has been executed, SOUND plays in the background. If PLAY "MF" has been executed, sound plays in the foreground and the interpreter blocks until the sound is finished. Foreground mode is default. Unlike PLAY, the sound played by the most recent SOUND statement always plays in the background, even if PLAY "MF" has been entered. In background mode, each SOUND statement counts as 1 toward the length of the queue reported by the PLAY function.
 +
Parameters
  
  la fréquence est une expression numérique dans [37-32767] ou 0 (pour la syntaxe = {avancée | PCjr}) ou [-32768 à 32767] (pour la syntaxe = tandy).
+
    frequency is a numeric expression in [37—32767] or 0 (for syntax={advanced | pcjr}) or in [-32768—32767] (for syntax=tandy).
     la durée est une expression numérique dans [0-65535].
+
     duration is a numeric expression in [0—65535].
     volume est une expression numérique dans [0, 15]. 0 est silencieux, 15 est plein volume; chaque pas moins réduit le volume de 2 dB. (Pour la syntaxe = {PCjr | tandy})
+
     volume is a numeric expression in [0, 15]. 0 is silent, 15 is full volume; every step less reduces the volume by 2 dB. (For syntax={pcjr | tandy})
     la voix est une expression numérique dans [0, 2], ce qui indique que des canaux vocaux trois tons est utilisé pour ce son. (Pour la syntaxe = {PCjr | tandy})
+
     voice is a numeric expression in [0, 2], indicating which of the three tone voice channels is used for this sound. (For syntax={pcjr | tandy})
  
Remarques
+
Notes
  
  Sur PCjr et Tandy, fréquences inférieures à 110 Hz sont joués en 110 Hz.
+
    On PCjr and Tandy, Frequencies below 110 Hz are played as 110 Hz.
     Si la durée est égale à zéro, aucun bruit de fond actif est arrêté et que la file d'attente est vidée de son.
+
     If duration is zero, any active background sound is stopped and the sound queue is emptied.
     Si la durée est égale à zéro, le volume et la voix ne doivent pas être spécifiés.
+
     If duration is zero, volume and voice must not be specified.
     Si la durée est inférieure à .022, mais non nulle, le son sera joué en arrière-plan et continuer indéfiniment jusqu'à une autre déclaration sonore est exécutée. Ceci est également le comportement pour une durée négative.
+
     If duration is less than .022 but nonzero, the sound will be played in background and continue indefinitely until another sound statement is executed. This is also the behaviour for negative duration.
     Si la fréquence est égale à 32767 ou 0, un silence d'une durée de longueur est en file d'attente.
+
     If frequency equals 32767 or 0, a silence of length duration is queued.
  
les erreurs
+
Errors
  
  Tout argument a une valeur de chaîne: Type mismatch.
+
    Any argument has a string value: Type mismatch.
     fréquence est pas dans sa plage autorisée, et la durée est non nul: Illegal appel de fonction.
+
     frequency is not in its allowed range, and duration is not zero: Illegal function call.
     la durée est égale à zéro et plus de deux arguments sont spécifiés: Erreur de syntaxe.
+
     duration is zero and more than two arguments are specified: Syntax error.
     syntaxe = {PCjr | tandy} est pas définie et plus de deux arguments sont spécifiés: Erreur de syntaxe.
+
     syntax={ pcjr | tandy } is not set and more than two arguments are specified: Syntax error.
     fréquence est pas dans [-32.768 à 32.767]: Overflow.
+
     frequency is not in [-32768—32767]: Overflow.
     durée est pas dans [-65535 à 65535]: Illegal appel de fonction.
+
     duration is not in [-65535—65535]: Illegal function call.
     volume est pas dans [0-15]: Illegal appel de fonction.
+
     volume is not in [0—15]: Illegal function call.
     la voix est pas dans [0-2]: Illegal appel de fonction.
+
     voice is not in [0—2]: Illegal function call.
  
SOUND (switch) SOUND {ON | OFF}
+
SOUND (switch)
 +
SOUND {ON|OFF}
  
Alterne la disponibilité des capacités audio avancées sur PCjr et Tandy. Cela comprend son 3-voix, la génération de bruit et de contrôle du volume. Remarques
+
Toggles the availability of advanced sound capabilities on PCjr and Tandy. This includes 3-voice sound, noise generation and volume control.
 +
Notes
  
  Uniquement disponible avec la syntaxe = {PCjr | tandy}.
+
    Only available with syntax={pcjr | tandy}.
     Sur les ordinateurs PCjr et Tandy, SOUND ON tournerait sur le haut-parleur externe, ainsi que faire des capacités sonores avancées disponibles. Le PC-BASIC, à la fois interne et haut-parleur externe sont émulées par le même système de sonorisation.
+
     On PCjr and Tandy computers, SOUND ON would turn on the external speaker as well as make advanced sound capabilities available. On PC-BASIC, both the internal and the external speaker are emulated through the same sound system.
  
les erreurs
+
Errors
  
  Cette instruction est utilisée et la syntaxe = {PCjr | tandy} est pas défini: Erreur de syntaxe.
+
    This statement is used and syntax={ pcjr | tandy } is not set: Syntax error.
  
STOP STOP
+
STOP
 +
STOP
  
Breaks l'exécution du programme, imprime un message de rupture sur la console et renvoie le contrôle à l'utilisateur. Fichiers ne sont pas fermés. Il est possible de reprendre l'exécution du programme à l'instruction suivante en utilisant CONT. STRIG (switch) STRIG {ON | OFF}
+
Breaks program execution, prints a Break message on the console and returns control to the user. Files are not closed. It is possible to resume program execution at the next statement using CONT.
 +
STRIG (switch)
 +
STRIG {ON|OFF}
  
N'a aucun effet. STRIG (interrupteur d'événement) STRIG [] (bouton) {ON | OFF | STOP}
+
Has no effect.
 +
STRIG (event switch)
 +
STRIG[ ](button) {ON|OFF|STOP}
  
Commutateurs événement piégeage du bouton joystick déclencheur ON ou OFF. STRIG (bouton) ARRET suspend événement piégeage jusqu'à STRIG (bouton) ON est exécutée. Jusqu'à un événement peut être déclenché pendant la suspension, à condition que la gestion des événements a été activée avant la suspension. L'événement déclenché pendant la suspension est traitée immédiatement après la STRIG suivante (bouton) ON déclaration. bouton valeur de retour 0 1er joystick 1er déclenchement 2 2e joystick 1er déclenchement 4 1er joystick 2e déclenchement 6 2e joystick 2e déclenchement Paramètres
+
Switches event trapping of the joystick trigger button ON or OFF. STRIG (button) STOP suspends event trapping until STRIG (button) ON is executed. Up to one event can be triggered during suspension, provided that event handling was switched on prior to suspension. The event triggered during suspension is handled immediately after the next STRIG (button) ON statement.
 +
button return value
 +
0 1st joystick 1st trigger
 +
2 2nd joystick 1st trigger
 +
4 1st joystick 2nd trigger
 +
6 2nd joystick 2nd trigger
 +
Parameters
  
  bouton est une expression numérique dans [0, 2, 4, 6].
+
    button is a numeric expression in [0, 2, 4, 6].
  
les erreurs
+
Errors
  
  bouton a une valeur de chaîne: Type mismatch.
+
    button has a string value: Type mismatch.
     bouton est pas dans [-32768 à 32767]: Overflow.
+
     button is not in [-32768—32767]: Overflow.
     bouton est pas dans [0, 2, 4, 6]: Illegal appel de fonction.
+
     button is not in [0, 2, 4, 6]: Illegal function call.
  
SWAP SWAP var_0, var_1
+
SWAP
 +
SWAP var_0, var_1
  
Echanges de variables var_0 et Var_1. Remarques
+
Exchanges variables var_0 and var_1.
 +
Notes
  
  Les variables sont échangés par référence. Si, par exemple, var_0 est une variable FIELD et var_1 est pas, alors SWAP inverse les rôles.
+
    The variables are exchanged by reference. If, for example, var_0 is a FIELD variable and var_1 is not, then SWAP will reverse those roles.
  
Paramètres
+
Parameters
  
  var_0 et var_1 sont préalablement variables du même type définis.
+
    var_0 and var_1 are previously defined variables of the same type.
  
les erreurs
+
Errors
  
  var_0 ou var_1 est indéfini: Illegal appel de fonction.
+
    var_0 or var_1 is undefined: Illegal function call.
     Les types de var_0 et var_1 ne sont pas les mêmes: Incompatibilité de type.
+
     The types of var_0 and var_1 are not the same: Type mismatch.
  
SYSTÈME DE SYSTÈME
+
SYSTEM
 +
SYSTEM
  
Quitte l'interpréteur. Remarques
+
Exits the interpreter.
 +
Notes
  
  SYSTÈME quitte immédiatement l'interpréteur de PC-BASIC sans autre interaction. Tout programme ou des données non enregistrées seront perdues.
+
    SYSTEM quits the PC-BASIC interpreter immediately without further interaction. Any unsaved program or data will be lost.
  
TERME TERME
+
TERM
 +
TERM
  
Charger et exécuter le programme défini par l'option PCjr terme. Par défaut, comme sur l'IBM PCjr, ceci est une application d'émulation de terminal série intégré. Cette déclaration est disponible uniquement avec la syntaxe = {PCjr | tandy}. les erreurs
+
Load and run the program defined by the pcjr-term option. By default, as on the IBM PCjr, this is a built-in serial terminal emulator application. This statement is only available with syntax={pcjr|tandy}.
 +
Errors
  
  Si PCjr terme est pas définie, cette déclaration soulève une erreur interne.
+
    If pcjr-term is not set, this statement raises Internal error.
     Si la syntaxe est pas réglé sur PCjr ou tandy, ce mot-clé est pas présent. Calling TERME soulèvera une erreur de syntaxe.
+
     If syntax is not set to pcjr or tandy, this keyword is not present. Calling TERM will raise Syntax error.
  
TIME $ (déclaration) TIME $ = temps
+
TIME$ (statement)
 +
TIME$ = time
  
Définit l'heure actuelle BASIC en temps. Paramètres
+
Sets the current BASIC time to time.
 +
Parameters
  
  Le temps est une expression de chaîne de la forme "HH: mm: ss" 00 <= HH <24, 00 <= mm <60 et 00 <= ss <60.
+
    Time is a string expression of the form "HH:mm:ss" where 00<=HH<24, 00<=mm<60 and 00<=ss<60.
  
Remarques
+
Notes
  
  magasins PC-BASIC un décalage à l'heure du système et utilise cela pour les appels futurs à TIME $ et fonctions $ DATE dans la même session d'interprète. L'heure du système ne change pas, contrairement à GW-BASIC sous MS-DOS.
+
    PC-BASIC stores an offset to the system time and uses this for future calls to TIME$ and DATE$ functions in the same interpreter session. The system time is not changed, unlike GW-BASIC under MS-DOS.
  
les erreurs
+
Errors
  
  le temps a une valeur numérique: incompatibilité de type.
+
    time has a numeric value: Type mismatch.
     Il est non pas de la forme correcte: Illegal appel de fonction.
+
     time is not of the correct form: Illegal function call.
  
TIMER (déclaration) TIMER {ON | OFF | STOP}
+
TIMER (statement)
 +
TIMER {ON|OFF|STOP}
  
  ON: permet ON TIMER événement piégeage de l'horloge de la minuterie.
+
    ON: enables ON TIMER event trapping of the timer clock.
     OFF: désactive le piégeage.
+
     OFF: disables trapping.
     STOP: arrête le piégeage jusqu'à ce que TIMER ON est utilisé. Les événements qui se produisent pendant le piégeage est arrêté déclenchera immédiatement lorsque le piégeage est réactivé.
+
     STOP: halts trapping until TIMER ON is used. Events that occur while trapping is halted will trigger immediately when trapping is re-enabled.
  
TRON et TROFF {TRON | TROFF}
+
TRON and TROFF
 +
{TRON|TROFF}
  
Met le numéro de ligne de traçage ou hors tension. Si le numéro de ligne est tracé sur, BASIC imprime une étiquette [100] à la console lorsque la ligne de programme 100 est exécuté, et ainsi de suite. Remarques
+
Turns line number tracing on or off. If line number tracing is on, BASIC prints a tag [100] to the console when program line 100 is executed, and so forth.
 +
Notes
  
  Le traçage est désactivé par les états NEW et LOAD.
+
    Tracing is turned off by the NEW and LOAD statements.
  
UNLOCK UNLOCK [#] file_number [, record_0] UNLOCK [#] file_number, [record_0] À record_1
+
UNLOCK
 +
UNLOCK [#] file_number [, record_0]
 +
UNLOCK [#] file_number, [record_0] TO record_1
  
Débloque un fichier ou une partie de celui-ci qui a déjà été verrouillé avec LOCK. Paramètres
+
Unlocks a file or part of it that has previously been locked with LOCK.
 +
Parameters
  
  file_number est une expression numérique dans [0-255].
+
    file_number is a numeric expression in [0—255].
     record_0 et record_1 sont des expressions numériques dans [1-2 ^ 25-2].
+
     record_0 and record_1 are numeric expressions in [1—2^25-2].
  
les erreurs
+
Errors
  
  Tout paramètre a une valeur de chaîne: Type mismatch.
+
    Any parameter has a string value: Type mismatch.
     file_number est pas dans [-32.768 à 32.767]: Overflow.
+
     file_number is not in [-32768—32767]: Overflow.
     file_number est pas dans [0-255]: Illegal appel de fonction.
+
     file_number is not in [0—255]: Illegal function call.
     file_number est pas un fichier ouvert: Numéro de fichier incorrect.
+
     file_number is not an open file: Bad file number.
     Si file_number est ouvert pour RANDOM, verrouiller et déverrouiller les états doivent correspondre en termes de record_0 et record_1. Un UNLOCK non-appariement augmentera Permission denied.
+
     If file_number is open for RANDOM, LOCK and UNLOCK statements must match in terms of record_0 and record_1. An non-matching UNLOCK will raise Permission denied.
     record_0 ou record_1 est pas dans [1-2 ^ 25-2]: Numéro d'enregistrement Bad.
+
     record_0 or record_1 is not in [1—2^25-2]: Bad record number.
  
VIEW VIEW [[ECRAN] (x0, y0) - (x1, y1) [[remplir] [, frontière]]]
+
VIEW
 +
VIEW [[SCREEN] (x0, y0)-(x1, y1) [, [fill] [, border]]]
  
Définit une fenêtre graphique. Graphics établis en dehors de la fenêtre ne seront pas affichées. (X0, y0), (x1, y1) sont des coordonnées absolues de l'écran de deux coins opposés de la zone.
+
Defines a graphics viewport. Graphics drawn outside the viewport will not be shown. (x0, y0), (x1, y1) are absolute screen coordinates of two opposing corners of the area.
  
Sauf SCREEN est spécifié, après une instruction VIEW le système de coordonnées est déplacé de telle sorte que (0, 0) devient la partie supérieure gauche de la fenêtre de coordonnées. Si VIEW est appelé sans arguments, la fenêtre est remise à l'ensemble de l'écran. Paramètres
+
Unless SCREEN is specified, after a VIEW statement the coordinate system is shifted such that (0, 0) becomes the top left coordinate of the viewport. If VIEW is called without arguments, the viewport is reset to the whole screen.
 +
Parameters
  
  remplir est un attribut. Le viewport sera rempli avec cet attribut.
+
    fill is an attribute. The viewport will be filled with this attribute.
     la frontière est un attribut. Une frontière sera tiré juste à l'extérieur de la fenêtre avec cet attribut.
+
     border is an attribute. A border will be drawn just outside the viewport with this attribute.
  
les erreurs
+
Errors
  
  Tout des paramètres a une valeur de chaîne: Type mismatch.
+
    Any of the parameters has a string value: Type mismatch.
     Tout des coordonnées est pas dans [-32768 à 32767]: Overflow.
+
     Any of the coordinates is not in [-32768—32767]: Overflow.
     Chacune des paires de coordonnées est en dehors de l'écran physique: Illegal appel de fonction.
+
     Any of the coordinate pairs is outside the physical screen: Illegal function call.
  
VIEW PRINT VIEW PRINT top_row À bottom_row
+
VIEW PRINT
 +
VIEW PRINT top_row TO bottom_row
  
Définit la zone de défilement de texte de l'écran. LOCATE déclarations, le mouvement du curseur et le défilement seront limités à la zone de défilement. Paramètres
+
Defines the text scrolling area of the screen. LOCATE statements, cursor movement and scrolling will be limited to the scrolling area.
 +
Parameters
  
  top_row et bottom_row sont des expressions numériques dans [1-24].
+
    top_row and bottom_row are numeric expressions in [1—24].
  
Remarques
+
Notes
  
  Si la syntaxe = {PCjr | tandy} et KEY OFF est réglé, bottom_row peuvent être 25. Sinon, l'écran ligne 25 ne peut pas faire partie de la zone de défilement.
+
    If syntax={pcjr | tandy} and KEY OFF is set, bottom_row may be 25. Otherwise, screen row 25 cannot be part of the scrolling area.
  
les erreurs
+
Errors
  
  top_row ou bottom_row est pas dans [1-24]: Illegal appel de fonction.
+
    top_row or bottom_row is not in [1—24]: Illegal function call.
  
ATTENDRE port ATTENDRE, and_mask [, xor_mask]
+
WAIT
 +
WAIT port, and_mask [, xor_mask]
  
Attend la valeur de (INP (port) XOR xor_mask) ET and_mask à devenir non nulle. La gestion des événements est suspendue jusqu'à ce que les retours d'attente. Si xor_mask est pas spécifié, la valeur par défaut 0. Remarques
+
Waits for the value of (INP(port) XOR xor_mask) AND and_mask to become nonzero. Event handling is suspended until WAIT returns. If xor_mask is not specified, it defaults to 0.
 +
Notes
  
  Un nombre limité de ports de la machine sont émulés dans PC-BASIC. Voir INP.
+
    A limited number of machine ports are emulated in PC-BASIC. See INP.
  
les erreurs
+
Errors
  
  Tout paramètre a une valeur de chaîne: Type mismatch.
+
    Any parameter has a string value: Type mismatch.
     port est pas dans [-32768 à 65535]: Overflow.
+
     port is not in [-32768—65535]: Overflow.
     and_mask ou xor_mask ne sont pas dans [0-255]: incompatibilité de type.
+
     and_mask or xor_mask are not in [0—255]: Type mismatch.
  
WEND WEND
+
WEND
 +
WEND
  
Itère une boucle WHILE-WEND: saute à l'instruction correspondante WHILE, où son état peut être vérifié. Remarques
+
Iterates a WHILE—WEND loop: jumps to the matching WHILE statement, where its condition can be checked.
 +
Notes
  
  boucles WHILE-WEND peuvent être imbriquées. WEND saute à la dernière instruction WHILE qui n'a pas été fermée par un autre WEND.
+
    WHILE—WEND loops can be nested. WEND jumps to the most recent WHILE statement that has not been closed by another WEND.
  
les erreurs
+
Errors
  
  Tous les énoncés WHILE précédents ont été fermées par un autre WEND ou aucune déclaration while a été exécutée avant: WEND sans WHILE.
+
    All previous WHILE statements have been closed by another WEND or no WHILE statement has been executed before: WEND without WHILE.
  
PENDANT TOUT expr
+
WHILE
 +
WHILE expr
  
Lance une boucle WHILE-WEND. Si expr est évaluée à zéro, alors que passe à l'instruction immédiatement après la WEND correspondant. Sinon, l'exécution se poursuit. Paramètres
+
Initiates a WHILE—WEND loop. If expr evaluates to zero, WHILE jumps to the statement immediately after the matching WEND. If not, execution continues.
 +
Parameters
  
  expr est une expression numérique.
+
    expr is a numeric expression.
  
les erreurs
+
Errors
  
  Aucune correspondance WEND se trouve: WHILE sans WEND.
+
    No matching WEND is found: WHILE without WEND.
     expr a une valeur de chaîne: Type mismatch.
+
     expr has a string value: Type mismatch.
  
WIDTH (console) num_columns WIDTH [[num_rows] [,]]
+
WIDTH (console)
 +
WIDTH num_columns [, [num_rows] [,]]
  
Définit la largeur de l'écran 20, 40 ou 80 colonnes. Remarques
+
Sets the screen width to 20, 40 or 80 columns.
 +
Notes
  
  Lors du changement de largeur de l'écran en mode graphique, le mode vidéo est modifié. Les changements suivants se produisent:
+
    When changing screen width in graphics mode, the video mode is changed. The following changes occur:
     ECRAN 1 (40) ↔ ECRAN 2 (80)
+
     SCREEN 1 (40) ↔ SCREEN 2 (80)
     ÉCRAN 7 (40) ↔ ÉCRAN 8 (80)
+
     SCREEN 7 (40) ↔ SCREEN 8 (80)
     ÉCRAN 7 (40) ← ÉCRAN 9 (80)
+
     SCREEN 7 (40) ← SCREEN 9 (80)
     Écran valeur de largeur 20 est permise uniquement sur Tandy et PCjr. Le passage à cette largeur des modifications à l'écran 3. En outre, les changements suivants se produisent:
+
     Screen width value 20 is only allowed on Tandy and PCjr. Changing to this width changes to SCREEN 3. Additionally, the following changes occur:
     SCREEN 3 (20) → ECRAN 1 (40)
+
     SCREEN 3 (20) → SCREEN 1 (40)
     SCREEN 3 (20) → ECRAN 2 (80)
+
     SCREEN 3 (20) → SCREEN 2 (80)
     ECRAN 4 (40) → ECRAN 2 (80)
+
     SCREEN 4 (40) → SCREEN 2 (80)
     ECRAN 5 (40) ↔ ÉCRAN 6 (80)
+
     SCREEN 5 (40) ↔ SCREEN 6 (80)
  
Paramètres
+
Parameters
  
  num_columns est soit un littéral 20, 40 ou 80 ou une expression numérique entre parenthèses. La virgule arrière est facultative et n'a aucun effet.
+
    num_columns is either a literal 20, 40 or 80 or a numeric expression in parentheses. The trailing comma is optional and has no effect.
     num_rows est facultative et doit être égale à 25. Si la syntaxe = {PCjr | tandy} est réglé, num_rows peut être [0-25], mais sa valeur est ignorée.
+
     num_rows is optional and must equal 25. If syntax={pcjr | tandy} is set, num_rows may be in [0—25] but its value is ignored.
  
les erreurs
+
Errors
  
  num_columns est une chaîne d'expression: incompatibilité de type.
+
    num_columns is a string expression: Type mismatch.
     num_columns est pas dans [-32.768 à 32.767]: Overflow.
+
     num_columns is not in [-32768—32767]: Overflow.
     num_columns est pas dans [0-255]: Illegal appel de fonction.
+
     num_columns is not in [0—255]: Illegal function call.
     num_columns est pas un littéral et non entre crochets: appel de fonction illégale.
+
     num_columns is not a literal and not bracketed: Illegal function call.
     num_rows est pas dans sa gamme acceptée: Illegal appel de fonction.
+
     num_rows is not in its accepted range: Illegal function call.
  
WIDTH (périphériques et fichiers) WIDTH {#file_num, | nom_appareil, | LPRINT} num_columns
+
WIDTH (devices and files)
 +
WIDTH {#file_num,|device_name,|LPRINT} num_columns
  
Définit la largeur de la ligne pour un fichier ou un périphérique. Lorsqu'une opération d'écriture passe au-delà de la largeur de colonne, une séquence CR LF est insérée.
+
Sets the line width for a file or a device. When a write operation passes beyond the column width, a CR LF sequence is inserted.
  
Si un périphérique est spécifié, il n'a pas besoin d'avoir un fichier ouvert à elle; le réglage de largeur sera la largeur par défaut la prochaine fois qu'un fichier est ouvert à ce dispositif.
+
If a device is specified, it does not need to have a file open to it; the width setting will be the default width next time a file is opened to that device.
  
Si device_name est "LPT1:" ou LPRINT est spécifié, le réglage de la largeur de l'appareil affecte LPRINT et LLIST.
+
If device_name is "LPT1:" or LPRINT is specified, the device width setting affects LPRINT and LLIST.
  
Si device_name est "SCRN:", "KYBD:", ou omis, la largeur de l'écran est modifiée. Dans ce cas, num_columns doit être l'un des 20, 40 ou 80. Voir les notes à WIDTH (console) pour les effets secondaires. Paramètres
+
If device_name is "SCRN:", "KYBD:", or omitted, the screen width is changed. In this case, num_columns must be one of 20, 40 or 80. See the notes at WIDTH (console) for side effects.
 +
Parameters
  
  file_num est une expression numérique qui est le numéro d'un fichier ouvert.
+
    file_num is a numeric expression which is the number of an open file.
     device_name est une expression de chaîne qui est l'un des "KYBD:", "SCRN:", "LPT1:", "LPT2:", "LPT3:", "COM1:", "COM2:", "CAS1:"
+
     device_name is a string expression that is one of "KYBD:", "SCRN:", "LPT1:", "LPT2:", "LPT3:", "COM1:", "COM2:", "CAS1:"
     num_columns est une expression numérique.
+
     num_columns is a numeric expression.
  
les erreurs
+
Errors
  
  device_name est pas un des périphériques autorisés: Nom de fichier incorrect.
+
    device_name is not one of the allowed devices: Bad file name.
     device_name est "SCRN:", "KYBD:" et num_columns ne sont pas 20, 40 ou 80: Illegal appel de fonction.
+
     device_name is "SCRN:", "KYBD:" and num_columns is not 20, 40 or 80: Illegal function call.
     file_num ou num_columns sont des chaînes: Incompatibilité de type.
+
     file_num or num_columns are strings: Type mismatch.
     file_num ou num_columns ne sont pas dans [-32.768 à 32.767]: Overflow.
+
     file_num or num_columns are not in [-32768—32767]: Overflow.
     file_num ou num_columns ne sont pas dans [0-255]: Illegal appel de fonction.
+
     file_num or num_columns are not in [0—255]: Illegal function call.
     file_num est pas un fichier ouvert: le mode de fichier incorrect.
+
     file_num is not an open file: Bad file mode.
  
Fenêtre [[ECRAN] (x0, y0) - (x1, y1)]
+
WINDOW
 +
WINDOW [[SCREEN] (x0, y0)-(x1, y1)]
  
Définir les coordonnées logiques pour la fenêtre. Si l'écran est pas spécifié, en bas à gauche de l'écran est mappé vers les coordonnées inférieures; en haut à droite de l'écran est mappé sur les coordonnées supérieures. Si l'écran est spécifié, en haut à gauche de l'écran est mappé vers les coordonnées inférieures; la partie inférieure droite de l'écran est mappé sur les coordonnées supérieures.
+
Define logical coordinates for the viewport. If SCREEN is not specified, the bottom left of the screen is mapped to the lower coordinates; the top right of the screen is mapped to the higher coordinates. If SCREEN is specified, the top left of the screen is mapped to the lower coordinates; the bottom right of the screen is mapped to the higher coordinates.
  
Si la fenêtre est appelée sans arguments, les coordonnées logiques sont réinitialisés aux coordonnées de viewport. Paramètres
+
If WINDOW is called without arguments, the logical coordinates are reset to the viewport coordinates.
 +
Parameters
  
  x0, y0, x1, y1 sont des expressions numériques.
+
    x0, y0, x1, y1 are numeric expressions.
  
les erreurs
+
Errors
  
  Tous les coordonnées ont une valeur de chaîne: Type mismatch.
+
    Any of the coordinates have a string value: Type mismatch.
     x0 = x1 ou y0 = y1: Illegal appel de fonction.
+
     x0 = x1 or y0 = y1: Illegal function call.
  
WRITE WRITE [# file_num,] expr_0 [{, |;} expr_1] ...
+
WRITE
 +
WRITE [# file_num,] expr_0 [{,|;} expr_1] ...
  
Ecrit des valeurs dans un fichier ou l'écran sous forme lisible par machine. Les valeurs sont séparées par des virgules et la ligne est terminée par une séquence CR LF. Les chaînes sont délimités par des guillemets ". Pas d'espace de remplissage sont insérés.
+
Writes values to a file or the screen in machine-readable form. Values are separated by commas and the line is ended with a CR LF sequence. Strings are delimited by double quotes ". No padding spaces are inserted.
  
Lors de l'écriture à l'écran, les mêmes caractères de contrôle sont reconnus comme pour l'instruction PRINT. Paramètres
+
When writing to the screen, the same control characters are recognised as for the PRINT statement.
 +
Parameters
  
  expr_0, expr_1, ... sont des expressions dont la valeur doit être imprimée.
+
    expr_0, expr_1, ... are expressions whose value is to be printed.
  
les erreurs
+
Errors
  
  file_num a une valeur de chaîne: Type mismatch.
+
    file_num has a string value: Type mismatch.
     file_num est ouvert pour INPUT: mode de fichier incorrect.
+
     file_num is open for INPUT: Bad file mode.
  
Erreurs et Messages Erreurs 1 PROCHAINES sans POUR
+
Errors and Messages
 +
Errors
 +
1 NEXT without FOR
  
Une instruction NEXT a été rencontré pour lesquels aucune correspondance ne peut être relevée. 2 Erreur de syntaxe
+
A NEXT statement has been encountered for which no matching FOR can be found.
 +
2 Syntax error
  
La syntaxe de base est incorrecte. Une déclaration ou l'expression a été mal orthographié ou appelé dans l'une des nombreuses façons incorrectes. Cette erreur est également élevé sur une ligne de données si une instruction READ rencontre une entrée de données d'un format incorrect. 3 RETOUR sans GOSUB
+
The BASIC syntax is incorrect. A statement or expression has been mistyped or called in one of many incorrect ways. This error is also raised on a DATA line if a READ statement encounters a data entry of an incorrect format.
 +
3 RETURN without GOSUB
  
Une instruction RETURN a été rencontré pour lesquels aucun appel GOSUB a été faite. 4 Sur DATA
+
A RETURN statement has been encountered for which no GOSUB call has been made.
 +
4 Out of DATA
  
Une instruction READ tente de lire plusieurs entrées de données que l'on peut trouver à l'emplacement actuel de données en avant. 5 Illegal appel de fonction
+
A READ statement is attempting to read more data entries than can be found from the current DATA location onward.
 +
5 Illegal function call
  
Une déclaration, la fonction ou l'opérateur a été appelé avec des paramètres en dehors de la plage acceptée. Cette erreur est également soulevée pour une grande variété d'autres conditions - vérifier la référence pour l'instruction ou de la fonction appelée. 6 Overflow
+
A statement, function or operator has been called with parameters outside the accepted range. This error is also raised for a large variety of other conditions – check the reference for the statement or function called.
 +
6 Overflow
  
Résultat Une expression numérique ou une valeur intermédiaire est trop grande pour le format de nombre requis. 7 Out of memory
+
A numeric expression result or intermediate value is too large for the required number format.
 +
7 Out of memory
  
Il n'y a pas assez de mémoire de base gratuite pour terminer l'opération. Trop mémoire est consommée par le programme; variables, les tableaux et les chaînes, ou des piles d'exécution pour les boucles, sous-routines ou fonctions définies par l'utilisateur. 8 numéro de ligne Undefined
+
There is not enough free BASIC memory to complete the operation. Too much memory is consumed by the program; variables, arrays and strings, or execution stacks for loops, subroutines or user-defined functions.
 +
8 Undefined line number
  
Il est fait référence à un numéro de ligne qui n'existe pas dans le programme. 9 Indice hors de portée
+
A reference is made to a line number that does not exist in the program.
 +
9 Subscript out of range
  
Un indice de tableau (en indice) est utilisé qui est hors de la plage réservée à ce tableau par l'instruction DIM. 10 Définition Duplicate
+
An array index (subscript) is used that is outside the range reserved for that array by the DIM statement.
 +
10 Duplicate Definition
  
Une déclaration est DIM utilisé sur un tableau qui a été dimensionné avant (implicitement ou explicitement) ou OPTION BASE est appelé d'une manière qui est en conflit avec une définition antérieure implicite ou explicite de l'indice de départ. 11 Division par zéro
+
A DIM statement is used on an array that has been dimensioned before (either implicitly or explicitly) or OPTION BASE is called in a way that conflicts with an earlier implicit or explicit definition of the starting index.
 +
11 Division by zero
  
Une tentative est faite pour diviser un nombre par zéro ou par un nombre trop petit pour établir une distinction entre zéro à l'intérieur de la précision du format numérique. 12 Illegal directe
+
An attempt is made to divide a number by zero or by a number that is too small to distinguish from zero within the number format's precision.
 +
12 Illegal direct
  
Une déclaration DEF FN est utilisé en mode direct. 13 Type mismatch
+
A DEF FN statement is being used in direct mode.
 +
13 Type mismatch
  
L'expression utilisée est d'un type qui ne peut pas être converti dans le type requis pour la fonction ou de la déclaration. Le plus souvent, cela est déclenché si un argument de chaîne est fournie à une déclaration ou une fonction qui attend un nombre, ou vice versa. 14 Sur l'espace de chaîne
+
The expression used is of a type that cannot be converted to the required type for the function or statement. Most commonly, this is raised if a string argument is supplied to a statement or function that expects a number, or vice versa.
 +
14 Out of string space
  
Il n'y a pas assez de mémoire BASIC libre pour stocker la variable de chaîne. 15 cordes trop longtemps
+
There is not enough free BASIC memory to store the string variable.
 +
15 String too long
  
Un résultat de l'expression de chaîne ou une valeur intermédiaire est supérieure à 255 caractères. 16 formule cordes trop complexe 17 ne peut pas continuer
+
A string expression result or intermediate value is longer than 255 characters.
 +
16 String formula too complex
 +
17 Can't continue
  
L'instruction CONT est utilisée dans les cas où la poursuite exécution du programme est impossible. 18 fonction utilisateur Undefined
+
The CONT statement is used in circumstances where continuing program execution is not possible.
 +
18 Undefined user function
  
La fonction FN est appelée avec un nom de fonction pour laquelle aucune définition a été faite par une déclaration DEF FN. 19 No REPRENDRE
+
The FN function is called with a function name for which no definition was made by a DEF FN statement.
 +
19 No RESUME
  
Le programme se termine à l'intérieur d'une routine de piégeage d'erreur qui n'a pas été fermée avec REPRENDRE ou END. 20 REPRENDRE sans erreur
+
The program terminates inside an error trapping routine that has not been closed with RESUME or END.
 +
20 RESUME without error
  
Une déclaration de REPRENDRE est rencontrée alors que le programme n'exécute une routine d'erreur de piégeage. 21 utilisé 22 opérande manquant
+
A RESUME statement is encountered while the program is not executing an error trapping routine.
 +
21 unused
 +
22 Missing operand
  
Une expression de l'opérateur manque un opérande ou d'une fonction ou de la déclaration ne soit pas fournie avec des paramètres suffisants. 23 buffer overflow ligne
+
An operator expression misses an operand or a function or statement is not supplied with sufficient parameters.
 +
23 Line buffer overflow
  
Une instruction INPUT ou LINE INPUT rencontré une chaîne d'entrée plus de 255 caractères ou le fichier de programme en texte brut en cours de chargement contient une ligne avec plus de 255 caractères. 24 Dispositif Timeout
+
An INPUT or LINE INPUT statement encountered an input string longer than 255 characters or the plain-text program file being loaded contains a line with more than 255 characters.
 +
24 Device Timeout
  
La poignée de main a échoué sur un périphérique série ou un périphérique de bande a atteint la fin de la bande. 25 Dispositif Fault 26 POUR LA PROCHAINE sans
+
The handshake has failed on a serial device or a tape device has reached the end of tape.
 +
25 Device Fault
 +
26 FOR without NEXT
  
Une instruction FOR a été rencontrée pour laquelle aucune instruction NEXT correspondante peut être trouvée. 27 Sur papier
+
A FOR statement has been encountered for which no matching NEXT statement can be found.
 +
27 Out of paper
  
Une tentative est faite pour écrire à une imprimante qui est hors de papier ou à un autre périphérique parallèle qui a soulevé une condition out-of-papier. 28 utilisé 29 TANDIS sans WEND
+
An attempt is made to write to a printer which is out of paper or to another parallel device which has raised an out-of-paper condition.
 +
28 unused
 +
29 WHILE without WEND
  
Une instruction WHILE a été rencontrée pour laquelle aucune déclaration de WEND correspondant peut être trouvé. 30 WEND sans TANDIS
+
A WHILE statement has been encountered for which no matching WEND statement can be found.
 +
30 WEND without WHILE
  
Une déclaration de WEND a été rencontré pour lesquelles aucune instruction WHILE correspondant peut être trouvé. 31-49 utilisé overflow 50 CHAMP
+
A WEND statement has been encountered for which no matching WHILE statement can be found.
 +
31—49 unused
 +
50 FIELD overflow
  
Une tentative est faite pour lire, écrire, ou définir une variable de champ au-delà de la longueur de la mémoire tampon de fichier à accès aléatoire. 51 Erreur interne
+
An attempt is made to read, write, or define a FIELD variable beyond the length of the random-access file buffer.
 +
51 Internal error
  
La déclaration de TERM est exécuté, mais aucun programme de gestionnaire du terminal a été défini. 52 Numéro de fichier incorrect
+
The TERM statement is executed but no terminal manager program has been defined.
 +
52 Bad file number
  
Un numéro de fichier est accessible auquel aucun fichier est ouvert, ou le numéro de fichier utilisé dans une instruction OPEN est en dehors de la plage de numéros de fichiers autorisés, ou (confusion) la spécification de fichier est vide, malformés ou contient des caractères illégaux. 53 Fichier non trouvé
+
A file number is accessed to which no file is open, or the file number used in an OPEN statement is outside the range of allowable file numbers, or (confusingly) the file specification is empty, malformed or contains illegal characters.
 +
53 File not found
  
Un fichier nommé sur un périphérique de disque ne peut pas être trouvé. 54 Mode de fichier incorrect
+
A named file on a disk device cannot be found.
 +
54 Bad file mode
  
existe Le mode de fichier demandé dans une instruction OPEN pas ou est pris en charge pour le périphérique donné, ou la fonction de fichier appelé est pas pris en charge pour cet appareil, ou la fonction ou la déclaration appelée requiert un fichier ouvert pour RANDOM et le fichier est pas. 55 Fichier déjà ouvert
+
The requested file mode in an OPEN statement does not exist or is unsupported for the given device, or the file function called is not supported for this device, or the function or statement called requires a file opened for RANDOM and the file is not.
 +
55 File already open
  
Une tentative est faite pour ouvrir un fichier à un numéro de dossier qui est déjà en cours d'utilisation; ou une tentative est faite pour ouvrir un fichier pour OUTPUT ou APPEND sur un périphérique série, le disque ou la cassette quand un fichier est déjà ouvert pour OUTPUT ou APPEND sur ce dispositif; ou d'une instruction KILL ou NAME est exécuté sur un fichier de disque ouvert. 56 utilisé 57 Erreur de périphérique d'E / S
+
An attempt is made to open a file to a file number that is already in use; or an attempt is made to open a file for OUTPUT or APPEND on a serial, disk or cassette device when a file is already open for OUTPUT or APPEND on that device; or a KILL or NAME statement is executed on an open disk file.
 +
56 unused
 +
57 Device I/O error
  
Une erreur d'E / S est survenue lors de l'entrée / sortie à un dispositif. Ceci inclut les erreurs de Faming, les défaillances de contrôle CRC et de fin de bande inattendue sur les appareils à cassettes. 58 Le fichier existe déjà
+
An I/O error has occured during input/output to a device. This includes faming errors, CRC check failures and unexpected end-of-tape on cassette devices.
 +
58 File already exists
  
Le nouveau nom proposé d'un fichier de disque dans une instruction NAME est déjà en cours d'utilisation. 59-60 utilisé 61 Disque plein
+
The proposed new name of a disk file in a NAME statement is already in use.
 +
59—60 unused
 +
61 Disk full
  
Il y a suffisamment d'espace libre sur le périphérique de disque pour terminer l'opération. 62 fin dernière entrée
+
There is insufficient free space on the disk device to complete the operation.
 +
62 Input past end
  
Une tentative est faite pour récupérer l'entrée d'un fichier qui a passé sa fin de fichier. 63 Numéro d'enregistrement Bad
+
An attempt is made to retrieve input from a file that has passed its end of file.
 +
63 Bad record number
  
Un nombre record de fichiers d'accès aléatoire est référencé qui est en dehors de la plage autorisée. 64 Nom de fichier incorrect
+
A random-access file record number is referenced that is outside the permitted range.
 +
64 Bad file name
  
Le nom de fichier ou d'une autre chaîne de paramètres de l'appareil dans une spécification de fichier est malformé ou contient des caractères illégaux. 65 utilisé 66 déclaration directe dans le fichier
+
The file name or other device parameter string in a file specification is malformed or contains illegal characters.
 +
65 unused
 +
66 Direct statement in file
  
Une ligne sans numéro de ligne est rencontrée dans un fichier de programme en texte brut. 67 Trop de fichiers 68 périphériques Non disponible
+
A line with no line number is encountered in a plain-text program file.
 +
67 Too many files
 +
68 Device Unavailable
  
Une tentative est faite pour accéder à un dispositif qui n'existe pas ou est pas activé. 69 buffer overflow Communication
+
An attempt is made to access a device that does not exist or is not enabled.
 +
69 Communication buffer overflow
  
Un périphérique série reçoit plus de données que ne peut en son tampon. 70 Autorisation refusée
+
A serial device is receiving more data than fits in its buffer.
 +
70 Permission Denied
  
L'accès demandé à un fichier n'est pas accordée en raison de restrictions LOCK, verrouillage du système d'exploitation ou les permissions de fichiers du système d'exploitation insuffisante. 71 Disk not Ready
+
The requested access to a file is not granted due to LOCK restrictions, operating system locking, or insufficient operating system file permissions.
 +
71 Disk not Ready
  
Le dispositif de disque est prêt pour l'accès. Par exemple, il n'y a aucune disquette dans un lecteur de disquette ou le verrou d'entraînement est ouvert. 72 médias de disque d'erreur 73 Feature avancée 74 Renommer sur les disques
+
The disk device is not ready for access. For example, there is no diskette in a floppy drive or the drive lock is open.
 +
72 Disk media error
 +
73 Advanced Feature
 +
74 Rename across disks
  
Une tentative est faite d'utiliser l'instruction NAME pour déplacer un fichier d'un périphérique de disque à l'autre. 75 Chemin erreur d'accès / Fichier
+
An attempt is made to use the NAME statement to move a file from one disk device to another.
 +
75 Path/File access error
  
Une tentative est faite pour créer un répertoire qui existe déjà ou pour supprimer un répertoire qui ne soit pas vide. 76 Chemin d'accès introuvable
+
An attempt is made to create a directory that already exists or to remove a directory that is not empty.
 +
76 Path not found
  
Une instruction OPEN, MKDIR, RMDIR ou CHDIR est exécuté faisant référence à un chemin (parent) qui n'existe pas sur le périphérique de disque. 77 Deadlock
+
An OPEN, MKDIR, RMDIR, or CHDIR statement is executed referring to a (parent) path that does not exist on the disk device.
 +
77 Deadlock
  
Un code d'erreur qui n'a pas un message qui lui est associé génère le message d'erreur non imprimable.
+
Any error code that does not have a message associated to it will generate the message Unprintable error.
  
Si une erreur se produit en mode direct, le message d'erreur est affiché comme ci-dessus. Si l'erreur se produit dans un programme, le message est complété par le numéro de ligne dans lequel l'erreur est survenue. Par exemple, Illégal appel de fonction 100 indique que l'appel de fonction illégale a eu lieu dans le numéro de la ligne 100.
+
If an error occurs in direct mode, the error message is printed as above. If the error occurs in a program, the message is supplemented with the line number in which the error occurred. For example,
 +
Illegal function call in 100
 +
indicates that the illegal function call took place in line number 100.
  
Si une erreur de syntaxe se produit lors de l'exécution du programme, le message d'erreur est suivi d'une liste de la ligne de programme dans lequel l'erreur est survenue, wth le curseur positionné à l'endroit où l'erreur a été soulevée.
+
If a Syntax error occurs during program execution, the error message is followed by a listing of the program line in which the error occurred, wth the cursor positioned at the location where the error was raised.
  
Une division par zéro erreur ou, dans un calcul en virgule flottante, un débordement, ne sera pas interrompre l'exécution, sauf si elle se produit au sein d'une routine de gestion d'erreur. Le message d'erreur sera imprimé sur la console et le résultat du calcul de la délinquance sera considérée comme étant la valeur maximale qui correspond à la variable à virgule flottante appropriée. Débordement dans un calcul entier sera toujours interrompre l'exécution comme d'autres erreurs. Autres messages
+
A Division by zero error or, in a floating point calculation, an Overflow, will not interrupt execution unless it occurs within an error handling routine. The error message will be printed on the console and the result of the offending calculation will be taken to be the maximum value that fits in the appropriate floating-point variable. Overflow in an integer calculation will always interrupt execution like other errors.
 +
Other messages
  
Pause
+
Break
 +
    Execution of a compound statement or program has been interrupted by a CONT statement or by a user keyboard interrupt (such as Ctrl+Break). If the interrupt happens in a program, the Break message will be supplemented with the line number in which the interrupt occurred.
 +
?Redo from start
 +
    The input provided on the console for an INPUT statement does not match the expected format. The number or type of inputs is not correct. Re-enter all inputs.
 +
Undefined line ref_num in line_num
 +
    The RENUM statement encountered a reference to the line number ref_num which is not defined in the program. The reference occurs on line number line_num. The undefined line number reference will not be renumbered.
 +
filename Found.
 +
    A file matching the requested specification has been found on the cassette device. This message only occurs in direct mode.
 +
filename Skipped.
 +
    A file not matching the requested specification has been encountered on the cassette device. This message only occurs in direct mode.
  
  Exécution d'une déclaration ou d'un programme composé a été interrompue par une instruction CONT ou par une interruption du clavier de l'utilisateur (comme Ctrl + Break).  Si l'interruption se produit dans un programme, le message Break sera complété par le numéro de ligne dans laquelle l'interruption a eu lieu.
+
Technical reference
 +
Tokenised file format
  
? Refaire du début
+
A tokenised program file on a disk device has the following format.
  
  L'entrée prévue sur la console pour une instruction INPUT ne correspond pas au format attendu.  Le nombre ou le type d'entrées ne sont pas correctes.  Entrez à nouveau toutes les entrées.
+
Magic byte
 
+
    FF  
ref_num ligne défini dans LINE_NUM
+
Program lines
 
+
    Each line is stored as follows:
  L'instruction RENUM rencontré une référence au numéro de ligne ref_num qui ne sont pas définis dans le programme.  La référence se produit sur le numéro de ligne LINE_NUM.  La undefined référence numéro de ligne ne sera pas renumérotés.
+
     Bytes Format Meaning
 
+
     2 Unsigned 16-bit little-endian integer. Memory location of the line following the current one. This is used internally by GW-BASIC but ignored when a program is loaded.
filename Trouvé.
+
     2 Unsigned 16-bit little-endian integer. The line number.
 
+
     Variable Tokenised BASIC, see below. The contents of the line.
  Un fichier correspondant à la spécification demandée a été trouvé sur le périphérique de la cassette.  Ce message se produit uniquement en mode direct.
+
     1 00 (NUL byte) End of line marker.
 
+
End of file marker
filename Ignoré.
+
    An 1A is written to mark the end of file. This is optional; the file will be read without problems if it is omitted.  
 
+
  Un fichier ne correspond pas à la spécification demandée a été rencontrée sur le dispositif de cassette.  Ce message se produit uniquement en mode direct.
+
 
+
format de fichier Tokenised de référence technique
+
 
+
Un fichier de programme tokenised sur un périphérique de disque a le format suivant.
+
 
+
octet magique
+
 
+
  FF  
+
 
+
lignes du programme
+
 
+
  Chaque ligne est stocké comme suit:
+
     Octets Format Signification
+
     2 Unsigned 16-bit entier little-endian. Lieu de mémoire de la ligne qui suit le courant. Il est utilisé en interne par GW-BASIC, mais ignoré quand un programme est chargé.
+
     2 Unsigned 16-bit entier little-endian. Le numéro de ligne.
+
     Variable Tokenised BASIC, voir ci-dessous. Le contenu de la ligne.
+
     1 00 (NUL byte) Marqueur de fin de ligne.
+
 
+
Marqueur de fin de fichier
+
 
+
  Un 1A est écrit pour marquer la fin du fichier. Cette option est facultative; le fichier sera lu sans problème si elle est omise.  
+
  
 
Tokenised BASIC
 
Tokenised BASIC
  
Les caractères ASCII imprimables dans la gamme 20-7E sont utilisés pour les chaînes littérales, des commentaires, des noms de variables, et des éléments de syntaxe de l'instruction qui ne sont pas des mots réservés. Les mots réservés sont représentés par leurs mots jetons réservés et littéraux numériques sont représentées par des séquences de jetons numériques. séquences de jetons numériques
+
The printable ASCII characters in the range 20—7E are used for string literals, comments, variable names, and elements of statement syntax that are not reserved words. Reserved words are represented by their reserved word tokens and numeric literals are represented by numeric token sequences.
 +
Numeric token sequences
  
littéraux numériques sont stockés dans les programmes tokenised selon la représentation suivante. Tous les chiffres sont positifs; les nombres négatifs sont stockés simplement en précédant le numéro avec EA, le jeton pour -. Classe Octets Format des numéros de ligne indirecte 3 0E suivies d'un 16-bit entier little-endian non signé. entiers Octal 3 0B suivi d'un entier 16 bits little-endian non signé. entiers hexadécimaux 3 0C suivi d'un entier 16 bits little-endian non signé. décimales positif entiers moins de 11 1 Tokens 11-1B représentent 0-10. entiers décimaux positifs moins de 256 2 0F suivi d'un entier non signé 8 bits. Autres entiers décimaux 3 1C suivie d'un complément à deux signé 16-bit entier little-endian. GW-BASIC reconnaîtra un nombre négatif rencontré cette façon, mais il ne sera pas stocker les nombres négatifs s'utilisant le complément à deux, mais plutôt en faisant précéder le nombre positif avec EA. simple précision en virgule flottante numéro 5 1D suivi par un seul de quatre octets dans Microsoft Binary Format. Double précision nombre à virgule flottante 9 1F suivi d'un huit double octet dans Microsoft Binary Format. jetons de mots-clés
+
Numeric literals are stored in tokenised programs according to the following representation. All numbers are positive; negative numbers are stored simply by preceding the number with EA, the token for -.
 +
Class Bytes Format
 +
Indirect line numbers 3 0E followed by an unsigned 16-bit little-endian integer.
 +
Octal integers 3 0B followed by an unsigned 16-bit little-endian integer.
 +
Hexadecimal integers 3 0C followed by an unsigned 16-bit little-endian integer.
 +
Positive decimal integers less than 11 1 Tokens 11—1B represent 0—10.
 +
Positive decimal integers less than 256 2 0F followed by an unsigned 8-bit integer.
 +
Other decimal integers 3 1C followed by a two's complement signed 16-bit little-endian integer. GW-BASIC will recognise a negative number encountered this way but it will not store negative numbers itself using the two's complement, but rather by preceding the positive number with EA.
 +
Single precision floating-point number 5 1D followed by a four-byte single in Microsoft Binary Format.
 +
Double precision floating-point number 9 1F followed by an eight-byte double in Microsoft Binary Format.
 +
Keyword tokens
  
La plupart des mots-clés dans PC-BASIC sont des mots réservés. Les mots réservés sont représentés dans un programme tokenised par un jeton simple ou double-octet. La liste complète est ci-dessous.
+
Most keywords in PC-BASIC are reserved words. Reserved words are represented in a tokenised program by a single- or double-byte token. The complete list is below.
  
Tous les noms de fonction et les opérateurs sont des mots réservés et toutes les déclarations commencent par un mot réservé (qui, dans le cas de LET est facultative). Cependant, l'inverse est pas vrai: tous les mots réservés sont des déclarations, des fonctions ou des opérateurs. Par exemple, TO et la CPS (ne se produisent dans le cadre d'une syntaxe de l'instruction mots En outre, certains mots-clés qui font partie de la syntaxe de déclaration ne sont pas réservés. Exemples sont AS, BASE, et ACCESS.
+
All function names and operators are reserved words and all statements start with a reserved word (which in the case of LET is optional). However, the converse is not true: not all reserved words are statements, functions, or operators. For example, TO and SPC( only occur as part of a statement syntax. Furthermore, some keywords that form part of statement syntax are not reserved words: examples are AS, BASE, and ACCESS.
  
Mots-clés qui ne sont pas réservés mots sont écrits en texte intégral dans la source tokenised.
+
Keywords that are not reserved words are spelt out in full text in the tokenised source.
  
Un nom de fonction variable ou définie par l'utilisateur ne doit pas être identique à un mot réservé. La liste ci-dessous est une liste exhaustive des mots réservés qui peuvent être utilisés pour déterminer si un nom est légal.
+
A variable or user-defined function name must not be identical to a reserved word. The list below is an exhaustive list of reserved words that can be used to determine whether a name is legal.
  
     81 FIN 82 POUR 83 SUIVANT 84 DONNÉES 85 ENTREE 86 DIM 87 LIRE 88 LET 89 GOTO 8A RUN 8B IF 8C RESTORE 8D GOSUB 8E RETURN 8F REM 90 ARRÊT 91 PRINT 92 EFFACER 93 LISTE 94 NOUVEAU 95 SUR 96 ATTENDRE 97 DEF 98 POKE 99 CONT 9C OUT 9D LPRINT 9E LLIST A0 WIDTH A1 AUTRE A2 TRON A3 TROFF A4 SWAP A5 ERASE A6 EDIT A7 ERROR A8 REPRENDRE A9 SUPPRIMER AA AUTO AB RENUM AC DEFSTR AD DEFINT AE DefSng AF DEFDBL B0 LINE B1 TANDIS B2 WEND B3 CALL B7 WRITE B8 OPTION B9 RANDOMIZE BA OUVERT BB FERMER BC LOAD BD MERGE ÊTRE SAUVER BF COLOR C0 CLS C1 MOTOR C2 BSAVE C3 BLOAD C4 SOUND C5 BEEP C6 PSET C7 PRESET C8 ECRAN C9 KEY CA LOCATE CC TO CD ALORS CE TAB (STEP CF D0 USR D1 FN D2 SPC (D3 PAS D4 ERL D5 ERR D6 STRING $ D7 UTILISATION J8 INSTR D9 'DA VARPTR DB CSRLIN DC POINT DD OFF DE INKEY $ E6> E7 = E8 <E9 + EA - EB * EC / ED ^ EE ET EF OU F0 XOR F1 EQV F2 IMP F3 MOD F4 \ FD81 CVI FD82 CVS FD83 CVD FD84 MKI $ FD85 MKS $ FD86 MKD $ FD8B EXTERR FE81 FICHIERS FE82 FIELD FE83 SYSTÈME FE84 NOM FE85 LSET FE86 RSET FE87 KILL FE88 PUT FE89 GET FE8A RAZ CHAÎNE FE8B COMMUNE FE8C FE8D DATE $ FE8E TIME $ FE8F PAINT FE90 COM FE91 CIRCLE FE92 TIRAGE FE93 JEU FE94 TIMER FE95 ERDEV FE96 IOCTL FE97 CHDIR FE98 MKDIR FE99 RMDIR FE9A SHELL FE9B ENVIRON FE9C VIEW FE9D WINDOW FE9E PPAFM FE9F PALETTE FEA0 LCOPY AEED 1 APPELS AEED 5 PCOPY FEA7 BLOCAGE FEA8 UNLOCK FF81 LEFT $ FF82 DROIT $ Ff83 MID $ FF84 SGN FF85 INT FF86 ABS FF87 SQR FF88 ROND FF89 SIN FF8A LOG FF8B EXP FF8C COS FF8D TAN FF8E ATN FF8F FRE FF90 INP FF91 POS FF92 LEN FF93 STR $ FF94 VAL FF95 ASC FF96 CHR $ FF97 PEEK FF98 SPACE $ FF99 octobre $ FF9A HEX $ FF9B LPOS FF9C CINT FF9D CSNG FF9E CDBL FF9F FIX FFA0 PEN FFA1 STICK FFA2 STRIG FFA3 EOF FFA4 LOC FFA5 LOF  
+
     81 END 82 FOR 83 NEXT 84 DATA 85 INPUT 86 DIM 87 READ 88 LET 89 GOTO 8A RUN 8B IF 8C RESTORE 8D GOSUB 8E RETURN 8F REM 90 STOP 91 PRINT 92 CLEAR 93 LIST 94 NEW 95 ON 96 WAIT 97 DEF 98 POKE 99 CONT 9C OUT 9D LPRINT 9E LLIST A0 WIDTH A1 ELSE A2 TRON A3 TROFF A4 SWAP A5 ERASE A6 EDIT A7 ERROR A8 RESUME A9 DELETE AA AUTO AB RENUM AC DEFSTR AD DEFINT AE DEFSNG AF DEFDBL B0 LINE B1 WHILE B2 WEND B3 CALL B7 WRITE B8 OPTION B9 RANDOMIZE BA OPEN BB CLOSE BC LOAD BD MERGE BE SAVE BF COLOR C0 CLS C1 MOTOR C2 BSAVE C3 BLOAD C4 SOUND C5 BEEP C6 PSET C7 PRESET C8 SCREEN C9 KEY CA LOCATE CC TO CD THEN CE TAB( CF STEP D0 USR D1 FN D2 SPC( D3 NOT D4 ERL D5 ERR D6 STRING$ D7 USING D8 INSTR D9 ' DA VARPTR DB CSRLIN DC POINT DD OFF DE INKEY$ E6 > E7 = E8 < E9 + EA - EB * EC / ED ^ EE AND EF OR F0 XOR F1 EQV F2 IMP F3 MOD F4 \ FD81 CVI FD82 CVS FD83 CVD FD84 MKI$ FD85 MKS$ FD86 MKD$ FD8B EXTERR FE81 FILES FE82 FIELD FE83 SYSTEM FE84 NAME FE85 LSET FE86 RSET FE87 KILL FE88 PUT FE89 GET FE8A RESET FE8B COMMON FE8C CHAIN FE8D DATE$ FE8E TIME$ FE8F PAINT FE90 COM FE91 CIRCLE FE92 DRAW FE93 PLAY FE94 TIMER FE95 ERDEV FE96 IOCTL FE97 CHDIR FE98 MKDIR FE99 RMDIR FE9A SHELL FE9B ENVIRON FE9C VIEW FE9D WINDOW FE9E PMAP FE9F PALETTE FEA0 LCOPY FEA1 CALLS FEA5 PCOPY FEA7 LOCK FEA8 UNLOCK FF81 LEFT$ FF82 RIGHT$ FF83 MID$ FF84 SGN FF85 INT FF86 ABS FF87 SQR FF88 RND FF89 SIN FF8A LOG FF8B EXP FF8C COS FF8D TAN FF8E ATN FF8F FRE FF90 INP FF91 POS FF92 LEN FF93 STR$ FF94 VAL FF95 ASC FF96 CHR$ FF97 PEEK FF98 SPACE$ FF99 OCT$ FF9A HEX$ FF9B LPOS FF9C CINT FF9D CSNG FF9E CDBL FF9F FIX FFA0 PEN FFA1 STICK FFA2 STRIG FFA3 EOF FFA4 LOC FFA5 LOF  
  
Les mots réservés supplémentaires suivants sont activés par l'option syntax = {PCjr | tandy}.
+
The following additional reserved words are activated by the option syntax={pcjr|tandy}.
  
  BRUIT AEED 4 FEA6 TERME
+
    FEA4 NOISE FEA6 TERM
  
Le mot réservé supplémentaire suivant est activé par l'option de débogage. Il est spécifique au PC-BASIC et non présent dans GW-BASIC.
+
The following additional reserved word is activated by the debug option. It is specific to PC-BASIC and not present in GW-BASIC.
  
  FFFF DEBUG  
+
    FFFF DEBUG  
  
utiliser des jetons internes
+
Internal use tokens
  
Les jetons 10, 1E et 0D sont connus pour être utilisés en interne par GW-BASIC. Ils ne doivent pas apparaître dans un fichier de programme tokenised correctement stocké. Microsoft Binary Format
+
The tokens 10, 1E and 0D are known to be used internally by GW-BASIC. They should not appear in a correctly stored tokenised program file.
 
+
Microsoft Binary Format
nombres à virgule flottante dans GW-BASIC et PC-BASIC sont représentés dans Microsoft Binary Format (MBF), qui diffère de la norme IEEE 754 utilisé par la quasi-totalité des logiciels modernes et de matériel. Par conséquent, les fichiers binaires générés soit par BASIC sont entièrement compatibles les uns avec les autres et avec certaines applications modernes pour GW-BASIC, mais pas facilement interchangeables avec d'autres logiciels. QBASIC, par exemple, utilise des flotteurs IEEE.
+
 
+
MBF diffère de l'IEEE dans la position du bit de signe et en utilisant seulement 8 bits pour l'exposant, à la fois en simple et en double précision. Cela rend la gamme des nombres admissibles dans un nombre double précision MBF plus petit, mais leur plus grande précision, que pour un IEEE double: une seule MBF a 23 bits de précision, tandis qu'un double-MBF a 55 bits de précision. Tous les deux ont la même gamme.
+
  
Contrairement à l'IEEE, le format Microsoft binaire ne supporte pas les zéros signés, numéros subnormales, infinités ou valeurs non-a-nombre.
+
Floating point numbers in GW-BASIC and PC-BASIC are represented in Microsoft Binary Format (MBF), which differs from the IEEE 754 standard used by practically all modern software and hardware. Consequently, binary files generated by either BASIC are fully compatible with each other and with some applications contemporary to GW-BASIC, but not easily interchanged with other software. QBASIC, for example, uses IEEE floats.
  
MBF nombres à virgule flottante sont représentés en octets comme suit:
+
MBF differs from IEEE in the position of the sign bit and in using only 8 bits for the exponent, both in single- and in double-precision. This makes the range of allowable numbers in an MBF double-precision number smaller, but their precision higher, than for an IEEE double: an MBF single has 23 bits of precision, while an MBF double has 55 bits of precision. Both have the same range.
  
Unique
+
Unlike IEEE, the Microsoft Binary Format does not support signed zeroes, subnormal numbers, infinities or not-a-number values.
  
  E0 M3 M2 M1
+
MBF floating point numbers are represented in bytes as follows:
  
 +
Single
 +
    M3 M2 M1 E0
 
Double
 
Double
 +
    M7 M6 M5 M4 M3 M2 M1 E0
  
  E0 M7 M6 M5 M4 M3 M2 M1  
+
Here, E0 is the exponent byte and the other bytes form the mantissa, in little-endian order so that M1 is the most significant byte. The most significant bit of M1 is the sign bit, followed by the most significant bits of the mantissa: M1 = s0 f1 f2 f3 f4 f5 f6 f7. The other bytes contain the less-significant mantissa bits: M2 = f8 f9 fA fB fC fD fE fF, and so on.
  
Ici, E0 est l'octet d'exposant et les autres octets forment la mantisse, pour petit-boutiste de telle sorte que M1 est l'octet le plus significatif. Le bit le plus significatif de M1 est le bit de signe, suivi par les bits les plus significatifs de la mantisse: M1 = s0 F1 F2 F3 F4 F5 F6 F7. Les autres octets contiennent les bits moins significatifs mantisse: M2 = f8 f9 fA fB fC fD fE fF, et ainsi de suite.
+
The value of the floating-point number is v = 0 if E0 = 0 and v = (-1) s0 × mantissa × 2 E0 - 128 otherwise, where the mantissa is formed as a binary fraction mantissa = 0 . 1 f1 f2 f3 ...
 +
Protected file format
  
La valeur du nombre à virgule flottante est v = 0 si E0 = 0 et v = (-1) s0 × mantisse × 2 E0 - 128 autrement, où la mantisse est formée comme une fraction mantisse binaire = 0. 1 f1 f2 f3 ... format de fichier protégé
+
The protected format is an encrypted form of the tokenised format. GW-BASIC would refuse to show the source code of such files. This protection scheme could easily be circumvented by changing a flag in memory. Deprotection programs have circulated widely for decades and the decryption algorithm and keys were published in a mathematical magazine.
  
Le format protégé est une forme cryptée du format tokenised. GW-BASIC refuserait de montrer le code source de ces fichiers. Ce système de protection pourrait être facilement contournée en changeant un drapeau dans la mémoire. programmes de déprotection ont largement circulé depuis des décennies et l'algorithme de déchiffrement et les clés ont été publiées dans un magazine mathématique.
+
A protected program file on a disk device has the following format.
  
Un fichier de programme protégé sur un périphérique de disque a le format suivant.
+
Magic byte
 +
    FE
 +
Payload
 +
    Encrypted content of a tokenised program file, including its end of file marker but excluding its magic byte. The encription cipher rotates through an 11-byte and a 13-byte key so that the resulting transformation is the same after 143 bytes. For each byte,
  
octet magique
+
        Subtract the corresponding byte from the 11-byte sequence
 
+
  FE
+
 
+
Charge utile
+
 
+
  Encrypted contenu d'un fichier de programme tokenised, y compris son marqueur de fin de fichier, mais à l'exclusion de son octet magique.  Le chiffrement encription tourne d'un 11-octet et une clé de 13 octets de sorte que la transformation résultante est la même après 143 octets.  Pour chaque octet,
+
 
+
  Soustraire l'octet correspondant de la séquence de 11 octets,
+
 
         0B 0A 09 08 07 06 05 04 03 02 01
 
         0B 0A 09 08 07 06 05 04 03 02 01
         Exclusive ou avec l'octet correspondant de la clé de 11 octets
+
         Exclusive-or with the corresponding byte from the 11-byte key
         1D 1E C4 77 26 97 74 59 88 E0 7C
+
         1E 1D C4 77 26 97 E0 74 59 88 7C
         Exclusive ou avec l'octet correspondant de la clé de 13 octets
+
         Exclusive-or with the corresponding byte from the 13-byte key
 
         A9 84 8D CD 75 83 43 63 24 83 19 F7 9A
 
         A9 84 8D CD 75 83 43 63 24 83 19 F7 9A
         Ajouter l'octet correspondant de la séquence de 13 octets,
+
         Add the corresponding byte from the 13-byte sequence
 
         0D 0C 0B 0A 09 08 07 06 05 04 03 02 01
 
         0D 0C 0B 0A 09 08 07 06 05 04 03 02 01
  
Marqueur de fin de fichier
+
End of file marker
 +
    An 1A is written to mark the end of file. This is optional; the file will be read without problems if it is omitted. Since the end-of-file marker of the tokenised program is included in the encrypted content, a protected file is usually one byte longer than its unprotected equivalent.
  
  Un 1A est écrit pour marquer la fin du fichier.  Cette option est facultative;  le fichier sera lu sans problème si elle est omise.  Depuis le marqueur du programme tokenised de fin de fichier est inclus dans le contenu crypté, un fichier protégé est généralement un octet plus long que son équivalent non protégé.
+
BSAVE file format
  
format de fichier BSAVE
+
A memory-dump file on a disk device has the following format.
  
Un fichier de vidage de mémoire sur un périphérique de disque a le format suivant.
+
Magic byte
 +
    FD
 +
Header
 +
    Bytes Format Meaning
 +
    2 Unsigned 16-bit little-endian integer. Segment of the memory block.
 +
    2 Unsigned 16-bit little-endian integer. Offset of the first byte of the memory block.
 +
    2 Unsigned 16-bit little-endian integer. Length of the memory block in bytes.
 +
Payload
 +
    The bytes of the memory block.
 +
Footer
 +
    On Tandy only, the magic byte and the six bytes of the header are repeated here. This is optional; the file will be read without problems if it is omitted.
 +
End of file marker
 +
    An 1A is written to mark the end of file. This is optional; the file will be read without problems if it is omitted.  
  
octet magique
+
Cassette file format
  
  FD
+
Files on cassette are stored as frequency-modulated sound. The payload format of files on cassette is the same as for files on disk device, but the headers are different and the files may be split in chunks.
 +
Modulation
  
Entête
+
A 1-bit is represented by a single 1 ms wave period (1000 Hz). A 0-bit is represented by a single 0.5 ms wave period (2000 Hz).
 +
Byte format
  
  Octets Format Signification
+
A byte is sent as 8 bits, most significant first. There are no start- or stopbits.
    2 Unsigned 16-bit entier little-endian. Segment du bloc de mémoire.
+
Record format
    2 Unsigned 16-bit entier little-endian.  Décalage du premier octet du bloc de mémoire.
+
    2 Unsigned 16-bit entier little-endian.  La longueur du bloc de mémoire en octets.
+
  
Charge utile
+
A file is made up of two or more records. Each record has the following format:
 +
Length Format Meaning
 +
256 bytes All FF 2048 ms pilot wave at 1000 Hz, used for calibration.
 +
1 bit 0 Synchronisation bit.
 +
1 byte 16 (SYN) Synchronisation byte.
 +
256 bytes Data block.
 +
2 bytes Unsigned 16-bit big-endian integer CRC-16-CCITT checksum.
 +
4 bytes All FF End of record marker.
  
  Les octets du bloc de mémoire.  
+
Tokenised, protected and BSAVE files consist of a header record followed by a single record which may contain multiple 256-byte data blocks, each followed by the 2 CRC bytes. Plain text program files and data files consist of a header record followed by multiple single-block records.
 +
Header block format
 +
Bytes Format Meaning
 +
1 A5 Header record magic byte
 +
8 8 characters Filename.
 +
1 File type. 00 for data file, 01 for memory dump, 20 or A0 for protected, 40 for plain text program, 80 for tokenised program.
 +
2 Unsigned 16-bit little-endian integer Length of next data record, in bytes.
 +
2 Unsigned 16-bit little-endian integer Segment of memory location.
 +
2 Unsigned 16-bit little-endian integer Offset of memory location.
 +
1 00 End of header data
 +
239 All 01 Filler
 +
Data block format
 +
Bytes Format Meaning
 +
1 8-bit unsigned integer Number of payload bytes in last record, plus one. If zero, the next record is not the last record.
 +
255 Payload data. If this is the last record, any unused bytes are filled by repeating the last payload byte.
 +
Character codes
  
Bas de page
+
Depending on context, PC-BASIC will treat a code point in the control characters range as a control character or as a glyph defined by the active codepage which by default is codepage 437. Code points of &h80 or higher are always interpreted as a codepage glyph.
 +
ASCII
  
  Sur Tandy seulement, l'octet magique et les six octets de l'en-tête sont repris ici. Cette option est facultative;  le fichier sera lu sans problème si elle est omise.  
+
This is a list of the American Standard Code for Information Interchange (ASCII). ASCII only covers 128 characters and defines the code point ranges &h00–&h1F and &h7F as control characters which do not have a printable glyph assigned to them. This includes such values as the Carriage Return (CR) character that ends a program line.
  
Marqueur de fin de fichier
+
In the context of this documentation, character &h1A (SUB) will usually be indicated as EOF since it plays the role of end-of-file marker in DOS.
 +
  _0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
 +
0_ NUL SOH STX ETX EOT ENQ ACK BEL BS  HT  LF  VT  FF  CR  SO  SI
 +
1_ DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM  SUB ESC FS  GS  RS  US
 +
2_ ! " # $ % & ' ( ) * + , - . /
 +
3_ 0 1 2 3 4 5 6 7 8 9 : ; < = > ?
 +
4_ @ A B C D E F G H I J K L M N O
 +
5_ P Q R S T U V W X Y Z [ \ ] ^ _
 +
6_ ` a b c d e f g h i j k l m n o
 +
7_ p q r s t u v w x y z { | } ~ DEL
 +
Codepage 437
  
  Un 1A est écrit pour marquer la fin du fichier. Cette option est facultative;  le fichier sera lu sans problème si elle est omise.  
+
This table shows the characters that are produced by the 256 single-byte code points when the DOS Latin USA codepage 437 is loaded, which is the default. Code points &h00 and &h20–&h7E are fixed while the other characters, as well as any double-byte characters, can be redefined by loading another codepage.
 +
  _0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
 +
0_ ☺ ☻ ♥ ♦ ♣ ♠ • ◘ ○ ◙ ♂ ♀ ♪ ♫ ☼
 +
1_ ► ◄ ↕ ‼ ¶ § ▬ ↨ ↑ ↓ → ← ∟ ↔ ▲ ▼
 +
2_ ! " # $ % & ' ( ) * + , - . /
 +
3_ 0 1 2 3 4 5 6 7 8 9 : ; < = > ?
 +
4_ @ A B C D E F G H I J K L M N O
 +
5_ P Q R S T U V W X Y Z [ \ ] ^ _
 +
6_ ` a b c d e f g h i j k l m n o
 +
7_ p q r s t u v w x y z { | } ~ ⌂
 +
8_ Ç ü é â ä à å ç ê ë è ï î ì Ä Å
 +
9_ É æ Æ ô ö ò û ù ÿ Ö Ü ¢ £ ¥ ₧ ƒ
 +
A_ á í ó ú ñ Ñ ª º ¿ ⌐ ¬ ½ ¼ ¡ « »
 +
B_ ░ ▒ ▓ │ ┤ ╡ ╢ ╖ ╕ ╣ ║ ╗ ╝ ╜ ╛ ┐
 +
C_ └ ┴ ┬ ├ ─ ┼ ╞ ╟ ╚ ╔ ╩ ╦ ╠ ═ ╬ ╧
 +
D_ ╨ ╤ ╥ ╙ ╘ ╒ ╓ ╫ ╪ ┘ ┌ █ ▄ ▌ ▐ ▀
 +
E_ α ß Γ π Σ σ µ τ Φ Θ Ω δ ∞ φ ε ∩
 +
F_ ≡ ± ≥ ≤ ⌠ ⌡ ÷ ≈ ° ∙ · √ ⁿ ² ■
 +
Keycodes
 +
Scancodes
  
format de fichier cassette
+
PC-BASIC uses PC/XT scancodes, which originated on the 83-key IBM Model F keyboard supplied with the IBM PC 5150. The layout of this keyboard was quite distinct from modern standard keyboards with 101 or more keys, but keys on a modern keyboard produce the same scancode as the key with the same function on the Model F. For example, the key that (on a US keyboard) produces the \ was located next to the left Shift key on the Model F keyboard and has scancode &h2B. The (US) backslash key still has this scancode, even though it is now usually found above the Enter key.
  
Les fichiers sur la cassette sont stockées sous forme sonore à modulation de fréquence. Le format de la charge utile des fichiers sur la cassette est le même que pour les fichiers sur un périphérique de disque, mais les en-têtes sont différents et les fichiers peut être divisé en morceaux. Modulation
+
To further complicate matters, keyboards for different locales have their layout remapped in software rather than in hardware, which means that they produce the same scancode as the key that on a US keyboard is in the same location, regardless of which character they actually produce.
  
A 1-bit est représenté par une seule période d'onde de 1 ms (1000 Hz). A 0-bit est représenté par une seule période d'onde de 0,5 ms (2000 Hz). le format de l'octet
+
Therefore, the A on a French keyboard will produce the same scancode as the Q on a UK or US keyboard. The aforementioned US \ key is identified with the key that is generally found to the bottom left of Enter on non-US keyboards. For example, on my UK keyboard this is the # key. Non-US keyboards have an additional key next to the left Shift which on the UK keyboard is the \. Therefore, while this key is in the same location and has the same function as the Model F \, it has a different scancode.
  
Un octet est envoyé en tant que 8 bits, le plus significatif en premier. Il n'y a pas ou démarrage stopbits. Format d'enregistrement
+
In the table below, the keys are marked by their function on a US keyboard, but it should be kept in mind that the scancode is linked to the position, not the function, of the key.
 +
Key Scancode
 +
Esc 01
 +
1 ! 02
 +
2 @ 03
 +
3 # 04
 +
4 $ 05
 +
5 % 06
 +
6 ^ 07
 +
7 & 08
 +
8 * 09
 +
9 ( 0A
 +
0 ) 0B
 +
- _ 0C
 +
= + 0D
 +
Backspace 0E
 +
Tab 0F
 +
q Q 10
 +
w W 11
 +
e E 12
 +
r R 13
 +
t T 14
 +
y Y 15
 +
u U 16
 +
i I 17
 +
o O 18
 +
p P 19
 +
[ { 1A
 +
] } 1B
 +
Enter 1C
 +
Ctrl 1D
 +
a A 1E
 +
s S 1F
 +
d D 20
 +
f F 21
 +
g G 22
 +
h H 23
 +
j J 24
 +
k K 25
 +
l L 26
 +
; : 27
 +
' " 28
 +
` ~ 29
 +
Left Shift 2A
 +
\ | 2B
 +
z Z 2C
 +
x X 2D
 +
c C 2E
 +
v V 2F
 +
b B 30
 +
n N 31
 +
m M 32
 +
, < 33
 +
. > 34
 +
/ ? 35
 +
Right Shift 36
 +
keypad * PrtSc 37
 +
Alt 38
 +
Space 39
 +
Caps Lock 3A
 +
F1 3B
 +
F2 3C
 +
F3 3D
 +
F4 3E
 +
F5 3F
 +
F6 40
 +
F7 41
 +
F8 42
 +
F9 43
 +
F10 44
 +
Num Lock 45
 +
Scroll Lock Pause 46
 +
keypad 7 Home 47
 +
keypad 8 ↑ 48
 +
keypad 9 Pg Up 49
 +
keypad - 4A
 +
keypad 4 ← 4B
 +
keypad 5 4C
 +
keypad 6 → 4D
 +
keypad + 4E
 +
keypad 1 End 4F
 +
keypad 2 ↓ 50
 +
keypad 3 Pg Dn 51
 +
keypad 0 Ins 52
 +
keypad . Del 53
 +
SysReq 54
 +
\ | (Non-US 102-key) 56
 +
F11 57
 +
F12 58
 +
Left Logo (Windows 104-key) 5B
 +
Right Logo (Windows 104-key) 5C
 +
Menu (Windows 104-key) 5D
 +
ひらがな/カタカナ Hiragana/Katakana (Japanese 106-key) 70
 +
\ _ (Japanese 106-key) 73
 +
変換 Henkan (Japanese 106-key) 79
 +
無変換 Muhenkan (Japanese 106-key) 7B
 +
半角/全角 Hankaku/Zenkaku (Japanese 106-key) 29
 +
¥ | (Japanese 106-key) 7D
 +
한자 Hanja (Korean 103-key) F1
 +
한/영 Han/Yeong (Korean 103-key) F2
 +
\ ? ° (Brazilian ABNT2) 73
 +
keypad . (Brazilian ABNT2) 7E
 +
e-ASCII codes
  
Un fichier est constitué de deux ou plusieurs enregistrements. Chaque enregistrement a le format suivant: Longueur Format Signification 256 octets Tous FF 2048 ms onde pilote à 1000 Hz, utilisé pour l'étalonnage. 1 bit 0 Synchronisation bit. 1 octet 16 (SYN) Synchronisation octet. 256 octets du bloc de données. 2 octets Unsigned 16-bit entier big-endian CRC-16-CCITT checksum. 4 octets Tous FF Fin de marqueur d'enregistrement.
+
Alongside scancodes, most keys also carry a character value the GW-BASIC documentation calls extended ASCII. Since this is a rather overloaded term, we shall use the abbreviation e-ASCII exclusively for these values. The values returned by the INKEY$ function are e-ASCII values.
  
Tokenised, protégées et BSAVE fichiers se composent d'un enregistrement en-tête suivi d'un enregistrement unique qui peut contenir plusieurs blocs de données de 256 octets, chacune suivie par les 2 octets CRC. les fichiers de programme de texte et les fichiers de données se composent d'un enregistrement en-tête suivi par plusieurs enregistrements mono-bloc. Format du bloc d'en-tête Octets Format Signification 1 fiche A5 Header octet magique 8 8 caractères Nom du fichier. 1 Type de fichier. 00 pour le fichier de données, 01 pour vidage de la mémoire, 20 ou A0 pour protéger, 40 pour plaine programme de texte, 80 pour le programme tokenised. 2 Unsigned 16 bits little-endian entier Longueur du prochain enregistrement de données, en octets. 2 Unsigned 16-bit little-endian segment entier de l'emplacement de mémoire. 2 Unsigned 16-bit entier little-endian Décalage de l'emplacement de mémoire. 1 00 Fin des données d'en-tête 239 Tous les 01 format de bloc de remplissage de données Octets Format Signification 1 8-bit entier non signé Nombre d'octets de charge utile dans le dernier enregistrement, plus un. Si zéro, l'enregistrement suivant est pas le dernier enregistrement. 255 données utiles. Si tel est le dernier enregistrement, tous les octets non utilisés sont remplis en répétant le dernier octet de la charge utile. Les codes de caractères
+
e-ASCII codes are one or two bytes long; single-byte codes are simply ASCII codes whereas double-byte codes consist of a NUL character plus a code indicating the key pressed. Some, but certainly not all, of these codes agree with the keys' scancodes.
  
Selon le contexte, PC-BASIC traitera un point dans le contrôle des caractères vont comme un caractère de contrôle ou comme un glyphe défini par le codepage actif qui par défaut est codepage 437. points de & h80 ou plus de code sont toujours interprétées comme un glyphe codepage Code . ASCII
+
Unlike scancodes, e-ASCII codes of unmodified keys and those of keys modified by Shift, Ctrl or Alt are all different.
  
Voici une liste de l'American Standard Code for Information Interchange (ASCII). ASCII couvre uniquement les 128 caractères et définit les plages de points de code et h00- & H1F et & H7F comme des caractères de commande qui ne comportent pas un glyphe imprimable qui leur est assignée. Cela inclut des valeurs telles que le caractère de retour chariot (CR) qui met fin à une ligne de programme.
+
Unmodified, Shifted and Ctrled e-ASCII codes are connected to a key's meaning, not its location. For example, the e-ASCII for Ctrl+a are the same on a French and a US keyboard. By contrast, the Alted codes are connected to the key's location, like scancodes. The US keyboard layout is used in the table below.
 +
Key e-ASCII e-ASCII Shift e-ASCII Ctrl e-ASCII Alt
 +
Esc 1B 1B 1B
 +
1 ! 31 21 00 78
 +
2 @ 32 40 00 03 00 79
 +
3 # 33 23 00 7A
 +
4 $ 34 24 00 7B
 +
5 % 35 25 00 7C
 +
6 ^ 36 5E 1E 00 7D
 +
7 & 37 26 00 7E
 +
8 * 38 2A 00 7F
 +
9 ( 39 28 00 80
 +
0 ) 30 29 00 81
 +
- _ 2D 5F 1F 00 82
 +
= + 3D 2B 00 83
 +
Backspace 08 08 7F 00 8C
 +
Tab 09 00 0F 00 8D 00 8E
 +
q Q 71 51 11 00 10
 +
w W 77 57 17 00 11
 +
e E 65 45 05 00 12
 +
r R 72 52 12 00 13
 +
t T 74 54 14 00 14
 +
y Y 79 59 19 00 15
 +
u U 75 55 15 00 16
 +
i I 69 49 09 00 17
 +
o O 6F 4F 0F 00 18
 +
p P 70 50 10 00 19
 +
[ { 5B 7B 1B
 +
] } 5D 7D 1D
 +
Enter 0D 0D 0A 00 8F
 +
a A 61 41 01 00 1E
 +
s S 73 53 13 00 1F
 +
d D 64 44 04 00 20
 +
f F 66 46 06 00 21
 +
g G 67 47 07 00 22
 +
h H 68 48 08 00 23
 +
j J 6A 4A 0A 00 24
 +
k K 6B 4B 0B 00 25
 +
l L 6C 4C 0C 00 26
 +
; : 3B 3A
 +
' " 27 22
 +
` ~ 60 7E
 +
\ | 5C 7C 1C
 +
z Z 7A 5A 1A 00 2C
 +
x X 78 58 18 00 2d
 +
c C 63 43 03 00 2E
 +
v V 76 56 16 00 2F
 +
b B 62 42 02 00 30
 +
n N 6E 4E 0E 00 31
 +
m M 6D 4D 0D 00 32
 +
, < 2C 3C
 +
. > 2E 3E
 +
/ ? 2F 3F
 +
PrtSc 00 72 00 46
 +
Space 20 20 20 00 20
 +
F1 00 3B 00 54 00 5E 00 68
 +
F2 00 3C 00 55 00 5F 00 69
 +
F3 00 3D 00 56 00 60 00 6A
 +
F4 00 3E 00 57 00 61 00 6C
 +
F5 00 3F 00 58 00 62 00 6D
 +
F6 00 40 00 59 00 63 00 6E
 +
F7 00 41 00 5A 00 64 00 6F
 +
F8 00 42 00 5B 00 65 00 70
 +
F9 00 43 00 5C 00 66 00 71
 +
F10 00 44 00 5D 00 67 00 72
 +
F11 (Tandy) 00 98 00 A2 00 AC 00 B6
 +
F12 (Tandy) 00 99 00 A3 00 AD 00 B7
 +
Home 00 47 00 47 00 77
 +
End 00 4F 00 4F 00 75
 +
PgUp 00 49 00 49 00 84
 +
PgDn 00 51 00 51 00 76
 +
↑ 00 48 00 48
 +
← 00 4B 00 87 00 73
 +
→ 00 4D 00 88 00 74
 +
↓ 00 50 00 50
 +
keypad 5 35 35 05
 +
Ins 00 52 00 52
 +
Del 00 53 00 53
 +
Acknowledgements
 +
Contributors
  
Dans le cadre de cette documentation, le caractère & H1A (SUB) sera généralement indiquée comme EOF car il joue le rôle de marqueur de fin de fichier dans DOS.
+
PC-BASIC would not exist without those contributing code, reporting bugs, sending in patches, and documenting GW-BASIC's behaviour. Thank you all!
  
  _0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
+
    Rob Hagemans, lead author
 +
    Wengier Wu, bug fixes, advice for CJK support
 +
    WJB, bug fixes
 +
    Jan Bredenbeek, bug fixes, advice for BASICODE support
 +
    Ronald Herrera, testing, bug hunting
 +
    Miguel Dorta, testing, serial ports
 +
    Patrik, testing, serial ports
 +
    Duane, testing, serial ports
  
0_ NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF CR SO SI 1_ DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US 2_! "# $% & '() * +, - / 3_ 0 1 2 3 4 5 6 7 8 9:;. <? => 4_ @ ABCDEFGHIJKLMNO 5_ PQRSTUVWXYZ [\] ^ _ 6_` abcdefghijklmno 7_ pqrstuvwxyz {|} ~ DEL Codepage 437
+
Shoulders of Giants
  
Ce tableau montre les caractères qui sont produits par les 256 points de code d'un octet lorsque le DOS Latin USA codepage 437 est chargé, ce qui est la valeur par défaut. points de code & h00 et & h20- & H7E sont fixés, tandis que les autres personnages, ainsi que tous les caractères à deux octets, peuvent être redéfinis en chargeant un autre codepage.
+
PC-BASIC depends on the following open-source projects:
  
  _0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
+
     Python
 
+
0_ ☺ ☻ ♥ ♦ ♣ ♠ • ◘ ○ ◙ ♂ ♀ ♪ ♫ ☼ 1_ ► ◄ ↕! ¶ § ▬ ↨ ↑ ↓ → ← ∟ ↔ ▲ ▼ 2_! "# $% & '() * +, - / 3_ 0 1 2 3 4 5 6 7 8 9:;. <? => 4_ @ ABCDEFGHIJKLMNO 5_ PQRSTUVWXYZ [\] ^ _ 6_` abcdefghijklmno 7_ pqrstuvwxyz {|} ~ ⌂ 8_ ç ü é A A A A ç ê ë è i i i Ä Å 9_ é æ Æ ó ó ó û ù ÿ Ö ü ¢ ¥ £ ₧ ƒ A_ á í ó ú ñ ñ ª º ¿⌐ ¬ ½ ¼ ¡ «» B_ ░ ▒ ▓ │ ┤ ╡ ╢ ╖ ╕ ╣ ║ ╗ ╝ ╜ ╛ ┐ C_ └ ┴ ┬ ├ ─ ┼ ╞ ╟ ╚ ╔ ╩ ╦ ╠ ═ ╬ ╧ D_ ╨ ╤ ╥ ╙ ╘ ╒ ╓ ╫ ╪ ┘ ┌ █ ▄ ▌ ▐ ▀ E_ α ß Γ π Σ σ μ τ Φ Θ Ω δ ∞ φ ε ∩ F_ ≡ ± ≥ ≤ ⌠ ⌡ ÷ ≈ ° ∙ · √ ⁿ ² ■ scancodes codes d'activation
+
 
+
PC-BASIC utilise scancodes PC / XT, qui proviennent de la 83-clé IBM Modèle F clavier fourni avec le PC IBM 5150. La mise en page de ce clavier était tout à fait distinct de claviers standards modernes avec 101 touches ou plus, mais les touches d'un moderne clavier produire le même scancode que la clé avec la même fonction sur le modèle F. par exemple, la clé (sur un clavier US) produit le \ a été situé à côté de la touche Maj gauche sur le clavier Modèle F et a scancode & H2B. Le (US) touche backslash a encore cette scancode, même si elle est maintenant généralement trouvé au-dessus de la touche Entrée.
+
 
+
Pour compliquer encore les choses, claviers pour différents paramètres régionaux ont leur disposition recartographiée dans le logiciel plutôt que dans le matériel, ce qui signifie qu'ils produisent le même scancode que la clé sur un clavier américain est dans le même emplacement, quel que soit le caractère qu'ils produisent effectivement.
+
 
+
Par conséquent, l'un sur un clavier français produira le même scancode que le Q sur un clavier Royaume-Uni ou des États-Unis. Le document US \ clé est identifié avec la clé qui se trouve généralement en bas à gauche de Enter sur les claviers non américains. Par exemple, sur mon clavier UK ceci est la touche #. claviers américains ont une clé supplémentaire à côté de la touche Maj gauche qui sur le clavier du Royaume-Uni est le \. Par conséquent, alors que cette clé est dans le même emplacement et a la même fonction que le modèle F \, il a un scancode différent.
+
 
+
Dans le tableau ci-dessous, les touches sont marquées par leur fonction sur un clavier américain, mais il faut garder à l'esprit que le scancode est lié à la position, pas la fonction, de la clé. Scancode Key Esc 01 1! 02 2 @ 03 3 # 04 4 $ 05 5% 06 6 ^ 07 7 & 08 8 * 09 9 (0A 0) 0B - _ 0C = + 0D Backspace 0E Tab 0F q Q 10 w W 11 e E 12 r R 13 t T 14 y Y 15 u U 16 i I 17 o O 18 p P 19 [{1A]} 1B Entrez 1C Ctrl 1D S 1F d de D d'un a 1E 20 f F 21 g g 22 h h 23 j J 24 k K 25 l L 26
+
 
+
     27
+
 
+
' "28` ~ 29 Maj gauche 2A \ |? 2B z Z 2C x X 2D c C 2F v V 2F b B 30 n N 31 m M 32, 34/35 droite du clavier Maj 36 <. 33> * PrtSc 37 Alt 38 espace 39 Caps Lock 3A F1 3B F2 3C F3 3D F4 3E F5 3F F6 40 F7 41 F8 42 F9 43 F10 44 Num Lock 45 Scroll Lock Pause du clavier 46 7 Home 47 clavier 9 Pg Up 49 clavier 8 ↑ 48 clavier - clavier 4A 4 ← 4B clavier 5 4C clavier 6 → clavier + 4E clavier clavier 4F 1 Fin 4D 2 ↓ 50 clavier 3 Pg Dn 51 clavier 0 Ins 52 touches Del 53 SysReq 54 \ |. (non-US 102 touches) 56 F11 57 F12 58 Logo gauche (Windows 104 touches) 5B Right Logo (Windows 104 touches) 5C Menu (Windows 104 touches) 5D ひ ら が な / カ タ カ ナ Hiragana / Katakana (japonais 106 touches) 70 \ _ (106 japonais-clé) 73 変 換Henkan (106 japonais-clé) 79 無 変 換 Muhenkan (106 japonais-clé) 7B 半角 / 全 角 Hankaku / Zenkaku (106 japonais-clé) 29 ¥ | (106 japonais-clé) 7D 한자 Hanja (Korean 103-clé) F1 한 / 영 Han / Yeong (103-clé coréen) F2 \? ° (Brazilian ABNT2) 73 clavier. (Brésil) ABNT2 codes 7E e-ASCII
+
 
+
A côté de scancodes, la plupart des touches portent également une valeur de caractère de la documentation GW-BASIC appelle ASCII étendu. Depuis ce terme est plutôt surchargé, nous utilisons l'abréviation e-ASCII exclusivement pour ces valeurs. Les valeurs renvoyées par la fonction INKEY de $ sont des valeurs e-ASCII.
+
 
+
e codes ASCII sont un ou deux octets de long; codes mono-octet sont tout simplement des codes ASCII alors que les codes à deux octets sont constitués d'un caractère NUL plus un code indiquant la touche enfoncée. Certains, mais certainement pas tous, de ces codes sont d'accord avec les scancodes des touches.
+
 
+
Contrairement à scancodes, codes e-ASCII des touches non modifiées et celles des touches modifiées par Shift, Ctrl ou Alt sont tous différents.
+
 
+
Unmodified, Shifted et codes Ctrled e-ASCII sont reliés à la signification d'une clé, et non son emplacement. Par exemple, l'e-ASCII Ctrl + a sont les mêmes sur un français et un clavier américain. En revanche, les codes Alted sont reliés à l'emplacement de la clé, comme scancodes. La disposition du clavier US est utilisé dans le tableau ci-dessous. Key e-ASCII e-ASCII Maj e-ASCII Ctrl e-ASCII Alt Esc 1B 1B 1B 1! 31 21 00 78 2 @ 32 40 00 03 00 79 3 # 33 23 00 7A 4 $ 34 24 00 7B 5% 35 25 00 7C 6 ^ 36 5E 1E 00 7D 7 & 37 26 00 7E 8 * 38 2A 00 7F 9 (39 28 00 80 0) 30 29 00 81 - _ 2D 5F 1F 00 82 = + 3D 2B 00 83 Backspace 08 08 7F 00 8C Tab 09 00 0F 00 8D 00 8E q Q 71 51 11 00 10 w W 77 57 17 00 11 e e 65 45 05 00 12 r R 72 52 12 00 13 t T 74 54 14 00 14 y Y 79 59 19 00 15 u U 75 55 15 00 16 i I 69 49 09 00 17 o O 6F 4F 0F 00 18 p P 70 50 10 00 19 [{5B 7B 1B]} 5D 7D 1D Entrez 0D 0D 0A 00 8F a a 61 41 01 00 1E s s 73 53 13 00 1F d D 64 44 04 00 20 f F 66 46 06 00 21 g g 67 47 07 00 22 h 68 h 48 08 00 23 j J 6A 4A 0A 00 24 k K 6B 4B 0B 00 25 l L 6C 4C 0C 00 26
+
 
+
    3B 3A
+
 
+
' "27 22` ~ 60 7E \ | 5C 7C 1C z Z 7A 5A 1A 00 2C x X 78 58 18 00 2d c C 63 43 03 00 2F v V 76 56 16 00 2F b B 62 42 02 00 30 n N 6E 4E 0E 00 31 m m 6D 4D 0D 00 32, <2C 3C.> 2E 3E /? 2F 3F PrtSc 00 72 00 46 espace 20 20 20 00 20 F1 00 3B 00 54 00 5E 00 68 F2 00 3C 00 55 00 5F 00 69 F3 00 3D 00 56 00 60 00 6A F4 00 3E 00 57 00 61 00 6C F5 00 3F 00 58 00 62 00 6D F6 00 40 00 59 00 63 00 6E F7 00 41 00 5A 00 64 00 6F F8 00 42 00 5B 00 65 00 70 F9 00 43 00 5C 00 66 00 71 F10 00 44 00 5D 00 67 00 72 F11 (Tandy) 00 98 00 A2 00 AC 00 B6 F12 (Tandy) 00 99 00 A3 00 AD 00 B7 Accueil 00 47 00 47 00 77 Fin 00 4F 00 4F 00 75 PgUp 00 49 00 49 00 84 PgDn 00 51 00 51 00 76 ↑ 00 48 00 48 ← 00 4B 00 87 00 73 → 00 4D 00 88 00 74 ↓ 00 50 00 50 clavier 5 35 35 05 Ins 00 52 00 52 Del 00 53 00 53 Remerciements Collaborateurs
+
 
+
PC-BASIC ne serait pas exister sans les codes contribuant, signaler les bogues, envoyant des patches, et documenter le comportement de GW-BASIC. Merci à tous!
+
 
+
  Rob Hagemans, auteur principal
+
    Wengier Wu, des corrections de bugs, des conseils pour le soutien CJK
+
    WJB, corrections de bugs
+
    Jan Bredenbeek, des corrections de bugs, des conseils pour le soutien de BASICODE
+
    Ronald Herrera, les tests, la chasse aux bugs
+
    Miguel Dorta, les essais, les ports série
+
    Patrik, les essais, les ports série
+
    Duane, les essais, les ports série
+
 
+
Épaules des géants
+
 
+
PC-BASIC dépend des projets open-source suivants:
+
 
+
  python
+
 
     PyGame
 
     PyGame
 
     Simple DirectMedia Layer (SDL)
 
     Simple DirectMedia Layer (SDL)
 
     NumPy
 
     NumPy
 
     PyXDG
 
     PyXDG
     Python pour les extensions de Windows (pywin32)
+
     Python for Windows Extensions (PyWin32)
     pyserial
+
     PySerial
     pexpect
+
     PExpect
     ANSI | tuyau
+
     ANSI|pipe
  
==Documentation technique ==
+
Technical Documentation
  
Bâtiment PC-BASIC aurait été impossible sans les immenses quantités de documentation technique qui a été mis à disposition en ligne. Il a prouvé ne pas être possible d'établir une liste complète de la documentation utilisée. Un grand merci à tous ceux qui font de l'information technique disponible gratuitement, et des excuses à ceux dont la contribution que je l'ai pas reconnu ici.  
+
Building PC-BASIC would have been impossible without the immense amounts of technical documentation that has been made available online. It has proven not to be feasible to compile a complete list of the documentation used. Many thanks to all those who make technical information freely available, and apologies to those whose contribution I have failed to acknowledge here.
 +
GW-BASIC tokenised file format
  
===format de fichier tokenised GW-BASIC===
+
    Norman De Forest's seminal documentation of GW-BASIC tokens. This documentation was the starting point for the development of PC-BASIC.
 +
    Dan Vanderkam's online GW-BASIC decoder
  
  Norman De Forest Documentation séminale de jetons GW-BASIC.  Cette documentation a été le point de départ pour le développement de PC-BASIC.
+
GW-BASIC protected file format
    en ligne décodeur GW-BASIC Dan Vanderkam
+
  
===format de fichier protégé GW-BASIC===
+
    Paul Kocher, The Cryptogram computer supplement 19, American Cryptogram Association, Summer 1994
  
  Paul Kocher, Le supplément d'ordinateur cryptogramme 19, American cryptogramme Association, Été 1994
+
Video hardware
  
Matériel vidéo
+
    John Elliott's Vintage PC pages
 
+
     Dan Rollins' TechHelp pages on PC video memory layout
  pages PC vintage de John Elliott
+
     Great Hierophant's Nerdly Pleasures Blog
     Les pages de TechHelp Dan Rollins sur la mise en page de mémoire vidéo PC
+
     Great Blog Nerdly Pleasures Hierophant
+
  
 
Microsoft Binary Format
 
Microsoft Binary Format
  
  contributions de forum par Julian Brucknall et Adam Burgoyne
+
    Forum contributions by Julian Brucknall and Adam Burgoyne
  
le format de cassette de données
+
Data cassette format
  
  L'analyse de Mike Brutman du format de la cassette de données IBM PC
+
    Mike Brutman's Analysis of the IBM PC data cassette format
     IBM PC des données de cassette Format documentation de Dan Tobias
+
     Dan Tobias' IBM PC data cassette format documentation
  
 
BASICODE
 
BASICODE
  
  la documentation de Janny Looyenga du format BASICODE
+
    Janny Looyenga's documentation of the BASICODE format
     la documentation du Prof. Dr. Horst Völz du format de fichier de cassette BASICODE
+
     Prof. Dr. Horst Völz's documentation of the BASICODE cassette file format
  
Les ports série
+
Serial ports
  
  la documentation de Craig Peacock sur l'interface entre le port série
+
    Craig Peacock's documentation on interfacing the serial port
     tutoriel de Christopher E. Strangio sur la norme RS232
+
     Christopher E. Strangio's tutorial on the RS232 standard
     documentation QB64
+
     QB64 documentation
  
Informations techniques sur de nombreux sujets
+
Technical information on many topics
  
  Vogons
+
    VOGONS
     forums informatiques de cru Erik S. Klein
+
     Erik S. Klein's vintage computer forums
     Le site QBasic / QuickBasic Pete Peter Berg
+
     Peter Berg's Pete's QBasic/QuickBasic site
  
Polices
+
Fonts
  
  pack codepage CPIDOS de Henrique Peron
+
    Henrique Peron's CPIDOS codepage pack
     La police Uni-VGA Dmitry Bolkhovityanov
+
     Dmitry Bolkhovityanov's Uni-VGA font
     Roman Czyborra, Qianqian Fang et GNU unifont d'autres
+
     Roman Czyborra, Qianqian Fang and others' GNU UniFont
     polices DOSBox VGA
+
     DOSBox VGA fonts
     CPI police format de fichier de documentation Andries Brouwer
+
     Andries Brouwer's CPI font file format documentation
  
mappages Unicode-codepage
+
Unicode-codepage mappings
  
  Le Consortium Unicode et contributeurs
+
    The Unicode Consortium and contributors
     Projet GNU
+
     GNU libiconv Project
 
     Aivosto
 
     Aivosto
     Charsets Index Konstantinos Kostis de
+
     Konstantinos Kostis' Charsets Index
 
     IBM CDRA
 
     IBM CDRA
     Camellia Masaki Tojo
+
     Masaki Tojo's Camellia
  
Bibliographie
+
Bibliography
  
  Guide de GW-BASIC 3.23 utilisateur, Microsoft Corporation, 1987.
+
    GW-BASIC 3.23 User's Guide, Microsoft Corporation, 1987.
 
     IBM Personal Computer Hardware Reference Library: BASIC, IBM, 1982.
 
     IBM Personal Computer Hardware Reference Library: BASIC, IBM, 1982.
     Tandy 1000 BASIC, Guide de référence, Tandy Corporation.
+
     Tandy 1000 BASIC, A Reference Guide, Tandy Corporation.
     William Barden, Jr., Graphics and Sound pour les 1000s Tandy et PC Compatibles, Microtrend 1987.
+
     William Barden, Jr., Graphics and Sound for the Tandy 1000s and PC Compatibles, Microtrend, 1987.
     Don Inman et Bob Albrecht, La Référence GW-BASIC, Osborne McGraw-Hill, 1990.
+
     Don Inman and Bob Albrecht, The GW-BASIC Reference, Osborne McGraw-Hill, 1990.
     Thomas C. McIntyre, BLEU: Langue BASIC Essai de l'utilisateur, 1991, disponible en ligne.
+
     Thomas C. McIntyre, BLUE: BASIC Language User Essay, 1991, available online.
  
Outils de développement
+
Development tools
  
PC-BASIC est développé en utilisant Git contrôle de code source, gEdit et Atom éditeurs de texte sur un système Ubuntu Linux et hébergé sur GitHub et SourceForge.
+
PC-BASIC is developed using Git source control, GEdit and Atom text editors on an Ubuntu Linux system and hosted on GitHub and SourceForge.
  
Emballage et documentation dépend des projets suivants:
+
Packaging and documentation depends on the following projects:
  
  PyInstaller
+
    PyInstaller
     Nullsoft Scriptable Système d'installation
+
     Nullsoft Scriptable Install System
 
     7-Zip
 
     7-Zip
     Le système GNU de base
+
     The GNU Base System
     Pygame Subset Tom Rothamel pour Android (remplacé par RAPT)
+
     Tom Rothamel's Pygame Subset for Android (superseded by RAPT)
 
     LXML
 
     LXML
     Réduction
+
     Markdown
  
Emulateurs
+
Emulators
  
Ces excellents émulateurs ont été des outils indispensables pour documenter le comportement des différents dialectes Microsoft BASIC.
+
These excellent emulators have been indispensable tools in documenting the behaviour of various Microsoft BASIC dialects.
  
  DOSBox
+
    DOSBox
     DÉSORDRE
+
     MESS
 
     PCE PC Emulator
 
     PCE PC Emulator
  
Licences PC-BASIC interprète
+
Licences
 
+
PC-BASIC interpreter
Copyright © 2013-2016 Rob Hagemans.
+
 
+
Code promo valide chez Source https://github.com/robhagemans/pcbasic .
+
 
+
Ce programme est un logiciel libre: vous pouvez le redistribuer et / ou le modifier selon les termes de la GNU General Public License telle que publiée par la Free Software Foundation, soit la version 3 de la licence, ou (à votre choix) toute version ultérieure.
+
 
+
Ce programme est distribué dans l'espoir qu'il sera utile, mais SANS AUCUNE GARANTIE; sans même la garantie implicite de COMMERCIALISATION ou D'ADAPTATION À UN USAGE PARTICULIER. Voir la GNU General Public License pour plus de détails.
+
 
+
Vous devriez avoir reçu une copie de la GNU General Public License avec ce programme; sinon, écrivez à la Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. documentation PC-BASIC
+
 
+
Copyright © 2014-2016 Rob Hagemans.
+
 
+
Ce travail est distribué sous licence Creative Commons Attribution-ShareAlike 4.0 License International.
+
Menu de navigation
+
 
+
    français
+
    Créer un compte Tarifs
+
    Se connecter
+
 
+
    Page
+
    Discussion
+
 
+
    Lire
+
    Modificateur
+
    Modifier le wikicode
+
    Historique
+
 
+
    Accueil
+
    Aide
+
    L'Agora
+
    Requête aux admins
+
    modifications Récentes
+
  
Liens Utiles
+
Copyright © 2013—2016 Rob Hagemans.
  
    Outils numérique s
+
Source code available at https://github.com/robhagemans/pcbasic.
    Participer
+
    Liste de diffusion
+
    bavarder
+
    Ressources
+
    Revue de presse
+
  
Sur le web
+
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
  
    nuitdebout.fr
+
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
    @nuitdebout
+
    @wiki_nuitdebout
+
    #NuitDebout
+
    Facebook
+
    Diaspora
+
    Tumblr
+
    Reddit
+
    Radio Debout
+
    TV Debout
+
    Ordre du jour
+
    Les questions
+
    Carte des Rassemblements
+
  
Outils
+
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 +
PC-BASIC documentation
  
    Pages liées
+
Copyright © 2014—2016 Rob Hagemans.
    Suivi des pages Liées
+
    Pages spéciales
+
    Version imprimable
+
    Adresse version of this
+
    Informations sur la page
+
    Sous-pages
+
  
    Dernière modification de cette page L'le 9 août 2016 à 15:07.
+
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
    Le contenu is available sous licence Creative Commons paternité partage à l'Identique 3.0 Sauf mention Contraire.
+
    Le logo Nuit Debout de Sébastien Marchal AINSI Que sa typographie sous licence are Creative Commons BY-NC-ND 4.0.
+

Avertissement : Toutes les contributions au wiki NuitDebout sont considérées comme publiées sous les termes de la licence Creative Commons attribution partage à l'identique 3.0.

Annuler | Aide (ouvre une nouvelle fenêtre)