Multiple fonts

Last updated : 03/27/2017
Current version : 1.4.1
Compatible with : FF3us 1.0
Type : Modification
Download
Introduction

This romhack, made in 2017, implements a selectable Final Fantasy 6 Advance (GBA) font in the game config menu. Both the fixed-width font and the variable-width font are affected by the menu option change. There are two implementations: the original hack and the one made for an expanded ROM (_EXP asm files).

Screenshots

The main menu and config menu with the original font on top and the GBA font on the bottom. The menu option to toggle the font is at the bottom of the config menu:

menus

The variable-width font used for dialogues and descriptions is also affected by the option. The original font is on the left and the GBA one is on the right:

dialogues

New text-centering control code

A new dialogue control code has been added since centering can be different with two possible fonts. Writing $17 at the beginning of a line now automatically centers the line, given it ends with a new line ($01), end parameter ($11, $12) or end page ($13). In FF3usME, use <OP$17> as shown here:

dialogues

Technicalities

The romhack can be applied by assembling main.asm or main_EXP.asm with xkas 0.06. If you use the header option in the ASM files you must enable it in all files. The only free space the romhack use is less than $D0 bytes at end of bank $C3 for actual menu work. Otherwise, functions have been optimized or at least shortened to fit in the new code, especially in bank $C0. There are other code changes, but they are smaller and always within the function they originally are from. See the asm files for all details.

In the original romhack, both fonts fit where the original font was, using the free space before and after in bank $C4. The free space used before the fixed-width font to draw black menu backgrounds has been simulated by loading blank tiles in VRAM. This mean this version of the patch does not work with icon expansions or other hacks adding characters in the fixed-width font before index 0x80. Since the original font is moved, this patch breaks FF3usME dialogue viewing but not dialogue editing. You can always open a second editor instance to find caption, see changes, etc.

In the expanded hack (_EXP asm files), Normal font is kept where it is in original ROM while GBA font is moved to $F20800. Note that the $F20000-$F207FF range is reserved and filled with 00 to copy like in bank $C4 the empty space before the Normal fixed-width font. With this version of the hack, you can see dialogues edits made in FF3usME and you can expand fixed-width font characters before index 0x80.

Multiple fonts

Last updated : 03/27/2017
Current version : 1.4.1
Compatible with : FF3us 1.0
Type : Modification
Download
Introduction

This romhack, made in 2017, implements a selectable Final Fantasy 6 Advance (GBA) font in the game config menu. Both the fixed-width font and the variable-width font are affected by the menu option change. There are two implementations: the original hack and the one made for an expanded ROM (_EXP asm files).

Screenshots

The main menu and config menu with the original font on top and the GBA font on the bottom. The menu option to toggle the font is at the bottom of the config menu:

menus

The variable-width font used for dialogues and descriptions is also affected by the option. The original font is on the left and the GBA one is on the right:

dialogues

New text-centering control code

A new dialogue control code has been added since centering can be different with two possible fonts. Writing $17 at the beginning of a line now automatically centers the line, given it ends with a new line ($01), end parameter ($11, $12) or end page ($13). In FF3usME, use <OP$17> as shown here:

dialogues

Technicalities

The romhack can be applied by assembling main.asm or main_EXP.asm with xkas 0.06. If you use the header option in the ASM files you must enable it in all files. The only free space the romhack use is less than $D0 bytes at end of bank $C3 for actual menu work. Otherwise, functions have been optimized or at least shortened to fit in the new code, especially in bank $C0. There are other code changes, but they are smaller and always within the function they originally are from. See the asm files for all details.

In the original romhack, both fonts fit where the original font was, using the free space before and after in bank $C4. The free space used before the fixed-width font to draw black menu backgrounds has been simulated by loading blank tiles in VRAM. This mean this version of the patch does not work with icon expansions or other hacks adding characters in the fixed-width font before index 0x80. Since the original font is moved, this patch breaks FF3usME dialogue viewing but not dialogue editing. You can always open a second editor instance to find caption, see changes, etc.

In the expanded hack (_EXP asm files), Normal font is kept where it is in original ROM while GBA font is moved to $F20800. Note that the $F20000-$F207FF range is reserved and filled with 00 to copy like in bank $C4 the empty space before the Normal fixed-width font. With this version of the hack, you can see dialogues edits made in FF3usME and you can expand fixed-width font characters before index 0x80.