Hmm ... also ich finde Dein Programm sehr unübersichtlich ...
Code:
           $regfile = "m8def.dat"

     $crystal = 1000000

Config Pind.0 = Output
Config Pind.1 = Output
Config Pinc.1 = Output
Config Pind.3 = Output
Config Pind.4 = Output
Config Pind.5 = Output
Config Pinc.2 = Output
Config Pind.7 = Output
Config Pinc.3 = Output
Config Pinb.1 = Input
Config Pinb.4 = Input
Config Pinb.2 = Output

Config Pinb.5 = Output



Config Int0 = Rising
Enable Interrupts                                           'einschalten der Interrupts
Enable Int0
On Int0 Unterprogramm





If Pinb.4 = 1 Then

Portb.5 = 0
Portb.3 = 0
Portc.3 = 0
Portd.0 = 1
Portd.1 = 1
Portc.1 = 1
Portd.3 = 1
Portd.4 = 1
Portd.5 = 1
Portc.2 = 1
Portd.7 = 1
Portb.2 = 1
Waitms 250
Portb.2 = 0

Waitms 750

Portd.0 = 0
Portd.1 = 0
Portb.3 = 0
Portc.1 = 1
Portd.3 = 1
Portd.4 = 1
Portd.5 = 1
Portc.2 = 0
Portb.2 = 1
Portd.7 = 1
Portc.3 = 1

Waitms 250
Portb.2 = 0

Waitms 750

Portb.3 = 0
Portc.1 = 1
    Portd.3 = 1
    Portd.4 = 1
    Portd.5 = 1
    Portc.2 = 1
    Portd.7 = 1
    Portc.3 = 1
    Portb.2 = 1
      Waitms 250
    Portb.2 = 0

    Waitms 750
    Portb.3 = 0
    Portc.1 = 1
    Portd.3 = 1
    Portd.4 = 1
    Portc.3 = 0
    Portb.2 = 1
    Portc.2 = 0
    Portd.7 = 0
    Portd.5 = 0

    Waitms 250
    Portb.2 = 0

    Waitms 750

    Portc.1 = 1
    Portd.4 = 1
    Portd.5 = 1
    Portc.2 = 1
    Portd.7 = 1
    Portc.3 = 1
    Portb.2 = 1
    Portd.3 = 0

    Waitms 250
    Portb.2 = 0

    Waitms 750
    Portb.3 = 0
    Portc.1 = 1
    Portd.4 = 1
    Portd.5 = 1
    Portd.7 = 1
    Portc.3 = 1
    Portb.2 = 1
    Portc.2 = 0
    Waitms 250
    Portb.2 = 0

    Waitms 750

    Portd.3 = 1
    Portc.2 = 0
    Portd.4 = 1
    Portd.7 = 1
    Portc.3 = 1
    Portb.2 = 1
    Portc.1 = 0
    Portd.5 = 0
    Waitms 250
    Portb.2 = 0

    Waitms 750
    Portc.2 = 0
    Portc.1 = 1
    Portd.3 = 1
    Portd.4 = 1
    Portd.5 = 1
    Portc.3 = 1
    Portb.2 = 1
    Portd.7 = 0
     Waitms 250
    Portb.2 = 0

    Waitms 750


    Portc.1 = 1
    Portd.3 = 1
    Portc.3 = 1
    Portc.2 = 1
    Portd.5 = 1
    Portb.2 = 1
    Portd.4 = 0
    Waitms 250
    Portb.2 = 0

    Waitms 750

    Portd.3 = 1
    Portd.4 = 1
    Portc.1 = 0
    Portd.5 = 0
    Portc.2 = 0
    Portd.7 = 0
    Portc.3 = 0
    Portb.2 = 1
     Waitms 250
    Portb.2 = 0


    Waitms 750

    Portc.3 = 0
    Portc.1 = 1
    Portd.3 = 1
    Portd.4 = 1
    Portd.5 = 1
    Portc.2 = 1
    Portd.7 = 1
    Portb.2 = 1
       Waitms 250
    Portb.2 = 0

    Portb.3 = 1
    Portb.5 = 1



End If

                                                     '

Unterprogramm:
Portd.3 = 1
Portd.4 = 1
Portd.7 = 1
Portd.6 = 1


Return
Ich denke Dein Problem kommt direkt vom ISP Anschluss Deines Proggers.

Edit: Naja, ich muss schneller werden, Michael hat es schon geschrieben
P.s.: Konntest Du Deine Segment Anzeigen nicht auf einen kompletten Port legen ? Du könntest diese dann mit:

Code:
7seg0 alias PORTC
7seg0 = &B01111111 ' alle Segmente an bei Common Cathode
7seg0 = &B00111111 ' nur "0" anzeigen
Nur mal so als idee ...

Gruß
Jens