home *** CD-ROM | disk | FTP | other *** search
/ back2roots/padua / padua.7z / padua / audio / ps3m303.lha / PS3M / PS3M.doc < prev    next >
Encoding:
Text File  |  1994-11-04  |  15.4 KB  |  475 lines

  1. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  2. ¡                PS3M « 3.03▀ / 03.11.94            ¡
  3. ¡            Copyright ⌐ 1994 Jarno Paananen            ¡
  4. ¡                 Guru / Sahara Surfers            ¡
  5. ¡             A Sahara Surfers Product 1994            ¡
  6. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  7.  
  8. Some words about PS3M:
  9. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  10.  
  11. This little thing could be just another program to play music.  It wouldn't
  12. even be the first one I have done.  The only special thing is that it plays
  13. S3M-modules.  For those to whom that word says nothing, can be told that
  14. they are the modules from all newer Future Crew demos (from Fishtro
  15. onwards), compotunes and the three Journey musicdisks from Purple Motion
  16. and Chaotic Mind from Skaven.   After the recent release of ScreamTracker
  17. 3.01 Beta more and more modules are obviously coming from other musicians
  18. too, as it really is the best tracker on the PC.  As they use 1-32
  19. channels (although "only" 16 digital channels and 9 AdLib-channels) and 8
  20. octaves, a normal Amiga is not capable to play them, right?  Yes, until
  21. now.
  22.  
  23. From version 000.9 onwards also 6-8 channel FastTracker modules can be
  24. played with PS3M (should I change the name?!?).  Although you can play
  25. 4 channel ProTracker tunes, I think there are faster programs available
  26. for that :)...
  27.  
  28. In version 002.5 came support for MultiTracker (MTM) modules and 1-32
  29. channel Protracker-style modules (TakeTracker and FastTracker 2(?)).
  30.  
  31. AND AGAINST (TOO) POPULAR OPINION, WORKS FINE UNDER KS1.2!
  32. (with appropriate reqtools.library)
  33.  
  34. Reqtools and Powerpacker libraries (by Nico Franτois) required.
  35.  
  36.  
  37. !!NOTICE!!:
  38. ¡¡¡¡¡¡¡¡¡¡¡
  39. From version 002.0 onwards, PS3M has a config file!  Use of it is
  40. _recommended_!
  41.  
  42.  
  43. Technical "information":
  44. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  45.  
  46. This player makes quite a big difference to those "normal" Amiga players as
  47. it has to mix all those channels to, in this case two, normal channels.
  48. This is the normal convention on the PC as for example normal Sound Blaster
  49. only has one digital channel.  The only hard part is to make it fast still
  50. having a great sound quality.  For those interested, this mixing routine is
  51. not one of those lame ones like in Startrekker, Octamed, Oktalyzer and so
  52. on.  It has real volumes and periods for each channel unlike the former ones
  53. that control the volume with hardware and have no independent volume
  54. control for channels.  It mixes the sound in 16 bits for maximum quality and
  55. has a volume boosting option to make the sound louder and clearer with
  56. multiple (8+) channels.  From version 002.5 onwards also a special 14-bit
  57. output mode is available.  The actual mixing loop is highly optimized and
  58. has only 6 instructions (is faster than the one with 5...) per byte.  All
  59. this makes it possible to play even 8 channel S3Ms with high mixing rates
  60. and great quality.  The better (faster) your machine is, the higher rates
  61. you get.  It is designed to use as little chip-ram as possible to fasten up
  62. on machines with real fast-ram.  The system is disabled for the playing to
  63. get the maximum performance out of a normal A500.  From 000.2 onwards,
  64. system friendly option is included for those with AGA- or turbomachines and
  65. even us poor mortals...  On a normal A500 it jams your machine nearly
  66. completely, so it isn't too useful for you.  Still I use it quite a lot
  67. with my A500, so it isn't too bad after all...
  68.  
  69. The blue bars at the bottom of the screen indicate that the player has
  70. free time.  This helps you to tune the maximum mixing rate for each tune
  71. separately.
  72.  
  73. There has been some argue about whether the surround option is a real
  74. Dolby Surround or not.  Therefore: IT HAS NOTHING TO DO WITH THAT DOLBY
  75. THING, it is made just to enchance the dull stereo sound by playing
  76. the two buffers from left and right with full volume and vice versa with
  77. half of the volume.  Like this:
  78.     Channel 0 - Left buffer, full volume
  79.     Channel 1 - Right buffer, full volume
  80.     Channel 2 - Left buffer, half volume
  81.     Channel 3 - Right buffer, half volume
  82.  
  83. This should end that discussion.  Thanks for the ones who contributed
  84. with pertinent response.
  85.  
  86.  
  87. BUT!!!!
  88.  
  89. As everything changes these days, also PS3M now has Real Surround-option.
  90. It needs a little more processor power, but not that much I though.  Also
  91. double the chip memory is needed for extra buffers.  It enchances the
  92. sound nicely with headphones and is nice also with normal speakers.  And
  93. if you got the Dolby Prologic decoder (lucky you!), you should get the
  94. effect quite nicely...
  95.  
  96.  
  97. Some commercial advertisement:
  98. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  99. This PS3M-routine is also used in the following players, so if you are
  100. not content with the "user-interface", use these:
  101.  
  102. DASMP from DAS Design (from 3.0 onwards)
  103.  
  104. HippoPlayer from Hippopotamus Design (MUST for under 2.0 Kickstarts, we
  105. still do exist!)
  106.  
  107. DeliTracker II already has a S3M-DeliPlayer (Hi Peter!) and should
  108. be available in near future.  Update: was released with version 2.07.
  109.  
  110. EaglePlayer (Version >1.52?)
  111.  
  112. Possibly in Accessible Player (If I remember to send the source ;)
  113. Possibly in new SmartPlay (if you contact me)
  114.  
  115.  
  116. Get yourself The Player 6.1, available since Assembly'94!
  117.  
  118.  
  119.  
  120.  
  121. Legal stuff:
  122. ¡¡¡¡¡¡¡¡¡¡¡¡
  123.  
  124.         This program and all other stuff coming in this package are
  125.                            FULLY copyrighted by
  126.  
  127.                  Jarno Paananen / Guru of Sahara Surfers.
  128.                  ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  129.  
  130. The author cannot be held liable for the suitability or accuracy of this
  131. manual and/or the program it describes.  Any damage directly or indirectly
  132. caused by the use or misuse of this manual and/or the program it describes
  133. is the sole responsibility of the user her/him self.
  134.  
  135. This program is freeware.  You can distribute it as long as _ALL_ files are
  136. included and not more than a nominal fee for copying is asked.  This program
  137. can _NOT_ be used for commercial purposes (including shareware) without
  138. a written permission from the author and a contribution for development
  139. costs (like Coca-Cola :-).  If you have suggestions or remarks about this
  140. program, or if you find any bugs, please let me know.
  141.  
  142. All reverse engineering is forbidden and that means that you're not allowed
  143. to rip the player from this program as I'm intending to use it for
  144. commercial purposes.  If this happens I have to stop releasing these kind of
  145. programs.  If you are really interested and want to use this in some
  146. production, contact me and we can discuss about it.  It's up to you...
  147.  
  148.  
  149.  THIS IS A BETA-PRERELEASE-TEST VERSION AND IS IN CONSTANT CHANGE. FURTHER
  150.              VERSIONS ARE COMING IF THE ABOVE IS NOT VIOLATED.
  151.  
  152.  
  153.  
  154. Contact address:
  155. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  156.  
  157. If you for some odd reason (especially commercial stuff) want to contact me,
  158. the address is:
  159.  
  160.                 J. Paananen
  161.                    Puskalantie 6
  162.                   FIN-37120 Nokia
  163.                   Finland
  164.                  Europe ;)
  165.  
  166.            Or by phone: +358-31-3422147 / Jarno
  167.  
  168.  
  169.             Or preferably via Internet:
  170.  
  171.              gurus2@freeport.uwasa.fi
  172.                (the most preferred)
  173.                     or
  174.               Jarno_Paananen@sonata.fipnet.fi
  175.                   (NO UUENCODES!)
  176.  
  177.                     or
  178.  
  179.                jpaana@freenet.hut.fi
  180.  
  181.  
  182.  
  183. Some revision history:
  184. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  185.  
  186. 3.03▀ / 03.11.1994
  187. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  188.     - Fixed that jumping, K-P!
  189.     * Some clean up in the source code...  Hi all of you who
  190.       have asked for those sources.  They are on the way...
  191.  
  192.  
  193. 3.02▀ / 30.10.1994
  194. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  195.     - Quick fix on the mixing system.  000 divide sucks.
  196.  
  197.  
  198. 3.02▀ / 28.10.1994
  199. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  200.     - System killer mode works again...
  201.     - Fixes in the mixing system.
  202.     * Exiting killer mode just pauses the module instead of
  203.       ejecting..
  204.     - Fixes in memory management.
  205.  
  206. ! As you can see from the update rate, I'm pretty busy at the moment due
  207. to my approaching graduation exams.  So please be patient with your
  208. e-mails and letters, I try to answer them as soon as possible even if it
  209. means several weeks. Thank you.
  210.  
  211.  
  212. 3.01▀ / 5.10.1994
  213. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  214.     * Mixing system changed a little to get a bit more stable
  215.       consumption of machine power.
  216.     - Fixed to work with my machine again ;) (Simply!  Dump that
  217.       version on your hard disk...)
  218.     - Memory management fixed once again.
  219.  
  220.  
  221. 3.01▀ / 29.9.1994
  222. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  223.     * Nearly all memory is now allocated dynamically according to
  224.       current playing mode, amount of channels and such.  So no
  225.       waste memory used anymore!  (Number of hunks dropped from 9 to
  226.       7...)
  227.  
  228.  
  229. 3.01▀ / 12.9.1994
  230. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  231.     - Some memory management problems fixed.
  232.  
  233.  
  234. 3.01▀ / 11.9.1994
  235. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  236.     + 14-bit mixing speeded up by 2 cycles/byte/channel on 68000!
  237.       Thanks Pauli!
  238.     + 020+ optimized versions finally included!  Improvement is
  239.       mainly directed to 020s as is fits in to the cache, but
  240.       should be faster on any 020+ machine.
  241.  
  242.     ? Sorry for the huge size (35 kB) ;)  It┤s a long way from
  243.       the first version and 9 kB...  But I do hope it┤s been to
  244.        a better direction!
  245.  
  246.  
  247. 3.00▀ / 10.9.1994
  248. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  249.     ! Back to "normal" version numbering ;)
  250.     ! PS3M now has GUI!  "Ripped" from P60 player, but who cares as
  251.       it has all the required features (and because I┤m lazy ;).
  252.       Some things are still missing, like proper module list
  253.       functions and configuration window (that shaded gadget), but I
  254.       hope I get them done in the "near" future.
  255.       Enjoy!
  256.  
  257.     ? A known bug: the timer goes crazy at midnight ;)
  258.  
  259.  
  260. 002.6▀ / 3.9.1994
  261. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  262.     * Some fixes with the so-called "ALE"-effect and note delay.
  263.  
  264.  
  265. 002.6▀ / 28.8.1994
  266. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  267.     * Proper finetune support for MTMs although the editor doesn┤t
  268.       support them, but is compatible with.
  269.     - Fixed that "disappearing surround channels"-bug!  A really
  270.       stupid mistake from my side, not an actual bug...
  271.     - Some other fixes I don┤t remember anymore.
  272.  
  273.  
  274. 002.6▀ / 11.8.1994
  275. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  276.     * Still some fixes with MTMs.  All notes were played one half
  277.       note too low as the MTM scale begins from C#0, not C-0...
  278.       (Note 0 means no note at all and that should be C-0...)
  279.     * Vol0-Optimizations are now finally correct.
  280.  
  281.  
  282. 002.6▀ / 10.8.1994
  283. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  284.     * Some fixes with MTMs.  Most of the commands are run also in
  285.       "set frames".
  286.     * Got rid of "twisted" sound with low mixing rates.
  287.  
  288.  
  289. 002.6▀ / 26.7.1994
  290. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  291.     + Proper vol0-optimizations.
  292.     - Loops are now correct also 020+ version.
  293.     - Sample was retrigged when changing only sample in 020+
  294.       version.  That's why the SuperStardust title sounded so
  295.       baaaaad.
  296.  
  297.  
  298. 002.6▀ / 18-21.7.1994
  299. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  300.     * Mixing routines rewritten for 020+.  Old routines which are
  301.       faster on 000/010 are also retained and used when no 020+ is
  302.       found.
  303.  
  304.     * Little changes nearly everywhere.
  305.  
  306.  
  307. 002.5▀ / 15-30.6.1994
  308. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  309.     + 14-bit output!  Needs _Much_ power, but is hopefully worth it.
  310.       Special 020+ optimized version should be included in 002.6.
  311.     + Multitracker (MTM) support!
  312.     + TakeTracker and similar 1-32 channel Protracker-style module
  313.       support.
  314.     - Some fixes with S3M-quirks.
  315.     + Replay version is now also shown in info window to help
  316.       comparision to other players using PS3M-play routine.
  317.     * Show sample names now shows 16 names instead of 20 on one page.
  318.  
  319. Don't worry about that ▀, because this is real 002.5.  It's beta just
  320. because I hadn't the time to do some improvements to the mixing routines.
  321.  
  322.  
  323. 002.4 / 12.6.1994
  324. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  325.     + Added show sample names option. Hi Icebeat!
  326.     - Fixed a bug when started from WB.
  327.     + Added contact info text.
  328.     - Little fixes.
  329.  
  330.  
  331. 002.3 / 25.5.1994
  332. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  333.     * Some speed improvements for 020+ (uses more lword access).
  334.       No slow down on 000/010.
  335.     * Recalculated S3M period table for NTSC (was PAL) as ST3 uses
  336.       NTSC periods.
  337.  
  338.     + Little touches here and there (All error messages now start
  339.       with capital letter, etc. :)
  340.     - Fixes in command line parser.  NOTICE: system friendly option
  341.       is now just -s with no extras.  If not present, disable option
  342.       is used.
  343.     - No more crap if no config file present.
  344.     
  345.     Thanks again Deadbeat!
  346.  
  347.  
  348. 002.2 / 9.-10.5.1994
  349. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  350.     (Four versions in three days... maybe I should give myself a break?
  351.      No new versions for a week, promise!)
  352.  
  353.     + REAL SURROUND!
  354.     - Hopefully fixed that >32 kHz bug (Yolk, tell me!)
  355.  
  356.  
  357. 002.1 / 8.5.1994
  358. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  359.     (Fast, eh Yolk?)
  360.     + Final solution for the screen mode problem, CIA!  So, now it
  361.       SHOULD work also with those modes.  But who uses them anyway, PAL
  362.       and A500 rule :)
  363.     + BTW, in Productivity mode you can get mixing rate up to 56 kHz!
  364.       Thus artificial 28 kHz limit changed to 56.  Note: as said works
  365.       only in Productivity mode.  (Yolk: You said something about
  366.       working also in double-PAL (double-NTSC too?))
  367.  
  368.  
  369. 002.0 / 8.5.1994
  370. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  371.     (Oops, another digit :-)
  372.     + PS3M now has a CONFIG FILE!  It resides in S: and is called
  373.       (surprise, surprise!) PS3M.config.  Check it out for format
  374.       and options.
  375.     - Still little fixes.
  376.     - Channel detection routine had some _serious_ bugs.  Fixed.
  377.     + At last, error messages!
  378.     - Loading a non-existent file crashed the machine.  Fixed.
  379.  
  380.  
  381. 001.1 / 7.5.1994
  382. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  383.     - Still more bug fixes in system routines.
  384.     + Should work (at least better) under NTSC and Multiscan modes. (Hi
  385.       Yolk!)
  386.  
  387.  
  388. 001.0 / 5.5.1994
  389. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  390.     ? Darn, slipped to the next digit :-)...
  391.     - Fixed a bug in my XPK-loader, should work better although I
  392.       haven't noticed the difference...
  393.     * Changed the priority to 4 to make it more usable with slower
  394.       machines in system friendly mode.
  395.     - Crashes with slow machines should be over! (or at least less...)
  396.     * Changed to colors (now HiP-compatible :-) in system killer mode!
  397.  
  398.     Thanks to K-P Koljonen for these! (Hi again, sending coming
  399.     sometime in the future :)
  400.  
  401.     - The module name wasn't shown if started from command line in
  402.       system friendly mode, fixed.  Thanks Deadbeat!
  403.  
  404.     - Fixed a potential bug in sample offset command.
  405.     - Now you don't have to click the stop gadget twice
  406.  
  407.  
  408. 000.9 / 24.04.1994
  409. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  410.     + Added FastTracker 6-8 channel and 4 channel ProTracker replay!
  411.     ? Should the name be changed?  Opinions been accepted.
  412.     + Added command line options to bypass the requesters. See usage
  413.       by typing PS3M ?
  414.  
  415.  
  416. 000.8 / 08.04.1994
  417. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  418.     + Changed the mixing loops to use 6 instructions, which made them
  419.       faster (2 cycles/byte/channel on 68000). Thanks Peter Kunath!
  420.     - Some potantial bugs fixed.
  421.  
  422.  
  423. 000.7 / 22.03.1994
  424. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  425.     + Added shortcuts for requesters
  426.     + Added skipping of positions $ff, which are separators of
  427.       different songs in one module. Used in TMP.S3M.
  428.  
  429.  
  430. 000.6 / 19.03.1994
  431. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  432.     - Added range checking to sample offset.
  433.     - Implemented some bugs in STMIK. Now PANIC.S3M plays correctly.
  434.  
  435.  
  436. 000.5 / 08.03.1994
  437. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  438.     - Some "little" fixes in retrig note. Wonder if it worked at all...
  439.  
  440.  
  441. 000.4 / 25.02.1994
  442. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  443.     - Ooops, Vibrato+Volslide and Toneportamento+Volslide were the
  444.       wrong way around. Too much Protracker-experience?
  445.  
  446.  
  447. 000.3 / 24.02.1994
  448. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  449.     + Support for other than 50 Hz screenmodes (was a bug really...)
  450.     + Correct CurrentDir
  451.     ? Crashes under system are probably due to too slow machine as on
  452.       A4000 this doesn't happen at all... Trying to fix it...
  453.     ? Planning some support for other multichannel modules (MTM, 669,
  454.       FastTracker 6 and 8 channels, etc...) Infos about these modules
  455.       are appreciated...
  456.  
  457.  
  458. 000.2 / 10.02.1994
  459. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  460.     + Added system friendly option!
  461.     - For some odd reason some tunes crash under system...
  462.     ! BTW, my birthday is on the 17th!
  463.  
  464.  
  465. 000.1 / 09.02.1994
  466. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  467.     - Fixed a bug with volumeslide. Now Satellite One plays correctly.
  468.     - Auch! I had left some fast-mem-only hunks in the executable.
  469.       Fixed.
  470.  
  471.  
  472. 000.0 / 03.02.1994
  473. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
  474.     ! Inital release on public pressure...
  475.