News: 11 March 2016 - Forum Rules, Mobile Version
Current Moderators - DarkSol, KingMike, MathOnNapkins, Azkadellia

Author Topic: Tales of Eternia PSP - Remove battery gauge?  (Read 9261 times)

Satoshi_Matrix

  • Full Member
  • ***
  • Posts: 228
  • Retro & Contemporary Gamer
    • View Profile
    • Retro & Contemporary Gaming Archives
Tales of Eternia PSP - Remove battery gauge?
« on: September 07, 2013, 09:30:22 pm »
Tales of Eternia for PSP, released in Japan and Europe, is a fantastic port of the PS1 classic to Sony's RPG rich portable. However, I find one particular aspect of the game to be particularily annoying:

At all times during gameplay, in the top right corner of the screen a white battery gauge HUD element is present. It overlaps everything - cutscenes, loading sequences, battles, dialogue, you name it. 



Might someone with a bit of PSP hacking knowledge be able to remove this blemish? It seems extremely odd that Namco would have included this given that the pressing the PSP's home button already brings up a battery charge gauge when pressed, so there's absolutely no need for one active at all times during gameplay.

And no, there is NO way to disable it through any in-game menu.

Since it overlaps everything, I worry it might not be possible to remove the battery gauge.

ETG

  • Jr. Member
  • **
  • Posts: 50
    • View Profile
Re: Tales of Eternia PSP - Remove battery gauge?
« Reply #1 on: September 07, 2013, 10:31:05 pm »
It might be easiest to find the graphics and blank it out.
I'm assuming it has a clear color background and it's not used elsewhere.

GHANMI

  • Hero Member
  • *****
  • Posts: 655
    • View Profile
Re: Tales of Eternia PSP - Remove battery gauge?
« Reply #2 on: September 07, 2013, 10:43:22 pm »
I know Dolphin, DesMume, and PCSX2 have options to display the file names/offsets for the currently loaded files.
Is there such an option in PSP emulators such as PPSSPP / JPCSP?
(Or an option for displaying the offs being read from the ROM for earlier-gen emulators, that doesn't involve ASM?)

Satoshi_Matrix

  • Full Member
  • ***
  • Posts: 228
  • Retro & Contemporary Gamer
    • View Profile
    • Retro & Contemporary Gaming Archives
Re: Tales of Eternia PSP - Remove battery gauge?
« Reply #3 on: September 07, 2013, 11:32:16 pm »
if that's so, then the easiest place to look for it is during a cutscene, as it's constantly visible even during cutscenes.

Also, if it's any help comparing the code, apparently the battery charge gauge does not show up in the Japanese version of Tales of Eternia PSP. It's only in the European English version.

StorMyu

  • Jr. Member
  • **
  • Posts: 63
    • View Profile
Re: Tales of Eternia PSP - Remove battery gauge?
« Reply #4 on: September 09, 2013, 07:47:51 am »
I was lazy to dig more than 2min, but the game gets the Battery status with the psp's internal function sceimposegetbatteryiconstatus then display it using... (still not sure about that since PPSSPP doesn't emulate it so taking my real psp to test that out was just out of the question because of my laziness.)

Satoshi_Matrix

  • Full Member
  • ***
  • Posts: 228
  • Retro & Contemporary Gamer
    • View Profile
    • Retro & Contemporary Gaming Archives
Re: Tales of Eternia PSP - Remove battery gauge?
« Reply #5 on: September 09, 2013, 01:37:22 pm »
Yes, I can confirm that. As I said in the other thread, it puzzles me in several aspects since the battery gauge in-game appears to be exactly the same battery gauge display as the PSP's built in XMB menu, not something drawn up for the game itself.

It's also only included in the English, European version and not in the original Japanese release. There is also a third version, a fan hack "undub" version that uses the Japanese voice overs with English text, and the battery gauge appears in that version as well.

Given that the gauge is that of the system itself, this is what really had me wanting someone with hacking knowledge to take a look at.

StorMyu

  • Jr. Member
  • **
  • Posts: 63
    • View Profile
Re: Tales of Eternia PSP - Remove battery gauge?
« Reply #6 on: September 10, 2013, 02:20:12 am »
I've looked yesterday but already don't remember the exact name of the function. Just need to void its parameters and the icon disappear. Not really hard to do.

RetroHelix

  • Full Member
  • ***
  • Posts: 145
    • View Profile
Re: Tales of Eternia PSP - Remove battery gauge?
« Reply #7 on: September 10, 2013, 12:35:43 pm »
 :huh:
I'm just curious. Reading your last 2 posts StorMyu it sounds like its quite easy to get/alter functions of PSP games. Please share your knowledge :)

StorMyu

  • Jr. Member
  • **
  • Posts: 63
    • View Profile
Re: Tales of Eternia PSP - Remove battery gauge?
« Reply #8 on: September 10, 2013, 02:51:24 pm »
:huh:
I'm just curious. Reading your last 2 posts StorMyu it sounds like its quite easy to get/alter functions of PSP games. Please share your knowledge :)
it's easy when you know what you do and I'm merely changing parameters, not the actual function.

For example, especially on PSP, you got the intern-menu of the PSP (like when you press the Home button / the save/load Menu etc)
Well you'll not find a string to change that. It's an internal PSP function.

And I did change that for a project I'm on:



The first one is a change on the OSK (On Screen Keyboard) I've changed the encoding output / the language of its menu / the number of OSK (since you can have many of them for Japanese it's usefull to have one for Katakana, one for Hiragana etc but it's useless for us)
Second one is an example of the Save one, only had to change the language of it.

All that can be done easily by switching some parameters send to that particular function.
PPSSPP's debugger for instance let you know what and where are the syscalls to those functions.
You only have to know them / checking the parameters send to it / Check where it's being initialized and modify it.

I got asked for help a lot to do that when it's really not complicated with a little knowledge...
Btw, I use this website for function's reference: http://psp.jim.sh/pspsdk-doc/structSceUtilitySavedataParam.html
not 100% accurate but still helpful.


Ok one example:
For the save/load menu, the game will call this function "int sceUtilitySavedataInitStart(SceUtilitySavedataParam * params);"
http://psp.jim.sh/pspsdk-doc/psputility__savedata_8h_source.html
You check the parameters send to that function, first one is a struct named  "pspUtilityDialogCommon"
And I really hope I don't have to explain the rest: http://psp.jim.sh/pspsdk-doc/structpspUtilityDialogCommon.html (there's a little typo on this page)

Satoshi_Matrix

  • Full Member
  • ***
  • Posts: 228
  • Retro & Contemporary Gamer
    • View Profile
    • Retro & Contemporary Gaming Archives
Re: Tales of Eternia PSP - Remove battery gauge?
« Reply #9 on: January 10, 2014, 03:04:29 am »
I hate to nag, but if anyone has skills in PSP hacking, this should be a very easy request. I simply want the battery gauge icon hidden during normal gameplay when using the real PSP hardware. It doesn't show up in emulation, at least not on android.

thanks if anyone can help.

KC

  • Full Member
  • ***
  • Posts: 209
    • View Profile
Re: Tales of Eternia PSP - Remove battery gauge?
« Reply #10 on: January 10, 2014, 04:24:49 am »
It doesn't show up because it's not returning the proper values.



Change the highlighted instruction to li v0,-1. It's a simple hack so it should be a good excercise.

Satoshi_Matrix

  • Full Member
  • ***
  • Posts: 228
  • Retro & Contemporary Gamer
    • View Profile
    • Retro & Contemporary Gaming Archives
Re: Tales of Eternia PSP - Remove battery gauge?
« Reply #11 on: January 10, 2014, 12:08:00 pm »
I really know nothing about PSP hacking. Given that I'm asking for a very basic change, I was hoping someone with the needed skill could fix this for me.

KC

  • Full Member
  • ***
  • Posts: 209
    • View Profile
Re: Tales of Eternia PSP - Remove battery gauge?
« Reply #12 on: January 10, 2014, 12:41:45 pm »
As the rules state, this is not the place to ask others to do the work for you. We can assist and help you, but ultimately you will need to show some willingness to get work done yourself.

Satoshi_Matrix

  • Full Member
  • ***
  • Posts: 228
  • Retro & Contemporary Gamer
    • View Profile
    • Retro & Contemporary Gaming Archives
Re: Tales of Eternia PSP - Remove battery gauge?
« Reply #13 on: January 10, 2014, 01:34:44 pm »
well, alight. Its unlikely I'll have any success given that I know absolutely nothing about psp hcking, but I'm willing to look into it nevertheless.

what is the name of that program you're running in the image you posted above? hope it's available on mac.

RetroHelix

  • Full Member
  • ***
  • Posts: 145
    • View Profile
Re: Tales of Eternia PSP - Remove battery gauge?
« Reply #14 on: January 10, 2014, 02:16:43 pm »
It'S nice someone took on the task (thanks KC) but I doubt that without some explanations this is a real help for most people.

Satoshi_Matrix

  • Full Member
  • ***
  • Posts: 228
  • Retro & Contemporary Gamer
    • View Profile
    • Retro & Contemporary Gaming Archives
Re: Tales of Eternia PSP - Remove battery gauge?
« Reply #15 on: January 10, 2014, 04:26:49 pm »
well, nobody's taken up the task. i would if I a) knew what program to use and b) knew what I was suppose to even be doing.

The fix should be as simple as turning off whatever switch that's making it show up at all times, but I have no idea myself how to do that.

KC

  • Full Member
  • ***
  • Posts: 209
    • View Profile
Re: Tales of Eternia PSP - Remove battery gauge?
« Reply #16 on: January 11, 2014, 04:23:24 am »
That's the windows version of the PPSSPP debugger. There is a (much worse) debugger in QT builds too, but I'm not sure on which platforms that is available. The called function (sceImposeGetBatteryStatus) writes the status into the address given in a0, which is sp in this case. If that value is negative then it is interpreted as not showing a battery icon. So the hack is to change the load of the actual return value into the load of a negative value.
Given it's just a simple 4 byte change, it's probably simpler to create a cheat for cwcheat. I don't know the cheat format, but it would have to write 0x2402FFFF to memory address 0x0895D300.

Satoshi_Matrix

  • Full Member
  • ***
  • Posts: 228
  • Retro & Contemporary Gamer
    • View Profile
    • Retro & Contemporary Gaming Archives
Re: Tales of Eternia PSP - Remove battery gauge?
« Reply #17 on: January 11, 2014, 06:48:32 am »
hm. most of that is as good as jebbish to me, but I do like the idea of a cheat file to fix the issue. i've never heard of cwcheat, but that sounds promisingif a cheat can be generated to flick the switch as you say. I hope someone might be able to help me with that.

Isao Kronos

  • Hero Member
  • *****
  • Posts: 1112
  • Snug Pigge
    • View Profile
Re: Tales of Eternia PSP - Remove battery gauge?
« Reply #18 on: July 16, 2014, 06:59:20 pm »
Did anyone ever figure out the precise cheat for cwcheat to disable the battery meter? I tried what KC suggested and it just crashed the game.

Belmondo

  • Newbie
  • *
  • Posts: 2
    • View Profile
Re: Tales of Eternia PSP - Remove battery gauge?
« Reply #19 on: July 22, 2014, 05:08:11 pm »
Just decrypt the eboot.bin replace 00 00 A2 8F @ offset 159380 with FFFF0224 and it is done, battery gauge is gone.

edit:

or just apply this xdelta patch to your iso.

https://www.dropbox.com/s/tejf3uhf38mdf2m/TOEremovebatterygauge.xdelta
« Last Edit: July 22, 2014, 05:17:39 pm by Belmondo »