
         ; ******************** Beispiel-Programm I ****************************

start:
         move.l $6C.s,alte_Rout    ;Zeiger auf alte Routine retten
         move.l #neue_Rout,$6C.s   ;Adresse der neuen Routine in Zeiger
         move.w #$7FFF,$DFF09C   ;INTREQ loeschen
         move.w #$8020,$DFF09A   ;jetzt gewaehlte Interrupts erlauben
         move.w #$C000,$DFF09A   ;und das INTEN-Bit setzen
maus:
         btst   #6,$BFE001       ;Warteschleife
         bne.s  maus
ende:
         move.l alte_Rout(pc),$6C.s    ;alte Interrupt-Routine in Zeiger
         move.w #$7FFF,$DFF09A   ;alle Interrupts aus
         move.w #$A02C,$DFF09A   ;und alte wieder erlauben
         move.w #$C000,$DFF09A   ;und schliesslich INTEN-Bit setzen
         clr.l d0
         rts                     ;Rueckkehr zu CLI,Seka,e.c.t.
neue_Rout: ;ab hier neue Interrupt-Routine
         bchg   #1,$BFE001       ;zur Kontrolle Power-LED umschalten
         ;ab hier eigenes Programm
         move.w #$0020,$DFF09C   ;Interrupt-Bit zuruecksetzen
         rte                     ;und aus Interrupt zureuckkehren
alte_Rout:
         dc.l 0                  ;Platzhalter fuer Adresse der alten
         ;Routine

         ; by Marcus Roth in 1988

