I have one, so I opened it up, and found that's it's one I customized from the HiVel script. Sorry for the long post, but this is the easiest way to share it. Just paste into Notepad, and save as LoVel.cal:
;;; David M Baay 11/18/2009 from Robert C. Prince's HIVEL.CAL
;;;
;;;
;;;
;;;
;;; LOVEL.CAL
;;;
;;; This is a CAL program that finds the lowest velocity for you.
;;; It allows you to abort the pgm upon finding a velocity of 0.
;;;
;;;
;;;
;;;
;;;
;;; *****************************************************************
;;; Prolog
(do
; set variables
(int HoldLo 127) ; holds the lowest velocity found thus far
(dword LoTime 0) ; time of the lowest velocity
(int c 0) ; counter for notes processed
(int TEP) ; total events processed
;close off the do paren and the prolog
)
;;; *****************************************************************
;;; Body
;;;
(do
; output message to user
(message
"Lowest Velocity: " HoldLo
" at Time: " (meas LoTime) ": " (beat LoTime) ": " (tick LoTime)
" Notes: " c
" Events: " TEP
)
(if (== Event.Kind NOTE)
; If a note event, do all the following
(do
; bump the counter
(++ c)
; is the velocity lower than the lowest found thus far?
(if (< Note.Vel HoldLo)
; yes it is, so do all the following
(do
; put the Note.Vel in HoldLo
(= HoldLo Note.Vel)
; put the event time in LoTime
(= LoTime Event.Time)
; is the lowest velocity 0?
(if (== HoldLo 0)
; yes lowest vel is 0, so allow user to abort
(pause "Lowest velocity found: " HoldLo
" at Time: " (meas LoTime)
": " (beat LoTime)
": " (tick LoTime)
" Press Esc to abort . . ."
)
; no lowest vel is not 0, so continue the search
NIL
; close the is lowest velocity 0 paren
)
; close the yes it's lowest vel thus far do paren
)
; NO it is not the lowest velocity thus far, so go on
NIL
; close the if lowest vel thus far paren
)
; close yes it is a note do loop
)
; No, it is not a note event
NIL
; close if event = note paren
)
; bump up total events processed
(++ TEP)
; close body/do paren
)
;;; ******************************************************************
;;; Epilog
;;;
(do
(pause "Lowest Velocity Found: " HoldLo " at time "
(meas LoTime) ": " (beat LoTime) ": " (tick LoTime)
" Press any key to continue"
)
; move cursor to LoTime
(= Now LoTime)
)