public interface EsxFile
| Address (start) | Address (end) | Total Size | Notes |
|---|---|---|---|
| 0x00000000 | 0x00000020 | 32 bytes | 32 unknown bytes starting with: K O R G . . . 0x71 E S X |
| 0x00000020 | 0x000000E0 | 192 bytes | See GlobalParameters |
| 0x000000E0 | 0x00000200 | 288 bytes | Unknown / Reserved Bytes |
| 0x00000200 | 0x0010BA00 | 1,095,680 bytes | 256 patterns at 4280 bytes each See Pattern |
| 0x0010BA00 | 0x00130000 | 148,992 bytes | Unknown / Reserved Bytes |
| 0x00130000 | 0x00138400 | 33,792 bytes | 64 songs at 528 bytes each See Song |
| 0x00138400 | 0x0015F500 | 160,000 bytes | Up to 20000 song events at 8 bytes each See SongEvent |
| 0x0015F500 | 0x001B0000 | 330,496 Bytes | Unknown / Reserved Bytes |
| 0x001B0000 | 0x001B0020 | 32 bytes | 32 unknown bytes starting with: K O R G . . . 0x71 B P S |
| 0x001B0020 | 0x001B0024 | 4 bytes | Number of mono samples being used |
| 0x001B0024 | 0x001B0028 | 4 bytes | Number of stereo samples being used |
| 0x001B0028 | 0x001B002C | 4 bytes | Current Sample Offset |
| 0x001B002C | 0x001B0100 | 212 bytes | Unknown / Reserved Bytes |
| 0x001B0100 | 0x001B2900 | 10,240 bytes | 256 mono sample headers at 40 bytes each See SampleSee initHeaderMono |
| 0x001B2900 | 0x001B3F00 | 5,632 bytes | 128 stereo sample headers at 44 bytes each See SampleSee initHeaderStereo |
| 0x001B3F00 | 0x001B4200 | 768 bytes | Unknown / Reserve Bytes |
| 0x001B4200 | 0x00250000 | 524,288 bytes | Slice Data: 256 slices at 2048 bytes each See Slice Array |
| 0x00250000 | 0x01A50010 | 25,165,824 bytes (max) | Sample Data |
The following features are supported:
Original Non Audio DataGlobal ParametersPatternsSongsSamplesEmpty PatternEmpty SongMax Sample OffsetMem Used In BytesMem Used In SecondsMem Free In BytesMem Free In SecondsNum Patterns EmptyNum Patterns Not EmptyNum Samples EmptyNum Samples Not EmptyNum Samples Mono EmptyNum Samples Mono Not EmptyNum Samples Stereo EmptyNum Samples Stereo Not EmptyNum Songs EmptyNum Songs Not EmptySync Patterns On Move EnabledSync Samples On Move EnabledEsxPackage.getEsxFile()| Modifier and Type | Method and Description |
|---|---|
Pattern |
getEmptyPattern()
Returns the value of the 'Empty Pattern' containment reference.
|
Song |
getEmptySong()
Returns the value of the 'Empty Song' containment reference.
|
GlobalParameters |
getGlobalParameters()
Returns the value of the 'Global Parameters' containment reference.
|
int |
getMaxSampleOffset()
Returns the value of the 'Max Sample Offset' attribute.
|
int |
getMemFreeInBytes()
Returns the value of the 'Mem Free In Bytes' attribute.
|
float |
getMemFreeInSeconds()
Returns the value of the 'Mem Free In Seconds' attribute.
|
int |
getMemUsedInBytes()
Returns the value of the 'Mem Used In Bytes' attribute.
|
float |
getMemUsedInSeconds()
Returns the value of the 'Mem Used In Seconds' attribute.
|
int |
getNumPatternsEmpty()
Returns the value of the 'Num Patterns Empty' attribute.
|
int |
getNumPatternsNotEmpty()
Returns the value of the 'Num Patterns Not Empty' attribute.
|
int |
getNumSamplesEmpty()
Returns the value of the 'Num Samples Empty' attribute.
|
int |
getNumSamplesMonoEmpty()
Returns the value of the 'Num Samples Mono Empty' attribute.
|
int |
getNumSamplesMonoNotEmpty()
Returns the value of the 'Num Samples Mono Not Empty' attribute.
|
int |
getNumSamplesNotEmpty()
Returns the value of the 'Num Samples Not Empty' attribute.
|
int |
getNumSamplesStereoEmpty()
Returns the value of the 'Num Samples Stereo Empty' attribute.
|
int |
getNumSamplesStereoNotEmpty()
Returns the value of the 'Num Samples Stereo Not Empty' attribute.
|
int |
getNumSongsEmpty()
Returns the value of the 'Num Songs Empty' attribute.
|
int |
getNumSongsNotEmpty()
Returns the value of the 'Num Songs Not Empty' attribute.
|
byte[] |
getOriginalNonAudioData()
Returns the value of the 'Original Non Audio Data' attribute.
|
Pattern |
getPatternFromPointer(int patternPointer) |
|
getPatterns()
Returns the value of the 'Patterns' containment reference list.
|
Sample |
getSampleFromPointer(int samplePointer) |
|
getSamples()
Returns the value of the 'Samples' containment reference list.
|
|
getSongs()
Returns the value of the 'Songs' containment reference list.
|
void |
init(byte[] b) |
void |
init(byte[] b,
IProgressMonitor monitor) |
boolean |
isSyncPatternsOnMoveEnabled()
Returns the value of the 'Sync Patterns On Move Enabled' attribute.
|
boolean |
isSyncSamplesOnMoveEnabled()
Returns the value of the 'Sync Samples On Move Enabled' attribute.
|
void |
setAllOffsets() |
void |
setEmptyPattern(Pattern value)
Sets the value of the '
Empty Pattern' containment reference. |
void |
setEmptySong(Song value)
Sets the value of the '
Empty Song' containment reference. |
void |
setGlobalParameters(GlobalParameters value)
Sets the value of the '
Global Parameters' containment reference. |
void |
setMaxSampleOffset(int value)
Sets the value of the '
Max Sample Offset' attribute. |
void |
setOriginalNonAudioData(byte[] value)
Sets the value of the '
Original Non Audio Data' attribute. |
void |
setSyncPatternsOnMoveEnabled(boolean value)
Sets the value of the '
Sync Patterns On Move Enabled' attribute. |
void |
setSyncSamplesOnMoveEnabled(boolean value)
Sets the value of the '
Sync Samples On Move Enabled' attribute. |
byte[] |
toByteArray() |
byte[] |
toByteArray(IProgressMonitor monitor) |
boolean |
validMemFreeInBytes(DiagnosticChain diagnostics,
java.util.Map<java.lang.Object,java.lang.Object> context) |
byte[] getOriginalNonAudioData()
If the meaning of the 'Original Non Audio Data' attribute isn't clear, there really should be more of a description here...
setOriginalNonAudioData(byte[]),
EsxPackage.getEsxFile_OriginalNonAudioData()void setOriginalNonAudioData(byte[] value)
Original Non Audio Data' attribute.
value - the new value of the 'Original Non Audio Data' attribute.getOriginalNonAudioData()GlobalParameters getGlobalParameters()
If the meaning of the 'Global Parameters' containment reference isn't clear, there really should be more of a description here...
setGlobalParameters(GlobalParameters),
EsxPackage.getEsxFile_GlobalParameters()void setGlobalParameters(GlobalParameters value)
Global Parameters' containment reference.
value - the new value of the 'Global Parameters' containment reference.getGlobalParameters()getPatterns()
Pattern.
If the meaning of the 'Patterns' containment reference list isn't clear, there really should be more of a description here...
EsxPackage.getEsxFile_Patterns()getSongs()
Song.
If the meaning of the 'Songs' containment reference list isn't clear, there really should be more of a description here...
EsxPackage.getEsxFile_Songs()getSamples()
Sample.
If the meaning of the 'Samples' containment reference list isn't clear, there really should be more of a description here...
EsxPackage.getEsxFile_Samples()Pattern getEmptyPattern()
If the meaning of the 'Empty Pattern' containment reference isn't clear, there really should be more of a description here...
setEmptyPattern(Pattern),
EsxPackage.getEsxFile_EmptyPattern()void setEmptyPattern(Pattern value)
Empty Pattern' containment reference.
value - the new value of the 'Empty Pattern' containment reference.getEmptyPattern()Song getEmptySong()
If the meaning of the 'Empty Song' containment reference isn't clear, there really should be more of a description here...
setEmptySong(Song),
EsxPackage.getEsxFile_EmptySong()void setEmptySong(Song value)
Empty Song' containment reference.
value - the new value of the 'Empty Song' containment reference.getEmptySong()int getMaxSampleOffset()
"0".
If the meaning of the 'Max Sample Offset' attribute isn't clear, there really should be more of a description here...
setMaxSampleOffset(int),
EsxPackage.getEsxFile_MaxSampleOffset()void setMaxSampleOffset(int value)
Max Sample Offset' attribute.
value - the new value of the 'Max Sample Offset' attribute.getMaxSampleOffset()int getMemUsedInBytes()
"0".
If the meaning of the 'Mem Used In Bytes' attribute isn't clear, there really should be more of a description here...
EsxPackage.getEsxFile_MemUsedInBytes()float getMemUsedInSeconds()
"0".
If the meaning of the 'Mem Used In Seconds' attribute isn't clear, there really should be more of a description here...
EsxPackage.getEsxFile_MemUsedInSeconds()int getMemFreeInBytes()
"0".
If the meaning of the 'Mem Free In Bytes' attribute isn't clear, there really should be more of a description here...
EsxPackage.getEsxFile_MemFreeInBytes()float getMemFreeInSeconds()
"0".
If the meaning of the 'Mem Free In Seconds' attribute isn't clear, there really should be more of a description here...
EsxPackage.getEsxFile_MemFreeInSeconds()int getNumPatternsEmpty()
"0".
If the meaning of the 'Num Patterns Empty' attribute isn't clear, there really should be more of a description here...
EsxPackage.getEsxFile_NumPatternsEmpty()int getNumPatternsNotEmpty()
"0".
If the meaning of the 'Num Patterns Not Empty' attribute isn't clear, there really should be more of a description here...
EsxPackage.getEsxFile_NumPatternsNotEmpty()int getNumSamplesEmpty()
"0".
If the meaning of the 'Num Samples Empty' attribute isn't clear, there really should be more of a description here...
EsxPackage.getEsxFile_NumSamplesEmpty()int getNumSamplesNotEmpty()
"0".
If the meaning of the 'Num Samples Not Empty' attribute isn't clear, there really should be more of a description here...
EsxPackage.getEsxFile_NumSamplesNotEmpty()int getNumSamplesMonoEmpty()
"0".
If the meaning of the 'Num Samples Mono Empty' attribute isn't clear, there really should be more of a description here...
EsxPackage.getEsxFile_NumSamplesMonoEmpty()int getNumSamplesMonoNotEmpty()
"0".
If the meaning of the 'Num Samples Mono Not Empty' attribute isn't clear, there really should be more of a description here...
EsxPackage.getEsxFile_NumSamplesMonoNotEmpty()int getNumSamplesStereoEmpty()
"0".
If the meaning of the 'Num Samples Stereo Empty' attribute isn't clear, there really should be more of a description here...
EsxPackage.getEsxFile_NumSamplesStereoEmpty()int getNumSamplesStereoNotEmpty()
"0".
If the meaning of the 'Num Samples Stereo Not Empty' attribute isn't clear, there really should be more of a description here...
EsxPackage.getEsxFile_NumSamplesStereoNotEmpty()int getNumSongsEmpty()
"0".
If the meaning of the 'Num Songs Empty' attribute isn't clear, there really should be more of a description here...
EsxPackage.getEsxFile_NumSongsEmpty()int getNumSongsNotEmpty()
"0".
If the meaning of the 'Num Songs Not Empty' attribute isn't clear, there really should be more of a description here...
EsxPackage.getEsxFile_NumSongsNotEmpty()boolean isSyncPatternsOnMoveEnabled()
"true".
If the meaning of the 'Sync Patterns On Move Enabled' attribute isn't clear, there really should be more of a description here...
setSyncPatternsOnMoveEnabled(boolean),
EsxPackage.getEsxFile_SyncPatternsOnMoveEnabled()void setSyncPatternsOnMoveEnabled(boolean value)
Sync Patterns On Move Enabled' attribute.
value - the new value of the 'Sync Patterns On Move Enabled' attribute.isSyncPatternsOnMoveEnabled()boolean isSyncSamplesOnMoveEnabled()
"true".
If the meaning of the 'Sync Samples On Move Enabled' attribute isn't clear, there really should be more of a description here...
setSyncSamplesOnMoveEnabled(boolean),
EsxPackage.getEsxFile_SyncSamplesOnMoveEnabled()void setSyncSamplesOnMoveEnabled(boolean value)
Sync Samples On Move Enabled' attribute.
value - the new value of the 'Sync Samples On Move Enabled' attribute.isSyncSamplesOnMoveEnabled()Pattern getPatternFromPointer(int patternPointer)
Sample getSampleFromPointer(int samplePointer)
void init(byte[] b)
void init(byte[] b,
IProgressMonitor monitor)
void setAllOffsets()
byte[] toByteArray()
byte[] toByteArray(IProgressMonitor monitor)
boolean validMemFreeInBytes(DiagnosticChain diagnostics,
java.util.Map<java.lang.Object,java.lang.Object> context)