[Coco] MM1 programmes

Gene Heskett gene.heskett at verizon.net
Sun Nov 16 05:40:00 EST 2003


On Sunday 16 November 2003 05:22, Bob Devries wrote:
>FYI:
>
>Active Sense
>Category: System Realtime
>Purpose
>A device sends out an Active Sense message (at least once) every 300
>milliseconds if there has been no other activity on the MIDI buss,
> to let other devices know that there is still a good MIDI
> connection between the devices.
>Status
>0xFE
>Data
>None
>Errata
>When a device receives an Active Sense message (from some other
> device), it should expect to receive additional Active Sense
> messages at a rate of one approximately every 300 milliseconds,
> whenever there is no activity on the MIDI buss during that time.
> (Of course, if there are other MIDI messages happening at least
> once every 300 mSec, then Active Sense won't ever be sent. An
> Active Sense only gets sent if there is a 300 mSec "moment of
> silence" on the MIDI buss. You could say that a device that sends
> out Active Sense "gets nervous" if it has nothing to do for over
> 300 mSec, and so sends an Active Sense just for the sake of
> reassuring other devices that this device still exists). If a
> message is missed (ie, 0xFE nor any other MIDI message is received
> for over 300 mSec), then a device assumes that the MIDI connection
> is broken, and turns off all of its playing notes (which were
> turned on by incoming Note On messages, versus ones played on the
> local keyboard by a musician). Of course, if a device never
> receives an Active Sense message to begin with, it should not
> expect them at all. So, it takes one "nervous" device to start the
> process by initially sending out an Active Sense message to the
> other connected devices during a 300 mSec moment of silence on the
> MIDI bus.
>
>This is an optional feature that only a few devices implement (ie,
> notably Roland gear). Many devices don't ever initiate this minimal
> "safety" feature.
>
>Here's a flowchart for implementing Active Sense. It assumes that
> the device has a hardware timer that ticks once every millisecond.
> A variable named Timeout is used to count the passing milliseconds.
> Another variable named Flag is set when the device receives an
> Active Sense message from another device, and therefore expects to
> receive further Active Sense messages.
>
>
>Regards, Bob Devries; Ipswich, Queensland, Australia

That makes sense.  And neither of my old casios do that.  Like I said, 
the ell cheeeeepoh models :)

-- 
Cheers, Gene
AMD K6-III at 500mhz 320M
Athlon1600XP at 1400mhz  512M
99.27% setiathome rank, not too shabby for a WV hillbilly
Yahoo.com attornies please note, additions to this message
by Gene Heskett are:
Copyright 2003 by Maurice Eugene Heskett, all rights reserved.




More information about the Coco mailing list