How To Out SMART "SmartBASIC"
by SERENDIPITY PRODUCTIONS
From: The Adam Technical Journal
VOL 1 - NO. 1  2/85

Introduction

This is the first of a series of newsletters that discusses the capabilities of ADAM SmartBASIC.


Description of the Video Display Processor The Video Display Processor (VDP) is one of three microprocessors in the ADAM. The main processor is the Z80 CPU (Central Processing Unit). The Operating System and SmartBASIC are written in the Z80's assembly language. The Z80 controls the Inputs and Outputs (1/0) that control the TI SN76489AN Sound...

Controlling the screen directly In order to tap the exceptional power of this Video Display Processor, we must be able to modify VDP memory. Since the BASIC PEEK and POKE commands cannot reach VDP memory, we will have to use two small assembly language programs.

Now to customize the character set As we mentioned above in the VDP MEMORY section, the character definition table describes the appearance of each displayable character. This table consists of an 8 byte binary "picture" corresponding to each of the ASCII  codes. The format of that picture will be described below and we will actually change the appearance of the character of your choice.

Controlling screen and character colors The Color Definition Table contains the code which defines the foreground and background colors of the 32 character sets. The table starts at VDP memory location 8192 and contains 32 memory locations. Each byte defines one subset of a characters.

First installment of Basic Utility Library 1.0 As you can see, the utilities are a set of basic subroutines. By simply setting some reserved variables to the parameters you desire and doing a GOSUB to the particular subroutine, you will perform a graphics function.

Example programs to demonstrate the utilities This utility package should be included below all the example programs to follow.

Helpful Tid-Bits of information about the ADAM The purpose of this column is to inform you of interesting little pieces of information that are not big enough subjects to warrant an article on its own.
 

Back to Top