Stránka 2 z 2

Napsal: 21 lis 2010, 10:40
od Maskot
Andrea píše:... ten DOS4GW nebyl zakompilovanej v tom programu....
To mohlo byt na zacatku a ne az ted :) Jen na okraj,nejde li vymenit DOS4GW nestalo by za test vymenit DOS?

Napsal: 21 lis 2010, 11:14
od Zmije
Taky by šlo vzít debug.exe a najít místo kde to padá a tam to opravit.

Napsal: 21 lis 2010, 11:21
od rnbw
Chcelo by to zistit, ako DOS4GW zistuje velkost pamate. Ci cez INT 15h AX=E801h alebo E820h, pripadne nejako inak - a potom napisat program na "odchytenie" tohoto volania.

Myslim, ze debug si na tom DOS4GW vylame zuby.

Napsal: 21 lis 2010, 11:23
od Andrea
Už jsi někdy debugoval pomocí debug.exe několika megovou hru běžící v chráněném režimu?

Prosím, neřešte tu himem, ramdisk, verze dosu, odpovídejte prosím na dotaz uvedený na začátku vlákna.

Napsal: 21 lis 2010, 12:19
od Andrea
rnbw píše:Chcelo by to zistit, ako DOS4GW zistuje velkost pamate. Ci cez INT 15h AX=E801h alebo E820h, pripadne nejako inak - a potom napisat program na "odchytenie" tohoto volania.
Zkusila jsem ještě před nainstalováním himemu změnit v CMOSce velikost XMS na 32MB a himem to sežral a hra funguje. Akorát se to při příštím resetu nelíbí BIOSu, že mu nesedí velikost paměti. Ale to by stačilo to tam před resetem vrátit. Psát nějakou podvrženou obsluhu na Int 15h Fn E820h si nějak netroufám. :oops:

Edit:
Tak stačí změnit v CMOSce velikost XMS na adresách 30h a 31h, ty nejsou chráněné checksumem a BIOSu je jedno, že se změnily a nic nehlásí (ale přepíše je aktuální hodnotou). Takže jsem napsala malinkej driver, kterej změní CMOSku a ukončí se s chybou, takže ani nezůstane v paměti. Stačí ho pak v config.sys spustit jetě před himem.sys.
(BIOS je na té desce WinAMI, možná to u jiných nebude fungovat.)

Napsal: 21 lis 2010, 13:56
od rnbw
Mozno by stacilo len vratit chybu, akoze e820h je nepodporovane.

Napsal: 21 lis 2010, 14:01
od Andrea
Ale to už je navrtávání do služeb himemu a s tou CMOSkou to funguje i himem si myslí, že tam víc paměti není, tak to tak nechám. Účel to plní, hry běhají, mám to na takovým starým univerzálním počítači, běží na tom DOS, W3.1, W98 i WXP. :)

Napsal: 21 lis 2010, 23:38
od PotPalo
A čo takto skúsiť úplne vynechať himem.sys a hlavne emm386? Kedysi som mal hru, ktorá si s nimi nerozumela. V nápovede písali, že ich netreba, že hra má vlastný "driver" pre rozšírenú pamäť. Tak som ich vynechal, a hra fungovala.

Napsal: 22 lis 2010, 08:58
od Andrea
Hádej, proč jsem tu psala:
Andrea píše:Prosím, neřešte tu himem, ramdisk, verze dosu, odpovídejte prosím na dotaz uvedený na začátku vlákna.
:?:

Napsal: 22 lis 2010, 11:12
od p32
Můžeš mi ten dotaz zopakovat jinak ? Já jsem trochu nechápavej, co vlastně chceš a proč :cry:

Napsal: 22 lis 2010, 11:20
od Andrea
Chtěla jsem, aby se počítač pod DOSem choval, jako že má méně než 64MB paměti, přestože má na desce nastrkáno 256MB. Ale už nechci nic, už jsem si to udělala sama. :oops:

Napsal: 22 lis 2010, 11:26
od PotPalo
Andrea píše:Hádej, proč jsem tu psala:
Andrea píše:Prosím, neřešte tu himem, ramdisk, verze dosu, odpovídejte prosím na dotaz uvedený na začátku vlákna.
:?:
Toto som akosi prehliadol. Ale keďže si to už vyriešila, tak gratulujem. :agree:

Napsal: 25 lis 2010, 19:42
od mtajovsky
Andrea píše:Chtěla jsem, aby se počítač pod DOSem choval, jako že má méně než 64MB paměti, přestože má na desce nastrkáno 256MB. Ale už nechci nic, už jsem si to udělala sama. :oops:
Mohla byste říci jak? Já mám zkušenost s 32 bitovým extenderem z Borland Power Pack for DOS a ten se na himem, emm386 a podobná šidítka vůbec neohlíží. Zapne lineární 32 bitové adresování v protect módu a šmytec. V něm pak může běžet windowsí konsolovka a má k dispozici celou paměť podobně jako pod win.

Napsal: 25 lis 2010, 20:13
od Andrea
Vždyť jsem to tu už napsala, v příspěvku z 21.11.2001 12:19:25.

Napsal: 25 lis 2010, 20:40
od mtajovsky
Aha, sorry, nečetl jsem to celé.