prosba - pristup do rozsirene pameti
Igor Cesko
cesko
Středa Březen 17 11:54:45 CET 2004
> Snazime se s kamaradem nejak rozbehnout pristup do rozsirene pameti
> (potrebujem obsluhovat tak cca 16MB pameti). Konkretne mame tento problem:
>
> Zjistime volnou pamet
> pridelime blok pameti
> zamkneme blok pameti - je vracena v DX:BX bazova adrese jako 32-bitova
> linearni adresa zamcenoho bloku
toto je fyzicka adresa v pamati (nie segment:offset)
>
> Mokud ale zapiseme (mov) na tuto adresu najaka data tak nam PC tak cca po
> 200bajtech klekne. Nevime jastli ta vracena adresa neni jenom ukazatel nebo
> co stim delat dal. Uz jsme prolezli kdejakou literaturu ale nikde nejdou az
> tak do detailu.
Ak programujete v realnom rezime (prip. v 16 bitovom kode) tak je
pamat nad 1MB nepristupna (aspon si to myslim). Preto je nutne
plnit tuto pamat cez sluzbu XMS - toto funguje na 100%, lebo
ovladac XMS nepracuje v realnom rezime procesora.
Este skuste toto:
Ak pouzivate v 16-bitovom kode 32-bitove instrukcie, tak pred ne
musite dat prefix, ktory urcuje zmenu velkosti operandu (66h) alebo
prefix zmeny velkosti adresy (67h) - teda dajte pred mov este 67h.
Prefix 66h je osvedceny a pouzivam ho na opravu BUG-u v DOS-
ovom kompilatore Borland C 3.1 (zle kompiluje pre 386 procesor,
najma ked pouzivate interrupt - velmi zakerne a tazko odhalitelne,
teda ak mate problemy je to v tom).
>
> Nemate s timto nekdo prosim nejake zkusenosti???????
>
> Moc dekuji za pripadnou pomoc - Briza
>
>
>
Zdravim.
Igor
-----------------------------------------------
Ing. Igor Cesko
Vyvoj a informacne technologie
hardware & software
Applied Precision Ltd.
Technicka 5
821 04 Bratislava
SLOVAKIA
Tel., Modem: +421-7-43337 340
Tel.,Fax: +421-7-4342 66 28
E-mail: cesko@internet.sk
appliedp@internet.sk
Web: www.internet.sk/appliedp
-----------------------------------------------
Další informace o konferenci Hw-list