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

📄 tvp3025.c

📁 这是一个同样来自贝尔实验室的和UNIX有着渊源的操作系统, 其简洁的设计和实现易于我们学习和理解
💻 C
字号:
#include <u.h>#include <libc.h>#include <bio.h>#include "pci.h"#include "vga.h"/* * Tvp3025 Viewpoint Video Interface Pallette. * Assumes hooked up to an S3 Vision964. * The #9GXE64pro uses bit 5 of Crt5C as RS4, * giving access to the Bt485 emulation mode registers. */static voidoptions(Vga* vga, Ctlr* ctlr){	tvp3020.options(vga, ctlr);}static voidinit(Vga* vga, Ctlr* ctlr){	/*	 * Although the Tvp3025 has a higher default	 * speed-grade (135MHz), just use the 3020 code.	 */	tvp3020.init(vga, ctlr);}static voidload(Vga* vga, Ctlr* ctlr){	uchar crt5c, x;	crt5c = vgaxi(Crtx, 0x5C) & ~0x20;	vgaxo(Crtx, 0x5C, crt5c);	x = tvp3020xi(0x06) & ~0x80;	tvp3020xo(0x06, x);	tvp3020xo(0x0E, 0x00);	(tvp3020.load)(vga, ctlr);	if(ctlr->flag & Uenhanced)		tvp3020xo(0x29, 0x01);	ctlr->flag |= Fload;}static ulongdumpclock(ulong d, ulong n, ulong p){	ulong f;	f = RefFreq*((n+2)*8);	f /= (d+2);	f >>= p;	return f;}static voiddump(Vga* vga, Ctlr* ctlr){	uchar crt5c;	int i;	ulong clock[4];	crt5c = vgaxi(Crtx, 0x5C);	vgaxo(Crtx, 0x5C, crt5c & ~0x20);	tvp3020.dump(vga, ctlr);	printitem(ctlr->name, "PCLK");	for(i = 0; i < 4; i++){		tvp3020xo(0x2C, (i<<4)|(i<<2)|i);		printreg(clock[i] = tvp3020xi(0x2D));	}	Bprint(&stdout, "%23ld\n", dumpclock(clock[0], clock[1], clock[2] & 0x07));	printitem(ctlr->name, "MCLK");	for(i = 0; i < 4; i++){		tvp3020xo(0x2C, (i<<4)|(i<<2)|i);		printreg(clock[i] = tvp3020xi(0x2E));	}	Bprint(&stdout, "%23ld\n", dumpclock(clock[0], clock[1], clock[2] & 0x07));	printitem(ctlr->name, "RCLK");	for(i = 0; i < 4; i++){		tvp3020xo(0x2C, (i<<4)|(i<<2)|i);		printreg(clock[i] = tvp3020xi(0x2F));	}	Bprint(&stdout, "%23ld\n", dumpclock(clock[0], clock[1], clock[2] & 0x07));	vgaxo(Crtx, 0x5C, crt5c);}Ctlr tvp3025 = {	"tvp3025",			/* name */	0,				/* snarf */	options,			/* options */	init,				/* init */	load,				/* load */	dump,				/* dump */};

⌨️ 快捷键说明

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