GbaGuy
New member
char ucBCD1 = m_pMemory->getRegister(ucRegister)/100;
char ucBCD2 = (m_pMemory->getRegister(ucRegister) - (100*ucBCD1))/10;
char ucBCD3 = (m_pMemory->getRegister(ucRegister) - (10 *ucBCD2));
shouldn't that last one be:
char ucBCD3 = (m_pMemory->getRegister(ucRegister) - (100*ucBDC1) - (10 *ucBCD2));
?
otherwise, say getRegister returns 253:
BCD1 = 2
BCD2 = 5
BCD3 = 253 - ((10*5)==50) = 203...
Did I miss something? I never use BCD so I could be completely off here...
char ucBCD2 = (m_pMemory->getRegister(ucRegister) - (100*ucBCD1))/10;
char ucBCD3 = (m_pMemory->getRegister(ucRegister) - (10 *ucBCD2));
shouldn't that last one be:
char ucBCD3 = (m_pMemory->getRegister(ucRegister) - (100*ucBDC1) - (10 *ucBCD2));
?
otherwise, say getRegister returns 253:
BCD1 = 2
BCD2 = 5
BCD3 = 253 - ((10*5)==50) = 203...
Did I miss something? I never use BCD so I could be completely off here...