That's a neat article, though it has some obvious and strange typos in it that could only have come from speech transcription software, e.g. "peril" for "parallel" and "pre-fetch his" for "pre-fetches." I'll definitely be poring over it again when designing my own simulated DSP...
Do we know what Next or 3rd party applications and utilities actually made use of the DSP? Do we know if any elements of the operating system made use of the DSP as well?
Quote from: trixster on July 04, 2025, 09:25:36 AMDo we know what Next or 3rd party applications and utilities actually made use of the DSP? Do we know if any elements of the operating system made use of the DSP as well?
Well, ScorePlayer and DSPMusic are obvious examples. DSPMusic was a demo program present in 0.8 and 0.9, replaced by ScorePlayer in 1.0a and 2.x. ScorePlayer was removed in either 3.0 or 3.1. In 1992, NeXT donated the underlying API, MusicKit (
https://en.wikipedia.org/wiki/Music_Kit), to Stanford, following its lead developers. This article (
https://www.nextcomputers.org/NeXTfiles/Docs/Audio/ICMC2000.pdf) mentions its afterlife somewhat.
This page (
http://www.kevra.org/TheBestOfNext/ThirdPartyProducts/ThirdPartySoftware/Multimedia/DigitalFunctionGenerator/DigitalFunctionGenerator.html) mentions software named Digital Oscilloscope and Spectrum Analyzer, which aren't mentioned anywhere else (and are virtually impossible to Google, naturally).
This brochure (
http://www.kevra.org/TheBestOfNext/ThirdPartyProducts/VerticalMarkets/HigherEducation/HigherEducationSW/MathematicaForEducation/files/page595_2.pdf) mentions a Mathematica notebook called Symbolic Analysis of Signals and Systems used for digital signal processing, but stops short of mentioning that it uses the DSP chip.
@Nitro might be interested in it as it also mentions Zilla, noting that 100 cubes constitutes "one Zilla unit".
NeXT on Campus Spring 1991 (
http://www.kevra.org/TheBestOfNext/page590/files/page590_3.pdf) states that someone named Mike Partridge was looking into SoundKit and MusicKit to add voice and music playback to a digital art gallery project called Fluxbase, which (it is implied) would have used the DSP.
Other products named on Kevra include:
SoundWorks (
http://www.kevra.org/TheBestOfNext/ThirdPartyProducts/ThirdPartySoftware/Multimedia/SoundWorks/SoundWorks.html)
Presto MIDI Sequencer (
http://www.kevra.org/TheBestOfNext/ThirdPartyProducts/ThirdPartySoftware/InputOutputAndStorage/PrestoMidiSequencer/PrestoMidiSequencer.html)
Mix: Fax, Voice and Data telecommunication system (
http://www.kevra.org/TheBestOfNext/ThirdPartyProducts/ThirdPartySoftware/Utilities/Telecom/Mix-FaxVoiceAndData%20/Mix-FaxVoiceAndData%20.html)
MediaStation (
http://www.kevra.org/TheBestOfNext/ThirdPartyProducts/ThirdPartySoftware/Multimedia/MediaStation/MediaStation.html)
Grepping through my copy of PEAK...
- ./apps/misc/DSPMemorySize.README.txt:Description: Program to find if the external DSP RAM is 8kw or 32kw
- ./apps/misc/PowerGloveInspector.0.1beta.README.txt:This application displays the current state of a Nintendo/Mattel PowerGlove (tm) attached to the DSP port of a NeXTcube or NeXTstation computer. PowerGlove Inspector does not work on non-NeXT (i.e. Intel) hardware.
- ./apps/graphics/plotting/Rotation.I.bs.README.txt (mentions using the DSP as a vector processor, despite being tagged "I" only)
- ./apps/soundapps/m68k_only/MLMusicKitVoice.1.0.README.txt:With the help of this little program you can use DSP-based sound synthesis
- ./apps/soundapps/m68k_only/Sequence.9.7.N.b.README:Sequence is the first MIDI sequencer and DSP synthesis application available for the NeXT computer.
- ./apps/soundapps/m68k_only/Tuner.N.bs.README.txt:The tuner can compute pitch using two different algorithms, by counting zero transitions and by doing a fast Fourier transformation (FFT) using the DSP array routines.
- ./apps/soundapps/m68k_only/Looching2.0.N.s.README.txt:Real McCoy!) music using the Motorola DSP chip.
- ./apps/soundapps/m68k_only/surf.N.b.README:SURF is a DSP-based white noise ocean simulator for relaxationis maximis
- ./apps/soundapps/ProductionPartner/*.README is audio recording and editing software; it doesn't mention any DSP features but seems to be from a DSP-centric solutions development company
- ./demos/sound/NoteAbilityDemo.1.0.README.txt:NoteAbility(TM) is a professional music notation package for NEXTSTEP computers. [...]playback through MIDI and/or DSP[...]
- ./demos/sound/TextToSpeechDemo.NI.b.pkg.tar.README.tar: Real-time speech synthesis on the DSP chip
- ./demos/sound/Presto/Presto_v0.9.6b.README.rtf:Presto is a revolutionary music application that seamlessly integrates MIDI sequencing and DSP (Digital Signal Processing) music synthesis.
There were also DSP expansion cards. Kevra mentions the i56 (
http://www.kevra.org/TheBestOfNext/ThirdPartyProducts/ThirdPartySoftware/InputOutputAndStorage/i56-DSPandSoundCard/i56-DSPandSoundCard.html) as a "fully compatible" replacement for white hardware, using the same 56001 chip. For the cube, the Music Kit article on Wikipedia mentions a Turtle Beach DSP card and the Airel QuintProcessor, a board with
five DSPs on it. There was also apparently an in-house research machine at Stanford that had eight additional DSPs crammed into it, for use in experiments to recreate the acoustics of instruments more authentically.
So, from this sample, the DSP was mainly harnessed for audio processing and generation, but there are some tantalizing suggestions that it saw some usage in other electronics and telecommunications domains—but I can't imagine anyone brave enough to hook up their precious magnesium cube's tender little pins to live wires for use as an oscilloscope...
(N.B. This is probably not an exhaustive list—I'd check Alembic AppWrapper, NeXT 3rd Party Samplers from 1993 and 1995, BGCD, Peanuts, and Nebula to be certain.)
Wow, thanks for the detailed reply!
I figured out what Digital Oscilloscope and Spectrum Analyzer are. NeXTSTEP 2.0 ships with a demo called MonsterScope.app:
This certainly seems like the sort of thing that was developed for in-house use, but the only picture I can find of NeXT computers on the factory floor seems to be administrative:
MonsterScope does actually exist in 1.0a (though not yet in .app format):
...but it is not present in 0.9, so the odds are that the photo above (taken in the 1986–1988 period) predates its development.
Correction to the above: NS0.8's /Programming/Demos/Scope is actually a precursor to MonsterScope:
It's still missing from 0.9, though.
So it is very possible that cubes could have been used as lab equipment at NeXT as early as 11/30/1988, when it was last modified. (Not the ones in the above picture, though; they're clearly running something else and placed in the wrong part of the factory...)
However, the ominous warning in the Info panel of MonsterScope in my previous post—that you shouldn't connect the leads to anything while the machine is running—seems like a serious impediment to actual use. I wonder if that was a CYA (
https://en.wikipedia.org/wiki/Cover_your_ass) thing that was added 'just in case,' or actually taken seriously?
These oscilloscope programs are among my favourite NeXT demo programs. That said, an "audio range oscilloscope & spectrum analyzer" seems unlikely to me to have had a lot of valuable internal use; I would assume that for testing and validation, you probably want to be handling signals in the megahertz range.
I would also expect better logging or external interfacing options than I think are there if this is being used for any kind of industrial testing or control application.
Those are some very good points,
@stepleton — they definitely seem to be more like educational tools. Appropriately enough, I found
another renamed version of MonsterScope on the 1992 NeXT Education Sampler CD, in /NeXT/ScienceDemos/ProbeScope.app. This version doesn't mention DSP functionality, only CODEC Microphone support—pretty clearly aimed at audio analysis. Possibly it was removed to stop students from frying the DSP with real electronics workloads.
Reflecting on it again, I don't think the chip itself is really adequate for electronics analysis anyway. The programmable serial port can only do 5 megabits/sec, so a 68030's CPU clock already exceeds the Nyquist frequency. You're certainly not going to be catching any timing errors with that resolution... Maybe a retrocomputing enthusiast could use it while repairing a vintage mainframe from the 1960s operating in the 0.01–0.1 MHz range. :)
EDIT: I've also found a MonsterScope binary in NextDemos on the 3.0 install CD.
At the time it was pretty good. Good enough to do real time brainwave analysis for software I wrote for a research institute.
Quote from: zombie on July 15, 2025, 07:58:29 PMAt the time it was pretty good. Good enough to do real time brainwave analysis for software I wrote for a research institute.
Bit of a tease there
@zombie would like some more information about this story :). How long did the software take to make, how many languages was it for, did you distribute it, was there a Easter Egg in it...
(whoops, forgot that phasescope is not probescope; disregard this post)
Some more DSP finds from ftp.nice.ch, which includes Peanuts:
- TTYDSP is a hardware and software package which uses the Digital Signal Processor (DSP) and DSP port on a NeXT computer to provide a third RS-232 compatible serial port, accessible through the standard UNIX tty interface. (commercial product; preserved thanks to @Andreas)
- RecordApp (https://ftp.nice.ch/pub/next/developer/hardware/dsp/) is a simple program that demonstrates how to record data
from the DSP chip on the NeXT computer. It receives samples at 44.1Khz and writes them to disk. - gcc56k (https://ftp.nice.ch/pub/next/developer/hardware/dsp/gcc56k.N.s.tar.gz) contains GCC machine descriptions for the Motorola DSP56000 (or DSP56001) DSP chip and the DSP5616 series (including the DSP56116 and the DSP56156). Using the machine description files, a GCC compiler can be created which will generate assembly code suitable for processing by Motorola's assemblers.
- drbub (https://ftp.nice.ch/pub/next/developer/hardware/dsp/drbub/) is a substantial library of source code, covering everything from generating DMTF (phone dialing) tones to sorting algorithms that run on the DSP itself, and several different audio filters.
- AudioChallenger: Audio Challenger randomly generates ascending and descending melodic musical intervals which can be used in assisting music students in trying to improve their ability to aurally identify musical intervals. Audio Challenger features real-time synthesis on the DSP (digital signal processing) chip of the NeXT computer which gives it the advantage of a more natural and "lively" musical timbre than ear-training programs that currently exist on other platforms.
- Transcribe (also sold as a library, Dictation ObjectWare): A recording tool that could use either the DSP or a (sufficiently fast) 486 CPU.
- VideoTeXT: This Application allows to receive and display Teletext pages. Requires black hardware, special hardware to be connected to the DSP port. The circuit diagram for the special hardware was published in the German computer magazine "c't" issue 7/1992 pages 176-182.
- InTune: enables real time playing of the DSP with a choice of three different temperaments. The three temperaments are Equal, Meantone, and Pythagorean.
- Chaos: Sound production is either by the DSP Pluck instrument or via MIDI. ("Welcome to Chaos-World" — this is extremely ominous!)
- SignalLab: not sure exactly what it does, but boy does it need the DSP
- Sonogram: This program allows you to analyze time-frequency characteristics of non-stationary signals. [...] If you select this button, the program will use 56001 DSP to compute FFT. By default, it uses CPU.)
- WaveFormEditor: [...] is being played out using the DSP and D/A converter simultaneously.
- DSPSoundProcess: A Tutorial for the programmation of the sound/DSP driver for real time sound processing.
I also found one case of a 3D viewer where DSP acceleration for visual rendering was planned but not implemented, which is perhaps the most oddball usage. The drbub library includes code for matrix multiplication so it would not have been that hard for a graphics programmer to add.
Looking for Brad Garton's Reich-o-Matic I found a copy on the NOVA Second Edition disc from Walnut Creek. His Looching app is in there too and also uses the onboard DSP for sound generation. Infinite ambient drones await with this.
The "extremely ominous" Chaos app is also in there..