home *** CD-ROM | disk | FTP | other *** search
/ Prima Shareware 3 / DuCom_Prima-Shareware-3_cd1.bin / PROGRAMO / PASCAL / DIGPAK / README.PRN < prev    next >
Encoding:
Text File  |  1994-04-06  |  39.5 KB  |  867 lines

  1.  
  2.    Documentation for the DIGPAK & MIDPAK Developers Kit v1.01
  3.  
  4.                 by
  5.  
  6.               John W. Ratcliff
  7.            Compuserve: 70253,3237
  8.               Genie: J.RACLIFF3
  9.              BBS: 1-314-939-0200, 14.4kb
  10.  
  11.              TO GET THE DEVELOPERS KIT CALL
  12.              THIS BBS NUMBER AT UP TO 14.4KB
  13.  
  14.              DIGPAK & MIDPAK DEVELOPERS KIT
  15.              EXISTS IN THE MAIN LIBRARY AS:
  16.  
  17.              DMKIT.ZIP
  18.              SBKIT.ZIP
  19.  
  20.         SoundBlaster only version of the programmers kit.
  21.  
  22.  
  23.              Document first draft: January 3, 1994
  24.                   second release: March 8, 1994
  25.                   third release: March 25, 1994
  26.                          fixes to SB16.COM
  27.                          and first release
  28.                          AWE32 driver.
  29.                   fourth release: April 6, 1994
  30.                          SoundBlaster only
  31.                          version of the kit.
  32.  
  33.              Copyright (c) 1994
  34.              The Audio Solution
  35.              747 Napa Lane
  36.              St. Charles, MO 63304
  37.  
  38.  
  39.  
  40.         DIGPAK : DOS based digital sound drivers.
  41.              Written by John W. Ratcliff (CIS:70253,3237)
  42.              Copyright (c) 1994, The Audio Solution.
  43.              $500 per/product distribution license fee.
  44.  
  45.         MIDPAK:  DOS based MIDI music player.
  46.              Written by John W. Ratcliff and John Miles
  47.              Copyright (c) 1994, The Audio Solution.
  48.              $500 per/product distribution license fee.
  49.  
  50.  
  51. ==============================================================================
  52. What is DIGPAK and MIDPAK?
  53. ========================================================================
  54. DIGPAK and MIDPAK are a set of drivers which provide a device
  55. independent API layer under DOS real-mode and protected mode that
  56. supports virtually all sound cards.  DIGPAK allows playback of digital
  57. sound and MIDPAK allows the playback of General MIDI music on ALL sound
  58. cards (including Adlib, SoundBlaster, and other non-MIDI devices through
  59. the best MIDI emulation package available.)  DIGPAK and MIDPAK
  60. operate either as DOS TSR's or can be demand loaded and dynamically linked
  61. by your application.  (The preferred method).
  62.  
  63. Unzip this file, with sub-directories, into a directory called THEAUDIO
  64. and point your PATH statement to the directory.  Once you have done this
  65. you can go to any directory on your machine containing MIDI files or
  66. sound files and type MENU to use MIDPAK and DIGPAK to peruse them.
  67.  
  68. DIGPAK & MIDPAK are for use by professional DOS developers who need to
  69. incorporate sound and music in their products across a wide range of
  70. hardware devices.  These tools are not for the layperson, or beginning
  71. programmer.  All programming examples and interface specifications are
  72. presented in the C and 8086/80386 assembly languages.  If you are not
  73. familiar with digital sound, MIDI music, and C and assembly language
  74. programming then this programmers kit is probably not for you.
  75.  
  76. This kit supports both DOS real-mode as well as DOS protected mode
  77. interface layers.  All assembly language source code must be assembled
  78. with Borland Assembler (in IDEAL mode) and the C code may be compiled
  79. with any C compiler.  The real-mode C code presented here was developed
  80. with Borland C 3.1 DOS IDE and the flat-model C code was generated under
  81. Watcom C386 v9.0.
  82.  
  83. ==============================================================================
  84. Who developed DIGPAK & MIDPAK?
  85. ========================================================================
  86. DIGPAK and MIDPAK were developed by John W. Ratcliff, a game developer
  87. for Electronic Arts.  These drivers were created to allow me to
  88. incorporte sound and music in my game Seawolf for Electronic Arts.
  89. MIDPAK uses the MIDI drivers developed by John Miles of Miles Design.
  90.  
  91. ==============================================================================
  92. What's the quickest way to look at the software?
  93. ==============================================================================
  94. Run SETUP to configure both DIGPAK and MIDPAK for your sound card.  Then
  95. type MENU to play some music and sound.  After running SETUP you can
  96. also run TEST, TEST16, or SEGUE, to run the demo programs.
  97.  
  98. ==============================================================================
  99. Who uses DIGPAK & MIDPAK?
  100. ========================================================================
  101. The list which follows are just some of the companies which use the
  102. DIGPAK and MIDPAK drivers in their DOS based entertainment products.
  103.  
  104.  Electronic Arts             Epyx
  105.  Activision                 Fun Univ Netwk
  106.  Spectrum Holobyte             Home Brew Software
  107.  The Software Toolworks          Humongous Entertainment
  108.  SSI, Strategic Simulations Inc.     ICOM Simulations
  109.  Milliken Publishing Company         Interplay
  110.  Commodore Computer             IntraCorp
  111.  Virgin Games                 Kram
  112.  Compu-Teach                 Legacy Software
  113.  Knowledge Adventure             Macmillan/McGraw Hill
  114.  Gametek                 Magnetic Images
  115.  Access Software             MECC
  116.  Alive Software              Merit Software
  117.  Azeroth Publishing             Microleage Sports Assoc.
  118.  Bethesda Softworks             Ninga
  119.  C.R.A.P.O., Inc.             Norsehelm Productions
  120.  Concepteva                 Objects, Inc
  121.  Cooper, R.J. & Assoc.             Optimum Resource
  122.  DC True                 Presage Software Co. Inc.
  123.  Dennis Cunningham             Quantum Quality Productions
  124.  Three-Sixty Pacific             Redwood Games
  125.  Destiny Software             Saddleback Graphics
  126.  Edmark Corpoartion             Safari Software
  127.  Simutronics                 White Wolf Productions, Inc.
  128.  Stragem                 XOR Corporation
  129.  T&t Research                 Trilobyte
  130.  Waterford Institute             Masque Publishing
  131.  Wesson International             Iterated Systems
  132.  
  133.         and many more...
  134.  
  135.  
  136. ==============================================================================
  137. What products use DIGPAK & MIDPAK?
  138. ========================================================================
  139. Below is just a very PARTIAL list of the product that use DIGPAK & MIDPAK
  140. drivers.
  141.  
  142. Guardians of Eden    Access Software         MidPak
  143. Return to Zork        Activision            DigPak
  144. Mechwarrior II        Activision            DigPak
  145. Animal Quest        Alive Software            DigPak+MidPak
  146. Magic Crayon        Alive Software            DigPak+MidPak
  147. VGA Jigsaw        Alive Software            DigPak+MidPak
  148. Inspector Gadget:    Azeroth Publishing        DigPak+MidPak
  149. Terminator 2029     Bethesda Softworks        DigPak
  150. Le Ponctueur        C.R.A.P.O., Inc.        DigPak
  151. Bilou            Concepteva            DigPak
  152. Switch Progressions    Cooper, R.J. & Assoc.        DigPak+MidPak
  153. Switch Quik        Cooper, R.J. & Assoc.        DigPak+MidPak
  154. Stepping Stones Bonus    Compu-Teach, Inc.        DigPak+MidPak
  155. Shadow President    DC True             DigPak
  156. T-Zero            Dennis Cunningham        DigPak+MidPak
  157. Battle Cruiser 3000AD    Three-Sixty Pacific        DigPak
  158. Creepers        Destiny Software        DigPak+MidPak
  159. Millie's Math House     Edmark Corpoartion              DigPak
  160. KidDesk         Edmark Corporation        DigPak
  161. Fun Univ Ntwk Intfc    Fun Univ Netwk            DigPak+MidPak
  162. Wheel of Fortune    Gametek             DigPak+MidPak
  163. Gateworld Trilogy    Home Brew Software        MidPak
  164. PuttPutt's FunPack      Humongous Entertainment         DigPak+MidPak
  165. PuttPutt Joins Parade    Humongous Entertainment     DigPak+MidPak
  166. Fatty Bear        Humongous Entertainment     DigPak+MidPak
  167. PuttPutt Goes to the Moon Humongous Entertainment    DigPak+MidPak
  168. Beyond Shadowgate    ICOM Simulations        DigPak+MidPak
  169. Battle Chess 4000    Interplay            DigPak
  170. Grandmaster Chess    IntraCorp            DigPak+MidPak
  171. Space Adventure     Knowledge Adventure        DigPak
  172. Dinosaur Adventure    Knowledge Adventure        DigPak
  173. Realms of Avarton    Kram                DigPak
  174. Mutanoid Math Challenge Legacy Software         DigPak+MidPak
  175. Mutanoid Word Challenge Legacy Software         DigPak+MidPak
  176. Sights & Sounds     Macmillan/McGraw Hill        DigPak
  177. Places to Play        Magnetic Images         DigPak
  178. Oregon Trail Deluxe    MECC                DigPak+MidPak
  179. Tom Landry Football    Merit Software            DigPak+MidPak
  180. MicroLeague Baseball IV Microleague Sports Assoc.    DigPak+MidPak
  181. MicroLeague Football II Microleauge Sports Assoc.    DigPak+MidPak
  182. Microleage Cards    Microleage Sports Assoc.    DigPak
  183. Math Zone        Milliken Publishing        DigPak
  184. Marvin The Moose    Milliken Publishing        DigPak
  185. Milliken Storyteller    Milliken Publishing        DigPak
  186. Math Sequences        Milliken Publishing        DigPak
  187. Cribbage Master     Ninga                DigPak
  188. Ragarok (Valhalla)    Norsehelm Productions        DigPak
  189. Layout for DOS        Objects, Inc            DigPak+MidPak
  190. Stickybear Townbuilder    Optimum Resource        DigPak
  191. Contraption ZAck    Presage Software Co. Inc.    DigPak+MidPak
  192. Spaceward Ho PC     Presage Software Co. Inc.    DigPak+MidPak
  193. Solitaire's Journey     Quantum Quality Productions     DigPak+MidPak
  194. Pickle Wars        Redwood Games            DigPak+MidPak
  195. Guzzle Puzzles        Redwood Games            DigPak
  196. My Paint        Saddleback Graphics        DigPak
  197. Space Chase 1,2,3    Safari Software         MidPak
  198. GemStone III        Simutronics            DigPak+MidPak
  199. Cyberstrike        Simutronics            DigPak+MidPak
  200. WorldAtlas        The Software Toolworks        DigPak+MidPak
  201. Chessmaster 3000    The Software Toolworks        DigPak
  202. BodyLink        Stragem             DigPak
  203. Pools of Darkness    Strategic Simulations Inc.    DigPak
  204. Gateway to the Savage    Strategic Simulations Inc.    DigPak
  205. DNA Parrot        T&t Research            DigPak
  206. Monopoly Deluxe     Virgin Games            DigPak
  207. Waterford Mental Math    Waterford Institute        DigPak+MidPak
  208. ATC/Tracon        Wesson International        DigPak
  209. Empire Deluxe        White Wolf Productions, Inc.    DigPak+MidPak
  210. NFL Challenge        XOR Corporation         DigPak
  211. Chess Maniac 5,000,001    Spectrum Holobyte        DigPak+AIL
  212. The 7th Guest        Virgin/Trilobyte        DigPak+AIL
  213. Seawolf         Electronic Arts         DigPak+MidPak
  214. KaleidoSonics        Masque Publishing        DigPak+MidPak
  215. Gambit            Electronic Arts         DigPak+MidPak
  216. Warlords II        SSG                DigPak+MidPak
  217.  
  218. ==============================================================================
  219. What type of 'commercial products' does the license fee apply to?
  220. ============================================================================
  221. Any piece of software which uses the DIGPAK & MIDPAK drivers for which
  222. the developer collects a fee REQUIRES a license. Yes, this INCLUDES
  223. shareware proudcts as well as those that sit on the shelf at a computer
  224. store. This also includes distributable multimedia demos, for which the
  225. multimedia authors were paid a fee to create.  If you are bidding on a
  226. multimedia project and intend to use MIDPAK and DIGPAK, then be sure to
  227. include the $1,000 license fee in your budget!
  228.  
  229. If you are making money because of the value that these drivers add to
  230. your product, then we deserve a license.  There are several man-YEARS of
  231. engineering work in these drivers, as well as continued expenses to
  232. maintain them.    The license fee serves as little more than a
  233. 'maintenance' fee for us to keep the drivers up to date, as well as run
  234. the BBS for people to get continued improvements and updates.
  235.  
  236. Do NOT use DIGPAK and MIDPAK if you are not prepared to pay the license
  237. fee.  Every single one of the products and companies listed above have
  238. paid this same license fee for the right to distribute the DIGPAK and
  239. MIDPAK drivers.
  240.  
  241. ==============================================================================
  242. Can I get a DIGPAK and MIDPAK license for a development tool?
  243. ============================================================================
  244. NO!!  The license for DIGPAK and MIDPAK is for multimedia,
  245. entertainment, and educational products which need support for
  246. interactive sound and music.  Development tools based on the DIGPAK and
  247. MIDPAK drivers are NOT allowed!!  If you want to create a development
  248. package that utilizes the DIGPAK and MIDPAK drivers then you must
  249. contact me directly to discuss such an arrangment.  You are NOT allowed
  250. to resell, DIGPAK and MIDPAK drivers under any conditions as a
  251. developers toolkit. This includes any sort of multimedia authoring
  252. toolkit.  The reason for this should be obvious. You would be in effect
  253. re-distributing DIGPAK and MIDPAK drivers license free, to other
  254. developers, and this is not allowed.  That's not to say we can't come to
  255. an agreement, but you cannot obtain a license for any type of
  256. developement or authoring system using DIGPAK and MIDPAK drivers.
  257.  
  258. ==============================================================================
  259. What do I do if I want to add sound and music support by don't want
  260. to pay a license?
  261. ============================================================================
  262. Call Mystic Software at 1-510-865-9189.  The Worx toolkit from Mystic
  263. software does not require any license fee and is a very nice development
  264. package.  Though it does not support as many sound cards as DIGPAK &
  265. MIDPAK, it is a very servicable development tool.
  266.  
  267. ==============================================================================
  268. What if my shareware product has a free portion, and then a registered
  269. portion?
  270. ============================================================================
  271. Then no license fee applies for the FREE version.  If you are developing
  272. public domain tools and utilities that support DIGPAK & MIDPAK, and they
  273. are truely FREE, then no license fee applies.  If that public domain
  274. tool is a development aid, tool, or authoring system, then the DIGPAK
  275. and MIDPAK portion of that tool MUST contain this COMPLETE document and
  276. make it extremely clear that the distribution license fee still applies
  277. to anyone using that authoring tool.
  278.  
  279. ==============================================================================
  280. If I use both DIGPAK and MIDPAK in a product how much is the total
  281. license then?
  282. ============================================================================
  283. $500 for DIGPAK and $500 for MIDPAK, for a total of $1,000.  Even if you
  284. sell 100,000 copies of the product, the license is still only $1,000.
  285. Unfortunatly even if you sell just 100 copies, the fee applies as well.
  286.  
  287. ==============================================================================
  288. How do I pay my license?
  289. ==============================================================================
  290. Write a check payable to The Audio Solution, and include with it a copy
  291. or your product.  Mail the check to:
  292.  
  293.     The Audio Solution
  294.     John W. Ratcliff
  295.     747 Napa Lane
  296.     St. Charles, MO 63304
  297.  
  298. Shortly thereafter you will receive a signed copy of the license agreement.
  299. Once you have paid the license fee, the agreement is considered in effect
  300. and you may distribute your product with the drivers.  You must, however,
  301. pay the license fee PRIOR to your product being shipped.
  302.  
  303. DIGPAK & MIDPAK are copyrighted software components.  If you distribute
  304. The Audio Solution drivers without having a signed license agreement you
  305. will be in violation of our copyright.    Your product could be required to
  306. be immediatly removed from retail distribution.  I don't think this is
  307. going to be a problem.
  308.  
  309. If you don't think DIGPAK & MIDPAK add $1,000 of value to your product, then
  310. do not use them, period.  Use the Worx Toolkit from Mystic, or write your
  311. own sound code.  But DO NOT use these drivers unless you intend to pay the
  312. license fee.
  313.  
  314. All DIGPAK drivers combined equal almost 20,000 lines of assembly code.
  315. And the same is true for all of the MIDPAK drivers.  John Miles and myself
  316. have invested over 4 years creating and maintaining these drivers.  We
  317. are making this developers kit widely available to the developer community
  318. as a service to the industry.  It is our goal to make these excellent
  319. development tools available to everyone.  But we have bills to pay like anyone
  320. else.  As a self-employed entrepenuer I do not get a paycheck,
  321. health insurance, paid vacations, or any of the outher ammenities that
  322. salaried employees have.  If people use these tools to enhance their product
  323. and generate revenue, then I feel strongly that I should be paid a
  324. license fee for these drivers.
  325.  
  326. ==============================================================================
  327. I'm a shareware author and I can't afford $1,000 until I get enough
  328. registrations.    What do I do?
  329. ============================================================================
  330. Send me a copy of your shareware product on my BBS along with a piece of
  331. e-mail explaining your situation.  In most cases I will issue a SHAREWARE
  332. LICENSE AGREEMENT that will require payment of the FULL license fee once
  333. you have received 500 paid registrations for your product.  If you don't
  334. receive 500 registrations, then you will not have to pay the license fee.
  335. But once you have received 500 registrations you MUST pay the license fee.
  336. As a shareware author I'm certain you understand not wanting to be ripped
  337. off, and likewise I would expect you to pay your license for the DIGPAK
  338. and MIDPAK drivers in good faith.  You must come to an agreement with me
  339. prior to the release of your shareware package.
  340.  
  341. ==============================================================================
  342. I'm doing software development for the disabled.  Even though I have
  343. to charge a fee for the software to cover expenses, we are a non-profit
  344. organization.  Could I be exempted from the license fee?
  345. =========================================================================
  346. In general yes.  I would like to provide exemptions to anyone using
  347. DIGPAK and MIDPAK to create software to help the disabled.  However, you
  348. will still need to receive a signed license agreement with that
  349. exemption. Please contact me ahead of time (via Compuserve or my BBS),
  350. and let me know about what you are doing.  When your project is complete
  351. you will receive a signed distribution license agreement, with the
  352. exemption.  Simply send me a copy of your product and a check for $1 to
  353. cover the license fee.    This DOES NOT include EDUCATIONAL SOFTWARE
  354. created by any FOR PROFIT organization.
  355.  
  356. ==============================================================================
  357. What kind of digitized sound format does DIGPAK support?
  358. ==========================================================================
  359. None.  DIGPAK is a low-level API layer.  It simply insulates the programmer
  360. from having to talk DIRECTLY to the hardware.  The data you pass to DIGPAK
  361. is the same data you would have been passing to the sound card itself.
  362. DIGPAK requires raw 8 bit unsigned PCM data in the first 1mb of address
  363. space in under 64k lengths.  Stereo 8 bit support is provided with
  364. interleaved left channel/right channel 8 bit samples.  Support for
  365. 16 bit digital sound in DIGPAK is provided through raw 16 bit SIGNED
  366. data.  Why signed?  Because every single 16 bit PC sound card I have
  367. encountered supports 8 bit unsigned PCM and 16 bit signed PCM.    The
  368. DIGPAK drivers, in almost every case, simply passes that chunk of
  369. audio data out to the DMA controller.
  370.  
  371. Interpreting .WAV files, .VOC files, or .ANYTHING files is a higher application
  372. level problem, one that you will have to provide support for yourself.    Since
  373. I always use audio data in RAW format by brining it over from the Macintosh
  374. I have no use or need for various sound file formats.
  375.  
  376. If you don't know what 8 bit unsigned PCM, 8 bit interleaved sound, and
  377. 16 bit signed sound means, then you will have to ask around on the networks
  378. or read some books.  Though I have insulated the user from the ugly
  379. details of the hardware layer, I can't insulate you from knowing about
  380. sound programming.  That you will still have to do on your own.
  381.  
  382. ==============================================================================
  383. How do I play many sounds at once?
  384. ==============================================================================
  385. DIGPAK supports only a single channel of sound at once, which reflects
  386. the nature of almost every single PC sound card on the market.    To play
  387. multiple sounds at one time requires that you 'mix' digital sound
  388. samples in real-time.  Under protected mode DIGPAK I have a digital mixer
  389. that keeps a constantly running stream of audio data, up to 16 channels
  390. in 16 bit 11khz stereo in real-time taking almost none of the machine's
  391. CPU.
  392.  
  393. I also consider this mixer highly proprietary.    I am not prepared to
  394. tell you how I did it, or how you can do it.  I simply mention it here
  395. to let you know that it can be done.  With my system I create an
  396. immersive environmental sound system.  Unlike a MOD player which must be
  397. able to react to percussive changes in as little as a 100ths of a
  398. second, my environmental sound system allows the application to que any
  399. sound going on inside a 3d environment in real time.  If someone is
  400. shooting off to your left, then you hear the shots going by.  If an
  401. airplane is flying overheard, you hear not only the plane's engine noise
  402. but also doppler shift and depth cueing via volume changes.
  403.  
  404. Just look a little at how sounds work in DOOM and you will get an ideal about
  405. the importance of immersive virtual sound.  I'm not interested in selling
  406. my environmental sound system because I consider it part of my competitive
  407. edge in the game industry.  I simply mention it here to make it very clear
  408. that the DIGPAK interface does not by any means limit you in terms of what
  409. you can do on the various sound cards.    It is only the smallest of layers
  410. between your application and the physical DMA transfer that a sound card
  411. has to do anyway.
  412.  
  413. The DIGPAK API is no more limiting than the sound card itself.    You can
  414. make it do as much or as little are your programming skills will take
  415. you.
  416.  
  417. ==============================================================================
  418. How do I get technical support?
  419. ==============================================================================
  420. You ask around.  Look at the list of products above.  DIGPAK and MIDPAK work.
  421. Many other programmers as well as myself have been able to do tremendous
  422. things with the DIGPAK and MIDPAK programming interface.  Just look at any
  423. of the PuttPutt products from Humongous Entertainment, or the music and sound
  424. in The 7th Guest (which doesn't directly use MIDPAK but uses the same MIDI
  425. driver and patch bank).  Programming a computer is extremely difficult.
  426. That's why I have provided and will continue to provide lots of sample
  427. source code for DIGPAK and MIDPAK.
  428.  
  429. But I cannot provide one-on-one technical support.  I have to write my games
  430. too, and I have found out that just answering hundreds of people's programming
  431. questions is a full-time job I'm not capable of keeping up with.  First
  432. of all DIGPAK and MIDPAK licenses barely cover the cost of keeping the BBS
  433. up and running.  Nobody wants me to charge even MORE for the drivers.
  434.  
  435. I haven't sold the DIGPAK and MIDPAK programmers kit for over a year.  By
  436. making the DIGPAK and MIDPAK programmers kit widely available electronically
  437. I hope to make lots of people educated in the use of the DIGPAK and MIDPAK
  438. programmers interface.    Thus help will be available on the Internet,
  439. Compuserve, and other places in the electronic community.
  440.  
  441. ==============================================================================
  442. What about VESA?
  443. ==============================================================================
  444. The multimedia sound card industry is highly political.  I am fully
  445. supporting the VESA standard for sound and music.  But it's not going to
  446. happen overnight.  It will take at least the next 18 months before you
  447. will be able to get the kind of sound driver support under VESA that is
  448. currently available with DIGPAK and MIDPAK.  Additionally DIGPAK and
  449. MIDPAK act as a value added API layer on top of VESA.  Especially MIDPAK
  450. which provides extensive support for midi parsing, and interrupt service
  451. control.
  452.  
  453.  
  454. ==============================================================================
  455. How do I use DIGPAK drivers?
  456. ==============================================================================
  457. The DIGPAK drivers all have the filename extension of .COM.  Starting at
  458. byte offset 3 from the beginning of the file is the ascii string
  459. 'DIGPAK'.  The default DIGPAK driver should always be copied to the
  460. filename SOUNDRV.COM.  DIGPAK drivers hook user interrupt vector 66h,
  461. which is documented briefly in the book 'PC Interrupts: A Programmer's
  462. Reference To BIOS, DOS, and Third-Party Calls' by Ralf Brown and Jim
  463. Kyle, published by Addison Wesley.
  464.  
  465. You configure a DIGPAK driver by running the program SETD.EXE.
  466.  
  467. The complete API documentation for DIGPAK is in the file DIGPKAPI.DOC.
  468. The C link layer for DIGPAK is through the C prototype header file
  469. DIGPLAY.H and by linking to the object module DIGPLAY.OBJ produced
  470. from DIGPLAY.ASM.
  471.  
  472. A DIGPAK driver can be loaded as a TSR simply by typing it's name.
  473. You can load the default sound driver, as a TSR, by typing 'SOUNDRV'
  474. and hitting enter.  You can unload that driver by typing 'SOUNDRV U'.
  475. The preferred method of using a DIGPAK driver is to demand load it
  476. in your program.  This is done by including the header file LOADER.H
  477. in your program and linking to LOADER.C.
  478.  
  479. Simply look at the sample program TEST.C which fully demonstrates
  480. loading both DIGPAK and MIDPAK and plays both music and sound effects.
  481.  
  482.  
  483. ==============================================================================
  484. How do I use MIDPAK drivers?
  485. ==============================================================================
  486. The SETM program will configure MIDPAK appropriately for your sound card
  487. configuration.    SETM creates the three file components for MIDPAK.  They
  488. are MIDPAK.COM, MIDPAK.ADV, and MIDPAK.AD. MIDPAK.COM is the MIDPAK
  489. driver itself, which provides the API functionality through user
  490. interrupt vector 66h.  MIDPAK loads into INT 66h as a layer ON TOP OF
  491. DIGPAK.  Meaning if you want to use both DIGPAK and MIDPAK at the same
  492. time, you first load DIGPAK, and then load MIDPAK.  The file MIDPAK.ADV
  493. is the AIL MIDI driver from Miles Design Inc.  MIDPAK represents a
  494. subset of the full AIL specification.  The complete AIL (Audio Interface
  495. Library) supports vastly greater interactive control over music.  If you
  496. are interested in purchasing the complete AIL system you can call Miles
  497. Design at 1-512-345-2642.  The AIL license includes full-source code
  498. disclosure, real-mode, protected mode, and Windows DLL versions, and a
  499. $7,500 one-time license fee (not for all three versions, but for each).
  500. Please don't call if you aren't prepared to pay the full license amount.
  501.  
  502. The last file is MIDPAK.AD.  This is the instrument definition file for
  503. OPL2 and OPL3 base sound cards (adlib, soundblaster, etc.).  This file
  504. is ignored on hardware MIDI implementation sound cards like the Sound
  505. Canvas, but is still must exist in the directory at load time.
  506.  
  507. This instrument file conforms to the general MIDI specification and
  508. was created by The Fat Man.  There is a distribution license fee
  509. associated with the use of this MIDPAK.AD file!  You must mail a
  510. copy of your product, a check for $1, and include the following credit:
  511.  
  512.  "General MIDI patches (c) 1994 The Fat Man and K. Weston Phelan"
  513.  
  514.  
  515.     The Fat Man
  516.     7611 Shoal Creek Blvd.
  517.     Austin, TX 78757
  518.     1-512-454-5775
  519.     BBS: 1-512-454-9990
  520.  
  521. Call the Fat Farm BBS to obtain more detailed information regarding the
  522. General MIDI license agreement.
  523.  
  524. Like DIGPAK, MIDPAK can be loaded and unloaded as a TSR.  Simply type
  525. 'MIDPAK' and it will load and stay resident.  Typing 'MIDPAK U' will
  526. unload the MDIPAK driver.
  527.  
  528.  
  529. ==============================================================================
  530. What is 'eXtended MIDI'?
  531. ==============================================================================
  532. MIDPAK, because it uses the AIL drivers from Miles Design, does not play
  533. MIDI files DIRECTLY.  Your MIDI file must be converted into eXtended
  534. MIDI format.  This is a pre-parsed MIDI file format created by Miles Design.
  535. The eXtended MIDI file format supports multiple MIDI sequences in a
  536. single file, that MIDPAK will let you switch to almost instantly using
  537. the PlaySequence command.  You add multiple MIDI files to a single eXtended
  538. MIDI file (XMI) as follows:  Say you have three song files call SONGA.MID
  539. SONGB.MID and SONGC.MID and wanted to put them all in one XMI file.
  540. You would do the following:
  541.  
  542.     MIDIFORM SONG.XMI SONGA.MID SONGB.MID SONGC.MID
  543.  
  544. This places the three MIDI sequences into the single eXtended MIDI
  545. file SONG.XMI.    They would be accessed in MIDPAK as PlaySequence(0)
  546. PlaySequence(1) and PlaySequence(2).
  547.  
  548.  
  549. ==============================================================================
  550. What format should the MIDI data be in?
  551. ==============================================================================
  552. On a true MIDI device like an MPU401 MT-32 or SoundCanvas, exactly what
  553. is found in the MIDI stream is passed to the device.  So however that
  554. MIDI device responds to MIDI is what gets passed down.    (Excluding
  555. SysEx messages).
  556.  
  557. But on an Adlib or SoundBlaster MIDPAK EMULATES a MIDI device.    And that
  558. EMULATION has certain restrictions.
  559.  
  560. Channels 2-9 are the melodic tracks.
  561. Channel  10 percussions.
  562.  
  563. The patch set is in the general MIDI format.
  564.  
  565. I know very little about MIDI, and rely heavily on professional MIDI
  566. composers to provide my music.    To get your MIDI music into MIDPAK
  567. compatible format so that is sounds GREAT, you can contact the
  568. following composers:
  569.  
  570.  
  571.     Wallace Music & Sound
  572.     Rob Wallace, Executive Producer
  573.     6210 West Pershing Avenue
  574.     Glendale, Arizona 85304-1141
  575.     1-602-979-6201
  576.  
  577.     Computer Music Consulting
  578.     Donald S. Griffin
  579.     239 Richland Avenue
  580.     San Francisco, CA 94110
  581.     415-285-3852
  582.  
  583.     The Fat Man
  584.     7611 Shoal Creek Blvd.
  585.     Austin, TX 78757
  586.     1-512-454-5775
  587.  
  588. These guys have all done numerous projects composing with AIL and
  589. MIDPAK.  They know how to make an Adlib, SoundBlaster, and SoundCanvas
  590. sound AWESOME.    But they are also professionals.  Please DO NOT CALL
  591. any of these guys unless you are prepared to accept a bid for a project.
  592.  
  593. If you think the license fee for MIDPAK at $500 is high, then wait
  594. until you find out how much a professional music score costs.  Even
  595. for a small project you are talking several thousand dollars.  So
  596. unless you have a legitimate music budget please do not call these
  597. guys.
  598.  
  599. I would recommend that you call Rob Wallace and get a bid on having
  600. all of your musical scores tweaked for the various sound cards.
  601.  
  602.  
  603. ==============================================================================
  604. When I play my MIDI music with MIDPAK some of the music seems to be missing?
  605. ==============================================================================
  606. Check your channel assignments.  MIDI emulation on SoundBlaster etc, occurs
  607. on channels 2-9 for melodic tracks, and channel 10 for percussions.  A lot
  608. of sequencing software saves MIDI out starting with channel 1.    Channel
  609. 1 is ignored under MIDPAK's MIDI emulation.  MIDPAK channel assignments
  610. were designed to emulate those of a Roland MT-32.  Even though we have
  611. provided a set of General MIDI patch assignments, the channel assignments
  612. are still limited to 2-9 and 10 as indicated here.
  613.  
  614. ==============================================================================
  615. The music on MIDPAK sounds differently than inside my sequencer?
  616. ==============================================================================
  617. Your sequencer is using a different set of patchs than MIDPAK uses.  Contact
  618. any of the composers mentioned above to get your MIDI tweaked to sound good
  619. with the MIDPAK patches.  BE PREPARED TO PAY A REASONABLE FEE FOR THIS
  620. SERVICE!!  I strongly recommend getting your music done professionally.
  621. The composers listed above have great experience at making music
  622. sound good with MIDPAK.
  623.  
  624. ==============================================================================
  625. When I specify a volume change with MIDPAK nothing happens?
  626. ==============================================================================
  627. MIDPAK's volume changes are relative to the base volume for that channel.
  628. If you didn't specify a base volume for each channel in your MIDI file then
  629. MIDPAK can't change the volume.  You specify the base volume for a MIDI channel
  630. with a controller 7.
  631.  
  632. ==============================================================================
  633. Can I use the same MIDI file for all sound cards?
  634. ==============================================================================
  635. No.  But you can come close.  Start by scoring for general MIDI, but it's
  636. best to tweak for SoundCanvas, General MIDI, OPL2/OPL3, and re-patch for
  637. MT-32.    Base volumes are quite a bit different on each device, and different
  638. patches sound better/worse across these devices.  The source code to the
  639. SETM (MIDPAK configuration program) is provided within (SETUP.ZIP) and
  640. depending on which sound driver the user selects you can copy different
  641. versions of your music.
  642.  
  643. ==============================================================================
  644. Why does MIDPAK hang under Windows?
  645. ==============================================================================
  646. Because of a bug in Microsoft Windows it doesn't support all of the
  647. hardware interrupts on the machine.  Specifically the CMOS real-time
  648. clock which MIDPAK uses.  If you use the TMIDPAK.COM version if MIDPAK
  649. this will work under Windows but it might casue other conflicts with
  650. your application.  One option is to use PMIDPAK.COM (polled MIDPAK) and
  651. to service the MIDI interrupt (at 120hz) yourself.
  652.  
  653.  
  654. ==============================================================================
  655. What are all of these files?
  656. ==============================================================================
  657.  
  658. ADLIB.ADV    Adlib AIL MIDI driver.
  659. ADLIB.ADD    Description file for ADLIB.ADV
  660. ADLIB.COM    DIGPAK Adlib digital sound driver.
  661.  
  662. ADLIBG.COM    Adlib Gold DIGPAK sound driver.
  663. ADLIBG.ADV    Adlib Gold AIL MIDI driver.
  664. ADLIBG.ADD    Description file for ADLIBG.ADV
  665.  
  666. AGU16.XMI    Demonstration MIDI file by The Fat Man
  667. AGU16.DES    MENU Description file for AGU16.XMI
  668.  
  669. ARIA.COM    DIGPAK sound driver for Sierra Semiconductors Aria cards.
  670. ARIAXMID.ADV    Aria AIL MIDI driver.
  671. ARIAXMID.ADD    Description file for ARIAXMID.ADV
  672. GM2.BNK     General MIDI intrument file for ARIA (REQUIRED!)
  673.  
  674. BIGMOUTH.COM    DIGPAK driver for Talking Technologies BigMouth card.
  675.  
  676. CMIDPAK.COM    CMOS real-time clock version of MIDPAK>
  677.  
  678. COOL!.SND    Demonstration sound effect from Wallace Music & Sound
  679. COOL!.DES    MENU Description file for COOL!.SND
  680.  
  681. CREDITS.XMI    Demonstration MIDI file from Wallace Music & Sound
  682. CREDITS.DES    MENU Description file for CREDITS.XMI
  683.  
  684. CVXSND.COM    DIGPAK sound driver for Covox Speech Thing.
  685.  
  686. DESERT.XMI    Demonstration MIDI file from Wallace Music & Sound
  687. DESERT.DES    MENU Description file for DESERT.XMI
  688.  
  689. DIGISP.COM    DIGPAK driver for Digispeech DS201.
  690.  
  691. DIGPKAPI.DOC    API Specification Documentation for DIGPAK.
  692.  
  693. DIGVESA.COM    DIGPAK sound driver for VESA compliant Wave interface.
  694.  
  695. DOS4GW.EXE    DOS 4GW DOS Extender used for Flat-Model DEMO programs.
  696.  
  697. EARTH.XMI    Demonstration MIDI file from Wallace Music & Sound
  698. EARTH.DES    MENU Description file for EARTH.XMI
  699.  
  700. ECHOII.COM    DIGPAK sound driver for Street Electronics Echo II
  701.  
  702. FAT.OPL     MIDPAK General MIDI patch set by the Fat Man.
  703.  
  704. FLAT <DIR>    Contains full source to protected mode interface for
  705.         DIGPAK & MIDPAK.
  706.  
  707. GENMID.ADV    AIL MPU401 General MIDI driver.
  708. GENMID.ADD    Description file for GENMID.ADV
  709.  
  710. GF166.COM    DIGPAK driver for Gravis Ultrasound
  711. GF1MIDI.ADV    AIL MIDI driver for Gravis Ultrasound
  712. GF1MIDI.ADD    Description file for GF1MIDI.ADV
  713.  
  714. GU23.XMI    Demonstration MIDI file by The Fat Man
  715. GU23.DES    MENU Description file for GU23.XMI
  716.  
  717. IBM1BIT.COM    DIGPAK PC Speaker driver 1 bit sound.
  718. IBMBAK.COM    DIGPAK PC Speaker driver, foreground only.
  719. IBMSND.COM    DIGPAK PC Speaker driver, limited background audio.
  720.  
  721. LANTSND.COM    DIGPAK driver for Lantastic Audio Adaptor from Artistoft.
  722.  
  723. LSIZE.COM    DIGPAK driver for the Life Size Sound Enhancer.
  724.  
  725. MAJESTY.XMI    Demonstration MIDI file from Wallace Music & Sound
  726. MAJESTY.DES    MENU Description file for MAJESTY.XMI
  727.  
  728. MARIO.XMI    Demonstration MIDI file from Wallace Music & Sound
  729. MARIO.DES    MENU Description file for MARIO.XMI
  730.  
  731. MENU.EXE    MIDPAK & DIGPAK Music & Sound browser.
  732.  
  733. MIDIFORM.EXE    Convert MIDI files into eXtended MIDI file format (XMI)
  734.  
  735. MIDPAK.ADV    Currently configured AIL MIDI driver.
  736. MIDPAK.COM    Currently configured MIDPAK driver.
  737. MIDPAK.AD    Currently configured MIDPAK patch bank file.
  738.  
  739. MIDPKAPI.DOC    API Specification Documentation for MIDPAK.
  740.  
  741. MT32MPU.ADV    AIL MIDI driver for MT-32/LAPC
  742. MT32MPU.ADD    Description file for MT32MPU.ADV
  743.  
  744. MULTISND.ADV    Turtle Beach Multisound AIL MIDI driver.
  745. MULTISND.ADD    Description file for MULTISND.ADV
  746. MULTISND.COM    DIGPAK Turtle Beach Multisound driver.
  747.         (BETA, requires PRESETS utility to have been run,
  748.         see TURTLE.ZIP)
  749.  
  750. NEWS.XMI    Demonstration MIDI file from Wallace Music & Sound
  751. NEWS.DES    MENU Description file for NEWS.XMI
  752.  
  753. NOSOUND.COM    Functional DIGPAK driver that plays no sound.  Responds
  754.         to all DIGPAK functions, for timing considerations but
  755.         takes little CPU.  Sometimes preferable over the lame
  756.         PC Speaker drivers.
  757.  
  758. PAS16.COM    DIGPAK sound driver for MediaVision ProAudio Spectrum 16
  759.         and Logitech Soundman 16.  Full 16 bit sound support.
  760.  
  761. PASFM.ADV    AIL MIDI driver for ProAudio Spectrum
  762. PASFM.ADD    Description file for PASFM.ADV
  763.  
  764. PASOPL.ADV    AIL MIDI driver for ProAudio Spectrum 16, etc.
  765. PASOPL.ADD    Description file for PASOPL.ADD
  766.  
  767. PAUDIO.COM    ProAudio Spectrum DIGPAK sound driver.
  768.  
  769. PCSPKR.ADV    AIL PC Speaker driver (only responds to channel 2 of MIDI)
  770. PCSPKR.ADD    Description file for PCSPKR.ADV
  771.  
  772. PEND.EXE    Flat model demo program, uses PostAudioPending calls
  773.         and auto-init DMA.  To use type PEND PEND.SND after
  774.         you have configured a DIGPAK sound driver.
  775.  
  776. PEND.SND    Demo sound effect for PEND.EXE
  777.  
  778. PMIDPAK.COM    Polled version of MIDPAK.  Application required to
  779.         provide timer services.
  780.  
  781. REAL<DIR>    Demonstration source code in normal DOS real-mode.
  782.  
  783. REMOVE.BAT    Batch file to remove configured MIDPAK and DIGPAK
  784.         sound drivers.
  785.  
  786. SB16.COM    BETA DIGPAK sound driver for SoundBlaster 16.
  787.         Supports 16 bit stereo sound.
  788.  
  789. SBCLONE.COM    DIGPAK sound driver for SoundBlaster Clones.
  790.  
  791. SBFM.ADV    AIL SoundBlaster MIDI driver.
  792. SBFM.ADD    Description file for SBFM.ADV
  793.  
  794. SBLASTER.COM    Creative Labs SoundBlaster DIGPAK sound driver.
  795.  
  796. SBP1FM.ADV    AIL SoundBlaster Pro original MIDI driver.
  797. SBP1FM.ADD    Description file for SBP1FM.ADV
  798.  
  799. SBP2FM.ADV    AIL SoundBlaster Pro current MIDI driver (OPL3).
  800. SBP2FM.ADD    Description file for SBP2FM.ADV
  801.  
  802. SBPRO.COM    Creative Labs SoundBlaster Pro DIGPAK sound driver.
  803.  
  804. SC32MPU.ADV    AIL MIDI driver for Roland Sound Canvas
  805. SC32MPU.ADD    Description file for SC32MPU.ADV
  806.  
  807. SEA.XMI     Demonstration MIDI file from Wallace Music & Sound
  808. SEA.DES     MENU Description file for SEA.XMI
  809.  
  810. SEGUE.EXE    Demonstration flat model program using SegueSequence.
  811.  
  812. SENSAT.ADV    AIL MIDI driver for Tandy Sensation.
  813. SENSAT.ADD    Description file for SENSAT.ADV
  814.  
  815. SETD.SND    Demonstration sound effect for DIGPAK setup program SETD
  816. SETD.EXE    DIGPAK setup/config program.  Source in SETUP.ZIP
  817. SETD.DES    MENU Description file for SETD.SND
  818.  
  819. SETM.XMI    Demonstration MIDI file for MIDPAK setup program SETM
  820. SETM.EXE    MIDPAK setup program. Source code in SETUP.ZIP
  821. SETM.DES    Description file for SETM.XMI
  822.  
  823. SETUP.ZIP    Source code to SETM and SETD.  Borland C 3.1 format.
  824.  
  825. SETUP.BAT    Batch file to configure both DIGPAK and MIDPAK drivers.
  826.  
  827. SHYA!.SND    Demonstration sound effect from Wallace Music & Sound
  828. SHYA!.DES    MENU Description file for SHYA!.SND
  829.  
  830. SKY.XMI     Demonstration MIDI file from Wallace Music & Sound
  831. SKY.DES     MENU Description file for SKY.XMI
  832.  
  833. SMSND.COM    Covox Voice Master II, SoundMaster I, DIGPAK driver.
  834.  
  835. SNDSYS.COM    Microsoft Windows Sound System DIGPAK driver.
  836.  
  837. SOUNDRV.COM    Default configured DIGPAK sound driver.
  838.  
  839. SOURCE.COM    Walt Disney Sound Source DIGPAK sound driver.
  840.  
  841. STFX.COM    ATI Stereo FX DIGPAK sound driver.
  842.  
  843. TANEXTX.COM    Tandy EX/TX/SX/HX PC jr, DIGPAK sound driver.
  844.  
  845. TANSLTL.COM    Tandy Sensation DIGPAK sound driver.
  846.  
  847. TEST.EXE    Flat Model DIGPAK/MIDPAK demonstration program.
  848. TEST.SND    Demonstration sound effect.
  849. TEST.XMI    Demonstration MIDI file.
  850. TEST1.SND    Another test sound effect.
  851. TEST16.EXE    Flat model DIGPAK demo program of all DIGPAK play modes.
  852. TEST2.SND    Another test sound effect.
  853.  
  854. TITLE.XMI    Demonstration MIDI file from Wallace Music & Sound
  855. TITLE.DES    Description file for TITLE.XMI
  856.  
  857. TMIDPAK.COM    8253 Timer Based MIDPAK.
  858.  
  859. VECTOR.COM    Interrupt vector handler used by flat-model demo programs.
  860.  
  861. VMSND.COM    Covox Voice Master I DIGPAK sound driver.
  862.  
  863. WSS.ADV     AIL MIDI driver for Microsoft Windows Sound System.
  864. WSS.ADD     Description file for WSS.ADV
  865.  
  866.  
  867.