Thread Rating:
  • 1 Vote(s) - 4 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Ogre Battle Gaiden (Densetsu no Ogre Battle) Translation
#24
They are other part of ram that are used to store procedure/function locations (0x4002 too).

my concern is more about that part :


Code:
Code:
0x20023C: POP XDE                                  : 5A                         |  
0x20023D: LD A,(XDE++1)                            : C5 E8 21                   |  
0x200240: LD XHL,0x002007A1                        : 43 A1 07 20 00             |  
0x200245: LD HL,(XHL + A)                          : D3 03 EC E0 23             |  
0x20024A: JP T,XHL                                 : B3 D8                      |  


as we reach 0x20023C by a JUMP embedded in a CALL, so A receive the first byte immediately after the CALL address
Code:
0x2XXXX0 : CALL 0x20023C (4 bytes long instruction)
0x2XXXX4 : bb (1 byte value)

I don't know what kind of tool generates such code. 0x002007A1 is some kind of function offset table, accessing a range from 0x00200000 to 0x0020FFFF, giving a maximum number of function of 64 different offset (256/4).

On an other level, my disassembly tool was considering unconditioned jump or RET as a function ending. Here, I also have to consider CALL 0x20023C as a function exit.
Reply


Messages In This Thread
RE: Ogre Battle Gaiden (Densetsu no Ogre Battle) Translation - by Loïc - 04-10-2019, 06:41 AM

Forum Jump:


Users browsing this thread: 1 Guest(s)