Allen Digital Organ Stop Cards Procedures VI.doc

7
Allen Digital Organ Stop Cards Procedures 1. Introduction. The Allen Digital Organs utilize a simple IBM 80-column card reader to input data for additional voices (stops) beyond those provided as standard with the instrument. These cards establish values for 16 of 32 points specifying the electronic waveform to be replicated at the appropriate frequencies keyed to establish the pitch and timbre of the voices. Although each cycle of the waveform is divided into 32 equal points, only the first 16 of those values are input from the Stop Card—the remaining 16 are provided by internal circuitry to be inverted and in reverse order, completing a waveform with point symmetry. Many additional voices are available from the Allen Organ Company, of course, but sometimes an organist desires or needs a stop that is not exactly one of those which can be bought. This document addresses the need of those organists to produce digital Stop Cards of their own design. The procedures will be discussed in three main areas: Re-scaling; Generation; and Adjustment. These procedures reference the attached Excel spreadsheet. 2. Re-scaling. Sometimes the only complaint about an existing Stop Card voice is that it is either too loud or too soft to work properly with the other stops to be invoked with it. If the voice timbre is satisfactory but the loudness is unsatisfactory, all that need be done is to re-scale the waveform to have more or less amplitude without altering its harmonic structure. Look at the Stop Card. Several things will be apparent: a. Along the bottom of the card will be a pattern of punches in the 8- and 9-rows—16 sets of these punch pairs. These are the “clocking” punches and are used by the input mechanism to discern which columns of the card contain data for entry into the voice memory. All cards must have this pattern of 8 and 9 punches. The 8 punches go in columns 7, 10, 13, 16, 19, 22, 25, 28, 31, 34, 37, 40, 43, 46, 49, and 52; the 9 punches go in columns 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, and 51. b. Above the clocking punches is an area containing punches that provide the data for the voice waveform (1/2 cycle). This area includes the rows 0, 1, 2, 3, 4, 5, and 6 with punches in columns 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, and 51 (16 specific columns). The punches in this area are what we are interested in. Now reference Sheet 2 of the Excel spreadsheet “Converting Between Column Binary Format and Decimal”. In one of the data columns, note the rows with punches

description

method for programming IBM cards to create new stops for Allen digital organs, models 1100, 2100, 3100

Transcript of Allen Digital Organ Stop Cards Procedures VI.doc

Page 1: Allen Digital Organ Stop Cards Procedures VI.doc

Allen Digital Organ Stop Cards Procedures

1. Introduction.

The Allen Digital Organs utilize a simple IBM 80-column card reader to input data for additional voices (stops) beyond those provided as standard with the instrument. These cards establish values for 16 of 32 points specifying the electronic waveform to be replicated at the appropriate frequencies keyed to establish the pitch and timbre of the voices. Although each cycle of the waveform is divided into 32 equal points, only the first 16 of those values are input from the Stop Card—the remaining 16 are provided by internal circuitry to be inverted and in reverse order, completing a waveform with point symmetry.

Many additional voices are available from the Allen Organ Company, of course, but sometimes an organist desires or needs a stop that is not exactly one of those which can be bought. This document addresses the need of those organists to produce digital Stop Cards of their own design. The procedures will be discussed in three main areas: Re-scaling; Generation; and Adjustment. These procedures reference the attached Excel spreadsheet.

2. Re-scaling.

Sometimes the only complaint about an existing Stop Card voice is that it is either too loud or too soft to work properly with the other stops to be invoked with it. If the voice timbre is satisfactory but the loudness is unsatisfactory, all that need be done is to re-scale the waveform to have more or less amplitude without altering its harmonic structure.

Look at the Stop Card. Several things will be apparent:

a. Along the bottom of the card will be a pattern of punches in the 8- and 9-rows—16 sets of these punch pairs. These are the “clocking” punches and are used by the input mechanism to discern which columns of the card contain data for entry into the voice memory. All cards must have this pattern of 8 and 9 punches. The 8 punches go in columns 7, 10, 13, 16, 19, 22, 25, 28, 31, 34, 37, 40, 43, 46, 49, and 52; the 9 punches go in columns 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, and 51.

b. Above the clocking punches is an area containing punches that provide the data for the voice waveform (1/2 cycle). This area includes the rows 0, 1, 2, 3, 4, 5, and 6 with punches in columns 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, and 51 (16 specific columns). The punches in this area are what we are interested in.

Now reference Sheet 2 of the Excel spreadsheet “Converting Between Column Binary Format and Decimal”. In one of the data columns, note the rows with punches (“1” values) in order from row 6 to row 0 (zero). For each of the data columns (even if it has no punches) perform the following prodecure:

a. Match the pattern of punches to those in the Sheet 2 chart and obtain the corresponding decimal value from the matching cell. Note that punch patterns with a punch in row 6 (the sign bit) will have negative values and will be found in the right half of the chart.

b. Enter the found decimal value (with sign) into the yellow cell in Sheet 1 row 36 under the proper card column (labeled in row 22).

Alternatively, use the lower field on Sheet 3 to decode the binary values by using 1s and 0s (ones and zeroes) to represent the punches and non-punches on the card. The cells that will accept input are colored yellow. Enter the appropriate value (1 or 0) into each of the cells by card row and column; note that zero (“0”) entries display as blanks in this field. The decoded decimal values are shown directly below each card data column, and are graphed on Chart 5 in green. These values are what are to be transferred to Sheet 1 row 36 (as in b. immediately

Page 2: Allen Digital Organ Stop Cards Procedures VI.doc

above). I’m sorry, but these values have to be transferred by hand because those row 36 cells are not used only for this purpose.

Make sure that all the values in the Sheet 1 column D yellow cells (rows 5 through 20) “Enter Strength Factor” are 0 (zero), then check Chart 5. The red curve is the graph of the voice waveform (full cycle) taken from the card. On Sheet 1, place a “1” in the salmon-colored cell D36; this will cause the data entered in the yellow cells E36 through T36 (which you typed in) to be used as the input to the scaling formulas instead of the harmonic synthesis factors (which you zeroed out).

Chart 5 will now also display in blue the waveform curve adjusted to be maximum possible amplitude (largest value is 63). The two curves should be the same shape but probably will not show the same amplitude. Now enter into the yellow cell at D29 a value to be used to scale down the maximum amplitude (volume) to what is desired for the new Stop Card. This will cause the blue curve on Chart 5 to take on a new level either above or below the red curve (original values). When this adjustment is approximately what is wanted, use the red values in Sheet 1 columns E29 through T29 to punch a new Stop Card by the procedure described later in this document. (The upper field of Sheet 3 now depicts where the required punches go to achieve this design.)

3. Generation.

Another way of defining a new voice Stop Card is to specify the harmonic content desired in the timbre. The nature of the card input procedure only permits values for the first 16 harmonics (fundamental plus 15 overtones) to be involved, because 16 data points for a half-cycle can only specify unambiguously a frequency of 16 times the fundamental or less. Waveforms with higher harmonics are, of course, possible, but not by using the harmonic synthesis approach. Harmonic synthesis is also the method used by the Hammond Organ drawbars ® and the Sheet 1 spreadsheet is annotated to indicate how those drawbars relate to the harmonics; the standard organ pitch register notations (8’ for the fundamental, up to 1/2’ for the highest harmonic) are also included so that additional voices at other than unison pitch can also be specified.

First insure that the value in the salmon-colored cell at Sheet 1 D36 is equal to 0 (zero); this will prevent any values in that row from being erroneously added into the computations to follow. Now only the yellow cells D5 through D20 (to specify the relative strengths of the different harmonics) and D29 (to make the adjustment for loudness) will have an effect.

Enter values for the relative strengths of the various harmonics f through 16f into the yellow cells D5 through D20. There are two ways that these values can be estimated:

a. By using Hammond drawbar values . If you have a Hammond voice specification that you want to transcribe to the Allen Digital Organ, the drawbar settings can be directly used to do this using the Harmonic Synthesis methodology. On Sheet 1 of the Excel spreadsheet, note that column C in rows 5 through 12 shows B1, B2, W1, B3, W2, W3, (none), and B4—these correspond to the black (“B”) and white (“W”) drawbars, from left to right. The brown drawbars cannot be simulated by this procedure, as they represent sub-harmonics which cannot be encoded. A drawbar all the way in represents a factor of 0 (zero); pulling the drawbar out produces factors of 0.125, 0.25, 0.375, 0.5, 0.625, 0.75, 0.875, and 1.0 (all the way out). Just enter the corresponding factor values in each drawbar row. Once all the drawbar position factors are in place, the resultant waveform will be displayed in blue on Chart 3; adjust the loudness by entering a value in yellow cell D29 on Sheet 1 (a value of 1.0 will produce the maximum loudness possible). The red values in blue cells E29 through T29 can then be used to punch a new Stop Card using the procedure described later in this document.

b. Knowledge, Guessing, or Whatever . Some organists may have a good understanding of the true harmonic content of various organ stops, whereas others may only have a passing knowledge of this topic. There are a few principles which can be applied to making guesses about what harmonic factors may be appropriate:

Page 3: Allen Digital Organ Stop Cards Procedures VI.doc

(1) Diapasons (Principals) nearly all have a very strong fundamental in whatever pitch register is being generated, plus a strong second harmonic (twice the fundamental pitch). “Plump” diapasons (English) will have little additional harmonic structure, but “stringy” diapasons will have more. In probably no case should any of those higher harmonics be factored by more than about 0.2 or the diapason nature of the stop will be lost. A few diapasons will have a strong 3rd harmonic (3 times the fundamental pitch), but again this factor will not be very large.

(2) Flutes have a strong fundamental in their pitch register with very small factors for all the higher harmonics. Stopped flutes will have zero (or nearly zero) factors for the “even” harmonics (2f, 4f, 6f, 8f, etc. for an 8’ stop; 4f, 8f, 12f and 16f for a 4’ stop; and 6f and 12f for a 2 2/3’ stop); open flutes will have non-zero factors for all harmonics, but they will all be small. By comparison, a Theater Organ Tibia stop would have mostly the fundamental frequency represented—all other harmonic factors would be near zero. Such a specification will produce a nearly perfect sine wave for the waveform and a very dull timbre (the dullest possible would be a pure sine wave—all harmonics = zero except the fundamental).

(3) Reeds will have strong contributions by the first several harmonics, some of which may even be more present than the fundamental. Specification of a reed stop is highly speculative and will require some experimentation. Modification of an existing reed voice by the procedures of the next section may be more useful.

(4) Strings cannot be well simulated by the harmonic synthesis process because they need harmonics well above those available in this procedure.

Once a set of harmonic factors have been entered and a loudness factor decided upon, the red values in blue cells E29 through T29 can be used to punch a new Stop Card using the procedures detailed later in this document.

4. Adjustment.

The process of Adjustment can be used to alter an existing Stop Card specification to make minor changes in its timbre. This process might be useful to put a more “quinty” sound to an existing flute, for example. Follow the procedure for doing a re-scaling of the existing stop, but then add non-zero factors for certain of the harmonics using the yellow cells in D5 through D20. These factors will only be quite small, and can be either positive or negative (add harmonics to make the stop brighter, subtract them to make it duller).

The original stop being adjusted will be depicted in Chart 5 as the red line; the adjusted version will be shown by the blue line. This process can be repeated until the waveform graph indicates what alterations in the tone are desired:

a. A “fattening” of the major lobe will usually indicate a “plumper” sound; a “thinning” will make the sound “stringier”.

b. Displacement of the major lobe will indicate that the voice will be more “open” (purely “stopped” voices are perfectly symmetrical left to right).

c. Changes in the number of lobes (humps) indicate more or less of the “odd” harmonics (more or less “quinty”).

It is also possible to begin with a “straw man” voice specification instead of an actual Stop Card as the starting point for making adjustments:

a. The most “buzzy” sound possible is a pure sawtooth waveform and would be obtained by entering the values 62, 58, 54, 50, 46, 42, 38, 34, 30, 26, 22, 18, 14, 10, 6, and 2 into the Comparison Stop Card yellow cells in E36 through T36 (for an 8’ reed) and putting “1” into salmon-colored box D36. For a 4’ reed, enter the values 60, 52, 44, 36,

Page 4: Allen Digital Organ Stop Cards Procedures VI.doc

28, 20, 12, 4, -4, -12, -20, -28, -36, -44, -52, and -60. Note that this set of constants will produce a red curve that has 2 complete cycles of sawtooth, which is what would be expected of a 4’ stop (twice the frequency of an 8’ stop). Other constant sets can be found to produce a sawtooth wave at higher pitch registers.

b. If the desire is to produce woodwind tones, a symmetrical waveform such as a square wave is the proper starting point. For an 8’ square wave, enter the values 63 into all 16 columns; for a 4’ square wave, enter 63 into the first 8 columns and -63 into the last 8; for a 2’ square wave, enter 63 into the first 4 columns, -63 into the next 4, back to 63 for 4 more, and finish with -63 in the last 4. A square wave unmodified will sound like a “zizzy” oboe. Knocking the square corners off by using smaller values at the transitions will make the tone less screechy.

c. Because 16 is not divisible by 3, 5, or 7evenly it is not possible to produce sawtooth or square waves at the mutation pitches 2 2/3’, 1 3/5’, 1 1/3’, or 1 1/7’.

Once the chart shows waveform changes that appear desirable, use the loudness factor in D29 to adjust the loudness and the procedures later in this document to punch the new Stop Card.

5. Producing the new Stop Card.

Once a pattern of red values in Sheet 1 cells E29 through T29 has been produced, it is time to transfer these values to the new Stop Card. This is a relatively simple process. Refer to Sheet 2 of the Excel spreadsheet. For each of the 16 card columns, perform the following steps:

a. Look up the red value for the column in the “Converting Between Column Binary Format and Decimal” tables matching it to the “Decimal Value” column of the table. Remember that negative values are in the right half of the table and positive values are in the left half.

b. Note the pattern of punches associated with that decimal value. The “X” characters mark the rows to be punched in that particular column. It is possible that all 7 rows (0 through 6) could be punched (a value of -1) or none might be (a value of zero). All other combinations of punches and blanks are possible.

c. Be sure that the pattern of 8- and 9-row punches is also present on the card. If they are not there (by using a pre-punched skeleton card), you will also have to punch those. They must be punched exactly as found on a standard Stop Card. Do not skip any just because that column might not have any other punches (the clocking punches are what allow that zero value to be entered).

Alternatively, beginning with version IV of this spreadsheet, there is a new Sheet 3 that visually depicts the IBM card layout and indicates which columns and rows are to be punched by black marks in them. The upper field of this Sheet represents an IBM card and specifically depicts the row and column where every punch must be made (where the marks are). The Sheet 3 data is created automatically from the values in cells E29 through T29.

There are many different devices for punching IBM 80-column cards and they all operate somewhat differently. This document does not attempt to cover all the different ways that multiple punches in a single column might be done—it will be necessary for the organist to learn how to do this with the machine available. There will usually be a button called a “multiple punch” button, and this must be depressed and kept depressed while all punches in that column are made, then released (at which time the card will be advanced one position). Some practice in producing correctly-punched cards will probably be required.

6. Afterword.

I have tried to make this process as simple and straightforward as possible. The original document I produced years ago was very arithmetic-intensive and required a lot of manual calculator activity. In this more modern version I have incorporated the capabilities of the Excel spreadsheet facility to significantly reduce the amount of arithmetic required and to

Page 5: Allen Digital Organ Stop Cards Procedures VI.doc

produce graphical displays of the resultant waveforms. I hope that the procedures described above are sufficiently detailed and uncomplicated to be useful. If you have any questions, please direct them to me. I do recommend a lot of “playing around” with the various features of the spreadsheet with checking of the Chart 5 display each time to get a feel for how the various control entries interact. Here are three overall considerations:

a. For a simple re-scaling of an existing stop, set all the Strength Factor yellow cells (D5 through D20 on Sheet 1) to 0 (zero), set the salmon-colored box D36 to 1.0, and enter the data from the existing card into yellow cells E36 through T36. The values to be entered into these cells can be obtained either by using Sheet 2 to manually convert the binary codes or by using the new field of Sheet 3. Chart 5 will show the original Stop Card curve in red and the loudness-adjusted (by value in D29) curve in blue.

b. When using the Synthesis process, either using Hammond drawbar ® settings or by knowledge of the desired harmonic content, use the Strength Factor yellow cells (D5 through D20) for input and set the salmon-colored box D36 to 0 (zero). Although this prevents the entries in yellow cells E36 through T36 from having an effect on the resultant waveform, values in those columns will produce a red curve in Chart 5, and this might be confusing. I recommend that those yellow cells be set to 0 (zero) also.

c. Using the Synthesis process to modify an existing (or “straw man”) waveform, all the yellow cells may have values in them and the salmon-colored box will be set to 1.0. The use of the distinct processes together simplifies making minor changes in timbre to existing Stop Card voices.

Change Log.

Version III corrected an error in the harmonic-synthesis procedure that erroneously excluded the upper half of the available harmonics and mis-labeled the ½’ line as 1’. Charts 4 and 5 were also added as improvements of Charts 1 and 3, respectively (end-cycle zero-crossings handled). The references in this document have been changed to reflect the added rows required for the fix to the harmonics. This document should not be used for earlier versions.

Version IV incorporated the Sheet 3 capability of displaying what the punched IBM card would look like. It also added cell protection to prevent inadvertent destruction of necessary values by overwriting.

Version V just made some minor cosmetic changes to Version IV.

Version VI added a new card-image field to Sheet 3 below the original one. This new field allows entry of zeroes or ones into the yellow cells to replicate where holes are punched in rows 0 through 6 on the Tone Card. When this has been done, the larger cells below each data column show the computed decimal values of the binary data that had been encoded on the card. These values are also plotted on Chart 5 as a green line. (If this is confusing, type zeroes into all the yellow cells on Sheet 3 and the green line will then lie on the x-axis and be out of the way.)