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

📄 slcomm.def

📁 The combined demo is dedicated for S1C33L05, so DMT33L05 should be used to load and run the demo. F
💻 DEF
字号:
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////
//////// slcomm.def (speak, listen common)
////////
//////// 1998 Oct. 16	inazumi		Ver.0.1
////////
////////	丒壓偺峔憿懱偺僨乕僞暲傃偵埶懚偡傞僐乕僪偑偁傞偺偱
////////	丂僨乕僞偺暲傃傪曄峏偟偰偼側傜側偄丅
////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////// boolean Constant
//////
#define	BOOL_FAILURE		0x00
#define	BOOL_SUCCESS		0x01

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////// internal register base address
//////
#define INTERNAL_REG_BASE	0x00040140

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////// struct QueueEntry
//////	{
//////		int	  Length//
//////		void *Buffer//
//////	}
//////
#define	OFFSET_LENGTH			0x00	// 4 : int
#define	OFFSET_BUFFER			0x04	// 4 : (void *)
#define	LOG_ENTRY_SIZE			0x03	// 8 = LENGTH(4)+BUFFER(4)
#define SIZEOF_QUEUE_ENTRY		1<<LOG_ENTRY_SIZE

#define	LOG_QUEUE_ENTRIES		0x04
#define	QUEUE_ENTRIES			1<<LOG_QUEUE_ENTRIES	// 16 : max. 32
#define	QUEUE_MASK				QUEUE_ENTRIES-1 
#define SIZEOF_QUEUE_ENTRIES	QUEUE_ENTRIES*SIZEOF_QUEUE_ENTRY

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////// struct QueueParams
//////	{
//////		BYTE	CSR;
//////		BYTE	QUEUE_HEAD;
//////		BYTE	QUEUE_TAIL;
//////		BYTE	QUEUE_DONE;
//////		void	(*ON_DONE)          ();
//////		void	(*ON_NOT_IN_TIME)   ();
//////		void	(*ON_EMPTY)         ();
//////		bool	(*LOW_LEVEL_FUNC[5])();
//////	}
//////
#define	OFFSET_CSR				0x00	// 1 : Control/Status
#define	OFFSET_QUEUE_HEAD		0x01	// 1 : BYTE
#define	OFFSET_QUEUE_TAIL		0x02	// 1 : BYTE
#define	OFFSET_QUEUE_DONE		0x03	// 1 : BYTE
#define	OFFSET_ON_DONE			0x04	// 4 : void (*func)(SpkParams,Buffer,Length)
#define	OFFSET_ON_NOT_IN_TIME	0x08	// 4 : void (*func)(SpkParams,Buffer,Length)
#define	OFFSET_ON_QUEUE_EMPTY	0x0c	// 4 : void (*func)(SpkParams,Buffer,Length)
#define OFFSET_LOW_LEVEL_FUNC	0x10	// 4 
#define	OFFSET_QUEUE			0x14	// 8N-bytes

#define	SIZEOF_QUEUE_HEADER		0x14
#define SIZEOF_QUEUE_PARAMS		SIZEOF_QUEUE_HEADER+SIZEOF_QUEUE_ENTRIES

#define	CSR_BITPOS_OPENED		0x00	// 僠儍僱儖偼OPEN偝傟偰偄傞丅
#define	CSR_BITPOS_RUNNING		0x01	// 弌椡張棟拞偱偁傞丅
#define	CSR_BITPOS_DATA_VALID	0x02	// 尰嵼弌椡偟偰偄傞偺偑Valid僨乕僞偐偳偆偐丅
#define	CSR_BITPOS_CALLBACK		0x03	// 俀廳偵Callback張棟儖乕僾偵擖傞偺傪杊偖丅
#define	CSR_BITPOS_CALL_EMPTY	0x04	// QueueEmpty張棟傪懡廳偵Call偡傞偺傪杊偖丅

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////// struct LowLevelFunc
//////	{
//////		int		Next (BYTE *Params);
//////		bool	Open (BYTE *Params, int ReloadValue);
//////		bool	Start(BYTE *Params);
//////		bool	Halt (BYTE *Params);
//////		bool	Close(BYTE *Params);
//////	}
//////
#define	OFFSET_NEXT			0x00
#define	OFFSET_OPEN			0x04
#define	OFFSET_START		0x08
#define	OFFSET_HALT			0x0c
#define	OFFSET_CLOSE		0x10

⌨️ 快捷键说明

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