*
*       Maestix Library References  -  V38
*
*       © 1995 Richard Körber
*

	IFND    LIBRARIES_MAESTIX_I
LIBRARIES_MAESTIX_I     SET     1

	IFND    UTILITY_TAGITEM_I
	include "utility/tagitem.i"
	ENDC
	IFND    EXEC_PORTS_I
	include "exec/ports.i"
	ENDC

_MSTXTAG        EQU     $80000000!"MAES"   ;Maestix tag base

	;-- SetMaestro Tags ------------;
MTAG_Input      EQU     _MSTXTAG+$00    ;Input? Def. INPUT_STD
MTAG_Output     EQU     _MSTXTAG+$01    ;Output? Def. OUTPUT_BYPASS
MTAG_SetCSB     EQU     _MSTXTAG+$02    ;Direct CSB access
MTAG_SetUDB     EQU     _MSTXTAG+$03    ;Direct UDB access
MTAG_Studio     EQU     _MSTXTAG+$04    ;Studio mode? (TRUE/FALSE)
MTAG_CopyProh   EQU     _MSTXTAG+$05    ;Copy protection?
MTAG_Emphasis   EQU     _MSTXTAG+$06    ;Emphasis
MTAG_Source     EQU     _MSTXTAG+$07    ;Source category code
MTAG_Rate       EQU     _MSTXTAG+$08    ;Output rate
MTAG_Validity   EQU     _MSTXTAG+$09    ;Validity flag (TRUE/FALSE)
MTAG_ResetUDB   EQU     _MSTXTAG+$0A    ;Reset UDB
MTAG_ResetLSA   EQU     _MSTXTAG+$0C    ;Reset Local Sample Address

	;-- TAG values: MTAG_Input -----;
INPUT_STD       EQU     0               ;User selected input
INPUT_OPTICAL   EQU     1               ;optical input
INPUT_COAXIAL   EQU     2               ;coaxial input
INPUT_SRC48K    EQU     3               ;48kHz internal source

	;-- TAG values: MTAG_Output ----;
OUTPUT_BYPASS   EQU     0               ;Bypass
OUTPUT_INPUT    EQU     1               ;from input
OUTPUT_FIFO     EQU     2               ;from FIFO

	;-- TAG values: MTAG_CopyProh --;
CPROH_OFF       EQU     0               ;No protection requested
CPROH_ON        EQU     1               ;Copy protection requested
CPROH_PROHIBIT  EQU     2               ;Copy prohibited
CPROH_INPUT     EQU     3               ;As input

	;-- TAG values: MTAG_Emphasis --;
EMPH_OFF        EQU     0               ;no emphasis
EMPH_50us       EQU     1               ;50/15µs
EMPH_CCITT      EQU     2               ;CCITT J.17 (studio only)
EMPH_MANUAL     EQU     3               ;Manuell (studio only)
EMPH_INPUT      EQU     4               ;As input
EMPH_ON         EQU     EMPH_50us

	;-- TAG values: MTAG_Source ----;
SRC_INPUT       EQU     0               ;As input
SRC_CD          EQU     %0000001        ;CD
SRC_DAT         EQU     %0000011        ;DAT
SRC_DSR         EQU     %0001100        ;DSR
SRC_ADCONV      EQU     %0000110        ;ADC
SRC_INSTR       EQU     %0000101        ;Instrument

	;-- TAG values: MTAG_Rate ------;
RATE_32000      EQU     0               ;Rate 32000 Hz
RATE_44100      EQU     1               ;Rate 44100 Hz
RATE_48000      EQU     2               ;Rate 48000 Hz
RATE_48000MANU  EQU     3               ;Rate 48000 Hz Manual
RATE_INPUT      EQU     4               ;As input

*
* StartRealtime() values
*
MTAG_Effect     EQU     _MSTXTAG+$0D    ;effect number (see below)
MTAG_A0         EQU     _MSTXTAG+$0E    ;parameter -> A0
MTAG_A1         EQU     _MSTXTAG+$0F    ;parameter -> A1
MTAG_D2         EQU     _MSTXTAG+$10    ;parameter -> D2
MTAG_D3         EQU     _MSTXTAG+$11    ;parameter -> D3
MTAG_CustomCall EQU     _MSTXTAG+$12    ;pointer to custom call

	;-- Effect codes ---------------;
RFX_Muting      EQU     0               ;mute incoming signal
RFX_Bypass      EQU     1               ;no manipulation (default)
RFX_ChannelSwap EQU     2               ;swap left and right
RFX_LeftOnly    EQU     3               ;mute right channel
RFX_RightOnly   EQU     4               ;mute left channel
RFX_Mono        EQU     5               ;mono
RFX_Surround    EQU     6               ;surround
RFX_Volume      EQU     7               ;volume
					;MTAG_D2: left volume (0..256)
					;MTAG_D3: right volume (0..256)
RFX_Karaoke     EQU     8               ;filters out the singer
RFX_Foregnd     EQU     9               ;filters out the surround info
RFX_Spatial     EQU     10              ;virtual shifting of the speakers
					;MTAG_D2: shift factor (0..256)
					;         optimum: about 64

*
* GetStatus() values
*
MSTAT_TFIFO     EQU     0               ;Transmit FIFO Status    (s.b.)
MSTAT_RFIFO     EQU     1               ;Receive FIFO Status     (s.b.)
MSTAT_Signal    EQU     2               ;Signal on input?        (BOOL)
MSTAT_Emphasis  EQU     3               ;Signal uses emphasis?   (BOOL)
MSTAT_DATsrc    EQU     4               ;DAT-Source?             (BOOL)
MSTAT_CopyProh  EQU     5               ;Copy protection?        (BOOL)
MSTAT_Rate      EQU     6               ;Rate                    (ULONG)
MSTAT_UDB       EQU     7               ;get current UDB         (UBYTE)

	;-- Values for TFIFO & RFIFO ---;
FIFO_Off        EQU     0               ;FIFO ist aus
FIFO_Running    EQU     1               ;FIFO läuft
FIFO_Error      EQU     2               ;FIFO lief über


*
* DataMessageNode
*
		rsreset
dmn_Message     rs.b    MN_SIZE ;message node
dmn_BufPtr      rs.l    1       ;pointer to public buffer memory
dmn_BufLen      rs.l    1       ;length of buffer memory (bytes)
dmn_SIZEOF      rs.w    0

	ENDC
