Skip to content

Source control bits get cleared when doing a DMA from ROM with a non-incrementing source address #2410

Closed
@KellanClark

Description

@KellanClark

Build: 0.9.3
Branch: heads/0.9.3
Revision: 1163869
OS: Linux Mint 64-bit
CPU: Core i7-1065G7
GPU: Intel Iris Plus Graphics

Tested using https://github.com/ICanNotThinkOfAGoodUsername/gbastuff/tree/main/dmacnttest

There is a small issue in the code https://github.com/mgba-emu/mgba/blob/master/src/gba/dma.c#L86-L88 where instead of being ignored and internally treated as increment, the source control bits get physically reset. The value read from DMAxCNT_H after the transfer should remain the same as before (minus the enable bit), but this is not the case as of 0.9.3

Expected:
expected0

Actual:
Screenshot from 2022-01-05 11-49-27

Metadata

Metadata

Assignees

No one assigned

    Labels

    platform:GBAGame Boy Advance-related issues

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions