Pascal Interrupt
Varsanyi Peter
varsanyi at axelero.hu
Fri Feb 18 09:56:00 CET 2005
Sziasztok!
>>> DOS alatt viszont az összes BIOS megszakítás könnyedén elérhetõ. ...
>>> Rémlik hogy van valamilyen 1/18-ad sec-ként ismétlõdõ megszakítás is
>>> közöttük (int21H ?) ami lehet hogy megfelelne Neked is.
>> Az INT8 lesz az ...
>> Ez egy szamalalo IC-rol van hajtva, aminek
>> eleg magas a priotitasa es kivulrol siman atprogramozhato mas frekire
>ennek a timer atprogramozasnak azert van bibije...:-(
>peldaul az, hogy ehhez van szamitva a billetyuzet figyeles is, azaz
>jelentosen felgyorsitva bizony idegesse, erzekennye valik a billetyuzet
>is... avagy lelassitva lustava... csak szuk hatarok kozott programozhato
at...
Úgy látszik, néha nem árt egy olyan ortodox DOS-os a háttérben, amilyen én
is vagyok. A Kollégák kissé homályosan emlékeznek már a régi szép idõkre,
pedig nagyon okos dolgokat tud a DOS! Elõször is a felhasználói Timer
megszakítás az Int1Ch interrupt. Alapértelmezett esetben a frekije 14,31818
MHz/12/65536 = kb. 18,2 Hz. A 12 a színsegédvivõ fix osztása, ez adja a
8254 bemenõ clock-ját, (1,19 MHz), és ebbõl a 65536 a TIMER0
alapértelmezett osztója. Ez az IRQ0-át hívja meg, ami Int08h-t generál,
amely a szükséges mûveletek (KBD, FDD) elvégzése után meghívja az Int1Ch-t.
Magyarul lazán és büntetlenül le lehet csökkenteni a TIMER0 osztóját, csak
arra kell figyelni, hogy az Int08h rutinját csak kb. 18-szor hívjuk meg
másodpercenként. Pl. ha 1 KHz-et akarok elérni atompontos 1 ms-os
idõzítéshez, akkor a Timer0-t fel kell programoznom 1193-as osztásra, és az
Int08h-t át kell írnom egy kicsit, hogy csak minden 55. hívásnál hívja meg
az eredeti Int08h-s kódot. Ez garantálni fogja, hogy a gépen semmit sem
lehet abból észrevenni, hogy a háttérben át lett buzerálva a timer. Akár 10
KHz-es frekit is gond nélkül elõ lehet állítani egy átlag 486-os gépen, én
legalábbis naponta használom; mégpedig mindenféle ASM betétek nélkül.
Tisztán ASM-ben megírva akár még sokkal feljebb is lehetne menni. Ráadásul
ez az idõzítés teljesen hardveres, és ugyanúgy fog ketyegni egy XT-n, mint
egy 3 GHz-es Pentiumon...
Bye:
Pepe
More information about the Elektro
mailing list