1.
GENERAL DESCRIPTION
The DAI Personal Computer is designed to provide the maximum capability that can economically be provided to an individual. The design is realised such that programs are loaded from a low cost audio cassette or a floppy disc. The results of program execution are output to the user via an antenna connector for PAL, SECAM or NTSC standard television receiver, The Graphical Sound Generation also outputs two tracks of separated sound for left and right stereo connections, and the sound channel of the television.
The resources of the DAI Personal Computer are partitioned into four segments; the Microcomputer Section, Programmable Graphical Video Section, the Sound Generator Section and the I/0 Section. To optimise usage of components within the design, considerable overlay of logic usage exists within the system. Figure 1 is a logical block diagram of the DAI Personal Computer.
The resident software is comprised of six major modules, Basic Interpreter, Math Package, Screen Driver Module, Keyboard Scan + Encode Routine, the Machine Language Utility and the General House- keeping Module.
The Basic Interpreter incorporates most of the features found in other Personal Computers as well as special statements to control the video graphics and sound generator and interface with the Machine Language Utility as well as assist with generation and editing of source programs. In order to obtain the minimum possible execution time the design of the Basic System is such that it functions as a quasi-interpreter. When the user types in his source program it is compressed and encoded into a special "run-time" code so that the Execution Routine has the smallest possible amount of work left to do.
2.
The Math Package is broken into an Integer Math Module and a Floating
Point Math Module. The integer module performs only basic operations
as +, -, multiply etc., while the Floating Point Math Module provides
these plus transcendental functions.
Integer variables are calculated to nine digit resolution and floating point
variables to 6 digit resolution. The Math Package handles floating point
numbers in the range &plusmin;10-18 to &plusmin;1018 and zero. When the Scientific
Math option is inserted into its socket the Math Package automatically
uses it for calculations instead of the software calculation modules.
The Screen Driver Module is responsible for arranging the data in memory
to give a correct picture in all modes. It also handles the changing of
screen colours, the drawing facilities (DOT, FILL, DRAW) and other
screen-related facilities.
The Keyboard of the DAI Personal Computer is a simple matrix of 56
keys connected in an 8 x 7 matrix. The Keyboard Scan + Encode Routine
scans the keyboard at fixed time intervals, detects key depressions and
encodes a specific key according to a look-up table. Since the keyboard
of the DAI Personal Computer has been constructed in this fashion it is
possible to provide DAI Personal Computers with other configurations and
codes. The keyboard driver software provides for a 3 key rollover
mechanism.
The Machine Language Utility is a complete set of keyboard and
subroutine callable functions that permit and assist the generation,
loading, de-bugging, and execution of machine language programs and
subroutines. The control subroutines and housekeeping subroutines of
this module allow direct interface between BASIC programs and machine
language program and subroutines. An unlimited number of machine
language subroutines may be called by a BASIC program.
The General Housekeeping Module is a set of routines that are shared by
other modules, providing for instance, the control of memory bank
switching. This allows the 8080A microprocessor to operate with 72K
bytes of memory instead of the 64K normally.
3.
Microcomputer
8080A microprocessor running at 2MHz.
8K, 12K, 32K, 36K, 48K RAM memory configurations
24K PROM/ROM capability (software bank switched)
Memory mapped I/0
AMD 9511 math chip support logic
Hardware random number generator
Stack overflow detect logic.
4.
Graphical Video
Character screen mode (66 characters x 24 lines normally 11/22/44/66
characters + 13 to 32 lines possible)
16 colors or grey scales
Multiple resolution graphics modes (software selectable)
Graphical Sound
3 independently programmable frequencies
1 programmable noise generator
Amplitude and frequency software selectable
Resident Software
Extended Highspeed BASIC interpreter
Full floating point scientific math commands,
Hardware scientific functions automatically used if math module present.
Graphical video commands
5.
Compatible System Software
DAI Assembler
8080A Standard software support
FORTRAN Compiler support
MDS/Intellec non-disc software support.