Archive for the ‘8008’ Category

One Line Of Star Bursts

Wednesday, December 7th, 2016

The SCELBI Scope project is not revealing it’s secrets easily. With some tweaks of the pots and some new software I now have a line of star bursts. Dumping the entire pre formatted buffer in one shot seems like the way to go. I inverted the display by using the invert button on my oscilloscope. I’ll look into the implementation more thoroughly later on.

One Line of Star Bursts

One Line of Star Bursts

It looks a bit better in real life. Next step is to figure out how to make multiple lines work. The software I wrote is supposed to print 5 lines, just like the MEA manual says it supports. One page is reserved for the scope output buffer. With 2 bytes per displayed character, 20 characters per line and 5 lines, that takes up 200 bytes. Right now, I’m automatically adding 2 extra bytes per line for the LF and end of page functions. That brings buffer consumption up to 210 bytes.

It’s going to be a real challenge to fit the software for the both the scope and keyboard displays in 256 bytes. Currently almost half of the 256 bytes is consumed just by the ASCII to a 2 byte code table in my implementation. I do think that with some clever coding, I should be able to free up a few bytes from that table and I’ll probably need it.

SCELBI Oscope Progress

Wednesday, November 30th, 2016

Read the article in the previous post in order to get an overview of the Oscilloscope Interface design. Here is an expanded image of a single starburst character as my implementation currently stands.

SCELBI O-scope Drawing

SCELBI O-scope Drawing

This is clearly not what is desired in displaying text, but you can see how the scope is attempting to draws a starburst image. In order to make more sense of what was happening here, versus what I thought the design should do, I drew a series of lines over the top of actual image.

Expected Oscope Display

Expected Oscope Display

The software writes two bytes “A” and “B”, which controls which lines are “on” and which ones are “off”. The line starts at line “A0” and proceeds to draw through “A7”, then B0 through B7. A0 represents bit 0 of the first byte, A7, bit 7 of the first byte. B0 through B7 represent the second byte. NA represents lines that are never “on”, those lines are simply used to reposition the cursor in order to draw the next line. For purposes of debug, I had all lines turned on for this image.

Next I moved the arrows to match what is seen on the oscilloscope.

Oscope Display Trace

Oscope Display Trace

This technique clearly revealed two big issues, and a few smaller ones.

The first major problem is that the Y axis is inverted versus what was expected. I’ll have to investigate hardware connections to clearly understand what is going on with that. It could be as simple as incorrect hookup between the digital and analog board, or perhaps an incorrect analysis of the design. In any case, this can be handled by reversing line segment assignment in order to flip the characters.

The second issue is apparent without the process of analyzing the drawing sequence. That is the bright spot to the right of the character. That problem is actually due to the software algorythm used to draw a series of characters. An ASCII character is sent to a lookup routine that searches through a table of characters in order to find the matching bytes that must be sent to the “A” and “B” registers of the digital board. Once the lookup is complete, the 2 bytes are written to the digital board. The problem is that the scope is stuck on a single spot while the lookup is done. Even though the “Z” input should dim the scope, it isn’t turned all the way off. The solution to this problem will be to look up all the text and create a buffer of all the data to be sent to the “A” and “B” registers. That should avoid burning in one spot.

The other problems are uneven and tilted lines. I’m hoping that this can be eliminated though carefull adjustment of the variable resistors on the analog board. I’ll discuss this further in a future post as I work through those issues.

The good news with all this analysis, is that it is clear that the majority of the hardware must be working correctly in order to display this much of the starburst, as distorted as it is.

SCELBI Oscilloscope Board Hardware Description

Tuesday, November 29th, 2016

Last year, Paul Robson sent me this document, describing how he thought the SCELBI Oscilloscope Interface worked.

SCELBI Oscilloscope Interface Description

Paul’s reverse engineering efforts turned out to be right on the money. Having this document has helped me substantially with software design and bring up of real hardware.

There are some aspects to the design that I will elaborate on in future posts. Some parts of Paul’s document will not be obvious to some novices, even though they are described well enough in Paul’s document for many people to understand. Also, I’ve discovered some practical limitations to the implementation, as I go through physical hardware bring up that need further elaboration.

SCELBI Oscope Interface – “First Light”

Saturday, November 19th, 2016

Astronomer use the phrase “First Light” when they use their telescopes for the first time. I decided that turning on my SCELBI Oscilliscope interface on for the first time is, in a sense the same kind of event, so I’m borrowing the astronomer’s phrase. I’ll bet some followers of my blog figured that I’d never get around to hooking this interface up, but they would be wrong.

Here is the test setup. I’m using my reprodution SCELBI 8H, and the “scope”, (not pictured here) is my Tektronics 465.

SCELBI Oscope Test Setup

SCELBI Oscope Test Setup

I wrote a simple test driver that should have repeatedly printed two lines containing “ABC”. This is what I saw when I ran it.

SCELBI O-Scope Interface First Light

SCELBI O-Scope Interface First Light

The bad news is that this is unintellegible. The good news is that I’m getting signals on both X and Y outputs. The Z output has no signal. Next step will be to figure out if this is a hardware, software or adjustment issue or combination of these.

Oscope – analog power supply working well enough (I think), however…

Monday, November 7th, 2016

The 1N5355 helped with the -18voltage, but the positive voltage still was too low. I resolved the positive voltage by changing the dropping resistor down to a value of 20 ohms. I also connected the center tap of the transformer secondary to the ground. With these three changes, the positive and negative 18 volts seem pretty stable.

However, my next problem is that the second channel on my Tektronix’s 465 oscilloscope has become intermittent. Looks like something is wrong on the vertical preamp board. A few hours of debugging hasn’t revealed any obvious component fault. Seems like an intermittent connection somewhere close the input jack is the culprit. I can’t very well test the SCELBI oscope interface until I get both channels working again, so I’ll have to keep working on it.

Oscope Power Supply Part ??

Wednesday, November 2nd, 2016

I’ve now created a few posts about the little split power supply that is used to power the SCELBI Oscilloscope Analog board. Here is another, and most likely, not the last.

After wiring the chassis and powering it up I found the positive side of this supply was 4 or 5 volts low with both digital and analog boards installed. After spending a few evenings fooling around with it, I decided that the main part of the problem probably is the relatively high zener impedance of 45 ohms of the BZX79C18 zener that I had installed in the circuit. I believe that the zener’s impediance is dominating the voltage regulation, not the zener effect. I’ve decided to try an alternate part, the 1N5355, with an impredance of 2.5 ohms. Hopefully it will work better for this application.

SCELBI Oscilloscope Edge Connectors

Saturday, October 15th, 2016
Edge Connectors Wired

Edge Connectors Wired

I have the edge connectors wired and ready to go into the chassis. It should be apparent why I wire these connectors before mounting them in the chassis.

The original unit used wire wrap, but I had these connectors on hand, and decided to solder the wires on, just like the cassette and tty interfaces.

If you follow the schematics, most of the connections are pretty apparent. However sync (BP) and the four strobe inputs (BB, BC, BD, BE) are not. Turns out that sync will go to pin 10 on P1. Out 0 on the main chassis needs to be connected to sync, just like needed to be done with the cassette interface. From studying the images I have, I think that the strobe inputs are spread out between pins 9 and 11 of both P1 and P2. Pin 11 is ground and pin 9 is the strobe output of each port. In this case, the ground inputs of the P1 and P2 connectors are not used as a system ground connection, but only as a low logic input connection. There is some chance that I will have the P1 and P2 outputs swapped compared to the original unit, but without original software or access to the original hardware, I can’t tell for sure which port was connected to which input latch.

I think when they built the chassis for the oscilloscope interface, they should have swapped the ports and the oscilloscope connectors. This would have reduced the length of a number of wire runs. Who knows, maybe they did make that change on later units, but unfortunately no others are known to exist.

SCELBI Analog Board Power Supply Installed

Friday, October 14th, 2016
Power Supply Installed

Power Supply Installed

This took a bit more time than expected, but at least the result is a little cleaner than I really hoped for.

I’ll wire the digital to analog board connections next. After that I’ll attach the power supply and external interface wiring to the edge connectors. I’ll mount the edge connectors in the chassis and connect the dangling power and interface wires to the appropriate connectors. I expect this to be pretty straight forward and go faster than all the previous steps to this project.

I’m not sure if I mentioned it before in this blog, but building the SCELBI Oscilloscope Interface is more complicated than building some basic computer systems.

Scope Chassis ready for wiring

Tuesday, October 11th, 2016
Inside Repro Oscope Chassis

Inside Repro Oscope Chassis

I bought several versions of terminal strips only to use a 4 postion version from Antique Electric Supply. I ended up cutting them down to make the three position set.

I’m going to wire up the power supply first, then wire in the edge connectors. Note that one side of the transformer shares a mounting screw with a terminal strip. Also, on the original unit, the edge connectors are mounted on a panel and secured to the mounting brackets. At the moment, I don’t have enough stock to make a full panel, so I’ve made a mini panel, and I’ll retrofit a full panel later on.

SCELBI O-scope Opamp Power Supply

Monday, October 10th, 2016

Here is a view of my version of the SCELBI O-scope Opamp Power Supply test setup. AC power is not connected in this photo, but would be connected to the transformer during the actual test.

Opamp Power Supply

Opamp Power Supply

I’m using a Triad VPL28-180 transformer and 1N4002 diodes. I found the diodes in my spare parts stash. The first smoothing capacitor is rated at 100uf/50 Volts. The +18 and -18 supplies have 470uF/25 volt smoothing capacitors. The latter are probably overkill, but it’s what I could find in my spare parts stash. The resistors are rated at 120 ohm, 1/4 watts. The zener diodes are the BZX79C18 that I mentioned in a previous post.

After hooking up to the analog board, the voltages are within a volt of +/- 18, with no measurable ripple. Transformer output is a little higher than with the original transformer that I tested with, but not enough to be of concern. Zener shunt current is OK, so I’ll just move this set up into the enclosure, without changing any components.