Co to jest format pliku GB?
Pliki .gb to surowe zrzuty binarne pamięci ROM kartridży Nintendo Game Boy. Oryginalny Game Boy (model DMG-001) zadebiutował w Japonii w kwietniu 1989 roku, a rozszerzenie .gb stało się standardem społecznościowym dla zachowanych kopii układów pamięci tylko do odczytu z kartridży.
Plik .gb jest bezpośrednim obrazem bajt po bajcie banków pamięci ROM kartridża, bez kontenera czy kompresji. Plik zaczyna się od banku ROM 0, który zawiera wektory przerwań pod adresem 0x0000, 4-bajtowy punkt wejścia NOP+JP pod adresem 0x0100 oraz nagłówek kartridża od 0x0100 do 0x014F. 48-bajtowa mapa bitowa logo Nintendo zaczynająca się od offsetu 0x0104 musi dokładnie odpowiadać ustalonemu wzorcowi binarnemu - BIOS konsoli Game Boy weryfikuje to podczas uruchamiania jako mechanizm ochrony własności intelektualnej. 8-bitowa suma kontrolna nagłówka pod adresem 0x014D jest wymuszana przez BIOS; 16-bitowa globalna suma kontrolna pod adresami 0x014E-0x014F ma charakter wyłącznie informacyjny i nie jest weryfikowana przez sprzęt.
Rozmiary ROM wahają się od 32 KB (proste kartridże) do 8 MB w przypadku tytułów korzystających z kontrolerów bankowania pamięci (MBC1, MBC3, MBC5). Dane zapisu podtrzymywane bateryjnie są przechowywane oddzielnie jako pliki .sav lub .srm, nigdy wewnątrz samego pliku .gb.
Gry ulepszone dla Game Boy Color mają ustawiony bajt nagłówka 0x0143 na 0x80 (kompatybilne z GBC) lub 0xC0 (tylko dla GBC). Tytuły przeznaczone wyłącznie dla GBC konwencjonalnie używają rozszerzenia .gbc.
Bezpieczeństwo
RYZYKO: MEDIUMPlik ROM .gb to pasywne dane binarne i nie może zostać uruchomiony bezpośrednio w systemie PC. Ryzyko ma charakter prawny: pobieranie komercyjnych gier Game Boy, których nie jesteś właścicielem, jest w większości krajów naruszeniem praw autorskich. Strony z ROM-ami często zawierają oprogramowanie reklamowe, fałszywe przyciski pobierania, a sporadycznie błędnie oznaczone instalatory złośliwego oprogramowania. Legalne metody: zrzucanie danych z własnych kartridży za pomocą czytnika (np. GB Operator, Epilogue).
Szczegóły formatu
w pigułce- GenBank Sequence File - NCBI GenBank używa rozszerzenia .gb dla plików sekwencji DNA/RNA w formacie płaskim GenBank; całkowicie niezwiązane z grami.
Programy otwierające pliki GB
Szczegóły techniczne
specyfikacja| Kontener | Brak - surowy zrzut ROM kartridża bez systemu plików czy struktury opakowującej |
| Kolejność bajtów | Big-endian (architektura procesora Z80/SM83; wielobajtowe wartości nagłówka przechowywane w formacie big-endian) |
| Kompresja | Brak na poziomie pliku; poszczególne gry mogą kompresować wewnętrzne zasoby niezależnie |
| Zakres rozmiaru ROM | Od 32 KB (kartridże tylko z bankiem 0) do 8 MB (kartridże MBC5 z maksymalnym bankowaniem) |
| Punkt wejścia | 4-bajtowa instrukcja NOP + JP pod offsetami `0x0100`-`0x0103` |
| Sprawdzanie logo Nintendo | 48-bajtowa mapa bitowa pod `0x0104`-`0x0133`; BIOS sprawdza dokładną zgodność przy każdym uruchomieniu |
| Suma kontrolna nagłówka | 8-bitowa suma kontrolna pod `0x014D` obejmująca bajty `0x0134`-`0x014C`; wymuszana przez BIOS - niezgodność uniemożliwia rozruch |
| Globalna suma kontrolna | 16-bitowa suma pod `0x014E`-`0x014F`; obejmuje wszystkie pozostałe bajty ROM; tylko informacyjna, nie weryfikowana sprzętowo |
| Flaga kompatybilności CGB | Bajt `0x0143`: `0x80` = gra DMG kompatybilna z GBC; `0xC0` = tylko dla GBC; `0x00` = tylko dla DMG |
| Bankowanie pamięci | Typ MBC zidentyfikowany w bajcie nagłówka `0x0147`; typy obejmują MBC1, MBC2, MBC3, MBC5 |
| Dane zapisu | Pamięć RAM podtrzymywana bateryjnie, przechowywana oddzielnie jako pliki `.sav` lub `.srm`; nie osadzona w pliku `.gb` |
| Rozdzielczość ekranu | 160×144 pikseli (właściwość sprzętowa; nie jest przechowywana w pliku ROM) |
| Wydano | 1989 (Game Boy DMG launch, Japan) |
| Najnowsza wersja | N/A (fixed hardware format; no versioning) |
| Specyfikacja | gbdev.io |
Konwersje GB
Pytania i odpowiedzi społeczności
pytania użytkownikówBrak pytań - bądź pierwszą osobą, która zapyta o pliki GB.