Jump to content

Recommended Posts

Posted

To be honest, I'm not in any great hurry to fix this since the exact same code works perfectly in the 08/02 based build. The problem must be caused by changes to the FBA-XXX code in 08/26. So I would suggest using the patch2 build for now.

 

I've been considering putting together a best-of-both build that would add several of the improvements from 08/26 with (hopefully) none of the bugs. Then this would be the only FBA-XXX Pro build and we'd be back to just one patch.

  • Replies 175
  • Created
  • Last Reply

Top Posters In This Topic

Posted

UPDATE:

 

Okay, here it is.

 

This new FBA-XXX Pro build combines the fixes and features of FBA-XXX 08/26 with the stability of 08/02 and of course the Pro ROMsets.

 

Everything I've tested on it plays perfectly but please let me know if you come across any problems.

Posted

Thanks +T+, I really appreciate your continued work on Pro and keeping up with Gogo's changes. I know a while back you commented you were growing tired of working with Pro, so the work in keeping Pro current with Gogo's version is greatly appreciated.

Posted (edited)
  Mr.X said:
The crappy bootleg set KoF 10th Extra Plus 's officially released.

Is this a genuine bootleg or just another ROM hack?

 

EDIT: What's up with Gogo's forum, BTW?

Edited by + T +
Posted (edited)

Do you happen to have a driver for it? If so I'll be sure and add it to the next build of FBA-XXX Pro.

 

Thanks. :fish:

Edited by + T +
Posted (edited)

It should be something like this...

I haven't tested this yet, but it should work.

 

// Code by IQ_132
// Thanks to JotaCE, Jimmy_page,
// and Robber804 for some info
static void kf10thepDecrypt()
{
// Fix for FBA program load problems
BurnLoadRom(Neo68KROM + 0x200000, 1, 1);
BurnLoadRom(Neo68KROM + 0x600000, 2, 1);

int i;
unsigned char *src = Neo68KROM;
unsigned char *dst = (unsigned char*)malloc(0x800000);

unsigned int sec[8] = {	0x3, 0x8, 0x7, 0xC, 0x1, 0xA, 0x6, 0xD };

for (i = 0; i < 8; i++)
{
 memcpy (dst + i * 0x20000, src + sec[i] * 0x20000, 0x20000);
}

 memcpy(dst + 0x0002e0, src + 0x0402e0, 0x06a);
 memcpy(dst + 0x0f92bc, src + 0x0492bc, 0xb9e);

for (i = 0xf92bc; i < 0xf9e58; i += 2)
{
 if (*((unsigned short*)(dst + i + 0)) == 0x4eb9 || *((unsigned short*)(dst + i + 0)) == 0x4ef9)
 {
 	if (*((unsigned short*)(dst + i + 2)) == 0x0000)
 	{
   *((unsigned short*)(dst + i + 2)) = 0x000F;
 	}
 }
}
dst[0x00342] = 0x0f;

memcpy (dst + 0x100000, src + 0x200000, 0x600000);
memcpy (src, dst, 0x800000);
}

Edited by iq_132
Guest
This topic is now closed to further replies.

×
×
  • Create New...