Microsoft Basic 1.0
BASIC 1.0 is the standard BASIC language for Thomson computers, which is the reference for the entire range. This is an implementation of Microsoft BASIC.
It was used to introduce children from France to programming in the 1980s. Three languages were mainly taught: LSE, BASIC and LOGO. School textbooks programs were given in BASIC 1.0 for Thomson and sometimes in ExelBasic for the Exelvision EXL 100.
The first version came with the TO7 computer, released in 1982. On the MO5, the instruction set is reduced and the double precision is not implemented, so that the interpreter fits in only 12 KB of ROM, instead of 16 KB on the TO7.
An upgraded version was produced under the name of BASIC 128, for the TO7-70, TO9, MO5NR and MO6. It included commands for disc operations and other new instructions.
On the TO8/8D and TO9+, an even more upgraded version under the name of BASIC 512 was provided.''''''
Keywords
BASIC 1.0 interpreter recognizes the usual commands such asFOR..NEXT, GOSUB..RETURN, IF..THEN..ELSE, and DATA / READ / RESTORE statements. Advanced instructions like ON..GOTO and ON..GOSUB were also possible.?- Alias toPRINT'- Alias toREMATTRB- Character attributesBOX -- Draws a rectangleBOXF -,color- Fills a rectangle with the given color. Negative colors lead to filling with the requested color as the background one.CLS- Clear screenCOLOR foreground, background- Change pen colorsCONSOLEDELETEEND- Ends program executionFOR v=s TO e STEP n- FOR loop, incrementing v by n each time until it reaches e. The STEP is optional and can be negative.GOTO line- Jump to program lineIF a THENstatement ELSE statement - ConditionsINPUT “message”;variable1,variable2- Set variables to user-entered values. A ? is printed after the message and before reading the values from the user.LINE -- Draws a lineLIST line- List the program in memoryLOCATE x,y- Move the cursorNEW- New program, remove current one from memoryNEXT v- Closes FOR loop.PLAY s$- Plays music. The string is made of notes DO,RE,MI,FA,SO,LA,SI, octave changes, note duration changes, silences, tempo changes, attack settings. Spaces are ignored and can be used for readabilityPRINT value- Prints a valuePRINT USINGPSET- Set a pixelREM- Comments. Anything following this on the line is ignored.RUN- run the programSCREEN foreground,background,border- Change colors for whole screenCOSINTINSTRLEFT$- Get a substring of the N first chars of SLENMID$RIGHT$- Get a substring of the N last chars of SRND- Random value between 0 and 1SINSTR$VAL+- Addition, string concatenation-*/MOD@- Integer division=- Assignment, equality^