[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Ivory audio, sys:%beep, slide
Has anyone produced trivial beeps and sounds on an Ivory machine
I would like to make a pleasant tea cattle whistle sound when my tea
timer expires. This could be as simple as modulating the pitch either
in fixed steps, or in a sliding note, while changing the loudness.
There appear to be two obvious solutions, one, to use SYS:%SLIDE, the
other is to steal something from SYS:EXAMPLES;AUDIO-EXAMPLES.LISP.
Problem: Firstly, SYS:%SLIDE does not work on the XL1200 console and
SYS:%BEEP beeps at the same tone regardless of what half-wavelength
value it is given. Secondly, the digital audio facilities, described in
the DocEx, pertain to the 36xx family and not to the Ivory machines.
Are there any facilities on the Ivory machines for modulating pitch, and
for generating sliding tones?
Here is the tea timer I am using now:
(defun brew-tea (&optional (time 4))
(sleep (* time 60))
(let ((usual-loudness (sys:console-volume)))
(setf (sys:console-volume) 1)
(sys:%beep (round (round 1000000. 440.) 2) 20000.)
(setf (sys:console-volume) .9)
(sys:%beep (round (round 1000000. 880.) 2) 100000.)
(setf (sys:console-volume) .8)
(sys:%beep (round (round 1000000. 4400.) 2) 500000.)
(setf (sys:console-volume) usual-loudness))
(format nil "Tea is ready"))
Please reply to email@example.com
p.s. Local G produces a toy train whistle sound on my console, rather
close to a tea cattle noise I would like. However, BEEP, and SYS:%BEEP
have a different "more authoritive" pitch of their own. [Loudness
of BEEP is also sensitive to Local L and Local Q settings.]
p.p.s. This was probably posted before, but the XL1200 is very, very
fast. It feels dramatically faster then the 400. Congratulations to