SCU

From Yabause
Revision as of 00:26, 27 March 2008 by Cyberwarriorx (Talk | contribs) (Initial add - needs some major work)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

The SCU(System Control Unit) basically acts as a sort of Memory Management Unit for the various chips and RAM in the system. It also contains a rather nice DSP that can be used to handle complex math and DMA transfers between various RAM and registers.


|| **Address** || **Name** || **15** || **14** || **13** || **12** || **11** || **10** || **9** || **8** || **7** || **6** || **5** || **4** || **3** || **2** || **1** || **0** || **What's there** || || 0x25FE0000 || D0R || || || || || || || || || || || || || || || || || || || 0x25FE0004 || D0W || || || || || || || || || || || || || || || || || || || 0x25FE0008 || D0C || || || || || || || || || || || || || || || || || || || 0x25FE000C || D0AD || || || || || || || || || || || || || || || || || || || 0x25FE0010 || D0EN || || || || || || || || || || || || || || || || || || || 0x25FE0014 || D0MD || || || || || || || || || || || || || || || || || || || 0x25FE0020 || D1R || || || || || || || || || || || || || || || || || || || 0x25FE0024 || D1W || || || || || || || || || || || || || || || || || || || 0x25FE0028 || D1C || || || || || || || || || || || || || || || || || || || 0x25FE002C || D1AD || || || || || || || || || || || || || || || || || || || 0x25FE0030 || D1EN || || || || || || || || || || || || || || || || || || || 0x25FE0034 || D1MD || || || || || || || || || || || || || || || || || || || 0x25FE0040 || D2R || || || || || || || || || || || || || || || || || || || 0x25FE0044 || D2W || || || || || || || || || || || || || || || || || || || 0x25FE0048 || D2C || || || || || || || || || || || || || || || || || || || 0x25FE004C || D2AD || || || || || || || || || || || || || || || || || || || 0x25FE0050 || D2EN || || || || || || || || || || || || || || || || || || || 0x25FE0054 || D2MD || || || || || || || || || || || || || || || || || || || 0x25FE0060 || DSTP || || || || || || || || || || || || || || || || || || || 0x25FE0070 || DSTA || || || || || || || || || || || || || || || || || || || 0x25FE0080 || PPAF || || || || || || || || || || || || || || || || || || || 0x25FE0084 || PPD || || || || || || || || || || || || || || || || || || || 0x25FE0088 || PDA || || || || || || || || || || || || || || || || || || || 0x25FE008C || PDD || || || || || || || || || || || || || || || || || || || 0x25FE0090 || T0C || || || || || || || || || || || || || || || || || || || 0x25FE0094 || T1S || || || || || || || || || || || || || || || || || || || 0x25FE0098 || T1MD || || || || || || || || || || || || || || || || || || || 0x25FE00A0 || IMS || || || || || || || || || || || || || || || || || || || 0x25FE00A4 || IST || || || || || || || || || || || || || || || || || || || 0x25FE00B0 || ASR0 || || || || || || || || || || || || || || || || || || || 0x25FE00B4 || ASR1 || || || || || || || || || || || || || || || || || || || 0x25FE00B8 || AREF || || || || || || || || || || || || || || || || || || || 0x25FE00BC || AIACK || || || || || || || || || || || || || || || || || || || 0x25FE00C4 || RSEL || || || || || || || || || || || || || || || || || || || 0x25FE00C8 || VER || || || || || || || || || || || || || || || || || ||

Indirect DMA notes

The way you set up Indirect DMA is almost the same as regular DMA. You just have to set the DMA mode bit of the DXMD register to 1 instead. And then setup an array storing your transfer count, write address and read address(in that order) and write the address to this array to the DXW register.