Tuesday, July 2, 2013

Step 11: width of the new characters II

Some days ago we changed the width of our new characters in the SLUS file. This SLUS file contains the width of the characters that appear in dialogs, but not characters that appear in the menu. Of course this was discovered by CUE.

To change the width for the menus we will have to open the big file called PE.IMG using an hex editor, for instance HxD.

Open HxD

Edit > Search > Go to...

Go to 02B160, and there you will see the characters width. This time we won't have to do any trick with the assembler, just add our new values. You will have to add them after the 51 (do not touch that 51).



When I said that you have to add your new values, I mean that you have to overwrite the old ones (C0) and put yours over.

The structure of these characters is as follows:

  • The first number indicates the width of each character, expressed in pixels.
  • The second number indicates the white space before and after the character.

For instance, let's focus on the letter "I". It has a value of 41. The "I" itself has a width of 4, and then 1 white space is inserted before and after the character. That's the way it works.

So now you know how to change the width of your new characters. If you need help, here you have the width of the old English characters:

60 -> 0
60 -> 1
60 -> 2
60 -> 3
60 -> 4
60 -> 5
60 -> 6
60 -> 7
60 -> 8
60 -> 9
60 -> +
50 -> -
50 -> =
61 -> *
91 -> %
60 -> 
80 -> A
70 -> B
60 -> C
70 -> D
60 -> E
60 -> F
70 -> G
80 -> H
41 -> I
60 -> J
80 -> K
70 -> L
A0 -> M
80 -> N
60 -> O
70 -> P
60 -> Q
80 -> R
60 -> S
60 -> T
80 -> U
80 -> V
A0 -> W
60 -> X
80 -> Y
60 -> Z
80 -> &
21 -> !
51 -> ?
41 -> "
21 -> '
21 -> .
70 -> a
70 -> b
60 -> c
60 -> d
60 -> e
60 -> f
70 -> g
80 -> h
40 -> i
30 -> j
70 -> k
40 -> l
A0 -> m
80 -> n
60 -> o
70 -> p
70 -> q
60 -> r
50 -> s
40 -> t
80 -> u
80 -> v
A0 -> w
60 -> y
80 -> z
50 -> :
21 -> ,
30 -> /
51 (leave this 51 alone as I said before)

No comments:

Post a Comment