ProTrackR: Manipulate and Play 'ProTracker' Modules

'ProTracker' is a popular music tracker to sequence music on a Commodore Amiga machine. This package offers the opportunity to import, export, manipulate and play 'ProTracker' module files. Even though the file format could be considered archaic, it still remains popular to this date. This package intends to contribute to this popularity and therewith keeping the legacy of 'ProTracker' and the Commodore Amiga alive.

AuthorPepijn de Vries [aut, cre, dtc]
Date of publication2016-11-25 19:47:57
MaintainerPepijn de Vries <>

View on CRAN

Man pages

appendPattern: Append a PTPattern to a PTModule

as.character: Character representation of ProTrackR objects

as.raw: Extract and replace raw data

clearSamples: Clear all samples from module

clearSong: Clear all pattern info from module

deletePattern: Remove a PTPattern table from a PTModule object

effect: Extract or replace effect/trigger codes

fineTune: Fine tune a PTSample

fix.PTModule: Attempt to fix PTModule to ProTracker specs

funk_table: ProTracker Funk Table

loopLength: The loop length of a PTSample

loopSample: Looped waveform of a sample

loopStart: The loop start position of a PTSample

loopState: Get PTSample loop state

modArchive: ModArchive helper functions

mod.intro: Example of a PTModule object

modToWave: Convert a PTModule object into an audio Wave object

moduleSize: Get module file size

name: Obtain or replace the name of a PTModule or PTSample

note: Extract or replace a note

noteManipulation: Raise or lower notes and octaves

noteToPeriod: Extract period value for a specific note

nybble: Get the high or low nybble of a raw value

nybbleToSignedInt: Get signed integer values from nybbles

octave: Extract or replace an octave

pasteBlock: Paste a block of PTCell data into a PTPattern

patternLength: Get the number of PTPattern tables in a PTModule

patternOrder: Get the pattern order table

patternOrderLength: Get the length of the pattern order table

paula_clock: Paula clock table

period_table: ProTracker Period Table

periodToChar: Get the note and octave from period table

playingtable: Generate a table for playing a PTModule object

playMod: Play PTModule objects

playSample: Play audio samples

playWave: Play Wave objects

plot: Plot a PTModule object

print: Print ProTrackR objects

proTrackerVibrato: Get the vibrato table used by ProTracker

ProTrackR: Manipulate and play ProTracker Modules. A description of the...

PTBlock: Select and copy a range of PTCells into a PTBlock

PTCell-class: The PTCell class

PTCell-method: Coerce to or replace PTCell

PTModule-class: The PTModule class

PTPattern-class: The PTPattern class

PTPattern-method: Coerce to or replace PTPattern

PTSample-class: The PTSample class

PTSample-method: Coerce to or replace PTSample

PTTrack-class: The PTTrack class

PTTrack-method: Coerce to or replace PTTrack

rawToCharNull: Convert raw vectors into a character string

rawToSignedInt: Convert a raw vector into signed integers (short)

rawToUnsignedInt: Convert raw vector into a single unsigned integer value

read.module: Read a ProTracker module file

read.sample: Read an audio file and coerce to a PTSample object

resample: Resample data

sampleLength: Get the length of a PTSample

sampleNumber: Extract or replace a sample number

sampleRate: Calculate the sample rate for a note or period value

signedIntToNybble: Convert a signed integer to a nybble in raw data.

signedIntToRaw: Convert signed integers (short) into a raw vector

trackerFlag: Tracker flag indicating version compatibility

unsignedIntToRaw: Convert unsigned integer into a raw vector

volume: Default playback volume of PTSample

waveform: Extract or replace a PTSample waveform

write.module: Export an PTModule object as a ProTracker module file

write.sample: Write a PTSample object to an audio file

Files in this package

ProTrackR/man/appendPattern.Rd ProTrackR/man/clearSong.Rd ProTrackR/man/PTSample-method.Rd
ProTrackR/man/unsignedIntToRaw.Rd ProTrackR/man/read.sample.Rd ProTrackR/man/patternLength.Rd ProTrackR/man/funk_table.Rd ProTrackR/man/sampleLength.Rd ProTrackR/man/nybbleToSignedInt.Rd ProTrackR/man/loopLength.Rd ProTrackR/man/PTTrack-class.Rd ProTrackR/man/modArchive.Rd ProTrackR/man/patternOrderLength.Rd ProTrackR/man/PTCell-class.Rd ProTrackR/man/clearSamples.Rd ProTrackR/man/noteToPeriod.Rd ProTrackR/man/as.character.Rd ProTrackR/man/loopStart.Rd ProTrackR/man/PTPattern-class.Rd ProTrackR/man/rawToUnsignedInt.Rd ProTrackR/man/waveform.Rd ProTrackR/man/sampleRate.Rd ProTrackR/man/rawToSignedInt.Rd ProTrackR/man/playWave.Rd ProTrackR/man/noteManipulation.Rd ProTrackR/man/PTModule-class.Rd ProTrackR/man/periodToChar.Rd ProTrackR/man/deletePattern.Rd ProTrackR/man/fineTune.Rd ProTrackR/man/moduleSize.Rd ProTrackR/man/read.module.Rd ProTrackR/man/as.raw.Rd ProTrackR/man/resample.Rd ProTrackR/man/playMod.Rd ProTrackR/man/paula_clock.Rd ProTrackR/man/name.Rd ProTrackR/man/sampleNumber.Rd ProTrackR/man/PTCell-method.Rd ProTrackR/man/octave.Rd ProTrackR/man/mod.intro.Rd ProTrackR/man/PTBlock.Rd ProTrackR/man/modToWave.Rd ProTrackR/man/fix.PTModule.Rd ProTrackR/man/playSample.Rd ProTrackR/man/playingtable.Rd ProTrackR/man/signedIntToNybble.Rd ProTrackR/man/proTrackerVibrato.Rd ProTrackR/man/patternOrder.Rd ProTrackR/man/loopSample.Rd ProTrackR/man/period_table.Rd ProTrackR/man/PTPattern-method.Rd ProTrackR/man/trackerFlag.Rd ProTrackR/man/loopState.Rd ProTrackR/man/nybble.Rd ProTrackR/man/PTTrack-method.Rd ProTrackR/man/volume.Rd ProTrackR/man/print.Rd ProTrackR/man/PTSample-class.Rd ProTrackR/man/write.module.Rd ProTrackR/man/plot.Rd ProTrackR/man/ProTrackR.Rd ProTrackR/man/pasteBlock.Rd ProTrackR/man/signedIntToRaw.Rd ProTrackR/man/write.sample.Rd ProTrackR/man/effect.Rd ProTrackR/man/rawToCharNull.Rd ProTrackR/man/note.Rd

Questions? Problems? Suggestions? or email at

Please suggest features or report bugs with the GitHub issue tracker.

All documentation is copyright its authors; we didn't write any of that.