• Welcome to Final Fantasy Hacktics. Please login or sign up.
 
March 19, 2024, 02:43:26 am

News:

Don't be hasty to start your own mod; all our FFT modding projects are greatly understaffed! Find out how you can help in the Recruitment section or our Discord!


[Help] to make text routine come from right to left (RTL) using ASM?

Started by q8fft, March 05, 2018, 08:33:21 am

q8fft

hello, I Have a new challenge to find way to make text routine only for the game come from right to left (RTL)...

I want to know if this is possible in psx with ASM?

I ask this question Because I do not know anything about PSX ASM or where to start.

note: i make this happen in NES but PSX It's quite different from what I know...

Example:


to RTL


I hope to find someone interested in the post. Regards
  • Modding version: Other/Unknown

Xifanie

From my perspective, it sounds like it would be a fair amount of trouble for a mostly simple hack. All you'd really need to do is:

  • Change the print X coordinates of the character from 0 to the box's max width

  • Subtract the character's width from the character position before printing

  • Change the position of the page flipping character from (box's max width) - 12?px to 0



...But then there's also the option selection (like save/don't save Algus) that would need to be considered... which would be a bitch.

I think it's very doable, but not really an easy endeavor for someone with no ASM hacking experience.
  • Modding version: PSX
Love what you're seeing? https://supportus.ffhacktics.com/ 💜 it's really appreciated

Anything is possible as long as it is within the hardware's limits. (ie. disc space, RAM, Video RAM, processor, etc.)
<R999> My target market is not FFT mod players
<Raijinili> remember that? it was awful

q8fft

thanks for replay Xifanie,

In fact I do not need the third step, it does cause a lot of problems, But the Big problem is where to look and how to deal with the ASM in the PlayStation like me No ASM hacking experience this will take looong time...

any tips, guide will be welcome...
  • Modding version: Other/Unknown

Xifanie

Well, I can't really do it for you... huge financial stress these days, so gotta focus on trying to build a business.

But we do have ASM tutorials (albeit not any extensive ones) http://ffhacktics.com/smf/index.php?topic=9204.0

More directly related to what you're trying to accomplish:
http://ffhacktics.com/wiki/Font
You can find the character that you want to breakpoint by either adding 0x67000 to the BATTLE.BIN address (squad, battle/event) or 0xE0000 to the WORLD.BIN address (formation, world map).
In my case, I tried to breakpoint a character printing in a pre-battle scene, so BATTLE.BIN with 0x67000 it is.
I wanted to breakpoint the letter "a", in this case.

0x000FF0FC (BATTLE.BIN's character length's table address) + 0x00067000 (Memory Offset) + 0x24 (letter "a") = 0x00166120
By setting a breakpoint with my pSX emulator before the characters printed in the dialogue box, I was able to eventually stumble upon the routine which sets the next character's printing X position.

lbu r2, 0x60FC(r1) loads the character's pixel length into r2, and addu r23, r2, r23 adds that value to the current character's printing X position.

Hope this helps
  • Modding version: PSX
Love what you're seeing? https://supportus.ffhacktics.com/ 💜 it's really appreciated

Anything is possible as long as it is within the hardware's limits. (ie. disc space, RAM, Video RAM, processor, etc.)
<R999> My target market is not FFT mod players
<Raijinili> remember that? it was awful