home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CP/M
/
CPM_CDROM.iso
/
simtel
/
sigm
/
vols000
/
vol056
/
intro.doc
< prev
next >
Wrap
Text File
|
1984-04-29
|
16KB
|
404 lines
{j:a
{m:1=10,75
{m:2=18,75
{m:3=24,75
{m:4=50,75
{m:1
{c:The MUSICRAFT Development System
{c:USER'S GUIDE AND OPERATING MANUAL
{c:by Paul J. Medlock
{c:Computercraft
{c:1031 Marlau Dr
{c:Baltimore MD 21212
{c:authorized distributor:
{c:NEWTECH COMPUTER SYSTEMS, Inc.
{c:230 Clinton St
{c:Brooklyn NY 11201
{c:(212)625-6220
{a:p=1
{c:Copyright (c) 1980 by Paul J Medlock
{c:Computercraft
{c:All rights reserved.
No part of this publication may be reproduced, transmitted,
transcribed, stored in a retrieval system, or translated into any
language or computer language, in any form or by any means,
electronic, mechanical, magnetic, optical, chemical, manual or
otherwise, without the prior written permission of Computercraft,
Baltimore, Maryland.
{c:Disclaimer
Computercraft makes no representations or warranties with respect to
the contents hereof and specifically disclaims any implied warranties
of merchantability or fitness for any particular purpose. Further,
Computercraft reserves the right to revise this publication and to
make changes from time to time in the content hereof without
obligation of Computercraft to notify any person of such revision or
changes.
This publication does not convey to the purchaser any rights to any
software not identified by this publication as part of the Musicraft
Development System.
CP/M is referred to in this manual. CP/M is a trademark of Digital
Research Corporation. No rights of use of CP/M are conveyed to the
purchaser by any reference to CP/M in this publication.
{a:p=1
TABLE OF CONTENTS
{l:I. INTRODUCTION^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^6
{l:I.A. The Music^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^6
{l:I.B. The System^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^7
{l:I.B.1. The Editor^^^^^^^^^^^^^^^^^^^^^^^^^^9
{l:I.B.2. The Compiler^^^^^^^^^^^^^^^^^^^^^^^^9
{l:I.B.3. The Waveform Generator^^^^^^^^^^^^^^9
{l:I.B.4. The Player^^^^^^^^^^^^^^^^^^^^^^^^^^9
{l:I.B.5. Setup^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^10
{l:I.B.6. Print^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^10
{l:I.C. The Requirements^^^^^^^^^^^^^^^^^^^^^^^10
{l:II. INITIAL CHECKOUT^^^^^^^^^^^^^^^^^^^^^^^^^^^11
{l:III. MUSIC NOTATION SYSTEM^^^^^^^^^^^^^^^^^^^^^^15
{l:III.A. Song File^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^15
{l:III.B. Song Line^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^15
{l:III.B.1. Line Number^^^^^^^^^^^^^^^^^^^^^^^^15
{l:III.B.2. Duration^^^^^^^^^^^^^^^^^^^^^^^^^^^15
{l:III.B.3. Voice^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^16
{l:III.C. Microtones^^^^^^^^^^^^^^^^^^^^^^^^^^^^^19
{l:III.D. Option Lines^^^^^^^^^^^^^^^^^^^^^^^^^^^19
{l:IV. PROGRAM DESCRIPTION^^^^^^^^^^^^^^^^^^^^^^^^21
{l:IV.A. SETUP^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^21
{l:IV.A.1. Command Sequence^^^^^^^^^^^^^^^^^^^21
{l:IV.A.2. Discussion^^^^^^^^^^^^^^^^^^^^^^^^^21
{l:IV.B. EDIT^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^22
{l:IV.B.1. Command Sequence^^^^^^^^^^^^^^^^^^^22
{l:IV.B.2. Introduction^^^^^^^^^^^^^^^^^^^^^^^22
{l:IV.B.3. Tutorial^^^^^^^^^^^^^^^^^^^^^^^^^^^22
{l:IV.B.3.a. Navigation^^^^^^^^^^^^^^^^^^^^^^24
{l:IV.B.3.a.i. The Home Function^^^^^^^^^^^24
{l:IV.B.3.a.ii. The Direction Function^^^^^^24
{l:IV.B.3.a.iii. The Page Function^^^^^^^^^^^25
{l:IV.B.3.a.iv. The Cursor Functions^^^^^^^^25
{l:IV.B.3.a.v. The Space Function^^^^^^^^^^26
{l:IV.B.3.a.vi. The Modes of EDIT^^^^^^^^^^^26
{l:IV.B.3.a.vi.1. Edit Mode^^^^^^^^^^^^^^^27
{l:IV.B.3.a.vi.2. Insert Mode^^^^^^^^^^^^^28
{l:IV.B.3.a.vi.3. Excise Mode^^^^^^^^^^^^^28
{l:IV.B.4. Reference^^^^^^^^^^^^^^^^^^^^^^^^^^30
{l:IV.B.4.a. Quit^^^^^^^^^^^^^^^^^^^^^^^^^^^^30
{l:IV.B.4.b. The Modes of EDIT^^^^^^^^^^^^^^^30
{l:IV.B.4.b.i. Edit Mode^^^^^^^^^^^^^^^^^^^31
{l:IV.B.4.b.i.1. Menu^^^^^^^^^^^^^^^^^^^^31
{l:IV.B.4.b.i.2. d(irection^^^^^^^^^^^^^^31
{l:IV.B.4.b.i.3. text^^^^^^^^^^^^^^^^^^^^31
{l:IV.B.4.b.i.4. cursors^^^^^^^^^^^^^^^^^32
{l:IV.B.4.b.i.5. I(nsert^^^^^^^^^^^^^^^^^32
{l:IV.B.4.b.i.6. X(cise^^^^^^^^^^^^^^^^^^33
{l:IV.B.4.b.i.7. O(ptions^^^^^^^^^^^^^^^^33
{l:IV.B.4.b.i.8. M(easure^^^^^^^^^^^^^^^^33
{l:IV.B.4.b.i.9. quit^^^^^^^^^^^^^^^^^^^^33
{l:IV.B.4.b.ii. Insert Mode^^^^^^^^^^^^^^^^^33
{l:IV.B.4.b.ii.1. Menu^^^^^^^^^^^^^^^^^^^^33
{l:IV.B.4.b.ii.2. d(irection^^^^^^^^^^^^^^33
{l:IV.B.4.b.ii.3. text^^^^^^^^^^^^^^^^^^^^33
{l:IV.B.4.b.ii.4. cursors^^^^^^^^^^^^^^^^^34
{l:IV.B.4.b.ii.5. M(easure^^^^^^^^^^^^^^^^34
{l:IV.B.4.b.ii.6. quit^^^^^^^^^^^^^^^^^^^^34
{l:IV.B.4.b.ii.7. Discussion^^^^^^^^^^^^^^34
{l:IV.B.4.b.iii. Excise Mode^^^^^^^^^^^^^^^^^35
{l:IV.B.4.b.iii.1. Menu^^^^^^^^^^^^^^^^^^^^35
{l:IV.B.4.b.iii.2. d(irection^^^^^^^^^^^^^^35
{l:IV.B.4.b.iii.3. cursors^^^^^^^^^^^^^^^^^35
{l:IV.B.4.b.iii.4. quit^^^^^^^^^^^^^^^^^^^^35
{l:IV.B.4.b.iv. Options Mode^^^^^^^^^^^^^^^^36
{l:IV.B.4.b.iv.1. Menu^^^^^^^^^^^^^^^^^^^^36
{l:IV.B.4.b.iv.2. Chorus Call^^^^^^^^^^^^^36
{l:IV.B.4.b.iv.3. Find^^^^^^^^^^^^^^^^^^^^36
{l:IV.B.4.b.iv.4. Label^^^^^^^^^^^^^^^^^^^37
{l:IV.B.4.b.iv.5. Microtones^^^^^^^^^^^^^^38
{l:IV.B.4.b.iv.6. Repeat^^^^^^^^^^^^^^^^^^38
{l:IV.B.4.b.iv.7. Tempo^^^^^^^^^^^^^^^^^^^38
{l:IV.B.4.b.iv.8. Verify^^^^^^^^^^^^^^^^^^38
{l:IV.B.4.b.iv.9. Waveforms^^^^^^^^^^^^^^^38
{l:IV.B.4.b.iv.10. Chorus End^^^^^^^^^^^^^^39
{l:IV.B.4.b.iv.11. Flat Signature^^^^^^^^^^39
{l:IV.B.4.b.iv.12. Sharp Signature^^^^^^^^^39
{l:IV.C. COMP^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^40
{l:IV.C.1. Command Sequence^^^^^^^^^^^^^^^^^^^40
{l:IV.C.2. Discussion^^^^^^^^^^^^^^^^^^^^^^^^^40
{l:IV.D. WAVE^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^40
{l:IV.D.1. Command Sequence^^^^^^^^^^^^^^^^^^^40
{l:IV.D.2. Introduction^^^^^^^^^^^^^^^^^^^^^^^40
{l:IV.D.3. The Fundamental^^^^^^^^^^^^^^^^^^^^41
{l:IV.D.4. The Second Harmonic^^^^^^^^^^^^^^^^42
{l:IV.D.5. The Square Wave^^^^^^^^^^^^^^^^^^^^43
{l:IV.D.6. Additional Waveforms^^^^^^^^^^^^^^^44
{l:IV.E. PLAY^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^45
{l:IV.E.1. Command Sequence^^^^^^^^^^^^^^^^^^^45
{l:IV.E.2. Song Load^^^^^^^^^^^^^^^^^^^^^^^^^^45
{l:IV.E.3. Waveform Table Load^^^^^^^^^^^^^^^^45
{l:IV.E.4. Continuation^^^^^^^^^^^^^^^^^^^^^^^47
{l:IV.E.5. Interaction^^^^^^^^^^^^^^^^^^^^^^^^48
{l:IV.E.5.a. Rehearsal Mode^^^^^^^^^^^^^^^^^48
{l:IV.E.5.b. Modified Performance Mode^^^^^^48
{a:p=1
{l:V. OPTION LINE DESCRIPTIONS^^^^^^^^^^^^^^^^^^^51
{l:V.A. Chorus Function^^^^^^^^^^^^^^^^^^^^^^^^51
{l:V.B. Repeat Function^^^^^^^^^^^^^^^^^^^^^^^^52
{l:V.C. Chorus Call Option Line^^^^^^^^^^^^^^^^54
{l:V.D. Label Option Line^^^^^^^^^^^^^^^^^^^^^^55
{l:V.E. Measure Option Line^^^^^^^^^^^^^^^^^^^^56
{l:V.F. Microtone Option Line^^^^^^^^^^^^^^^^^^56
{l:V.G. Repeat Option Line^^^^^^^^^^^^^^^^^^^^^57
{l:V.H. Tempo Option Line^^^^^^^^^^^^^^^^^^^^^^57
{l:V.I. Waveform Option Line^^^^^^^^^^^^^^^^^^^58
{l:V.J. Chorus Exit Option Line^^^^^^^^^^^^^^^^58
{l: APPENDICES
{l: A. SETUP WORKSHEET^^^^^^^^^^^^^^^^^^^^^60
{l: B. ERROR MESSAGES^^^^^^^^^^^^^^^^^^^^^^62
{l: C. FILE TYPES^^^^^^^^^^^^^^^^^^^^^^^^^^67
{l: D. SONG FILE FORMAT^^^^^^^^^^^^^^^^^^^^69
{a:p=1
I. INTRODUCTION
The Musicraft Development System is a sophisticated facility for
the composition and performance of music operating under CP/M
(trademark of Digital Research.) It uses a language easily
understood and used by any person with even a rudimentary ability
to read music, yet it is capable of a wide spectrum of musical
techniques and sound effects. Classical, popular and contemporary
styles can be realized effectively with Musicraft, and its
interactive nature makes Musicraft attractive to the performing
musician as well as the composer and listener.
I.A. The Music
Songs may contain from one to four voices. Each voice has a full
seven octave range beginning at 27.5 Hertz. A song may be performed
using up to 14 different waveforms; each voice can be assigned
to any waveform. Additionally, as the performance progresses,
voice-waveform relationships can be varied. The waveforms can
be drawn from as large a pool of waveform files as you have developed,
and you can choose different waveforms from performance to performance
of the same song.
Music can contain measures, repeats, refrains and even microtones.
Microtones are useful for contemporary sounds, eastern music, and
especially for slides and glissandi. The octave can be divided into
as many as 99 intervals. Using, for example, 96 intervals can permit
a very smooth glissando.
Refrains, or choruses, are a very powerful structural tool in
Musicraft: your music can call a chorus which, in turn, can call
a chorus which, in turn, can call a chorus... until you are dizzy
with structural developments. Chorus nests can be up to 16 deep.
Any song segment can be repeated up to as many as 256 times with a
single repeat.
Measures serve two important functions. While you are editing your
song, you can easily locate music using the measure. More interestingly,
however, measures can be used by the performing musician for practice
by the "Music Minus One" method. Play your song leaving out a waveform
table for one voice and play your own instrument. As you
practice, if you need to restart at a measure, press return, enter
the measure number, and after a short pause (to allow you to prepare)
the music will begin at that measure.
All songs and waveform tables, along with backup files where
appropriate, are maintained on floppy disk, and access by the system
components is completely automatic. Multiple drive storage is also
supported by all programs.
I.B. The System
Six interrelated machine language programs perform specific tasks
required in making music.
{m:3
{i:-8
Name
Function
{i:-8
EDIT
Enter music by transcription or composition into the computer
storage and change music already stored.
{i:-8
COMP
Convert (or compile) music from the musical notation into a
numerical form suitable for performance by PLAY.
{i:-8
WAVE
Create and save new sound colors (also called waveforms or
instruments) to be used by PLAY in the performance of music.
{i:-8
PLAY
Bring the music together with the instruments and perform the
combination.
{m:1
{l:Two additional programs are provided to support the system.
{m:3
{i:-8
SETUP
Tailor the programs to your system.
{i:-8
PRINT
Obtain a printed "score" of the music once the music has been
entered into the computer storage.
{m:1
Study the diagram on the next page. It shows the relationships
among the six programs and the way in which files are passed from one
to the other.
{a:p=2
I.B.1. The Editor
EDIT is a screen editor knowledgeable in the musical notation used. It
checks your entries to insure validity and provides complete error
reporting. Navigation within a song is easy with EDIT, with full cursor
control as well as page and home functions. You can find
locations within your song using measures, song lines or labels.
EDIT supports a powerful form of key signature and remembers
accidentals within the measure.
You use EDIT in four different modes. Edit, Insert, Excise and
Option. EDIT always begins in the edit mode while the other
modes are accessible with a single keystroke. The Edit mode is
intended for making corrections in already existing music. The
Insert mode permits you to add new song lines and to enter voice
and duration data conveniently. Excise mode allows the removal of
song lines, and the Option mode supports the wide variety of secondary
musical functions as well as additional edit facilities.
I.B.2. The Compiler
After you have entered your song, running the compiler will give you
a playable song file. To insure adequate precision, floating point
arithmetic is used for all calculations. As COMP compiles your song,
you are kept informed of progress by the CRT display.
I.B.3. The Waveform Generator
With WAVE, you create different sounds for later use in performance.
Four techniques are provided. You can use the Fourier series method
to build waveforms using the sine wave...your waveform may contain
up to 16 partials, each with its own amplitude and phase. Additionally,
you can easily construct sawtooth, triangle and square waves.
I.B.4. The Player
PLAY allows you to load one or more songs into memory for performance.
As it loads the songs, it remembers the waveforms requested by
the different voices and then allows you to fill waveform tables
with whatever waveforms you would like. The music is then performed.
PLAY offers three methods of performance. You may simply let the
music play just as you entered it with EDIT. Or if you need a partner
with whom to practice your own instrument, it can operate in
a "rehearsal"
mode. Finally, you may interact with
the performance by using the keyboard of your terminal as a
programmable interface. Using the Label option of EDIT, you can
easily associate any musical idea (a single note, chord, or even
a whole melody line) with any key on your keyboard (excluding
control keys). As the music is performed, press a key that you
have related to a song segment. No matter where in the song that
segment was coded, PLAY will play it. Press another key. Again,
whatever song segment you related to that key will play.
I.B.5. Setup
SETUP is provided because no two computer systems are alike.
The 8080A, 8085 and Z80 microprocessors are all different in
subtle ways. Many different terminals are attached to those
systems, each with different control codes and functions
that they can support. The clock speed can vary considerably
from one system to another. SETUP asks questions about your
system and saves your answers for use by the other components
of Musicraft. Musicraft will run on a wide variety of equipment
because of the flexibility of SETUP.
I.B.6. Print
PRINT prints your song so you can file it for later use in the
event your diskette file is lost.
I.C. The Requirements
Musicraft will operate on your microcomputer if you can satisfy
the following requirements.
{m:2
{i:-8
1.
An 8080A, 8085 or Z80 based microcomputer
{i:-8
2.
24k or more bytes of memory (32k or more bytes for North Star)
{i:-8
3.
A CP/M, CDOS or other compatible operating system
{i:-8
4.
A user's understanding of the operating system
{i:-8
5.
One or more floppy disk drives
{i:-8
6.
A CRT terminal with absolute cursor addressing and at least 64
characters per line
{i:-8
7.
A digital-to-analog convertor connected to the computer through
an addressable 6- or 8-bit parallel output port. (A good example
of this is the Newtech model-6 Music Board)
{a:p=1