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 NitraM > > > > Danke für die Antwort, genau dieses Wissen hatte ich, als ich den Thread geschrieben hatte. > > > > Problem: Funktioniert nur nicht. Nach einem "gefühlten" Monat, kommt es zu Fehlern bei > > allen Abläufen, die diesen Thread verwenden. Das Testen oder Fehlerprovozieren ist fast unmöglich > > da es ja nur alle 50 Tage passiert!. Und ab dann ist bis zum Reset der Wurm drin. > > Warum ist das testen nicht möglich??? > Du kannst den Timer mit folgender Routine auf einen beliebigen Wert setzen: > <code> > //------------------------------------- > inline function settimer (long timer) > //------------------------------------- > { > inline vmcodes.VM_STORE_SYSVAR_LONG | (vmcodes.LSYSVAR_TIMER_MS << 8); > } > </code> > > Damit dir hier der Timer-Interrupt nicht dazwischenfunkt, würde ich die Funktion so aufrufen: > <code> > yield; > timerold=system.timer(); > wait system.timer()<>timerold; > settimer(wert); > </code> > > Übrigens sollte man, um mit dem Timer eine Wartezeit zu berechnen, auf dieses Konstrukt verzichten: > timer+wartezeit<=system.timer() > Bei einem Überlauf ist der Vergleich durch die negativen Werte > eine Zeit lang ungültig. > > Besser ist es, dies so zu berechnen: > system.timer()-timer<=10000 > > Hier wird die Differenz gebildet. Zu beachten ist aber, daß immer vom "höheren" Wert > der "kleinere" abgezogen wird. (Oder anders ausgedrückt: Vom aktuelleren (Timer-)Wert muß > immer der alte Wert abgezogen werden.) > Nur so ist die Differenz immer positiv. > > Probleme mit einer falschen Berechnung treten daher erst nach ca. 3,5 Wochen auf, > und wiederholen sich dann etwa alle 7 Wochen. (solange dauert es, bis der Timer einmal rum ist.) > > nitraM