Für dieses Forum muß Javascript im Browser aktiviert werden!
Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C2 Quellcode formatieren: <code>Quellcode</code> ASM Quellcode formatieren: <asm>Quellcode</asm> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! > Hallo Walter, > > ich will mal in deinem Text rumschmieren: > > > > im Manual und auch im MSR-Buch wird festgehalten, daß die Ports P1H0-H3 interruptsensibel sind. > > Daraus ist zu schließen, daß das OS irgendwas gemeimnisvolles macht. Und dieses > > "Geheimnisvolle" kann über den Befehl hook beeinflußt werden: > Es ist nicht zwingend notwendig das ein OS im allgemeinen auf einen Interrupt reagiert. Bei dem der CC2 > muss ich dir Recht geben. > > > man kann eigene Routinen vor oder auch nach dem OS-IRQ-Geschehen laufen lassen. > auch wenn du dich vor das geschehen der OS setzen kannst heißt das noch lange nicht das du wirklich > <b>als Interruptroutine bedient wirst</b>. Ich denke mal dass bei einem Interrupt immer an die gleiche Stelle > gesprungen wird. Und erst dort wird geschaut ob ein vom CC2-Programmierer definierter Code vorhanden. > Und wenn du nur ein Return schreibst, wirst du nach deinem Code genau wieder an dieser Stelle rauskommen. > Ich muss mal in ASM ausprobieren wie sich der C164 verhält, wenn du explizit ein RETI (Return from Interrupt) > schreibst, obwohl du zuvor mit einem CALL in ein Unterprogramm gesprungen bist. Das Problem ist das > normaler Weiße unteranderem die Rücksprungaddressen und der aktuelle CPU-Status auf dem Stack > gespeichert werden. Also dürfte man mit einem unpassenden RETI den Controller ziemlich durcheinander > bringen. Wenn nicht, wie ich befürchte, ein ILLOP (unerlaubter Befehl) Interrupt ausgelöst wird. Und dieser > führt beim CC2-OS, zumindest bis V2, zu einem Stillstand der CC2. > > > Nun, ich brauch und will den IRQ für einige der in Frage kommenden Ports nicht. Deshalb das RETI, das vor > > dem OS-IRQ eingeklinkt wird und ohne weiteres IRQ Geschehen in die Applikation zurückführen soll. > Gerade wenn du die nicht brauchst, stört es nicht wenn das OS mal nachschaut was die Pins machen. > Die Bearbeitungszeit ist gegenüber der normalen Code-Interpretationszeit zu vernachlässigen. > > Viel Spaß weiterhin mit dem kleinen Käfer im großen Gehäuse > TManiac