Class Index | File Index

Classes


Class weasel.ProTrackerMK


Extends weasel.NoiseTracker20.

Defined in: ProTrackerMK.js.

Class Summary
Constructor Attributes Constructor Name and Description
 
weasel.ProTrackerMK(aModuleData, iPlaybackFrequency, iSampleScannerMode)
Create a Lars "Zap" Hamre Protracker module that uses the M.K.
Fields borrowed from class weasel.UltimateSoundTracker121:
NTSC, PAL, TimingOverrides
Method Summary
Method Attributes Method Name and Description
 
Clear the Sequence Position Tracking table as Protracker modules need their Sequence Positions and ROW tracked to find out if a song has looped.
 
Get length of song in milliseconds.
 
Get song position in milliseconds, which is more complicated with Protracker as the BPM speed can change within the song on any row.
 
setSongSpeed(iModuleBPMSpeed)
Set the song speed as Protracker has a different and more accurate BPM mode.
 
setTickSpeed(iTickSpeed)
Set the row tick speed.
 
Protracker uses a more accurate Tempo Timer than Ultimate Soundtracker.
 
timingOverride(iBPMPALNTSC)
Set Clock Constant to BPM, PAL or NTSC Protracker has a wrapper as it needs to recalculate the duration of the module (Protracker has a VBL mode which allows a Tick Speed of 1-255 where as in CIA mode its 1-31).
 
Get the constant used for waiting for the DMA to stop in milliseconds used in Protracker which is the same as Noisetracker 1.1.
Methods borrowed from class weasel.SpreadpointSoundTracker23:
FormatInstrumentTotal, FormatModuleHeaderSize, getSequenceTable, getSongLengthInPatterns
Methods borrowed from class weasel.DOCSoundTracker22:
restartSong
Methods borrowed from class weasel.DOCSoundTracker9:
processTick0Effects
Methods borrowed from class weasel.UltimateSoundTracker121:
changePlaybackFrequency, extractPatterns, fetchRow, findMaximumPatternNumber, getChannel, getCIATimerConstant, getCurrentPatternCell, getCurrentPatternRowPosition, getCurrentSequencePosition, getCurrentTick, getFSTPanningMode, getInstrument, getMasterVolume, getModuleData, getModuleType, getNoiseTrackerLoopQuirkEnabled, getNoteFromPeriod, getNumberOfChannels, getPattern, getPatternNumber, getPatternSizeInBytes, getPlaybackFrequency, getProtracker3SampleOffsetMode, getProtrackerTremoloSawtoothBugMode, getSongSpeed, getTickSpeed, getTimingOverride, getTitle, getVibratoMode, hasSongEnded, numberOfUniquePatternsInSong, play, processEffects, processPattern, setClockConstant, setCurrentSequencePosition, setFST7BitPanningMode, setMasterVolume, setProtracker3SampleOffsetMode, setProtrackerTremoloSawtoothBugMode, setSamplesPerTick, setVibratoMode, startPendingSample
Class Detail
weasel.ProTrackerMK(aModuleData, iPlaybackFrequency, iSampleScannerMode)
Create a Lars "Zap" Hamre Protracker module that uses the M.K. format out of the provided data (which has already passed the module sniffer test).
Author: Warren Willmey 2013.
Parameters:
{Array|Uint8Array} aModuleData
= The Lars "Zap" Hamre Protracker module as a byte array that MUST have passed the module sniffer test.
{int} iPlaybackFrequency
= The playback frequency in hertz to use (e.g. 44100 ).
{weasel.Sample.prototype.SampleScannerMode} iSampleScannerMode
= Scan for IFF Header corruption residue?.
Method Detail
clearVisitedSequenceTable()
Clear the Sequence Position Tracking table as Protracker modules need their Sequence Positions and ROW tracked to find out if a song has looped.

{float} getLengthOfSongInMilliSeconds()
Get length of song in milliseconds.
Returns:
{float} = The length of the song in ms.

{float} getSongPositionInMilliSeconds()
Get song position in milliseconds, which is more complicated with Protracker as the BPM speed can change within the song on any row.
Returns:
{float} = The song position from its beginning in ms.

setSongSpeed(iModuleBPMSpeed)
Set the song speed as Protracker has a different and more accurate BPM mode.
Parameters:
{int} iModuleBPMSpeed
= The song speed in BPM (BPM) [32-255].

setTickSpeed(iTickSpeed)
Set the row tick speed.
Parameters:
{int} iTickSpeed
= The new row tick speed to use (0-255), a value of 0 in Protracker indicates the song has ended. A range of 0-31 is used during CIA/BPM playback, a range of 1-255 is allowed during VBL playback.

{float} tickPlaybackRateInHz()
Protracker uses a more accurate Tempo Timer than Ultimate Soundtracker.
Returns:
{float} = The playback rate in hz.

timingOverride(iBPMPALNTSC)
Set Clock Constant to BPM, PAL or NTSC Protracker has a wrapper as it needs to recalculate the duration of the module (Protracker has a VBL mode which allows a Tick Speed of 1-255 where as in CIA mode its 1-31).
Parameters:
{weasel.UltimateSoundTracker121.TimingOverrides} iBPMPALNTSC
= Use the BPM set in mod | PAL 50hz | NTSC ~59.94hz (actually 60/1.001).

{float} WaitForDMAToStop()
Get the constant used for waiting for the DMA to stop in milliseconds used in Protracker which is the same as Noisetracker 1.1. The Protracker 3 Editor does a very good job of eliminating this delay (although the stand alone replay is different).
Returns:
{float} = The millisecond pause used by this module type.

Documentation generated by JsDoc Toolkit 2.4.0 on Mon Mar 05 2018 18:46:33 GMT-0000 (GMT)