Al via lo sviluppo di Orbital, un primo emulatore della PlayStation 4

Il developer AlexAltea ha abbandonato lo sviluppo dell’emulatore PS3 Nucleus per concentrare i propri sforzi su di un nuovo progetto che prende il nome di Orbital, il primo emulatore della PlayStation 4 basato sulla virtualizzazione.

Lo sviluppatore intende virtualizzare l’intero sistema della PlayStation 4 su PC creando un ambiente idoneo dove poter far girare il firmware e i giochi della console Sony.

Orbital attualmente ci permette di eseguire dei kernel decifrati all’avvio, testato sia su firmware 4.55 che sul firmware 5.00 della PlayStation 4.

Requisiti

  • Sistema operativo: Windows, Linux.
  • Processore: CPU x86-64 con estensioni AVX/AVX2.
  • Memoria: 16 GB di RAM.
  • Grafica: TBD.

Piani futuri

I seguenti punti si riferiscono ai test effettuati con il kernel della PS4 5.00 su Orbital

  • Implementare il bootloader [Fatto].
  • [1] Debug del kernel con simboli [Fatto].
  • Inizializzazione del kernel riuscita su hammer_time [Fatto].
  • Emulazione del dispositivo UART di Aeolia (parziale) [Fatto].
  • Inizializzazione del driver completata [Fatto].
  • Aggiunta del supporto Vulkan a QEMU [Fatto].
  • Implementato l’accesso SFlash (sola lettura) [Fatto].
  • Implementato Liverpool GC/Starsha.
    • Implementato ringbuffer IH [Fatto].
    • Implementato processore di comando [Fatto].
    • Elaborazione dei comandi SAMU.
    • Backend Vulkan per motore GFX.
  • Aggiunto lo strumento di creazione di HDD PS4 [Fatto].

FAQ

  • Domanda: Come funziona Orbital senza avere le chiavi SAMU?
  • Risposta Fino a quando le chiavi non vengono scaricate, la decrittografia con SAMU verrà “emulata” da blob di input crittografati con hashing e restituendo blob decrittografati precedentemente ottenuti dalla console effettiva.
  • Domanda: Il mio dump del kernel si blocca poco dopo l’avvio. Perché?
  • Risposta: Gli ELF del kernel generati dai dump della memoria non funzioneranno poiché i segmenti scrivibili potrebbero essere stati modificati in uno stato in cui l’avvio non è possibile. Si prega di generare offline i binari corretti decifrando i segmenti ELF con SAMU sulla console attuale, non scaricando la memoria.
  • Domanda: Dove posso trovare Orbital?
  • Risposta: Questo progetto non è pronto per gli utenti finali. Non sono forniti binari, quindi è necessario creare ciascuno dei tre componenti (BIOS, GRUB, QEMU). Inoltre, configurare l’emulatore per fare qualcosa sarà difficile, poiché dovrete scaricare e decifrare l’intero filesystem PS4 e sflash, incluso il kernel. Potresti trovare suggerimenti su come farlo nei pochi file .sh sparsi in questa repository. Naturalmente, in futuro, renderò questo emulatore più user-friendly.

Ringraziamenti

Grazie a tutte le persone che hanno contribuito direttamente o indirettamente e ad aver reso possibile tutto ciò. In nessun ordine particolare: jolly, flatz, idc, masterzorag, zer0xff, zecoxao, z80, x41. Anche molte persone anonime e altre persone che potrebbero essermi sfuggite di mente. Voi sapete chi siete!

Segui il gruppo su twitter e supporta lo sviluppo dell’emulatore sul Patreon.



Source : github.com

(Visited 1 times, 1 visits today)

3 commenti

  1. in teoria è più facile emulare una ps4 rispetto alle 3, vista l’hardware della nuova consolle molto simile ai pc. il problema rimane sostanzialmente software

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *