-
Data: 2012-02-21 16:05:32
Temat: Re: gry na surowego peceta
Od: g...@n...invalid (Adam Wysocki) szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]grfr <f...@g...pl> wrote:
> czy daloby sie napisac gre na surowego peceta?
> powiedzmy ze gra bylaby wypalona na plycie cd
> lub byla plikiem na pendrivie
Dałoby się.
> jak rozumiem os bylby raczej nie potrzebny ale
> pewnie musialbybyc jakis loader, ktory przerzucilby
> plik do ramu i tam go odpalil,
W MBR lub bootsektorze musi znajdować się kod, który jest ładowany przez
BIOS pod adres 7C00:0000 i tam uruchamiany. Kod może mieć max 512 bajtów
(lub 448 jak ma być w MBR-ze i chcesz mieć tam też tablicę partycji),
więc najczęściej służy tylko do wczytania reszty gdzieś dalej do pamięci
(funkcja 02h przerwania 13h) i skoczenia tam.
> co jeszcze potrzebabybylo by taka gra dzialala - musialbym pisac
> jakies elementy driverow do gpu itp?
Jak jest na współczesnym sprzęcie to nie wiem, ale kiedyś mogłeś obsługiwać
kartę graficzną przy pomocy przerwania 10h i/lub pisząc bezpośrednio do jej
rejestrów, np. popularny był tryb 13h (320x200, indeksowany) - ustawiało się
go funkcją przerwania 10h, wypełniało paletę rejestrami karty (262144 dostępne
kolory, ale tylko 256 w palecie) i pisało na ekran pisząc do pamięci karty
graficznej (A800:0000 jeżeli mnie pamięć nie myli).
Kartę dźwiękową obsługiwało się pisząc do jej rejestrów - albo odtwarzając
sample przez timer 8255 (przerwanie 08h z odpowiednio przeprogramowaną
częstotliwością timera), albo - bardziej elegancko - inicjalizowało się
kontroler DMA i w przerwaniach (generowanych po odtworzeniu bufora)
podsuwało się kontrolerowi DMA bufor z kolejnymi danymi.
Same bufory wypełniało się stosując podwójne buforowanie, tzn. jak jeden
się skończył to podsuwało się drugi, a ten pierwszy przy najbliższej okazji
(w pętli głównej programu, nie w przerwaniu) się doczytywało.
Tyle z moich DOSowych zabaw, to było ponad 10 lat temu i wiele się przez ten
czas zmieniło, ale nie wszystko - np. nowe karty dźwiękowe nadal mają tryb
kompatybilności z SoundBlasterem.
Było też coś takiego jak Ralf Brown Interrupt List, bardzo pomocne - miałem
to w pliku helpa Windowsa 3.11 (wtedy o Internecie nikt nie słyszał), teraz
pewnie jest gdzieś w Internecie.
--
gof
Następne wpisy z tego wątku
- 21.02.12 16:12 Sławomir Szczyrba
- 21.02.12 16:33 n...@m...invalid
- 21.02.12 16:40 Adam Wysocki
- 21.02.12 16:42 Adam Wysocki
- 21.02.12 16:50 R.e.m.e.K
- 21.02.12 16:42 Roman W
- 21.02.12 17:41 Przemek O
- 21.02.12 17:47 Sławomir Szczyrba
- 21.02.12 17:57 Sebastian Biały
- 21.02.12 18:14 Roman W
- 21.02.12 20:50 Przemek O
- 23.02.12 12:36 Adam Wysocki
- 23.02.12 12:39 bartekltg
- 23.02.12 12:56
- 23.02.12 13:30
Najnowsze wątki z tej grupy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
Najnowsze wątki
- 2025-02-17 Kraków => MS Dynamics 365BC/NAV Developer <=
- 2025-02-17 Chrzanów => Programista NodeJS <=
- 2025-02-17 Warszawa => Node.js / Fullstack Developer <=
- 2025-02-17 Białystok => System Architect (Java background) <=
- 2025-02-17 Białystok => Solution Architect (Java background) <=
- 2025-02-17 Gliwice => Team Lead / Tribe Lead FrontEnd <=
- 2025-02-17 Gdańsk => PHP Developer <=
- 2025-02-17 Warszawa => Senior ASP.NET Developer <=
- 2025-02-17 Gliwice => Business Development Manager - Network and Network Security
- 2025-02-17 Mińsk Mazowiecki => Area Sales Manager OZE <=
- 2025-02-17 Odśnieżanie samochodu
- 2025-02-17 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-02-17 Dęblin => JavaScript / Node / Fullstack Developer <=
- 2025-02-17 Pompiarze...
- 2025-02-16 PV teraz