SISPART1
ret |= SETIREGOR(SISPART1, 0x2f, 0x01);
ret |= SETIREG(SISPART1, 0x00, 0x00);
ret |= SETIREG(SISPART1, 0x02, 0x00);
ret |= SETIREG(SISPART1, 0x2e, 0x08);
SiS_SetRegOR(SISPART1, ivideo->CRT2_write_enable, 0x01);
SiS_SetReg(SISPART1, 0x07, (HDisplay2 & 0xFF));
SiS_SetRegANDOR(SISPART1, 0x09, 0xF0, (HDisplay2 >> 8));
SiS_SetRegOR(SISPART1, ivideo->CRT2_write_enable, 0x01);
SiS_SetReg(SISPART1, 0x06, (base & 0xFF));
SiS_SetReg(SISPART1, 0x05, ((base >> 8) & 0xFF));
SiS_SetReg(SISPART1, 0x04, ((base >> 16) & 0xFF));
SiS_SetRegANDOR(SISPART1, 0x02, 0x7F, ((base >> 24) & 0x01) << 7);
ivideo->detectedpdc = SiS_GetReg(SISPART1, 0x13);
tmp = SiS_GetReg(SISPART1, 0x13);
pdc = SiS_GetReg(SISPART1, 0x2D);
pdc = SiS_GetReg(SISPART1, 0x35);
pdc = SiS_GetReg(SISPART1, 0x20);
SiS_SetRegOR(SISPART1, 0x24, 0x01); /* unlock crt2 */
SiS_SetReg(SISPART1, 0x00, 0x00);
SiS_SetReg(SISPART1, 0x02, v1);
SiS_SetRegAND(SISPART1, 0x24, 0xfe); /* Lock CRT2 */
SiS_SetReg(SISPART1, 0x2f, 0x01);
SiS_SetReg(SISPART1, 0x00, 0x00);
SiS_SetReg(SISPART1, 0x02, bios[0x7e]);
SiS_SetReg(SISPART1, 0x2e, 0x08);
SiS_SetRegAND(SISPART1, 0x35, 0x7f);
SiS_SetRegAND(SISPART1, 0x50, 0xfe);
SiS_SetRegANDOR(SISPART1, 0x1e, 0xfd, reg);
P1_00 = SiS_GetReg(SISPART1, 0x00);
temp = SiS_GetReg(SISPART1, reg);
reg1 = SiS_GetReg(SISPART1, (idx+0)); /* 30 */
reg2 = SiS_GetReg(SISPART1, (idx+1)); /* 31 */
reg3 = SiS_GetReg(SISPART1, (idx+2)); /* 32 */
reg4 = SiS_GetReg(SISPART1, (idx+3)); /* 33 */
SiS_SetRegANDOR(SISPART1, 0x13, 0x3f, p1_13);