Hallo Robert,

jetzt hatte doch jemand Erbarmen und hat mir verraten, dass er einen USB-Stick hat...
Ich habe mal die relevanten Teile des Disassembly rauskopiert (die 1000 NOPs dazwischen also nicht...).
Code:
TriggerISR
C:0x0800    C0E0     PUSH     ACC(0xE0)
C:0x0802    C0D0     PUSH     PSW(0xD0)
C:0x0804    75D000   MOV      PSW(0xD0),#0x00
C:0x0807    C007     PUSH     0x07
C:0x0809    5380F8   ANL      P0_DATA(0x80),#IP1(0xF8)
C:0x080C    E508     MOV      A,counter(0x08)
C:0x080E    14       DEC      A
C:0x080F    6012     JZ       C:0823
C:0x0811    14       DEC      A
C:0x0812    6014     JZ       C:0828
C:0x0814    14       DEC      A
C:0x0815    6018     JZ       C:082F
C:0x0817    14       DEC      A
C:0x0818    601A     JZ       C:0834
C:0x081A    2404     ADD      A,#0x04
C:0x081C    703C     JNZ      C:085A
C:0x081E    85B00A   MOV      time1(0x0A),P3_DATA(0xB0)
C:0x0821    8037     SJMP     C:085A
C:0x0823    85B00B   MOV      time2(0x0B),P3_DATA(0xB0)
C:0x0826    8032     SJMP     C:085A
C:0x0828    85B00C   MOV      time3(0x0C),P3_DATA(0xB0)
C:0x082B    C2AF     CLR      EA(0xA8.7)
C:0x082D    802B     SJMP     C:085A
C:0x082F    85B009   MOV      phase(0x09),P3_DATA(0xB0)
C:0x0832    8026     SJMP     C:085A
C:0x0834    AFB0     MOV      R7,P3_DATA(0xB0)
C:0x0836    EF       MOV      A,R7
C:0x0837    14       DEC      A
C:0x0838    6010     JZ       C:084A
C:0x083A    14       DEC      A
C:0x083B    6013     JZ       C:0850
C:0x083D    14       DEC      A
C:0x083E    6016     JZ       C:0856
C:0x0840    2403     ADD      A,#0x03
C:0x0842    7016     JNZ      C:085A
C:0x0844    C201     CLR      usePhase(0x20.1)
C:0x0846    C200     CLR      mainc(0x20.0)
C:0x0848    8010     SJMP     C:085A
C:0x084A    D201     SETB     usePhase(0x20.1)
C:0x084C    C200     CLR      mainc(0x20.0)
C:0x084E    800A     SJMP     C:085A
C:0x0850    C201     CLR      usePhase(0x20.1)
C:0x0852    D200     SETB     mainc(0x20.0)
C:0x0854    8004     SJMP     C:085A
C:0x0856    D201     SETB     usePhase(0x20.1)
C:0x0858    D200     SETB     mainc(0x20.0)
C:0x085A    0508     INC      counter(0x08)
C:0x085C    850880   MOV      P0_DATA(0x80),counter(0x08)
C:0x085F    53B4FB   ANL      IRCON0(0xB4),#CCU6_CC60RH(0xFB)
C:0x0862    D007     POP      0x07
C:0x0864    D0D0     POP      PSW(0xD0)
C:0x0866    D0E0     POP      ACC(0xE0)
C:0x0868    32       RETI     

                 InterruptInit:
C:0x0883    75F808   MOV      IP1(0xF8),#counter(0x08)
C:0x0886    75F904   MOV      IPH1(0xF9),#0x04
C:0x0889    43B804   ORL      IP(0xB8),#0x04
C:0x088C    75B93B   MOV      IPH(0xB9),#0x3B
C:0x088F    75B714   MOV      EXICON0(0xB7),#0x14
C:0x0892    53A8FB   ANL      IEN0(0xA8),#CCU6_CC60RH(0xFB)
C:0x0895    43E804   ORL      IEN1(0xE8),#0x04
C:0x0898    43E808   ORL      IEN1(0xE8),#counter(0x08)
C:0x089B    22       RET      

                 main:
C:0x089C    1208B0   LCALL    PortInit(C:08B0)
C:0x089F    120883   LCALL    InterruptInit(C:0883)
C:0x08A2    E4       CLR      A
C:0x08A3    F508     MOV      counter(0x08),A
C:0x08A5    D2AF     SETB     EA(0xA8.7)
C:0x08A7    E508     MOV      A,counter(0x08)
C:0x08A9    C3       CLR      C
C:0x08AA    9405     SUBB     A,#0x05
C:0x08AC    40F9     JC       C:08A7
C:0x08AE    80FE     SJMP     C:08AE

                 PortInit:
C:0x08B0    75860B   MOV      P0_DIR(0x86),#time2(0x0B)
C:0x08B3    E4       CLR      A
C:0x08B4    F591     MOV      P1_DIR(0x91),A
C:0x08B6    F5B1     MOV      P3_DIR(0xB1),A
C:0x08B8    4391C0   ORL      P1_DIR(0x91),#T2CON(0xC0)
C:0x08BB    438604   ORL      P0_DIR(0x86),#0x04
C:0x08BE    22       RET
Die erste Spalte ist jeweils die Adresse.
Auf Adresse 0043 steht ein Jump auf die TriggerISR (sprich, das ist der Interrupt-Vektor für diesen Interrupt).

Wieso habe ich einen Interrupt für 2 Prioritäten? Das mit IP und IPH kommt daher, dass es 4 Prioritätsstufen gibt und die 2 Bit auf die zwei Register verteilt sind.

Nochmal vielen Dank und viele Grüße