⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 predef.h

📁 YAMAHA的铃音芯片的测试程序
💻 H
字号:
/* debug information */
#define MASMW_SUCCESS					 (0)	/* success */
#define MASMW_ERROR						(-1)	/* error	 */

/* Control register #0~#360 */
#define MA_FM_VOICE_ADDRESS			 (0)
#define MA_WT_VOICE_ADDRESS			(96)
#define MA_EXT_FM_VOICE_ADDRESS	   (224)
#define MA_CHANNEL_VOLUME		   (144)
#define MA_CHANNEL_PANPOT		   (160)
#define MA_CHANNEL_SUSTAIN		   (176)
#define MA_CHANNEL_VIBRATO		   (176)
#define MA_CHANNEL_BEND			   (192)
#define MA_FM_EXTWAVE_15		   (320)
#define MA_FM_EXTWAVE_23		   (322)
#define MA_FM_EXTWAVE_31		   (324)
#define MA_LED_CTRL				   (326)
#define MA_MOTOR_CTRL			   (327)
#define MA_NOP_2				   (328)
#define MA_WT_PG				   (330)
#define MA_TIMER_MS				   (338)
#define MA_TIMER_0_COUNT	       (339)
#define MA_TIMER_0_TIME			   (340)
#define MA_TIMER_0_CTRL			   (341)
#define MA_TIMER_1_COUNT		   (342)
#define MA_TIMER_1_TIME			   (343)
#define MA_TIMER_1_CTRL			   (344)
#define MA_SOFTINT_CTRL			   (345)
#define MA_SOFTINT_RAM			   (346)
#define MA_SEQUENCE				   (350)
#define MA_START_SEQ 			   (353)
#define MA_INT_SETTING			   (354)
#define MA_SMOOTH_VOL              (355)
#define MA_NOP_1				   (358)
#define MA_FM_MODE				   (359)

/* Range volume */
#define MASMW_MAX_DB						(192)
#define	MA_MAX_REG_VOICE					(128)
#define MA_MAX_RAM_BANK						 (16)
#define MASMW_MAX_PROGRAM					(127)		
#define MA_MIN_ROM_DRUM					     (24)
#define MA_MAX_ROM_DRUM					     (84)
#define MASMW_MAX_SLOT                   (32+8+2)
#define MASMW_NUM_CHANNEL					 (16)
#define MA_RAM_BLOCK_SIZE				   (1024)

#define MASMW_MAX_VOLUME					(127)		/* maximum value of volume */
#define MASMW_MAX_CHANNEL					 (15)		/* maximum value of channle */
#define MASMW_MAX_BEND                   (0x3FFF)       /* maximum value of pitch bend */
#define MASMW_MAX_PAN					    (127)		/* maximum value of panpot */
#define MASMW_MAX_DEPTH						  (4)		/* maximum value of modulation depth */
#define MASMW_MAX_HOLD1						  (1)	    /* maximum value of hold1 */
#define MASMW_MAX_BENDRANGE					 (24)		/* maximum value of bend range */

#define MASMW_MIN_DLY_BASETIME				 (1)
#define MASMW_MAX_DLY_BASETIME				(10)

#define MASMW_MASK_VOLUME					(0x7F)
#define MASMW_MASK_BEND                   (0x3FFF)
#define MASMW_MASK_DEPTH					(0x07)
#define MASMW_MASK_XVB					    (0xF8)
#define MASMW_MASK_SUS						(0xEF)

/* ROM&RAM address range */
#define MA_ROM_START_ADDRESS			(0x0000)
#define MA_ROM_END_ADDRESS				(0x3FFF)
#define MA_RAM_START_ADDRESS			(0x4000)
#define MA_RAM_END_ADDRESS				(0x5FFF)

#define MA_NORMAL_ROM_ADDRESS			(0x0800)
#define MA_DRUM_ROM_ADDRESS				(0x1000)


/* Intermediate register */
#define MA_INTERRUPT_FLAG_REG			(0x00)
#define MA_DELAYED_WRITE_REG			(0x01)
#define MA_IMMEDIATE_WRITE_REG		    (0x02)
#define MA_IMMEDIATE_READ_REG			(0x03)
#define MA_BASIC_SETTING_REG			(0x04)
#define MA_POWER_MANAGEMENT_DIGITAL_REG	 (0x05)     /* Bank #0(0x05~0x0F) */
#define MA_POWER_MANAGEMENT_ANALOG_REG	 (0x06)
#define MA_ANALOG_EQVOL_REG				(0x07)
#define MA_ANALOG_HPVOL_L_REG			(0x08)
#define MA_ANALOG_HPVOL_R_REG			(0x09)
#define MA_ANALOG_SPVOL_REG				(0x0A)
#define MA_LED_SETTING_1_REG			(0x0B)
#define MA_LED_SETTING_2_REG			(0x0C)
#define MA_MOTOR_SETTING_1_REG		    (0x0D)
#define MA_MOTOR_SETTING_2_REG		    (0x0E)
#define MA_PLL_SETTING_1_REG			(0x05)           /* Blank #1(0x05~0x06) */
#define MA_PLL_SETTING_2_REG			(0x06)

/* predefine volume for Intermediate Register */
#define MA_VALID_RX						   (4)
#define MA_EMP_W						(0x01)

#define	MA_ANALOG_VOL	(0x1F)                  /* -5dB to EQvol,SPvol&HPvol */
#define	MA_MUTE	        (0x00)                  
#define	MA_MONO	        (0x00)
#define	MA_VSEL	        (0x01)                  /* VDD 3.0V & SPVDD 3.0V */

#define	MA_ADJUST1_VALUE	(0x02)	/* register bank 1, ID #5 */
#define	MA_ADJUST2_VALUE	(0x09)	/* register bank 1, ID #6 */

#define MA_DP3							(0x08)
#define MA_DP2							(0x04)
#define MA_DP1							(0x02)
#define MA_DP0							(0x01)

#define MA_PLLPD						(0x80)
#define MA_AP4R							(0x20)
#define MA_AP4L							(0x10)
#define MA_AP3							(0x08)
#define MA_AP2							(0x04)
#define MA_AP1							(0x02)
#define MA_AP0							(0x01)

/* predefine volume for Control Register */
#define MA_INT_POINT		 (4)
#define MA_FIFO_SIZE		(50)

/* Some volume about MMF file */
#define  FM_16_SIZE     (36)        /* 31 byte encode(4OP) in exclusize event */
#define  FM_32_SIZE     (20)        /* 20 byte encode(2OP) in exclusize event */ 
#define  PCM_TONE_SIZE  (19)        /* 16 byte encode in exclusize event */
#define  MA_MODE_POLY		(1)
#define  MA_MODE_MONO       (0)
#define  MASMW_MASK_BANK					(0xFF)
#define  MASMW_MASK_PROGRAM					(0x7F)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -