Modified Creed
Monitor for the 8008
The standard SCELBI-8H doesn't include any EPROM. This makes
booting the system fairly laborious, as you must toggle in a boot
loader program using the front panel, before you can load any
significant applications. This issue was solved by SCELBI with
the development of a rather sophisticated monitor that was released
with the SCELBI-8B. That didn't help the original owners the
8H, but at least one owner, solved the problem by hacking an EPROM
onto the back of one of his SRAM cards. Here is the back of
Steve Ciarcia's original 8H with EPROM installed. I'm not sure
what's in the EPROM, but I can assume that it is some kind of simple
monitor/bootloader.
Though I have toyed with the idea of doing something similar with my
SCELBI-8H, I just never had the motivation to do the
modification. For some reason that I have since forgotten, I
was recently scanning through online copies of Micro-8 newsletter,
when I ran across an 8008 monitor that could run in 256 bytes.
Micro-8 newsletter
was an amateur newsletter that was put out mostly for owners or
those interested in the Mark-8 Computer. The monitor was
called the Creed Monitor and was described starting on page 58 of
volume 1, number 7 of the newsletter. It was published on May
20, 1975.
I figured that this 256 monitor would just the thing for the
SCELBI-8H and I decided to see if I could get it to work in my
SCELBI emulator. After about a week of hacking I had
practically rewritten the entire monitor. I made many, many
changes. The final version of this monitor also requires the
use of 3 bytes of SRAM in order to create jump instructions.
I'm calling the final result MCMON - or Modified Creed Monitor.
- I had to free up some memory, so I could fit the bit banged
serial driver that I use - the original system apparently had a
UART
- I removed a tape driver and added my own serial downloader
- The original monitor was written for BAUDOT. I modified
it to read and write ASCII
- The use of RST instructions was eliminated so that MCMON could
be moved to anywhere in memory
The final version supports a very simple command set that accepts
single character commands
- A typed octal digit (0-7) - previous contents of a one
byte buffer (register B) are shifted left 3 bits before placing
the new octal character into the least significant 3 bits
- "H" - load contents of buffer into H
- "L" - load contents of buffer into L
- "W" - write contents of buffer into memory through HL - the HL
register will be incremented and the next address and contents
of memory will be displayed
- "C" - HL and contents of memory are displayed
- "I" - increment HL, HL and contents of memory are
displayed
- "D" - decrement HL, HL and contents of memory are
displayed
- "B" - execute boot loader - moves data coming into serial into
memory and increments HL, repeat until interrupted by front
panel
- "X" - execute program at address HL
Here is some example output captured on a PC being used as a
terminal
>I 301-010:044
>I 301-011:007
>I 301-012:320
>I 301-013:301
>I 301-014:002
>I 301-015:002
>I 301-016:002
>010H 010-016:013
>007H 007-016:002
>D 007-015:002
>D 007-014:002
>000L 007-000:104
>D 006-377:200
>I 007-000:104
>I 007-001:026
>I 007-002:017
>D 007-001:026
>D 007-000:104
Original Version for SCELBIs with Serial Ports
In order to use MCMON, you may need to replace the bit banged serial
input and output routines with routines that suit your particular
system. This version is set up for half duplex, 2400 baud, 8
bits and no parity. It also assumes the MSB bit of incoming
and outgoing characters are zero. Early versions of my OS/X
emulator assumes ones, so this version of MCMON will only work in
version 1.1 (or later) of the emulator. That version allows
for optionally setting and stripping the MSB of serial data.
This version of MCMON is set up to run from 017-000 and uses 3 bytes
of SRAM located at 016-374. Baud rate can be adjusted by
tweaking timing loops. I have provided the spreadsheet I use
for these calculations, in the zip package.
Download the MCMON zip package from this link.
For SCELBIs with SCELBI Keyboard and Scopewriter Interfaces
A second version of the MCMON written to work with the
SCELBI/SCELBI keyboard/scopewriter combination is available here.
This version does not include a downloader, but you can enter a SCELBI
cassette tape reader program with MCMON in just a few minutes. You
can find source for small SCELBI cassette tape reader program on my 8008 applications page.
For SCELBIs with SCELBI Keyboard and Digital Group Video Interfaces
This is probably the ultimate SCELBI-8H setup. This version of
MCMON works with the SCELBI/SCELBI keyboard interface/Digital Group
video card combination. It still fits in 256 bytes, however it
only utilizes first line of video text. Download from here. As with the Scopewriter version, you will probably also want to learn how to load programs from tape (see my 8008 applications page).
How to Add an EPROM with MCMON to your SCELBI 8H
SCELBI-8H owners should also see this
page that describes how I added a 256 byte EPROM to a SCELBI
1K SRAM card.