Jump to content

Microsoft Basic 1.0

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Gjs238 (talk | contribs) at 13:22, 21 May 2017 (-Category:Thomson; -Category:French computers using HotCat). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

BASIC 1.0 is the standard BASIC language for Thomson computers (MO5, TO7, etc.), which is the reference for the entire range[1]. This is an implementation of Microsoft BASIC.

BASIC 1.0 interpreter recognizes the usual commands such as FOR..NEXT, GOSUB..RETURN, IF..THEN..ELSE, and DATA / READ / RESTORE statements. Advanced instructions like ON..GOTO and ON..GOSUB were also possible.

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.

Keywords[2]

  • ? - Alias to PRINT
  • ' - Alias to REM
  • ATTRB - Character attributes
  • BOX (x1,y1)-(x2,y2) - Draws a rectangle (the top left pixel is (0,0)
  • BOXF (x1,y1)-(x2,y2),color - Fills a rectangle with the given color (optional, if not given use the current pen color). Negative colors lead to filling with the requested color as the background one.
  • CLS - Clear screen
  • COLOR foreground,background - Change pen colors (parameters are optional)
  • CONSOLE
  • DELETE
  • END - Ends program execution
  • FOR v=s TO e STEP n - FOR loop, incrementing v by n each time until it reaches e. The STEP is optional (default is 1) and can be negative.
  • GOTO line - Jump to program line
  • IF a THEN statement ELSE statement - Conditions (the statement can be just a line number)
  • INPUT “message”;variable1,variable2 - Set variables to user-entered values (comma separated). A ? is printed after the message and before reading the values from the user.
  • LINE (x1,y1)-(x2,y2) - Draws a line (first point is optional, current cursor position is used: LINE -(x2,y2))
  • LIST line - List the program in memory (parameter is optional, if missing the whole program is listed)
  • LOCATE x,y - Move the cursor
  • NEW - New program, remove current one from memory
  • NEXT v - Closes FOR loop.
  • PLAY s$ - Plays music. The string is made of notes DO,RE,MI,FA,SO,LA,SI (with # and b modifiers), octave changes (O1-O5), note duration changes (L1-L96), silences (P), tempo changes (T1-T256), attack settings (A0-A255). Spaces are ignored and can be used for readability
  • PRINT value - Prints a value (if the value is suffixed with a ; insert a tabulation after it. else goes to next line)
  • PRINT USING
  • PSET(x,y) - Set a pixel
  • REM - Comments (REMark). Anything following this on the line is ignored.
  • RUN - run the program
  • SCREEN foreground,background,border - Changecolors for whole screen
  • COS(v)
  • INT(v)
  • INSTR
  • LEFT$(s$,n) - Get a substring of the N first chars of S
  • LEN(s$)
  • MID$
  • RIGHT$(s$,n) - Get a substring of the N last chars of S
  • RND - Random value between 0 and 1
  • SIN(v)
  • STR$
  • VAL
  • + - Addition, string concatenation*-
  • /
  • MOD
  • @ - Integer division
  • = - Assignment, equality
  • ^

References