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. TurboMidi Copyright (C) 1988, 1989 by N-Focus Technologies All Rights Reserved.