Users browsing this thread: 1 Guest(s)
Adding an Intro to FF3us

#1
Posts: 3,966
Threads: 279
Thanks Received: 234
Thanks Given: 56
Joined: Oct 2011
Reputation: 65
Status
Tissue-aware
Adding an Intro (Splash Screen) to FF3us

This tutorial is mirrored on the FF6 Hacking wiki.

This short tutorial will cover how to add an intro, or commonly called also splash screen, to FF3us. The code and process is based on a more general tutorial that is somewhat outdated due to the utilities used in it not being able to run on x64 systems.


1. Requirements

You'll need the following to complete the tutorial:
2. Preparing the ROM and Image

If you ROM is not expanded, you can do it with Lunar Expand or FF3usME. You'll only need an extra bank, so 28Mbit or 32Mbit expansion is enough. You'll need first to have an image in PNG format. The image must be 256x224 and indexed to 256 colors. The image can have less than 256 colors though. This preparation can be done with Gimp and showing in detail how to do these steps is a bit out of scope for this tutorial. However to index to 256 color, you need to select Image -> mode -> Indexed and then select an optimal palette of 256 colors.

The image used in this tutorial is the following one and was based on this wallpaper.
[Image: fetch.php?media=ff3:ff3us:tutorial:splas...n:test.png]


3a. Using superfamiconv

This is the most straightforward conversion method. If you really want a GUI application, go to next section right away.

You simply put your image (here test.png) in same folder as the superfamiconv utility and type the following in Windows command prompt (after moving in said directory):

superfamiconv -i test.png -p palette.bin -t tiles.bin -m map.bin --no-flip --bpp 8 --map-width 32 --map-height 28

This will generate 3 files: tiles.bin, palette.bin and map.bin. Alternatively, if you named your image test.png, you can simply move the superfamiconv.bat file in the utility folder and execute it to do the conversion. You can now skip next section and continue after.


3b. Using snesgfx262

You can also use this GUI utility to generate the files needed. Here are the suggested settings:
[Image: fetch.php?media=ff3:ff3us:tutorial:splas...esgfx1.png]

Now after the conversion you'll need to rename the 3 files:

test.bin -> tiles.bin
pal.mw3 -> palette.bin
test_map_16.bin -> map.bin

You can optionally trim the last two bytes of palette file and the extra $100 byte in the map file but anyway the DMA transfers coded are transferring 0x200 and 0x700 bytes so there is no worry. These extra step will make you save a bit of space that's all.


4. Assembling the Intro

When you have your 3 files ready, move them in same directory as bass and intro.asm. You can edit the ASM file to specify a bank for your code and data; since the hack take almost a full bank, it is suggested to input an offset of a bank start, here $F30000. You can either keep or change this offset to another bank. For general info, the tiles can take up to $E000 bytes. If you add the map ($700 bytes), palette ($200 bytes) and code (about $200 bytes maximum), we are consuming $EA00-$EB00 bytes, hence the need to use a bank start offset to keep everything in same bank. You can also specify if you need to press a key to proceed to the beginning of FF6 intro or not. In this case input a 1 instead of the 0 on the varKeyPress variable:

[Image: fetch.php?media=ff3:ff3us:tutorial:splashscreen:asm.png]

After this all is needed is assembling the hack with bass:

bass -o romname.smc intro.asm

Alternatively, if you named your rom "rom.smc", you can simply run the bass.bat file to assemble the hack.


5. Removing the White FF3us Logo

If you want to remove the default FF3us Intro, you can simply remove the JSR here:
Code:
7E/501A: 20F750   JSR $50F7      (Handler for white logo)

If you have a vanilla $C2 compressed block, no need to decompress and recompress it, the 3 bytes are directly accessible at $C2688C:
[Image: fetch.php?media=ff3:ff3us:tutorial:splas...pintro.png]

A patch is available for this small hack in the archive you are supposed to have downloaded. A patch for the splash screen used in this tutorial is also available. Both patches are for an unheadered FF3us ROM.

That is all for this tutorial!
  Find
Quote  
[-] The following 3 users say Thank You to madsiur for this post:
  • m06 (04-06-2018), ScarabEnigma (04-06-2018), seibaby (04-06-2018)



Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite