Reply to thread
GBAtemp.net - The Independent Video Game Community
Search
Search titles only
By:
Search titles only
By:
Reply to thread
GBAtemp.net - The Independent Video Game Community
Home
Log in
Terms & Rules
Donate
Forums
New posts
Search forums
Groups
Public Events
New
New posts
New resources
New blog entries
New profile posts
New blog entry comments
New threadmarks
Latest activity
Cheats
Cheat Codes Add and Request group
The Legend of Zelda: Tears of the Kingdom cheat codes
Pokémon Legends: Arceus cheat codes
Xenoblade Chronicles 3 cheat codes
Fire Emblem Engage cheat codes
Request a cheat...
Tutorials
Nintendo Switch tutorials
Nintendo 3DS tutorials
Nintendo Wii U tutorials
Reviews
Overview
Official reviews
User reviews
Downloads
Latest reviews
Search resources
Blogs
New entries
New comments
Blog list
Search blogs
Chat
Top chatters
Search
Search titles only
By:
Search titles only
By:
Log in
Register
New posts
Search forums
Log in
Register
Home
Forums
PC, Console & Handheld Discussions
Sony PSP
Problem triying to translate Steins;Gate to Spanish
Menu
Install the app
Install
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser
.
Reply to thread
Message
<blockquote data-quote="HaselLoyance" data-source="post: 8308096" data-attributes="member: 465829"><p>Hey people!</p><p></p><p>So I've been interested in making an English patch for the PSP version of the game.</p><p></p><p>With the currently available tools and Atlas scripts (the ones in the GitHub repo you all know of) I was able to patch the first chapter in the game.</p><p></p><p>I've noticed that you have a problem with this part?</p><p></p><p></p><p>Yeah it is correct, Japanese SG00_01.BIN takes up 60500 bytes, and full English translation takes up 62804 bytes, while the maximum allowed size for the SG00_01.BIN in the DATA0.AFS/SCENE00.AFS is 61440. I managed to increase it from to 61440 to 63488 (+2048 bytes, 1 entire block) and<strong> still have a working game without crashes</strong>.</p><p></p><p>I got the working ISO with this method:</p><ol> <li data-xf-list-type="ol">Extract DATA0.AFS from the game's ISO (PSP_GAME/USRDIR/DATA0.AFS)</li> <li data-xf-list-type="ol">Using AFSExplorer go to Advanced->Modify reserved space. Increase the size of the SG00_01.BIN in DATA0.AFS/SCENE00.AFS by 2048 bytes (1 block) from 61440 to 63488 bytes</li> <li data-xf-list-type="ol">Save newly adjusted DATA0.AFS when prompted</li> <li data-xf-list-type="ol">Open adjusted DATA0.AFS and replace with the English SG00_01.BIN, it will fit perfectly and will even have some bytes to spare</li> <li data-xf-list-type="ol">Using AFSExplorer go to File->Insert AFS file into CD image</li> <li data-xf-list-type="ol">Navigate the menu to replace the original DATA0.AFS in the ISO file with the adjusted DATA0.AFS</li> </ol><p>Congrats, you have a modified game ISO that works without blackscreens/crashes.</p><p></p><p>I think the problem with adjusting size is that game breaks when there are empty blocks in the AFS (suppose you increased the size from 61440 to 61440+2*2048, the English SG00_01.BIN would fit in, but there would be more than a block of free space left). That's just my theory though.</p><p></p><p>I truly hope this is helpful and I didn't waste time doing something that might have been already discovered!</p><p></p><p>___________________</p><p></p><p>Though I still don't understand how in the heck do pointer tables work. I understand the Atlas scripts that are in the GitHub repo, but I'm really blind as to how to get the pointer values, since they seem so random. Yeah, the usually have 4/6/8 bytes between each address, but sometimes those addresses skip over several hundred bytes at once. And as far as I can tell, there is no real format to the pointer table in the BIN file. I'm really confused on that part</p><p></p><p>UPD1: So after some more exploring around the BIN file I've noticed that 4-byte pointers occur after the following "control sequences" of bytes:</p><ul> <li data-xf-list-type="ul">D9 18</li> <li data-xf-list-type="ul">24 06</li> <li data-xf-list-type="ul">70 06</li> <li data-xf-list-type="ul">71 06</li> <li data-xf-list-type="ul">FF FF</li> </ul><p>I'm gonna look into this more, because I have a feeling these are not the only "control sequences"</p><p></p><p>UPD2: Oh my god I think I just figured the entire pointer thing out. I feel very dumb right now.</p><p>Lets divide the entire BIN file into two logical sections:</p><ul> <li data-xf-list-type="ul">Section 1: Pointer table</li> <li data-xf-list-type="ul">Section 2: Strings</li> </ul><p>At the end of the Section 1 there are 4 magic bytes in format "FF/FE ** 0D 02" (not totally confirmed, but it seems to be this way) which can be used as a separation between two sections.</p><p>So we have original BIN file and strings in Section 2 are separated by the 00 character (aka null-terminated strings). We can get the address of the starting position of every string</p><p></p><p>For example, in SG00_01.BIN the first string (according to Atlas scripts in the GitHub repo) is "%L1" + 0x00, with the starting position at 0x73FC</p><p>Now, we do some endian magic, and represent that address as a sequence of bytes "FC 73" (basically bytes in the reverse order)</p><p>The best part: if we search for this sequence of bytes in Section 1 we will find it at 0xBEE</p><p><strong>WHICH IS EXACTLY THE SAME ADDRESS AS IN ATLAS SCRIPTS POINTERS IN THE GITHUB REPO</strong></p><p></p><p>So we can get the addresses of pointers from the original BIN, and then just replace pointers at those addresses to the ones we need in the translation (that is, after we embed the Section 2 and adjust the entire endiannes encoding thing)</p><p></p><p>I think I have figured it out. I THINK</p></blockquote><p></p>
[QUOTE="HaselLoyance, post: 8308096, member: 465829"] Hey people! So I've been interested in making an English patch for the PSP version of the game. With the currently available tools and Atlas scripts (the ones in the GitHub repo you all know of) I was able to patch the first chapter in the game. I've noticed that you have a problem with this part? Yeah it is correct, Japanese SG00_01.BIN takes up 60500 bytes, and full English translation takes up 62804 bytes, while the maximum allowed size for the SG00_01.BIN in the DATA0.AFS/SCENE00.AFS is 61440. I managed to increase it from to 61440 to 63488 (+2048 bytes, 1 entire block) and[B] still have a working game without crashes[/B]. I got the working ISO with this method: [LIST=1] [*]Extract DATA0.AFS from the game's ISO (PSP_GAME/USRDIR/DATA0.AFS) [*]Using AFSExplorer go to Advanced->Modify reserved space. Increase the size of the SG00_01.BIN in DATA0.AFS/SCENE00.AFS by 2048 bytes (1 block) from 61440 to 63488 bytes [*]Save newly adjusted DATA0.AFS when prompted [*]Open adjusted DATA0.AFS and replace with the English SG00_01.BIN, it will fit perfectly and will even have some bytes to spare [*]Using AFSExplorer go to File->Insert AFS file into CD image [*]Navigate the menu to replace the original DATA0.AFS in the ISO file with the adjusted DATA0.AFS [/LIST] Congrats, you have a modified game ISO that works without blackscreens/crashes. I think the problem with adjusting size is that game breaks when there are empty blocks in the AFS (suppose you increased the size from 61440 to 61440+2*2048, the English SG00_01.BIN would fit in, but there would be more than a block of free space left). That's just my theory though. I truly hope this is helpful and I didn't waste time doing something that might have been already discovered! ___________________ Though I still don't understand how in the heck do pointer tables work. I understand the Atlas scripts that are in the GitHub repo, but I'm really blind as to how to get the pointer values, since they seem so random. Yeah, the usually have 4/6/8 bytes between each address, but sometimes those addresses skip over several hundred bytes at once. And as far as I can tell, there is no real format to the pointer table in the BIN file. I'm really confused on that part UPD1: So after some more exploring around the BIN file I've noticed that 4-byte pointers occur after the following "control sequences" of bytes: [LIST] [*]D9 18 [*]24 06 [*]70 06 [*]71 06 [*]FF FF [/LIST] I'm gonna look into this more, because I have a feeling these are not the only "control sequences" UPD2: Oh my god I think I just figured the entire pointer thing out. I feel very dumb right now. Lets divide the entire BIN file into two logical sections: [LIST] [*]Section 1: Pointer table [*]Section 2: Strings [/LIST] At the end of the Section 1 there are 4 magic bytes in format "FF/FE ** 0D 02" (not totally confirmed, but it seems to be this way) which can be used as a separation between two sections. So we have original BIN file and strings in Section 2 are separated by the 00 character (aka null-terminated strings). We can get the address of the starting position of every string For example, in SG00_01.BIN the first string (according to Atlas scripts in the GitHub repo) is "%L1" + 0x00, with the starting position at 0x73FC Now, we do some endian magic, and represent that address as a sequence of bytes "FC 73" (basically bytes in the reverse order) The best part: if we search for this sequence of bytes in Section 1 we will find it at 0xBEE [B]WHICH IS EXACTLY THE SAME ADDRESS AS IN ATLAS SCRIPTS POINTERS IN THE GITHUB REPO[/B] So we can get the addresses of pointers from the original BIN, and then just replace pointers at those addresses to the ones we need in the translation (that is, after we embed the Section 2 and adjust the entire endiannes encoding thing) I think I have figured it out. I THINK [/QUOTE]
Insert quotes…
Verification
Post reply
Home
Forums
PC, Console & Handheld Discussions
Sony PSP
Problem triying to translate Steins;Gate to Spanish
General chit-chat
Help
Users
Settings
Notifications
Miscellaneous
Inverse message direction
Display editor on top
Enable maximized mode
Display images as links
Hide bot messages
Hide statuses
Hide chatter list
Show messages from ignored users
Temporarily disable chat
Receive mention alerts
Sound notifications
Normal messages
Private messages
Whisper messages
Mention messages
Bot messages
Desktop notifications
Normal messages
Private messages
Whisper messages
Mention messages
Bot messages
Options
Options
View top chatters
HiradeGirl
Loading…
BigOnYa
Loading…
K3Nv2
Loading…
Psionic Roshambo
Loading…
@
Psionic Roshambo
:
2 girls 1 cup?
49 minutes ago
@
SylverReZ
:
@Psionic Roshambo
,
https://www.youtube.com/watch?v=moHj6cIrmQ4
48 minutes ago
@
K3Nv2
:
Nah that has 20 million views
48 minutes ago
@
Psionic Roshambo
:
Bukaki omelet is worse lol
+1
47 minutes ago
@
K3Nv2
:
HiradeGirls casually googling all of what you said
+1
46 minutes ago
@
SylverReZ
:
@Psionic Roshambo
,
+1
46 minutes ago
@
Psionic Roshambo
:
Hey that's my mild stuff lol
45 minutes ago
@
K3Nv2
:
Now she knows a tenth percent of what I go through when you send me pms
+3
45 minutes ago
@
Psionic Roshambo
:
Lol
45 minutes ago
@
Psionic Roshambo
:
My links could be wild life in nature or wild life in unnatural circumstances lol
+1
44 minutes ago
@
K3Nv2
:
Your links are the Ukraine Russia war
43 minutes ago
@
Psionic Roshambo
:
Lol
41 minutes ago
@
K3Nv2
:
Biden signed a income contract just so you can keep sending me the mutated things that you do
41 minutes ago
@
Psionic Roshambo
:
https://www.reddit.com/r/DiWHY/s/LnoTr4Xoon
+2
38 minutes ago
@
K3Nv2
:
That just look right with food coloring liquid running down it
+1
36 minutes ago
@
Psionic Roshambo
:
Muhahahaha
34 minutes ago
@
SylverReZ
:
@Psionic Roshambo
, Blue omelette
+1
26 minutes ago
@
Psionic Roshambo
:
Lol Ken will never eat an omelette again lol
24 minutes ago
@
K3Nv2
:
Actually ihops omlettes still hit haven't had one in forever
22 minutes ago
@
Psionic Roshambo
:
The steak one is amazing
+1
21 minutes ago
@
K3Nv2
:
Damn near $20 so fuck them
+1
17 minutes ago
@
BigOnYa
:
I second that, they are good. I always get the steak and add mushrooms to it also. But yea been awhile since had myself. I used to go there every morn for coffee and breakfast, meet with my work crew, but we all stop going, too expensive.
+1
8 minutes ago
@
HiradeGirl
:
I'm scarred for life.
1 minute ago
@
HiradeGirl
:
See you guys, I'll get lost for another month. Maybe the rest of the year.
1 minute ago
@
HiradeGirl
:
1 minute ago
Submit
@
HiradeGirl
:
🤮
1 minute ago
Chat
4