home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / World_Of_Computer_Software-02-387-Vol-3of3.iso / p / pps110.zip / PPSSRC.ZIP / PPS.INC < prev    next >
Text File  |  1992-07-15  |  6KB  |  235 lines

  1. ;┌───────────────────────────────────────────────────────────────────────────┐
  2. ;│  FILENAME: PPS.INC    Version 1.00                         │
  3. ;│                                         │
  4. ;│  DATE    : April 27, 1992                             │
  5. ;│                                                                           │
  6. ;│  Ideal Mode -- Turbo Assembler v2.01 and above                 │
  7. ;│                                                                           │
  8. ;│  DESCRIPTION: This include file declares all the public symbols used by   │
  9. ;│  the module player program.                             │
  10. ;└───────────────────────────────────────────────────────────────────────────┘
  11.  
  12. ; The original C header structure.
  13. ;────────────────────────────────────────────────────────────────────────────
  14. ; struct ST24Mod {
  15. ;   BYTE songname[20];                  /* 0 */
  16. ;   struct {
  17. ;     BYTE Name[22];                  /* 20 */
  18. ;     WORD Length;                  /* 42 */
  19. ;     WORD Volume;                  /* 44 */
  20. ;     WORD Repeat;                  /* 46 */
  21. ;     WORD RepLen;                  /* 48 */
  22. ;   } sample[31];
  23. ;   BYTE songlen;
  24. ;   BYTE I_dont_know_what_this_byte_is;
  25. ;   BYTE playseq[128];
  26. ;   LONG mk;                      /* Contains M.K. */
  27. ; };
  28. ;────────────────────────────────────────────────────────────────────────────
  29. ; Public structures and equates.
  30.  
  31. ;│    *** Written by Joshua C. Jensen.    Originally by Dave Ashcroft.         │
  32. struc   SoundSrcStruc
  33. SName        db    8 dup (?)
  34. Special     db    ?
  35. AddressLeft    dw    ?
  36. AddressRight    dw    ?
  37. ends    SoundSrcStruc
  38.  
  39. ;│ Original Amiga equates by Lars "Zap" Hamre.  Converted to IBM structure   │
  40. ;│ by Joshua C. Jensen.                              │
  41. struc   MS
  42. Note            dw      ?
  43. cmd             db      ?
  44. cmdlo           db      ?
  45. start           dw      ?
  46. Length          dw      ?
  47. LoopStart       dw      ?
  48. RepLen          dw      ?
  49. Period          dw      ?
  50. FineTune        db      ?
  51. Volume          db      ?
  52. TonePortDirec   db      ?
  53. TonePortSpeed   db      ?
  54. WantedPeriod    dw      ?
  55. VibratoCmd      db      ?
  56. VibratoPos      db      ?
  57. TremoloCmd      db      ?
  58. TremoloPos      db      ?
  59. WaveControl     db      ?
  60. GlissFunk       db      ?
  61. SampleOffset    db      ?
  62. pattpos         db      ?
  63. loopcount       db      ?
  64. FunkOffset      db      ?
  65. WaveStart       dw      ?
  66. RealLength      dw      ?
  67. MasterVolume    db      ?
  68. Trigger         db      ?
  69. SampleNum       db      ?
  70. ends    MS
  71.  
  72. ;│    *** Written by Joshua C. Jensen.                         │
  73. struc   MCS                     ; My Channel Stuff
  74. MSeg        dw    ?
  75. MOfs        dw    ?
  76. MRepeat     dw    ?
  77. MRepLen     dw    ?
  78. MFreq        dw    ?
  79. MMaxRep     dw    ?
  80. MOFlow        dw    ?
  81. MVol        db    ?
  82. MIns        db    ?
  83. ends    MCS
  84.  
  85. ;│        *** Written by Joshua C. Jensen                  │
  86. TSSeg           equ     [ds:bp+(offset (MCS).MSeg)]
  87. TSOff           equ     [ds:bp+(offset (MCS).MOfs)]
  88. TSRepeat        equ     [ds:bp+(offset (MCS).MRepeat)]
  89. TSRepeatLen     equ     [ds:bp+(offset (MCS).MRepLen)]
  90. TSNoteFreq      equ     [ds:bp+(offset (MCS).MFreq)]
  91. TSMaxRep        equ     [ds:bp+(offset (MCS).MMaxRep)]
  92. TSVol1          equ     [ds:bp+(offset (MCS).MVol)]
  93. TSIns           equ     [Byte ds:bp+(offset (MCS).MIns)]
  94.  
  95. codeseg
  96.  
  97. global    sd_InitSound:proc
  98. global  sd_PlayMusic:proc
  99. global    sd_PlayIns:proc
  100. global    sd_SetupForMusic:proc
  101. global    sd_CloseAllMusic:proc
  102. global    sd_ShutDownMusicInt:proc
  103. global    sd_SetFreq:proc
  104.  
  105. global    sd_SetMainAddr:proc
  106. global    sd_ReturnInfo:proc
  107. global    sd_Set15Ins:proc
  108. global    sd_Set31Ins:proc
  109. global    sd_SetMaxVolume:proc
  110.  
  111. global    sd_DetectSB:proc
  112. global    sd_DetectDACs:proc
  113. global  sd_SetupMinor:proc
  114. global    sd_GetHighestBlock:proc
  115. global    sd_ClearInstrumentLocations:proc
  116. global    sd_ClearPatternLocations:proc
  117. global    sd_LoadModule:proc
  118.  
  119. global    sd_UpdateChannels:proc
  120.  
  121. dataseg
  122.  
  123. global    Fatal:byte
  124.  
  125. global    SequenceOffset:word
  126. global    MKHeader:word
  127. global    HeaderSize:word
  128. global    NumberInstruments:word
  129.  
  130. global    TypeOfSample:byte
  131. global    SoundSource:byte
  132. global    MusicPlayerInstalled:byte
  133. global    SoundSources:SoundSrcStruc
  134. global    Channel1:MS
  135. global    Channel2:MS
  136. global    Channel3:MS
  137. global    Channel4:MS
  138.  
  139. global    MaxVolume:word
  140. global    PlayStatus:byte
  141. global    NumBlocks:byte
  142. global    ModuleLoaded:byte
  143. global    MStatus:byte
  144. global    Header:byte:1084
  145. global    InsLoc:word:31
  146. global    PatternLoc:word:64
  147.  
  148. global    SampleRate:word
  149. global    MainFreq:dword
  150. global    LSBCounter:word
  151. global    IntMaster:word
  152. global    IntCountDown:word
  153.  
  154. global    IntSet:byte
  155. global    TypeOfInt:byte
  156. global    Int08:dword
  157. global    IntMask:byte
  158. global    FreqMult:word
  159. global  MainAddr:word
  160. global    PlayerInterrupt:word
  161. global    TimeValue:word
  162.  
  163. global    Channel4Seg:word
  164. global  Channel3Seg:word
  165. global  Channel2Seg:word
  166. global  Channel1Seg:word
  167. global  Channel4Freq:word
  168. global  Channel3Freq:word
  169. global  Channel2Freq:word
  170. global  Channel1Freq:word
  171. global  Channel1Vol2:byte
  172. global  Channel2Vol2:byte
  173. global  Channel3Vol2:byte
  174. global  Channel4Vol2:byte
  175. global    Channel1Vol1:byte
  176. global    Channel2Vol1:byte
  177. global    Channel3Vol1:byte
  178. global    Channel4Vol1:byte
  179. global  Channel1Ins:byte
  180. global  Channel2Ins:byte
  181. global  Channel3Ins:byte
  182. global  Channel4Ins:byte
  183.  
  184. global    mt_speed:byte
  185. global  mt_counter:byte
  186. global  mt_PatternPos:word
  187. global  mt_SongPos:byte
  188.  
  189. global    mt_PeriodTable:word
  190.  
  191. ;─Channel 1 Stuff───────────────────────────────────────────────────────────────
  192. global  Channel1Seg:word
  193. global    Channel1Ofs:word
  194. global    Channel1Repeat:word
  195. global    Channel1RepLen:word
  196. global    Channel1Freq:word
  197. global  Channel1MaxRep:word
  198. global    Channel1OFlow:word
  199. global    Channel1Vol1:byte
  200. global    Channel1Ins:byte
  201.  
  202. ;─Channel 2 Stuff───────────────────────────────────────────────────────────────
  203. global    Channel2Seg:word
  204. global    Channel2Ofs:word
  205. global    Channel2Repeat:word
  206. global    Channel2RepLen:word
  207. global    Channel2Freq:word
  208. global    Channel2MaxRep:word
  209. global    Channel2OFlow:word
  210. global    Channel2Vol1:byte
  211. global    Channel2Ins:byte
  212.  
  213. ;─Channel 3 Stuff───────────────────────────────────────────────────────────────
  214. global    Channel3Seg:word
  215. global    Channel3Ofs:word
  216. global    Channel3Repeat:word
  217. global    Channel3RepLen:word
  218. global    Channel3Freq:word
  219. global    Channel3MaxRep:word
  220. global    Channel3OFlow:word
  221. global    Channel3Vol1:byte
  222. global    Channel3Ins:byte
  223.  
  224. ;─Channel 4 Stuff───────────────────────────────────────────────────────────────
  225. global    Channel4Seg:word
  226. global    Channel4Ofs:word
  227. global    Channel4Repeat:word
  228. global    Channel4RepLen:word
  229. global    Channel4Freq:word
  230. global    Channel4MaxRep:word
  231. global    Channel4OFlow:word
  232. global    Channel4Vol1:byte
  233. global    Channel4Ins:byte
  234.  
  235.