GBA Timer: Fix count-up timing overflowing timer 3

This commit is contained in:
Vicki Pfau 2017-07-09 11:07:22 -07:00
parent b71ffe711c
commit 8b4b634989
2 changed files with 3 additions and 2 deletions

View File

@ -1,6 +1,5 @@
0.7.0: (Future)
Bugfixes:
- GB Audio: Fix zombie mode bit masking
- GB Audio: Make audio unsigned with bias (fixes mgba.io/i/749)
Misc:
- GBA Timer: Use global cycles for timers
@ -177,6 +176,8 @@ Bugfixes:
- Qt: Fix shader selector on Ubuntu (fixes mgba.io/i/767)
- GB Serialize: Fix timer serialization
- GB Audio: Fix incorrect channel 4 iteration
- GB Audio: Fix zombie mode bit masking
- GBA Timer: Fix count-up timing overflowing timer 3
Misc:
- Qt: Add language selector
- GBA Timer: Improve accuracy of timers

View File

@ -70,7 +70,7 @@ static void GBATimerUpdate(struct GBA* gba, int timerId, uint32_t cyclesLate) {
}
}
if (timerId < 4) {
if (timerId < 3) {
struct GBATimer* nextTimer = &gba->timers[timerId + 1];
if (GBATimerFlagsIsCountUp(nextTimer->flags)) { // TODO: Does this increment while disabled?
++gba->memory.io[(REG_TM1CNT_LO >> 1) + (timerId << 1)];