Page 1 of 1

Nuove avventure di programmazione, sulla prima PlayStation? 💿

Posted: Thu Nov 23, 2023 2:36 pm
by Octt
Dunque, probabilmente lo sapete già che ad oggi sono all'università. Tra i vari argomenti che studiamo, ci sarebbe l'architettura MIPS. Abbiamo per esempio da un po' iniziato a vedere la programmazione in assembly per questo tipo di processori... tutto bello a pensarci così, ma nella realtà è tutto un po' una palla, anche per questo argomento l'interesse che inizialmente avevo è svanito nel giro di un paio di lezioni, e ora sembrava rimanere solo la morte tra le possibilità che il fato mi riserverà, in quanto non riuscivo a studiare come si dovrebbe.

Allo stesso tempo in questo periodo stavo riflettendo un po' meglio sul modo in cui faccio cose possibilmente mentalmente produttive, e sto meglio realizzando delle cose che ora lascio per un thread a parte. Quello che importa per gli scopi di questo post è che ho scelto di iniziare a programmare in assembly MIPS facendo qualcosa di pratico e che potesse suscitarmi novità costante... e la mia unica vera opzione, dopo aver fatto varie valutazioni, è stata la PSX, la prima PlayStation. All'inizio pensavo avrei fatto meglio a scegliere il Nintendone (italico nome del Nintendo 64), ma poi ho preferito evitare perché noi studiamo la versione 32-bit del MIPS, e ho paura di eventualmente fare confusione per alcune cose, credo, temo. (La CPU della PS1 è 32-bit little-endian, quella del N64 è 64-bit big-endian.)

In questi giorni ho iniziato a vedere un po' la roba, iniziando banalmente da esempi trovati online, modificandoli per fargli fare piccole cose in più, andando avanti a carro armato cercando sul web informazioni man mano che riscontro difficoltà, e subito le risolvo. E devo dirlo, le ore passate a programmare così, rispetto allo stare ad ascoltare la teoria ultrateorica delle lezioni, o stare appreso agli esercizietti sterili e noiosi, le sento molto più di valore, le cose riesco a capirle davvero, e nel frattempo non mi scoccio neanche.

Questo è un thread a cui aggiungerò nuovi post man mano che ho qualcosa di nuovo da dire (ammesso che, si intende) sul proposito. Non so fin quando andrà avanti questa storia, perché questo da studiare è un argomento che prima o poi finiremo, e se continuerò a programmare targettando la PS1 dopo tutta questa storia (probabile, quantomeno con progetti come LibMultiSpacc se non direttamente) mi sa che preferirò senza molti dubbi il C, per avere codice portabile, nonché meno faticoso e più veloce da scrivere e mantenere.

A breve, seguiranno quindi in maniera specifica le cose che ho fatto in questi giorni, eventualmente le difficoltà che ho trovato e le cose che ho imparato come detto sopra. Tutto il mio codice, in ogni caso, lo metto nella mia repo con tutti i programmi di genere perditempo e imparacose, in generale "fuck around and find out", fate riferimento a quella quando necessario: https://gitlab.com/octtspacc/OcttBitsOfFun. E voi sonari tra il popolo, godiate, perché in un modo o nell'altro sto supporto la vostra piattaforma!!!!