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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? util.h

?? 一個兩碟控制的VCD的代碼,兩碟之間的轉(zhuǎn)動及連續(xù)播放,已大量生產(chǎn)的CODE.
?? H
字號:
/* SCCSID @(#)util.h	1.35 10/28/98 *//* * $Log$ */#ifndef __UTIL_H__#define __UTIL_H__#include "mvd.h"#include "common.h"register volatile int *mvd asm("r27");#define lwpeek(addr)		mvd[addr]#define	lwpoke(addr, data)	mvd[addr] = data#ifdef MPEG1#define DMAWIDTH0       256	/* 0x100 for refresh *//* for Y, we will use INC2_Y */#define DMAWIDTH2_E2_UV    (DISP_info[E2].wUV)#define DMAWIDTH1_E2_Y    ((704*3/4)/4)#define DMAWIDTH1       (176/4)	/* I/P screen */#define DMAWIDTH2       ((176*3/4) /4)	/* B screen */#else /*MPEG1*/#define DMAWIDTH0       256	/* 0x100 for refresh */#define DMAWIDTH1       (360/4)	/* uv screen */#define DMAWIDTH2       (720/4)	/* y screen */#endif /*MPEG1*/#ifdef SVCD#define WIDTH720   (720/4)#define WIDTH360   (360/4)#define WIDTH352   (352/4)#endif/* * **************** Risc Interface **************** */#define RIFACE_STLD_IRQSUPRESS	0x0000C000#define RIFACE_LD_IRQSUPRESS	0x00004000#define RIFACE_ST_IRQSUPRESS	0x00008000#define xport_irq		0x00000001#define tim1_irq		0x00000002#define tim2_irq		0x00000004#define vin_irq			0x00000008#define vout_irq		0x00000010#define rdma_irq		0x00000020#define vpcmdq_irq		0x00000040#define buscon_irq		0x00000080#define huff_irq		0x00000100#define host_irq		0x00000200#define aud_irq			0x00000400#define tdm_irq			0x00000800#define gateway_irq		0x00001000#define debug_irq		0x00002000	#define enable_int(ch) {					\	int tmp;						\	mvd[riface_irqsuppress] =0;	asm("nop"); asm("nop");	\	tmp = mvd[riface_irqmask];				\	tmp |= cat2(ch,_irq);					\	mvd[riface_irqmask] = tmp;				\}#define disable_int(ch) {					\	int tmp;						\	mvd[riface_irqsuppress] =0;	asm("nop"); asm("nop");	\	tmp = mvd[riface_irqmask] ;				\	tmp &= ~cat2(ch,_irq);					\	mvd[riface_irqmask] =tmp;				\}/* * **************** Risc DMA **************** */GBLDEF_0(int RDMADoneMask, 0);#define rdma_transr_enable	0x00000001#define rdma_tdmw_enable	0x00000002#define rdma_gater_enable	0x00000004#define rdma_gatew_enable	0x00000008#define rdma_hostr_enable	0x00000010#define rdma_hostw_enable	0x00000020#define disable_rdma(ch)	lwpoke(rdma_disable,cat3(rdma_,ch,_enable))#define enable_rdma(ch)		lwpoke(rdma_enable, cat3(rdma_,ch,_enable))#define clear_rdma_done(ch)	lwpoke(rdma_done, cat3(rdma_,ch,_enable))#define rdma_xfer(ch, adr, cnt, pri) do {	\  mvd[rdma_disable] = cat3(rdma_,ch,_enable);	\  mvd[cat3(rdma_,ch,_addr)] = (int)(adr) >> 1;	\  mvd[cat3(rdma_,ch,_cnt)] = cnt;		\  mvd[cat3(rdma_,ch,_pri)] = pri;		\  mvd[rdma_enable] = cat3(rdma_,ch,_enable);	\} while (0)#define	rdma_is_done(ch) \  (mvd[rdma_done] & cat3(rdma_,ch,_enable))#define rdma_wait(ch) do {			\  (void) mvd[rdma_done]; /* read twice */	\  do {} while (!rdma_is_done(ch));		\} while(0)/* * **************** Bus Controller DMA **************** */#define buscon_vp_runbit        0x00000001#define buscon_yscnnr_runbit    0x00000002#define buscon_yscn_runbit      0x00000004#define buscon_uscn_runbit      0x00000008#define buscon_vscn_runbit      0x00000010#define buscon_ycamnr_runbit    0x00000020#define buscon_ycam_runbit      0x00000040#define buscon_ucam_runbit      0x00000080#define buscon_vcam_runbit      0x00000100#define buscon_xportv_runbit    0x00000200#define buscon_xporta_runbit    0x00000400#define buscon_audioin_runbit	0x00000800#define buscon_audioout_runbit	0x00001000#define buscon_hostout_runbit	0x00002000#define buscon_ref_runbit	0x00004000#define buscon_b2r_runbit	0x00008000#define buscon_hufdecv_runbit	0x00010000#define buscon_hufdeca_runbit	0x00020000#define buscon_m2h_runbit	0x00040000#define buscon_hufenc_runbit	0x00080000#define buscon_h2m_runbit	0x00100000#define buscon_r2b_runbit	0x00200000#define buscon_xa1_runbit	buscon_hufenc_runbit#define buscon_xa2_runbit	buscon_audioin_runbit#define buscon_dma_deltas_xa1	buscon_dma_deltas_hufenc#define buscon_dma_xpos_xa1	buscon_dma_xpos_hufenc#define buscon_dma_ypos_xa1	buscon_dma_ypos_hufenc#define buscon_dma_deltas_xa2	buscon_dma_deltas_audio_in#define buscon_dma_xpos_xa2	buscon_dma_xpos_audio_in#define buscon_dma_ypos_xa2	buscon_dma_ypos_audio_in#define buscon_a2d_runbit	buscon_audioin_runbit#define buscon_dma_deltas_a2d	buscon_dma_deltas_audio_in#define buscon_dma_xpos_a2d	buscon_dma_xpos_audio_in#define buscon_dma_ypos_a2d	buscon_dma_ypos_audio_in#define buscon_d2a_runbit	buscon_audioout_runbit#define buscon_dma_deltas_d2a	buscon_dma_deltas_audio_out#define buscon_dma_xpos_d2a	buscon_dma_xpos_audio_out#define buscon_dma_ypos_d2a	buscon_dma_ypos_audio_out#define BDMA_INC2      0x1000  /* Increment Y position by 2 when DMAing*/#define BDMA_WIDTH0    0x0000  /* Use width0 for y increments           */#define BDMA_WIDTH1    0x0200  /* Use width1 for y increments           */#define BDMA_WIDTH2    0x0400  /* Use width2 for y increments           */#define BDMA_WIDTH3    0x0600  /* Use width3 for y increments           */#define BDMA_USEDX     0x0800  /* Use dx for y increments               */#define flush_xportv    0x80#define flush_xporta    0x40#define flush_hufenc    0x20#define flush_r2b       0x10#define flush_b2r       0x00    /* Doesn't really exists */#define flush_d2a       0x00    /* Doesn't really exists */#define DY_MAX	0x80	/* for VCP 0x40 */#define buscon_is_running(ch) \  (mvd[buscon_dma_status] & cat3(buscon_,ch,_runbit))#define buscon_wait(ch) do {		\  while (buscon_is_running(ch));	\  gbl_gate_control &= ~flush_##ch;	\  mvd[gate_control] = gbl_gate_control;	\} while (0)#define buscon_wait_timeout(ch, timeout) do {           \  int timeout_count = 0;                                \  while (buscon_is_running(ch)) {                       \    timeout_count++;                                    \    if (timeout_count > timeout) {                      \      EPRINTF(("pending_status = 0x%x at %d, %s\n",     \        mvd[buscon_dma_pending],__LINE__,__FILE__));    \      break;                                            \    }                                                   \  }                                                     \  gbl_gate_control &= ~flush_##ch;			\  mvd[gate_control] = gbl_gate_control;			\} while(0)#define buscon_disable(ch) mvd[buscon_dma_disable] = cat3(buscon_,ch,_runbit)#define buscon_enable(ch)  mvd[buscon_dma_enable] = cat3(buscon_,ch,_runbit)GBLDEF_0(int gbl_buscon_irqmasks,0);#ifdef BUSCON_IRQ_USE_MACRO #define buscon_irq_enable(ch_runbit) do {		\  do {} while (!(mvd[buscon_dma_status] & ch_runbit));	\  mvd[riface_irqsuppress] = 0; asm("nop"); asm("nop");	\  gbl_buscon_irqmasks |= ch_runbit;			\  mvd[buscon_dma_irqmasks] = gbl_buscon_irqmasks;	\} while (0)#define buscon_irq_disable(ch_runbit) do {		\  mvd[riface_irqsuppress] = 0; asm("nop"); asm("nop");	\  gbl_buscon_irqmasks &= ~ch_runbit;			\  mvd[buscon_dma_irqmasks] = gbl_buscon_irqmasks;	\} while (0)#endif#define buscon_zap(ch) do {			\  buscon_irq_disable(cat3(buscon_,ch,_runbit));	\  buscon_disable(ch);				\  /*do {;} while (buscon_is_running(ch));*/	\} while (0)#define a2x(a)	((a) & 0x1ff)#define a2y(a)	((a) >> 9)#define buscon_xfer(ch, mode, addr, dx, dy) do {			   \  mvd[cat2(buscon_dma_deltas_,ch)] = ((0x80 - (dy)) << 9) | (0x200 - (dx));\  mvd[cat2(buscon_dma_xpos_,ch)] = (mode) | a2x(addr);			   \  mvd[cat2(buscon_dma_ypos_,ch)] = a2y(addr);				   \} while(0)#define buscon_quick_BF(ch, addr, mode, BframeComp) do {    \  mvd[cat2(buscon_dma_xpos_,ch)] = (mode) | a2x(addr);	    \  mvd[cat2(buscon_dma_ypos_,ch)] = BframeComp + a2y(addr);  \} while(0)#define buscon_quick(ch, addr, mode) buscon_quick_BF(ch, addr, mode, 0)/* * **************** RISC fifo **************** */#define GATE_TREMASK    0x02#define GATE_DWMASK     0x01#if 1#define get_riscfifo(answer)	do {				\    while (!(lwpeek(gate_status) & GATE_DWMASK));		\    answer = lwpeek(gate_risc_fifo);				\} while (0)#define put_riscfifo(data)	do {				\    while (!(lwpeek(gate_status) & GATE_TREMASK));		\    lwpoke(gate_risc_fifo,data);				\} while (0)#else#define get_riscfifo(answer)	do {				\    int timeout = 0;						\    while (!(lwpeek(gate_status) & GATE_DWMASK)){		\	timeout++;						\	if (timeout>0x400000) {					\	    EPRINTF(("GateRiscFF DW timeout\n")); break;	\	}							\    }								\    answer = lwpeek(gate_risc_fifo);				\} while (0)#define put_riscfifo(data)	do {				\    int timeout = 0;						\    while (!(lwpeek(gate_status) & GATE_TREMASK)){		\	timeout++;						\	if (timeout>0x400000) {					\	    EPRINTF(("GateRiscFF TRE timeout\n")); break;	\	}							\    }								\    lwpoke(gate_risc_fifo,data);				\} while (0)#endifextern	unsigned int *RISC_ptr_realtime, *RISC_cache_realtime;extern	unsigned int *VCD_ptr_resume_info, *VCD_cache_resume_info;GBLDEF_0(int timer2_period, 0);	/* Period for timer2. Set at run time	*/void	RISC_timer2_interrupt_service(void);void	RISC_start_timer2(void);void	RISC_to_dram(int dst, int *srcp, int n);void    RISC_flush(int start, int n);void	update_glbTimer(void);void	risc_fifo_read(int *p, int n);void	risc_fifo_write(int *p, int n);void	sram_to_dram(int dst, int *srcp, int n);void	dram_to_sram(int *dstp, int src, int n);void	UTIL_flushcache(register unsigned int, unsigned int);#endif /* __UTIL_H__ */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲激情成人在线| 91精品国产综合久久福利 | 亚洲精品你懂的| av电影在线观看一区| 国产精品久久毛片av大全日韩| 粉嫩久久99精品久久久久久夜| 国产日韩欧美a| 色哟哟精品一区| 亚洲成人中文在线| 日韩欧美亚洲国产另类 | 日韩影院精彩在线| 欧美成人欧美edvon| 国产夫妻精品视频| 亚洲丝袜自拍清纯另类| 欧美日韩中文一区| 精品一区二区在线视频| 国产女人18毛片水真多成人如厕| 色综合激情五月| 日韩av一级电影| 欧美国产乱子伦| 欧美视频在线一区二区三区| 另类的小说在线视频另类成人小视频在线| 日韩精品一区二区在线| 国产成人综合视频| 伊人色综合久久天天人手人婷| 欧美视频三区在线播放| 美女视频黄 久久| 国产精品久久看| 欧美日韩成人一区| 国产a久久麻豆| 亚洲国产视频一区| 久久美女艺术照精彩视频福利播放| 北条麻妃国产九九精品视频| 亚洲自拍偷拍av| 国产亚洲综合色| 欧洲人成人精品| 国产盗摄视频一区二区三区| 亚洲在线视频网站| 久久精品亚洲国产奇米99| 99国产精品久| 激情欧美日韩一区二区| 亚洲人成精品久久久久久| 欧美大片在线观看| 欧美亚洲一区二区在线观看| 国内精品不卡在线| 日韩影院在线观看| 亚洲青青青在线视频| 久久综合色之久久综合| 欧美视频在线观看一区| 成人国产亚洲欧美成人综合网| 日韩精品免费专区| 国产精品三级电影| 精品日韩在线观看| 欧美日韩亚洲另类| 91香蕉视频mp4| 精彩视频一区二区| 日本成人在线网站| 亚洲国产美女搞黄色| 欧美激情综合网| 久久久影视传媒| 日韩一区二区三| 制服丝袜亚洲色图| 在线免费不卡电影| 99国产欧美另类久久久精品| 国内精品视频666| 久久国产精品无码网站| 亚洲在线一区二区三区| 亚洲女厕所小便bbb| 日本一区二区视频在线| 久久久久九九视频| 欧美成人精品高清在线播放| 欧美日本韩国一区| 欧美综合在线视频| 欧美专区在线观看一区| 91免费观看在线| 99久久国产综合色|国产精品| 国产黄色成人av| 国产+成+人+亚洲欧洲自线| 黑人巨大精品欧美一区| 狠狠色综合日日| 国产一区二区三区| 国产一区中文字幕| 国产精一品亚洲二区在线视频| 美女网站色91| 国产综合色在线| 国产麻豆一精品一av一免费| 韩国精品免费视频| 国产中文字幕一区| 国内成+人亚洲+欧美+综合在线| 蜜桃在线一区二区三区| 蜜桃91丨九色丨蝌蚪91桃色| 全国精品久久少妇| 国内成人免费视频| 成人精品小蝌蚪| av成人免费在线| 在线观看91精品国产入口| 欧美日韩国产美女| 欧美一区二区三区的| 欧美va亚洲va在线观看蝴蝶网| 久久九九影视网| 综合电影一区二区三区 | 中文字幕精品三区| 亚洲欧美综合网| 亚洲va欧美va国产va天堂影院| 五月婷婷综合网| 国产麻豆视频一区| av在线播放一区二区三区| 色94色欧美sute亚洲线路一ni| 欧美色图第一页| 精品国精品自拍自在线| 国产精品你懂的在线欣赏| 亚洲欧美日韩国产综合| 亚洲成在人线免费| 国产精品一区二区三区99| 91亚洲国产成人精品一区二三| 51午夜精品国产| 国产精品久久久久久久久图文区 | 国产精品成人在线观看| 亚洲二区在线视频| 国产suv一区二区三区88区| 欧美日韩视频在线第一区| 久久久噜噜噜久久中文字幕色伊伊| 亚洲精品免费播放| 精品系列免费在线观看| 欧美午夜理伦三级在线观看| 欧美精品一区二区高清在线观看 | 午夜视频一区在线观看| 国产精品白丝av| 欧美日韩国产影片| 国产精品免费视频一区| 日本系列欧美系列| 成人动漫av在线| 欧美日韩一区二区欧美激情| 亚洲国产精华液网站w| 亚洲一本大道在线| 国产成人在线色| 欧美日韩高清在线| 久久精品亚洲精品国产欧美 | 不卡影院免费观看| 欧美电视剧在线看免费| 亚洲三级在线播放| 日本在线不卡视频| 欧美日韩精品一区二区三区| 久久久久久久久一| 亚洲午夜电影在线| 黑人巨大精品欧美一区| 欧美剧情片在线观看| 久久精品人人做| 五月天激情小说综合| 在线观看日韩国产| 久久亚洲一级片| 五月天激情综合网| 欧美最新大片在线看 | av中文字幕一区| 欧美一区二区三区在线看| 国产精品国产三级国产专播品爱网 | 亚洲综合图片区| 国产一区二区福利| 欧美一区二区视频在线观看2022 | 精品国产亚洲在线| 免费高清成人在线| 在线一区二区三区做爰视频网站| 欧美国产日产图区| jvid福利写真一区二区三区| 精品国产凹凸成av人网站| 午夜精品久久久久久久| 欧美日韩一区二区三区四区五区| 中文字幕中文字幕在线一区| 美女在线观看视频一区二区| 欧美网站一区二区| 亚洲人成精品久久久久久 | 久久成人久久鬼色| 欧美日本在线播放| 亚洲在线视频网站| 色视频欧美一区二区三区| 一区二区在线电影| 91蜜桃网址入口| 自拍偷拍亚洲综合| 91久久精品一区二区三区| 国产精品美女久久久久久 | 亚洲国产成人在线| 国产美女视频91| 中文字幕在线不卡视频| 国产成人aaa| 国产精品人妖ts系列视频| 91一区二区三区在线播放| 中文字幕精品一区二区三区精品| 国产高清精品在线| 亚洲精品少妇30p| 欧亚一区二区三区| 亚洲国产成人av好男人在线观看| 日韩天堂在线观看| 久久狠狠亚洲综合| 久久综合久久99| 92精品国产成人观看免费| 亚洲女人小视频在线观看| 成人开心网精品视频| 一区二区高清免费观看影视大全 | 99精品黄色片免费大全| 一区精品在线播放|