Banner
Old-School Level Design Contest starts in
1 DAY, 17 HOURS, 45 MINUTES AND 39 SECONDS
Views: 890,860,903
Time:
25 users online: anonimzwx, AppleBoy54321, Camouflage, codfish1002, Epic_stuff, ExONightZ, Gabriel BR, Galactic Spear, HelloSammu, HLXY, JX444444, MarcyAugust, Masked Man, monkey03297, NewPointless,  NopeContest, Nowieso, Random Internet Name, Rilla Roo, RollingRigatonis, Saela, Sancles, SusGodGaming,  Teows, YouFailMe - Guests: 62 - Bots: 62 Users: 49,956 (2,324 active)
Latest: Supermario1313
Tip: You can edit the properties of the original sprites using Tweaker.
Not logged in.
SMW Memory Map
Displaying 1 out of 1 addresses. Show Waiting Addresses (18)
Filter
Link
Address
Hexadecimal number for a partial address. 6-digit number for a full address. Use - to denote a range. Use , to list more than one address.
Length
Type
Enable JavaScript to use multiple regions.
Region
Hold control to select multiple. Check "All" to select all at once.

Type
Description
Separate each individual keyword with spaces. Surround a phrase with quotes to look for the exact phrase, or with / to use a PCRE regular expression. Prepend with - to exclude a keyword or phrase, with + to require a whole word or phrase, or with -+ to exclude a whole word or phrase. ? matches any character, * matches any amount of characters.
 
Per Page: 25 50 75 100 150 500 All
RAM Address Length Type Description Details
$7E0200 544 bytes I/O OAM table - handles all sprite tiles. There are 0x80 (128) slots for tiles. Generally, the table is indexed from either $0200 or $0300, with $0300 being used for normal sprites (and Mario) and $0200 being used for various other sprite types.
Note that tiles are drawn to the screen from top to bottom of the table; that is, a sprite in slot 0 will always appear visually on top of a sprite in slot 1.

The actual OAM table consists of two sub-tables:
- $7E0200-$7E03FF (512 bytes): Each slot consists of four bytes in the order of: X position, Y position, tile number, YXPPCCCT. Unused tiles are generally marked by giving them a Y position of #$F0 (which is offscreen).
- $7E0400-$7E041F (32 bytes): Each slot gets 2 bits, used to handle a 9th bit of the X position (for handling sprite tiles that go past the left edge of the screen) and a "size bit" which (generally) controls whether the tile is 8x8 (0) or 16x16 (1). Since each tile only requires 2 bits, each byte of this table actually handles four separate tiles; see the details table for more information. It is not recommended that you write to this table directly, though, and you should use the table at $0420-$049F instead (routine at $008494 takes $0420 data, reformats or compacts it, and stores it to $0400).

Various tiles are documented here. Note that:
Code
$7E0310-$7E0313 is for the player's upper half
$7E0314-$7E0317 for the player's lower half
$7E0318-$7E031B is for the player's hand.
$0400 formatting
Per Page: 25 50 75 100 150 500 All

The purpose of this site is not to distribute copyrighted material, but to honor one of our favourite games.

Copyright © 2005 - 2021 - SMW Central
Legal Information - Privacy Policy - Link To Us


Menu

Follow Us On

  • YouTube
  • Twitch
  • Twitter

Affiliates

  • Super Mario Bros. X Community
  • ROMhacking.net
  • Mario Fan Games Galaxy
  • sm64romhacks