«« ( Date ) »» // «« ( Thread ) »» // mips-nastava - 2008

Re: Problem sa prekidom na 1Ch (tajmer) - simulator u asembleru

by Bosko Jevtic
ponedeljak, 11. februar 2008 - 16:58.

2008/2/11, Predrag Milosevic <pedjoni@gmail.com>:
>
> Imam jedan mali problem sa postavljanjem moje prekidne rutine na ulaz 1C u
> IVT.
> Problem je u tome sto se moja prekidna rutina ne izvrsi ni jednom.
>
> Evo mog koda a postavljanje prekidne rutine ma 1C i cuvanje adrese stare
> prekidne rutine
>
> mov ax, 0
> mov es, ax
> mov ax, es:[1Ch*4]
> mov word ptr oldInt, ax
> mov ax, es:[1Ch*4 + 2]
>
> mov word ptr oldInt+2, ax
>
> cli
> mov word ptr es:[1Ch*4], offset AZURIRANJE
> mov es:[1Ch*4 + 2], cs
> sti
>
> Naravno u mojoj prekidnoj rutina ja pozivam i staru prek. rutinu sa 1C,
> ali problem je u tome sto izgleda ne izvrsava nijedna.
> Jesam li nesto propustio, posto procedura AZURIRANJE, koja bi trebalo da
> se poziva, radi sigurno?
>
> -----------------------------------------------------------------
> unsubscribe:
> minimalist@rti.etf.bg.ac.yu?subject=unsubscribe%20mips-nastava
> -----------------------------------------------------------------
>
> U najkracem, nemoj je koristiti. Pod Windowsom XP sigurno ne radi.
Najlaksi nacin je da kasnjenje generises pomocu neke petlje (mozda cak i
dvostruke)

Pozdrav

P.S. probao sam i prekidne rutine 1Ch, 15h, int 21h (proveravanje vremena
preko DOS interapta) i gore pomenuto resenje je najbolje, a radi sigurno.