home *** CD-ROM | disk | FTP | other *** search
/ Crawly Crypt Collection 1 / crawlyvol1.bin / sound / octalyse / docs / ucdm.txt < prev   
Text File  |  1994-07-01  |  12KB  |  242 lines

  1. ***************************************************************************
  2. *                               /\                                        *
  3. *                              /--\                      *
  4. *      |\     /                      /-------\                  *
  5. *      | \    |  /---- :     :        |          /-----\ |----\   /----      *
  6. *      |  \   | |      |     |        |          |     | |     | |      *
  7. *      |   \  | |----  |  ^  |        |          |     | |____/  |----      *
  8. *      |    \ | |      | / \ |        |           |     | |  \    |      *
  9. *      |     \|  \____ |/   \|         \_______/ \_____/ |   \_   \____      *
  10. *                                        *
  11. *             P R O D U C T I O N                  *
  12. *                                      *
  13. ***************************************************************************
  14.  
  15.  
  16.  
  17. Some information about UCDM - The Software Soundchip
  18.  
  19.  
  20. Copyright
  21. ---------
  22. The UCDM-players TAMMANY, TERMODY, NIKITA, RACHEL, BANSHEE, NAISHEE,
  23. ANGELICA, CATHRYN and MORTICIA are Copyright NEW CORE SOFTWARE and may
  24. not be used or included in any commercial software without our written
  25. permission. Nor may they be changed or rewritten in any way.
  26.  
  27. Registered Octalyser users are allowed to include the UCDM-players in
  28. their own non-commercial software. We consider Shareware and 
  29. Licenceware as non-commercial as long as the accumulated sale of the title
  30. brings in less than 1000 GBP. If the income from your title exceeds 
  31. 1000 GBP you are obliged to send 10% of the profit to New Core 
  32. Software.
  33.  
  34. Unregistered Octalyser users are only allowed to use our UCDM-players
  35. from within the Octalyser.
  36.  
  37. The UCDM-standard is public domain so anyone is allowed to write 
  38. his own Players and Feeders. The ASCII-string beginning 362 bytes from
  39. the start of every player states who owns its copyright.
  40.  
  41.  
  42. What is UCDM?
  43. -------------
  44. UCDM is simply a standard for replayroutines, consisting of two parts,
  45. Players (UMP) and Feeders. A Feeder reads the songdata, translates it
  46. into sampleadresses, volumes and frequencies with which it feeds the
  47. player, that makes the actuall replay (the heavy bit).
  48.  
  49. The idea is that every user shall be able to combine these two routines
  50. so it suits him the best. I have a large variety of players from 12.5 kHz
  51. 4 voice with no volume control taking approximately 12% CPU-time on a
  52. normal STE, to an 8 voice 25 kHz player taking aproximately 95 % CPU-time.
  53.  
  54. In the same way I can easily make different feeders ranging from normal
  55. Tracker- or Quartet-Feeders to EPSS lookalike MID-file-Feeders, thus
  56. beeing able to play all known songformats without having to rewrite the
  57. whole replayroutine. However, the only Feeder I've written so far is a
  58. CORESONG-Feeder (my own fileformat, more about this later), the Feeder
  59. in Octalyser is written by Code.
  60.  
  61. How do I use UCDM in Octalyser?
  62. -------------------------------
  63. Octalyser has a built a Feeder, so the only thing you have to do is to
  64. load the desired Player from the UCDM-menu and activate it.
  65. If you then play a module you will probably notice that toneslides sounds
  66. terrible. To make it sound better you simply increase the variable in the
  67. UCDM-menu marked 'TO' and then activate it again. The higher the value,
  68. the better will toneslides, tonevibratos and finetune-settings sound, but
  69. the more memory will the Player take if it uses a frequency-table (like
  70. Tammany).
  71. If you are using 60 Hz screenupdate (including a Falcon in VGA-mode)
  72. the players will mess with the 8-channel-editor and make it flicker.
  73. Tammany doesn't work any good with the 8-channel-editor at all.
  74.  
  75.  
  76. Why should I use UCDM in the Octalyser?
  77. ---------------------------------------
  78. The internal Octalyser replay routine is written to be flexible and take
  79. smallest possible amount of memory. My UCDM routines are more speciallised
  80. and have therefore some other advantages and disadvantages. Tammany for
  81. example plays 8 voices in 25 kHz on a normal STE, with other words it's
  82. a lot faster than the internal routine. On the downside it takes a lot of
  83. memory and some calculations are a bit rough, which results in a slightly
  84. distorted sound (you will probably not notice it if you don't listen very
  85. carefully).
  86. If you are a Falcon-owner you should absolutely use the Players called
  87. Naishee and Banshee, that takes better use of Falcons increased resources.
  88.  
  89.  
  90. How do I use UCDM in my own programs?
  91. -------------------------------------
  92. To use UCDM and Octalysermodules in your own programs you will need a
  93. Feeder that can read modules or CORESONG-files (modules can easily be
  94. converted to CORESONGs). If you register Octalyser, we will send you a
  95. CORESONG-Feeder, a Module-to-CORESONG-converter and one or two more
  96. UCDM-Players (among them Rachel, the fast 12.5 kHz player).
  97. Why we use our own fileformat is that it is more compact than a module
  98. (the songdata (not samples) takes about 20 % of it's original size) and
  99. that we want to put the song and samples in two different files, so you
  100. can have more than one song in your program using the same samples.
  101. You will, of course, also receive a simple example-source in assembler
  102. (if demand is high enough we can also fix examplelistings in STOS
  103. GFA-Basic, C or Pascal). Please make sure that you follow the rules
  104. stated in the Copyright-section above.
  105.  
  106.  
  107. Information about the UCDM-Players
  108. ----------------------------------
  109. Here follows some technical information about the UCDM-Players supplied
  110. with Octalyser. All CPU-time is refered to a standard STE if nothing else
  111. is stated.
  112.  
  113. ANGELICA - This is a new 50 kHz 4 voice player that replaces TERMODY,
  114.            which was delivered with the earlier versions of Octalyser.
  115.            It's based around the same Algorithm as Termody and plays
  116.            four voices in REAL 50 kHz (no 25 kHz multiplex as in 
  117.            Protrackers `Hi-Speed 50').
  118.            The main differences between Angelica and Termody is that
  119.            Angelica supports CIA-timing (The B-flag in Octalyser can 
  120.            be set), takes a lot less memory, is Falcon-compatibel and
  121.            gives better soundqualithy. Besides, it's also a lot slower
  122.            than Termody but still fast enough for Octalyser.
  123.            I really recommend you to use this player as your premiere
  124.            player for 4-voice modules since it gives the best possible
  125.            soundquality and supports everything in the Octalyser.
  126.            It uses the blitter, which will make the lower border 
  127.            flicker when used in 60 Hz. 
  128.  
  129. TAMMANY - This is a 25 kHz Multiplex 8 voice player taking a maximum of
  130.           about 95% CPU-time, but it varies a lot depending on the
  131.           amount of voices actually playing and effects in use.
  132.           It takes quite a lot of memory and distorts the sound a 
  133.           little bit, although it is very hard to hear.
  134.           Falconcompatible and uses the blitter. Does not support
  135.           CIA-timing. Can't be used together with the 8-voice-editor
  136.           since the blitter is called anywhere during the first 200
  137.           scanlines, making the screen flicker since it disturbs a 
  138.           very important interrupt.
  139.           
  140. CATHRYN - This player was meant to replace Tammany fully. It takes 
  141.           half the amount of memory that Tammany does, it supports
  142.           CIA-timing, it doesn't disturb the 8-voice-editor and takes
  143.           a maximum of a little more than 80% CPU-time. Unfortunately
  144.           it takes more CPU-time in average than Tammany and it also
  145.           sounds a little bit worse, especially when using very high-
  146.           pitched samples since it's not using Multiplex. The sound-
  147.           difference should be about the same as between Protrackers
  148.           normal 25 kHz and 50 kHz Hi-Speed. 
  149.           If you're low on memory or using the 8-voice-editor I 
  150.           recommend you to use Cathryn instead of Tammany.
  151.            
  152. NAISHEE - Is a 4 channel 16-bit 50 kHz Falcon-only player. Since I can't
  153.           program the DSP yet, this runs on the 68030, taking nearly half
  154.           it's processortime. The reason that it's this slow is that I
  155.           have used the slowest kind of replayroutines in order to increase
  156.           the replayquality as high as possible. It doesn't distort the
  157.           sound at all and the 16-bit output makes sure that it takes
  158.           use of all eight bits of the samples even when playing at low
  159.           volume. Supports CIA-timing. Takes almost no memory at all.
  160.  
  161. BANSHEE - This is an 8 voice version of NAISHEE. It's slow, but plays
  162.           eight voices at highest possible quality.
  163.           
  164. ATTENTION!!!!
  165. -------------
  166. BOTH NAISHEE AND BANSHEE ARE UNSTABLE!!!
  167. They might crash Octalyser anytime and will almost certainly do it 
  168. within 2 hours of use. I have probably spent more than 100 hours trying
  169. to debug them and can only say that they contain no bug whatsoever!!!
  170. I honestly believe that I have run into some kind of hardwarebug in 
  171. the Falcon's sound-system. The routine runs without a hitch if the 
  172. soundchip is turned off and the computer won't crash either if I turn 
  173. on the soundchip and stop the routine, they simply doesn't seem to be 
  174. getting along very well...
  175. The crashes I had were extremely suspicious. According to MonST I had 
  176. once gotten a Line-F exception during a "addq.l    #1,a0" and the other 
  177. crashes I had left totally different, but equally suspicious, 
  178. errormessages.
  179. I shall run a couple of new tests that has come to my mind as soon as I 
  180. have got the time. 
  181.  
  182.  
  183. NIKITA  - This is a slow 25 kHz multiplex, 4 voice Player taking nearly
  184.           no memory at all. No distortion either. It should give the
  185.           same soundquality as the internal player. The only difference
  186.           is that this uses multiplex instead of Anti-Alias, so all of
  187.           you that have argued about which method gives the best
  188.           quality can now make comparisons. The reason I wrote this
  189.           is that there absolutely is need for a normal allround-player
  190.           for gameintros etc.  Falcon compatible.
  191.  
  192. And to all of you that wonder why I name the players like this I have
  193. no good answer except that it's easier to talk about 'NIKITA' than
  194. 25KHZM4V.UMP (which would mean 25 kHz, Multiplex, 4 voices) and that
  195. I give them names that I like.
  196.  
  197.  
  198. OTHER UCDM-PLAYERS
  199. ------------------
  200.  
  201. I have written three UCDM-Players that are not in this package:
  202.  
  203. RACHEL - This player is totally oriented towards fastest possible 
  204.          replay. It plays 4 voices in 12.5 kHz without volume-control
  205.          and doesn't take more than 12 % CPU-time. It doesn't take so
  206.          much memory either, making it THE player for demos or games
  207.          containing a lot of movement.
  208.          
  209. MORTICIA - This player was written for Unique Development Sweden and will 
  210.            be used in their game called "OBSESSION" which will be a 
  211.            totally fabulous pinball-game. The player uses 5 voices in
  212.            25 kHz (4 for the music and 1 for the soundeffects).
  213.            This will not be distributed to others than softwarehouses
  214.            that are ready to pay for it.
  215.  
  216. TERMODY - This is an old 50 kHz player. It plays 4 voices in 50 kHz
  217.           and don't take more than 60% CPU-time. But it totally eats
  218.           memory, might produce some clicking sounds now and then, is
  219.           not Falcon compatibel, doesn't support CIA-timing and 
  220.           distorts the sound a bit more than any other of my players.
  221.           Because of all these negative side-effects I decided to not
  222.           bundle it with the Octalyser anymore (it was bundled with 
  223.           all earlier versions of the Octalyser).
  224.           If anybody wants it, then just send me enough money for a 
  225.           disk, envelope and stamp and I will send it to you.
  226.  
  227.  
  228.  
  229. If anybody out there is interested in writing UCDM Players and/or Feeders,
  230. then feel free to contact me for information.
  231.  
  232. If somebody out there want to write UCDM-Players for the Amiga or Macintosh
  233. in order to create a standard (would be useful when converting games
  234. between platforms) they are very welcome to contact me.
  235.  
  236. Happy UCDM-using out there!
  237.  
  238.  
  239.                          Best wishes
  240.  
  241.                  Tord Jansson ( Blade of New Core )
  242.