Kontroler zarządzania pamięcią

Nintendo Entertainment System jest wzbogacony o chipy MMC w kartridżach.

Kontrolery wielu pamięci lub kontrolery zarządzania pamięcią ( MMC ) to różnego rodzaju specjalne chipy zaprojektowane przez różnych twórców gier wideo do użytku w kartridżach Nintendo Entertainment System (NES) . Te chipy rozszerzają możliwości oryginalnej konsoli i umożliwiają tworzenie gier NES z funkcjami, których sama oryginalna konsola nie może zaoferować. Podstawowy sprzęt NES obsługuje łącznie tylko 40 KB pamięci ROM, do 32 KB PRG i 8 KB CHR, dlatego możliwa jest tylko jedna tablica kafelków i duszków. Limit ten został szybko osiągnięty w ciągu pierwszych dwóch lat Famicom na rynku, a twórcy gier zaczęli domagać się sposobu na rozszerzenie możliwości konsoli.

W społeczności emulatorów te chipy są również znane jako mappery .

Lista chipów MMC

CNROM

CNROM to najwcześniejszy sprzęt bankowy wprowadzony na Famicom, który pojawił się na początku 1986 roku. Składa się z pojedynczego dyskretnego układu logicznego serii 7400. CNROM obsługuje jeden stały bank PRG i do ośmiu banków CHR dla całkowitej pamięci ROM o pojemności 96 KB. Niektóre odmiany innych firm obsługiwały dodatkowe możliwości. Wiele gier CNROM przechowuje dane poziomu gry w CHR ROM i wygasza ekran podczas czytania.

UNROM

Wczesne mapery NES składają się z dyskretnych układów logicznych serii 7400 . UNROM pojawił się pod koniec 1986 roku. Obsługuje jeden stały bank PRG 16 KB, resztę PRG można przełączać. Zamiast dedykowanego układu ROM do przechowywania danych graficznych (nazywanego CHR przez Nintendo), gry korzystające z UNROM przechowują dane graficzne w pamięci ROM programu i kopiują je do pamięci RAM na kasecie w czasie wykonywania.

MMC1

Kaseta Tetris przedstawiająca układ MMC1B1

MMC1 to pierwszy niestandardowy układ scalony MMC firmy Nintendo , który zawiera obsługę zapisanych gier i wielokierunkowe konfiguracje przewijania. Układ występuje w co najmniej pięciu różnych wersjach: MMC1A , MMC1B1 , MMC1B2 , MMC1B3 i MMC1C . Różnice między różnymi wersjami są niewielkie, głównie ze względu na zachowanie ochrony pamięci stanu gry. Układ MMC1 umożliwia przełączanie różnych banków pamięci. ROM programu można wybrać w porcjach 16 KB lub 32 KB oraz ROM znaków można wybrać w porcjach 4 KB lub 8 KB. Niezwykłą cechą tego kontrolera pamięci jest to, że jego wejście jest szeregowe , a nie równoległe , więc potrzeba 5 kolejnych zapisów (z przesunięciem bitów ), aby wysłać polecenie do obwodu .

MMC2

MMC2 jest używany tylko w Punch-Out Mike'a Tysona !! oraz późniejsza reedycja, która zastąpiła Mike'a Tysona . Można wybrać pojedynczy bank 8 KB pamięci ROM programu (z zablokowanymi pozostałymi 24 KB), a pamięć ROM znaków można wybrać w dwóch parach banków 4 KB, które byłyby automatycznie przełączane, gdy sprzęt wideo próbuje załadować określone kafelki graficzne z pamięci, umożliwiając w ten sposób większa ilość grafik do wykorzystania na ekranie bez konieczności ich ręcznego przełączania przez samą grę.

MMC3

Układ MMC3 wlutowany na płytce drukowanej zawierającej Super Mario Bros. 3 i inne

MMC3 został wprowadzony w 1988 roku. Dodaje zegar IRQ, aby umożliwić przewijanie podzielonego ekranu bez poświęcania duszka 0, wraz z dwoma wybieralnymi bankami ROM programu 8 KB i dwoma bankami ROM 2 KB + cztery wybieralne znaki 1 KB, co umożliwia łatwą natychmiastową zamianę sprite'a i dane kafelków. Obsługiwane jest 8 KB pamięci RAM zapisu stanu gry.

MMC4

Ten układ jest używany tylko w trzech grach, z których wszystkie zostały wydane tylko dla Famicom w Japonii i zostały opracowane przez Intelligent Systems . Funkcjonalnie jest prawie identyczny z MMC2, z tą różnicą, że MMC4 przełącza programową pamięć ROM w bankach 16 KB zamiast 8 KB i obsługuje pamięć SRAM z podtrzymaniem bateryjnym do zapisywania danych gry.

MMC5

MMC5 to najbardziej zaawansowany MMC firmy Nintendo. Pierwotnie był też najdroższy. Tylko Koei regularnie używał tego chipa. Jest podobny do VRC6 firmy Konami, ale obsługa przerwań działa inaczej. Układ ma 1 KB dodatkowej pamięci RAM , dwa dodatkowe kanały dźwiękowe z falą prostokątną , jeden dodatkowy kanał dźwiękowy PCM , obsługę przewijania podzielonego ekranu w pionie, ulepszone możliwości graficzne (udostępnianie 16 384 różnych kafelków na ekranie zamiast tylko kafelek tła pikseli, aby miał własne przypisanie kolorów zamiast ograniczać się do jednego zestawu kolorów na grupę kafelków 2x2), wysoce konfigurowalne przełączanie pamięci ROM programu i pamięci ROM znaków oraz licznik IRQ oparty na linii skanowania. MMC5 obsługuje do 2 MB całkowitej pamięci ROM, jednak żadna komercyjnie wydana gra nie przekroczyła 1 MB.

MMC6

MMC6 jest podobny do MMC3, z dodatkowym 1 KB pamięci RAM, którą można zaoszczędzić dzięki podtrzymywaniu bateryjnemu.

System dysków Famicom

ASIC systemu Famicom Disk to rozszerzony układ audio, który obsługuje jeden kanał jednocyklowej (6-bitowej × 64-stopniowej) syntezy wavetable-lookup z wbudowanym modulatorem fazy (PM) do generowania dźwięku podobnego do syntezy z modulacją częstotliwości . Niektóre konwersje kartridży gier Disk System mają MMC zastępujące kanał audio.

AOROM

A * ROM MMC, nazwany na cześć kartridży AMROM, ANROM i AOROM, które go używają, został opracowany przez Chrisa Stampera z Rare i wyprodukowany przez Nintendo. Występuje w grach opracowanych przez Rare na Nintendo, Tradewest, GameTek, Acclaim i Milton Bradley. Umożliwia przełączanie pamięci ROM PRG w jednym kawałku o wielkości 32 KB i wykorzystuje CHR RAM do 256 KB całkowitej pamięci ROM. W przeciwieństwie do innych chipów wykorzystuje jedno odbicie lustrzane ekranu.

Chipy innych firm

Nintendo utrzymywało ścisłą kontrolę nad wydawanym na całym świecie sprzętem kartridżowym i nie zezwalało stronom trzecim na używanie własnych płytek drukowanych i maperów. Tak było do późnego okresu komercyjnego życia NES, kiedy Nintendo złagodziło ograniczenia. W rezultacie większość twórców map innych firm można znaleźć tylko w Famicom lub nielicencjonowanych kartridżach.

VRC1

  • Producent: Konami, Jaleco (SS8805)
  • Gry: Ekscytujący boks , Ganbare Goemon! Karakuri Douchuu , Jajamaru Ninpouchou , King Kong 2: Ikari no Megaton Punch, Moero!! , Junior Basket: Dwóch na dwóch , Tetsuwan Atom

VRC2

VRC2 to układ firmy Konami, który umożliwia przełączanie pamięci ROM programu w bankach 8 KB oraz przełączanie pamięci ROM znaków w bankach 1 KB. Ta konsola MMC ma dwie znane wersje: VRC2a i VRC2b.

VRC3

Używany wyłącznie w japońskiej wersji Salamandry .

VRC4

VRC4

Układ VRC4 jest podobny do układu VRC2, inny niż VRC4, który zapewnia pojemność 512 KB CHR, 2 tryby bankowe PRG ROM 8 KB i 1 kopię lustrzaną ekranu.

VRC5

  • Producent: Konami
  • Gry: Space School JP

serii gier edukacyjnych Konami Space School .

VRC6

VRC6.

VRC6 (Virtual Rom Controller) to zaawansowany układ MMC firmy Konami, obsługujący przełączanie banków zarówno dla kodu programu, jak i grafiki, a także licznik IRQ oparty na cyklu procesora , który może również działać jako licznik linii skanowania. Chip zawiera również obsługę trzech dodatkowych kanałów dźwiękowych (dwie fale kwadratowe po osiem cykli pracy każda i jedna fala piłokształtna ). Jest używany w Akumajō Densetsu (japońska wersja Castlevania III: Dracula's Curse ), podczas gdy wersja zachodnia wykorzystuje MMC5 od Nintendo. od Nintendo Entertainment System nie pozwala kartridżom na dodawanie dodatkowych kanałów dźwiękowych, ścieżka dźwiękowa wersji Famicom została przerobiona, aby była zgodna z tymi specyfikacjami; w ten sposób ścieżka dźwiękowa w wersji zachodniej jest realizowana przez pięć kanałów dźwiękowych wbudowanych w standardowy NES.

VRC7

VRC7 z postprocesorem do syntezy FM

VRC7 to zaawansowany układ MMC firmy Konami, obsługujący przełączanie banków i zliczanie IRQ równoważny z VRC6, zawierający pochodną YM2413 zapewniającą 6 kanałów audio syntezy FM . Ten zaawansowany dźwięk jest używany tylko w grze Famicom Lagrange Point . Japońska wersja Tiny Toon Adventures 2 wykorzystuje VRC7, ale nie rozszerzony dźwięk.

Namko 163

163 był używany tylko w grach dostępnych wyłącznie w Japonii. Jego możliwości były trochę lepsze niż MMC3 Nintendo. Wariant zawierał dodatkowy sprzęt dźwiękowy, który odtwarza 4-bitowe próbki fal. Obsługuje od 1 do 8 dodatkowych kanałów dźwiękowych, ale słyszalne aliasing pojawia się, gdy włączona jest wystarczająco duża liczba kanałów.

FME-7

FME-7 to układ mapowania pamięci opracowany przez firmę Sunsoft do użytku w kartridżach NES i Famicom. Przełącza programową pamięć ROM w bankach 8 KB i przełącza banki znaków ROM 1 KB. Zawiera również sprzęt do generowania IRQ po określonej liczbie cykli zegara procesora , osiągając w ten sposób efekty podzielonego ekranu przy minimalnym zużyciu mocy obliczeniowej.

SUNSOFT-4

SUNSOFT-4

SUNSOFT 5B

Ta wersja FME-7 zawiera wersję powszechnie używanej Yamaha YM2149 .

Nielicencjonowane MMC

Niektórzy indywidualni ( homebrew ) i nielicencjonowani programiści stworzyli niestandardowe MMC dla NES, z których większość po prostu rozszerza dostępną pamięć.

228

228 to prosta gra MMC z przełączaniem banków, opracowana do użytku w grach Action 52 i Cheetahmen II . Nie ma nadającego się do nazwania bitu sterującego. W Action 52 zawiera również mały 16-bitowy obszar rejestru, który zawiera stary wybór menu podczas wychodzenia z gry.

GTROM

  • Producent: Membler Industries

GTROM lub Cheapocadabra to samoflashujący MMC opracowany w 2015 roku na rynek homebrew. Płytka zawiera 512 KB PRG ROM, 16 KB CHR ROM i dwie diody LED. Chociaż GTROM nie zawiera PRG RAM, zapisane gry są możliwe dzięki możliwości flashowania PRG ROM przez oprogramowanie NES.

Zobacz też