Deinen Tip habe ich mal ausprobiert, tatsächlich trat das Problem bei den PCL manipulationen auf. Im Simulator habe ich den PCLATH testweise kurz vor den überlauf auf 1 gesetzt, und siehe da es hat geklappt.
Wenn ich das richtig sehe, muss ich vor dem Tatsächlichen "springen" erst mal prüfen ob der PC überlauft, wenn ich den gewünschten Wert addiere und gegebenfalls (wenn c = 1) den PCLATH auf 1 setzten (oder um eins erhöhen).
Nur was ich nicht weiß ist was nach dem Sprung zu tun ist(PCLATH auf 0 setzten, bzw um eins verringern?).
Allerdings konnte ich einige addwf PCL, f befehle aus meinem Projekt entfernen, und habe die Anweisungen durch indirekte Adressierung ausgetauscht. (Durch die Sprungbefehle habe ich mir eine Art Array gebastelt)
In meinem Projekt gibt es nur noch eine addwf PCL, f Zeile, als Liste mit 127 Einträgen.
Zurzeit arbeitet mein Programm richtig, aber es ist leider noch nicht fertig.
Ich danke dir für deine Hilfe!!
Lesezeichen