poniedziałek, 30 września 2013

EX12 - Wielkie FAQ Windowsowe i DOSowe

Czyli wszystko to, co chcemy wiedzieć, a boimy się zapytać!
(to już ostatni tutorial w tym temacie, obiecuję)


Co mnie tknęło do napisania tegoż? Własne doświadczenia, pytania znajomych, jak i generalne problemy ludzi, którzy przesiadują na forach typu Vogons (które to po raz kolejny pozdrawiam). Pamiętaj, że problemy będą nieuniknione, zwłaszcza z takimi starymi sprzętami - ale przez ostatnie tutoriale starałem się wszystko wyjaśnić w taki sposób, by jak najbardziej umilić wam życie. Tym niemniej z pewnością natrafisz na kilka denerwujących sytuacji z oldskulowym kompem - mam nadzieję, że zawarta tu będzie odpowiedź na nurtujące ciebie pytanie!
(niektóre z odpowiedzi tyczą się nawet emulowanych sprzętów, tj. maszyn wirtualnych, czy DosBox'a, więc nawet jeżeli masz jakiś problem z tymi - także możesz zajrzeć!)


*** Problemy techniczne i natury ogólnej ***

Q: Nic w ogóle się nie odpala, mimo, że wszystko jest podłączone. Diody mrugają, monitor włączony, jednak nic się nie pojawia. Co się stało?

A: Czyli chociaż wyeliminowaliśmy problem z zasilaczem/kablem zasilającym. Zatem tak - jeżeli słychać wiatrak i diody się świecą, a mimo to komp nie chce zastartować, to oznacza dwa scenariusze:
  • jeżeli nic się nie pojawia, a usłyszysz piski z PC speakera - oznacza to problem z kartą graficzną (uszkodzona/niewłaściwie wsadzona w slot). Wyłącz wszystko, odłącz z prądu, wyjmij kartę i wsadź ją ponownie. Jeżeli znowu nie zadziała - sorry dawg, musisz poszukać innej karty graficznej
  • jeżeli nic się nie pojawia i nie słychać żadnych pisków - zapewne nawaliła pamięć RAM. Wyjmij kości ze slotów i wsadź je ponownie, ew. jeżeli masz kilka kostek to wsadzaj każdą po kolei i sprawdzaj czy system się uruchomi - możliwe, że jedna z nich jest uszkodzona.
  • nie zaszkodzi także upewnić się, czy oby kabel VGA, łączący kartę graficzną z monitorem nie jest uszkodzony. No co. :)



Q: Przy starcie komputera, na ekranie testów BIOSU, pojawia się komunikat 'CMOS checksum error' (lub podobny), który można pominąć, jednak i tak wkurza. Co jest tego przyczyną?

A: Padnięta bateryjka na płycie głównej. BIOS trzyma swoje ustawienia (konkretnie to datę i godzinę) na tzw. 'guzikowej' baterii CR2032. Rozkręć obudowę, zlokalizuj bateryjkę, wyjmij ją z gniazda (zazwyczaj jest jakiś podważnik, który w tym pomoże, jeżeli nie - śrubokrętem ją!), pędem do najbliższego zegarmistrza po nową, wsadzaj nową i ustaw datę i opcje BIOSu od nowa - voila!



Q: Przy starcie komputera, na ekranie testów BIOSu, pojawia się komunikat 'Floppy disk fail' (lub podobny). Co jest?

A: Dokładnie to, co oznajmia komunikat - albo padła ci stacja dyskietek, albo któryś z kabli się odłączył. Spróbuj przepiąć ponownie kable, jak nie pomoże - odłącz stację, zakop ją i odpraw odpowiednie rytuały pogrzebowe.



Q: System nie chcę się odpalić! Panie premierze, jak żyć? 

A: Niewiele mówi mi to zapytanie, ale ok - przede wszystkim najpierw upewnij się, że system serio nie działa, odpalając go w trybie awaryjnym (F8 podczas startu). Jeżeli wywali się i w tym trybie, to wpadaj do DOSa (przez własne boot menu, lub też do wiersza poleceń w menu F8). I teraz tak:
  • jeżeli system odpala się w trybie awaryjnym, lecz nie chce już normalnie, to sprawdź Menadżer Urządzeń, albowiem coś tam może pieprzyć proces ładowania systemu. Nie zaszkodzi także sprawdzenie plików systemowych (Start -> Uruchom -> wpisz sfc.exe), ale do tego przygotuj sobie płytkę z której instalowałeś Windows'a
  • upewnij się, że MBR (master boot record) jest nienaruszony i działa. Będąc DOSie nawiguj do katalogu WINDOWS\SYSTEM 32 i wpisz fdisk /mbr
  • sprawdź konfigurację w config.sys/autoexec.bat (mam nadzieję, że przed jakimikolwiek zmianami wykonałeś ich kopię?), możliwie, że tam coś się gryzie, lub też nie ładujesz HIMEMa/EMM386 przed startem Windows'a
  • będąc w DOSie spróbuj ręcznie wymusić ładowanie powłoki przez polecenie win



*** Problemy z Windowsem ***

Q: Nie działa mi żadna gra, korzystająca z akceleratora 3D! Tuż przy starcie ekran miga na zmianę rozdzielczości, i nagle wszystko wywala się do pulpitu. Mam akcelerator AGP.

A: Albo nie masz zainstalowanego DirectX'a (najlepiej wersję 7.0a, mało prawdopodobne), albo zapomniałeś o instalacji sterownika szyny AGP (bardziej prawdopodobne). Wyszukaj tego ostatniego do modelu swojej płyty głównej i zainstaluj, a na pewno wszystko ruszy z kopyta!



Q: Nie słyszę żadnych sekwencji MIDI, czy to odpalanych w playerze, czy w grze, mimo, że sterowniki karty dźwiękowej są zainstalowane! 

A: Panel Sterowania -> Multimedia -> zakładka 'MIDI'. Sprawdź, czy oby na pewno wybrane jest odpowiednie urządzenie MIDI (tj. nie jakieś domyślne, a konkretnie pod twoją kartę dźwiękową).



Q1: Mam kartę dźwiękową ISA, opartą na chipie OPL3, MIDy w systemie Windows brzmią tragicznie!
Q2: Mam kartę dźwiękową ISA i odpowiednie wybrane urządzenie w Panelu Sterowania. Słyszę sekwencje MIDI w playerze, jednak nie słyszę ich w grach.

A: Podwójne pytanie, bo tyczy się tego samego. Co do pierwszego - a czego oczekiwałeś po chipie OPL3? :) A już tak serio - aby w pełni można było korzystać z MIDowych dobrodziejstw pod Windowsami, potrzebujemy software'owych sterowników, emulujących wavetable'a, np. Yamaha XG Synth.



Q: W wielu grach nie słyszę sekwencji muzycznych, które zapisane są w formacie *.mp3/*.wma, co jest tego przyczyną?

A: Nieaktualny Windows Media Player. Dobre gry w czasie instalacji (np. The Sims) same odpowiednio aktualizowały WMP, aby wszystko działało. Gorsze tego nie robiły - ściągnij ostatnią możliwą wersję na Windows 9X (jak mnie pamięć nie myli - 7.1), zainstaluj, a wszystko powinno działać.



Q: Windows zachowuje się strasznie ślamazarnie, przy wyrzucaniu plików do Kosza/opróżnianiu Kosza zwisa na jakąś minutę, podobnie przy kopiowaniu plików, uruchamianie gier trwa całe wieki (ale w końcu się uruchamiają). Co jest?

A: Winowajcą są tzw. pliki skrzyżowane (cross-linked files), zmora systemów DOSowych (a DOS jest integralną częścią Windows'a 9X, jakby nie patrzeć). W żołnierskich słowach - są to dwa pliki, które na skutek błędu zajmują ten sam klaster dyskowy, wzajemnie się nadpisując, co powoduje znaczne spowolnienie pracy systemu. Nie ma jednak tragedii - odpal ScanDisk, z koniecznie zaznaczoną opcją "automatycznie naprawiaj błędy", oraz wyborem sposobu niwelowania plików skrzyżowanych (przez usunięcie ich lub kopiowanie - polecam osobiście to drugie) i gotowe.



Q: ...ale nawet ScanDisk się zawiesza, gdy pod koniec rozpocznie sprawdzanie systemu plików! 

A: Czyli jest nieco gorzej, gdyż skrzyżowanych plików jest tyle, że skutecznie paraliżują pracę nawet innych programów. Restartuj w trybie MS-DOS i tam odpal ScanDiska DOSowego, poleceniem scandisk. W trakcie sprawdzania zostaniesz ostrzeżony o skrzyżowanych plikach - będziesz musiał wybrać sposób postępowania z nimi. Podczas pytania czy chcesz zachować kopie plików na dyskietce, odpowiedz przecząco (pomiń ten krok - no chyba że masz jakąś dyskietkę w zanadrzu)



Q: Aplikacje wywalają się, zgłaszając błąd w Oleaut32.dll/Mfc42.dll/Msvcrt.dll, co się dzieje?

A: Nie masz zainstalowanych bibliotek runtime'owych Visual C++ w wersji 6.0. Znajdziesz je tutaj.



Q: Przy starcie systemu otrzymuję komunikaty o brakujących plikach systemowych. Mimo to Windows działa, lecz niektóre aplikacje już nie.

A: Start -> Uruchom -> wpisz sfc.exe. Następnie wybierz sprawdzenie plików systemowych, jednak przedtem przygotuj sobie płytkę z której instalowałeś Windows'a. Powinno pomóc. Nie zaszkodzi także zerknąć, czy przypadkiem nie masz niezainstalowanych takich bibliotek jak np. MinGW.



Q: Chciałbym zainstalować jakąś aplikację na starym kompie, jednak nie mogę znaleźć odpowiednio starej wersji, by była kompatybilna z systemem.

A: Lurk moar. Ja osobiście polecam stronę OldApps, która jest ciekawym zbiorem przeróżnych aplikacji (od odtwarzaczy muzycznych po przeglądarki), we wszystkich możliwych wersjach, także i tych starszych, kompatybilnych z Windowsami 9X. Wystarczy na danej kategorii włączyć filtrowanie po systemie (po lewej) i gotowe, starsze wersje programów podane na tacy! Czytaj jednak komentarze czy notki autorów - niektóre z aplikacji wymagają dodatkowych poprawek, zainstalowanych w systemie.



*** Problemy z DOSem ***

Q: Gry zawieszają się w trakcie rozgrywki, zazwyczaj podczas ładowania poziomów, czy wczytywania zapisanych gier. Co poradzić?

A: Na 99% procent grom w trakcie ładowania/wczytywania zaczyna brakować pamięci konwencjonalnej na dane, co powoduje radosne zawieszenie całości. Upewnij się, że na pewno masz odpowiednią ilość wolnej pamięci (polecenie mem, ew. mem /p) przed uruchomieniem. A jeżeli korzystasz z combosa HIMEM/EMM386 - polecam ci rozejrzeć się za alternatywami, które zostały opisane w drugiej części poradnika o konfiguracji DOSa. 



Q: Gry już przy uruchomieniu zgłaszają niewystarczającą ilość wolnej pamięci konwencjonalnej! Jak mogę ją zwolnić?

A: Najskuteczniej? Poprzez nieładowanie tylu sterowników przy starcie DOSa. Plus podobnie jak wyżej - alternatywy dla HIMEMa/EMM386 (HIMEMX/JEMM, opisane tutaj) o wiele lepiej zarządzają pamięcią, dzięki czemu można jak najwięcej wycisnąć jej wolnej. Dodatkowo jeżeli wiesz, że będziesz nieco dłużej pocinał w gierkę, która np. nie potrzebuje obsługi CD-ROMu czy myszki, to tymczasowo możesz zakomentować ładowanie sterowników tychże z config'a/autoexeca.



Q: Gra się już uruchamia, ale nie ma żadnego dźwięku!

A: Po pierwsze - upewnij się, że wszystkie sterowniki i programy konfiguracyjne karty dźwiękowej są ładowane w config'u/autoexecu. Następnie czy dobrze skonfigurowałeś kartę z setupie danej gry (zazwyczaj jest jakiś test w tymże, aby od razu sprawdzić wyniki podanych danych, czy przypadkiem nie walnęło się z adresem, czy poziomem przerwań). O kartach dźwiękowych nieco pisałem tutaj, zaś o setupie dźwiękowym - pod koniec tego poradnika.



Q: Owszem, wszystko jest dobrze podane, a mimo to nadal nie ma dźwięku!

A: ...i niech zgadnę, zapewne jest to gra od Sierry/Dynamix? :) Oto czego ci potrzeba. Wrzuć ten mały programik do katalogu z grą i odpal GOSIERRA.EXE. I bam, gotowe. Problem leży w wadliwych sterownikach dźwiękowych, dostarczanych z grą - na szybszych procesorach te najnormalniej w świecie nie potrafią się poprawnie zainicjować. Powyższa poprawka eliminuje ten problem.



Q: Gra się nie uruchamia, wywalając 'runtime error 200' przy starcie.

A: Ach, słynny runtime error 200, znowu się spotykamy... za moich czasów błąd ten został ochrzczony jako 'zmora szybkiego procesora'. I faktycznie, w tym stwierdzeniu jest sporo racji. Błąd ten generują programy skompilowane w kompilatorze Borlanda, połączone z szybkim procesorem - gdy ten ma za dużo na liczniku (od Pentiumów II wzwyż), program zbyt szybko i gwałtownie zaczyna przetrawiać kolejne linijki kodu (dokładniej to pewna instrukcja delay nie działa tak, jak powinna by normalnie zadziałać), co skutkuje próbą podzielenia pewnej wartości przez zero (runtime error 200 to właśnie błąd dzielenia przez zero w kompilatorze Borlanda). A dobrze wiemy, że dzielenie przez zero nie przynosi nic dobrego. Czego potrzebujesz to program TPPATCH. Wrzucasz go do katalogu, i wpisujesz TPPATCH <plik_do_spatchowania>, np. TPPATCH GAME.EXE - i gotowe, można giercować (czasami i dwa pliki wymagają załatania, np. plik z grą, i jakiś nazwany game.exe, main.exe itd. Skapniesz się tego, gdy, mimo spatchowania, gra nadal będzie generować błąd 200). Z popularniejszych gier, które wymagają interwencji TPPATCHa, można wymienić Jazz Jackrabbit'a, czy Dig It.



Q: Gra się uruchamia, jednak po pewnym czasie się wywala z powrotem do DOSa, z komunikatami w stylu 'Game XYZ can no longer run', 'segmentation fault', tudzież 'file load error'. 

A: Najprawdopodobniej masz ustawioną zbyt niską ilość plików, które aplikacja DOSowa może załadować za jednym zamachem, za mało/zbyt małe stosy, lub zbyt niską ilość otwartych buforów. Przy próbie załadowania większej ilości danych gra dostaje spazmów i nagle przerywa wykonywanie kodu. Ilości te można modyfikować w pliku config.sys, na samym początku. Ja osobiście polecam ustawienie
FILES=30
BUFFERS=10,0
STACKS=9,256
aby zagwarantować jak najlepszą kompatybilność. Błędy takie zazwyczaj lubią wysypywać przygodówki ze stajni LucasArts (Sam & Max, Full Throttle itd.)



Q: Gra się uruchamia, jednak wszystko działa za szybko!

A: Kolejna zmora szybkich procesorów. Tutaj niestety już TPPATCH nie pomoże, należy użyć drastyczniejszych metod. Czego potrzebujesz to programik o nazwie MOSLO (do domowych zastosowań wystarczy ci wersja basic). Powstał on specjalnie z myślą o szybkich procesorach, by je odpowiednio obciążyć, aby uruchomienie za szybko działających gier odbyło się już normalnie. Uruchamiaj przez MOSLO /XX nazwa_gry, gdzie XX to procent normalnej prędkości procesora, jakiej chcesz użyć, np. MOSLO /33 GAME.EXE. Uruchamiaj grę i kombinuj z różnymi wartościami, gdyż to już zależy od prędkości konkretnego procesora - na jednym komfortowo będzie można grać od liczby 33, na drugim od 25.

Brak komentarzy:

Prześlij komentarz

Komentarze, sugestie, przemyślenia? Wal śmiało!