Final Burn Neo > FBN Development
kof2003 PCB BIOS support.
BisonSAS:
Here's the PCB BIOS support for kof2003. :)
in neo_run.cpp
find:
--- Code: --- Neo68KBIOS = Next; Next += 0x020000; // 68K boardROM
--- End code ---
replace:
--- Code: --- Neo68KBIOS = Next; Next += nCodeSize; // 68K boardROM
--- End code ---
find:
--- Code: --- if ((BurnDrvGetHardwareCode() & HARDWARE_SNK_CONTROLMASK) == HARDWARE_SNK_TRACKBALL) {
nNewBIOS = 9;
}
--- End code ---
add this after:
--- Code: --- if (strcmp(BurnDrvText(0), "kof2003") == 0 || strcmp(BurnDrvText(0), "kof2k3ba") == 0) {
nNewBIOS = 3;
}
--- End code ---
find:
--- Code: --- // Patch out checksum test (the AES BIOS doesn't have one)
if (nBIOS == 9) {
*((unsigned short*)(Neo68KBIOS + 0x010D8C)) = 0x4E71;
*((unsigned short*)(Neo68KBIOS + 0x010D8E)) = 0x4E71;
}
--- End code ---
add this after:
--- Code: --- // Implemented PCB BIOS by BisonSAS
// Patch out the BIOS NEO-GEO MVS SYSTEM (JAPAN/J3) Ver. 6
if (nBIOS == 3) {
/* PCB BIOS patch, for system ROM error */
*((unsigned short*)(Neo68KBIOS + 0x010AA4)) = 0x4E71;
*((unsigned short*)(Neo68KBIOS + 0x010AA6)) = 0x4E71;
*((unsigned short*)(Neo68KBIOS + 0x010D86)) = 0x4E71;
*((unsigned short*)(Neo68KBIOS + 0x010D88)) = 0x4E71;
}
--- End code ---
find:
--- Code: ---static int neogeoReset()
{
NeoLoad68KBIOS((NeoSystem & 0x07) ^ 4);
if (nBIOS == -1 || nBIOS == 9) {
// Write system type & region code into BIOS ROM
*((unsigned short*)(Neo68KBIOS + 0x000400)) = ((NeoSystem & 4)
FerchogtX:
thanks a lot man!!! this is great... Only a question: this patches the calendar and the booting green screen?
--- Code: --- // Implemented PCB BIOS by BisonSAS
// Patch out the BIOS NEO-GEO MVS SYSTEM (JAPAN/J3) Ver. 6
if (nBIOS == 3) {
/* PCB BIOS patch */
*((unsigned short*)(Neo68KBIOS + 0x010AA4)) = 0x4E71;
*((unsigned short*)(Neo68KBIOS + 0x010AA6)) = 0x4E71;
*((unsigned short*)(Neo68KBIOS + 0x010D86)) = 0x4E71;
*((unsigned short*)(Neo68KBIOS + 0x010D88)) = 0x4E71;
}
--- End code ---
Just for know, great work man
See ya!!!!! :D
BisonSAS:
--- Quote from: FerchogtX ---Only a question: this patches the calendar and the booting green screen?
--- End quote ---
No, this patch's for system ROM error.
For calendar error using generic fix:
--- Code: --- uPD4990AInit((int)((long long)12000000 * nBurnCPUSpeedAdjust / 256)); // This is used to avoid calendar errors while overclockng a neogeo game
--- End code ---
Patch for booting green screen is unknown. :confused: :(
I updated the information of the patch:
--- Code: --- // Implemented PCB BIOS by BisonSAS
// Patch out the BIOS NEO-GEO MVS SYSTEM (JAPAN/J3) Ver. 6
if (nBIOS == 3) {
/* PCB BIOS patch, for system ROM error */
*((unsigned short*)(Neo68KBIOS + 0x010AA4)) = 0x4E71;
*((unsigned short*)(Neo68KBIOS + 0x010AA6)) = 0x4E71;
*((unsigned short*)(Neo68KBIOS + 0x010D86)) = 0x4E71;
*((unsigned short*)(Neo68KBIOS + 0x010D88)) = 0x4E71;
}
--- End code ---
See ya! :cool:
Shoometsu:
--- Quote from: BisonSAS ---
For calendar error using generic fix:
--- Code: --- uPD4990AInit((int)((long long)12000000 * nBurnCPUSpeedAdjust / 256)); // This is used to avoid calendar errors while overclockng a neogeo game
--- End code ---
--- End quote ---
where do I put this exactly :confused:
BisonSAS:
--- Quote from: Shoometsu ---where do I put this exactly :confused:
--- End quote ---
in neo_run.cpp
find:
--- Code: --- uPD4990AInit(12000000);
--- End code ---
replace:
--- Code: --- uPD4990AInit((int)((long long)12000000 * nBurnCPUSpeedAdjust / 256)); // This is used to avoid calendar errors while overclockng a neogeo game
--- End code ---
See ya! :D
Navigation
[0] Message Index
[#] Next page
Go to full version