Английская Википедия:Galaksija BASIC
Шаблон:Infobox software Galaksija BASIC was the BASIC interpreter of the Galaksija build-it-yourself home computer from Yugoslavia. While being partially based on code taken from TRS-80 Level 1 BASIC, which the creator believed to have been a Microsoft BASIC,[1] the extensive modifications of Galaksija BASIC—such as to include rudimentary array support, video generation code (as the CPU itself did it in absence of dedicated video circuitry) and generally improvements to the programming language—is said to have left not much more than flow-control and floating point code remaining from the original.
The core implementation of the interpreter was fully contained in the 4 KiB ROM "A" or "1". The computer's original mainboard had a reserved slot for an extension ROM "B" or "2" that added more commands and features such as a built-in Zilog Z80 assembler.
ROM "A"/"1" symbols and keywords
The core implementation, in ROM "A" or "1", contained 3 special symbols and 32 keywords:
- Шаблон:Mono
- begins a comment (equivalent of standard BASIC REM command)
- Шаблон:Mono
- Equivalent of standard BASIC DATA statement
- Шаблон:Mono
- prefix for hex numbers
- Шаблон:Mono
- Allocates an array of strings, like DIM, but can allocate only array with name A$
- Шаблон:Mono
- serves as PEEK when used as a function (e.g. PRINT BYTE(11123)) and POKE when used as a command (e.g. BYTE 11123,123).
- Шаблон:Mono
- Calls BASIC subroutine as GOSUB in most other BASICs (e.g. CALL 100+4*X)
- Шаблон:Mono
- converts an ASCII numeric code into a corresponding character (string)
- Шаблон:Mono
- draws (command) or inspects (function) a pixel at given coordinates (0<=x<=63, 0<=y<=47).
- Шаблон:Mono
- displays the clock or time controlled by content of Y$ variable. Not in standard ROM
- Шаблон:Mono
- causes specified program line to be edited
- Шаблон:Mono
- standard part of IF-ELSE construct (Galaksija did not use THEN)
- Шаблон:Mono
- compare alphanumeric values X$ and Y$
- Шаблон:Mono
- standard FOR loop
- Шаблон:Mono
- standard GOTO command
- Шаблон:Mono
- equivalent of standard BASIC CLS command - clears the screen
- Шаблон:Mono
- protects n characters from the top of the screen from being scrolled away
- Шаблон:Mono
- standard part of IF-ELSE construct (Galaksija did not use THEN)
- Шаблон:Mono
- user entry of variable
- Шаблон:Mono
- a function that returns the greatest integer value equal to or lesser than n
- Шаблон:Mono
- test whether a particular keyboard key is pressed
- Шаблон:Mono
- lists the program. Optional numeric argument specifies the first line number to begin listing with.
- Шаблон:Mono
- returns memory consumption data (need details here)
- Шаблон:Mono
- clears the current BASIC program
- Шаблон:Mono
- clears BASIC program and moves beginning of BASIC area
- Шаблон:Mono
- standard terminator of FOR loop
- Шаблон:Mono
- loads a program from tape
- Шаблон:Mono
- loads program to different address
- Шаблон:Mono
- Returns address of the variable
- Шаблон:Mono
- Printing numeric or string expression.
- Шаблон:Mono
- Return from BASIC subroutine
- Шаблон:Mono
- function (takes no arguments) that returns a random number between 0 and 1.
- Шаблон:Mono
- runs (executes) BASIC program. Optional numeric argument specifies the line number to begin execution with.
- Шаблон:Mono
- saves a program to tape. Optional two arguments specify memory range to be saved (need details here).
- Шаблон:Mono
- standard part of FOR loop
- Шаблон:Mono
- stops execution of BASIC program
- Шаблон:Mono
- replacement for READ and RESTORE. If the parameter is variable name, acts as READ, if it is number, acts as RESTORE
- Шаблон:Mono
- "undraws" (resets) at specified coordinates (see DOT)
- Шаблон:Mono
- Stops the clock, not part of ROM
- Шаблон:Mono
- Calls machine code subroutine
- Шаблон:Mono
- Double byte PEEK and POKE
ROM "B"/"2" additional symbols and keywords
The extended BASIC features, in ROM "B" or "2", contained one extra reserved symbol and 22 extra keywords:
- Шаблон:Mono
- Шаблон:Mono
- Шаблон:Mono
- Шаблон:Mono
- Шаблон:Mono
- Шаблон:Mono
- Шаблон:Mono
- Шаблон:Mono
- Шаблон:Mono
- Шаблон:Mono
- Шаблон:Mono
- Шаблон:Mono
- Шаблон:Mono
- Шаблон:Mono
- Шаблон:Mono
- Шаблон:Mono
- Шаблон:Mono
- Шаблон:Mono
- Шаблон:Mono
- Шаблон:Mono
See also
- Voja Antonić, creator of Galaksija and this BASIC
References
External links
- Uputstvo za upotrebu, user manual online, complete, original, in Serbian language
- ↑ Antonić, Voja (creator), 1983 - Galaksija