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.
Crystal Beans from Dungeon Explorer/Patterns: Difference between revisions
Jump to navigation
Jump to search
(Created page) |
m (Hawk moved page Crystal Beans From Dungeon Explorer/Patterns to Crystal Beans from Dungeon Explorer/Patterns) |
||
(5 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
{{subpage}} | |||
{{Infobox table|name=Patterns | |||
|game=Crystal Beans From Dungeon Explorer | |||
|loc=ROM | |||
|start=0x121CC7 | |||
|end=0x12A08C | |||
|numentries=92 | |||
|entrylength=variable | |||
|totallength=33734 bytes (0x83C6) | |||
}} | |||
Example | The '''Patterns''' describes the [[Crystal Beans From Dungeon Explorer:Instruments|instruments]] and the channels used in songs. | ||
{{clear}} | |||
==Format== | |||
===Instrument used=== | |||
{{table el|len=variable|loc=0x0-?|valrange=0-60,255 (0x0-0x3C, 0xFF)}} | |||
List of instrument indices (1 byte each) terminated by a $FF byte | |||
===Number of channel pointers in pattern=== | |||
{{table el|len=1|loc=variable|valrange=0-255 (0x0-0xFF)}} | |||
===Channel pointers=== | |||
{{table el|len=Number of channel pointers in pattern * 2|loc=variable|valrange=?}} | |||
List of 16-bits pointers using this pointer's address + 2 as a base | |||
===Channel data=== | |||
[[Crystal Beans From Dungeon Explorer:Channel Data|Channel data]] | |||
==Example== | |||
<pre> | <pre> | ||
0x121CC9: 00 01 02 03 04 05 06 07 FF 07 0C 00 10 01 E5 01 | |||
0x121CD9: C3 02 5B 04 98 04 5F 05 ... | |||
</pre> | </pre> | ||
* <tt> | * <tt>0x121CC9</tt>: Instrument used = 0, 1, 2, 3, 4, 5, 6, 7 | ||
* <tt> | * <tt>0x121CD2</tt>: Number of channels = 7 | ||
* <tt> | * <tt>0x121CD3</tt>: Channel pointer 0 = <tt>0x121CE1 (0x121CD5 + 0x000C)</tt> | ||
* <tt> | * <tt>0x121CD5</tt>: Channel pointer 1 = <tt>0x121DE7 (0x121CD7 + 0x0110)</tt> | ||
* <tt> | * <tt>0x121CD7</tt>: Channel pointer 2 = <tt>0x121EBE (0x121CD9 + 0x01E5)</tt> | ||
* <tt> | * <tt>0x121CD9</tt>: Channel pointer 3 = <tt>0x121F9E (0x121CDB + 0x02C3)</tt> | ||
* <tt> | * <tt>0x121CDB</tt>: Channel pointer 4 = <tt>0x122138 (0x121CDD + 0x045B)</tt> | ||
* <tt> | * <tt>0x121CDD</tt>: Channel pointer 5 = <tt>0x122177 (0x121CDF + 0x0498)</tt> | ||
* <tt> | * <tt>0x121CDF</tt>: Channel pointer 6 = <tt>0x122240 (0x121CE1 + 0x055F)</tt> | ||
==See also== | |||
* [[Crystal Beans From Dungeon Explorer:Instruments|Instruments]] | |||
* [[Crystal Beans From Dungeon Explorer:Channel Data|Channel Data]] |
Latest revision as of 21:03, 28 January 2024
This is a sub-page of Crystal Beans from Dungeon Explorer.
Patterns | |
Game | Crystal Beans From Dungeon Explorer |
Start Address | 0x121CC7 |
End Address | 0x12A08C |
# of Entries | 92 |
Entry Length | variable |
Total Length | 33734 bytes (0x83C6) |
Back to the ROM map |
The Patterns describes the instruments and the channels used in songs.
Format
Instrument used
- Length: variable
- Offset within entry: 0x0-?
- Range of values: 0-60,255 (0x0-0x3C, 0xFF)
List of instrument indices (1 byte each) terminated by a $FF byte
Number of channel pointers in pattern
- Length: 1
- Offset within entry: variable
- Range of values: 0-255 (0x0-0xFF)
Channel pointers
- Length: Number of channel pointers in pattern * 2
- Offset within entry: variable
- Range of values: ?
List of 16-bits pointers using this pointer's address + 2 as a base
Channel data
Example
0x121CC9: 00 01 02 03 04 05 06 07 FF 07 0C 00 10 01 E5 01 0x121CD9: C3 02 5B 04 98 04 5F 05 ...
- 0x121CC9: Instrument used = 0, 1, 2, 3, 4, 5, 6, 7
- 0x121CD2: Number of channels = 7
- 0x121CD3: Channel pointer 0 = 0x121CE1 (0x121CD5 + 0x000C)
- 0x121CD5: Channel pointer 1 = 0x121DE7 (0x121CD7 + 0x0110)
- 0x121CD7: Channel pointer 2 = 0x121EBE (0x121CD9 + 0x01E5)
- 0x121CD9: Channel pointer 3 = 0x121F9E (0x121CDB + 0x02C3)
- 0x121CDB: Channel pointer 4 = 0x122138 (0x121CDD + 0x045B)
- 0x121CDD: Channel pointer 5 = 0x122177 (0x121CDF + 0x0498)
- 0x121CDF: Channel pointer 6 = 0x122240 (0x121CE1 + 0x055F)