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.
Ultima VI: The False Prophet/ROM map: Difference between revisions
Jump to navigation
Jump to search
BinarySplit (talk | contribs) mNo edit summary |
|||
(3 intermediate revisions by 2 users not shown) | |||
Line 86: | Line 86: | ||
== Sprites == | == Sprites == | ||
Mobs can have [[ | Mobs can have [[Ultima VI: The False Prophet:Sprite IDs|sprite IDs]] from {{hex|00}}-{{hex|4F}}. In their default state, the sprite ID is mapped to a palette and graphics row ID, but in some states (sleeping, dead, invisible) their graphics will be overridden.| | ||
Each graphics row is {{hex|200}} bytes of tiles, stored as an 8x2 grid of 8x8 tiles in standard SNES graphics format. | Each graphics row is {{hex|200}} bytes of tiles, stored as an 8x2 grid of 8x8 tiles in standard SNES graphics format. | ||
Line 100: | Line 100: | ||
The most significant 2 bits are the number of rows to load starting from that address: 00=1 row, 01=2 rows, 10/11=4 rows | The most significant 2 bits are the number of rows to load starting from that address: 00=1 row, 01=2 rows, 10/11=4 rows | ||
1679B A8 3 Mapping of graphics row IDs to 24-bit in-memory addresses of the sprite graphics | 1679B A8 3 Mapping of graphics row IDs to 24-bit in-memory addresses of the sprite graphics | ||
{{Internal Data}} |
Latest revision as of 14:29, 24 January 2024
The following article is a ROM map for Ultima VI: The False Prophet.
The offsets listed are for a ROM that does not include a copier header.
Compressed data
Start End Description ------ ------ ----------- 01D700 01FEF6 028060 029C62 Title screen graphics 029E50 02DDA1 Intro graphics (loaded 1st before intro cutscene) 02DDB0 02E586 Intro graphics (loaded 3rd before intro cutscene) 02E590 02EFD5 Intro graphics (loaded 2nd before intro cutscene) 02F1D0 02F913 02F920 02FDB9 048000 049CF0 Dialog (companions, Lord British, etc.) 049D00 04B861 Dialog 04B900 04DE05 Dialog 04DF00 04FD90 Dialog 050000 051A05 Dialog 051B00 0538C2 Dialog 053900 055ED4 Dialog 055F80 057919 Dialog 058000 05BA14 Dialog 05BA80 05D416 Dialog 05D480 05FD95 Dialog 060000 061955 Dialog 061A00 062DCA Dialog 062E00 065D95 Dialog 065E00 06710A Dialog 067180 0678D5 Dialog 068000 069E0A Dialog 069E80 06BA70 Dialog 06BB80 06D3DA Dialog 06D480 06FA93 Dialog 070000 0715E0 071600 073651 073680 075007 075080 075A44 075A80 0761BE 076200 076968 076980 0770EA 077100 0779CA 096B00 0977FB 09D000 09D943 09DA00 09E1EF 09E300 09EBD3 09EC00 09F488 09F500 09F92F 0BF100 0BF81A 0CD400 0CEA21 0CEA80 0CFCF1 0D0000 0D2133 0D2180 0D41E3 0D4200 0D65E5 Tile data in castle 0D6600 0D67B1 0D6800 0D6D2C 0D6D80 0D6F8A 0D7000 0D7230 0D7280 0D7495 0D7500 0D7C4E 0D8000 0D94DA 0D9500 0DA2B2 0DA300 0DC0D3 0DC100 0DE067 0DE100 0DF199 0DF200 0DFDD1 0E0000 0E0FA9 0E1000 0E31AE 0E3200 0E47BA
Mobs
Offset Item size Description ------ --------- ----------- EB34 1 Loaded into second byte of 7E8200 structure in RAM EBF0 1 Loaded into first byte of 7E8400 structure in RAM ECAC 1 Loaded into second byte of 7E8400 structure in RAM ED68 1 Loaded into first byte of 7E8600 structure in RAM EE24 2 Loaded into 7E8800 structure in RAM EF9C 1 Loaded into second byte of 7E8600 structure in RAM F058 1 Sprite ID, loaded into first byte of 7E8000 structure in RAM 18C3D 4 Initial positions. First 10 bits are the X position, next 10 bits are the Y position, 3rd byte is loaded into the first byte of the 7E8200 structure in RAM
Sprites
Mobs can have sprite IDs from 00
-4F
. In their default state, the sprite ID is mapped to a palette and graphics row ID, but in some states (sleeping, dead, invisible) their graphics will be overridden.|
Each graphics row is 200
bytes of tiles, stored as an 8x2 grid of 8x8 tiles in standard SNES graphics format.
Offset Length Item size Description ------ ------ --------- ----------- 2647 9E 2 vtable mapping sprite IDs to functions that handle rendering. Note these are stored as 16-bit little-endian pointers to the in-memory addresses of functions. 4591 9E 2 vtable mapping sprite IDs to functions that update their animation flags. F159 4F 1 Palette index (0-7) of each sprite. Note that some render functions ignore this and use a hard-coded palette. 16735 4F 1 Mapping of sprite IDs to graphics row IDs. The least significant 6 bits are an index into the row IDs table. The most significant 2 bits are the number of rows to load starting from that address: 00=1 row, 01=2 rows, 10/11=4 rows 1679B A8 3 Mapping of graphics row IDs to 24-bit in-memory addresses of the sprite graphics
Internal Data for Ultima VI: The False Prophet
| |
---|---|