There seems to be a bug with the FE 6 Item Editor. When i click on it, FEBuilder crashes. I tested it on a fresh ROM too and it was the same.


Bug was fixed in ver 20180128.10.
I mistook the name of the list box.
Thank you for reporting.


I think that the font calculation formula is something different.
It seems that it will take time to fixed.

I hope the people who made FE8CN have left some material, but do you know something?
If you have any material, please tell us the link.



Is this useful ?


Useful, I can translate :slightly_smiling_face:


I seem to have an issue with the palette error. If I edit certain palettes, this error pops up:


I can not reproduce it.
In my environment, changing the 0x3F rut’s palette does not matter.
How did you get this error?

Please send me an ups patch of ROM you are remodeling.
I can not fix bugs if I can not reproduce the problem.
In order to reproduce the problem, I need your ups patch.


Sorry for the late reply.
Chinese fonts seem to be doing their own processing.
I have not analyzed yet.

Perhaps it is a structure that uses the characteristics of Chinese fonts, but I can not say because I do not understand Chinese.

In FE8J (FE8CN) font search is performed with 0x08003F28 function.
For Japanese, double-byte SJIS is used and a hashed list of SJIS is searched.

Example of searching Japanese SJIS character code in FE

//紋 SJIS(0xE496)
byte sjis1 = 0xE4;
byte sjis2 = 0x96;
dword topaddress = 57994c;

fontlist* p = topaddress + (sjis1 << 2) - 0x100;

	if ( p->check == sjis2 )
		//p->width  Character width.
		//p->bitmap Font image. 4bit color bitmap
		return p;
	//Go to the next list.
	p = p->next;

struct fontlist
    fontlist* next;	//Next font pointer. 0x00000000 in case of termination.
    BYTE SJIS2;	//With the 紋 SJIS (0xE496), 0x96 in the second byte enters ..
    			//If it does not match, it will be a heart as an unknown character without characters.
    BYTE WIDTH;	//Character width (When drawing the next character, this size is like padding like css to empty this size).
    BYTE dummy[2];	
    BYTE bitmap[64]; //Uncompressed 4 bit bitmap.

This is based on the character code property that when SJIS hashes with 1 byte, the amount of data to be searched can be reduced.
In the case of SJIS, the first byte represents a block in the code table, and the next byte can determine the character.

SJIS code table

However, this function has been greatly rewritten by FE8CN.

I do not understand why I rewrote it.
Perhaps, They wanted to implement a reasonable search by using the characteristics of the Chinese character code,
Or do they need things like unicode join letters?
I do not know the character of the Chinese character code.


All right. I want to know how to help you :no_mouth:

(If use “Japanese”, I will understand better. :slightly_smiling_face:)


I would like to know the rules of Chinese fonts.

why they changed 0x08003F28 functions?

I think that it was because it was necessary to rewrite it in using the Chinese character code.

Why is that?


I decided to delete the Japanese file name from the patch directory of FEBuilderGBA.
It seems that patches can not be displayed in some environments with Japanese files.

As a result, the patch directory is changed from patch to patch2.
Delete the old patch directory with the next update.

In patch 2, existing patches are converted into English name files and exist.
Since it will be only ASCII character strings, I think that problems will be less likely to occur.
This patch replacement is handled automatically by the updater, so you do not need to worry about anything.


Hi @7743,
It looks like FE8U roms are using UTF-8 encoding and not SHIFT_JIS.


FE8U is not UTF-8.
This is a unique character code that uses only a part of Unicode’s single-byte character string.

It was supported by ver 20180202.20.

When it was 0x82 - 0xff, unicode characters were displayed.
There is also a character code which is not currently in FE8U, but it is secured larger for those who want to add character font.







I would like to see the source code of the program I used to create this image, where is it?

Character code is a rule that decides how to record letters in files.

I think the Chinese character code is named GB2312.




Have not you brought fonts from ROM?

This C# program uses Windows font data.

I thought that you brought it from ROM of FE7CN, but it was not so.

The mystery of FE7CN’s font data was not solved.

Perhaps, I need to know about GB2312.

中国では、GB2312と ASCIIが混在した場合、どう処理していますか?
In China, how do you handle when GB2312 and ASCII coexist?

SJIS in Japan used the following discrimination method.

public static bool isSJIS1stCode(byte c)
    if (((0x81 <= c && c <= 0x9f) || (0xe0 <= c && c <= 0xfc)))
        return true;
    return false;
public static bool isSJIS2ndCode(byte c)
    if (((0x40 <= c && c <= 0x7e) || (0x80 <= c && c <= 0xfc)))
        return true;
    return false;

We are processing strings as follows.

for(int i = 0 ; i < data.Length ;  )
   if ( isSJIS1stCode(data[i]) && isSJIS2ndCode(data[i+1]) )
       i+= 2;
       i+= 1;

What kind of treatment will be done in China?


Mr. 7743, can you tell me how to use FEBuilderGBA to add skills to the characters?