Subversion Repositories shark

Compare Revisions

Ignore whitespace Rev 73 → Rev 74

/shark/trunk/drivers/svga/vga.c
34,6 → 34,7
extern int init_vgapci(void);
extern int nv3_test(void);
extern int savage_test(void);
extern int r128_test(void);
 
/* If == 0 then nothing is defined by the user... */
int __svgalib_default_mode = 10;
823,6 → 824,16
graph_mem = GM; /* Exported variable. */
}
 
void __svgalib_emul_setpage(int page)
{
static int oldpage = -2;
 
if (page != oldpage)
{
oldpage = page;
}
}
 
static void map_vgaio(void)
{
__svgalib_inmisc=__svgalib_vga_inmisc;
972,9 → 983,10
 
/* SHARK: Supported Graphics Drivers
*
* NVIDIA
* SAVAGE
*
* NV3 (NVIDIA: GEFORCE/TNT/TNT2)
* SAVAGE (S3: VIRGE/SAVAGE
* R128 (ATI: RAGE 128/RADEON)
*
*/
CHIPSET = set_chipset;
991,6 → 1003,9
case SAVAGE:
savage_test();
break;
case R128:
r128_test();
break;
}
}
999,6 → 1014,40
 
}
 
int vga_getxdim(void)
{
return CI.xdim;
}
 
 
int vga_getydim(void)
{
return CI.ydim;
}
 
 
int vga_getcolors(void)
{
return CI.colors;
}
 
int vga_white(void)
{
switch (CI.colors) {
case 2:
case 16:
case 256:
return 15;
case 1 << 15:
return 32767;
case 1 << 16:
return 65535;
case 1 << 24:
return (1 << 24) - 1;
}
return CI.colors - 1;
}
 
void __svgalib_delay(void)
{
int i;
1346,3 → 1395,20
: "c" (memdiv2), "a" (src), "b" (dst));
 
}
 
inline void copy_videomem_16to16(void *src, void *dst, unsigned long int memdiv4)
{
__asm__ __volatile__("push %%esi
push %%edi
movl %1, %%esi
movl %2, %%edi
cld
rep
movsl
pop %%edi
pop %%esi"
:
: "c" (memdiv4), "a" (src), "b" (dst));
 
}