From: <lu...@us...> - 2009-08-06 22:20:27
|
Revision: 2747 http://desmume.svn.sourceforge.net/desmume/?rev=2747&view=rev Author: luigi__ Date: 2009-08-06 22:20:18 +0000 (Thu, 06 Aug 2009) Log Message: ----------- CPU (THUMB): LSR instruction now deals correctly with carryflag. For instance this fixes bugs with CpuSet SWI when "Emulate SWIs by BIOS" is enabled. Modified Paths: -------------- trunk/desmume/src/thumb_instructions.cpp Modified: trunk/desmume/src/thumb_instructions.cpp =================================================================== --- trunk/desmume/src/thumb_instructions.cpp 2009-08-05 20:30:52 UTC (rev 2746) +++ trunk/desmume/src/thumb_instructions.cpp 2009-08-06 22:20:18 UTC (rev 2747) @@ -81,7 +81,7 @@ { const u32 &i = cpu->instruction; u32 v = (i>>6) & 0x1F; - cpu->CPSR.bits.C = BIT_N(cpu->R[REG_NUM(i, 0)], v-1); + cpu->CPSR.bits.C = BIT_N(cpu->R[REG_NUM(i, 3)], v-1); cpu->R[REG_NUM(i, 0)] = (cpu->R[REG_NUM(i, 3)] >> v); cpu->CPSR.bits.N = BIT31(cpu->R[REG_NUM(i, 0)]); cpu->CPSR.bits.Z = cpu->R[REG_NUM(i, 0)] == 0; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |