Typ: | tipy a triky |
Autor: | mike |
Názov: | dos memory |
Naozaj je to tak. Nebudem tu ohovárať nášho hardwarového experta (EDO), ale ten si zjavne pod rubrikou Computer HQ nepredstavuje nič iné, iba kancelársky shareware. To bolo síce trochu prehnané, ale napriek výzvam o napísanie zaujímavých článkov o pretaktovávaní procesorov, sharewaru na editovanie hier, programov na tvorenie levelov, či takú DOS memory stále akosi zaspinkal na svojich HTML editoroch a ... nič. Preto som nútený napísať vám o tom ja. Je to škoda (áno EDulienko, práve ti hovorím do svedomia), pretože EDO by to vysvetlil ďaleko obšírnejšie a kompetentnejšie, takže to nateraz budete musieť vydržať s mojimi neznalosťami a populistickými formuláciami.
Určite máte doma nejakú staršiu hru, ktorá vám niekedy napísala onú úžasnú hlášku OUT OF MEMORY. Takáto hláška vám dokáže poriadne znechutiť deň, spomeniem si len na situáciu, keď Juro nemohol prakticky rok hrať Fleet Defendera, pretože nevedel ako uvoľniť memory. Túžobne sme pozerali manuál a vedeli ho už naspamäť. Potom, jedného dňa Juro spravil takzvanú boot disketu na hru a všetko konečne šlo. Tak.
Ide o takzvanú base memory a koľko jej máte voľnej. Povedzme, že ste úplne obyčajný človiečik, ktorý sa nechce veľmi babrať s programami na uvoľnenie pamäte (napríklad QEMM) a veľa o tom aj tak nevie. Po prvé treba vedieť, že veľkosť vašej pamäte zásadným spôsobom ovplyvní to, čo máte napísané v súboroch autoexec.bat a config.sys. Keď sa zapína počítač, najprv spraví to, čo je v config.sys a potom spraví autoexec.bat.
Autoexec.bat.
Zo skúsenosti vám môžem povedať, že ak nepotrebujete pred tým, ako sa vám zapnú Windows mať ešte Norton (načo?) a v MS-DOSe nemusíte mať slovenské znaky (naozaj nemusíte), môžete mať autoexec.bat PRÁZDNY. Nič, niente. Ale po poriadku. Jeden taký dosť typický obyčajný autoexec.bat vyzerá asi takto:
C:\mscdex.exe /D:MSCD000 /L:E mouse.com SET BLASTER=A220 I10 D1 H7 P330 T6 SET MIDI=SYNTH:1 MAP:E mode con codepage prepare=((852) C:\WINDOWS\COMMAND\ega.cpi) mode con codepage select=852Určite spoznáte aspoň ten mscdex.exe. To vám určuje CD-ROMku, ale len PRED vstupom do Windows. Takže ak spustíte počítač a čakáte, kým sa vám nahodia Windows, dajte pred tento riadok "rem". Tak deaktivujete riadok a tým aj príkaz. Vyzerá to asi takto: rem C:\mscdex.exe /D:MSCD000 /L:E. Myš takisto nepotrebujete, aj tú vyremujte. Takisto iba ak by ste PRED vstupom do Windows chceli hrať nejakú hru, ktorá chce za každú cenu adresy vašej zvukovky potrebujete ďalšie dva riadky. Inak nie. Je vám to všetko vlastne nanič, pretože z Windows sa dá dostať do DOSu povelom "Reštartovať v MS-DOS". Ak v tom powindowsovom DOSe napotrebujete slovenské znaky, s kľudom vyremujte aj tie dva otrasné riadky na konci (con, ega.cpi, bla, bla...). Môj autoexec vyzerá asi takto:
@echo off rem LH C:mscdex.exe /D:MSCD000 /L:E rem LH mouse rem SET BLASTER=A220 I10 D1 H7 P330 T6 rem SET MIDI=SYNTH:1 MAP:E rem LH command.com rem mode con codepage prepare=((852) C:\WINDOWS\COMMAND\ega.cpi) rem mode con codepage select=852Znamená to, že mám všetko vyREMované, a teda môj autoexec je prázdny. Nie je dobré riadky úplne zmazať, pretože niekedy sa vám budú možno hodiť a vtedy stačí zmazať ono "rem" a všetko zase funguje. Na hranie sa ale autoexec vôbec nepotrebujete. takmer každá vecička, ktorú tam napíšete a nie je vyremovaná vám zoberie cennú pamäť.
Config.sys
Teraz už ide do tuhého. Autoexec.bat je oproti configu prechádzkou ružovým sadom a v configu sa toho dá aj omnoho viac pokaziť. Config vám udáva, čo sa má dať do memory (teda čím si ju zaplníte), z čoho vyplýva, že čím menej vecí v configu, tým viac memory. V podstate je to tak, ale niekedy treba aj aktívne obmedzovať. Vysvetlím. Tu máme hneď môj config.sys (práve som ho nanovo robil):
rem Stupid files I don't really need rem ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rem DEVICE=C:\HIMEM.SYS /TESTMEM:OFF rem DEVICE=C:\EMM386.EXE X=C000-C7FF I=B000-B7FF M3 D=256 RAM AUTO ALTBOOT NOTR rem Your CD-ROM driver rem ~~~~~~~~~~~~~~~~~~ rem DEVICEHIGH=C:\TOSHV216.SYS /D:MSCD000 rem Game Starting Config - will give you max-mem after restarting Windows rem in MS-DOS mode rem ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ DOS=HIGH,UMB BUFFERSHIGH=10,0 FILESHIGH=60 LASTDRIVEHIGH=H rem FCBSHIGH=1,0 STACKSHIGH=0,0 rem Other unimportant lines rem ~~~~~~~~~~~~~~~~~~~~~~~ rem SHELL=C:\COMMAND.COM C:\ /E:512 /L:160 /U:160 /P /F rem shell=C:\command.com C:\ /P rem device=C:\WINDOWS\COMMAND\display.sys con=(ega,,1) rem Country=421,852,C:\WINDOWS\COMMAND\country.sys rem device=c:\qemm8\loadhi.sys /r:1 /size=4000 C:\WINDOWS\IFSHLP.SYS rem device=c:\qemm8\loadhi.sys /r:1 /size=19232 C:\WINDOWS\SETVER.EXEVyzerá to chaoticky, čo? Ale pekne po poriadku. Tie vyremované komentáre (nadpisy) sú práve na to - aby sprehľadnili orientáciu v config.syse. Prvé sú nejaké emm386.exe a himem.sys, ktoré som nikdy nepotreboval, ale všetkým ostatným bez nich nechce niekedy počítač ani naskočiť. EDO (a aj priemerne zdatný čitateľ MACHERa) by vám povedal na čo sú, ale ja to neviem. Majú niečo s memory. Takže ak si ich pokusne vyremujete a bude vám počítač blbnúť, nechajte ich tak. My máme aj iné prostriedky...
CD-ROM driver si môžete tiež vyremovať, iba ak by ste v DOSe potrebovali CD-ROMku, ale my tu teraz hovoríme o starších hrách a tie väčšinou CD-ROMku nepotrebujú, pretože sa hrajú z disku.
Dostávame s k jadru tohto článku - pár zázračným povelom. DOS si totiž, ak mu explicitne nenakážete inak, rezervuje dosť veľké kvantum pamäte na veci, ktoré ani nemáte šancu využiť. O týchto riadkoch viem len to, že lastdrivehigh udáva, na koľko písmen diskov si DOS rezervuje pamäť. Ak máte teda disketu (A). harddisk (C), prípadne rozdelený, alebo ešte jeden (D), potom CD-ROMku (E, alebo F), úplne vám stačí posledné písmeno H, pretože to ešte máte aj rezervu (F,G). FILESHIGH je niečo v tom zmysle, koľko súborov môžete mať súčasne otvorených v DOSe, ale tomu nechápem. Môžete si stále písať menej a menej a keď vám počítač začne padať, nájdete rozumnú hodnotu. Osobne som si vyremoval príkaz FCBSHIGH, pretože mi vždy zamŕzal počítač. DOS=HIGH,UMB hodí celý DOS do hornej pamäte a uvoľní viac dolnej ("dobrej") pamäte. No super. Ja som hovoril, že sa v tom vôbec nevyznám.
Ostatné súbory sú takisto praktocky nanič a mám ich len ako nostalgickú spomienku na časy, kedy som spustil len každú piatu hru pre DOS. S novým konfigom mám omnoho viac pamäte aj v samotných Windows a idú mi v ňom spustiť hry, ktoré sa priečili i samotnom DOSe s najviac memory. Ide hlavne o tých pár riadkov označených ako "game starter config", tie mi totiž uvoľnili po reštarte v DOSe tak veľa memory, že som zízal. Teraz mám hocikedy 610 Kb, s čím spustím hocičo a keď k takémuto konfigu ešte použijete QEMM môžete dosiahnuť neuveriteľných 764 Kb voľnej base memory!! To je ten najabsolútnejší rekord, ktorý som kedy dosiahol a EDOvi spadla sánka, keď som mu to oznámil. Potom už len to obligátne "ahá, jasné, ahá - keď je to teda takto..." a podobné kecy. Pred pár mesiacmi totiž uvoľnil len tak dosť veľa pamäte a keď som ho prosil, prosil a ešte raz prosil, aby niečo o tom napísal keď to je pre niektorých určite životne dôležité, niečo tak sľúbil-nesľúbil, že z toho nakoniec nič nebolo. Áno, hneváte sa na neho právom. Nechcem ho však ohovárať, len mu prehovoriť do duše (EDO, to je to čierne), aby vám vyšiel v ústrety. Vie toho ešte viac ako ja a určite by ste jeho skúsenosti zúžitkovali. Napíšte mu výhražné maily.
Na koniec ešte jedna rada: ak sa bojíte príliš experimentovať, vždy si dajte všetko uložiť do hornej pamäte (v autoexecu LH a v configu DEVICEHIGH). Takže napríklad CD-ROMka bude v config.syse nie DEVICE=C:\TOSHV216.SYS /D:MSCD000, ale DEVICEHIGH=C:\TOSHV216.SYS /D:MSCD000. Takisto bude v autoexec.bate nie C:mscdex.exe /D:MSCD000 /L:E, ale LH C:mscdex.exe /D:MSCD000 /L:E. To sú všetko príklady, systém je však, dúfam, jasný.
Nič nie je dobré robiť bez ochrany a aj keď sa cítim ako káravá mamička, musím vám povedať, že všetko čo spravíte, robíte na vlastné riziko a preto si svoje pôvodné súbory autoexec.bat a config.sys starostlivo zálohujte. Majte poruke aj štartovaciu disketu. Veľa ľudí si ju nerobí a to je veľká chyba, pretože takú vec treba mať. Okrem toho je dobré mať aj dve štartovacie diskety, pretože zákon schválnosti hovorí, že práve v kritickom okamihu keď ju budete potrebovať bude už nejakým spôsobom zmagnetizovaná, či inak pokazená.
mike.
P.S.: Toto je zároveň aj moja výzva všetkým, ktorí poznajú zopár trikov, alebo vedia čo-to o editoroch levelov, cheatovacích programoch, či nastaveniach akcelerátorov, o maximalizovaní výkonu počítača pre hry, o emulácii CD-ROM, alebo hocičo, čo všetkým gamerom pomôže, pošlite svoj článok a pomôžte tým, ktorí sa v tom nevyznajú tak ako vy.