rem: LOG(1,("POWERUP: Matrox (open)BeOS Accelerant 0.16-1 running.\n"));
add: LOG(1,("POWERUP: Matrox (open)BeOS Accelerant 0.16-2 running.\n"));
context: status_t gx00_general_powerup(){	status_t status;	uint32 card_class;	LOG(1,("POWERUP: Matrox (open)BeOS Accelerant 0.16-1 running.\n"));	/* detect card type and power it up */	switch(CFGR(DEVID))	{	case 0x051a102b: //MGA-1064 Mystic PCI		LOG(8,("POWERUP: Unimplemented Matrox device %08x\n",CFGR(DEVID)));		return B_ERROR;	case 0x0519102b: //MGA-2064 Millenium PCI		si->ps.card_type = MIL1;		LOG(4,("POWERUP: Detected MGA-2064 Millennium 1\n"));		status = mil_general_powerup();		break;	case 0x051b102b:case 0x051f102b: //MGA-2164 Millenium 2 PCI/AGP		si->ps.card_type = MIL2;		LOG(4,("POWERUP: Detected MGA-2164 Millennium 2\n"));		status = mil_general_powerup();		break;	case 0x1000102b:case 0x1001102b: //G100		si->ps.card_type = G100;		LOG(4,("POWERUP: Detected G100\n"));		status = g100_general_powerup();		break;	case 0x0520102b:case 0x0521102b: //G200		si->ps.card_type = G200;		LOG(4,("POWERUP: Detected G200\n"));		status = g200_general_powerup();		break;	case 0x0525102b: //G400, G400MAX or G450		LOG(4,("POWERUP: Detected G4"));		/* get classinfo to distinguish different types */		card_class = CFGR(CLASS) & 0xff;		if (card_class & 0x80)		{			/* G450 */			si->ps.card_type = G450;			LOG(4, ("50 revision %x\n", card_class & 0x7f));			status = g450_general_powerup();		}		else		{			/* standard G400, G400MAX */			/* the only difference is the max RAMDAC speed, accounted for via pins. */			si->ps.card_type = G400;			LOG(4, ("00 revision %x\n", card_class & 0x7f));			status = g400_general_powerup();		}		break;	case 0x2527102b://G550 patch from Jean-Michel Batto		si->ps.card_type = G450;		LOG(4,("POWERUP: Detected G550\n"));		status = g450_general_powerup();		break;		default:		LOG(8,("POWERUP: Failed to detect valid card 0x%08x\n",CFGR(DEVID)));		return B_ERROR;	}	/* override memory detection if requested by user */	if (si->settings.memory != 0)		si->ps.memory_size = si->settings.memory;	return status;}