rwl++++ DAS2L - DMA Size/HDMA Indirect Address low byte
rwh++++ DAS2H - DMA Size/HDMA Indirect Address high byte
rwb++++ DASB2 - HDMA Indirect Address bank byte
bbbbbbbb hhhhhhhh llllllll
For DMA, $4325/6 indicate the number of bytes to transfer. Note that
this is a strict limit: if this is set to 1 then only 1 byte will be
written, even if the transfer mode specifies 2 or 4 registers (and if
this is 5, all 4 registers would be written once, then the first only
would be written a second time). Note, however, that writing $0000 to
this register actually results in a transfer of $10000 bytes, not 0.
$4325/6 are decremented during DMA, and thus typically end up set to 0
when DMA is complete.
For HDMA, $4327 specifies the bank for indirect addressing mode. The
indirect address is copied into $4325/6 and incremented appropriately.
For direct HDMA, these registers are not used or altered.
Writes to $4327 during indirect HDMA will take effect for the next
transfer. Writes to $4325/6 during indirect HDMA will also take effect
for the next HDMA transfer, however this is only noticable during
repeat mode (for normal mode, a new indirect address will be read from
the table before the transfer). For a direct transfer, presumably
nothing will happen.
This register is set to $FF on power on, and is unchanged on reset.