joels@tektronix.UUCP (Joel Swank) (10/26/84)
The original external reset circuit appeared in March '84 'COMPUTE!' in the '64 Explorer' column by Larry Issacs. The circuit consisted of an SPST pushbutton switch wired between pins 1 and 3 of a 12/24 pin card edge connector that was plugged into the Commodore 64 user port. The second reset circuit was submitted by Lester Iwamasa and published in June '84 'COMPUTE!' in the 'CAPUTE!' column. This circuit contains two diodes, a resistor, and a capacitor in addition to the above switch. Lester claims that the C-64 no longer matches the schematic supplied in the Programmers Reference Guide, and that the first reset circuit presented the possibility of damage to the C-64. He also claims that his circuit corrects the problem and offers it for sale for $24. Since I have recently been working on a project developing a plug-in circuit like the original circuit, I thought some investigation was in order. The part that changed in the C-64 is the 7406 inverting buffer that drives the reset line for the 556 timer that performs power on reset. It has been replaced by a Japaneese part that is logically and electrically equivalent, but has a different pinout. This causes the new PC boards to be different from the schematic. To test for the possibility of damage, Larry Holibaugh, an electronic engineer rigged up a circuit to allow computer control of a relay connected like the switch in the first circuit. We reset the C-64 for hours at varying rates from .5 hz to 1 Khz, as well as many manual tests. I estimate that we reset the C-64 at least 1 million times during this testing. During testing we measured the effect on the C-64 with a 100Mhz oscilloscope, and a VOM. Following are the results: Reset button down draws about 5 milliamps. Both manual switch and relay were very bouncy. Up to a millisecond of bounce in some cases. There was some under shoot and overshoot at the transitions. .5 v undershoot max. .25 v overshoot max. The addition of Lester's circuit made no visable change in any test. Conclusions: The overshoot and undershoot is no more than the normal slight ringing found in digital circuits. The bounce could theoretically cause an ocasional incomplete reset. I do ocasionally get this symptom with this reset circuit. The second circuit does not help this. There seems to be very little evidence of any thing that would harm the C-64. My C-64 was reset over a million times and suffered no ill effects. The correct way to implement a reset circuit on the C-64 is to connect the SPST switch across ground and the trigger(pin 8) of the 556 timer. Shorting the 556 trigger to ground will generate the full debounced 2 to 3 second reset pulse that is generated at power-up. But this does require internal modification of the C-64. Joel Swank Software Center Tools Support 50-487 Tektronix Beaverton OR 97077 (503) 627-4403