Welchen Interrupt würden Sie von DOS aus haken, um die Echtzeituhr zu bekommen?Welchen Interrupt würden Sie von DOS anhängen, um die Echtzeituhr zu erhalten?
Antwort
Die Echtzeituhr kann keine Interrupts erzeugen. Es war (vielleicht immer noch) mit dem CMOS-RAM gekoppelt, weil es von der Batterie gepuffert wurde. Es kann nur über die Ports 0x70 und 0x71 erreicht werden.
Sie können jedoch den Interrupt des PIT (programmierbarer Interrupt-Timer) aktivieren. Das ist Interrupt 0x08 (z. B. Hardware IRQ0). Soweit ich mich erinnere, wurde der Interrupt von dos so konfiguriert, dass er etwa 27 mal pro Sekunde aufgerufen wird. Sie können es auch auf andere Frequenzen programmieren, aber das wird die Dos-Uhr etwas durcheinander bringen (Port 0x40 und 0x43).
Das ist das eine, aber es ist 18 und ein bisschen mal eine Sekunde. – pjc50
Hier ist eine ganze Liste von ihnen, nicht sicher, was Sie genau suchen. http://www.htl-steyr.ac.at/~morg/pcinfo/hardware/interrupts/inte2dm8.htm
Von: http://www.htl-steyr.ac.at/~morg/pcinfo/hardware/interrupts/inte1at0.htm
auf der Intel 8259 Familie der programmierbaren Interrupt Controllers Lesen auf. Demnach unterbricht es 8 (Master) und 112 (Slave). Hier ist ein sehr technisches Dokument zum 8259A: http://pdos.csail.mit.edu/6.828/2008/readings/hardware/8259A.pdf
http://www.control.com/thread/1026238869 hat einige Infos dazu. Hook int 08h (vergessen Sie nicht, es erneut zu versenden); das heißt alle 55 Millisekunden.
Darf ich die Frage stellen, warum Sie das tun möchten? Das DOS-Programmieren in diesen Tagen ist ziemlich bizarr :-) –