GB Audio: Fix APU re-enable timing glitch
1
CHANGES
|
@ -22,6 +22,7 @@ Emulation fixes:
|
||||||
- GB Audio: Fix channel 1/2 reseting edge cases (fixes mgba.io/i/1925)
|
- GB Audio: Fix channel 1/2 reseting edge cases (fixes mgba.io/i/1925)
|
||||||
- GB Audio: Properly apply per-model audio differences
|
- GB Audio: Properly apply per-model audio differences
|
||||||
- GB Audio: Revamp channel rendering
|
- GB Audio: Revamp channel rendering
|
||||||
|
- GB Audio: Fix APU re-enable timing glitch
|
||||||
- GB Memory: Add cursory cartridge open bus emulation (fixes mgba.io/i/2032)
|
- GB Memory: Add cursory cartridge open bus emulation (fixes mgba.io/i/2032)
|
||||||
- GB Serialize: Fix loading MBC1 states that affect bank 0 (fixes mgba.io/i/2402)
|
- GB Serialize: Fix loading MBC1 states that affect bank 0 (fixes mgba.io/i/2402)
|
||||||
- GB Video: Draw SGB border pieces that overlap GB graphics (fixes mgba.io/i/1339)
|
- GB Video: Draw SGB border pieces that overlap GB graphics (fixes mgba.io/i/1339)
|
||||||
|
|
After Width: | Height: | Size: 788 B |
|
@ -1,2 +0,0 @@
|
||||||
[testinfo]
|
|
||||||
fail=1
|
|
Before Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 870 B |
|
@ -1,2 +0,0 @@
|
||||||
[testinfo]
|
|
||||||
fail=1
|
|
Before Width: | Height: | Size: 968 B |
After Width: | Height: | Size: 788 B |
|
@ -1,2 +0,0 @@
|
||||||
[testinfo]
|
|
||||||
fail=1
|
|
Before Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 890 B |
|
@ -1,2 +0,0 @@
|
||||||
[testinfo]
|
|
||||||
fail=1
|
|
Before Width: | Height: | Size: 975 B |
|
@ -451,7 +451,7 @@ void GBAudioWriteNR52(struct GBAudio* audio, uint8_t value) {
|
||||||
audio->skipFrame = false;
|
audio->skipFrame = false;
|
||||||
audio->frame = 7;
|
audio->frame = 7;
|
||||||
|
|
||||||
if (audio->p && audio->p->timer.internalDiv & 0x400) {
|
if (audio->p && audio->p->timer.internalDiv & (0x100 << audio->p->doubleSpeed)) {
|
||||||
audio->skipFrame = true;
|
audio->skipFrame = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|