Microsoft Basic 1.0

BASIC 1.0
Initial release 1982 ; 41 år sedan ( 1982 )
Stabil frisättning
BASIC 512 / 1986 ; 37 år sedan ( 1986 )
Plattform Thomson datorer
Typ Microsoft BASIC

BASIC 1.0 är standardspråket BASIC för Thomson-datorer ( MO5 , TO7 , etc.), som är referensen för hela sortimentet. Detta är en implementering av Microsoft BASIC (BASIC-69). Den användes för att introducera barn från Frankrike till programmering på 1980-talet (se Computing for All , en fransk regeringsplan från 1985 för att introducera datorer för landets 11 miljoner elever). Tre språk undervisades huvudsakligen: LSE , BASIC och LOGO . Skolbokprogram gavs i BASIC 1.0 för Thomson och ibland i ExelBasic för Exelvision EXL 100 .

Den första versionen kom med TO7-datorn, släppt 1982. På MO5 (släpptes 1984 men med mindre ROM) är instruktionsuppsättningen reducerad och den dubbla precisionen är inte implementerad, så att tolken får plats i endast 12 KB ROM , istället för 16 KB på TO7.

En uppgraderad version producerades under namnet BASIC 128 , för TO7-70 , TO9 , MO5NR och MO6 . Den inkluderade kommandon för skivoperationer och andra nya instruktioner.

TO8/8D och TO9+ tillhandahölls en ännu mer uppgraderad version under namnet BASIC 512 .

Nyckelord

BASIC 1.0-tolken känner igen de vanliga kommandona som FOR .. NEXT , GOSUB .. RETURN , IF .. THEN .. ELSE , och DATA / READ / RESTORE -satser. Avancerade instruktioner som ON .. GOTO och ON .. GOSUB var också möjliga.

  • ? - Alias ​​till PRINT
  • ' - Alias ​​till REM
  • ATTRB - Karaktärsattribut
  • BOX (x1,y1)-(x2,y2) - Ritar en rektangel (den övre vänstra pixeln är (0,0)
  • BOXF (x1,y1)-(x2,y2),färg - Fyller en rektangel med den givna färgen (valfritt, använd den aktuella pennfärgen om den inte anges). Negativa färger leder till fyllning med den önskade färgen som bakgrundsfärg.
  • CLS - Rensa skärm
  • FÄRG förgrund, bakgrund - Ändra pennfärger (parametrar är valfria)
  • TRÖSTA
  • RADERA
  • END - Avslutar programexekveringen
  • FÖR v=s TO e STEG n - FOR loop, ökar v med n varje gång tills den når e. STEG är valfritt (standard är 1) och kan vara negativt.
  • GOTO-rad - Hoppa till programrad
  • IF en THEN- sats ELSE-sats - Villkor (satsen kan bara vara ett radnummer)
  • INPUT “meddelande”;variable1,variable2 - Ställ in variabler till användarinmatade värden (kommaseparerade). A ? skrivs ut efter meddelandet och innan läsning av värdena från användaren.
  • LINE (x1,y1)-(x2,y2) - Ritar en linje (första punkten är valfri, aktuell markörposition används: LINE -(x2,y2))
  • LIST-rad - Lista programmet i minnet (parametern är valfri, om det saknas är hela programmet listat)
  • LOCATE x,y - Flytta markören
  • NYTT - Nytt program, ta bort nuvarande från minnet
  • NÄSTA v - Stänger FOR-slingan.
  • PLAY s$ - Spelar musik. Strängen är gjord av noterna DO,RE,MI,FA,SO,LA,SI (med # och b modifierare), oktavändringar (O1-O5), ändringar av tonlängd (L1-L96), tystnader (P), tempo ändringar (T1-T256), attackinställningar (A0-A255). Mellanslag ignoreras och kan användas för läsbarhet
  • PRINT-värde - Skriver ut ett värde (om värdet har suffix med en ; infoga en tabell efter det. annars går det till nästa rad)
  • SKRIV UT MED
  • PSET(x,y) - Ställ in en pixel
  • REM - Kommentarer (REMark). Allt som följer detta på linjen ignoreras.
  • KÖR - kör programmet
  • SKÄRM förgrund, bakgrund, kant - Ändra färger för hela skärmen
  • COS(v)
  • På tv)
  • INSTR
  • LEFT$(s$,n) - Få en delsträng av de N första tecknen i S
  • LEN(s$)
  • MID$
  • RIGHT$(s$,n) - Få en delsträng av de N sista tecknen i S
  • RND - Slumpmässigt värde mellan 0 och 1
  • SIN(v)
  • STR$
  • VAL
  • + - Tillägg, strängsammansättning
  • -
  • *
  • /
  • MOD
  • @ - Heltalsdivision
  • = - Uppdrag, jämställdhet
  • ^