Memory Card Annihilator posiada kilka "ukrytych" opcji, które ze względu na swój charakter (można uszkodzić strukturę logiczną karty), dostępne są wyłącznie z wiersza poleceń (czyli należy uruchomić aplikację przekazując jej odpowiednie parametry). Aby mieć taką możliwość trzeba połączyć PS2 z komputerem i uruchomić nasz program za pomocą PS2Link lub bezpośrednio na PS2 za pomocą RadShella.
Zanim przejdziemy do opisu parametrów koniecznie trzeba wspomnieć, że Sony wprowadziło trochę chaosu w terminologii. Pojęcia portu, slotu, strony i bloku są całkowicie inaczej rozumiane w programowaniu i całkowicie inaczej gdy przedstawiane są użytkownikowi.
Przeciętny użytkownik, określeń port i slot używa zamiennie. W rzeczywistości jednak to dwa zupełnie różne pojęcia. Przez port w API rozumiany jest "slot" w który włożona jest karta pamięci. Slot z kolei jest czymś w rodzaju "podportu". Aby to lepiej zrozumieć wyobraźmy sobie kartę pamięci włożoną do drugiego slotu w multitapie - wówczas adres tej karty to port0 slot1.
Parametry:
-port=
Wybór portu (czyli slotu do którego została włożona karta pamięci). Może przyjąć wartości 0 lub 1, odpowiednio dla karty znajdującej się w pierwszym lub drugim slocie.
-slot=
Wybór slotu karty. Domyślna wartość to zero, maksymalna nie jest ograniczona.
-forcepsx
Wymusza wykrycie karty dla PSX we wskazanym slocie. Po prostu ignoruje fakt, że karta nie została wykryta i ewentualne późniejsze błędy. Opcja nie do końca przetestowana i tak naprawdę nie wiadomo czy skuteczna.
-forceps2
Wymusza wykrycie karty dla PS2 we wskazanym slocie. Po prostu ignoruje fakt, że karta nie została wykryta i ewentualne późniejsze błędy. Opcja nie do końca przetestowana i tak naprawdę nie wiadomo czy skuteczna.
Ponadto należy określić trzy dodatkowe parametry (nie podając ich zostaną użyte domyślne):
-psize=
Wielkość strony w bajtach.
-bsize=
Wielkość bloku w stronach.
-mcflags=
Flagi karty pamięci. np. -mcflags=0x2b (lub -mcflags=0x0000002b). Po więcej szczegółów odsyłam do tutorialu poświęconemu emulacji MCSIO. Uwaga: Big Endian.
-tpages= i -tblocks=
Ilość stron/bloków na karcie. Stosowane zamiennie (ponieważ ilość stron na karcie musi być, tak czy inaczej wielokrotnością rozmiaru bloku i zostanie zaokrąglona w górę do najbliższego).
-nformat
Pełne formatowanie karty pamięci.
-fformat
Szybkie formatowanie karty pamięci.
-unformat
Odformatowanie karty pamięci.
-make_img=
Ścieżka do obrazu karty, który chcemy zapisać. Obsługiwane są mass, host i hdd0 (partycję są montowane samoczynnie, więc nie trzeba sobie zawracać tym głowy). np. -make_img=hdd0:/__memorki/obraz1.bin (dla karty z PSX będzie to *.mcr).
-restore_img=
Ścieżka do obrazu karty, który chcemy wgrać. Obsługiwane są mass, host i hdd0 (partycję są montowane samoczynnie, więc nie trzeba sobie zawracać tym głowy). np. -restore_img=hdd0:/__memorki/obraz1.bin (dla karty z PSX będzie to *.mcr).
-no_iopreset
Nie wykonuje resetu IOP. Przydatne przy użyciu z ps2link. Po zakończonej operacji można włożyć następną kartę i ponownie użyć programu, ponieważ wróci do
ps2linka. Przy iop_reset po każdej komendzie trzeba resetować konsolę. Tylko dla użytkowników ps2link, bo radshell i tak po wywołaniu programu się wyłącza i nie da się do niego ot tak wrócić nie uruchamiając go na nowo. Dlatego stosowanie wiersza poleceń dla użytkowników radshella jest dość kłopotliwe (chyba, że i tak chcą wykonać tylko jedną, konkretną operację).