Proper display of LEDs during boot up and self-test?

100 views
Skip to first unread message

Charles Ess

unread,
Mar 10, 2024, 3:47:27 AMMar 10
to PiDP-8
Hi all,
I thought my PiDP8i build was going smoothly: no major glitches when soldering everything in; no obvious problems with solder joints, etc. And when first booting up, without the switches installed, the self-test worked fine with first all lights on and then all lights off. And the final snake program seems to be right. (And testing the switch connections as instructed also works as it should, i.e., shorting each switch as instructed results in a switch step change as displayed in the terminal.)
But I'm not sure about what comes in between. Perhaps I'm being too literal about what counts as a row and column. The first five rows light "only" the 12 LEDs for the Program Counter through to the Multiplier Quotient. this makes some sense - but after that, rows become less clearly associated. Row 6 lights everything in the column 3rd from the right plus the top four lights of the 2nd column to the left, as a start; row 7 lights the step counter row plus the first column on the right and the bottom 2 lights of the 2nd column. Row 8 (image attached) gets all the lights in the Data field and Inst Field - plus the lonely little Link LED.
Columns are also, um, ambiguous. Column 1 (image attached) does light up the first full column (over SR12) - but also the Word Count / 4th LED in the second column .
All the other column tests follow suit, in the sense that a new column lights up - along with other, not obviously associated lights (at least not obvious to me) - e.g., column 12 (image attached) which is indeed the full column 12, but also the far left LED in the Data Field along with the And and Current Address LEDs.

Last but not least: the computer itself works, so far as I've been able to test it - i.e., it boots into OS/8, basic commands such as DIR, etc. work, and I've also run some of the basic programs as well as compile and run two of the included C programs. These all display properly on the terminal window. But: the lights showing on boot-up ("running OS8," attached) do not match what I see as opening lights in several YouTube demonstrations and tours. Perhaps this is insignificant - but in conjunction with the above puzzles, I'm not as sure about that as I'd like to be.

FWIW: I've spent quite some time trying to track down more detailed documentation of what the self test for the PiDP8i should show, but have not had any luck. I'm happy to track all of this down in further detail if there is more detailed documentation to be found.

Will be grateful, as usual, for any comments and advice as to whether or not all is as it should be - or, if not, what might the culprit(s) to look into.

many thanks in advance,
- charles
column 1.jpeg
column 12.jpeg
running OS8.jpeg
row 8.jpeg

Steve Tockey

unread,
Mar 10, 2024, 6:22:19 AMMar 10
to PiDP-8
Hi Charles,
I'm many thousands of miles away from my PiDP-8/i's so I can't be necessarily 100% sure but things look pretty correct to me.

"Perhaps I'm being too literal about what counts as a row and column."

Yes. The row-column vernacular comes from the switching scheme that Oscar uses to get from the Pi's GPIO to the LEDs on the front panel. The mapping from row-column to physical LED isn't 100% regular from the perspective of the Front Panel. As long as All Lights On, All Lights Off, and the Snake are working then everything is fine. The patterns "in the middle" are there (IMHO) to help debugging shorts and opens when something is wrong.

"But: the lights showing on boot-up ("running OS8," attached) do not match what I see as opening lights in several YouTube demonstrations and tours"

Your "running OS8.jpeg" photo is pretty close to correct. When OS/8 is idle, it is looping between addresses 01207 and 01210 which appears in the Program Counter (top horizontal row) as 01217. The left-most of the vertical columns of lights is the current instruction which is alternating between IOT (6) and JMP (5). The middle vertical column is showing Fetch and Execute major states as the 6031 IOT and the 5207 JMP instructions in the OS/8 wait loop execute. In the far right vertical column,  the middle light is for the Pause part of executing the 6031 IOT instruction and the bottom Run light is normal.

What's not normal is that the middle row of horizontal lights for the Memory Buffer should not be all off. They should be showing something like 7237 which is the OR combination of the 6031 and 5207 instructions at addresses 01207 and 01210, respectively.

If you HALT the CPU then simulate the EXAM switch  you should see that middle horizontal row light show differently every time you hit EXAM.

I seem to remember that one or more early versions of the PiDP-8/I software didn't show the Memory Buffer register. I wonder if you've got the latest version. You should double check that.

As for matching YouTube demonstrations, I noticed that several of the older videos were apparently using early versions of the PiDP-8/I software which didn't display OS/8 faithfully in several respects, one of those being the Memory Buffer.

So the bottom line appears to me to be that a) I think your assembly went just fine, b) make sure you're running the latest version of the PiDP-8/i software, and c) don't trust the early YouTube videos as some of them are wrong in terms of the front panel display status.


Cheers,

-- steve


Charles Ess

unread,
Mar 10, 2024, 1:24:04 PMMar 10
to PiDP-8
Hey Steve,

First of all, thanks a million for all this! Very much appreciated on all fronts, and very helpful indeed.

Following your encouraging analysis that the build seemed to be going just fine, my play time today went to soldering in the switches, which appear to be working as they should.

FWIW: I'm using a Pi 3b+, running a stock 32-bit Raspian - I installed the PiDP8i software as provided on the tangentsoft site:

https://tangentsoft.com/pidp8i/dir?ci=tip

I don't know if you would have a recommendation for doing things differently - including a different source for a newer version of the software? But it also may be a case of operator error, i.e., I may have messed something or another up during the install process.  
Will wait to hear for any further recommendations as you (or others) may have them before trying a reinstall.- ideally with tomorrow's play time (along with drilling holes to complete the build - whee!)

The advice regarding not to be overly dependent on early YouTube videos is also perfectly placed and noted.

Again, many thanks indeed on all fronts, and will look forward to any additional suggestions that may occur to you regarding the software installation.

Best,
- charles

Charles Ess

unread,
Mar 11, 2024, 5:28:19 AMMar 11
to PiDP-8
Just a quick update, FWIW
Here's the completed build, running an increment accumulator program, with a long delay loop + setting the throttle down to 1k so that everything is not a blur (from Christopher Matso's introduction and demo: <https://www.youtube.com/watch?v=oMRDAD1JNWo>)

Not completely satisfied with every detail of the build (we're our own worst critics sometimes) - but very pleased with the overall results.

Thanks again, Steve and Oscar! Computing like it's 1969 ...

best,
- charles

slow running increment accumulator.mov

Steve Tockey

unread,
Mar 11, 2024, 11:11:02 PMMar 11
to PiDP-8
Charles,
Looks great to me!


-- steve


Reply all
Reply to author
Forward
0 new messages