Re: 1. Test


[ Antworten ] [ Ihre Antwort ] [ Forum www.iconsoft.de ]

Abgeschickt von Sebastian am 22 Dezember, 2005 um 13:12:43

Antwort auf: Re: 1. Test von A.K. am 22 Dezember, 2005 um 09:59:20:

Hi AK! :)

Dann hoff ich mal einfach drauf, dass alles planmäßig klappt und du im Urlaub ein bisschen zum Programmieren kommst. ;-)

: Ansonsten hab ich mir aber trotzdem schon ein paar Gedanken gemacht. Wie wäre es wenn man die qb.exe garnet anrührt sondern einfach ein TSR-Programm schreibt welches den INT16-Call abfängt und dann vor der Tastenabfrage immer den anderen INT aufruft. Quasi als Überwachung. Das wäre glaube ich das einfachste.

Hm, du hast viel mehr Ahnung davon als ich. Musst du wissen.

Aber ist es nicht so, dass TSR Programme nicht korrekt unter Windows 2000/XP laufen, sondern ein MS-DOS spezifisches Feature sind und höchstens noch auf Win 95/98 ihren Dienst tun können? Oder hab ich das falsch in Erinnerung? Ich hab mich noch nie intensiver mit TSR-Programmen befasst.

Dieser 2f-Interruptaufruf ist halt insbesondere unter W2K/XP wichtig, damit die CPU Auslastung des DOS-Tasks (ntvdm) heruntergeht. Wenn ich auf W2k QB.EXE eine Zeit laufen lasse, wird die CPU durch die 100% Auslastung immer ziemlich heiß... :/

NDISASM disassembliert die EXE übrigens auch und ich erhalte einen einige MB großen ASM Source. Der enthält am Anfang jeder Zeile das Offset und den Original-HEX-Code. Lässt man diese Zusatzinfos am Anfang von einem Quick'n'Dirty dafür programmierten Tool entfernen, bleiben die reinen Mnemonics. Aber der Code lässt sich dann nicht mehr mit dem beiliegenden NASM assemblieren - egal, ob ich die Registerveränderung und den Interrupt reintue oder nicht. :?

Irgendwie müsste das ja so aussehen, wenn man die EXE an den INT 0x16 Stellen modifizieren würde:
1. AX sichern (vielleicht PUSH?)
2. mov ax, 0x1680
3. int 0x2F
4. AX wiederherstellen
Oder?

Viele Grüße!
Sebastian




Antworten:



Ihre Antwort

Name:
E-Mail:

Subject:

Text:

Optionale URL:
Link Titel:
Optionale Bild-URL:


[ Antworten ] [ Ihre Antwort ] [ Forum www.iconsoft.de ]