The current URL is datacrystal.tcrf.net.
Help:Ram Map
Below are the general guidelines and recommendations for RAM maps. These conventions should be followed when possible, but there is no one-size-fits-all solution. Use your best judgement.
Content
RAM maps are intended to identify the purpose of individual memory locations. A brief description may also be provided for specific regions of memory. Detailed explanations of the memory usage, data structures, and any other explanatory text should be kept to a bare minimum. This additional content can go into a separate article.
RAM maps may include system RAM, VRAM, OAM, cartrige RAM, etc., but the content of the RAM map should be game-specific.
Format and Layout
- Place the {{rammap|game=name of game}} template at the top of every RAM map page.
- Avoid using tables for large listings. These can be cumbersome to edit and don't copy and paste well. Pre-formatted text can be used instead. Either use the HTML <pre></pre> tags, or precede each line in the listing with at least one space.
- <pre></pre> tags can not contain links or wiki markup.
- Pre-formatted text using a space before each line may include wiki markup and links.
- The RAM map should be organized into neat columns, with addresses on the left and descriptions on the right. Additional columns can be included in-between to specify data-block sizes or data types. Use column headings.
- Addresses should be specified in hexadecimal. Including prefixes such as "$" or "0x" is not necessary.
- Data sizes should generally be shown in hexadecimal. In any case, it is best to explicitly state the format and convention used.
Example RAM Map Address Size Description ------- ---- ----------- 00 2 Temp variable - ptr 02 2 Temp variable - ptr 12 1 Player X 13 1 Player Y 17 1 Player Health 30 2 PPU data destination 32 1E PPU data bytes 100 100 Stack 200 100 OAM Mirror 300 10 Enemy 1 data (see Enemy Data explanation) 310 10 Enemy 2 data ...
Organization
RAM maps should be listed by memory address in ascending order. This allows others to easily look up a specific address. If there is a compelling reason to do so, a secondary listing may be added, organized by function. (For example, a listing of memory locations that contain the player's properties and stats may be appropriate if the value is unorganized and spread out in RAM.)
RAM maps can be divided by bank/page/segment if the listing is extremely long.