From: Pokemonhacker <pok...@us...> - 2005-06-25 06:12:06
|
Update of /cvsroot/vba/VisualBoyAdvance/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6577 Modified Files: arm-new.h Log Message: - Changed all the clockticks management. Internal emulation speed should be more accurate now (fixes some games that crashed, like Advance Wars 2 or Tennis no Oojisama 2003), some other should have less slowdown/flickering (Breath of Fire 3's underwater level, Mario & Luigi Saga's intro). Added pseudo-support for bus prefetch (still need to check how it works for all the cases). Index: arm-new.h =================================================================== RCS file: /cvsroot/vba/VisualBoyAdvance/src/arm-new.h,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** arm-new.h 19 Nov 2004 01:08:32 -0000 1.14 --- arm-new.h 25 Jun 2005 06:11:56 -0000 1.15 *************** *** 2,6 **** // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2004 Forgotten and the VBA development team // This program is free software; you can redistribute it and/or modify --- 2,6 ---- // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. // Copyright (C) 1999-2003 Forgotten ! // Copyright (C) 2005 Forgotten and the VBA development team [...7854 lines suppressed...] ! CPUSoftwareInterrupt(opcode & 0x00FFFFFF); break; #ifdef GP_SUPPORT --- 8310,8325 ---- reg[15].I += 4; ARM_PREFETCH; + clockTicks += 2 + codeTicksAccess32(armNextPC) + + codeTicksAccessSeq32(armNextPC); + busPrefetchCount=0; } break; CASE_256(0xf00) // SWI <comment> ! busPrefetchCount=0; ! clockTicks += 2 + codeTicksAccess32(armNextPC) + ! codeTicksAccessSeq32(armNextPC); ! CPUSoftwareInterrupt(opcode & 0x00FFFFFF); ! break; #ifdef GP_SUPPORT |