亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? ac48drhw.h

?? Audiocodes old vision DSP driver
?? H
字號:
/************************************************************************/
/*           *   AudioCodes Ltd.   *   Copyright (c) 1998   *           */
/************************************************************************/                      
/* File Name:       Ac48DrHw.h											*/
/************************************************************************/
/* DRIVERS PACKET VERSION:     481(1.30) / 480(1.60) / 483(1.00)        */
/************************************************************************/
/* 4804 OPERATION SOFTWARE VERSION SUPPORT:                             */
/*                       V 1.60 (December 1999) and above	            */
/************************************************************************/
/* 481xx OPERATION SOFTWARE VERSION SUPPORT:                            */
/*                       V 1.30 (October 1999) and above                */
/************************************************************************/
/* 4830x OPERATION SOFTWARE VERSION SUPPORT:                            */
/*                       V 1.00 (March 2000) and above                  */
/************************************************************************/
/* PURPOSE  :   This header file contain the declarations of two macros */
/*				However, most users will prefer not to deal directly	*/
/*				with this level, as the macros or functions may need to */
/*				be rewritten according to the hardware configurations	*/
/*                                                                      */
/* COMMENTS :  The "extern unsigned int FirstAc48xxHPIAddress" shall be	*/
/*			   initialize by the user from the application directory.   */
/*                                                                      */
/* DATE     :   May 1998                                                */
/* UPDATE       REASON TO UPDATE                                        */
/* ======       ================                                        */
/* 1.99         add PCI AVP DRIVER                                      */
/************************************************************************/

#ifndef HWDrv_h
#define HWDrv_h

#include <DOS.H>
#include "Ac48DrUs.h"
#include "Ac48DrDf.h"

//#include "Dummy.h"
//#include "Pcif.h"

/*		The following tables provide cross reference between the			
		communication macros and the AC4804A-C manual:					
		"Communication Routines", Section 3.6 :							

					Call to Macro   |	Read/Write
					----------------+-------------
					AC48xxHostWrite	|   0 (W)
					AC48xxHostRead	|   1 (R)


					Register  |	HRS1	HRS0
					----------+-------------
					HPIC	  |  0	     0
					HPID	  |  0  	 1
					HPIA	  |  1	     0
					HPIDL	  |  1	     1


					Byte   | HI/LO
					-------+------
					First  |  0
					Second |  1


	HPI holds 16 addresses:
		HPIC holds 4: writing to offsets 0, 1   Reading from offsets 2, 3
		HPID holds 4: writing to offsets 4, 5   Reading from offsets 6, 7
		HPIA holds 4: writing to offsets 8, 9   Reading from offsets 10,11
		HPID holds 4: writing to offsets 12,13  Reading from offsets 14,15
*/

struct TShort                       /* for RISC: __packed struct TShort */ 
	{
	unsigned char First;			/* first byte  (offset=0) */
	unsigned char Second;			/* second byte (offset=1) */
	};

struct TDualShort                /* for RISC: __packed struct TShort */
	{
	struct TShort Write; 		/* Write two bytes (offset + 0) */
	struct TShort Read;			/* Read two bytes  (offset + 2) */
	};

struct TAC4804IF               /* for RISC: __packed struct TShort */
	{
	struct TDualShort HPIC;    /* Control Register      (offset + 0)	*/
	struct TDualShort HPID;    /* Data register         (offset + 4)  	*/
			/* HPID transfer Data with Post-increment Address 			*/
			/* after reading and pre-increment Address before writing	*/
	struct TDualShort HPIA;    /* Address Register		(offset + 8)	*/
	struct TDualShort HPIDL;   /* Data Latches register (offset + 12)	*/
	};

	/* define IFs to all AC4804 on board */
#define AC4804IF_BASE_ADDRESS   0

typedef struct TAC4804IF  TAllAC4804IF[];

#define AC4804 (*(volatile TAllAC4804IF *) AC4804IF_BASE_ADDRESS)
								/*  AC4804 points to first memory cell	*/

/* COMMUNICATION MACROS:                                                
/*======================================================================*/
/* Name    :		Ac48xxHostWrite										*/
/*======================================================================*/
/* Purpose :    The AC48HostWrite is a macro which writes one byte to   */
/*              the HPI of the AC48.                                    */
/*                                                                      */
/* Inputs  :    Data Writes a character into the HPI of the AC48        */
/*              DeviceIndex	An integer, performing the device index.    */
/*              Destination 	One of the HPI registers:               */
/*                          HPIC	- Control Register                  */
/*                          HPID	- Incremented-address Data Register */
/*                          HPIA	- Address Register                  */
/*                          HPIDL	- Address-latched Data Register     */
/*              Byte Because the AC48xxHostWrite macro always has to    */
/*                   be called as a pair, to write two bytes to the     */
/*                   AC48, the first is called with the                 */
/*                   value:- 'First', and the second called with the    */
/*                   value:- 'Second'.                                  */
/*======================================================================*/

/*======================================================================*/
/* Name    :		Ac48xxHostRead										*/
/*======================================================================*/
/* Purpose :    The AC48HostRead is a macro which reads a character     */
/*              from the HPI of the AC48.                               */
/*                                                                      */
/* Inputs  :    DeviceIndex: An integer, performing the device index.   */
/*              Source:	One of the HPI registers:                       */
/*                          HPIC	- Control Register                  */
/*                          HPID	- Incremented-address Data Register */
/*                          HPIA	- Address Register                  */
/*                          HPIDL	- Address-latched Data Register     */
/*              Byte:   Because the AC48xxHostRead macro always has to  */
/*                      be called as a pair, to read two bytes from     */
/*                      the AC48                                        */
/*                                                                      */
/* Output  :    Char 	Reads one character from the AC48.              */
/*======================================================================*/
#if AC4804IF_TYPE == IO_MAPPING
		/* If you call inportb or outportb when DOS.H has been included,*/
		/* they are treated as macros that expand to inline code.       */
		/* FirstAc48xxHPIAddress shall be initialize by the user!!! */
	extern unsigned int FirstAc48xxHPIAddress;	

	#define Ac48xxHostWrite(Data, Index, Destination, Byte) outportb((int)&AC4804[Index+FirstAc48xxHPIAddress].Destination.Write.Byte, Data)
	#define Ac48xxHostRead(Index, Source, Byte)              inportb((int)&AC4804[Index+FirstAc48xxHPIAddress].Source.Read.Byte)

#elif AC4804IF_TYPE == AC4804IF_DIRECT_ACCESS
    #define Ac48xxHostWrite(Data, Index, Destination, Byte) AC4804[Index+FirstAc48xxHPIAddress].Destination.Write.Byte=Data
	#define Ac48xxHostRead(Index, Source, Byte)             AC4804[Index+FirstAc48xxHPIAddress].Source.Read.Byte
		/* #define ReadByteAC4804(Index,Addr)  AC4804[Index]->Addr */

#elif AC4804IF_TYPE == AC48_ISA_IF_WINDOWS_DRIVER
		/* Writing/Reading from AC4804 - using ISA driver for win95/winNT */
	extern unsigned int AC4804IF_BASE_ADDRESS_WINDOWS_DRIVER;

	#define Ac48xxHostWrite(Data, Index, Destination, Byte) IO_WriteByte(((unsigned long)&AC4804[Index+FirstAc48xxHPIAddress].Destination.Write.Byte)-AC4804IF_BASE_ADDRESS+AC4804IF_BASE_ADDRESS_WINDOWS_DRIVER, Data)
   	#define Ac48xxHostRead(Index, Source, Byte)              IO_ReadByte(((unsigned long)&AC4804[Index+FirstAc48xxHPIAddress].Source.Read.Byte)-AC4804IF_BASE_ADDRESS+AC4804IF_BASE_ADDRESS_WINDOWS_DRIVER)

#elif (AC4804IF_TYPE == AC48_PCI_IF_WINDOWS_PC04_DRIVER) || (AC4804IF_TYPE == AC4804IF_WINDOWS_PCI_AVP_DRIVER)
		/* Writing/Reading from AC4804 - using PCI driver for win95/winNT */
    #define PCI_CS0_OFFSET          0x00000000
	#define PCI_CS1_OFFSET          0x00010000  /* PCI_CS1_OFFSET = 0x1000 * sizeof(TAC4804IF) */
	#define PCI_CS3_OFFSET          0x00020000
    #define HPI_INDEX_OFFSET        12          /* 0x1000 = 1<<12 */    
    #define PCI_CARD_INDEX          0
	extern void         IO_WriteByte(unsigned long dwIOAddr, unsigned char bData, int PciCardId);
	extern unsigned char IO_ReadByte(unsigned long dwIOAddr, int PciCardId);

    #define Ac48xxHostWrite(Data, Index, Destination, Byte)  IO_WriteByte((unsigned long)&AC4804[Index<<HPI_INDEX_OFFSET].Destination.Write.Byte, (unsigned char)Data, (int)PCI_CARD_INDEX)	
	#define Ac48xxHostRead(Index, Source, Byte)               IO_ReadByte((unsigned long)&AC4804[Index<<HPI_INDEX_OFFSET].Source.Read.Byte, (int)PCI_CARD_INDEX)

/*#elif AC4804IF_TYPE == AC4804IF_DIRECT_ACCESS
	#define Ac48xxHostWrite(Data, Index, Destination, Byte) AC4804[Index+FirstAc48xxHPIAddress].Destination.Write.Byte=Data
	#define Ac48xxHostRead(Index, Source, Byte)             AC4804[Index+FirstAc48xxHPIAddress].Source.Read.Byte
			/* #define ReadByteAC4804(Index,Addr)  AC4804[Index]->Addr */
/*#elif AC4804IF_TYPE == AC4804IF_WINDOWS_DRIVER
			/* Writing/Reading from AC4804 - using driver for win95/winNT */
/*	extern unsigned int AC4804IF_BASE_ADDRESS_WINDOWS_DRIVER;
	#define Ac48xxHostWrite(Data, Index, Destination, Byte) IO_WriteByte(((unsigned long)&(AC4804[Index+FirstAc48xxHPIAddress].Destination.Write.Byte))-AC4804IF_BASE_ADDRESS+AC4804IF_BASE_ADDRESS_WINDOWS_DRIVER, Data)
	#define Ac48xxHostRead(Index, Source, Byte)              IO_ReadByte(((unsigned long)&(AC4804[Index+FirstAc48xxHPIAddress].Source.Read.Byte)) -     AC4804IF_BASE_ADDRESS+AC4804IF_BASE_ADDRESS_WINDOWS_DRIVER)
*/
#endif
#endif /* HWDrv_h */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久热成人在线视频| 亚洲品质自拍视频网站| 久久精品久久久精品美女| 欧美日高清视频| 美女视频黄频大全不卡视频在线播放| 精品视频色一区| 看片网站欧美日韩| 久久精品视频在线免费观看 | 国产一区欧美二区| 国产欧美精品在线观看| www..com久久爱| 一区二区三区欧美视频| 91精品国产综合久久婷婷香蕉| 秋霞电影一区二区| 国产欧美日韩在线视频| 色先锋aa成人| 另类综合日韩欧美亚洲| 亚洲国产激情av| 欧美精品久久久久久久久老牛影院| 免费在线看一区| 国产精品妹子av| 91精品久久久久久久99蜜桃 | 丁香婷婷深情五月亚洲| 亚洲免费毛片网站| 欧美mv日韩mv国产网站app| 成人精品gif动图一区| 亚洲小说欧美激情另类| 久久你懂得1024| 在线亚洲精品福利网址导航| 美女一区二区久久| 亚洲欧洲精品一区二区精品久久久 | 蜜桃av一区二区| **性色生活片久久毛片| 日韩一区二区三区免费观看| 91丝袜美女网| 精品无人码麻豆乱码1区2区| 亚洲少妇30p| 26uuu色噜噜精品一区| 欧洲中文字幕精品| 国产不卡一区视频| 日韩在线观看一区二区| 中文字幕亚洲区| 欧美精品一区二区三区蜜桃| 欧美日韩五月天| 99精品视频在线免费观看| 国内精品国产成人| 石原莉奈在线亚洲三区| 亚洲精品午夜久久久| 国产午夜亚洲精品不卡| 日韩视频在线永久播放| 欧美伊人久久久久久久久影院| 国产jizzjizz一区二区| 久久99精品国产91久久来源| 玉米视频成人免费看| 国产精品久久久爽爽爽麻豆色哟哟| 日韩片之四级片| 欧美精品丝袜久久久中文字幕| 91啪在线观看| 国产不卡在线播放| 国产精品18久久久久久vr| 秋霞国产午夜精品免费视频| 亚洲一区二区三区影院| 亚洲欧美激情一区二区| 中文字幕在线不卡视频| 国产欧美精品日韩区二区麻豆天美| 精品久久久三级丝袜| 91精品在线观看入口| 91福利国产成人精品照片| 色综合久久久久网| 色噜噜狠狠成人网p站| av在线不卡网| 99久久精品国产网站| 99综合电影在线视频| 成人av在线网站| 99久久精品国产麻豆演员表| av亚洲精华国产精华精华| av在线免费不卡| 91免费视频网| 欧美性一二三区| 欧美日韩国产高清一区二区三区 | 欧美日韩国产一二三| 欧洲亚洲国产日韩| 欧美色图12p| 欧美妇女性影城| 欧美一区二区精美| 精品精品国产高清一毛片一天堂| 精品国产3级a| 中文字幕精品在线不卡| 1024成人网色www| 亚洲图片欧美色图| 亚洲aⅴ怡春院| 麻豆精品精品国产自在97香蕉| 精品一区二区三区在线播放视频 | caoporen国产精品视频| 色综合天天综合网国产成人综合天| 91一区二区三区在线观看| 色菇凉天天综合网| 91精品国产色综合久久ai换脸| 亚洲精品一区二区三区影院| 国产无遮挡一区二区三区毛片日本| 中文字幕制服丝袜成人av| 亚洲国产婷婷综合在线精品| 日韩高清欧美激情| 国产成人在线网站| 一本一道波多野结衣一区二区| 欧美日韩高清影院| 久久久久久影视| 亚洲人成人一区二区在线观看| 日韩高清在线观看| 成人av免费在线| 制服.丝袜.亚洲.中文.综合| 国产欧美视频在线观看| 亚洲电影第三页| 成人97人人超碰人人99| 欧美久久久久久久久中文字幕| 久久久久9999亚洲精品| 亚洲制服欧美中文字幕中文字幕| 久久精品国产一区二区三| 91在线精品一区二区三区| 3d动漫精品啪啪1区2区免费| 国产午夜精品一区二区三区视频| 亚洲成av人片一区二区三区| 黄色日韩网站视频| 欧美三级韩国三级日本三斤| 国产午夜精品理论片a级大结局 | 久久电影网站中文字幕| 成人av电影免费在线播放| 欧美一级一级性生活免费录像| 国产精品婷婷午夜在线观看| 美女视频黄免费的久久 | 国产精品免费视频一区| 日韩中文字幕一区二区三区| 99久久精品免费看国产| xnxx国产精品| 天天影视涩香欲综合网| 99re66热这里只有精品3直播| 26uuuu精品一区二区| 日韩不卡一区二区三区| 欧美午夜在线一二页| 亚洲三级视频在线观看| 国产精品中文字幕日韩精品| 欧美精品123区| 一区二区在线观看免费视频播放| 国产成人综合在线播放| 精品理论电影在线观看| 日韩av中文在线观看| 欧美在线视频你懂得| 亚洲欧洲精品天堂一级 | 2023国产精品视频| 日韩福利电影在线| 色婷婷一区二区三区四区| 国产欧美日本一区视频| 国产成人av一区二区三区在线| 91精品国产入口| 日韩制服丝袜av| 欧美人与z0zoxxxx视频| 亚洲图片一区二区| 欧美三级日韩三级国产三级| 亚洲综合视频在线| 在线观看欧美黄色| 亚洲欧美aⅴ...| 成人18精品视频| 中文字幕一区二区三区四区不卡| 国产精品一二三| 国产三级精品三级在线专区| 国产乱妇无码大片在线观看| 欧美精品一区二区三区视频| 精品一区二区三区免费| 日韩一卡二卡三卡四卡| 日本成人中文字幕| 日韩欧美激情四射| 韩日精品视频一区| 国产欧美日韩精品一区| 成人黄色在线视频| 成人欧美一区二区三区视频网页| 成人av片在线观看| 亚洲精品写真福利| 欧美三级一区二区| 蜜乳av一区二区三区| 精品久久人人做人人爰| 国产中文字幕精品| 欧美韩国一区二区| youjizz国产精品| 一区二区三区在线看| 欧美日韩国产美| 国产一区二区免费在线| 中文字幕电影一区| 色婷婷精品久久二区二区蜜臀av| 亚洲一区二区三区四区不卡| 欧美日韩电影在线| 国产真实精品久久二三区| 日本一区二区视频在线| 一本到三区不卡视频| 性做久久久久久久免费看| 91精品一区二区三区久久久久久| 国产老妇另类xxxxx| 亚洲丝袜另类动漫二区| 欧美精品免费视频| 国产福利一区二区三区在线视频| 亚洲人精品一区|