Difference between revisions of "Crystal Beans From Dungeon Explorer:ROM map"

From Data Crystal
Jump to: navigation, search
m (Split off the music section)
(Split off the cutscene section to another page)
Line 1: Line 1:
 
{{rommap|game=Crystal Beans From Dungeon Explorer}}
 
{{rommap|game=Crystal Beans From Dungeon Explorer}}
 
<!--
 
* <tt>- ()</tt> =
 
-->
 
  
 
==Overview==
 
==Overview==
This present the layout of the ROM. Data with unknown function is omitted. The start of asm code whose function is known is mentioned under the code block definition.
+
This present the layout of the ROM. The start of asm code whose function is known is mentioned under the code block definition.
  
 
==Core engine==
 
==Core engine==
Line 55: Line 51:
 
* <tt>120000-145FFF (155648)</tt> = [[Crystal Beans From Dungeon Explorer:Music engine ROM map|Music engine code and data]]
 
* <tt>120000-145FFF (155648)</tt> = [[Crystal Beans From Dungeon Explorer:Music engine ROM map|Music engine code and data]]
  
==Cutscenes==
+
==Cutscene engine==
* <tt>146000-147907 (6408)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Font_Graphics|Cutscene font graphics]]
+
* <tt>146000-17FFFF (237568)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene engine ROM map|Cutscene engine code and data]]
* <tt>14B000-14B9B8 (2489)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for weapons shadow
 
* <tt>14B9B9-14B9DC (36)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] palette for weapons shadow
 
* <tt>14B9DD-14BDEB (1039)</tt> = Unknown [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|compressed]] data (weapons shadow tilemap?)
 
* <tt>14BDEC-14CA10 (3109)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for rain cloud
 
* <tt>14CA11-14CA2E (30)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] palette for rain cloud, crystal shards and some unknown sprites
 
* <tt>14CA2F-14D0FF (1745)</tt> = Unknown [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|compressed]] data (rain cloud tilemap?)
 
* <tt>14D100-14D239 (314)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for crystal shards
 
* <tt>14D23A-14D77E (1349)</tt> = Unknown [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|compressed]] data (crystal shards tilemap?)
 
* <tt>14D77F-14DA93 (789)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for little beanstalk
 
* <tt>14DA94-14DAB6 (35)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] palette for little beanstalk
 
* <tt>14DAB7-14DBB4 (254)</tt> = Unknown [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|compressed]] data (little beanstalk tilemap?)
 
* <tt>14DBB5-14DC56 (162)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for small crystals
 
* <tt>14DC57-14DCD7 (129)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] palette for small crystals
 
* <tt>14DCD8-14E521 (2122)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for other little beanstalk
 
* <tt>14E522-14E562 (65)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] palette for other little beanstalk
 
* <tt>14E563-14E724 (450)</tt> = Unknown [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|compressed]] data (other little beanstalk tilemap?)
 
* <tt>14E725-14E8CE (426)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for small growing beanstalk
 
* <tt>14E8CF-14E8F1 (35)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] palette for small growing beanstalk
 
* <tt>14E8F2-15146F (11134)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for world map
 
* <tt>151470-151503 (148)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] initial palette, also used for title screen and world map
 
* <tt>151504-15155C (89)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|compressed]] additional palette for world map
 
* <tt>15155D-151A14 (1208)</tt> = Unknown [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] data (world map tilemap?)
 
* <tt>151A15-1536DB (7367)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for world map sprites
 
* <tt>1536DC-153759 (126)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] palette for world map sprites
 
* <tt>15375A-156478 (11551)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for monsters
 
* <tt>156479-1564C5 (77)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] palette for monsters
 
* <tt>1564C6-156900 (1083)</tt> = Unknown [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|compressed]] data (monsters tilemap?)
 
* <tt>156901-1585A6 (7334)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for monster outlines
 
* <tt>1585A7-1585EC (70)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] palette for monster outlines
 
* <tt>1585ED-1589DB (1007)</tt> = Unknown [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|compressed]] data (monsters outlines tilemap?)
 
* <tt>1589DC-15AE21 (9286)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for large beanstalk
 
* <tt>15AE22-15AE58 (55)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] palette for large beanstalk
 
* <tt>15AE59-15B1D5 (893)</tt> = Unknown [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|compressed]] data (large beanstalk tilemap?)
 
* <tt>15B1D6-15B555 (896)</tt> = Unknown [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|compressed]] data (large beanstalk tilemap?)
 
* <tt>15B556-15EC94 (14143)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for large growing beanstalk
 
* <tt>15EC95-15ECD0 (60)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] palette for large growing beanstalk
 
* <tt>15ECD1-15F320 (1616)</tt> = Unknown [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|compressed]] data (large growing beanstalk tilemap?)
 
* <tt>15F321-16026D (3917)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for pedestal
 
* <tt>16026E-1602D5 (104)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] palette for pedestal
 
* <tt>1602D6-160500 (555)</tt> = Unknown [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|compressed]] data (pedestal tilemap?)
 
* <tt>160501-16119D (3229)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for shining crystal
 
* <tt>16119E-1611C0 (35)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] palette for shining crystal
 
* <tt>1611C1-162871 (5809)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for castle
 
* <tt>162872-1628E8 (119)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] palette for castle
 
* <tt>1628E9-162AF3 (523)</tt> = Unknown [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|compressed]] data (throne room tilemap?)
 
* <tt>162AF4-162CD2 (479)</tt> = Unknown [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|compressed]] data (bean room tilemap?)
 
* <tt>162CD3-163730 (2654)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for boss room
 
* <tt>163731-1637BF (143)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] palette for boss room
 
* <tt>1637C0-1638C9 (266)</tt> = Unknown [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|compressed]] data (boss room tilemap?)
 
* <tt>1638CA-164C62 (5017)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for characters
 
* <tt>164C63-164CEB (137)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] palette for characters
 
* <tt>164CEC-164CFC (17)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] additional palette for castle
 
* <tt>164CFD-1694F5 (18425)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for title screen background
 
* <tt>1694F6-169548 (83)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] additional palette for title screen background
 
* <tt>169549-169BB1 (1641)</tt> = Unknown [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|compressed]] data (title screen background tilemap?)
 
* <tt>169BB2-16B4BC (6411)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for title screen text
 
* <tt>16B4BD-16B52C (112)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] palette for title screen text
 
* <tt>16B52D-16BA07 (1243)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for title screen clouds
 
* <tt>16BA08-16BA12 (11)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] palette for title screen clouds
 
* <tt>16BA13-16BECB (1209)</tt> = Unknown [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|compressed]] data (title screen clouds tilemap?)
 
* <tt>16BECC-16D7D5 (6410)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for castle sprites
 
* <tt>16D7D6-16D8A2 (205)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] palette for castle sprites
 
* <tt>16D8A3-17001B (10105)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for castle people sprites
 
* <tt>17001C-171A36 (6683)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for town
 
* <tt>171A37-171ACE (152)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] palette for town
 
* <tt>171ACF-171CF4 (550)</tt> = Unknown [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] data (town tilemap?)
 
* <tt>171CF5-1728B7 (3011)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] graphics for credit sprites
 
* <tt>1728B8-1728F0? (57?)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene_Data_Compression|Compressed]] palette for credit sprites
 
* <tt>178000-179128 (4393)</tt> = Cutscene engine asm code (script related)
 
** <tt>178000</tt> = ShowCutscene(byte cutsceneIndex<A>)
 
** <tt>178138-178141 (10)</tt> = Cutscene [[Crystal Beans From Dungeon Explorer:Cutscene Script|script]] pointer table (5 16-bits pointer)
 
** <tt>1781AE-1781CF (34)</tt> = Cutscene command function pointer table (17 16-bits pointer)
 
** <tt>1782C2</tt> = SetSrcAddr()
 
** <tt>1782D2</tt> = SetUncompressedLength()
 
** <tt>1782D9</tt> = SetVRAMAddr()
 
** <tt>17855F</tt> = SetScrollRegs()
 
** <tt>1788F2</tt> = SendToVram()
 
** <tt>178927</tt> = CheckCutsceneInterruption()
 
** <tt>178961-178965 (5)</tt> = Cutscene interruption control bytes (1 if cutscene can be interrupted by pressing the START button, 0 otherwise)
 
** <tt>17899D</tt> = CutsceneNMIHandler()
 
** <tt>178A29</tt> = UploadPalette()
 
** <tt>178A9B</tt> = UploadToVRAM()
 
** <tt>178CAC</tt> = SendToVRAM()
 
** <tt>178DBD</tt> = MemsetVRAM?()
 
** <tt>178DD3</tt> = DecompToWRAM()
 
** <tt>178DFC</tt> = DecompToVRAM()
 
** <tt>178E26</tt> = DecompToPaletteBuf()
 
** <tt>178F37</tt> = SetOAMFromArray()
 
** <tt>179037</tt> = LzssInitVars()
 
** <tt>1790CD</tt> = LzssGetNextByte()
 
** <tt>1790DC</tt> = byte<A> tLzssUncompressNextByte()
 
* <tt>179129-17B8FB (10196)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene sprite data struct|Cutscene sprite data struct lists]]
 
* <tt>17BDF3-17BE9F (173)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene Script|Script]] for title screen
 
* <tt>17BEA0-17C22F (912)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene Script|Script]] for introduction
 
* <tt>17C230-17C3D9 (426)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene Script|Script]] for beanstalk growing scene
 
* <tt>17C3DA-17C7D1 (1016)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene Script|Script]] for ending and credits
 
* <tt>17C7D2-17C7ED (28)</tt> = [[Crystal Beans From Dungeon Explorer:Cutscene Script|Script]] for mouse message
 
* <tt>17C7EE-17D3E3 (3062)</tt> = Cutscene engine asm code
 
** <tt>17C7EE</tt> = InitScreenRegs?()
 
** <tt>17C822-17C862 (65)</tt> = [[Crystal Beans From Dungeon Explorer:InitScreenRegs Struct|Cutscene screen registers initialization structs]]
 
** <tt>17C8BA</tt> = PlaySong()
 
** <tt>17C8CE</tt> = SetLogoScrollFlag()
 
** <tt>17C8D6</tt> = SetOBSEL()
 
** <tt>17C8E9</tt> = PrintScrollingString()
 
** <tt>17C95A</tt> = PutNormalString()
 
** <tt>17D02C</tt> = SetTextWindow()
 
* <tt>17D5E4-17D611 (46)</tt> = Cutscene string pointer table (23 16-bits pointers)
 
* <tt>17D616-17DFC3 (2477)</tt> = Cutscene strings
 
* <tt>17DFC4-17E488 (1221)</tt> = Cutscene engine asm code (string display related)
 
** <tt>17DFC4</tt> = iPrintNormalString(word stringIndex<A>, word startRow<Y>)
 
** <tt>17E09D</tt> = PrepScrollingString()
 
** <tt>17E141</tt> = PrintScrollingString()
 
** <tt>17E1F0</tt> = UpdateBufIndex()
 
** <tt>17E200</tt> = GetNextChar()
 
** <tt>17E22E</tt> = PutChar()
 
** <tt>17E2C7</tt> = LoadTile()
 
** <tt>17E308</tt> = GetTileMapIndex(word tileIndex<$38>)
 
** <tt>17E322</tt> = UpdateTileMap()
 

Revision as of 11:41, 16 January 2012

Overview

This present the layout of the ROM. The start of asm code whose function is known is mentioned under the code block definition.

Core engine

Data bank 1

  • 010000-010663 (1636) = Unknown data (bytes and 16-bits pointers)
  • 010664-0106FD (154) = PCSpriteAnim? (16-bits pointers)
  • 0106FE-010705 (8) = PCAnimNormal?
  • 010706-01070D (8) = PCAnimIdle?
  • 01070E-01070E (1) = PCAnimNul? (0)
  • 01070F-010FCB (2237) = Unknown data (bytes and 16-bits pointers)
  • 010FCC-010FEB (32) = NPCSpriteAnim? (16-bits pointers)
  • 010FEC-011043 (88) = NPC sprite animations
  • 011044-01FFFF (61372) = Unknown data (bytes and 16-bits pointers)

Main game engine

Map data

  • 02EE5E-03E395 (62776) = Map data (includes place name strings)

Dialog data

  • 03E396-03E401 (108) = Dialog section pointer table (36 24-bits pointers)
  • 03E402-03E79D (924) = Dialog string pointer table (308 24-bits pointers)
  • 03E79E-04649A (31997) = Dialog strings
  • 04649B-04FFFA (39776) = Dialog font graphics (2 bpp planar aka GameBoy format)
  • 4FFFB-4FFFF (5) = Unknown data, doesn't seem to be referenced

Character movement sprite graphics

  • 050000-053FFF (16384) = Bard (4 bpp Snes format)
  • 054000-057FFF (16384) = Bowman (4 bpp Snes format)
  • 058000-05BFFF (16384) = Warrior (4 bpp Snes format)
  • 05C000-05FFFF (16384) = Kage (4 bpp Snes format)
  • 060000-063FFF (16384) = Robot (4 bpp Snes format)
  • 064000-067FFF (16384) = Wizard (4 bpp Snes format)
  • 068000-06BFFF (16384) = Monk (4 bpp Snes format)
  • 06C000-06FFFF (16384) = Dragon (4 bpp Snes format)
  • 070000-073FFF (16384) = Fighter (4 bpp Snes format)
  • 074000-077FFF (16384) = Priest (4 bpp Snes format)
  • 078000-07BFFF (16384) = Thief (4 bpp Snes format)
  • 07C000-07FFFF (16384) = Witch (4 bpp Snes format)

Compressed data

Music engine

Cutscene engine