Bootstrap
logo S-100

Vector Graphic 12K PROM-RAM

Introduction

Vector Graphic's PROM RAM III board is a versatile, S-100 bus compatible, high density memory board combining the memory technologies of erasable programmable read only memories (EPROMs) and high speed randan access memory (RAM). [...] 1K of RAM is provided on the board, but no PROMs are included with purchase. [1]

There are two versions of the 12K PROM/RAM, the programmable and the pure PROM/RAM version. I have the second one, not programmable.

The programmable version uses 2 x 2114 (4 x 1,024 bit) RAM, the non programmable version uses 8 x 2102 (1 x 1,024 bit) RAM.

The Vector Graphic's PROM RAM III board uses two 8K block; A and B. Block A are the upper eight PROM sockets. Block B consists of four PROM sockes on the left and 1K of RAM on the right. Both blocks can be addressed separatly to every 8K block in the 64K address range.

I have set block B to C000h; block A is so far disabled. Why C000h? It is because I use my three ROM boards (Cromemco 8K Bytesaver, SSM-PB1, VG 12K PROM/RAM) also with my N* Horizon. On the Horizon C000-DFFF is the only free usable RAM area.

This board was included with my SOL-20. I wouldn't have bought it because it was created specifically for the Vector Graphic. On my IMSAI or N* Star Horizon, the 1K RAM memory is useless. It can only be used as scratch RAM for testing purposes.

If you switch off block B and use block A instead, you have a Cromemco 8K Bytesaver, but without the programming function.

Vector Graphic 12K PROM-RAM
Vector Graphic 12K PROM/RAM - not programmable
Vector Graphic 12K PROM-RAM
Vector Graphic 12K PROM/RAM - not programmable
Vector Graphic 12K PROM-RAM
Vector Graphic 12K PROM/RAM - programmable [2]
Vector Graphic 12K PROM-RAM
Vector Graphic 12K PROM/RAM - assembly [1]

Settings

The settings are very easy. Actually you must only set the jumpers in area F and E.

Address Ranges


================================================================================
CONFIGURATION 1
================================================================================
VECTOR GRAPHIC 16K PROM/RAM
Block A ____ - ____; 8 KB = 8 x 1 KB; EPROM (2708); disabled
Block B C000 - CFFF; 4 KB = 4 x 1 KB; PROM (P)
        DC00 - DFFF; 1 KB = 8 x 1 Kbit; RAM (R); 1 KB = 8 x 1,024 bit (2102)
You can set block A and B to every 8K boundary.

IMSAI 8080:
m = used by MEMON/80
e = ECONORAM X (used by Lifeboat 24K CP/M)
E = ECONORAM X (8K, free to use)
P = PROM (2K, free to use)
R = RAM (1K, free to use)
. = unused (64d or 40h bytes)
================================================================================
ADDR:  0---------------4---------------8---------------C---------------
0000:  eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee  0FFF 
1000:  eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee  1FFF
-08-:  0---------------4---------------8---------------C---------------
2000:  eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee  2FFF
3000:  eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee  3FFF
-16-:  0---------------4---------------8---------------C---------------
4000:  eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee  4FFF
5000:  eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee  5FFF
-24-:  0---------------4---------------8---------------C---------------
6000:  EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE  6FFF
7000:  EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE  7FFF
-32-:  0---------------4---------------8---------------C---------------
8000:  ................................................................  8FFF
9000:  ................................................................  9FFF
-40-:  0---------------4---------------8---------------C---------------
A000:  ................................................................  AFFF
B000:  ................................................................  BFFF
-48-:  0---------------4---------------8---------------C---------------
C000:  mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP  CFFF
D000:  ................................................RRRRRRRRRRRRRRRR  DFFF
-56-:  0---------------4---------------8---------------C---------------
E000:  ................................................................  EFFF
F000:  ................................................................  FFFF
-64-:  0---------------4---------------8---------------C---------------
================================================================================
CONFIGURATION 2 (IMSAI BASIC 8K - ROM VERSION)
================================================================================
VECTOR GRAPHIC 16K PROM/RAM
Block A E000 - FFFF; 8 KB = 8 x 1 KB; 8K BASIC (B)
Block B C000 - CFFF; 4 KB = 4 x 1 KB; PROM (P)
        DC00 - DFFF; 1 KB = 8 x 1 Kbit; RAM (R); 1 KB = 8 x 1,024 bit (2102)
You can set block A and B to every 8K boundary.

IMSAI 8080:
m = used by MEMON/80
e = ECONORAM X (free to use by 8K BASIK; minimum is 4K)
    "8K BASIC will make use of as much RAM as is installed at contiguous
     addresses starting at 2000 hex."
P = PROM (2K, free to use)
R = RAM (1K, free to use)
B = BASIK8K (EPROM)
b = BASIC8K (copied from E000 to 0000 with MEMON/80)
. = unused (64d or 40h bytes)
================================================================================
ADDR:  0---------------4---------------8---------------C---------------
0000:  bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb  0FFF 
1000:  bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb  1FFF
-08-:  0---------------4---------------8---------------C---------------
2000:  eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee  2FFF
3000:  eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee  3FFF
-16-:  0---------------4---------------8---------------C---------------
4000:  eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee  4FFF
5000:  eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee  5FFF
-24-:  0---------------4---------------8---------------C---------------
6000:  eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee  6FFF
7000:  eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee  7FFF
-32-:  0---------------4---------------8---------------C---------------
8000:  ................................................................  8FFF
9000:  ................................................................  9FFF
-40-:  0---------------4---------------8---------------C---------------
A000:  ................................................................  AFFF
B000:  ................................................................  BFFF
-48-:  0---------------4---------------8---------------C---------------
C000:  mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP  CFFF
D000:  ................................................RRRRRRRRRRRRRRRR  DFFF
-56-:  0---------------4---------------8---------------C---------------
E000:  BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB  EFFF
F000:  BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB  FFFF
-64-:  0---------------4---------------8---------------C---------------
================================================================================

Tests

Circuit Board Check

To avoid short circuits, the following check is always recommended in the old S-100 board building instructions. Actually, it is mandatory.

Check every unkown board to ensure that the +8, +16, -16 volt buses are not shorted to one another or to ground (GND). Using an ohmmeter (multimeter), make the following measurements. You should measure no continuity (no beep) in any of these measurements.

Negative voltages (7905) are of course only needed by a few S-100 cards but these are the most dangerous ones.
Continuity test for S-100 boards
These simple tests take a maximum of five minutes, but can save you several hours of work!

IMSAI 8K BASIC - ROM Version

Since I already have this board, why not go all the way back to the beginning. No floppy disk drive, only RAM memory and a BASIC in ROM. After a short search, I found the original IMSAI 8K BASIC on the Internet as source code (ASM).


;---------------------------------------------------------
;Compiling:
;   05-Jan-24  TBR
;
; "A cross assembler for 8080/8085 processors based on
; William C. Colley, III's A85 from C User's Group disk
; number 267, with modifications from Herb Johnson and
; The Glitch Works." (https://github.com/glitchwrks/a85)
;
; A85 BASIC8K.ASM -l BASIC8K.PRN -o BASIC8K.HEX
;
;---------------------------------------------------------
;Edits:
;    30-Jun-08 KJL
;       - Created from IMSAI 8K BASIC Version 1.4 manual
;---------------------------------------------------------
; BASIC30.ASM   1.4     05/19/77        JRB     8K BASIC
; BASICS2.ASM   1.401   05/11/77        DK      8K BASIC
; BASIC19.ASM   1.401   05/11/77        DH
; BASIC18.ASM   1.401   05/10/77        JRB
; BASIC16.ASM   1.401   05/09/77        DH
; BASIC11.ASM   1.401   05/04/77        DH
; BASIC10.ASM   1.401   05/03/77        DH
; BASIC8.ASM    1.401   05/02/77        DH
;
; IMSAI 8K-9K BASIC
;
; COPYRIGHT (C) 1977
; IMSAI MANUFACTURING CORPORATION
; 14860 WICKS BLVD, SAN LEANDRO CALIFORNIA  94577
;---------------------------------------------------------

The second step is the assembly (with A85) of a HEX file. This must then be converted into an 8K BIN file, split into suitable 1K parts and programmed onto eight 2708 EPROMs; actually quite simple.

Here is the result!
Here is the result!
Here is the result!

Internal Links

Technical Manuals

In the 1979 revision, all jumper settings are also described pictorially, while at least two are missing in the 1980 revision. Furthermore, the two versions differ with regard to the standard addressing of block B; C000 versus E000.

Downloads

References

  1. (↑) Vector Graphic, PROM RAM III, USERS MANUAL, Revision B, June 13, 1980
  2. (↑) Mike Douglas, MFE-ARCHIVE