Pubblicato un nuovo aggiornamento per shadPS4, l’emulatore della console PlayStation 4 per PC Windows sviluppato da georgemoralis, meglio noto sulla scena come shadow, fondatore e programmatore di molti progetti di emulazione come PCSX, PCSX2, PCSP e tanti altri.
Questo nuovo aggiornamento è particolarmente significativo in quanto coincide con il 21º anniversario del rilascio della primissima versione dell’emulatore PCSX2 (in data 23 marzo 2002) e con il compleanno di Shadow.
Le caratteristiche più importanti di questa versione includono il supporto per Linux e l’esecuzione di alcune demo OpenOrbis (helloworld, graphics, pngdec, sound).
Alcuni punti salienti dell’aggiornamento includono invece il passaggio a std::thread
, l’uso di unique_ptr
quando possibile, la sostituzione di printf/scanf con fmt per una maggiore sicurezza di tipo, l’implementazione di alcune funzioni come sceKernelGetProcessTime
e sceKernelGetProcessTimeCounter
, e l’aggiunta di nuovi moduli come sceAudioOut
con output tramite audio SDL.
L’emulatore shadPS4 non è stato compilato rispetto alle versioni precedenti, ma sono disponibili guide per compilare le build per PC Windows e Linux.
Per PC Windows
- Scaricare VStudio Community 2022 17.7.4.
- Installare i seguenti requisiti:
- Sviluppo desktop con C++.
- Dal tab Componenti individuali, installare:
- Compilatore C++ Clang per Windows (16.0.5).
- Supporto MSBuild per l’insieme di strumenti LLVM (clang-cl).
- Compilare:
- Aprire VStudio e selezionare clang debug o clang release. Dovrebbe compilare senza problemi.
Linux
- Generare la directory di compilazione nella directory shadPS4:
cmake -S . -B build/
- Entrare nella directory:
cd build/
- Utilizzare il comando make per compilare il progetto:
make -j$(nproc)
Changelog
- Passaggio a
std::thread
. - Utilizzo di
unique_ptr
quando possibile. - Sostituzione di printf/scanf con fmt per una maggiore sicurezza di tipo.
- Implementazione di
sceKernelGetProcessTime
. - Implementazione di
sceKernelGetProcessTimeCounter
,sceKernelGetProcessTimeCounterFrequency
. - Pausa dell’emulatore con il pulsante P.
- Riscrittura dei timer con
std::chrono
. - Aggiunta di
sceSystemServiceGetStatus
. - Implementazione iniziale del FileSystem.
- Lavoro iniziale su TLS.
- Nuova implementazione del logging.
- Alcune funzioni implementate per
userService
,systemService
. - Aggiunta del modulo
sceAudioOut
e output tramite audio SDL.
Download: Source code shadPS4 v0.0.3 codename salad
Fonte: github.com