[Scummvm-cvs-logs] scummvm master -> 90999d8f8ca9bc0554dcb353a4ee143299bf8bc3

DrMcCoy drmccoy at drmccoy.de
Fri Jun 15 03:08:19 CEST 2012


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
90999d8f8c AUDIO: Implement a missing Protracker feature


Commit: 90999d8f8ca9bc0554dcb353a4ee143299bf8bc3
    https://github.com/scummvm/scummvm/commit/90999d8f8ca9bc0554dcb353a4ee143299bf8bc3
Author: Sven Hesse (drmccoy at users.sourceforge.net)
Date: 2012-06-14T18:06:14-07:00

Commit Message:
AUDIO: Implement a missing Protracker feature

When a row has a new period, but no new sample, restart the track's
last sample (except when we're doing portamento).

Changed paths:
    audio/mods/protracker.cpp



diff --git a/audio/mods/protracker.cpp b/audio/mods/protracker.cpp
index 084b0ed..1e18d5a 100644
--- a/audio/mods/protracker.cpp
+++ b/audio/mods/protracker.cpp
@@ -61,6 +61,7 @@ private:
 
 	struct {
 		byte sample;
+		byte lastSample;
 		uint16 period;
 		Offset offset;
 
@@ -184,6 +185,7 @@ void ProtrackerStream::updateRow() {
 				_track[track].vibratoPos = 0;
 			}
 			_track[track].sample = note.sample;
+			_track[track].lastSample = note.sample;
 			_track[track].finetune = _module.sample[note.sample - 1].finetune;
 			_track[track].vol = _module.sample[note.sample - 1].vol;
 		}
@@ -194,7 +196,9 @@ void ProtrackerStream::updateRow() {
 					_track[track].period = _module.noteToPeriod(note.note, _track[track].finetune);
 				else
 					_track[track].period = note.period;
+
 				_track[track].offset = Offset(0);
+				_track[track].sample = _track[track].lastSample;
 			}
 		}
 






More information about the Scummvm-git-logs mailing list