mirror of https://github.com/AxioDL/amuse.git
Minor adjustments to test PC SNG data extract
This commit is contained in:
parent
22a8534887
commit
c7f093c5ee
|
@ -814,12 +814,14 @@ std::vector<uint8_t> SongConverter::SongToMIDI(const unsigned char* data, Target
|
|||
while (true)
|
||||
{
|
||||
/* Load next command */
|
||||
if (*reinterpret_cast<const uint32_t*>(trk->m_data) == 0xffff0000)
|
||||
if ((song.m_bigEndian && *reinterpret_cast<const uint32_t*>(trk->m_data) == 0xffff0000) ||
|
||||
(!song.m_bigEndian && *reinterpret_cast<const uint32_t*>(trk->m_data) == 0xffff))
|
||||
{
|
||||
/* End of channel */
|
||||
trk->m_data = nullptr;
|
||||
break;
|
||||
}
|
||||
#if 0
|
||||
else if (trk->m_data[0] & 0x80 && trk->m_data[1] & 0x80)
|
||||
{
|
||||
/* Control change */
|
||||
|
@ -835,6 +837,7 @@ std::vector<uint8_t> SongConverter::SongToMIDI(const unsigned char* data, Target
|
|||
events.emplace(regStart + trk->m_eventWaitCountdown, Event{ProgEvent{}, trk->m_midiChan, prog});
|
||||
trk->m_data += 2;
|
||||
}
|
||||
#endif
|
||||
else
|
||||
{
|
||||
if ((trk->m_data[2] & 0x80) != 0x80)
|
||||
|
|
|
@ -348,12 +348,14 @@ bool SongState::Track::advance(Sequencer& seq, int32_t ticks)
|
|||
}
|
||||
|
||||
/* Load next command */
|
||||
if (*reinterpret_cast<const uint32_t*>(m_data) == 0xffff0000)
|
||||
if ((m_parent.m_bigEndian && *reinterpret_cast<const uint32_t*>(m_data) == 0xffff0000) ||
|
||||
(!m_parent.m_bigEndian && *reinterpret_cast<const uint32_t*>(m_data) == 0xffff))
|
||||
{
|
||||
/* End of channel */
|
||||
m_data = nullptr;
|
||||
return !m_nextRegion->indexValid();
|
||||
}
|
||||
# if 0
|
||||
else if (m_data[0] & 0x80 && m_data[1] & 0x80)
|
||||
{
|
||||
/* Control change */
|
||||
|
@ -369,6 +371,7 @@ bool SongState::Track::advance(Sequencer& seq, int32_t ticks)
|
|||
seq.setChanProgram(m_midiChan, prog);
|
||||
m_data += 2;
|
||||
}
|
||||
#endif
|
||||
else
|
||||
{
|
||||
if ((m_data[2] & 0x80) != 0x80)
|
||||
|
|
Loading…
Reference in New Issue