FE_Builder_GBA -- If you have any questions, attach report7z

Is it normal that certain “Conpressed Image”-slots vanish from the graphics editor(Like Player Phase, Other Phase) upon inserting a new Image while others do not? It is a issue that seems to be consistant on certain images in all three games. If concrete analytical data is needed for whatever reason(It takes 5 seconds to replicate), then I will send report7z through discord.

Spielerzug
I already sent everything per discord, but if someone wants to see it happen first hand as an example: This is the german playerphase Image from the european rom and the playerphase slot is one of those affected.(For reference, the phase images for enemyphase and linkarena are not. at least not player1 phase, I never tested the other ones)

This is a bug.
This image was incorrectly classified as TSA and ignored.
Please update as we have fixed the problem.
Thanks for reporting the bug.

4 Likes

7743 is officially a hero for fixing that bug. Even certain images that were never included in the list before are accessable now. :smiley:

1 Like

You also forgot the Palette of the Image. I don’t know if this is important, but importing a Image without the right palette can cause that the palette will change into the one you importet with your image.

Part of the plan actually because palette 0 images cannot be inserted normally.

There are many interesting images buried in the game.
If you find an unknown image, share the data.

Press the “Patch Maker” button to create a patch that will display or modify that image.
Creating patches will help others.

Example.

Image of FE6 present in FE7U.
(It is also left in FE8J)
FE7J has a function to read FE6 data, which is used on the screen.
Since the English version of FE6 has not been released, it cannot be used with FE7U, but the image data remains.

4 Likes

Draw UTF8 patch doesn’t get along with the Narrow Font patch.

Without the Draw UTF8 patch these characters are displayed incorrectly (From 0xEE to 0xF4):

Character           Character Displayed
î                   í
ï                   î
ñ                   ï
ò                   ñ
ó                   ò
ô                   ó
[0xF4] (undefined?) ô

The patch is meant to fix that, but then you can’t use the format for narrow text because FEBuilder change every character beyond 0x81 into �

Is there a way to both patch to coexist?

1 Like

Since Narrow Font ignores the character code convention,
it seems that an error occurred when writing the corresponding routine.
Can you send me ups to check the status?

I found a problem and fixed it.
Please update.
I think this has solved the problem.

You are presenting another problem.
Are you using UTF-8 Patch?

When using UTF-8 patch, character string collision with narrow font occurs.
This is because narrow font ignores character code rules.

troubled.
Adjustment is required.

In the first place, it is not good to use 0x81 or more.
This area is a complex space used by the character encoding of each country.

GBAFE is used in both SJIS and LAT1.
It is also very complicated because of the presence of the UTF-8 extension.
On top of this, the introduction of a font system that ignores the rules creates confusion.

I will try my best…

1 Like

When viewing code as UTF-8, characters greater than 0x80 must be encoded according to the rules.

U+00 - U+7F
-> You don’t need to do anything.
U+00 -> 0x00
U+20 -> 0x20
U+7F -> 0x7F

U+80 - U+BF
U+80 -> 0xC2 0x80
U+81 -> 0xC2 0x81
U+8F -> 0xC2 0x8F
U+90 -> 0xC2 0x90
U+A0 -> 0xC2 0xA0
U+B0 -> 0xC2 0xB0

U+C0 - U+FF
U+C0 -> 0xC3 0x80
U+C1 -> 0xC3 0x81
U+CF -> 0xC3 0xCF
U+D0 -> 0xC3 0x90
U+E0 -> 0xC3 0xA0
U+F0 -> 0xC3 0xB0

The most significant bit is used as a mark to indicate multi-byte.
UTF-8 is variable length.
It can be 2 bytes, 3 bytes, or 4 bytes or more.
The number of character data that follows is specified by the upper bits.

See the UTF-8 specification for details.

In other words, writing 0x81 in UTF-8 violates the rule.
If it is U+81, you have to write 0xC2 0x81.

2 Likes

I think we could probably handle it.
After updating, take a backup and try again.

I have prepared NarrowFont UTF-8 and other data.
Both can be used in the same macro.
[_A] small A
[_B] small A

[_Z] small Z

NAME=NarrowFont
INFO=Supported Small font

AUTHOR=Scraiza https://feuniverse.us/t/scraizas-crazy-asm/5624/2

TYPE=EA
EA=Narrowfont installer.event
TAG=#ENGINE

TEXTESCAPE:101=@0081	[_a]	Small Font	{NON-UTF-8}
TEXTESCAPE:102=@0082	[_b]	Small Font	{NON-UTF-8}
TEXTESCAPE:103=@0083	[_c]	Small Font	{NON-UTF-8}
TEXTESCAPE:104=@0084	[_d]	Small Font	{NON-UTF-8}
TEXTESCAPE:105=@0085	[_e]	Small Font	{NON-UTF-8}
TEXTESCAPE:106=@0086	[_f]	Small Font	{NON-UTF-8}
TEXTESCAPE:107=@0087	[_g]	Small Font	{NON-UTF-8}
TEXTESCAPE:108=@0088	[_h]	Small Font	{NON-UTF-8}
TEXTESCAPE:109=@0069	[_i]	Small Font	{NON-UTF-8}
TEXTESCAPE:110=@0089	[_j]	Small Font	{NON-UTF-8}
TEXTESCAPE:111=@008A	[_k]	Small Font	{NON-UTF-8}
TEXTESCAPE:112=@006C	[_l]	Small Font	{NON-UTF-8}
TEXTESCAPE:113=@006D	[_m]	Small Font	{NON-UTF-8}
TEXTESCAPE:114=@008B	[_n]	Small Font	{NON-UTF-8}
TEXTESCAPE:115=@008C	[_o]	Small Font	{NON-UTF-8}
TEXTESCAPE:116=@008D	[_p]	Small Font	{NON-UTF-8}
TEXTESCAPE:117=@008E	[_q]	Small Font	{NON-UTF-8}
TEXTESCAPE:118=@008F	[_r]	Small Font	{NON-UTF-8}
TEXTESCAPE:119=@0090	[_s]	Small Font	{NON-UTF-8}
TEXTESCAPE:120=@0095	[_t]	Small Font	{NON-UTF-8}
TEXTESCAPE:121=@0096	[_u]	Small Font	{NON-UTF-8}
TEXTESCAPE:122=@0097	[_v]	Small Font	{NON-UTF-8}
TEXTESCAPE:123=@0066	[_w]	Small Font	{NON-UTF-8}
TEXTESCAPE:124=@0098	[_x]	Small Font	{NON-UTF-8}
TEXTESCAPE:125=@0099	[_y]	Small Font	{NON-UTF-8}
TEXTESCAPE:126=@009A	[_z]	Small Font	{NON-UTF-8}
TEXTESCAPE:127=@009B	[_A]	Small Font	{NON-UTF-8}
TEXTESCAPE:128=@009C	[_B]	Small Font	{NON-UTF-8}
TEXTESCAPE:129=@009D	[_C]	Small Font	{NON-UTF-8}
TEXTESCAPE:130=@009E	[_D]	Small Font	{NON-UTF-8}
TEXTESCAPE:131=@009F	[_E]	Small Font	{NON-UTF-8}
TEXTESCAPE:132=@00A0	[_F]	Small Font	{NON-UTF-8}
TEXTESCAPE:133=@00A2	[_G]	Small Font	{NON-UTF-8}
TEXTESCAPE:134=@00A3	[_H]	Small Font	{NON-UTF-8}
TEXTESCAPE:135=@0049	[_I]	Small Font	{NON-UTF-8}
TEXTESCAPE:136=@00A4	[_J]	Small Font	{NON-UTF-8}
TEXTESCAPE:137=@00A5	[_K]	Small Font	{NON-UTF-8}
TEXTESCAPE:138=@00A6	[_L]	Small Font	{NON-UTF-8}
TEXTESCAPE:139=@004D	[_M]	Small Font	{NON-UTF-8}
TEXTESCAPE:140=@004E	[_N]	Small Font	{NON-UTF-8}
TEXTESCAPE:141=@00A7	[_O]	Small Font	{NON-UTF-8}
TEXTESCAPE:142=@00A8	[_P]	Small Font	{NON-UTF-8}
TEXTESCAPE:143=@00A9	[_Q]	Small Font	{NON-UTF-8}
TEXTESCAPE:144=@00AC	[_R]	Small Font	{NON-UTF-8}
TEXTESCAPE:145=@00AD	[_S]	Small Font	{NON-UTF-8}
TEXTESCAPE:146=@0054	[_T]	Small Font	{NON-UTF-8}
TEXTESCAPE:147=@00AE	[_U]	Small Font	{NON-UTF-8}
TEXTESCAPE:148=@00AF	[_V]	Small Font	{NON-UTF-8}
TEXTESCAPE:149=@0057	[_W]	Small Font	{NON-UTF-8}
TEXTESCAPE:150=@00B0	[_X]	Small Font	{NON-UTF-8}
TEXTESCAPE:151=@00B1	[_Y]	Small Font	{NON-UTF-8}
TEXTESCAPE:152=@00B2	[_Z]	Small Font	{NON-UTF-8}
TEXTESCAPE:153=@00BC	[_SP]	Small Font Space	{NON-UTF-8}
TEXTESCAPE:154=@007C	[ArmorIcon]	Small Font Icon	{NON-UTF-8}
TEXTESCAPE:155=@007F	[DragonIcon]	Small Font Icon	{NON-UTF-8}
TEXTESCAPE:157=@007B	[HorseIcon]	Small Font Icon	{NON-UTF-8}
TEXTESCAPE:158=@007D	[PegasusIcon]	Small Font Icon	{NON-UTF-8}
TEXTESCAPE:159=@00B3	[Swordicon]	Small Font Icon	{NON-UTF-8}
TEXTESCAPE:160=@00B4	[LanceIcon]	Small Font Icon	{NON-UTF-8}
TEXTESCAPE:161=@00B5	[AxeIcon]	Small Font Icon	{NON-UTF-8}
TEXTESCAPE:162=@00B6	[BowIcon]	Small Font Icon	{NON-UTF-8}
TEXTESCAPE:163=@00B8	[AnimaIcon]	Small Font Icon	{NON-UTF-8}
TEXTESCAPE:164=@00B7	[LightIcon]	Small Font Icon	{NON-UTF-8}
TEXTESCAPE:165=@00B9	[DarkIcon]	Small Font Icon	{NON-UTF-8}
TEXTESCAPE:166=@00BA	[StaffIcon]	Small Font Icon	{NON-UTF-8}

TEXTESCAPE:201=@00C2@0081	[_a]	Small Font	{UTF-8}
TEXTESCAPE:202=@00C2@0082	[_b]	Small Font	{UTF-8}
TEXTESCAPE:203=@00C2@0083	[_c]	Small Font	{UTF-8}
TEXTESCAPE:204=@00C2@0084	[_d]	Small Font	{UTF-8}
TEXTESCAPE:205=@00C2@0085	[_e]	Small Font	{UTF-8}
TEXTESCAPE:206=@00C2@0086	[_f]	Small Font	{UTF-8}
TEXTESCAPE:207=@00C2@0087	[_g]	Small Font	{UTF-8}
TEXTESCAPE:208=@00C2@0088	[_h]	Small Font	{UTF-8}
TEXTESCAPE:209=@0069	[_i]	Small Font	{UTF-8}
TEXTESCAPE:210=@0089	[_j]	Small Font	{UTF-8}
TEXTESCAPE:211=@00C2@008A	[_k]	Small Font	{UTF-8}
TEXTESCAPE:212=@006C	[_l]	Small Font	{UTF-8}
TEXTESCAPE:213=@006D	[_m]	Small Font	{UTF-8}
TEXTESCAPE:214=@00C2@008B	[_n]	Small Font	{UTF-8}
TEXTESCAPE:215=@00C2@008C	[_o]	Small Font	{UTF-8}
TEXTESCAPE:216=@00C2@008D	[_p]	Small Font	{UTF-8}
TEXTESCAPE:217=@00C2@008E	[_q]	Small Font	{UTF-8}
TEXTESCAPE:218=@00C2@008F	[_r]	Small Font	{UTF-8}
TEXTESCAPE:219=@00C2@0090	[_s]	Small Font	{UTF-8}
TEXTESCAPE:220=@00C2@0095	[_t]	Small Font	{UTF-8}
TEXTESCAPE:221=@00C2@0096	[_u]	Small Font	{UTF-8}
TEXTESCAPE:222=@00C2@0097	[_v]	Small Font	{UTF-8}
TEXTESCAPE:223=@0066	[_w]	Small Font	{UTF-8}
TEXTESCAPE:224=@00C2@0098	[_x]	Small Font	{UTF-8}
TEXTESCAPE:225=@00C2@0099	[_y]	Small Font	{UTF-8}
TEXTESCAPE:226=@00C2@009A	[_z]	Small Font	{UTF-8}
TEXTESCAPE:227=@00C2@009B	[_A]	Small Font	{UTF-8}
TEXTESCAPE:228=@00C2@009C	[_B]	Small Font	{UTF-8}
TEXTESCAPE:229=@00C2@009D	[_C]	Small Font	{UTF-8}
TEXTESCAPE:230=@00C2@009E	[_D]	Small Font	{UTF-8}
TEXTESCAPE:231=@00C2@009F	[_E]	Small Font	{UTF-8}
TEXTESCAPE:232=@00C2@00A0	[_F]	Small Font	{UTF-8}
TEXTESCAPE:233=@00C2@00A2	[_G]	Small Font	{UTF-8}
TEXTESCAPE:234=@00C2@00A3	[_H]	Small Font	{UTF-8}
TEXTESCAPE:235=@0049	[_I]	Small Font	{UTF-8}
TEXTESCAPE:236=@00C2@00A4	[_J]	Small Font	{UTF-8}
TEXTESCAPE:237=@00C2@00A5	[_K]	Small Font	{UTF-8}
TEXTESCAPE:238=@00C2@00A6	[_L]	Small Font	{UTF-8}
TEXTESCAPE:239=@004D	[_M]	Small Font	{UTF-8}
TEXTESCAPE:240=@004E	[_N]	Small Font	{UTF-8}
TEXTESCAPE:241=@00C2@00A7	[_O]	Small Font	{UTF-8}
TEXTESCAPE:242=@00C2@00A8	[_P]	Small Font	{UTF-8}
TEXTESCAPE:243=@00C2@00A9	[_Q]	Small Font	{UTF-8}
TEXTESCAPE:244=@00C2@00AC	[_R]	Small Font	{UTF-8}
TEXTESCAPE:245=@00C2@00AD	[_S]	Small Font	{UTF-8}
TEXTESCAPE:246=@0054	[_T]	Small Font	{UTF-8}
TEXTESCAPE:247=@00C2@00AE	[_U]	Small Font	{UTF-8}
TEXTESCAPE:248=@00C2@00AF	[_V]	Small Font	{UTF-8}
TEXTESCAPE:249=@0057	[_W]	Small Font	{UTF-8}
TEXTESCAPE:250=@00C2@00B0	[_X]	Small Font	{UTF-8}
TEXTESCAPE:251=@00C2@00B1	[_Y]	Small Font	{UTF-8}
TEXTESCAPE:252=@00C2@00B2	[_Z]	Small Font	{UTF-8}
TEXTESCAPE:253=@00C2@00BC	[_SP]	Small Font Space	{UTF-8}
TEXTESCAPE:254=@007C	[ArmorIcon]	Small Font Icon	{UTF-8}
TEXTESCAPE:255=@007F	[DragonIcon]	Small Font Icon	{UTF-8}
TEXTESCAPE:257=@007B	[HorseIcon]	Small Font Icon	{UTF-8}
TEXTESCAPE:258=@007D	[PegasusIcon]	Small Font Icon	{UTF-8}
TEXTESCAPE:259=@00C2@00B3	[Swordicon]	Small Font Icon	{UTF-8}
TEXTESCAPE:260=@00C2@00B4	[LanceIcon]	Small Font Icon	{UTF-8}
TEXTESCAPE:261=@00C2@00B5	[AxeIcon]	Small Font Icon	{UTF-8}
TEXTESCAPE:262=@00C2@00B6	[BowIcon]	Small Font Icon	{UTF-8}
TEXTESCAPE:263=@00C2@00B8	[AnimaIcon]	Small Font Icon	{UTF-8}
TEXTESCAPE:264=@00C2@00B7	[LightIcon]	Small Font Icon	{UTF-8}
TEXTESCAPE:265=@00C2@00B9	[DarkIcon]	Small Font Icon	{UTF-8}
TEXTESCAPE:266=@00C2@00BA	[StaffIcon]	Small Font Icon	{UTF-8}


PATCHED_IF:$FGREP4 MenuLowercase/z.img.bin=0x00 0x00 0x00 0x00
ALLOC_DATAONLY_HINT=true
2 Likes

It works perfectly. Thanks!


emulator_01

3 Likes
[Swordicon]

You forgot to capitalize the I here (should be [SwordIcon]).

1 Like

Thank you for information.
I fixed it.

1 Like

In Fe4 After having certain conversations you can get an increase in a specific stats e.g skill+3, luck+1. Is there a way to give increase a specific stat during an event like fe4. If so what command do I use to achieve this.

1 Like

Install theses 3 patches

then you will have many commands to manipulate RAM with events.

1 Like

This helps a lot thanks.

Is there a command in FE_Builder_GBA that can repair weapons? I wish to create an event/shop that will repair weapons like in FE4. Also if a weapon breaks is their a event/command that I can use at any time to acquire a placeholder(rusty ) weapon?