11-16-2011, 12:19 PM
Link to the BIOS file
This BIOS belongs to the Gateway ML3108 laptop. It is also used in several other Gateway laptops which were shipped with AMD Sempron, AMD Turion, and AMD Turion X2 CPUs. I'm amongst a few how have tried to update their Gateway laptops from a Sempron to a Turion X2. The Turion X2 is recognised and identified correctly by the BIOS, but the laptop refuses to load the OS, and instead displays the following message:
'Fatal Error !!! Please change CPU !!!'
I've tried a TL50, a TL52, and a TL60. Since some of the laptops using this BIOS are shipped with Turion X2, I'm thinking that Gateway is using a sort of a white list to stop people from upgrading their CPU.
I request help in various forums but no one was able to help. These are some of the threads I posted:
Link1
Link2
Link 3
What I want to do is basicaly locate the routine inside the BIOS that checks the CPU ID and dissable it so that the laptop can load the OS instead of displaying the above error message and halting.
I've opened the BIOS in Phoenix BIOS Editor, and was able to find the above error message inside the 'STRINGS0.ROM' file. I tried to disassemble the BIOS with IDA pro but failed. I'm having issues locating the BIOS 'entry point'. The usual 'entry point' at the offset F000:FFF0 doesn't work.
This is what I did in IDA, and please correct me if I did something wrong:
1- I open the 7910.ROM file in IDA Free 5.0 in 16-bit mode.
2- Following the info emailed to 'kizwan' by 'asscut', I clicked on Edit -> Segments -> Create Segment, and set the following parameters:
Name: F000
Start address: 0x00070000
End adress: 0x00080000
Base: 0x7000
Class: Code
16-bit segment
3- I went to segment F000:FFF0 and pressed 'C' to start the autoanalysis but nothing realy happens. IDA complains saying: "Command 'MakeCode' failed".
Any suggestions?
Thanks
This BIOS belongs to the Gateway ML3108 laptop. It is also used in several other Gateway laptops which were shipped with AMD Sempron, AMD Turion, and AMD Turion X2 CPUs. I'm amongst a few how have tried to update their Gateway laptops from a Sempron to a Turion X2. The Turion X2 is recognised and identified correctly by the BIOS, but the laptop refuses to load the OS, and instead displays the following message:
'Fatal Error !!! Please change CPU !!!'
I've tried a TL50, a TL52, and a TL60. Since some of the laptops using this BIOS are shipped with Turion X2, I'm thinking that Gateway is using a sort of a white list to stop people from upgrading their CPU.
I request help in various forums but no one was able to help. These are some of the threads I posted:
Link1
Link2
Link 3
What I want to do is basicaly locate the routine inside the BIOS that checks the CPU ID and dissable it so that the laptop can load the OS instead of displaying the above error message and halting.
I've opened the BIOS in Phoenix BIOS Editor, and was able to find the above error message inside the 'STRINGS0.ROM' file. I tried to disassemble the BIOS with IDA pro but failed. I'm having issues locating the BIOS 'entry point'. The usual 'entry point' at the offset F000:FFF0 doesn't work.
This is what I did in IDA, and please correct me if I did something wrong:
1- I open the 7910.ROM file in IDA Free 5.0 in 16-bit mode.
2- Following the info emailed to 'kizwan' by 'asscut', I clicked on Edit -> Segments -> Create Segment, and set the following parameters:
Name: F000
Start address: 0x00070000
End adress: 0x00080000
Base: 0x7000
Class: Code
16-bit segment
3- I went to segment F000:FFF0 and pressed 'C' to start the autoanalysis but nothing realy happens. IDA complains saying: "Command 'MakeCode' failed".
Any suggestions?
Thanks