EarthBound/VRAM DMA Transfer Style Table: Difference between revisions

From Data Crystal
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]]
{{stub}}

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

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:

VRAM Address Increment

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