

                     TURBOMIDI PROGRAMMING


Introducing TurboMidi  1.0!   Have you ever  wanted to create  an 
application  that turned your pitch bend wheel into a mod  wheel?  
Have  you  ever wanted a librarian that could  store  the  latest 
patch  that  you made on your MIDI instrument? Now  you   can  do 
this and also create MIDI effects,  editors  and sequencers.
TurboMidi   was  created  to  help  you,  the  programmer,   make  
MIDI  applications.    TurboMidi can help you  create  everything 
from  simple midi  mapping  to an 8 track sequencer that you  can 
use  in  your applications.  TurboMidi consists of several  Turbo 
Pascal Units (TPU) that  you  simply  "use"  in your  application  
to  give  it  MIDI "hooks."  TPU's are provided for Turbo  Pascal 
4.0 and 5.0.

What do the units contain?

Simply everything needed to get you started in the world of  MIDI
programming!   TurboMidi has many routines for MIDI control,  the 
main routines are listed here.


Lowlevel MPU Operations

These routines let you communicate to the MPU in "smart" mode.

PutData()   Send a byte of data to the MPU.
GetData()   Get a byte of data from the MPU
FlushData() Clear the MPU's internal data buffers.
ResetMpu()  Reset the MPU to power up mode.
PutCmd()    Give the MPU a command.

These routines let you communcate to the MPU in UART mode.

UPutData()   Send a byte of data to the MPU.
UGetData()   Get a byte of data from the MPU
UFlushData() Clear the MPU's internal data buffers.
UResetMpu()  Reset the MPU to power up mode.
UPutCmd()    Give the MPU a command.
SetupUART()  Setup UART mode environment.









TurboMidi  Copyright  (C)  1988,  1989  by  N-Focus  Technologies 
All Rights Reserved.




Send Operations

These routines send MIDI information to your MIDI device.

SendNoteOn()     Send a note on message to MIDI device.
SendNoteOff()    Send a note off message to MIDI device.
SendPB()         Send a pitch bend message to the MIDI device.
SendCtrl()       Send a controller message to the MIDI device.
SendPC()         Send a patch change message to the MIDI device.
SendSys()        Send a system exclusive message.
SendAT()         Send after touch message.

Environment Routines.

These  routines automatically set up MIDI environments  for  your 
application.

OPENTMIDI()            Sets up TurboMidi environment.
CLOSETMIDI()           Terminates TurboMidi environment.
SetupSysEx()           Sets up automatic sysex librarian.
OpenMidiTerminal()     Sets up real-time MIDI processing 
environment.

Sequencer Routines()

These routines allow you to create an 8 track sequencer.

PlayTracks()
StopPlay()
WfnRec()
RecordTrack()
StopRecord()
Overdub()
StopOverDub()
LeadIn()
QtoTrack()

Algorithmic Routines

OneOverF()
BrownNoise()

File Routines

SaveTracks()
ReadTracks()
SaveSysex()
ReadSysex()

TurboMidi  Copyright  (C)  1988,  1989  by  N-Focus  Technologies 
All Rights Reserved.


Input Queue Routines

ResetQ
ShowQ
GetFromQ
ReadMIDI()
PutInQ()

TurboMidi  also  includes  many  sample  programs  that  let  you 
examine/change  and  use  any  routine  included  in  the  sample 
programs.   There are no royalties on applications  created  with 
TurboMidi!   The samples include a simple ear  training  program, 
MIDI  monitor,   simple MIDI librarian,  simple  sequencers,  and 
algorithmic  generators.   You can start writing  your  TurboMidi 
application right away!


What you need to create TurboMidi applications:

An IBM-PC, AT or strict compatible with at least 256K of RAM. 
A Roland MPU-401 MIDI interface.
Turbo Pascal 4.0 or 5.0.
A MIDI device.

TurboMidi consists of:
 Turbo Pascal Units for Turbo Pascal 4 and 5.
 Many sample program applications.
 Tutorials taking you through the many TurboMidi applications.
 Reference manual that describes the TurboMidi applications in
 detail.


The TurboMidi Toolkit costs just  U.S. $55 (includes shipping).
Available from:

N-FOCUS TECHNOLOGIES
TurboMidi Toolkit
1800 Stokes St. #197
San Jose, Ca 95126

N-FOCUS TECHNOLOGIES
TurboMidi Toolkit
2918 6th Street #1
Santa Monica, CA 90405








TurboMidi  Copyright  (C)  1988,  1989  by  N-Focus  Technologies 
All Rights Reserved.



TMIDI
N-Focus Technologies  NO-NONSENSE License Statement


This  software is protected by both the United  States  copyright 
law  and  international treaty provisions.   Therefore  you  must 
treat this software as if it were a book.  You may transport  the 
software from one computer location to another, but just as if no 
two  persons  may  be  reading the same  book  in  two  different 
locations,  under  no  circumstances  may  two  people  use  this 
software  in two different locations at the same  time.   N-Focus 
Technologies, choosing to adopt a similar licensing agreement  as 
that  used by other software language  manufacturers,  authorizes 
only archival copies to be made for the sole purpose of  backing-
up our software and protecting your investment from loss.


Programs  that  have been written and  compiled  utilizing  TMIDI 
Tools may be used, given away, or sold without additional license 
or fees, provided you have abided by Borlands license statement.


Warranty:


N-Focus Technologies specifically disclaims all other warranties, 
expressed  or  implied,  including but  not  limited  to  implied 
warranties  of  merchantability  and  fitness  for  a  particular 
purpose   with   respect   to  defects  in   the   diskette   and 
documentation,   and  the  program  license  grated   herein   in 
particular, and without limiting operation of the program license 
with respect to any particular application, use, or purpose.   In 
no  event  shall N-Focus Technologies be liable for any  loss  of 
profit or any other commercial damage, including but not  limited 
to special, incidental, consequential or other damages.


Governing Law:


This  state shall be construed, interpreted, and governed by  the 
laws of the state of California, as well as those implications 
made by the Federal copyright laws.


TradeMarks:


Turbo  Pascal  4.0  and  Turbo Pascal 5.0  are  a  trademarks  of 
Borland,  MPU-401  is a trademark of Roland Music, IBM  PC  is  a 
trademark of IBM Inc.



















































