Posted By: Pharook (Wake up. Time to die.) on 'CZprogram'
Title: Re: pipani
Date: Thu Jan 16 19:09:14 1997
Argenit:
> potreboval bych radu, mam povesny svoje procedury na interaptu klavesnice
> pipat, vsechno funguje v pohode, jen to strasnz pipani, pomozte pliiiiiiz.
Shimi:
> Result : Bud v te tvuji akci z interruptu nevolej starej handler, nebo v hl.
> prog musi bezet snyzka ktera vycisti bios bufer treba readkey etc.
ja znam jen jediny duvod, proc volat puvodni obsluhu preruseni
klavesnice, a to ten, ze pri krokovani jsem obcas rad, kdyz debugger
zareaguje na ctrl-break. ve finalni verzi pak volani zrusim (hmm,
presneji receno $ifdef Debug atd). ale take mi vadilo ono pipani pri
preteceni bufferu klavesnice. vyresil jsem to primo na preruseni.
pred onen obligatni skok na puvodni rutinu jsem pridal par instrukci,
ktere nastavi ukazatel bufferu klavesnice zpet na zacatek. cili nikdy
nemuze dojit k naplneni vsech sestnacti pozic a preplneni bufferu a
dabelskemu pipani. cili:
xor ax, ax ; segment 0000h
mov es, ax
mov ax, [es:041Ch] ; zacatek bufferu klavesnice
mov [es:041Ah], ax ; konec bufferu
zurive popovani ; cituji tuttla blahe pameti
jmp far 0000h:0000h
ORG $-4
Old09 DD ?
je to ciste, a je to rekl bych, elegantnejsi nez ona nutnost mit v hlavnim
programu dummy volani sluzeb 00h a 01h int 16h.
______________________________________________________________________________
pharook
"mesic je dulezitejsi, nez slunce," reklo dite, "protoze sviti, kdyz je tma."