Английская Википедия: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:

See also

References

Шаблон:Reflist

External links

Шаблон:BASIC

  1. Antonić, Voja (creator), 1983 - Galaksija