1.\" $OpenBSD: midicat.1,v 1.2 2018/11/30 08:00:43 jmc Exp $ 2.\" 3.\" Copyright (c) 2015 Alexandre Ratchov <alex@caoua.org> 4.\" 5.\" Permission to use, copy, modify, and distribute this software for any 6.\" purpose with or without fee is hereby granted, provided that the above 7.\" copyright notice and this permission notice appear in all copies. 8.\" 9.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 10.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 11.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 12.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 13.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 14.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 15.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 16.\" 17.Dd $Mdocdate: November 30 2018 $ 18.Dt MIDICAT 1 19.Os 20.Sh NAME 21.Nm midicat 22.Nd send to or receive from MIDI ports 23.Sh SYNOPSIS 24.Nm midicat 25.Bk -words 26.Op Fl d 27.Op Fl i Ar file 28.Op Fl o Ar file 29.Op Fl q Ar port 30.Ek 31.Sh DESCRIPTION 32The 33.Nm 34utility receives MIDI data from the given input MIDI port and/or 35sends it to the given output MIDI port. 36The options are as follows: 37.Bl -tag -width Ds 38.It Fl d 39Dump transferred data in hex on stderr. 40.It Fl i Ar file 41Read MIDI data from this file instead of receiving it from the MIDI port. 42If the option argument is 43.Sq - 44then standard input will be used. 45.It Fl o Ar file 46Write MIDI data to this file instead of sending it to the MIDI port. 47If the option argument is 48.Sq - 49then standard output will be used. 50.It Fl q Ar port 51Use this 52.Xr sndio 7 53MIDI port for input/output. 54If the option is used twice, the first one specifies 55the input port and the second one the output port. 56.El 57.Pp 58If no files are specified, then 59.Nm 60transfers data from the MIDI input port to the MIDI output port. 61.Sh EXAMPLES 62Send the given file to 63.Pa rmidi/0 : 64.Bd -literal -offset indent 65$ midicat -i file.syx -q rmidi/0 66.Ed 67.Pp 68Dump data received from 69.Pa rmidi/0 70to stderr: 71.Bd -literal -offset indent 72$ midicat -d -q rmidi/0 -o /dev/null 73.Ed 74.Pp 75Send data from 76.Pa rmidi/0 77to 78.Pa midithru/0 : 79.Bd -literal -offset indent 80$ midicat -q rmidi/0 -q midithru/0 81.Ed 82.Sh SEE ALSO 83.Xr midi 4 , 84.Xr sndio 7 , 85.Xr sndiod 8 86