• Please review our updated Terms and Rules here

Data General Nova 1200

Marty

Veteran Member
Joined
Jul 26, 2009
Messages
3,141
Location
Boulder , Colorado USA
Hi All;
I am Hankering to see If I can either get another Nova 1200 or the one I had before from Bruce, and just use newer Power Supplies, like You have done.. I miss those soft lights blinking on and off..
THANK YOU Marty
 

CommodoreZ

Experienced Member
Joined
May 18, 2007
Messages
152
Location
Z Labs.
Howdy folks, it's been awhile. Time to regale you all with the progress of the Nova 1200 power supply replacement.

Forgotten Machines/firebirdta84 designed a passive interface board for the Nova's power supply for our development work. Nevets01 and I vetted his work, and each ordered a few for ourselves. My batch of them arrived mid-August.

20220815_022053.jpg
Another good friend of mine designed a metal bracket in the spirit of the original in CAD for me, but modified the layout to accommodate modern power conditioning modules, and increase the opening for airflow. It was manufactured by sendcutsend using 0.74" mild steel. They also bent the part for me, as I lack the tools and experience to perform that type of fabrication.

20220824_202145.jpg

Using abusing compu_85's battery tab welder, we spot welded some steel grating to cover the ventilation hole for safety. Then I gave it a coat of "prototype red" paint to make it very clear that this is not original. After that, I began installing Meanwell modules that would be providing power regulation, and wiring them up. An LRS-150-15 provides the 15V rail, and an RT-125A provides the 5V, -5V, and 12V rails. I added a pair of high performance industrial 12V Noctua cooling fans -- the highest airflow available for the 12V range. The 12V rail would be standing in for the rather vague Lamp Power rail that Data General documents indicate could be anywhere from 11V to 14.5V, so I figured it had sufficient amperage to run both a pair of cooling fans and the lamps without issue.

20220903_230308.jpg
Surprisingly, I was able to get both of the 120mm fans in place using some brackets and a few pieces of meccano. It's a bit of a tight fit, but it fits! It was then installed in the chassis.

bulbtestaugust.jpg
Bulb tests went well, voltages and ripple seemed well within spec, so it was time to reassemble and see how we did.

20220904_060051.jpg
Initial tests seemed like everything was going okay, voltages were where we expected them, but nothing was functioning as expected, most notably the front panel. The 12V section of the supply seemed upset all the sudden, and was going into cutoff oscillation, and one of the bus signals was following it, albeit capped at 10V, when it should only be as high as 5V at best. Then we noticed it, at the expense of an oscilloscope probe:

20220904_202035.jpgFLIR_20220904_110512_072.jpg
Seems that we had gotten the labels on the top and bottom of the power interface board mirrored.

The main power signals (GND, 15V, 5V) are all present top and bottom on the power board. The other 8 contacts only exist on one side of the card edge connector. /Power Fail, MEM OK, 60Hz, Lamp Ground on the bottom, -15V, +5V OK, -5V, Lamp Voltage on the top. And we got them backwards... none of us caught the mirrored signal labels, and I was the first to power on and find out the hard way. The good news is that most of those signals weren't going to cause an issues. 60Hz and -15V were options I don't have installed. MEM OK and +5V OK are opposite from one another, and both were tied high with pull-up resistors. /Power Fail has its own pull-up resistor on the CPU board, so I didn't touch it. -5V was sitting where 60Hz should be, and it only goes to one specific card that was not installed at the time of testing.

That leaves Lamp Voltage and Lamp Ground. With those two reversed, the 7407's on the front panel that drive the display lamps were getting backwards voltage. The good news is that it's an isolated ground, only connected on the card edge connector itself. During my testing, trying to figure out what was wrong, I connected my probe ground mostly to the signal ground used by most devices. The last time, it was connected to what I thought was Lamp Ground, resulting in the probe conducting what was effectively a ground loop, and it released the magic smoke (see the FLIR image to see how irregularly warm it got). Once I realized that, I swapped all of the mirrored signals on the card edge connector, but lamps were acting real funky. The 7407's that drove all but one lamp had all been zorched by the unexpected voltage, so those all needed replacement. Good news is I had a pile of them, and I started replacing them and installing sockets.

20220918_011522b.jpg
After that, it was a game of chasing any signals on the CPU board that might have backfed 12V (or rather 10V after the voltage drop provided by the 7407's). U2 (a 74LS74 that handles RUN/HALT control) and U22 (a 7404 for more status control lines) had both been destroyed, and were replaced with sockets and new chips. After that, signals like RUN, HALT, FETCH, etc. started working as intended, but things like the program counter would not.
20220905_035112.jpg
Unfortunately, that was as much debugging as I could do prior to Vintage Computer Festival Midwest. I had to pack the system up in the car for the road trip, but we suspected that 4 or possibly 8 of the 8271's in the CPU had been damaged, but we weren't certain. I had no 8271's or 74179's to install in their place, so I went to war with the Nova I had, and a seemingly working power supply.
old vs new.jpg
I've reached the image cap, so more will follow in the next post.
 

CommodoreZ

Experienced Member
Joined
May 18, 2007
Messages
152
Location
Z Labs.
So, VCF Midwest 17 was a blast. I got the Nova all set up, and did a bit of debugging on the show floor on Saturday next to a very encouraging sight: Nevets01's DCC-116 running a fancy new power supply, made using the same Meanwell modules and card edge connector as mine. He was able to avoid the pitfalls I had pointed out, and had a working machine all weekend long.
novapile.jpg

I spent some time trying to verify what parts had failed on my system, and eventually determined that it was indeed the 8x 8271's that had failed: U29, U28, U33, U32, U37, U38, U39, & U40. I spent some time hunting for spares (either the Signetics part number or the 74179 equivalent). Sadly, nobody had such an obscure old 4-bit shift register on hand. Everything else seemed to be alright though. Nevets01 was able to test 2 of my other 8K core memory boards to ensure I had operational memory, so that's nice. Forgotten machines brought along a spare Nova 1200 CPU board, but it sadly was broken as well, and in different, unknown ways.

Once I got home, I was able to order some 8271's, and I got them installed yesterday.
20220917_215311.jpg20220917_215313.jpg

After those were installed, I tested things like the program counter (which now works again). After installing a known good core memory board, I was also able to test the accumulators, and traversing/modifying memory. Right now, I'm noticing some intermittent and concerning behavior: Accumulator 3's Examine switch does not respond when it should, nor does Deposit or Examine. Run sometimes also will not function, and I suspect all of those either have to do with the machine restarting in an inconsistent state, or perhaps more failed or marginal logic chips that I've yet to find.

I was able to toggle in a simple Fibonacci number calculator program written by QuantX and test the program, which I am happy to say ran as intended. I connected up my Cassette I/O board and was able to run the serial parrot test successfully as well!
20220919_032213.jpg

However, Nevets01 is noticing that same thing as well and pointed out something important: the power supply wakeup signals (MEM OK, +5V OK, and /Power Fail) are not coming up in the correct order on system power on. Both of us are just immediately asserting those signals high, rather than providing them in the proper order. We're investigating good ways to implement that logic at this time.

Anyway, I think we're making good progress, all things considered.
 

CommodoreZ

Experienced Member
Joined
May 18, 2007
Messages
152
Location
Z Labs.
Progress update time.

A friend of mine has designed a simple triple RC-circuit combined with Schmitt triggers to replace the power check circuitry of the original PSU. Here's my implementation of that design:
1663829686690.png
It takes the presence of 5V, and uses that to provide 5V OK, MEM OK, and /POWER FAIL in the right order with delays between each signal, culminating in the CPU coming up cleanly, and (in theory) halting the machine cleanly on an unplanned power failure.
1663830097188.png
I've got it attached to the top of the card edge connector in the power supply, replacing the pull-up resistors I had previously installed.

It's drastically improved the functionality of the front panel, removing most of the unresponsiveness from switches. Deposit seems to be the only switch that isn't responding consistently, but it does improve once the machine is warmed up. Everything else is playing nice for now, and using the Nova feels much like it did when the original PSU was in good working order.

So, that brings me to the next thing to test: loading the binary loader, and then BASIC. Once the bootstrap loader has been toggled into memory and run, the BL can be loaded over serial, followed by BASIC. It should respond when finished with a prompt about setup of spaces and other stuff. The 1200 fails following that first prompt, getting stuck in a loop that goes nowhere. On the old power supply, when it was getting finicky at VCF East, I was seeing this behavior as well, except the CPU tended to halt after the first prompt, rather than continue to run. You can see a walkthrough of that process here:


Where does that lead me right now? I'm convinced that the next step is to find and run DG's internal diagnostic programs to determine the health of the CPU and the memory. If anyone has any leads on sources for those, that would be much appreciated.
 

Qbus

Veteran Member
Joined
Feb 23, 2011
Messages
921
Location
Salisbury Maryland
couple years back i did a video of one of my Rolm 1602 running a simple debug that can be toggled in thru the front panel. after installing this you can use a terminal to examine or change the memory or registers, it lets you know if the hardware is working correctly and i can post the code if you want it. It was available as the NOVA DEBUGGER 1 paper tape 090-00043 but the program is in the manual and not that hard to toggle in by hand.
Have it up at:


Do you have a copy of NOVA Basic?
 

CommodoreZ

Experienced Member
Joined
May 18, 2007
Messages
152
Location
Z Labs.
I would very much appreciate the listing of that debug tape. That might just be the difference between knowing what failed and guessing wildly.

I have a copy of DG Single User BASIC, and you can find footage of my 1200 running BASIC a few months ago before the PSU rebuild process began, back on page 2 of this thread. The latest video ends me with trying to load BASIC over serial, and it failing some time during the configuration process.
 

Qbus

Veteran Member
Joined
Feb 23, 2011
Messages
921
Location
Salisbury Maryland
The debug program is around two hundred lines of code but its not that hard to toggle in. will have to look for the manual but useing is easy. have to look n line to see if i can find the original Nova manual for debugger 1 from 1969
 

Attachments

  • DEBUG PGM.pdf
    76.8 KB · Views: 12

ClassicHasClass

Veteran Member
Joined
Mar 22, 2013
Messages
1,603
Location
Sunny So Cal
couple years back i did a video of one of my Rolm 1602 running a simple debug that can be toggled in thru the front panel. after installing this you can use a terminal to examine or change the memory or registers, it lets you know if the hardware is working correctly and i can post the code if you want it. It was available as the NOVA DEBUGGER 1 paper tape 090-00043 but the program is in the manual and not that hard to toggle in by hand.

Nice use of GRiD Pad!
 

CommodoreZ

Experienced Member
Joined
May 18, 2007
Messages
152
Location
Z Labs.
There are a number of useful diagnostic programs cited in a number of Nova manuals I've encountered. The key ones I've heard of are:

Memory Address Test
Checkerboard III & IV for memory testing
Arithmetic Test
Exercisor
NMORT L

Exercisor is the last piece of software run on a Nova 1200 or 800 from the factory, before they ship it out. First-run procedure specifies starting this program initially. Apparently it's good at finding edge case faults that the other diags cant. I've also heard of MORT which is a more intense memory testing program, and now this Debugger that Qbus has provided.

If so, then perhaps see 095-000012-08__Exerciser__1969-1976.ab at http://www.novasareforever.org/diags/

Note that there's also a 097-000004-02_Exerciser_1971.pdf
Wait, have those diagnostic binaries been there the whole time?

Alright, seems I have my work cut out for me.
 

thunter0512

Experienced Member
Joined
Sep 27, 2020
Messages
423
Location
Perth in Western Australia
The debug program is around two hundred lines of code but its not that hard to toggle in. will have to look for the manual but useing is easy. have to look n line to see if i can find the original Nova manual for debugger 1 from 1969
Hmmm - I thought of transposing the code into Nova assembly source and then assemble it to create a format I can directly load via the BIN loader rather than trying to toggle it in.
Then I discovered the following in the middle of page 2:

Code:
7377 000000
7378 101020 Line feed typed
7400 020465 Carriage return typed

Now 7378 is an "interesting" octal address. I wonder what this was meant to be.

I am glad I have not tried to toggle it in.
 

Qbus

Veteran Member
Joined
Feb 23, 2011
Messages
921
Location
Salisbury Maryland
OK, all right, suppose you never made a mistake! here is a copy of the page from the original manual!
think that whenever i have toggled a program into a system I set the start address and just hit the advance to the next address anyway so never noticed the error.
 

Attachments

  • 093-000038-00_Debug_I_0011.jpg
    093-000038-00_Debug_I_0011.jpg
    384.6 KB · Views: 8

thunter0512

Experienced Member
Joined
Sep 27, 2020
Messages
423
Location
Perth in Western Australia
OK, all right, suppose you never made a mistake! here is a copy of the page from the original manual!
think that whenever i have toggled a program into a system I set the start address and just hit the advance to the next address anyway so never noticed the error.
Could you please share a complete scanned copy of the original manual?
It would make sense to type in the source code and assemble it rather than assembling the octal code to create a BIN tape which can be loaded directly.
Thanks
Tom
 

Qbus

Veteran Member
Joined
Feb 23, 2011
Messages
921
Location
Salisbury Maryland
In the words of President Joe, Com on man! If you got a system with switches and lights why not use them. Its just four pages of code and when entering the only address, you have to enter is the staring address because once you set the starting address you just use the deposit next switch and it increments the address for you each time you enter the next instruction, same thing when you check the code you just use the examine next and step right thru.

If your going to go Old School go all the way, stacking up and flipping all those switches is something you can tell your grand kids about some day.

Here is a copy of the code as I received it, sorry for the quality but that’s how I got it. If you do develop a nice clean file maybe you can publish the code for all of us.

This weekend will go back and look at address 7600 to 7800 and see where the error is and correct my copy but if someone can post explanations of a lot of the statements that may be a big benefit for people like me who’s programing expertise is sadly lacking.
 

Attachments

  • 093-000038-00_Debug_I_0010.jpg
    093-000038-00_Debug_I_0010.jpg
    356.5 KB · Views: 3
  • 093-000038-00_Debug_I_0011.jpg
    093-000038-00_Debug_I_0011.jpg
    384.6 KB · Views: 3
  • 093-000038-00_Debug_I_0012.jpg
    093-000038-00_Debug_I_0012.jpg
    290 KB · Views: 2
  • 093-000038-00_Debug_I_0013.jpg
    093-000038-00_Debug_I_0013.jpg
    378 KB · Views: 3
Top