Exemple #1
0
int test_controller() {
	if (lm_init() == NULL) {
			printf("\tvg_get_controller_info(): lm_init() failed \n");
			return 1;
		}

	return vbe_get_controller_info();
}
Exemple #2
0
int test_controller()
{
	vbe_controller_info_t info;
	void* base=NULL;
	if(vbe_get_controller_info(&info, &base)){
		printf("test_controller(): vbe_get_controller_info() failed\n");
		return 1;
	}
	printf("VBE Signature        : %s\n", info.VbeSignature);
	printf("VBE Version          : ");print_vbe_version(info.VbeVersion); printf("\n");
	printf("OEM String           : %s\n", GET_ADDR(info.OemStringPtr, base));
	printf("Total VRAM memory    : %u (blocks of 64 kb)\n", info.TotalMemory);
	printf("OEM Software Revision: "); print_vbe_version(info.OemSoftwareRev); printf("\n");
	printf("OEM Vendor Name      : %s\n",  GET_ADDR(info.OemVendorNamePtr, base),GET_ADDR(info.OemVendorNamePtr, base));
	printf("OEM Product Name     : %s\n", GET_ADDR(info.OemProductNamePtr, base));
	printf("OEM Product Revision : %s\n", GET_ADDR(info.OemProductRevPtr, base));
	unsigned long capabilities = (unsigned long) (*(info.Capabilities));
	printf("Capabilities: 0x%x\n",capabilities);
	if((capabilities & BIT(0)) == 0)
		printf("\tDAC is fixed width, with 6 bits per primary color\n");
		else  printf("\tDAC width is switchable to 8 bits per primary color\n");
	if((capabilities & BIT(1)) == 0)
		printf("\tController is VGA compatible\n");
		else printf("\tController is not VGA compatible\n");
	if((capabilities & BIT(2)) == 0)
		printf("\tNormal RAMDAC operation\n");
		else  printf("\tRAMDAC operation: Blank bit in Function 09h\n");
	short* modes = GET_ADDR(info.VideoModePtr, base);
	size_t nummodes=0;
	printf("Supported modes:\n");
	while(*modes != -1)
	{
		nummodes++;
		printf("Mode number %3d : 0x%X\n", nummodes,*modes);
		modes++;
	}
	if(nummodes == 0)
		printf("No modes supported\n");
	return 0;
}