Header image  

YUGOSLAV PC /

 

 

 
 
 
 

MEMORY

Galaksija BASIC is a BASIC interpreter originally partly based on code taken from TRS - 80 Level 1 BASIC, which creator believed to have been a Microsoft BASIC. However, after extensive modifications to include video generation code (as the CPU was a major participant to reduce the cost of hardware) and improve the programming language, what remained from the original is said to be mainly flow-control and floating point code. It was fully contained in 4 KB ROM "A" or "1". Additional ROM "B" or "2" provided more Galaksija BASIC commands, assembler, monitor, etc.

The chip labeled as "A" by the creator of Galaksija, Voya Antonich was commonly referred to as "ROM 1" or just "ROM". ROM "A" contained bootstrap code of Galaksija, its control code (rudimentary operating system), video generation code (as Galaksija did not have advanced video subsystem its Z80 CPU was responsible even for generating video signal) and Galaksija BASIC.

Fitting all this functionality in 4 KB of 2732 EPROM required a lot of effort and some sacrifices. For example, some message text areas were also used actual code (e.g. "READY" message) and the number of error messages was reduced to only two ("WHAT?" and "HOW?").

ROM "B" is a 2732 EPROM chip that contains extensions to original Galaksija BASIC available in computer's base ROM ("A"). It was labeled as "B" by the creator of Galaksija, but was commonly referred to as "ROM 2".

ROM "B" contained added Galaksija BASIC commands and functions (mostly trigonometric) as well as Z80 assembler and machine code monitor. This ROM was not required and was an optional upgrade. Although planned on the mainboard, the content of ROM "B" was not automatically initialized during booting. Instead, users had to execute a Galaksija BASIC command to run a machine code program from ROM "B" before they can gain additional features. This also meant that even Galaksijas with ROM "B" plugged in can behave entirely as base models.

Character ROM is a 2716 EPROM chip that contains graphical definitions of Galaksija's character set. It had no special name and was labeled "2716" after the type of 2 KB EPROM needed.

Galaksija had a slightly modified (localized) ASCII character set:

  • There were no lowercase characters;
  • Codes 91 to 94 represented Serbian language characters was not present in original version and was commonly replaced with "DJ";
  • It contained 64 pseudo - graphics characters, having different combinations of dots in 2 X 3 matrix;
  • Character codes 64 and 39 are used for two - halves of the logo of Elektronika Inzenjering company (they can be seen in "READY" prompt).

Each character was represented as 8 X 13 matrix of pixels. In this ROM, 8 - pixel rows of each character are represented as 8 bits of one byte.

 

Galaksija BASIC BASIC, Microsoft Level 1 BASIC. , .

3 33 . B 22 ( ).

BASIC : WHAT? ( ), HOW? ( ) SORRY ( ) . BASIC (BYTE PEEK / POKE, OLD LOAD .) ; , (, P. PRINT).

ࠗ () ASCII:

  • ;
  • 91 - 94 : DJ;
  • 64 2 X 3 ;
  • 64 39 Elektronika Inzenjering, "READY".

8 X 13 .

The figure below presents a Galaksija hardware memory map:

  • $0000...$0FFF ROM "A" or "1" 4 KB contains bootstrap, core control and Galaksija BASIC interpreter code;
  • $1000...$1FFF ROM "B" or "2" 4 KB (optional) additional Galaksija BASIC commands, assembler, machine code monitor, etc.;
  • $2000...$27FF keyboard and latch;
  • $2800...$2FFF RAM "C": 2 KB ($2800...$2BFF Video RAM);
  • $3000...$37FF RAM "D": 2 KB;
  • $3800...$3FFF RAM "E": 2 KB;
  • $4000...$FFFF unused, reserved.

:

  • $0000...$0FFF A: 4 - , , Galaksija BASIC;
  • $1000...$1FFF B (): 4 Galaksija BASIC, , ;
  • $2000...$27FF ;
  • $2800...$2FFF C: 2 ($2800...$2BFF );
  • $3000...$37FF D: 2 ;
  • $3800...$3FFF E: 2 ;
  • $4000...$FFFF , .

     
     
This site is © Copyright Fifan 20017-2019, All Rights Reserved.