Directory: MAIN Ad Lib, May 1989 ---------------- Sound driver (SOUND.COM) upgraded to V1.51. Ad Lib, January 1989 -------------------- This diskette now contains version 1.5 of the sound driver. This version uses a different method of calculating delays (required between writes to the chip) so that the W option (see Dec-87 below) on fast machines will no longer be necessary. The instrument file format, as shown in Appendix C of the Programmer's Manual, has changed and is explained in the file BKFORMAT.TXT. In the event that two different boards use the same port address, it is useful to be able to change the port address of one of the boards. As explained in the Programmer's Manual, the port address of the Ad Lib card is at 0x388. However, there exists the possibililty of using three other addresses: 0x218, 0x288 or 0x318. The port address is currently hard-wired, but in future production runs we will be adding a jumper to the card to facilitate the changing of port addresses. (To date, conflicts have been very rare.) If you are developing software which does not use our sound driver, we suggest that you allow for the use of different port addresses as we have done in our driver (see next paragraph). Our sound driver (SOUND.COM) can accomodate the different port addresses. This is done when loading the driver by giving the argument "p" followed by the address to be used. For example: > sound p288 This will cause the sound driver to use0x288 as the port address. Ad Lib November 1988 -------------------- New Version 1.3: - Support of two new functions: function 22: Use to set the pitch bend range (in half-tones). Argument 1: pitch range, from 1 to 12. Function 0 sets this value to 1 half-tone for compatiblity with software that was designed for the older sound-driver. function 23: Use to enable/disable the wave-form parameter. Argument 1: state, 0 == off, 1 == on. Note that the function 0 disables the wave-form parameter, so to enable it, function 23 must be called AFTER function 0. If the wave-form is enabled (func. 23), then function 16 (Set timbre) expects two more integers at the end of the timbre definition array (field 26 & 27), which specify values for the wave-form parameters of operators 0 and 1. Here is the description of the status register, read from i/o address 0x388: bit # function ------+--------- d7: IRQ flag, set if flag T1 or T2 is on d6: T1 flag, set if timer 1 has elapsed. Remains set until it is reset by setting bit d7 in the register at address 4 d5: T2 flag, same as d6 for timer 2 d4-d0: not used. (This information is missing from the Programmer's Manual. Note however, that the interrupts are not wired, so that the timers are of no use given the delivered configuration of the card. You can wire this interrupt yourself if you wish, but this will void your warranty.) Ad Lib April 1988 ----------------- Errors where detected in the Programmer's Manual, here is the list: page 26, 27 and 28: Functions 7, 11 and 13 that are given in your manual are not supported (they are not implemented). page 40: The delay times after a read or write are in micro (10E-06) seconds. page 40: Register 04 start/stop T1 and T2 should be exchanged ( T1=D0, T2=D1 ). page 43: When NOTE-SEL = 0, FNUM(MSb) are Xs (dont cares). Ad Lib December 1987 -------------------- This disk contains a new sound driver (sound.com version 1.2) update for fast computers with 286 or 386 microprocessors. This new sound driver solves the note-skipping-problem. All you need to do is replace your old sound driver with the new one. If you still have problems you can change the wait parameter as indicated below: sound Wxx where 'xx' is the delay value in hexadecimal. The value ranges from 0 to 10 for normal systems. Ad Lib November 20th 1987 ------------------------- In regards to the .ROL file formats, certain fields must be set to specific values: -field #1 and #2 should be set to 0 and 4 respectively. -field #9 should read 0 => percussive, and 1 => melodic. -field #10 should be set to zero.