1. Introduction 2. Planning 3. Configuration |
4. Creating the conjugator code 5. Binding the code to ROM 6. Downloading |
Here I'll explain how it was done for Finnish.
This consists of the following sections:
Form Function name ZGX R66 Pekka Magus Crono ----------------------------------------------------------------------------- genitive/accusative Do_N ZGX:n R66:n Pekan Maguksen Cronon partitive Do_A ZGX:ää R66:a Pekkaa Magusta Cronoa inessive Do_SSA ZGX:ssä R66:ssa Pekassa Maguksessa Cronossa adessive Do_LLA ZGX:llä R66:lla Pekalla Maguksella Cronolla ablative Do_LTA ZGX:ltä R66:lta Pekalta Magukselta Cronolta allative Do_LLE ZGX:lle R66:lle Pekalle Magukselle Cronolle elative Do_STA ZGX:stä R66:sta Pekasta Maguksesta Cronosta abessive Do_TTA ZGX:ttä R66:tta Pekatta Maguksetta Cronotta translative Do_KSI ZGX:ksi R66:ksi Pekaksi Magukseksi Cronoksi essive Do_NA ZGX:nä R66:na Pekkana Maguksena Cronona illative Do_HUN ZGX:ään R66:een Pekkaan Magukseen CronoonThe "Form" here refers to the linguistic name of the conjugation. Chronotools doesn't use it.
[conjugator]
section in your configuration file.
It is expected to consist of setup
clauses.
Here's part of what it is in the Finnish version:
[conjugator] # Setup each conjugation. # First param: # The function name that handles the conjugation # (as defined in file codefn) # Second param: # List of instances in your script that will # be replaced with conjugation code when inserting. # Third param: # String that represents the maximum length # the conjugation adds to the name # # c=crono m=marle l=lucca r=robo f=frog a=ayla u=magus e=epoch # 1=member1 2=member2 3=member3 setup "Do_A" " cCronoa,mMarlea,lLuccaa,rRobosta,fFrogia,fFroggia, aAylaa,uMagusta,uMaguksea,eEpochia, 1[member1]:a,2[member2]:a,3[member3]:a, 1[member1]:ä,2[member2]:ä,3[member3]:ä" ":ta" setup "Do_LLA" " cCronolla,mMarlella,lLuccalla,lLucalla,rRoboksella,fFrogilla, aAylalla,uMaguksella,uMagusilla,eEpochilla, 1[member1]:lla,2[member2]:lla,3[member3]:lla, 1[member1]:llä,2[member2]:llä,3[member3]:llä" "kella"The first parameter of
setup
is the function name
that is responsible of handling this conjugation.
The second parameter is the list of all strings that the conjugator will assume as a call to this conjugation. The parameter is commaseparated and each string begins with a letter: c for Crono, m for Marle, l for Lucca, r for Robo, f for Frog, a for Ayla, u for Magus, e for Epoch, 1 for the first member of party, 2 for the second member of party and 3 for the third member of the party.
The third parameter is a string that is used by the script wrapping code. It describes the widest possible string that the conjugation could append to the character name.
DOCS/ct-conj.code
(the Finnish conjugator
as an example) and try to grasp it.
Anyway, when you are done with your code file, you just compile
it with utils/compile, combine it with ct-conj.a65 and assemble
it with snescom.
Basically, once you have snescom installed, you can just do
make ct-conj.o65
and that should do it.
ct.cfg
in the [linker]
section:
# CONJUGATOR load_code "ct-conj.o65" add_call_of "Conjugator" $C258C2 1 falseThis tells the insertor that it must include code from
ct-conj.o65
and that the Conjugator routine will be called from the ROM address $C258C2
.
I hope I didn't forget anything.
Ask me for help if you didn't get it :)
Generated from
source/conjugation.php
(last updated: Wed, 28 Jan 2004 20:30:51 +0200)
with docmaker.php
(last updated: Fri, 2 Jan 2004 17:31:18 +0200)
at Thu, 19 Feb 2004 02:00:03 +0200