Nascom Journal

  

6/80 7/80

NMI Taste für den Nascom 1

Mit dem folgenden Schaltungsvorschlag kann auf einfache Weise ein Non Maskable Interrupt mittels externer Taste ausgelöst werden:

Als Nandgatter kann IC 3 der Tastaturplatine verwendet werden, welches zur Hälfte unbenutzt ist. Die Schaltung unterdrückt Kontaktprellen der Taste und beschränkt die Impulsdauer auf weniger als 1 µsec.

Ein solcher Impuls wird lediglich bei einem andauernden WAIT- oder aktiven BUS­RE­QUEST-Signal von der CPU ignoriert. Ansonsten wird jedes laufende Programm unterbrochen!

Die Adresse der nächsten Instruktion (des unterbrochenen Programms) wird als spätere RETurnadresse auf den Stack geladen. Dann führt die CPU Ober 0066H einen Sprung auf
$NMI = 0C47H ( Nasbug T2, T4 ) bzw
$NMI = 0C7DH ( NAS-SYS 1 ) aus.

Dort steht der Sprungcode C3H mit der nachfolgenden Adresse, die der Benutzer beliebig ändern kann. Ein Interrupt im direkten Nasbug-Monitorbetrieb ist nicht sinnvoll, da der interne Monitorstack ab 0C33H zu klein ist und Fehler verursachen kann. Wird der NAS-SYS Monitor entsprechend modifiziert ( s.Nascom Journal 4/80 ), so können auch unterbrochene Anwenderprogramme nach der Interruptroutine fehlerfrei weiterlaufen.

PS.
Aufmerksame Betrachter werden feststellen, daß die Schaltung den Ausgang Q von IC 42 b nach Masse kurzschließt. TI gibt jedoch im TTL DATA BOOK (76, S.6-56) für den 74LS74A einen für die Dauer von 1 sec max. zul. Kurzschlußstrom von −100 mA an, der jedoch durch den internen Collectorwiderstand (120 Ohm), der begrenzten „Sinkcapability“ des 7400 und der Schwellenspannung an D1 bei weitem nicht erreicht wird !

Ulrich Krüger

Seite 9 von 52