Pubblicata una primissima versione di Titan, una serie di patch binarie scritte a mano per il kernel della console Microsoft Xbox original.
Queste patch sono state progettate per espandere le capacità di archiviazione della popolare console di gioco del 2001, anche oltre 16 TB. Ciò si ottiene modificando il kernel per supportare LBA48 ed estendendo il numero di settori del disco indirizzabili a 512 byte nello stack IO.
Disclaimer
[stextbox id=’info’]Nota: Questo progetto NON utilizza alcun codice protetto da copyright né aiuta a eludere i meccanismi di sicurezza di una console Xbox.[/stextbox]
Queste patch dovrebbero essere considerate altamente sperimentali in attesa di ulteriori attestazioni. Utilizzando questo software, accetti il rischio di subire la perdita totale o la distruzione dei dati sulla console in questione.
Titan potrebbe interrompere l’homebrew Xbox esistente e l’homebrew esistente potrebbe rompere i sistemi basati su Titan.
Utilizzo
Il patcher del kernel basato su PC di Titan è scritto in Python 3. Si consiglia vivamente di scaricare i pacchetti rilasciati che raggruppano le dipendenze applicabili per PC Windows, Linux e macOS.
Di seguito viene fornito un esempio di utilizzo:
python3 tpatch.py m8plus_kernel.img
L’output riuscito dovrebbe essere simile al seguente:
[*] Patching with Titan v1.0 -- by Markus Gaasedelen
[*] - Hashing kernel 'C:\titan\m8plus_kernel.img' to ensure compatibility
[*] - 0x800243AA: Patching HddStartVerify(...)
[*] - 0x8002443F: Patching HddVerify(...)
[*] - 0x800244E6: Patching HddStartRw_Length(...)
[*] - 0x80024534: Patching HddStartRw_Transfer(...)
[*] - 0x80024632: Patching HddRw_Save(...)
[*] - 0x8002465B: Patching HddRw_Smuggle(...)
[*] - 0x80024485: Patching HddCompleteRw(...)
[*] - 0x800246F3: Patching HddGetDriveGeometry(...)
[*] - 0x8002F066: Patching HddPartitionCreate(...)
[*] - 0x80024B5A: Patching HddCreateQuick(...)
[*] - 0x8005546D: Patching HddCreate(...)
[*] - 0x80027143: Patching FatxParseSupeblock(...)
[*] - 0x80029CE5: Patching FatxStartAsyncIo(...)
[*] - 0x80029E5B: Patching FatxAsyncIo(...)
[+] Patching successful!
Per una procedura dettagliata sulla configurazione di una Xbox con Titan, fare riferimento a GUIDE.md
fornito in questo repository.
Note aggiuntive
Alcune note aggiuntive su Titan sono le seguenti:
- Formattazione
- Il progetto FATX è attualmente l’unico metodo testato/supportato per formattare un disco per un sistema basato su Titan.
- XBPartitioner/XBlast/XeniumOS/FATXplorer sono tutti considerati non supportati e probabilmente richiedono aggiornamenti.
- Mi aspetto che questi strumenti ottengano versioni aggiornate nel prossimo futuro.
- Partitioni
- Titan è essenzialmente codificato per utilizzare uno schema di partizionamento in stile “F (Partition 6) Takes All”.
- Titan potrebbe essere esteso per supportare partizioni aggiuntive, ma sembra non necessario.
- Cluster
- Titan consente di aumentare le dimensioni dei cluster di 128kb, 256kb e 512kb.
- Si consiglia vivamente di formattare dischi di grandi dimensioni (2 TB+) con 1024 settori per cluster (512 kb).
- FATX di Matt è l’unico strumento in grado di formattare attualmente dischi con cluster più grandi.
- L’aumento delle dimensioni dei cluster aumenta notevolmente la velocità di montaggio dei volumi FATX (avvio più rapido).
- L’aumento delle dimensioni dei cluster garantirà letture più lineari sul disco (letture di file più veloci, caricamento del gioco, ecc..).
- L’aumento delle dimensioni dei cluster consente dimensioni per più elementi nella directory del disco principale (8192 elementi a cluster da 512 kb).
- Se stai utilizzando Titan, puoi permetterti il lusso di cluster più grandi, quindi smettila di lamentarti dello spazio sprecato.
- L’aumento delle dimensioni dei cluster non è mai stato un problema per limitare le dimensioni di unità/partizioni, questo è FUD.
- I cluster da 64 kb dovrebbero funzionare sulla partizione Titan ma l’avvio/il montaggio SARÀ lento per i dischi di grandi dimensioni.
- Titan consente di aumentare le dimensioni dei cluster di 128kb, 256kb e 512kb.
- UDMA
- Titan può cambiare la modalità di trasferimento UDMA usata dal kernel con
--udma N
- L’aumento della modalità UDMA è stato profilato per migliorare alcuni tempi di caricamento del gioco superiori al 20%.
- L’aumento della modalità UDMA richiederà un cavo IDE a 80 pin.
- La Xbox retail utilizza UDMA 2 (33 mb/s) per impostazione predefinita (come fanno molti/tutti(?) BIOS modificati’).
- La modalità UDMA massima supportata da Xbox southbridge è UDMA 5 (100 mb/s HDD <–> CPU).
- UDMA 5 NON FUNZIONA CON TUTTI GLI ADATTATORI DA IDE A SATA.
- UDMA 5 funziona con gli adattatori Startech ma non è stato adeguatamente confrontato.
- UDMA 5 è instabile su adattatori basati su RXD-629A7-7, ma UDMA 4 sembra a posto.
- WLXKG-863B sono gli adattatori “peggiori” che ho sperimentato lavorando su Titan e sono in gran parte non testati.
- Titan può cambiare la modalità di trasferimento UDMA usata dal kernel con
- Giochi
- Testato un assortimento casuale di giochi per garantire una base di stabilità del sistema.
- Non mi aspetto grandi problemi qui, ma ovviamente dovrebbero essere eseguiti più test.
- Testato un assortimento casuale di giochi per garantire una base di stabilità del sistema.
- Dashboard
- XBMC sembra funzionare bene.
- EvoX sembra funzionare bene.
- EvoX visualizza la dimensione del disco errata perché esegue un modulo di ‘gigabyte disponibili’ di 1000.
- Ciò non significa che hai formattato in modo errato o che l’HDD sia danneggiato.
- FTP sembra a posto?
- Gli FTP basati su dashboard sono probabilmente molto più sicuri degli FTP basati su BIOS (ad es. XeniumOS).
- Considera tutti gli altri dashboard come non testati.
- Note sugli altri Homebrew
- DVD2Xbox funziona bene.
- FTP tramite XeniumOS è probabilmente rischioso. Lo userei solo per trasferire file su partizioni RETAIL (C o E).
- Tutto ciò che si avvia in un BIOS BFM (PBL, Hexen?) Non è totalmente supportato per l’accesso alla partizione Titan (F).
- Considera tutti gli altri homebrew come non testati.
- Patch
- Titan è supportato solo sul kernel M8+. M8+ è una versione modificata del kernel finale (5838).
- Titan/M8+ può essere utilizzato su TUTTE le revisioni hardware al dettaglio (1.0 -> 1.6b).
- Queste patch possono quasi certamente essere trasferite su altri kernel Xbox, ma non è qualcosa che ho intenzione di fare.
- Le precedenti iterazioni di queste patch hanno modificato il kernel per utilizzare settori 4K, ma sono state ritenute non necessarie.
- Le patch rilasciate possono essere ulteriormente semplificate, allontanandosi dall’implementazione 4K originale.
- Più patch sperimentali che accelerano ulteriormente il montaggio di grandi volumi FATX possono essere aggiunte in seguito.
- Titan è supportato solo sul kernel M8+. M8+ è una versione modificata del kernel finale (5838).
Changelog
- Hotfix per il tipo di argomento UDMA.
Download: Titan kernel v1.0.1 (Linux)
Download: Titan kernel v1.0.1 (MacOS)
Download: Titan kernel v1.0.1 (Win32)
Download: Source code Titan kernel v1.0.1
Fonte: github.com