Data AcQuisition And Real-Time Analysis
Scope - Spectrum - Spectrogram - Signal Generator
Software for Windows
Science with your Sound Card!
The following is from the Daqarta Help system:



Spectrum Analyzer

Signal Generator

(Absolutely FREE!)


Pitch Tracker


DaqMusiq Generator
(Free Music... Forever!)

Engine Simulator

LCR Meter

Remote Operation

DC Measurements

True RMS Voltmeter

Sound Level Meter

Frequency Counter
    Spectral Event

    MHz Frequencies

Data Logger

Waveform Averager


Post-Stimulus Time
Histogram (PSTH)

THD Meter

IMD Meter

Precision Phase Meter

Pulse Meter

Macro System

Multi-Trace Arrays

Trigger Controls


Spectral Peak Track

Spectrum Limit Testing

Direct-to-Disk Recording



Frequency response

Distortion measurement

Speech and music

Microphone calibration

Loudspeaker test

Auditory phenomena

Musical instrument tuning

Animal sound

Evoked potentials

Rotating machinery


Product test

Contact us about
your application!

MIDI Buffer Set Pointers Command

Changes: BSvb.i1=i2

The Buffer Set Pointers (BS) command is used in a MIDI Changes script to set the start and end points of the active portion of an input buffer. Notes will be played from the specified start to the end, then repeat from the start again. This command only works with voice buffers, not Velocity, Note, or Chord Patterns.

Set Pointers allows a single buffer to be used as many smaller buffers, which you can activate as needed during a performance. You can also vary the length of a single passage by including more or less notes at the end. Or you can move both the start and end by the same amount, keeping the passage the same length but allowing it to evolve.

The format for Buffer Set Pointers is BSvb.i1=i2, where v is Voice number 1-8, and b is buffer number 1-4. i1 is the start position and i2 is the end position. If i1 is greater than i2 the specfied buffer section will be played in reverse.

i1 and i2 may use any unsigned integer or valid expression, including current MIDI control values, random values, current computer keyboard states or mouse position, input or buffered notes, oscillators, and User Variables.

Neither i1 nor i2 can be greater than the last occupied position in the buffer, as established by a prior Buffer Copy, eXchange, Pivot, Add Value, or Fill command. If greater, it will be limited to the last valid position.

Note: The first time you put notes into an empty buffer (via one of the above commands) the start pointer is set to the start of the buffer, (not the start of the new notes), and the end pointer is set to the end of the new notes. After that, commands may install notes past the end pointer (up to the maximum 255 position) without affecting pointers. The BS command is then required to change pointers.

Note: Buffer pointers may be set even though a buffer has not been selected as an input for any Voice.

Note: There is only a single set of pointers for each buffer. Multiple voices may select the same buffer for use, but each note used will advance the buffer pointer. The voices will get dealt the notes in a "round robin" fashion, with the buffer repeating from the start as needed. See the Input Select topic for more details, especially regarding the effect of Hold Beats. If you want to avoid this interaction but still want each voice to use the same buffer contents, make copies of that buffer for each voice.

See also Changes Script Buffer Operations, Changes Script Overview, Changes Script Editor, MIDI Voice Setup Dialogs, Pitch-to-MIDI dialog, Pitch Track Toolbox - Overview


Questions? Comments? Contact us!

We respond to ALL inquiries, typically within 24 hrs.
Over 35 Years of Innovative Instrumentation
© Copyright 2007 - 2023 by Interstellar Research
All rights reserved