home *** CD-ROM | disk | FTP | other *** search
/ The Games Machine 25 / GNOME_DEMO.iso / amiga / music / mikmod.lzx / mikmod / mikmod.readme < prev    next >
Text File  |  1997-02-18  |  5KB  |  119 lines

  1. Short:    Amiga Port of the *IX tracker MikMod.    
  2. Version:  2.09.
  3. Uploader: bybell@cse.psu.edu (Tony Bybell)
  4. Author:   bybell@cse.psu.edu (Tony Bybell)
  5. Type:     mus/play
  6.  
  7. Why another MOD player for the Amiga?
  8. Because Intro to Compiler Construction is driving me nuts and I need a break
  9. from LR(k) grammars!
  10.  
  11. But seriously, the reason I ported this to the Amiga is simple: with the
  12. PowerPC coming soon to the Amiga community, the 680x0 modplayers out there
  13. aren't going to be a viable solution anymore since in terms of speed, C code
  14. on a PPC will easily outstrip assembler on a 68040. Nonetheless, this still
  15. does output regular mods at 22.5kHz per channel in stereo or 44.1 in mono.
  16. As far as XM files go, I hope you have an '060... (The price for
  17. portability, *snif*) Remember you can only get 44.1 if you do the mode
  18. promotion trick to double your audio bandwidth...
  19.  
  20. This was compiled on an '040 and the compiler sez it'll work on all
  21. processors, but I haven't been able to test it out on anything besides an
  22. A4000. It's probably useless on a 68000 because of the processor intensive
  23. nature of the sound mixing used. (Even regular mod files are mixed at 16-bit
  24. then truncated to 14 bits--all in the name of portability, *snif again*.)
  25.  
  26. What is it?
  27. This is the Amiga port of MikMod2.09 by Jean-Paul Mikkers. Built-in drivers
  28. for eight and 14-bit Paula sound have been included. Paula14c will be
  29. forthcoming if there is a demand for it. I was going to do this using AHI ,
  30. but for some reason the hook function called by the AHIA_SoundFunc tag kept
  31. crashing my machine. Sorry, Toccata owners. (Well, at least until I can
  32. figure out how to get the hooks working w/o crashing.)
  33.  
  34. The sound drivers are:
  35. 1. Paula 14-bit output driver v1.1a
  36. 2. Paula Eight-bit output driver v1.0
  37. 3. MikMod music.raw file output driver v1.0
  38. 4. MikMod Nosound Driver v2.0 - (c) Creative Silence
  39.  
  40. By default, Paula14 is used. Something to keep in mind here...note that you
  41. can write out music.raw files for especially slow machines if you use the
  42. -d3 option from the command line. It can then be played using Play16. (e.g.,
  43. Play16 music.raw raw signed bits 16 tracks 2 filter off out paula14)
  44.  
  45. Module players included are:
  46. 1. Portable XM loader v0.4
  47. 2. Portable UNI loader v0.3 (This is the internal MikMod format)
  48. 3. Portable ULT loader v0.1
  49. 4. Portable STM Loader - V 1.2
  50. 5. Portable S3M loader v0.2
  51. 6. Portable MTM loader v0.1
  52. 7. Portable MOD loader v0.11
  53. 8. Portable MOD-15 loader v0.1
  54.  
  55. Miscellany:
  56. Note that all calculations are done internally in 16-bit mode. Using the
  57. eight-bit modes only truncates the output as it copies to Chip RAM.
  58.  
  59. I handle the 14-bit code in a really bizarre way to keep myself from having
  60. to worry about timing issues. I do a BeginIO() on the channel 0 then write
  61. to chip registers for the rest. Call me lazy, but I have a full courseload
  62. this semester. I'll do this the proper way sometime, but if anyone wants to
  63. beat me to the punch, go ahead. But for now if it crashes your machine or
  64. causes memory leaks the size of Nebraska, please don't burn my house down or
  65. ping-flood my server. ;)
  66.  
  67. The original archive mikmod209.tgz is also included in case anyone wants to
  68. do diffs on this and see what I changed to get this to run on the Amiga.
  69. Additionally, all the original legalese and caveats are present in that
  70. included archive.
  71.  
  72. If you're motivated, you can rework the drivers or do whatever you want.
  73. If you have the source, do what you want with it. If you want to port this
  74. to your HP Laserjet, go do it, hehe! 
  75.  
  76. Have fun!
  77.  
  78. 01Feb97
  79. Tony Bybell
  80. bybell@cse.psu.edu
  81. http://www.cse.psu.edu/~bybell/
  82.  
  83. ----------------------------------------------------------------------------
  84.  
  85. Notes:
  86. 1) A stock Amiga 4000/040 can successfully play a 4-channel mod file at the
  87. following rates:
  88.  
  89. mikmod -f 22050 mymodule.mod
  90. mikmod -f 44100 -m mymodule.mod
  91.  
  92. Higher rates are possible but it depends on background tasks running.
  93.  
  94. 2) Moving the mouse or executing any programs may cause the sound to break
  95. up. I am working on a fix for this.
  96.  
  97. 3) Switching between 8 and 14-bit mode without rebooting causes strange
  98. results. This is being looked into. If you really want to use 8-bit mode, I
  99. suggest using the -8 switch. (I only used this to test that 14-bit mode
  100. really works. You set the volume at 5% and play with -8 then without it.
  101. 14-bit mode is an appreciable difference!) That way, when you switch back to
  102. 14-bit mode, things will sound normal since you never left 14-bit mode in
  103. the first place!
  104.  
  105. 4) The s.a, s.o files handle the AUD0 interrupt. (It sends a signal back to
  106. the program to tell it that it's OK to continue.) Note that hard disk access
  107. also seems to trigger a level4 interrupt. This is being looked into. The s.a
  108. file is the only nonportable file in this archive as it's 680x0 specific
  109. code usd to signal the AUD0 interrupt back to the Wait() in the update code
  110. for Paula14. Regular 8-bit Paula doesn't need s.o.
  111.  
  112. 5) This is far from "production quality," but it does work... I'm getting
  113. rid of bugs as I find them, but since I'm in my last semester of Computer
  114. Engineering, I'm kind of busy working on other projects like SimYacht for
  115. X-Windows for my project class so I have less time to devote to my Amiga
  116. stuff but I keep trying! =)
  117.  
  118. ----------------------------------------------------------------------------
  119.