annotate docs/tips.txt @ 7:de95ce2eacfd

Initial revision
author darius
date Fri, 23 Jan 1998 16:05:09 +0000
parents 5d614bcc4287
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
1
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
2 --> MikMod 3.0
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
3 -> Various Programming Tips and Tricks!
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
4
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
5
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
6 Here are some tips and tricks that I have jotted down as I think of them.
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
7 The list is short for now, but it will no doubt grow as more are thought
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
8 up. Also, check for additional information on the Divine Entertainment
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
9 website at http://www.epix.net/~dracoirs/
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
10
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
11 Ok, so this little text file is pretty short right now. These things
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
12 take time to think of.. :-)
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
13
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
14
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
15 -/- Compiling / Makefiles
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
16
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
17 Watcom:
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
18
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
19 The example files that come with MikMod default to 30k stack buffers
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
20 (option stack=30000 on the wlink command line). This is a safety pre-
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
21 caution and by no means a requirement.
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
22
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
23 You can usually safely use a 10k stack if you are using an interrupt
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
24 driven MikMod_Update() and you can safely use a 5k stack if you are
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
25 using polling (calling MikMod_Update() from a main program loop).
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
26
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
27 ----------
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
28
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
29 If you are writing a module player and are NOT calling MikMod_Update()
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
30 from an interrupt, then you can safely remove /ZU from the following
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
31 modules in the /MikMod directory:
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
32
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
33 MDRIVER.C
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
34 VIRTCH.C
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
35
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
36 Removing /ZU will slightly reduce code size and increase replay speed.
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
37
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
38 ----------
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
39
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
40 If you are using the IDE and want to add PMODE/W to the list of valid
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
41 targets, follow these steps:
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
42
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
43 a) copy PMWBIND.EXE and PMODEW.LNK to your watcom/binw diectory.
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
44
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
45 b) Load WSYSTEM.LNK, and inster the contents of PMODEW.LINK into it
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
46 at the very top.
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
47
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
48 c) Load IDEDOS32.CFG. Insert a line that reads:
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
49 Target *.exe, dw2e_, "PMODE/W Executable"
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
50
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
51 d) Load IDE.CFG. Around line 840, you will find the following line:
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
52 VSwitch 0, dr2??, "System:", SYS, " ", ONE, REQ, dos4g
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
53 Inser this line below it:
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
54 VSwitch 0, dw2??, "System:", SYS, " ", ONE, REQ, pmodew
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
55
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
56 e) This is the tricky part. There are several lines in IDE.CFG that
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
57 contain 'dr2'. Each of these [excluding the special case in step
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
58 d] must be duplicated, and 'dr2' replaced with 'dw2' (no other
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
59 changes required). Do this right and you will have full IDE cap-
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
60 ability with the pmode/w extender!
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
61
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
62 There you go, all set to compile with pmode/w within the Watcom IDE!
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
63
5d614bcc4287 Initial entry of mikmod into the CVS tree.
darius
parents:
diff changeset
64 ----------