Users browsing this thread: 1 Guest(s)
embarrassed to say...

#1
Posts: 763
Threads: 83
Thanks Received: 55
Thanks Given: 7
Joined: Apr 2015
Reputation: 22
Status
Obliviscence
...there is a huge chunk of code in the F0 bank of my hack that I have no idea what it is or where it game from. That being said, I want to apply the expanded dialog patch from FF3usME but it uses that space. Rather than overwriting or spending forever going through the patches I applied that I didn't write, Id rather alter the expanded dialog patch. Are there notes on that somewhere so that I can move the code and banks used to my own location?
  Find
Quote  

#2
Posts: 3,971
Threads: 279
Thanks Received: 237
Thanks Given: 58
Joined: Oct 2011
Reputation: 65
Status
Tissue-aware
The patch you are talking about affects dialogues only if I remember right. Now, I am unsure if the patch move the pointers only or does it move both pointers and dialogues. I have no notes on that particular patch.

What I can tell you is that the pointers address and dialogue bank (CD) is in the following routine. The pointers actually start at CC/E600 and dialogue at CD/0000. Now there are 486 free bytes after the pointers, whether or not they are used by the patch I am not sure.

Code:
C0/7FBF:    A9CD        LDA #$CD       (Initial bank is CD)
C0/7FC1:    85CB        STA $CB        (This is kept in location $CB)
C0/7FC3:    C220        REP #$20       (16 bit accum./memory)
C0/7FC5:    A5D0        LDA $D0        (get memory D0)
C0/7FC7:    0A          ASL A          (times 2 since pointers are 2 bytes)
C0/7FC8:    AA          TAX            (this gives us the index X)
C0/7FC9:    BF02E6CC    LDA $CCE602,X  (Loads pointer to dialogue X)
C0/7FCD:    85C9        STA $C9        (The pointer goes in $C9)
C0/7FCF:    A5D0        LDA $D0        (Which dialogue is this?)
C0/7FD1:    CF00E6CC    CMP $CCE600    (Checks to see whether bank byte needs is right or needs to be CE)
C0/7FD5:    9005        BCC $7FDC      (Branch if less to the pointer above)
C0/7FD7:    7B          TDC            (bank byte needs to be incremented, and this is pointless...)
C0/7FD8:    E220        SEP #$20       (8 bit accum./memory)
C0/7FDA:    E6CB        INC $CB        (Since it wasn't less, we increment the bank byte)
C0/7FDC:    7B          TDC            (Either way it is correct now, so clear the accumulator)
C0/7FDD:    E220        SEP #$20       (8 bit accum./memory)
C0/7FDF:    A901        LDA #$01       (Put a 1 in the accumulator)
C0/7FE1:    8D6805      STA $0568      (Store 1 into $0568)
C0/7FE4:    60          RTS
  Find
Quote  



Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite