Inside PS1 Parte 1: Introduzione

Un’analisi approfondita e coerente del sistema Sony a 32 bit è abbastanza complessa. La storia delle vicessitudini con Nintendo per lo sviluppo del lettore CD, delle numerose versioni della sua scheda madre e delle progressive semplificazioni degli hardware la lascio a Wikipedia, proprio qui. La storia esula dal mio compito di analisi rigorosa del macchina nel qui presente articolo; l’unica precisazione che faccio è che la mia analisi si basa sul modello SCPH-7002 (che possedevo prima che purtroppo mi abbandonasse per guasto costringendomi all’inizio del 2001 all’acquisto di una PsOne). Questo significa la presenza della porta parallela ed una parte di software del S.O. nella Rom che lo gestisce. Molto importante per applicazioni di testing e programmazione, come vedremo. Tutto ciò che ho imparato è frutto della mia passione per l’elettronica (ed un pò per l’informatica) nonchè la frequentazione assidua di gruppo amatoriali di studio e hacking dei sistemi hardware più disparati. Ciò non significa che vi spiegherò come fare una modifica o altre cavolate, scordatevelo e compratevi una Ps1 usata in condizioni decenti invece 🙂

Uno sguardo alla scheda madre della Ps1 è il primo passo di questo tributo alla tecnica “sonara” (nota che la foto sotto è di una SCPH-5001 ma non vi sono differenze hardware con la 7002, solo l’introduzione nella serie 700x del Sound Scope).


Motherboard semplice ed ordinata, molto “semplice” da realizzare rispetto a quella del Saturn ed ovviamente più economica. In alto a sinistra la porta parallela. Il chip con la grossa scritta Sony in grassetto in basso a sinistra è la cpu, la R3000 che andremo ad analizzare con calma nella seconda parte di questa guida (che pubblicherò a puntate 🙂 ). L’integrato immediatamente sopra è la Gpu e preciso fin da adesso che non è la sola a gestire il comparto grafico, anzi inaspettamente ha meno compiti di quanto si creda. La Spu (Sound Process Unit, per i meno avvezzi) è qualla poco spostata a destra dal centro della console con la sigla CXD29… . Si può notare un gran numero di compomenti Nec di supporto ai Bus nonchè un chip Motorola ed un chip Mitsubishi (memoria RAM CMOS statica).

Per chi avesse mai studiato Calcolatori all’univerisità, la sigla MIPS non è certo nuova. Un’architettura per la CPU molto efficiente valorizzata dal set di istruzioni RISC, davvero alla portata di tutti (almeno nelle istruzioni base): è lo stesso usato per i microcontrollori AVR stile Arduino. Ma una cosa sono programmi di lettura porte/registri, ben altro è la creazione di un videogame. Naturalemente la Sony pensò bene di non suicidarsi realizzando un ambiente di sviluppo in Assembly stile Saturn, ma di fornire un accessibile IDE in C-like customizzato da complesse librerie per la gestione di hw/sw. Parte di queste librerie ed i documenti a loro collegati si trovano ancora in rete, cercando con cura. Programmare la Ps1 significava connetterla al PC tramite porta seriale o quella parallela (archeologia informatica), sfruttando una scheda di espansione PCI studiata per interfacciare i 2 sistemi. Oggi numerosi gruppi di sviluppatori indipendenti hanno realizzato compilatori e librerie “rozzi” ma open-source per l’interconnessione delle 2 macchine senza hw esterno. Comunque, se mai vorrete provare questa strana “ebbrezza” digitale di far comunicare la scatoletta grigia con un computer, dimenticatevi SO che siano superiori a Win 98 Seconda Edizione. Non chiediamo troppo, per favore 🙂 …

La mia guida si dividerà in queste parti principali:

  • Analisi della CPU R3000: struttura, istruzioni base e prestazioni
  • Studio della GPU ed interazione con il Geometry Engine
  • Memorie (RAM, ROM, ecc..) e DMA
  • Coprocessori di controllo
  • SPU e CD-Rom più analisi dei metodi di protezione adottati da Sony
  • Memory Card, Porta Seriale e Parallela

Nelle prossime settimane cercherò di iniziare l’analisi della CPU. STAY TUNED 🙂


Annunci
Articolo precedente
Lascia un commento

Rispondi

Effettua il login con uno di questi metodi per inviare il tuo commento:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger hanno fatto clic su Mi Piace per questo: