Romhacking.it Forums

Traduzioni => CD/DVD Console Hacking => Discussione aperta da: Halfshadow il Giugno 25, 2015, 21:21:46

Titolo: Tekken3 EUR sostituire il video censurato di Anna con quello dell'ISO giapponese
Inserito da: Halfshadow il Giugno 25, 2015, 21:21:46
Salve, dovreste sapere che le versioni americane ed europee di Tekken 3 hanno il video finale di Anna censurato. Non so se è già stato fatto, ma volevo provare a rimettere le cose a posto. Purtroppo la ISO di Tekken 3 non ha dei veri e propri file STR ma un file XAS, presumo siano lì i file STR. Avevo provato a sostituire il file XAS con quello giapponese (ma comunque non sarebbe la migliore cosa, perché alcuni video hanno dei sottotitoli che nella ISO giapponese sono infatti in giapponese) ma non funziona, i video non si vedono per nulla facendo quella sostituzione. C'è un modo per sostituire con successo solo il video di Nina? Tra parentesi il video di Nina non ha alcun sottotitolo quindi quello originale giapponese sarebbe perfetto.
Titolo: Re:Tekken 3 EUR sostituire il video censurato di Nina con quello della ISO giappone
Inserito da: Phoenix il Giugno 26, 2015, 08:38:19
Ti conviene usare jpsxdec per cercare il video specifico dentro la iso, estrarlo e reinserirlo con lo stesso programma nell'altra iso.
Questo sempre supponendo che il video non duri più di quello che vuoi sostituire.
Titolo: Re:Tekken 3 EUR sostituire il video censurato di Nina con quello della ISO giappone
Inserito da: Halfshadow il Giugno 26, 2015, 11:44:21
Sì dura di più, dovrebbero esserci intorno ai 4 MB di differenza... C'è qualche speranza che nella ISO europea sia stato messo per ultimo? Altrimenti come si può fare? Inoltre mi viene in mente una cosa, dovrebbe essere contenuto nell'enorme file .XAS e secondo i settori LBA non è l'ultimo file della ISO. Anche se fosse l'ultimo video del file XAS c'è il pericolo che sovrascriva altri settori LBA? Al limite potrei ricreare la ISO da 0 con i files dopo la modifica?

-EDIT- Purtroppo no, è il file 067 contenuto all'interno del file XAS. In ogni caso non so come usare il programma per provare a reinserire quello giapponese, sono riuscito solamente ad estrarli.

Nella versione giapponese invece è il numero 057 comunque il programma me li estrae in AVI, è normale? È il loro formato vero e proprio?
Titolo: Re:Tekken 3 EUR sostituire il video censurato di Nina con quello della ISO giappone
Inserito da: Sorakairi il Giugno 26, 2015, 12:18:56
Sì, dovresti ricreare la ISO da zero, se ne hai la possibilità.
Ancor prima, però, devi modificare manualmente l'archivio in cui è contenuto il filmato, prestando attenzione ad eventuali valori come size del package, puntatori a file e relative dimensioni. Se fornisci maggiori informazioni, scaglionando i dati della ISO, è possibile che si possano fornire degli aiuti più mirati.

EDIT: Evidentemente è il tool che utilizzi a convertirli in .avi, perché non è quello il formato nativo della PS1.
          Se ci mandi un campione di 4/5 MB dell'archivio .XAS in privato, iniziamo a farci un'idea di cosa fare.
Titolo: Re:Tekken 3 EUR sostituire il video censurato di Nina con quello della ISO giappone
Inserito da: Halfshadow il Giugno 26, 2015, 13:05:17
Adesso sto provando utilizzando il tool di Gemini (XtrActor .NET) a sostituirlo. Il problema è che è più breve, ma allungherò il BIN con un editor esadecimale, almeno il file XAS verrà più grande come dovrebbe essere e poi vedremo se i video successivi a quello verranno caricati correttamente oppure no, modificare artificialmente il BIN con l'editor esadecimale porta i settori LBA a cambiare automaticamente oppure la ISO diventa danneggiata? Boh, intanto provo, dopo semmai vi faccio vedere un campioncino, intanto estraggo i video incrimati, grazie al programma che mi aveva detto Phoenix sono riuscito a scoprire quali sono i settori LBA dove si trovano.

-EDIT- Funziona tutto in maniera confusa, dopo quella modifica e soprattutto non c'è verso di sapere dove realmente inizia e dove realmente termina, infatti mi aggiunge persino un pezzettino di un video successivo della ISO giapponese che in teoria, avendo seguito i settori LBA che mi ha fornito jpsxdec non dovrebbe esserci. Di quali informazioni avete bisogno per darmi una mano? Come si fa a scaglionare i dati della ISO?
Titolo: Re:Tekken 3 EUR sostituire il video censurato di Nina con quello della ISO giappone
Inserito da: Phoenix il Giugno 26, 2015, 16:04:32
Il problema è che il codice di riproduzione degli STR (che è al 99% basato sul sorgente di esempio dell'SDK ufficiale) ha bisogno di due parametri essenziali: l'lBA in cui si trova il video, e il numero di frame da riprodurre.
Anche se riuscissi a reinserire il video, dovresti cmq trovare dove il gioco passa il numero di frame alla routine di riproduzione e cambiare quel valore con il nuovo numero di frame.

Qui, mi dispiace dirlo, ma qualche conoscenza di assembly, è richiesta.
Titolo: Re:Tekken 3 EUR sostituire il video censurato di Nina con quello della ISO giappone
Inserito da: Halfshadow il Giugno 26, 2015, 17:26:04
Allora adesso che si fa? Considerate che Tekken 3 è un gioco molto amato penso che questa MOD piacerebbe davvero a molti. Se è necessario l'ASM a questo punto farei un file STR distinto da inserire nella ISO senza quindi andare ad intaccare gli altri settori LBA e dirottare la lettura di quel video verso quel file, se è possibile.

-EDIT- In ogni caso per il momento ho estratto il finale giapponese in formato STR rispettando la lunghezza multipla di 2048 ed infatti corrisponde perfettamente perché al byte successivo sarebbe iniziata la struttura del video successivo.
Titolo: Re:Tekken 3 EUR sostituire il video censurato di Nina con quello della ISO giappone
Inserito da: Phoenix il Giugno 26, 2015, 18:42:03
Se vuoi aggiungere il video in un'altra locazione della ISO allora quello che dovrai fare sarà aggiungere spazio in fondo alla ISO, inserire l'STR con l'xtractor di gemini all'LBA desiderato, e infine, volente o nolente, dovrai cercare dove il gioco memorizza l'LBA e il numero di frame di quel filmato, e cambiarli con i nuovi.
Se hai fortuna, questi dati li riesci a trovare dentro l'eseguibile di gioco. Ma se sono specificati via codice durante la chiamata della routine, l'hack assembly è inevitabile.
In ogni caso, trovare questa routine non è difficile. La routine di riproduzione richiede l'indirizzo di settore in formato min:sec:frame. Per convertire l'lBA usa una funzione della SDK che puoi trovare facilmente. Mi sembra si chiami CdToLoc, o una cosa del genere. Puoi aprire l'eseguibile di gioco con IDA (con apposito plugin per PSX) e cercare quali parti di codice richiamano CdToLoc. All'80%, vicino al codice che richiama CdToLoc, troverai anche la chiamata alla routine di riproduzione.

-EDIT- Ho verificato, si chiama CdIntToPos.
Titolo: Re:Tekken 3 EUR sostituire il video censurato di Nina con quello della ISO giappone
Inserito da: Halfshadow il Giugno 26, 2015, 21:29:05
Domani mi ci metto d'impegno e provo. Ma come si fa ad inserire un file aggiuntivo dentro una ISO già esistente? Perché CDmage non lo fa, se provo a ricreare la ISO con PS2gen poi inserendo i file estratti con CDMAGE (che hanno i sottocanali) dopo non corrispondono i settori LBA perché a quanto pare i file estratti con CDmage sono più grandi e quindi i settori LBA dei file successivi non corrispondono.Se estraggo i file con altri programmi invece sono più piccoli e non comprendono i sottocanali. Cosa dovrei fare? Devo solo aggiungere un file di 15 MB, vorrei lasciare inalterati i settori dei file già esistenti, tanto a quello che mi hai detto c'è da cambiare il riferimento dei settori LBA della ISO per fargli caricare un altro video ed il settore LBA del video aggiunto comunque sarebbe sempre a 6 cifre, come quello che già utilizza. Quindi sarebbe bene aggiungerlo unicamente.
Titolo: Re:Tekken 3 EUR sostituire il video censurato di Nina con quello della ISO giappone
Inserito da: Phoenix il Giugno 26, 2015, 22:05:05
Quello di cui stai parlando tu è l'aggiornamento della TOC della ISO. Cioè quei settori della ISO che descrivono i nomi dei file al suo interno, la loro posizione (LBA) e dimensione.

Molto probabilmente, a te non servirà farlo. Tu devi solo aggiungere dello spazio (byte vuoti) in fondo alla iso, e usare xtractor .net per inserire l'STR a partire dal settore che punta allo spazio nuovo.

Poi, dovrai modificare i parametri passati alla routine di riproduzione video, cambiando l'LBA e il numero di frame. Il fatto che il nuovo STR non sarà visibile all'interno della ISO è assolutamente irrilevante. La TOC serve solo a visaulizzare i file nella ISO. Ma il riproduttore video del gioco, molto probabilmente non ne fa uso.

Dovrai prima accertarti di questo.
Titolo: Re:Tekken 3 EUR sostituire il video censurato di Nina con quello della ISO giappone
Inserito da: Halfshadow il Giugno 26, 2015, 22:24:41
Aggiungere direttamente l'STR con l'editor esadecimale potrebbe comunque andar bene? Alla fine i byte sono quelli, comunque mal che vada non è un grosso problema. A proposito, ma poi come faccio a sapere qual è il settore LBA dove vado ad aggiungere il file? L'editor esadecimale mi fornisce unicamente informazioni riguardo all'offset. Comunque penso che sarebbe meglio aggiornare anche la TOC, tu sai dirmi come si fa?

-EDIT-
Da quello che ho visto l'ultimo settore LBA utilizzato dagli altri files della ISO era il settore 292.784, ho fatto in modo di inserire il video al settore 292.785 tramite xtractor .net, comunque penso che anche la TOC andrebbe aggiornata perché comunque il file dovrebbe essere accessibile. Poi vediamo come far leggere il video al gioco.

-EDIT- Ho aggiunto il file alla TOC, poi per correggere le dimensioni ho utilizzato un programma che tra parentesi hai creato tu Phoenix, l'ho trovato cercando su Google, però non capisco perché anche se io avevo dato come dimensioni quelle del file STR invece poi aprendo la ISO il file figura più grande di circa 2 MB, essendo in fondo alla ISO infatti Windows non riesce a copiarlo perché appunto in fondo al file mancano 2 MB di ISO...
Titolo: Re:Tekken 3 EUR sostituire il video censurato di Nina con quello della ISO giappone
Inserito da: Phoenix il Giugno 27, 2015, 14:19:38
Le dimensioni devono essere quelle dell'STR codificato a 2048 byte per settore e non a 2336/2352. Windows non riesce a copiarlo proprio per questo motivo. Se tenti di copiare il file XAS avrai lo stesso problema.
Titolo: Re:Tekken 3 EUR sostituire il video censurato di Nina con quello della ISO giappone
Inserito da: Halfshadow il Giugno 27, 2015, 18:25:09
Questo IDA è un plugin di quale emulatore PSX? Inoltre dovrei giocare fino al punto in cui viene mostrato il video? Purtroppo non è una cosa così semplice perché è il finale di Anna, anche se mi sono sbagliato a scrivere il titolo della discussione, che è un personaggio che non si sblocca subito, sul Play station vero e proprio ho il gioco completo al 100% su Memory card ma sul PC no... Si può tentare la strada dell'eseguibile prima? Per eseguibile cosa intendi, è proprio un file EXE o può essere il file SCES_012.37? Altrimenti ora che mi viene in mente io conosco i settori LBA del video che viene visualizzato attualmente, possono essermi utili per trovare il punto dove vengono utilizzati direttamente tramite l'editor esadecimale e modificare tutto con quello?
Titolo: Re:Tekken 3 EUR sostituire il video censurato di Nina con quello della ISO giappone
Inserito da: Gemini il Giugno 27, 2015, 19:21:52
IDA è un programma per disassemblare in maniera interattiva. Serve sostanzialmente per analizzare il codice dettagliatamente una volta individuata una routine che ti interessa.

Per quanto riguarda il video, con tutta probabilità ti toccherà espandere il file XAS per spostare in avanti i video successivi a quello di Nina ed evitare di finire nell'area di lead out della ISO (gli ultimi 30 MB non raggiungibili dal salto massimo del lettore, di solito riempiti con un file vuoto o con un filmato che supera il limite di salto). Non ho idea di come il gioco indirizzi le letture dei video, ma sicuramente ha una tabella da qualche parte per posizionarsi sul file XAS e da qualche altra parte ci sarà anche la lunghezza in frame di ogni filmato. Una volta trovati i valori giusti puoi ricostruire il file XAS e la ISO a piacimento.
Titolo: Re:Tekken 3 EUR sostituire il video censurato di Nina con quello della ISO giappone
Inserito da: Phoenix il Giugno 27, 2015, 19:27:01
@Gemini, non credo gli serva espandere lo xas, penso basti aggiungere in coda alla iao il nuovo viedo, e ovviamente poi aggiungere ancora in coda dello spazio dummy per risolvere il problema del lead out.
Titolo: Re:Tekken 3 EUR sostituire il video censurato di Nina con quello della ISO giappone
Inserito da: Halfshadow il Giugno 27, 2015, 19:44:42
Comunque mi sono sbagliato nello scrivere, non è il filmato di Nina, è quello di Anna, il fatto è che in entrambi i finali (sia di Nina che di Anna) appaiono entrambe perché sono sorelle e quindi mi sono confuso. Quindi poi serve anche un file Dummy dopo il video? Beh, ci sarebbe quello della ISO stessa, pensate vada bene?
Titolo: Re:Tekken3 EUR sostituire il video censurto di Anna con quello della ISO giapponese
Inserito da: Gemini il Giugno 27, 2015, 19:59:51
Se c'è spazio nella ISO puoi farlo. Mi pare che Tekken 3 usi quasi tutto lo spazio riservato mettendo la intro al posto del NULL finale, ma non ricordo dopo tutti questi anni.
Titolo: Re:Tekken3 EUR sostituire il video censurto di Anna con quello della ISO giapponese
Inserito da: Halfshadow il Giugno 27, 2015, 20:09:34
Beh non esattamente spazio nella ISO, nel disco, modificando la ISO per aggiungere il file STR di Anna la ISO occupa 670 MB, un CD ne ha 700.
Comunque sì anche a me sembra che il video iniziale sia l'ultimo video contenuto nel file XAS, anche se non è l'ultimo file della ISO, nella ISO giapponese è subito dopo il file BNS, nella ISO europea invece prima.

Non so se è normale comunque, ma mi appaiono le opzioni per eliminare o modificare i tuoi post.
Titolo: Re:Tekken3 EUR sostituire il video censurto di Anna con quello della ISO giapponese
Inserito da: Halfshadow il Luglio 06, 2020, 22:43:08
Sono passati 5 anni, ma non mi sono arreso, ho solo procrastinato.

Ora ho provato a fare un esperimento:

Ho preso il file .XAS del gioco (quello che contiene tutta la musica ed i filmati in un file unico) e con l'editor esadecimale ho provato a cancellare unicamente i byte di Anna censurati della versione europea. Dopo il video di Anna c'è quello di Gon.

Questi gli offset esadecimali (del file XAS):
Anna: 0x1E197A67
Gon: 0x1Eb07637

Di conseguenza da 0x1E197A67 a 0x1Eb07637 avevo cancellato tutto e dopo ci ho messi quelli di Anna dalla versione giapponese, che pesa 4 MB in più.

Però c'è un problema. Ovvero che il file ottenuto è più grosso e questo file XAS non è l'ultimo della ISO, di conseguenza l'ho reinserito con CDmage che ha troncato gli ultimi 4 MB in coda.

(tentando di creare una nuova ISO da 0 non corrisponde qualche checksum e di conseguenza invece non funzionano nessuna musica e nessun video).

Cosa succede quindi:

Il video di Anna sembra caricare perfettamente, però rispetta la durata originale del video censurato. Il successivo nel file XAS che è quello di Gon parte da dove si tronca quello di Anna e comunque non si vede molto bene, forse perché l'aspect ratio dovrebbe essere diverso.

Invece il video iniziale del gioco, che sta in fondo, avendo i byte spostati mostra invece il finale di Tiger che balla. Si vede perfettamente ma parte in un punto un po' inoltrato del video.

Se ne deduce che anche ricodificare il video con un frame rate più basso per farcelo stare per sovrascrivere proprio quello spazio sarebbe inutile perché durerebbe meno comunque.

Da qualche parte è scritto quanti frames possiede quel video e cercando il valore sia in decimale che esadecimale, anche invertendo, non riesco a trovarlo.

Inoltre o come avevate ipotizzato i pointer verso i video sono indicati come durata del CD (ed avevo i mezzi per provare a trovare il punto di un time code con un lettore CD ma non ho trovato nemmeno quei valori) oppure coi settori LBA.

Sicuramente però se le cose stanno così potrei fargli caricare anche un file aggiunto in coda presumo.

Però non so dove caspiterina siano questi pointer sia dei settori LBA/Offset/Timecode e soprattutto il valore dei frames.

Nessuno può aiutarmi a trovare questi valori per correggerli per favore?