|
|
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()
| |
This present the layout of the ROM. The start of asm code whose function is known is mentioned under the code block definition.