Galaksija BASIC
Deweloperzy | Microsoft , Voja Antonić |
---|---|
Pierwsze wydanie | 1983 |
Platforma | Galaksija |
Typ | Microsoft BASIC |
Galaksija BASIC był interpreterem języka BASIC dla domowego komputera Galaksija z Jugosławii . Będąc częściowo opartym na kodzie zaczerpniętym z TRS-80 Level 1 BASIC, który twórca uważał za Microsoft BASIC , obszerne modyfikacje Galaksija BASIC - takie jak włączenie podstawowej obsługi tablic , kodu generowania wideo (tak jak zrobił to sam procesor to w przypadku braku dedykowanych obwodów wideo) i ogólnie ulepszenia języka programowania — mówi się, że pozostawiły niewiele więcej niż sterowanie przepływem i kod zmiennoprzecinkowy pozostały z oryginału.
Podstawowa implementacja interpretera była w całości zawarta w pamięci ROM „A” lub „1” o pojemności 4 KiB . Oryginalna płyta główna komputera miała zarezerwowane gniazdo dla rozszerzenia ROM „B” lub „2” , które dodało więcej poleceń i funkcji, takich jak wbudowany asembler Zilog Z80 .
ROM „A”/„1” symbole i słowa kluczowe
Podstawowa implementacja w pamięci ROM „A” lub „1” zawierała 3 specjalne symbole i 32 słowa kluczowe:
- !
- rozpoczyna komentarz (odpowiednik standardowej komendy BASIC REM)
- #
- Odpowiednik standardowej instrukcji BASIC DATA
- i
- przedrostek dla liczb szesnastkowych
- ARR$(n)
- Przydziela tablicę łańcuchów, jak DIM, ale może przydzielać tylko tablicę o nazwie A$
- BYTE
- służy jako PEEK gdy jest używany jako funkcja (np. PRINT BYTE(11123)) i POKE , gdy jest używany jako polecenie (np. BYTE 11123,123).
- CALL n
- Wywołuje podprogram BASIC jako GOSUB w większości innych BASIC-ów (np. CALL 100+4*X)
- CHR$(n)
- konwertuje kod numeryczny ASCII na odpowiedni znak (łańcuch znaków)
- DOT x, y
- rysuje (polecenie) lub sprawdza (funkcja) piksel o danych współrzędnych (0<=x<=63, 0<=y<=47).
- DOT *
- wyświetla zegar lub czas kontrolowany przez zawartość zmiennej Y$. Nie w standardowym ROM
- EDIT n
- powoduje edycję podanej linii programu
- ELSE
- standardowa część konstrukcji IF-ELSE (Galaksija nie użyła THEN)
- EQ
- porównanie wartości alfanumerycznych X$ i Y$
- FOR
- standard pętla FOR
- GOTO
- standard GOTO polecenie
- HOME
- odpowiednik standardowego BASIC Komenda CLS - czyści ekran
- HOME n
- chroni n znaków z góry ekranu przed przewijaniem
- IF
- standardowa część konstrukcji IF-ELSE (Galaksija nie użyła THEN)
- INPUT
- wpis użytkownika zmiennej
- INT(n)
- funkcja zwracająca największa liczba całkowita równa lub mniejsza od n
- KLAWISZ(n)
- sprawdza, czy dany klawisz na klawiaturze jest wciśnięty
- LISTA
- wyświetla program. Opcjonalny argument liczbowy określa numer pierwszego wiersza, od którego ma się rozpocząć wyświetlanie.
- MEM
- zwraca dane o zużyciu pamięci (potrzebne szczegóły tutaj)
- NEW
- czyści bieżący program BASIC
- NEW n
- czyści program BASIC i przesuwa początek obszaru BASIC
- NEXT
- standardowy terminator pętli FOR
- OLD
- ładuje program z taśmy
- OLD n
- ładuje program pod inny adres
- PTR
- Zwraca adres zmienna
- Drukowanie wyrażenia numerycznego lub łańcuchowego.
- RETURN
- Powrót z podprogramu języka BASIC Funkcja
- RND
- (bez argumentów) zwracająca liczbę losową z zakresu od 0 do 1.
- RUN
- uruchamia (wykonuje) program w języku BASIC. Opcjonalny argument liczbowy określa numer wiersza, od którego ma się rozpocząć wykonywanie.
- SAVE
- zapisuje program na taśmie. Opcjonalne dwa argumenty określają zakres pamięci do zapisania (szczegóły są potrzebne tutaj) .
- Standardowa część pętli FOR
- STEP
- STOP
- zatrzymuje wykonanie programu BASIC
- TAKE
- zastępując READ i RESTORE. Jeśli parametrem jest nazwa zmiennej, działa jako READ, jeśli jest liczbą, działa jako RESTORE
- UNDOT x, y
- „cofa” (resetuje) w określonych współrzędnych (patrz DOT)
- UNDOT *
- Zatrzymuje zegar, nie jest częścią ROM
- USR
- Wywołuje kod maszynowy podprogram
- WORD
- Podwójny bajt PEEK i POKE
ROM „B”/„2” dodatkowe symbole i słowa kluczowe
Rozszerzone funkcje języka BASIC w pamięci ROM „B” lub „2” zawierały jeden dodatkowy zarezerwowany symbol i 22 dodatkowe słowa kluczowe:
- %
- / ETYKIETA
- ABS( x )
- ARCTG( x )
- COS( x ) COSD( x )
- DEL
- WYSYPISKO
- EXP( x )
- INP( x )
- LDUMP
- LISTA
- LN( x )
- LPRINT
- NA ZEWNĄTRZ
- Liczba Pi
- POW( x , y )
- REN
- GRZECH( x ), SIND( x )
- SQR( x )
- TG( x ) TGD( x )
Zobacz też
- Voja Antonić , twórca Galaksija i tego BASICa
Linki zewnętrzne
- Uputstvo za upotrebu , instrukcja obsługi online, kompletna, oryginalna, w języku serbskim