Welcome to Data Crystal's new home! Data Crystal is now part of the TCRF family (sort of).
The wiki has recently moved; please report any issues in Discord. Pardon the dust.

Star Fox/ROM map: Difference between revisions

From Data Crystal
Jump to navigation Jump to search
No edit summary
m (Xkeeper moved page Star Fox:ROM map to Star Fox/ROM map: normalize subpages and titles)
 
(33 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
{{rommap|game=Star Fox}}
{| class="wikitable"
{| class="wikitable"
|+ Star Fox (USA) (Rev 2) <br>CRC32: 8FC4E6D0
!style="text-align:left;" | Start
!style="text-align:left;" | Start
!style="text-align:left;" | End
!style="text-align:left;" | End
Line 8: Line 7:
|colspan="3"| ...
|colspan="3"| ...
|-
|-
| <code>001090</code>
| <code>001099</code>
| <code>001340</code>
| <code>001341</code>
| bitmap font, 2bpp planer (unused)
| bitmap font (unused)
|-
|colspan="3"| ...
|-
| <code>00264b</code>
| <code>00283f</code>
| [[Star Fox:3D Object Index Table|3D Object Index Table]] (2-byte address per entry)
|-
| <code>002840</code>
| <code>002c3f</code>
| [[Star Fox:Object Behavior Index Table|Object Behavior Index Table]] (3-byte address + 1-byte object index per entry)
|-
| <code>002c15</code>
| <code>006900</code>
| [[Star Fox:Object Data|Object Data]] (28-byte struct per entry)
|-
|colspan="3"| ...
|-
| <code>0075C0</code>
| <code>007FDF</code>
| SNES Header ([https://en.wikibooks.org/wiki/Super_NES_Programming/SNES_memory_map#The_SNES_header reference])
|-
|-
|colspan="3"| ...
|colspan="3"| ...
Line 16: Line 35:
| <code>00D996</code>
| <code>00D996</code>
| <code>00E6B5</code>
| <code>00E6B5</code>
| bitmap font, 2bpp linear
| font (in-game text)
|-
|-
|colspan="3"| ...
|colspan="3"| ...
Line 22: Line 41:
| <code>00F7DB</code>
| <code>00F7DB</code>
| <code>00FBD8</code>
| <code>00FBD8</code>
| dialog text
| in-game text data
|-
|-
| <code>00FBD9</code>
| <code>00FBD9</code>
| <code>00FCF4</code>
| <code>00FCF4</code>
| dialog text pointer table
| in-game text pointer table
|-
|colspan="3"| ...
|-
|<code>010000</code>
|<code>017FFF</code>
| [[Star Fox:Material Data|Material Data]]
|-
|<code>018000</code>
|<code>018917</code>
| [[Star Fox:Material Data|Animated Material Data]]
|-
|<code>018918</code>
|<code>018997</code>
| [[Star Fox:Material Data|Texture Offset Table]]
|-
|<code>018ACA</code>
|<code>018AE9</code>
| Space Palette (2-bytes per entry, 16 entries)
|-
|<code>018AEA</code>
|<code>018B09</code>
| Night Palette (2-bytes per entry, 16 entries)
|-
|<code>018B0A</code>
|<code>018B2A</code>
| Day Palette (2-bytes per entry, 16 entries)
|-
|colspan="3"| ...
|-
|<code>018B8A</code>
|<code>018E09</code>
| Dynamic Colors (1-byte per entry, 32 entries per shade, 20 shades)
|-
|<code>018E0A</code>
|<code>018F99</code>
| Lighting Colors (1-byte per entry, 10 entries per color, 10 colors per shade, 4 shades)
|-
|colspan="3"| ...
|-
|<code>01D440</code>
|<code>01D63F</code>
| 256-Color Palette (2-bytes per entry, 256 entries)
|-
|colspan="3"| ...
|-
|<code>028000</code>
|<code>02803F</code>
| [[Star Fox:Level Index Table|Level Index Table]] (3-byte address per entry)
|-
|<code>028040</code>
|<code>02FFFF</code>
| [[Star Fox:Level Data|Level Data]] (Page 1)
|-
|<code>068000</code>
|<code>06FFFF</code>
| [[Star Fox:Level Data|Level Data]] (Page 2)
|-
|colspan="3"| ...
|-
| <code>~06F4AE</code>
| <code>~06F7D7</code>
| end credits sequence
|-
|-
|colspan="3"| ...
|colspan="3"| ...
|-
|-
| <code>090000</code>
| <code>090000</code>
| <code>0A031F</code>
| <code>09FFFF</code>
| tileset, 8bpp linear
| Texture Data (4-bits per entry, 1 entry per page, 2 pages per pixel, 256 pixels per row, 256 rows)
|-
|-
|colspan="3"| ...
|colspan="3"| ...
|-
|-
|}
| <code>0A3EDA</code>
 
| <code>0A48D9</code>
== Notes ==
| end credits font
 
Dialog text has prefix of two bytes and <code>0E</code>, and is null-terminated. The first byte is the character that speaks and the second byte is the text color. For example:
 
<pre>
02 02 0E 72  6F 6C 6C 2C  20 66 6F 78  ....  6E 20 72 6F  6C 6C 2C 00
^  ^    ^                                                          ^
|  |    |                                                          |
|  |    start of text                                  null terminator
| color
character
</pre>
 
The character byte's high nibble is usually <code>8</code> (<code>80</code>, <code>81</code>, etc.) but appears in some places as <code>0</code> (<code>00</code>, <code>01</code>, etc.) Not sure yet of the significance of this.
 
{| class="wikitable"
|+ Character
!style="text-align:left;" | Nibble
!style="text-align:left;" | Character
|-
|-
| <code>0</code>
| <code>0A48DA</code>
| Fox
| <code>A4E25</code>
| end credits text data
|-
|-
| <code>1</code>
|colspan="3"| ...
| Peppy
|-
|-
| <code>2</code>
| <code>0BB7A4</code>
| Falco
| <code>0BE523</code>
| Character [[Star Fox:Graphics Data|Graphics Data]]
|-
|-
| <code>3</code>
|colspan="3"| ...
| Slippy
|-
|-
| <code>4</code>
| <code>0C0000</code>
| Pepper
| <code>0EFFFF</code>
|-
| SPC700 [[Star Fox:Audio Data|Audio Data]]
| <code>5</code>
| Andross
|-
|-
|}
|}


Color obviously depends on the palette.
{{Internal Data|game=Star Fox}}
 
Text is mostly ASCII. <code>#</code> is used as a period.

Latest revision as of 02:42, 24 January 2024

Chip tiny.png The following article is a ROM map for Star Fox.

Start End Description
...
001099 001341 bitmap font (unused)
...
00264b 00283f 3D Object Index Table (2-byte address per entry)
002840 002c3f Object Behavior Index Table (3-byte address + 1-byte object index per entry)
002c15 006900 Object Data (28-byte struct per entry)
...
0075C0 007FDF SNES Header (reference)
...
00D996 00E6B5 font (in-game text)
...
00F7DB 00FBD8 in-game text data
00FBD9 00FCF4 in-game text pointer table
...
010000 017FFF Material Data
018000 018917 Animated Material Data
018918 018997 Texture Offset Table
018ACA 018AE9 Space Palette (2-bytes per entry, 16 entries)
018AEA 018B09 Night Palette (2-bytes per entry, 16 entries)
018B0A 018B2A Day Palette (2-bytes per entry, 16 entries)
...
018B8A 018E09 Dynamic Colors (1-byte per entry, 32 entries per shade, 20 shades)
018E0A 018F99 Lighting Colors (1-byte per entry, 10 entries per color, 10 colors per shade, 4 shades)
...
01D440 01D63F 256-Color Palette (2-bytes per entry, 256 entries)
...
028000 02803F Level Index Table (3-byte address per entry)
028040 02FFFF Level Data (Page 1)
068000 06FFFF Level Data (Page 2)
...
~06F4AE ~06F7D7 end credits sequence
...
090000 09FFFF Texture Data (4-bits per entry, 1 entry per page, 2 pages per pixel, 256 pixels per row, 256 rows)
...
0A3EDA 0A48D9 end credits font
0A48DA A4E25 end credits text data
...
0BB7A4 0BE523 Character Graphics Data
...
0C0000 0EFFFF SPC700 Audio Data