SCELBI Running at 800kHz!

The Intel 8008 processor has two speed grades, 500 kHz and 800 kHz. The 800 kHz version is labeled as the 8008-1. Peter Miller is building a SCELBI 8B and decided to try to run his newly built system at 800 kHz. Using the existing hardware design he simply scaled the clock configuration. In his words…

Φ1 has a duty cycle of 42.5% and Φ2 has a duty cycle of 27.5%. The only thing I had to figure out an exact quantity for was the delay between Φ1 and Φ2, (rising edge of each, since that’s what my scope liked) which I just did (850ns + 200ns) * (500KHz/800KHz) = 656.25 ns.

What a nifty little hack! As far as I can remember or know, this could well be the first time that a SCELBI was set up to run at the higher 8008-1 clock speed. Of course, without doing additional detailed testing, there is always the chance that some component of the timing is marginal and some systems don’t work reliably at this higher speed.

Since I/O is timing is derived from the 8008 clock, most standard I/O devices will not interoperate with normal speed SCELBI I/O at this speed, but I’m sure the I/O could be fixed with some additional effort. Two devices that will probably require some extra effort are the O-scope and Cassette interfaces since they both utilize the hardware SYNC clock for timing. I/O like the serial interface that uses software for I/O timing, should be able to interoperate by simply retiming the software timing loops.

SCELBI 8B Front Panel and Chassis Source

Peter Miller is in process of building a reproduction SCELBI 8B and came up with good solutions for the chassis and front panel. Be aware that the following files are ONLY for the SCELBI 8B. The SCELBI 8H had slightly different backplane dimensions and the front panel lettering is different.

Peter Miller's Chassis
Peter Miller’s Chassis

The front panel was purchased from Front Panel Express using this design file. Unlike the original chassis, David choose to get the lettering engraved.

The chassis was fabricated by protocase using this design file. Note that some additional drilling will be required to complete this chassis.

MCM6571 Character Generator found for Digital Group Video Card

Quest Components had them and I was able to pick up a few for $8.00 each. I was able undo the work-around hack for the “A” part and the board works perfectly without mods with the non-A part. Quest has both the “A” part and a “P” part, so if you decide to order from them, be sure to order the “P” part.

Apple II Keyboard Enclosure

Quite a while ago, Wendell Sander sent me an example of his Apple 1/Apple ][ compatible keyboard design. Over the past couple of years, I’ve used it with my SCELBI as it can also be connected to a SCELBI keyboard interface. I didn’t have an enclosure, but had it mounted on a couple of blocks of wood.

For a long time, I’ve envisioned building a proper enclosure for it. Well, I finally got around to doing just that. I recycled some red oak that I had cut to a bit less than 3/8″ thick and had used for a while in another project that is now not needed.

Keyboard Enclosure
Keyboard Enclosure

I think it looks quite nice. There is no rear cover, but I suppose I could add a sheet metal cover , if I decided I really needed one.

keyboard enclosure, back
keyboard enclosure, back

For those that are interested in making their own Apple II compatible keyboard enclosure, the following drawing can be used to cut out the faceplate.

Keyboard Layout

Making Progress on SCELBI Hardware Manual

Back in 2017, I started on a hardware manual for the SCELBI computers. This originally was a digital copy of the original SCELBI 8B hardware assembly manual, which described construction and basic operation of the SCELBI 8B CPU. The original SCELBI 8B manual was 86 pages long and did not include any software or information on peripherals. Over the past couple of years, I have greatly expanded this manual. The draft now includes the following sections:

  • History
  • Printed wiring board assembly
  • Chassis assembly
  • Power supply
  • Installation and check out procedures
  • Peripherals
  • Schematics, parts lists and technical notes
  • Enhancements and modifications
  • System software and utilities

My goal, up to now, was to gather as much relevant content as possible and get it into a draft manuscript. At his point, I think I have added most of the content that I think is important into the draft and will now start work on doing a complete job of editing. The goal would be to put the manuscript into a reasonable condition where it could possibly be published. This will take a while, as the document is currently 274 pages long, and up to now, there has been almost no serious editing done.

Easy TTY Emulation on an Apple ][e

Back in 2015, I partially described how I used an early Apple serial card in an Apple ][ to provide a “glass” TTY emulation in order to check out some of my SCELBI software and interfaces. Since I don’t have a real TTY, I always had to set up the Apple ][ and download an emulation program via cassette tape interface in order to test the SCELBI with an TTY interface. Over the years, this has been an annoying bit of hassle, mainly because I usually forgot exactly what version of the software that I needed to download, exactly where in memory to download it, and what slot to put the serial card into.

I knew that I could create a turnkey power on and go solution by designing and building a custom Apple ][ peripheral board. I just needed to copy the current loop interface from the Apple Serial card to a Superproto board and drive it with the Superproto’s 6522 VIA interface hardware. I knew I could easily port the program I had already written to run right out of the Superproto’s EERPOM. I first thought about doing this years ago.

Finally I started to do something at the beginning of this year, when I ordered the few required hardware components that I didn’t have in my stash. These parts came in right away, but, until now, I haven’t found the time to build up the board and port the software.

TTY Card
TTY Card

Well, I finally found the time to get this project working. I think the result is pretty cool. To connect a TTY with a 110 baud current loop interface to my SCELBI, I just connect the Apple ][e to a monitor, the SCELBI and power it up. No need to bother with floppy disks or cassette interfaces, or anything else. Since this card looks like a Disk ][ to the Apple, the Apple will automatically boot the TTY application, which resides in the Superproto’s EEprom.

I could potentially add logging, paper tape emulation and scroll back capability to this application, but I probably will not proceed with those ideas, at least anytime soon.

One other thing I might do, is create a version of software that will work at 45.45 baud and the Baudot charactor code, so I can use it with RTTY applications. I have done a simple version of this software for the Apple serial card, so it shouldn’t be too hard to port over. Since the Superproto supports multiple banks of memory in the EEPROM, I can use the same board and just put the RTTY app in a separate bank, and use the bank select jumpers to switch between TTY and RTTY applications.

Someday, I might make a custom card for this design, but I’m not going to do this unless I hear about some kind of demand for such a card.

Let me know if you are interested in seeing more details of the software and hardware design.

SCELBI Fast Loader Peripheral

Booting the SCELBI without an integrated EPROM boot loader/monitor can be an extremely difficult and time consuming process.  The first issue of the SCELBI newsletter described a very simple peripheral that makes this process easier.  I’ve known about this simple device for years, but until now, never built one. Well it turns out that I should have built one when I built my SCELBI-8H. It makes for a huge improvement in data entry capabilities of a SCELBI that doesn’t have a EPROM monitor, like my 8H, as it was initially constructed.

SCELBI Fast Loader
SCELBI Fast Loader

The fast loader peripheral is a simple device that relies upon a tiny four byte long program which can easily be toggled into memory with the SCELBI’s front panel.

The device is connected to any input port with a standard SCELBI peripheral cable. There is already a pull-up on each input, so all that needs to be done, is to either leave the input floating, in which case the SCELBI’s internal pull up resister will pull the input level high or connect the input to ground, which will force the input low. The operator sets each input to a high or low state with a simple DPST switch.

Fast Loader Schematic
Fast Loader Schematic

The way this peripheral is operated is as follows.  Using the front panel, the operator toggles the four byte long, fast loader program into memory, starting at location 0, and then sets the H and L registers to point to where the data needs to be written.

When run, the fast loader program will read the input port connected to the fast loader, writes the data to memory, increments the L register and then halts.  Once the program is started, the operator enters a RST 0 instruction into the SCELBI front panel toggle switches.  While still halted, the operator enters the data to be written into the next memory location into the fast loader toggle switches.  The operator presses the interrupt button on the SCELBI front panel and then the run button.  The program will jump to zero because of the RST 0 instruction that is set on the front panel. The program at location zero will read the input port, deposit the data to memory pointed to by the H and L registers, increment the L register and then halt again. The process is repeated until the operator has entered all the desired data into the SCELBI’s memory.

The fast loader program follows. This version assumes the fast loader peripheral is connected to input port zero, but other ports can be used by changing the INP instruction.

Line Addr.  CodeBytes   Source LineLine Addr.  CodeBytes   Source Line
—- —— ———– ———————————-
01                    START:ORG 000#000
02 00-000 101 INP 000 ; read port 0
03 00-001 370     LMA ; save to memory
04 00-002 060         INL ; increment L
05 00-003 000         HLT ; stop

 This program doesn’t handle the case of register L wrapping, but a few more instructions could be added to increment register H, if L wraps. Most boot programs should be designed fit into a single page, so this should not be necessary.

Here is a picture of the inside of the fast loader that I built. You couldn’t possibly come up with a simpler design for a peripheral device.

Fast Loader Interior
Fast Loader Interior

Details of a Factory SCELBI Power Supply

SCELBI Power Supply

Here is the front of the factory power supply that is part of the SCELBI-8B system described in the last post. A simple on-off switch, three banana plugs/binding posts, (+5 volts/-9 volts/ground) and an Amphehol 4 pin socket for connecting power to the chassis make up the controls and connections on the front. On the back is a fuse and fitting for passing the AC power cord through the back of the chassis.

The inside reveals space at the top of the picture for a 110 volt AC fan which is bolted to the cover. The cover has ventilation holes drilled in both ends to allow the fan to draw in cooling air. Two Power-One supplies make up the power supplies. One is 5 volts and the other is a Power-One 12-15 volt supply modified to output 9 volts. The positive output of the 9 volt supply is connected to the negative output of the 5 volt supply which becomes ground for the system. The negative output of the 9 volt supply becomes -9 and the positive output of the 5 volt supply supplies +5 volts to the system.

All in all, the whole thing is an extremely simple affair, the only complication being the changing of a resistor in order to covert the 12-15 volt supply to a 9 volt supply. This unit did not actually use banana plugs for power delivery to peripherals, but ordinary hook-up wire connected to the binding posts.

In my next post I will describe the problem with the power supply and how I resolved it.