diff options
-rw-r--r-- | src/g80_output.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/g80_output.c b/src/g80_output.c index 13f9b1b..603fe95 100644 --- a/src/g80_output.c +++ b/src/g80_output.c @@ -79,7 +79,15 @@ static Bool G80ReadPortMapping(int scrnIndex, G80Ptr pNv) for(i = 0; i < G80_NUM_I2C_PORTS; i++) pNv->i2cMap[i].dac = pNv->i2cMap[i].sor = -1; - if(*(CARD16*)pNv->table1 != 0xaa55) goto fail; + /* These are the three possible known rom signatures */ + switch(*(CARD16*)pNv->table1) { + case 0xaa55: + case 0x4e56: + case 0xbb77: + break; + default: + goto fail; + } a = *(CARD16*)(pNv->table1 + 0x36); table2 = (unsigned char*)pNv->table1 + a; |