diff options
author | Chris Apers | 2003-12-18 11:47:58 +0000 |
---|---|---|
committer | Chris Apers | 2003-12-18 11:47:58 +0000 |
commit | 3f1d66cf11f4f369e007af95a9eb5aabf07b3939 (patch) | |
tree | 32d961c58df32e8b667c05589cbaead0ad579e64 /scumm/player_v1.cpp | |
parent | ffc068734d5df485ef63d6f81cab467921d2bd26 (diff) | |
download | scummvm-rg350-3f1d66cf11f4f369e007af95a9eb5aabf07b3939.tar.gz scummvm-rg350-3f1d66cf11f4f369e007af95a9eb5aabf07b3939.tar.bz2 scummvm-rg350-3f1d66cf11f4f369e007af95a9eb5aabf07b3939.zip |
PalmOS sound API cannot access globals or functions out of the first segment
svn-id: r11740
Diffstat (limited to 'scumm/player_v1.cpp')
-rw-r--r-- | scumm/player_v1.cpp | 33 |
1 files changed, 32 insertions, 1 deletions
diff --git a/scumm/player_v1.cpp b/scumm/player_v1.cpp index 2ae223cdab..45fe739be0 100644 --- a/scumm/player_v1.cpp +++ b/scumm/player_v1.cpp @@ -132,8 +132,10 @@ void Player_V1::parseSpeakerChunk() { parse_again: _chunk_type = READ_LE_UINT16(_next_chunk); +#ifndef __PALM_OS__ debug(6, "parseSpeakerChunk: sound %d, offset %4x, chunk %x", _current_nr, _next_chunk - _current_data, _chunk_type); +#endif _next_chunk += 2; switch (_chunk_type) { @@ -169,8 +171,10 @@ void Player_V1::parseSpeakerChunk() { _repeat_ctr = READ_LE_UINT16(_next_chunk + 8); _channels[0].freq = _start; _next_chunk += 10; +#ifndef __PALM_OS__ debug(6, "chunk 1: mplex %d, freq %d -> %d step %d x %d", _mplex, _start, _end, _delta, _repeat_ctr); +#endif break; case 2: _start = READ_LE_UINT16(_next_chunk); @@ -179,8 +183,10 @@ void Player_V1::parseSpeakerChunk() { _channels[0].freq = 0; _next_chunk += 6; _forced_level = -1; +#ifndef __PALM_OS__ debug(6, "chunk 2: %d -> %d step %d", _start, _end, _delta); +#endif break; case 3: _start = READ_LE_UINT16(_next_chunk); @@ -189,8 +195,10 @@ void Player_V1::parseSpeakerChunk() { _channels[0].freq = 0; _next_chunk += 6; _forced_level = -1; +#ifndef __PALM_OS__ debug(6, "chunk 3: %d -> %d step %d", _start, _end, _delta); +#endif break; } } @@ -208,15 +216,18 @@ void Player_V1::nextSpeakerCmd() { _time_left = READ_LE_UINT16(_next_chunk); _next_chunk += 2; } +#ifndef __PALM_OS__ debug(7, "nextSpeakerCmd: chunk %d, offset %4x: notelen %d", _chunk_type, _next_chunk - 2 - _current_data, _time_left); - +#endif if (_time_left == 0) { parseSpeakerChunk(); } else { _channels[0].freq = READ_LE_UINT16(_next_chunk); _next_chunk += 2; +#ifndef __PALM_OS__ debug(7, "freq_current: %d", _channels[0].freq); +#endif } break; @@ -265,8 +276,10 @@ void Player_V1::parsePCjrChunk() { parse_again: _chunk_type = READ_LE_UINT16(_next_chunk); +#ifndef __PALM_OS__ debug(6, "parsePCjrChunk: sound %d, offset %4x, chunk %x", _current_nr, _next_chunk - _current_data, _chunk_type); +#endif _next_chunk += 2; switch (_chunk_type) { @@ -351,9 +364,11 @@ parse_again: } *_value_ptr_2 = _start_2; } +#ifndef __PALM_OS__ debug(6, "chunk 1: %d: %d step %d for %d, %d: %d step %d for %d", _value_ptr - (uint*)_channels, _start, _delta, _time_left, _value_ptr_2 - (uint*)_channels, _start_2, _delta_2, _time_left_2); +#endif break; case 2: @@ -363,8 +378,10 @@ parse_again: _channels[0].freq = 0; _next_chunk += 6; _forced_level = -1; +#ifndef __PALM_OS__ debug(6, "chunk 2: %d -> %d step %d", _start, _end, _delta); +#endif break; case 3: set_mplex(READ_LE_UINT16(_next_chunk)); @@ -408,8 +425,10 @@ void Player_V1::nextPCjrCmd() { _channels[i].hull_counter = 1; _channels[i].freq = dummy; } +#ifndef __PALM_OS__ debug(7, "chunk 0: channel %d play %d for %d", i, dummy, _channels[i].notelen); +#endif _channels[i].cmd_ptr += 4; } @@ -483,7 +502,9 @@ void Player_V1::nextPCjrCmd() { return; } set_mplex(_start); +#ifndef __PALM_OS__ debug(7, "chunk 2: mplex %d curve %d", _start, _forced_level); +#endif _forced_level = -_forced_level; break; case 3: @@ -532,14 +553,18 @@ void Player_V1::generateSpkSamples(int16 *data, uint len) { int sample = _forced_level * _volumetable[0]; for (i = 0; i < len; i++) data[2*i] = data[2*i+1] = sample; +#ifndef __PALM_OS__ debug(9, "speaker: %8x: forced one", _tick_len); +#endif } else if (!_level) { return; } } else { squareGenerator(0, _channels[0].freq, 0, 0, data, len); +#ifndef __PALM_OS__ debug(9, "speaker: %8x: freq %d %.1f", _tick_len, _channels[0].freq, 1193000.0 / _channels[0].freq); +#endif } lowPassFilter(data, len); } @@ -556,7 +581,9 @@ void Player_V1::generatePCjrSamples(int16 *data, uint len) { for (i = 0; i < len; i++) data[2*i] = data[2*i+1] = sample; hasdata = true; +#ifndef __PALM_OS__ debug(9, "channel[4]: %8x: forced one", _tick_len); +#endif } for (i = 1; i < 3; i++) { @@ -587,8 +614,10 @@ void Player_V1::generatePCjrSamples(int16 *data, uint len) { } else if (i < 3) { hasdata = true; squareGenerator(i, freq, vol, 0, data, len); +#ifndef __PALM_OS__ debug(9, "channel[%d]: %8x: freq %d %.1f ; volume %d", i, _tick_len, freq, 111860.0 / freq, vol); +#endif } else { int noiseFB = (freq & 4) ? FB_WNOISE : FB_PNOISE; int n = (freq & 3); @@ -596,8 +625,10 @@ void Player_V1::generatePCjrSamples(int16 *data, uint len) { freq = (n == 3) ? 2 * (_channels[2].freq) : 1 << (5 + n); hasdata = true; squareGenerator(i, freq, vol, noiseFB, data, len); +#ifndef __PALM_OS__ debug(9, "channel[%d]: %x: noise freq %d %.1f ; volume %d", i, _tick_len, freq, 111860.0 / freq, vol); +#endif } } |