Hi,
also dazu gäbe es mehrere Dinge zu sagen:
1. während der Ausführung der Trap-Routine ist der entsprechende Interrupt gesperrt (disabled)
(Zitat: "Note that interrupts are always disabled (see 8.2) during the evaluation of a trap routine.")
Da
innerhalb des Traps Main aufgerufen wird, welches wiederum eine Endlosschleife enthält,
wird der Trap (bzw. Main innerhalb des Traps)
nie verlassen und weil der interrupt die ganze
Zeit gesperrt bleibt, läuft das alles nur ein mal...
Damit kämen wir direkt zu Punkt 2:
Main innerhalb des Traps aufzurufen ist keine gute Idee, schon garnicht wenn Main eine Endlosschleife enthält

Ich würde das immer so programmieren, dass Main immer nur vom Betriebssystem aufgerufen wird, nie
von mir selbst. So ist das, glaube ich, auch gedacht....
Du mußt das also so ändern, dass der Interrupt die Endlosschleife in Main unterbricht bzw. zu einer äußeren Schleife
zurückkehrt und neu beginnt.
Main muß aus dem Trap auf jeden Fall raus....
gruß
rmac