Ersatz für DOS-Int 15h Funkt. 83h (Timer)

Für Fragen von Einsteigern und Programmieranfängern...
mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: Ersatz für DOS-Int 15h Funkt. 83h (Timer)

Beitrag von mse »

mschnell hat geschrieben: Tuts das auch mit NoGUIApplication ?
Ja.

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: Ersatz für DOS-Int 15h Funkt. 83h (Timer)

Beitrag von mschnell »

Super !

Gruß und Dank,
-Michael

AlterMann
Beiträge: 238
Registriert: So 13. Dez 2009, 09:43
OS, Lazarus, FPC: Lazarus 3.0 (rev lazarus_3_0) FPC 3.2.2 i386-win32-win32/win64
CPU-Target: x86 64Bit
Wohnort: Niederösterreich

Re: Ersatz für DOS-Int 15h Funkt. 83h (Timer)

Beitrag von AlterMann »

mse hat geschrieben: Für Diese Anwendung gibt es doch sicher Komponenten?

Beispielcode gibt es in der ziemlich betagten unit msecommport:
http://mseide-msegui.svn.sourceforge.ne ... s?view=log
oder auch in tpipereader:
http://mseide-msegui.svn.sourceforge.ne ... n&view=log

Martin
Bis jetzt verwende ich Synaser.
Ich hab in Deine beiden kurz reingeschaut und sie mir runtergeladen.
Sehen recht vielversprechend aus.
Danke
Früher war alles besser. Und aus Holz!

AlterMann
Beiträge: 238
Registriert: So 13. Dez 2009, 09:43
OS, Lazarus, FPC: Lazarus 3.0 (rev lazarus_3_0) FPC 3.2.2 i386-win32-win32/win64
CPU-Target: x86 64Bit
Wohnort: Niederösterreich

Re: Ersatz für DOS-Int 15h Funkt. 83h (Timer)

Beitrag von AlterMann »

Lösung mit der ich vorerst zufrieden bin.

Eine längere Nachdenkpause (weil ich einfach keine Zeit hatte) brachte einen plötzlichen, nächtlichen Einfall, welchen ich heute ausprobieren konnte:
Ich habe einfach der Idle-Routine ein Sleep(20) spendiert.

Und? Siehe da:
Das Programm funktioniert weiterhin und die Prozessorlast ist nicht anders, als wenn das Programm nicht läuft (~2%-4%).

Grüße
Christian
Früher war alles besser. Und aus Holz!

Benutzeravatar
theo
Beiträge: 10858
Registriert: Mo 11. Sep 2006, 19:01

Re: Ersatz für DOS-Int 15h Funkt. 83h (Timer)

Beitrag von theo »

AlterMann hat geschrieben: Eine längere Nachdenkpause (weil ich einfach keine Zeit hatte) brachte einen plötzlichen, nächtlichen Einfall, welchen ich heute ausprobieren konnte:
Ich habe einfach der Idle-Routine ein Sleep(20) spendiert.
Ein Timer wäre vllt. doch sauberer. Aber sleepen ist imho zu unrecht verpönt. Es sagt ja nur, dass die Anwendung nicht den ganzen Saft braucht, und andere Prozesse/Threads über die CPU Zeit verfügen können.

RSE
Beiträge: 462
Registriert: Mi 30. Jul 2008, 13:11
OS, Lazarus, FPC: WinXP SP3 (L 0.9.28.2 FPC 2.2.4)
CPU-Target: 32Bit
Kontaktdaten:

Re: Ersatz für DOS-Int 15h Funkt. 83h (Timer)

Beitrag von RSE »

Mit OnIdle handelst du dir allerdings auch wieder das Idle-Problem ein, das weiter oben angesprochen wurde (wird unter Linux nicht dauernd aufgerufen).
Seit er seinen neuen Computer hat, löst er alle Probleme, die er vorher nicht hatte!

AlterMann
Beiträge: 238
Registriert: So 13. Dez 2009, 09:43
OS, Lazarus, FPC: Lazarus 3.0 (rev lazarus_3_0) FPC 3.2.2 i386-win32-win32/win64
CPU-Target: x86 64Bit
Wohnort: Niederösterreich

Re: Ersatz für DOS-Int 15h Funkt. 83h (Timer)

Beitrag von AlterMann »

RSE hat geschrieben:Mit OnIdle handelst du dir allerdings auch wieder das Idle-Problem ein, das weiter oben angesprochen wurde (wird unter Linux nicht dauernd aufgerufen).
Ich setze Done in Idle auf false. (Keine Ahnung ob das unter Linux auch funktioniert)

Mich würde dieser Nachteil aber aus zwei Gründen nicht stören:
Das Programm ist sehr spezeill auf eine bestimmte Hardware zugeschnitten und eigentlich nicht zur weiteren Verbreitung gedacht.
Ich persönlich habe keinerlei Berührungspunkte mit Linux oder anderen Unixderivaten.

Grüße
Christian
Früher war alles besser. Und aus Holz!

Antworten