home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 19 / CD_ASCQ_19_010295.iso / dos / prg / midas / mod.inc < prev    next >
Text File  |  1994-08-06  |  4KB  |  138 lines

  1. ;*    MOD.INC
  2. ;*
  3. ;* ProTracker Module Player, v1.10
  4. ;*
  5. ;* Copyright 1994 Petteri Kangaslampi and Jarno Paananen
  6. ;*
  7. ;* This file is part of the MIDAS Sound System, and may only be
  8. ;* used, modified and distributed under the terms of the MIDAS
  9. ;* Sound System license, LICENSE.TXT. By continuing to use,
  10. ;* modify or distribute this file you indicate that you have
  11. ;* read the license and understand and accept it fully.
  12. ;*
  13.  
  14.  
  15. ;/***************************************************************************\
  16. ;*     struct modInstHdr
  17. ;*     -----------------
  18. ;* Description:  Protracker module instrument header. Note that all 16-bit
  19. ;*         fields are big-endian.
  20. ;\***************************************************************************/
  21.  
  22. STRUC    modInstHdr
  23.     iname        DB    22 DUP (?)  ; instrument name
  24.     slength     DW    ?    ; sample length
  25.     finetune    DB    ?    ; sample finetune value
  26.     volume        DB    ?    ; sample default volume
  27.     loopStart    DW    ?    ; sample loop start, in words
  28.     loopLength    DW    ?    ; sample loop length, in words
  29. ENDS
  30.  
  31.  
  32.  
  33. ;/***************************************************************************\
  34. ;*     struct modHeader
  35. ;*     ----------------
  36. ;* Description:  Protracker module file header
  37. ;\***************************************************************************/
  38.  
  39. STRUC    modHeader
  40.     songName    DB    20 DUP (?)    ; song name
  41.     instruments    modInstHdr 31 DUP (?)    ; instrument headers */
  42.     songLength    DB    ?        ; song length
  43.     unused        DB    ?        ; unused by Protracker, used
  44.                         ; to be song restart position
  45.     orders        DB    128 DUP (?)    ; pattern playing orders
  46.     sign        DB    4 DUP (?)    ; module signature
  47. ENDS
  48.  
  49.  
  50.  
  51. ;/***************************************************************************\
  52. ;*     .MTM stuff. Not used currently
  53. ;\***************************************************************************/
  54.  
  55. ; [Not converted into assembler...]
  56.  
  57.  
  58.  
  59. ;/***************************************************************************\
  60. ;*     struct modChannel
  61. ;*     -----------------
  62. ;* Description:  Protracker Module Player internal channel structure
  63. ;\***************************************************************************/
  64.  
  65. STRUC    modChannel
  66.     note        DB    ?
  67.     inst        DB    ?
  68.     cmd        DB    ?
  69.     info        DB    ?
  70.     comp        DB    ?
  71.  
  72.     sample        DB    ?
  73.     volume        DB    ?
  74.  
  75.     period        DW    ?
  76.     snote        DW    ?
  77.     loff        DB    ?
  78.     coff        DB    ?
  79.     toperi        DW    ?
  80.     notepsp     DB    ?
  81.     retrigc     DB    ?
  82.  
  83.     status        DB    ?
  84.  
  85.     vibcmd        DB    ?
  86.     vibpos        DB    ?
  87.  
  88.     trecmd        DB    ?
  89.     trepos        DB    ?
  90.  
  91.     volbar        DB    ?
  92.     playoff     DW    ?
  93. ENDS
  94.  
  95.  
  96.  
  97. GLOBAL    LANG modLoadModule : far
  98. GLOBAL    LANG modFreeModule : far
  99. GLOBAL    LANG modConvertSample : far
  100. GLOBAL    LANG modConvertTrack : far
  101. GLOBAL    LANG modIdentify : far
  102. GLOBAL    LANG modInit : far
  103. GLOBAL    LANG modClose : far
  104. GLOBAL    LANG modPlayModule : far
  105. GLOBAL    LANG modStopModule : far
  106. GLOBAL  LANG modSetInterrupt : far
  107. GLOBAL    LANG modRemoveInterrupt : far
  108. GLOBAL    LANG modPlay : far
  109. GLOBAL    LANG modSetPosition : far
  110. GLOBAL    LANG modGetInformation : far
  111.  
  112.  
  113. GLOBAL    mpMOD : ModulePlayer
  114.  
  115.  
  116.  
  117. ;/***************************************************************************\
  118. ;*     enum modFunctIDs
  119. ;*     ----------------
  120. ;* Description:  ID numbers for Protracker Module Player functions
  121. ;\***************************************************************************/
  122.  
  123. ENUM    modFunctIDs \
  124.     ID_modIdentify = ID_mod, \
  125.     ID_modInit, \
  126.     ID_modClose, \
  127.     ID_modLoadModule, \
  128.     ID_modFreeModule, \
  129.     ID_modPlayModule, \
  130.     ID_modStopModule, \
  131.     ID_modSetInterrupt, \
  132.     ID_modRemoveInterrupt, \
  133.     ID_modPlay, \
  134.     ID_modSetPosition, \
  135.     ID_modGetInformation, \
  136.     ID_modConvertSample, \
  137.     ID_modConvertTrack
  138.