1
|
1 /----------------------------------------------\
|
|
2 +--------------- MIKMOD FOR UNIX --------------+
|
|
3 \----------------------------------------------/
|
|
4
|
|
5 This is version 3.0.1 of MikMod of Unix - it is a fairly big leap
|
|
6 from the MikMod 2.14 that everyone's been using for the past year or
|
|
7 so - sorry it's so late coming. However, I think you'll be pleased
|
|
8 with it... The console player is better - you can see
|
|
9 & scroll through the instrument list and see the sample messages now,
|
|
10 and the archive support is much improved, and the playlist support is
|
|
11 pretty sweet as well. The big thing really is...
|
|
12
|
|
13 WE HAVE IMPULSE TRACKER SUPPORT!!!!!!!!!!!!!!!!!!!!!!!!
|
|
14
|
|
15 This now puts MikMod 3.0 in direct competition with MikIT :)
|
|
16
|
|
17
|
|
18 COMPILING
|
|
19
|
|
20 I. Type "build-mikmod.sh"
|
|
21 II. It builds
|
|
22 III. The excutable binary 'mikmod' is spit into your directory
|
|
23 IV. Install mikmod somewhere in your $PATH
|
|
24 V. Enjoy kick-ass mod music :)
|
|
25
|
|
26
|
|
27 USING MIKMOD
|
|
28
|
|
29 To get the command line options, type "mikmod -h"
|
|
30 That should tell you most of what you want to know, basically you just
|
|
31 type "mikmod <filename-1> <filename-2> ... <filename-n>"
|
|
32 Once you're in the player, a few keys you can press...
|
|
33 (keys don't have to be capitalized, BTW)
|
|
34
|
|
35 UP/DOWN scrolls the sample list
|
|
36 LEFT/RIGHT or -/+ moves the song backwards/forwards 1 pattern
|
|
37 SPACE pauses
|
|
38 N loads the next song
|
|
39 P loads the previous song
|
|
40 Q quits
|
|
41 W writes writes the current playlist to "$HOME/mikmodplaylist"
|
|
42 I toggles between sample/instrument names/messages
|
|
43 (this is only for .XMs and .ITs)
|
|
44 M gives you the song message/comment (.ITs ONLY)
|
|
45
|
|
46 If you're playing MikMod in quiet mode (with the -q switch), you
|
|
47 can tell MikMod to jump to the next/previous song by sending
|
|
48 the MikMod process SIGUSR1 or SIGUSR2 respectivly.
|
|
49 In other words, let's say you're doing something like this:
|
|
50
|
|
51 $ mikmod -pl myalltimefavmods -rp -k -t -q &
|
|
52 [1] 7531
|
|
53
|
|
54 You've told MikMod to read the songs out of the playlist
|
|
55 myalltimefavmods, to play them in random order, to delete each
|
|
56 module from the playlist after playing (so none get played twice)
|
|
57 to skip over any file access errors, to not spit out any output, and
|
|
58 to run in the background.
|
|
59 bash gives us the process ID, in this case it's 7531. You can also
|
|
60 find this out from "ps", "top", on any of a number of other utilities.
|
|
61 Now, let's say a song you don't like as much comes on, or for some
|
|
62 reason one seems to be looping forever, you can do this...
|
|
63
|
|
64 $ kill -s SIGUSR1 7531
|
|
65
|
|
66 and MikMod will start playing the next file in the list.
|
|
67 If you want the previous file, just use SIGUSR2 in place of
|
|
68 SIGUSR1. Note that when you're playing randomly, it doesn't actually
|
|
69 make any different if you select next or previous, because the next song
|
|
70 is selected randomly every time, and the previous one not saved. As
|
|
71 well, if you're not playing randomly but have an ordered list you are
|
|
72 deleting after each plays, you won't be able to get the previous song
|
|
73 played either... Hrm, maybe I should make SIGUSR2 toggle pause
|
|
74 instead... What do you think? E-mail me!
|
|
75
|
|
76
|
|
77 BUGS
|
|
78
|
|
79 What? Bugs? Where???
|
|
80 Yes, there are a few bugs and/or misfeatures and/or things that should
|
|
81 be implemented that haven't yet been.
|
|
82
|
|
83 - sample messages are sometimes a bit screwed up for some .MTMs
|
|
84 - You can't view the song messages of .MTMs, except possibly for
|
|
85 the very first line. This is because the way the song comment
|
|
86 is stored is really wierd for .MTMs and totally different from
|
|
87 the way .ITs store it.
|
|
88 - When you pause, any looped notes will keep on playing. This is
|
|
89 actually a bug ("feature") of MikMod_TogglePause() which
|
|
90 I will probably have to do in and patch...
|
|
91 - At the end of a few songs you'll "go over the edge" and it will
|
|
92 try to play past the end of the second to last patten. In
|
|
93 other words, if "pos:" of the ncurses display starts showing
|
|
94 400+ and the sound is wrong (or not there) it's time to hit
|
|
95 NEXT...
|
|
96 - The ULT loader is broken. Segfaults every time... Solution:
|
|
97 AVOID PLAYING ULTRATRACKER MODS FOR THE TIME BEING
|
|
98 (it's not so common a format, so that shouldn't be too too
|
|
99 inconvinient)
|
|
100 - In addition to .ULT, the .FAR, .MED, and .669 loaders are of
|
|
101 questionable status. I haven't been able to throw any files
|
|
102 of such formats at 'em to test. Tell me about your
|
|
103 successes/failures at playing any of those...
|
|
104 - Hmm, the status display should probably display the BPM along
|
|
105 with the protracker speed...
|
|
106 - Sometimes I've gotten "Cannot allocate DMA buffer" error.
|
|
107 I don't know where this is comming from, and it can be annoying.
|
|
108 Try running it a few times and it will work eventually.
|
|
109 - Prolly some other problems that escape me at the moment...
|
|
110
|
|
111
|
|
112 TODO
|
|
113
|
|
114 * X Interface (there already are several based on older versions of
|
|
115 MikMod, however none of them reached a very sophisticated level)
|
|
116 * File selector under ncurses
|
|
117 * View messages in .MTMs
|
|
118 * Write a /dev/sequencer driver so people with GUSes and AWE32s can
|
|
119 use hardware mixing
|
|
120
|
|
121
|
|
122 MIKMOD ON NON-LINUX PLATFORMS
|
|
123
|
|
124 First, check playercode/unix_drv/ to see if a driver has been written
|
|
125 for your platform. If so, you're in some luck. Theoretically you
|
|
126 then can simply edit the makefile to compile in your driver. It's
|
|
127 probably not that simple, however, as these drivers haven't been tested
|
|
128 with MikMod 3.0 and are carryovers from 2.15... I don't have access
|
|
129 to Suns, SGIs, etc with which to test. If you DO get MikMod working
|
|
130 with this distribution on another unix than Linux, or need some help
|
|
131 in doing so, E-Mail me! I want to support as many unices as possible
|
|
132 in the MikMod for Unix distribution.
|
|
133 BTW: FreeBSD uses the same sound driver as Linux, so the oss driver
|
|
134 should probably work fine. Werd to the FreeBSDers!
|
|
135 Also... This code was originally for DOS. DOSisms like the DOS
|
|
136 drivers and makefiles for Watcom C have been mostly deleted to save
|
|
137 space. Go to Jake Stine's web site for the DOS version.
|
|
138
|
|
139
|
|
140 CONTACT
|
|
141
|
|
142 You probably want to e-mail me at amstpi@freenet.tlh.fl.us as
|
|
143 this is an unsupported release of MikMod (that is, not supported by the
|
|
144 guy who officially owns MikMod now, Jake Stine)
|
|
145
|
|
146 offical Mikmod for Linux homepage is at
|
|
147 http://www.freenet.tlh.fl.us/~amstpi/mikmod.html
|
|
148
|
|
149 latest releases of Linux mikmod can also be found at
|
|
150 ftp://sunsite.unc.edu/pub/Linux/apps/sound/players
|
|
151
|
|
152 The offical offical MikMod homepage is Jake Stine's
|
|
153 (this is for the DOS version that MikMod for Unix is based upon)
|
|
154 http://www.epix.net/~dracoirs/mikmod
|
|
155
|
|
156 Other relevant web pages/email addresses can be found in various
|
|
157 parts of the source tree and documentation...
|
|
158
|
|
159 Hope this brings you hours of mod-listening pleasure!
|
|
160
|
|
161 - Peter Amstutz
|
|
162 11:30pm 16 October 1997
|