post

Replace the 2708 EPROM

The 2708 is not an easy EPROM to use. It requires -5V, +5V and +12V and most programmers can not handle it.

Elektor published an article how to use a 2716 instead of a 2708 (eliminating also the need for -5V and easier programming).

ROM in 2732

But an even more common 2732 EPROM can be used instead of the 2708 EPROM when you perform the following:
– cut the traces +12 and -5V
– K6 to the VIA,
– K7 to the EPROM.but leave K7 to the 7401 intact for the STEP function.
– /CS from VIA to K3 to move the VIA to page 0E (jumps in the EPROM are adapted for that)
– /OE from the 2732 to ground
– A10 and A11 of the 2732 to the addressbus
– /CS from the 2732 via an inverter to A12, note that there are two unused ports in the 7402 with grounded inputs: cut those! and add a pull up resistor.

post

Program the 82S23

The Elektor designs sometimes use the 82S23 bipolar 32×8 PROM as memory decoder. The Junior Interface card is an example and a troublemaker nowadays: rare, expensive, hard to program.
On this page some simple programmers are shown for this quite rare device.
An alternative would be to use a 2716 or similar EPROM, 5 address lines as input, 8 datalines as output, via a converter PCB. FAst enough for the Junior at 1 MHz, but a bit bulky.
Or use a GAL instead. Small, easier to source and also reprogrammable.

On this page:

Elektor PROM programmer

The circuit of the Elektor circuit (the article is listed below):

It can be much simpler (see the “An 82s23 programmer, Radio Electronics 1976” below):

All programmers require you to program one bit at a time. See the Signetics Programming Notes how to).

Elektor 1980 Bipolar prom programmer (82S23, 82S123)
Signetics 82S23 programming notes.pdf
Datasheet 82S23, 82S123
Jeff’s 82s23 programmer
An 82s23 programmer, Radio Electronics 1976
Another simple 82S23 programmer

Bipolar memory cross reference

Alternatives for the 82S23 (or 82S123 with open collector outputs, add a pullup resistor to the outputs).

Use a GAL to replace an 82S23 or 82S123

In the DIY Build a Junior » Junior Computer Replica by laurent-fr design, a GAL is used to replace the 82S23. Have a look at his github page, here an extract. Note that this design is not tested yet (October 2022), so take care.
The original circuit:

Replace with:

GAL Design files by laurent_fr

Replace a 82S123 with a GAL

From the article REPROGRAMMABLE 82S123, local copy of the original article.

This project came about because I needed a way of experimenting with the data in an 82S123 PROM, changing it and seeing how the PCB reacted to the changes. As the 82s123 is a one time programmable device, this would work out very costly to make 20-30 changes in it’s code! The obvious way to do it would be to use an EPROM, but many of these are not as fast as a Bipolar PROM, so another solution was needed.

Enter the GAL! The GAL is a reprogrammable logic device that allows you to combine logic functions onto one chip, to save space on a PCB, or for custom logic equations. It can also be used for small amounts of data storage, but because of the way it is designed, it can’t hold a huge amount, but the 22v10 is certainly enough for the 32×8 bits of the 82S123.

The pinouts of each IC are shown above. The GAL is flexible on what pin does what. Pins 2-11 and 13 are dedicated inputs. Pin 1 can be used as a clock for flip flops (not used in the application). Pins 14-23 can be either inputs or outputs, depending on how you want to configure them.

If we want to simulate an 82s123, we’ll need:

  • A0-A4 inputs
  • CE Tri state enable
  • O1-O8 outputs

The easiest way to connect them on a breadboard is by the diagram below

We use pin 3 on the GAL as the Tri state output control, pins 4-8 as the address inputs, and pins 15, then 17-23 as the outputs. I disable pin 16 in the code, as it makes life easier on the breadboard. Blow is the completed breadboard and programmed GAL, running as the DRAM control PROM on an Atari Missile Command PCB

It’s that simple! You can then remove the GAL from the breadboard, reprogram it in your burner, and use it again as many times as you like. It’s also a lot cheaper to buy than an 82s123 in the first place!

Here is the code in CUPL that I used for this device

Name 32x8prom;
Partno 32x8prom;
Date 06/06/03;
Revision 02;
Designer Mark Haysman;
Company Leopardcats;
Assembly None;
Location None;
Device g22v10;

/** Example of 82s123 simulation **/
/** Uses Missile Command DRam Prom PR0058 Data **/

/** Inputs **/


Pin 8 = d0;
Pin 7 = d1;
Pin 6 = d2;
Pin 5 = d3;
Pin 4 = d4;
Pin 3 = tristate;
Pin 16 = dummyinput;

/** Outputs **/

Pin [17..23] = [Q6..0];
Pin 15 = Q7;


/** Declarations and Intermediate Variable Definitions **/

field byte = [Q7..0];
field address = [d4..0];

byte.oe = !tristate;
dummyinput = 'b'0;
dummyinput.oe = 'b'0; /** Pin 16 is disabled **/

table address => byte {
0 => 0;
1 => 0;
2 => 0;
3 => 0;
4 => 0;
5 => 0;
6 => 0;
7 => 0;
8 => 0;
9 => 0;
a => 0;
b => 0;
c => 0;
d => 0;
e => 0;
f => 0;
10 => ee;
11 => dd;
12 => bb;
13 => 77;
14 => ee;
15 => dd;
16 => bb;
17 => 77;
18 => fe;
19 => fd;
1a => fb;
1b => f7;
1c => ef;
1d => df;
1e => bf;
1f => 7f;
}

Here is a link to the PLD and JED files for this particular PROM. All you need to do to make your own proms is enter the data into the table in the CUPL file.
Good luck! Any questions, I’m always on hand to help – mark@leopardcats.com

post

Universal Memory card, 83014

Static RAM and ROM upto 64K. Elektor 83014

Universal memory card

Have a look at the Elektor Articles and Books page for a mullti-lingual overview of all publications on Elektor/Elektuur Junior and more.

post

Mini EPROM card and ESS511 ROM

A small EPROM card, Elektor, 82093, to be placed in upper memory, including the vectors.
With example software (disassembler and more) in EPROM ESS511.

mini EPROM card
Software cruncher and puncher
ESS511 ROM

Have a look at the Elektor Articles and Books page for a multi-lingual overview of all publications on Elektor/Elektuur Junior and more.

post

Elektor PCB paperware and ESS services

post

Elektor bus

Elektor bus




post

Power Supply Unit

PSU of base Junior, 800089-3


Junior Computer

Have a look at the Elektor Articles and Books page for a mullti-lingual overview of all publications on Elektor/Elektuur Junior and more.

post

Junior Interface card

The Interface card adds more memory (2x EPROM 2716, 1K RAM with 2x 2114), cassette interface, TTY interface, VIA 6522 interface.
Inspired by the KIM-1 and the Micro ADE cassette motor control. Note that the hardware TTY echo is now a jumper!

Software PM (Print Monitor, a serial interface monitor) and TM (Tape Monitor, to load/save KIM-1 compatible files on tape) and PM (Print Monir Extended).
EPROM ESS507 has PM, ESS507N has PM + PME, ESS506 has TM.

The bipolar ROM 82S33 has the name ESS508, it is used to decode memory for the various devices on the expansion card. A real problem device when constructing a new Junior!
See the Programming a 82S23 page how to program the 82S23.

Circuit diagram part 1, ROM, RAM, VIA

Circuit diagram part 2, TTY interface, audio cassette interface

the fully fledged Junior Computer
the junior reaches maturity
Listing in Micro Ade format of TM PM PME from book 2
ESS508, the 82S23 PROM memory decoder
ESS508 82S23 ROM
Sources of TM PM PME, TASM format,
delivers binaries identical to the published listings
Alternative source of PM, delivers binary identical to listing
TM ESS506 ROM 2K
PM ESS507 (without PME) ROM 2K
PM PME ESS507n ROM 2K
ESS507n TM + PM + PME in a 4K ROM format
junior interface TM ROM 2K
old dump, see note below

The ROMS you need for an original Interface card are TM 506 and PM PME 507n.

Have a look at the Elektor Articles and Books page for a mullti-lingual overview of all publications on Elektor/Elektuur Junior and more.

Note that in old dumps of ROMs of TM there is a (harmless) error. On location it should be
0C21 C9 41 CMP #$41 ;IGNORE 3A…40
Instead is found
0C21 C9 14
which means the check is also OK with correct input. Perhaps this error was in the original ROM already and never noticed!

0717   0C19             ;*** ASCHEX ***
0718   0C19             ;CONVERT AN ASCII CHARACTER TO A HEX DATA NIBBLE.
0719   0C19             ;1) RETURN WITH CONVERTED HEX NUMBER IN ACCU
0720   0C19             ;2) N = 1, IF NOT VALID HEX NUMBER
0721   0C19             ;3) Z = 1, IF VALID HEX NUMBER
0722   0C19             ;4) *** ASCHEX IS ALSO USED IN THE PRINTER SOFTWARE ***
0723   0C19 C9 30       ASCHEX	CMP #$30		;IGNORE 00...2F
0724   0C1B 30 0C               BMI NOTVAL
0725   0C1D C9 3A               CMP #$3A
0726   0C1F 30 0B               BMI VALID
0727   0C21 C9 41               CMP #$41 		;IGNORE 3A...40
0728   0C23 30 04               BMI NOTVAL
0729   0C25 C9 47               CMP #$47 		;IGNORE 47...7F
0730   0C27 30 03               BMI VALID

Interface card  PCB front (note not on scale!)

Interface card PCB back (note not on scale!)

Interface card layout



Backplane PCB, part of it could be used to connect Junior PCB to Interface card.

post

Elektor Junior : base system

Base Junior computer, quite a small system: PCB 80089-1,-2,-3.
Equivalent to a KIM-1 without serial TTY and cassette interface: keypad, 6 seven segment LEDs, 1K ROM (2708), 1k RAM (2x 2114). Partial memory decode as in the KIM-1: first 8K block mirrored in memory.
Subtle differences in the ROM and hardware (RIOT 6532 versus RRIOT 6530: I/O and RAM at $1Axx instead of $17xx).
The monitor in ROM is quite similar and inspired by the KIM-1 monitor, but not identical.

Circuit diagram
PCB front

(from Book 2, in Micro Ade format

Junior Computer first article
Hex dump of Junior Computer Monitor ROM ESS503
Listing of Junior Computer Monitor ROM ESS503
Junior Computer Monitor ROM ESS503
Original, identical to ROM dump in article and book, for $1C00
Source and listing of Junior Computer Monitor ROM ESS503
In TASM format
Junior Computer Monitor ROM ESS503 assembled for $FC00,
better for expanded fully decoded system.
Source and listing of Junior Computer Monitor ROM ESS503
For $FC00, in TASM format
Junior Computer Monitor ROM ESS503 assembled for $1C00, in a 2K (2716) ROM image.

Have a look at the Elektor Articles and Books page for a mullti-lingual overview of all publications on Elektor/Elektuur Junior and more.


PCB back

PCB layout front (from March 1980 Elektuur article)
Note that this layout is not as shipped, the Junior PCB’s were front/back swapped. The book is correct.

PCB layout front (from Junior Book 1, as shipped)

PCB layout back (from March 1980 Elektuur article)

PCB layout back (from Junior Book 1, as shipped)

LED display PCB and layout


Address sticker


Photo of (stripped clean) PCB front

Photo of (stripped clean) PCB back

post

Musicprint kit and cassette interface

The Junior was sold as a kit by the Dutch firm Musicprint, read here the extra instructions in the kit.

Musicprint instructions

It took Elektuur some time to add a cassette interface to the Junior design, it was a year until the Interface PCB appeared. Many users therefore bought the socalled musicprint cassette interface. See here the description and circuit design.