For a more proper emulation of the RESTORE Key . . . Nov 21, 2018 11:40:50 GMT
Post by jmpff3d on Nov 21, 2018 11:40:50 GMT
Another Blast from the Past ...
comp.sys.cbm #39915 (4 more)
From: email@example.com (Markus Wandel)
Subject: Re: C= RESTORE
Date: Fri Feb 09 21:32:30 EST 1996
Organization: Bell-Northern Research Ltd.
I just had a look at the schematics, and the RESTORE key is capacitively coupled to the chip it drives. What this means is that the pulse from the key must have a fast rise time for the signal to be recognized. And since the keys have rubber contacts, the required fast rise time occurs if the key is struck fairly hard, but not if it is tapped normally.
(OK, OK, before everybody jumps on me: The RESTORE key generates a low-going pulse. But the technical term is still "rise time." The actual circuit is 1M from RESTORE key to +5, then 51pF cap, then 470K to +5, then 556 trigger input. The 556 turns the short spike that makes it through the capacitor back into a nicely timed NMI pulse.)
This is a feature. The RESTORE key generates a non-maskable interrupt. What this can do is screw up anything timing sensitive the machine may be doing at the time, like a transfer on the serial I/O bus or RS232 interface. It may crash the machine if the Kernel ROM is currently swapped out. It will restart a game cartridge image. And so on. You can't mask a NMI. And with the key right next to the RETURN key, I guess they just wanted to reduce the possibility of NMIs being generated by mistake.
I always thought this was an excellent feature. RUN-STOP/RESTORE gets out of all kinds of hung computer scenarios, and bashing RESTORE fairly hard just kind of made sense.
Markus Wandel Ottawa Ont. Canada (613) 592-1225
firstname.lastname@example.org <-- NOT 'email@example.com' (that's for work only)
*** DISCLAIMER *** Not speaking for or representing my employer in any way.
If emulators became detailed enough to simulate the behavior listed by Mr. Wandel, then it might be a good time for simulated failure modes and other bits of reality we've conveniently forgotten about... "Sir, your SID chip is broken ! .. Please send 0.0001 Bitcoin to [1viceteam] [1Z64K] for replacement chip!" .. heh heh heh