home *** CD-ROM | disk | FTP | other *** search
/ The Equalizer BBS / equalizer-bbs-collection_2004.zip / equalizer-bbs-collection / DEMOSCENE-STUFF / DEMOVT15.ZIP / EXAMPLES.EXE / PMODE / PMODEDVT.INC < prev    next >
Text File  |  1994-04-26  |  4KB  |  97 lines

  1. ; ------------------------------ PMODEDVT.INC --------------------------------
  2. ; ASM library file for accessing the DemoVT. For Watcom C and/or Tran's PMode.
  3. ; (C) Copyright 1993-1994 by Iguana-VangeliSTeam. However, it is made
  4. ; public domain for non-commercial use.
  5.  
  6. IFNDEF _PMODEDVT_H_
  7.        _PMODEDVT_H_ = 1
  8.  
  9.         .386p
  10. code32  segment para public use32
  11.         assume cs:code32, ds:code32
  12.  
  13. INCLUDE PMODE.INC
  14.  
  15. ENDS
  16.  
  17. ; -------------------------------------------------------------
  18. ; This is the structure that holds the DemoVT variables.
  19. ; We will get its address to check semaphores, modify volume, and
  20. ; all that.                                  
  21.  
  22. TChanData STRUC
  23.       Period DW ?
  24.       Ins    DB ?
  25.       Vol    DB ?
  26. ENDS
  27.  
  28. VTRunInfo STRUC
  29.   ; These are modified by DemoVT, and you can read them.
  30.       Semaphores     DB 256 DUP(?)      ; Array of semaphores. You can read or
  31.                                         ; modify them (usually cleaning them).
  32.  
  33.  
  34.       ChansTrig      DB  32 DUP(?)      ; == 1 -> channel retriggered a note.
  35.       NumChannels    DB ?               ; Number of channels in the MOD.
  36.  
  37.       CtrlEntryPoint DD ?               ; Address of ther DemoVT service proc.
  38.       TickCounter    DD ?               ; This one provides some form for you
  39.                                         ; to do timing, incremented at 50Hz.
  40.       RegEntryPoint  DD ?               ; DVT Service taking parm in AX.
  41.       ChansData      TChanData 32 DUP (<>) ; Per-channel info.
  42.       Pos            DB ?               ; Note in the current pattern.
  43.       Seq            DB ?               ; Number of playing pattern.
  44.  
  45.                      DB 81 DUP(?)      ; Reserved.
  46.  
  47.   ; These are supposed to be modified by you to tell DemoVT your intentions. :)
  48.                      DB  ?              ; Reserved.
  49.                      DW  ?              ; Reserved.
  50.  
  51.       JumpNewPos     DB  ?              ; Indicates that you want to jump to
  52.                                         ; another position inside the MOD.
  53.       JumpPosSeq     DB  ?              ; Sequence position to jump to.
  54.       JumpPosNote    DB  ?              ; Note inside the pattern to jump to.
  55.  
  56.       SoundVolume    DB  ?              ; Put your favourite volume here.
  57.                                         ; You can perform fades and the like.
  58.                                         ; 0-255.
  59.       Abort          DB ?               ; Set to 1 to force DVT to exit after
  60.                                         ; your program exits.
  61.  
  62.                      DB 248 DUP(?)      ; Reserved.
  63.  
  64. ENDS
  65.  
  66. code32  segment para public use32
  67.         assume cs:code32, ds:code32
  68.  
  69.  
  70. DMA_Channel_EDX EQU (DMA_Channel PTR EDX)
  71.  
  72. ; ---------------------------------------------------------------
  73.  
  74. GLOBAL AppIDFound   : DWORD     ; Address of the DemoVT (C) string.
  75. GLOBAL DVTRunInfo   : DWORD     ; Address of the VTRunInfo declared above.
  76.  
  77. ; ========================== FUNCTIONS ==========================
  78. ; You can count these modify ALL registers except EBX, ESI, EDI.
  79.  
  80. GLOBAL InitMusic         : NEAR
  81. GLOBAL CallMusic         : NEAR
  82. GLOBAL VTConnectTimer    : NEAR
  83. GLOBAL VTDisconnectTimer : NEAR
  84. GLOBAL VTGetTickCounter  : NEAR
  85. GLOBAL VTBeginSync       : NEAR
  86. GLOBAL VTWaitForStart    : NEAR
  87. GLOBAL VTJumpPos         : NEAR
  88. GLOBAL VTCheckSemaphore  : NEAR
  89. GLOBAL VTSetSemaphore    : NEAR
  90. GLOBAL VTMiddleSync      : NEAR
  91. GLOBAL VTSetSoundVolume  : NEAR
  92. GLOBAL VTGetSoundVolume  : NEAR
  93.  
  94. ENDIF
  95.  
  96. ; -------------------------- End of PMODEDVT.INC --------------------------
  97.