PlayStation parallel interface (PPI)

Postępy
Wstęp
Linki
Kontakt


Postępy

16 listopad 2007r.
-DC v0.0.1
Pierwsza wersja DC. Testowana narazie tylko na emulatorze ePSXe. Napisana w BladeLibs.


Wstęp

O co chodzi?
Założenie jest takie: Podłączyć komputerowe porty IDE i USB pod PlayStation za pomocą układu opartego na mikrokontroleże Atmega128.

Funkcje:
- Odczyt z komputerowego napędu CD, pełna obsługa komend ATAPI, kompatybilność z każdym napędem.
- Odczyt z pamięci masowych USB i twardych dysków PATA. Obsługa systemu plików FAT32 lub NTFS. (Nie wiem jak poradzę sobie z Assembllerem i sterowaniem tylko za pomocą standardowych poleceń, więc nic nie obiecuje)

Oprogramowanie:
- DC (Driver Console), sterownik z poziomu konsoli. Znajduje się w pamięci flash mikrokontrolera. Wyświetla na ekranie menu z opcjami, po wyborze inicjuje połączenie. Wyświetla przeglądarkę plików na podstawie pliku ListFile, znajdującego się na HDD/USB.
- DuC (Driver uController), sterownik mikrokontrolera. Jest hostem dla ATAPI (odczyt CD), ATA (odczyt HDD, obsługa systemu plików, emulacja napędu CD), oraz pamięci masowych na USB (protokół USB, obsługa systemu plików, emulacja napędu CD).
- PPILFMaker (PlayStation Parallel Interface List File Maker). Tworzy plik ListFile, czyli lista obrazów płyt, folderów itp.

Po co?
Czytnik w PSX'sie jest bardzo wadliwy i dosyć drogi. Bardzo szybko zaczynają się zatrzymywać sekwencje FMV co wprost idealnie wprowadza człowieka w stan nadmiernej agresji połączonej ze ślinotokiem :P.
Komputerowy napęd kosztuje grosze, niektóre są bardzo dobre (mój TEAC działa bez zarzutu od 6 lat), PSX'owy napęd odczytuje z prędkościa 1x/2x, odczyt z taką prędkością raczej nie zużyje szybko komputerowego czytnika, tymbardziej jeśli używacie orginalnych PSX'owych gier.
O korzyściach płynących z bootowania programów z twardego dysku nawet nie wspomnę :).

Prosty schemat:



PlayStation - każdy wie ;)
PPI - układ, którego zadaniem jest tłumaczenie poleceń, emulacja układu "Mechanism Control" na płycie konsoli.
IDE - 40 pinowe złącze, znajdujące się na płytach głównych, służy do podłączania urządzeń wejścia/wyjścia.
USB - Uniwersalna magistrala szeregowa, w tym przypadku będzie obsługiwała pamięci masowe, np pendrive'y, twarde dyski w obudowie USB i tym podobne.

Jak to ma działać?
Układ PPI podłączony będzie rzędem kabli bezpośrednio pod układy scalone na płycie głównej konsoli. Po uruchomieniu zasilania "zachowa się" jak interface-cd standardowo zintegrowany z płytą główną, bootując z pamięci flash mikrokontrolera sterownik.
Zadaniem sterownika jest wyświetlenie menu, w którym użytkownik wybierze z jakiego urządzenia chce bootować programy.
Jeśli użytkownik wybierze "CD" układ zresetuje połączenie tak jakby ktoś otworzył i zamknął klapkę, po tym będzie już tylko tłumaczył polecenia PSX na ATAPI. Będzie to wyglądało tak, jakbyś podczas grania otworzył klapkę i włożył inną grę, tyle że zamiast tej pierwszej gry będzie czarny ekran z białymi opcjami :P.
Jeśli zostanie wybrana opcja HDD lub USB wyświetli się przeglądarka plików. Po dokonaniu wyboru znowu zresetuje połączenie, tylko tym razem będzie emulował napęd CD z obrazu płyty na twardym dysku. Na podobnej zasadzie jak emulator napędu w komputerze.


Linki

PlayStation:
www.psxdev-pl.yoyo.pl - Świetna polska strona poświęcona wszystkiemu co związane z PlayStation. Dobrze rozwinięte forum, na którym uzyskacie dużo odpowiedzi.
www.hitmen-console.org - Anglojęzyczna strona o konsoloach, również o PlayStation.
www.wiki.nobis-crew.org/PlayStation - Dokumentacja, anglojęzyczna.
www.psx.rules.org - Dokumentacja, niezbyt obszerna, anglojęzyczna.

Hardware:
www.t13.org - Oficjalna dokumentacja, bardzo obszerna, wszystko co potrzebne.
www.ata-atapi.com - Dokumentacja, od dawna nie aktualizowana, autorski sterownik Open Source do pobrania.

Mikrokontrolery:
www.atmel.com - Oficjalna strona firmy Atmel. Zanim wybierzesz mikrokontroler przejżyj jego dokumentacje.


Kontakt

Jeśli popełniłem jakiś błąd, napisałem coś nie tak, lub po prostu masz jakieś pytanie, napisz do mnie.
Jeśli chciałbyś skopiować całość, lub fragment tego tekstu skontaktuj się ze mną.



(c)Marcepan 2007