Pascal Interrupt

Erdos Zoltan silverst at axelero.hu
Fri Feb 18 08:47:37 CET 2005


es ha en most kedvet kapnek egy dobgep epitesehez, ahol folyamatosan 
kellene birizgalnom az alapfrekit, akkor folyamatosan birizgaljam a 
normal interrupt segedosztom erteket is?

Nem fog ebbe elobb utobb belehalni a rendszer? :-)



Varsanyi Peter wrote:
> 
> 		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
> 
> -----------------------------------
>  Szponzorunk: http://tonerbolt.hu/
> 
> 
> 





More information about the Elektro mailing list