If you are still using the old URL (datacrystal.romhacking.net), please update your bookmarks! The old URL may stop working soon.
The current URL is datacrystal.tcrf.net.
The current URL is datacrystal.tcrf.net.
EarthBound/VRAM DMA Transfer Style Table: Difference between revisions
Jump to navigation
Jump to search
(Create page and document format) |
(Document all the table entries) |
||
Line 32: | Line 32: | ||
=Table Contents= | =Table Contents= | ||
{| border=1 cellspacing=0 cellpadding=3 | |||
! Offset !! Value !! Description | |||
|- | |||
| <tt>00</tt> || <tt>011880</tt> || Memory -> VRAM | |||
|- | |||
| <tt>03</tt> || <tt>091880</tt> || Fixed address -> VRAM | |||
|- | |||
| <tt>06</tt> || <tt>001800</tt> || Memory -> low-byte-only VRAM (e.g. for Mode 7) | |||
|- | |||
| <tt>09</tt> || <tt>081800</tt> || Fixed address -> low-byte-only VRAM | |||
|- | |||
| <tt>0C</tt> || <tt>001980</tt> || Memory -> high-byte-only VRAM | |||
|- | |||
| <tt>0F</tt> || <tt>081980</tt> || Fixed address -> high-byte-only VRAM | |||
|- | |||
| <tt>12</tt> || <tt>813980</tt> || VRAM -> memory | |||
|- | |||
| <tt>15</tt> || <tt>803900</tt> || Low-byte-only VRAM -> memory | |||
|- | |||
| <tt>18</tt> || <tt>803a80</tt> || High-byte-only VRAM -> memory | |||
|- | |||
| <tt>1B</tt> || <tt>011881</tt> || Memory -> VRAM, incrementing VRAM 32 words after each write | |||
|- | |||
| <tt>1E</tt> || <tt>091881</tt> || Fixed address -> VRAM, incrementing 32 words | |||
|- | |||
| <tt>21</tt> || <tt>001801</tt> || Memory -> low-byte-only VRAM, incrementing 32 words | |||
|- | |||
| <tt>24</tt> || <tt>081801</tt> || Fixed address -> low-byte-only VRAM, incrementing 32 words | |||
|- | |||
| <tt>27</tt> || <tt>001981</tt> || Memory -> high-byte-only VRAM, incrementing 32 words | |||
|- | |||
| <tt>2A</tt> || <tt>081981</tt> || Fixed address -> high-byte-only VRAM, incrementing 32 words | |||
|- | |||
| <tt>2D</tt> || <tt>813981</tt> || VRAM -> memory, incrementing VRAM 32 words | |||
|- | |||
| <tt>30</tt> || <tt>803901</tt> || Low-byte-only VRAM -> memory, incrementing VRAM 32 words | |||
|- | |||
| <tt>33</tt> || <tt>803a81</tt> || High-byte-only VRAM -> memory, incrementing VRAM 32 words | |||
|} | |||
[[Category:EarthBound|VRAM DMA Transfer Style Table]] | [[Category:EarthBound|VRAM DMA Transfer Style Table]] | ||
Revision as of 02:47, 1 June 2023
This is a sub-page of EarthBound.
VRAM DMA Transfer Style Table | |
Game | EarthBound |
Start Address | 0x0091B0 |
End Address | 0x0091E5 |
# of Entries | 18 |
Entry Length | 3 bytes (0x03) |
Total Length | 54 bytes (0x36) |
Back to the ROM map |
The VRAM DMA Transfer Style Table stores miscellaneous parameters for DMA transfers to/from VRAM.
Format
DMA Parameters
- Length: 1 byte (0x1)
- Offset within entry: 0x00
- Range of values: 0x00-0xFF
Value to be copied into the DMA Parameters register. Controls the DMA transfer pattern and direction.
DMA B-Bus Address
- Length: 1 byte (0x1)
- Offset within entry: 0x01
- Range of values: 0x18,0x19,0x39,0x3a (VRAM read/write registers)
Value to be copied into the DMA B-Bus Address register. Interpreted as an address within the $0021xx range.
Valid values for VRAM transfers:
18
: VRAM Write Low register (also used when targeting both VRAM Write Low and VRAM Write High registers)19
: VRAM Write High register39
: VRAM Read Low register (also used when targeting both VRAM Read Low and VRAM Read High registers)3a
: VRAM Read High register
VRAM Address Increment
- Length: 1 byte (0x1)
- Offset within entry: 0x02
- Range of values: 0x00-0xFF
Value to be copied into the VRAM Address Increment (VMAIN) register. Controls VRAM address increment and mapping for the transfer.
Table Contents
Offset | Value | Description |
---|---|---|
00 | 011880 | Memory -> VRAM |
03 | 091880 | Fixed address -> VRAM |
06 | 001800 | Memory -> low-byte-only VRAM (e.g. for Mode 7) |
09 | 081800 | Fixed address -> low-byte-only VRAM |
0C | 001980 | Memory -> high-byte-only VRAM |
0F | 081980 | Fixed address -> high-byte-only VRAM |
12 | 813980 | VRAM -> memory |
15 | 803900 | Low-byte-only VRAM -> memory |
18 | 803a80 | High-byte-only VRAM -> memory |
1B | 011881 | Memory -> VRAM, incrementing VRAM 32 words after each write |
1E | 091881 | Fixed address -> VRAM, incrementing 32 words |
21 | 001801 | Memory -> low-byte-only VRAM, incrementing 32 words |
24 | 081801 | Fixed address -> low-byte-only VRAM, incrementing 32 words |
27 | 001981 | Memory -> high-byte-only VRAM, incrementing 32 words |
2A | 081981 | Fixed address -> high-byte-only VRAM, incrementing 32 words |
2D | 813981 | VRAM -> memory, incrementing VRAM 32 words |
30 | 803901 | Low-byte-only VRAM -> memory, incrementing VRAM 32 words |
33 | 803a81 | High-byte-only VRAM -> memory, incrementing VRAM 32 words |