• Please review our updated Terms and Rules here

A reset button for the 5160

Roland Huisman

Veteran Member
Joined
Mar 24, 2011
Messages
1,464
Location
The Netherlands
I really hate to power down and power up my 5160 if
some sort of software hangs and the machine refuses to
listen to my CTRL-ALT-DEL command....

Why is there no reset button on an IBM PC XT?

Well let's make one on the computer. I have misused the
power good signal from the power supply. This signal is
pulled low at power up. This is to let the power stabilize first.

At power failures the PG signal is also pulled low to keep the
machine in reset. The 8284 handles the reset lines for the rest of the machine.

I've placed a momentary (NO) switch between the GND and PG. For safety (current limiting)
I've also put also a 100R resistor in series with the switch. (But it should not be necessary)
To prevent damage I've put the switch outside the case.

reset.jpg

So now I can give the IBM a hard reset any time I want.

Regards, Roland
 
A similar item...

Back in the 5160 days, one of the things shipped with the IBM Techref was a small ISA card (6181781) with a button on the bracket. It momentarily pulled pin B1 to A1, setting off an NMI. Useful for debugging.
 
A similar item...

Back in the 5160 days, one of the things shipped with the IBM Techref was a small ISA card (6181781) with a button on the bracket. It momentarily pulled pin B1 to A1, setting off an NMI. Useful for debugging.

I think that card is also part of the Professional Debug Facility. It may have shipped in multiple packages.
 
I really hate to power down and power up my 5160 if
some sort of software hangs and the machine refuses to
listen to my CTRL-ALT-DEL command....

Why is there no reset button on an IBM PC XT?

Well let's make one on the computer. I have misused the
power good signal from the power supply. This signal is
pulled low at power up. This is to let the power stabilize first.

At power failures the PG signal is also pulled low to keep the
machine in reset. The 8284 handles the reset lines for the rest of the machine.

I've placed a momentary (NO) switch between the GND and PG. For safety (current limiting)
I've also put also a 100R resistor in series with the switch. (But it should not be necessary)
To prevent damage I've put the switch outside the case.

View attachment 11742

So now I can give the IBM a hard reset any time I want.

Regards, Roland

I like that idea.

Maybe the reason IBM had no reset button was that the computer was never supposed to crash so bad that that CTRL-ALT-DEL would get lost :+)
 
I think that card is also part of the Professional Debug Facility. It may have shipped in multiple packages.

You're probably right--I bought both at the same time, but I don't remember much about the professional debug package. I used it (or tried) about twice. There were better third-party tools out.
 
Last edited:
Maybe the reason IBM had no reset button was that the computer was never supposed to crash so bad that that CTRL-ALT-DEL would get lost :+)
"The computer" certainly did not crash, nor for that matter did DOS. It was applications that screwed up - usually by writing to reserved areas of memory.

Remember back then the computer, that is to say the hardware and the BIOS were very simple. DOS was only used for the file system and disk operations.
 
As has been said, it was purely for developers - who should have been the only people to need it!

And the external card did NMI--which was far more useful to developers. A reset doesn't tell you what caused your problem--an NMI which interrupts the current processor state stands a much better chance of doing so.
 
A similar item...

Back in the 5160 days, one of the things shipped with the IBM Techref was a small ISA card (6181781) with a button on the bracket. It momentarily pulled pin B1 to A1, setting off an NMI. Useful for debugging.


I'm very curious, back in the past, did you had this card?
 
I still do. Just don't use it.

I have a few ISA protoboards. How difficult would it be to make a makeshift one of these debugging cards? Just attach two wires to A1/B1 and a normally-open button to the card?

And the external card did NMI--which was far more useful to developers. A reset doesn't tell you what caused your problem--an NMI which interrupts the current processor state stands a much better chance of doing so.
I presume that I'd have to write my own NMI handler to dump the processor state (int 2h) and then wait for a keypress, for instance? I thought the normal NMI handler halts the system and requires the power to be turned off.
 
I have a few ISA protoboards. How difficult would it be to make a makeshift one of these debugging cards? Just attach two wires to A1/B1 and a normally-open button to the card?
Next time I am in the museum, I'll check the Options & Adapters Tech. Ref. to see if we have a circuit for it.
 
I have a few ISA protoboards. How difficult would it be to make a makeshift one of these debugging cards? Just attach two wires to A1/B1 and a normally-open button to the card?
The line connected to B1 is named I/O CH CK, is active low, and has a pullup to +5V.
A1 is ground, and so the answer is yes.

I thought the normal NMI handler halts the system and requires the power to be turned off.
The circuit diagram for the 64KB-256KB version of the 5150 motherboard shows three possible NMI sources:
Source 1: Parity error in motherboard RAM. Enabled/disabled via 8255.
Source 2: Parity error in expansion card RAM. Generated by the card taking the I/O CH CK line on B1 low. Enabled/disabled via 8255.
Source 3: Unmasked exception has occured in 8087. Enabled/disabled via math coprocessor switch on motherboard.

The source code for the 5150's default NMI handler is at the top of page 5-40 of the IBM manual found [here].
How it handles the three above sources:
Source 1: Display "PARITY CHECK 1" then halt.
Source 2: Display "PARITY CHECK 2" then halt.
Source 3: Not handled - simply returns.

The handler in the 5160 differs only in that after displaying either "PARITY CHECK 1" or "PARITY CHECK 2", it will attempt to locate the address of RAM that failed and if successful, display the segment of the address.
 
Hi, Do you have any photos of the finished job? I'm looking for a way to stick a reset switch on my 5160 too. I close my eyes and pray each time I have to power it off. Parts are getting so rare and expensive these days I'm worried to blow something.
 
Hi, Do you have any photos of the finished job? I'm looking for a way to stick a reset switch on my 5160 too. I close my eyes and pray each time I have to power it off. Parts are getting so rare and expensive these days I'm worried to blow something.
Presumably, you are referring to post #1. A hardware reset solution.

Most other posts are referring to a special ISA card, and when the switch on it is pressed, triggers an NMI. If it was desired that the resulting NMI trigger a software reset, suitable code would need to be loaded at start-up time, code that replaced the motherboard BIOS' NMI handler. So a software reset, not a hardware reset. And unsuitable because a software reset would also happen if a RAM card signaled to the motherboard that a RAM parity error occurred.
 
Back
Top