Jump to content

G41M-ES2LosX MAC BIOS


32 posts in this topic

Recommended Posts

G41M-ES2L MAC EDITION BIOS f8 (Widescreen) by jeffrey1790

===========================================

 

This is an experimental modified bios for Gigabytes G41M-ES2L motherboard.

If anything happens to your board, I WILL NOT BE HELD RESPONSIBLE FOR ANY DAMAGE THAT MAY OCCUR.

 

What Does it include?

 

- Gigabyte Slic2.1 (for windows activation)

- Sleep / Shutdown Fix.

- Loads CPU Power Management properly, however doesnt support Speedstepping yet.

- Splash Screen (Widescreen in this BIOS)

- USB/EHCI Speed Fixes.

- CMOS reset fix.

- HDEF Audio (still need 10.6.2 AppleHDA and LegacyHDA_Alc888b.kext)

 

Instructions

 

- Extract BIOS File to USB. Reboot computer, pressing <end> while booting up. Select Bios file, the computer will automatically reboot. Now you can remove your SleepEnabler, dsdt, and/or OpenHaltRestart/OSXRestart.

 

 

Special Thanks to:

Catri - making the mac edition bios / giving me an idea to create my own.

Ridgeline - writing an amazing guide on how to install mac osx on this machine.

 

G41MES2L osx1.1

Renamed devices to mac specific ones.

G41MES2Losx_v1.1.zip

 

 

G41MES2L osx1.0

Download:

g41mes2losxf8.zip

Link to comment
Share on other sites

Looks cool! What bootloader are you using?

Have you tried it on G41M-ES2L revision 1.0 or 1.1?

Does it loads CPU Power Management without a custom CPU section in DSDT?

Link to comment
Share on other sites

Looks cool! What bootloader are you using?

Have you tried it on G41M-ES2L revision 1.0 or 1.1?

Does it loads CPU Power Management without a custom CPU section in DSDT?

 

Using AsereBLN booter 1.1.9. Should work on any bootloader though. I've only tested this on version 1.0 of this board, and it loads AppleCPUPowerManagement with some minor tweaks in the ACPITBL (nothing processor specific though)

Link to comment
Share on other sites

Using AsereBLN booter 1.1.9. Should work on any bootloader though. I've only tested this on version 1.0 of this board, and it loads AppleCPUPowerManagement with some minor tweaks in the ACPITBL (nothing processor specific though)

Looks very interesting, I just bought this board, will try it out ;)

edit: I have rev1.1 of this board, so not for now.. Good initiative anyway.

Link to comment
Share on other sites

Looks very interesting, I just bought this board, will try it out :(

edit: I have rev1.1 of this board, so not for now.. Good initiative anyway.

 

All the Revisions of this board seem to be using the exact same BIOS. So, in theory it shouldnt matter which revision you flash this to.

Link to comment
Share on other sites

i need a original bios file to flash with qflash, cause windows 7 says something about acpi incompatibility, and also dvd installer cant run. I want to back to unmodded bios, but on Gigabyte´s site they have all bios files in .exe.

 

(sorry for my bad english).

 

Thanks.

 

 

Edit: Problem solved. i´ve extracted the unmodded bios .rom file in a lap top of a friend and flash in my mobo and everything is good again. I dont know how to explain what happened, but was something related with acpi.

 

Thanks.

Link to comment
Share on other sites

Seems like different revisions of this board support different bios versions: rev 1.0 supports anything from F1 to F8, and revisions 1.1 and 1.3 support from F6 to F8 only. Btw, how do i use this .exe you provided? Tried opening it on WinXP in VMware in order to extract the contents to USB, but the application closes immediately.

Link to comment
Share on other sites

Alright, looks like i survived the bios update.:)

The CPU power management seems to work fine, but there's some strange behavior with my graphics card. I'm using 8400GS with GraphicsEnabler,

for some reason when i remove my DSDT the GraphicsEnabler stops recognizing my 8400GS. What GraphicsEnabler has to do with DSDT? I don't know.

Selecting sleep from the apple menu - the computer restarts, and pressing the sleep shortcut on the keyboard - computer shuts down.

 

Here's my specs:

G41M-ES2L 1.1

Intel E6500

8400GS 512MB

 

10.6.3 Retail with AnVAL bootloader, and the following stuff in Extra: http://www.insanelymac.com/forum/index.php...st&id=73320

Link to comment
Share on other sites

Alright, looks like i survived the bios update. :P

The CPU power management seems to work fine, but there's some strange behavior with my graphics card. I'm using 8400GS with GraphicsEnabler,

for some reason when i remove my DSDT the GraphicsEnabler stops recognizing my 8400GS. What GraphicsEnabler has to do with DSDT? I don't know.

Selecting sleep from the apple menu - the computer restarts, and pressing the sleep shortcut on the keyboard - computer shuts down.

 

Here's my specs:

G41M-ES2L 1.1

Intel E6500

8400GS 512MB

 

10.6.3 Retail with AnVAL bootloader, and the following stuff in Extra: http://www.insanelymac.com/forum/index.php...st&id=73320

 

Do you have any video card information in your DSDT? Also, sleep appears to be working for me. Again, this is kind of an experimental test, I will be fine tuning it in the future, so hold tight.

Link to comment
Share on other sites

No, as far as i know. Perhaps it has something to do with my bootloader because i'm using a beta version at the moment. Btw, the sleep issues i've mentioned are happening only with my DSDT, without DSDT when i select sleep the mouse disappears and nothing happens.

Link to comment
Share on other sites

Is there a way to change the boot screen image? It's great but looks terribly stretched on my 3X4 screen.

 

use the included cbrom32.exe, open cmd and do the following:

 

cbrom32.exe G41MES2L1.1.f8 /acpitbl extract

<press enter again>

cbrom32.exe G41MES2L1.1.f8 /logo extract

<press enter again>

edit the LOGO.BMP, save. now

cbrom32.exe G41MES2L1.1.f8 /logo LOGO.BMP

^^ THAT WILL INSERT YOUR NEW EDITED LOGO

<press enter again>

cbrom32.exe G41MES2L1.1.f8 /acpitbl ACPITBL.BIN

<press enter again>

 

CROSS YOUR FINGERS AND FLASH YOUR BIOS!

 

CBROM32.rar

Link to comment
Share on other sites

does this article also apply to the new G41MT-ES2L (Rev 1.0) F4

its the same motherboard in DDR3 Avatar...

 

I'm successfully using iDeneb 10.5.8 lite working flawlessely on it... wanna try Snow Leopard on it...

Link to comment
Share on other sites

Count me in the testing. ill post results in a bit..

edit: im not testing as i have a special bios with slic 2.1 for windex 7..i could try it but i would loose win7

reedit: i just saw slic 2.1 :) i guess i am flashing afterall

G41m-es2l rev 1.0 galaxy gts250 with 1x dvi 1x hdmi.

 

im trying to get this sabrent pci-g802 card to work. shows up under HUB0 in ioreg.. but no luck yet. its in pci slot 2 as slot 1 is covered by heat sink of vid card.

it shows in bios post page under irq 11 . .then in ioreg under irq 13.

hmmm.

edit: pci bus and ppc drivers dont mix in x86.

:(

Link to comment
Share on other sites

when flashing change setting in QFlash "keep DMI info= disable" catri's bios flashing steps.!

 

1: USB wake from sleep dont work. i have to press pwrbtn (you changed it prety drasticaly without the right info.. ich10 id ? only EHCi needs modding )

2: Video auto detection not working due to PCI0 UID 1 not 0.

(boot with no dsdt.aml in /Extra and extract dsdt then change (pci0) UID from One to 0x00 then save dsdt and boot with it.. video auto detection works)

 

3: PTS shutdown fix not present. but seems it works but slow shutdown .. 40 secs but works!.. or add this

 

OperationRegion (PMRS, SystemIO, 0x0430, 0x13)

Field (PMRS, ByteAcc, NoLock, Preserve)

{

, 4,

SLPE, 1

}

---------------

   OperationRegion (DEBG, SystemIO, 0x80, One)
   Field (DEBG, ByteAcc, NoLock, Preserve)
   {
       DBG1,   8
   }

   OperationRegion (PMRS, SystemIO, 0x0430, 0x13)
   Field (PMRS, ByteAcc, NoLock, Preserve)
   {
           ,   4, 
       SLPE,   1
   }

   OperationRegion (RCRB, SystemMemory, 0xFED1C000, 0x4000)
   Field (RCRB, DWordAcc, Lock, Preserve)
   {
               Offset (0x3404), 
           ,   7, 
       HPTF,   1
   }

----

and on pts add

 

If (LEqual (Arg0, 0x05))

{

Store (Zero, SLPE)

Sleep (0x10)

}

 

   Method (_PTS, 1, NotSerialized)
   {
       Or (Arg0, 0xF0, Local0)
       Store (Local0, DBG1)
       OSTP ()
       If (LEqual (Arg0, One)) {}
       If (LEqual (Arg0, 0x03)) {}
       If (LEqual (Arg0, 0x05))
       {
           Store (ESMI, Local0)
           And (Local0, 0xFB, Local0)
           Store (Local0, ESMI)
           Store (0x99, SMIP)
       }

       If (LEqual (Arg0, 0x05))
       {
           Store (Zero, SLPE)
           Sleep (0x10)
       }

       If (LEqual (Arg0, 0x04))
       {
           If (LNot (PICF))
           {
               Sleep (0x64)
           }
       }
   }

also i added my Q8300 cpu _PSS only no _CST info to dsdt and i think its working.. apparently the CST info is fixed in bios.

(idle writing this at 34C thats way better than 43C with cst info in dsdt.)

   Scope (_PR)
   {
       Processor (CPU0, 0x00, 0x00000410, 0x06)
       {
           Method (_PSS, 0, NotSerialized)
           {
               Return (Package (0x04)
               {
                   Package (0x06)
                   {
                       Zero, 
                       Zero, 
                       0x10, 
                       0x10, 
                       0x4725, 
                       Zero
                   }, 

                   Package (0x06)
                   {
                       Zero, 
                       Zero, 
                       0x10, 
                       0x10, 
                       0x0720, 
                       One
                   }, 

                   Package (0x06)
                   {
                       Zero, 
                       Zero, 
                       0x10, 
                       0x10, 
                       0x461B, 
                       0x02
                   }, 

                   Package (0x06)
                   {
                       Zero, 
                       Zero, 
                       0x10, 
                       0x10, 
                       0x0616, 
                       0x03
                   }
               })
           }
       }

 

My usb section for my working dsdt (US31 and USB5 removed, changed EHC1 to EHCi and in method L0D EHC1 to EHCi.. also addresses are different A ? i have rev 1.1 board ?)

           Device (USB0)
           {
               Name (_ADR, 0x001D0000)
               Method (_S3D, 0, NotSerialized)
               {
                   If (LEqual (OSFL, 0x02))
                   {
                       Return (0x02)
                   }

                   Return (0x03)
               }

               Name (_PRW, Package (0x02)
               {
                   0x03, 
                   0x03
               })
           }

           Device (USB1)
           {
               Name (_ADR, 0x001D0001)
               Method (_S3D, 0, NotSerialized)
               {
                   If (LEqual (OSFL, 0x02))
                   {
                       Return (0x02)
                   }

                   Return (0x03)
               }

               Name (_PRW, Package (0x02)
               {
                   0x04, 
                   0x03
               })
           }

           Device (USB2)
           {
               Name (_ADR, 0x001D0002)
               Method (_S3D, 0, NotSerialized)
               {
                   If (LEqual (OSFL, 0x02))
                   {
                       Return (0x02)
                   }

                   Return (0x03)
               }

               Name (_PRW, Package (0x02)
               {
                   0x0C, 
                   0x03
               })
           }

           Device (USB3)
           {
               Name (_ADR, 0x001D0003)
               Method (_S3D, 0, NotSerialized)
               {
                   If (LEqual (OSFL, 0x02))
                   {
                       Return (0x02)
                   }

                   Return (0x03)
               }

               Name (_PRW, Package (0x02)
               {
                   0x0E, 
                   0x03
               })
           }

           Device (EHCI)
           {
               Name (_ADR, 0x001D0007)
               OperationRegion (PMCS, PCI_Config, 0x54, 0x02)
               Field (PMCS, WordAcc, NoLock, Preserve)
               {
                       ,   15, 
                   PMES,   1
               }

               OperationRegion (PWCR, PCI_Config, 0x62, 0x02)
               Field (PWCR, AnyAcc, NoLock, Preserve)
               {
                   URE2,   9
               }

               Method (_PSW, 1, NotSerialized)
               {
                   If (LEqual (Arg0, Zero))
                   {
                       Store (Zero, URE2)
                   }

                   If (LEqual (Arg0, One))
                   {
                       Store (0x01FF, URE2)
                   }
               }

               Name (_PRW, Package (0x02)
               {
                   0x0D, 
                   0x03
               })
               Method (_DSM, 4, NotSerialized)
               {
                   Store (Package (0x06)
                       {
                           "device-id", 
                           Buffer (0x04)
                           {
                               0x3A, 0x3A, 0x00, 0x00
                           }, 

                           "AAPL,clock-id", 
                           Buffer (One)
                           {
                               0x01
                           }, 

                           "device_type", 
                           Buffer (0x05)
                           {
                               "EHCI"
                           }
                       }, Local0)
                   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                   Return (Local0)
               }
           }

 

(TMR) = TIMR

PX40 = LPCB

PX43= SBUS

 

overall this is off to a good start but i wonder if u can join forces with catri site then send them the finished product to post on their site.

 

By the way i have a G31M-ES2L rev 1 also i would love to mod the F10 bios i have it with slic 2.1 allready

Link to comment
Share on other sites

when flashing change setting in QFlash "keep DMI info= disable" catri's bios flashing steps.!

 

1: USB wake from sleep dont work. i have to press pwrbtn (you changed it prety drasticaly without the right info.. ich10 id ? only EHCi needs modding )

2: Video auto detection not working due to PCI0 UID 1 not 0.

(boot with no dsdt.aml in /Extra and extract dsdt then change (pci0) UID from One to 0x00 then save dsdt and boot with it.. video auto detection works)

 

3: PTS shutdown fix not present. but seems it works but slow shutdown .. 40 secs but works!.. or add this

 

OperationRegion (PMRS, SystemIO, 0x0430, 0x13)

Field (PMRS, ByteAcc, NoLock, Preserve)

{

, 4,

SLPE, 1

}

---------------

   OperationRegion (DEBG, SystemIO, 0x80, One)
   Field (DEBG, ByteAcc, NoLock, Preserve)
   {
       DBG1,   8
   }

   OperationRegion (PMRS, SystemIO, 0x0430, 0x13)
   Field (PMRS, ByteAcc, NoLock, Preserve)
   {
           ,   4, 
       SLPE,   1
   }

   OperationRegion (RCRB, SystemMemory, 0xFED1C000, 0x4000)
   Field (RCRB, DWordAcc, Lock, Preserve)
   {
               Offset (0x3404), 
           ,   7, 
       HPTF,   1
   }

----

and on pts add

 

If (LEqual (Arg0, 0x05))

{

Store (Zero, SLPE)

Sleep (0x10)

}

 

   Method (_PTS, 1, NotSerialized)
   {
       Or (Arg0, 0xF0, Local0)
       Store (Local0, DBG1)
       OSTP ()
       If (LEqual (Arg0, One)) {}
       If (LEqual (Arg0, 0x03)) {}
       If (LEqual (Arg0, 0x05))
       {
           Store (ESMI, Local0)
           And (Local0, 0xFB, Local0)
           Store (Local0, ESMI)
           Store (0x99, SMIP)
       }

       If (LEqual (Arg0, 0x05))
       {
           Store (Zero, SLPE)
           Sleep (0x10)
       }

       If (LEqual (Arg0, 0x04))
       {
           If (LNot (PICF))
           {
               Sleep (0x64)
           }
       }
   }

also i added my Q8300 cpu _PSS only no _CST info to dsdt and i think its working.. apparently the CST info is fixed in bios.

(idle writing this at 34C thats way better than 43C with cst info in dsdt.)

   Scope (_PR)
   {
       Processor (CPU0, 0x00, 0x00000410, 0x06)
       {
           Method (_PSS, 0, NotSerialized)
           {
               Return (Package (0x04)
               {
                   Package (0x06)
                   {
                       Zero, 
                       Zero, 
                       0x10, 
                       0x10, 
                       0x4725, 
                       Zero
                   }, 

                   Package (0x06)
                   {
                       Zero, 
                       Zero, 
                       0x10, 
                       0x10, 
                       0x0720, 
                       One
                   }, 

                   Package (0x06)
                   {
                       Zero, 
                       Zero, 
                       0x10, 
                       0x10, 
                       0x461B, 
                       0x02
                   }, 

                   Package (0x06)
                   {
                       Zero, 
                       Zero, 
                       0x10, 
                       0x10, 
                       0x0616, 
                       0x03
                   }
               })
           }
       }

 

My usb section for my working dsdt (US31 and USB5 removed, changed EHC1 to EHCi and in method L0D EHC1 to EHCi.. also addresses are different A ? i have rev 1.1 board ?)

           Device (USB0)
           {
               Name (_ADR, 0x001D0000)
               Method (_S3D, 0, NotSerialized)
               {
                   If (LEqual (OSFL, 0x02))
                   {
                       Return (0x02)
                   }

                   Return (0x03)
               }

               Name (_PRW, Package (0x02)
               {
                   0x03, 
                   0x03
               })
           }

           Device (USB1)
           {
               Name (_ADR, 0x001D0001)
               Method (_S3D, 0, NotSerialized)
               {
                   If (LEqual (OSFL, 0x02))
                   {
                       Return (0x02)
                   }

                   Return (0x03)
               }

               Name (_PRW, Package (0x02)
               {
                   0x04, 
                   0x03
               })
           }

           Device (USB2)
           {
               Name (_ADR, 0x001D0002)
               Method (_S3D, 0, NotSerialized)
               {
                   If (LEqual (OSFL, 0x02))
                   {
                       Return (0x02)
                   }

                   Return (0x03)
               }

               Name (_PRW, Package (0x02)
               {
                   0x0C, 
                   0x03
               })
           }

           Device (USB3)
           {
               Name (_ADR, 0x001D0003)
               Method (_S3D, 0, NotSerialized)
               {
                   If (LEqual (OSFL, 0x02))
                   {
                       Return (0x02)
                   }

                   Return (0x03)
               }

               Name (_PRW, Package (0x02)
               {
                   0x0E, 
                   0x03
               })
           }

           Device (EHCI)
           {
               Name (_ADR, 0x001D0007)
               OperationRegion (PMCS, PCI_Config, 0x54, 0x02)
               Field (PMCS, WordAcc, NoLock, Preserve)
               {
                       ,   15, 
                   PMES,   1
               }

               OperationRegion (PWCR, PCI_Config, 0x62, 0x02)
               Field (PWCR, AnyAcc, NoLock, Preserve)
               {
                   URE2,   9
               }

               Method (_PSW, 1, NotSerialized)
               {
                   If (LEqual (Arg0, Zero))
                   {
                       Store (Zero, URE2)
                   }

                   If (LEqual (Arg0, One))
                   {
                       Store (0x01FF, URE2)
                   }
               }

               Name (_PRW, Package (0x02)
               {
                   0x0D, 
                   0x03
               })
               Method (_DSM, 4, NotSerialized)
               {
                   Store (Package (0x06)
                       {
                           "device-id", 
                           Buffer (0x04)
                           {
                               0x3A, 0x3A, 0x00, 0x00
                           }, 

                           "AAPL,clock-id", 
                           Buffer (One)
                           {
                               0x01
                           }, 

                           "device_type", 
                           Buffer (0x05)
                           {
                               "EHCI"
                           }
                       }, Local0)
                   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                   Return (Local0)
               }
           }

 

(TMR) = TIMR

PX40 = LPCB

PX43= SBUS

 

overall this is off to a good start but i wonder if u can join forces with catri site then send them the finished product to post on their site.

 

By the way i have a G31M-ES2L rev 1 also i would love to mod the F10 bios i have it with slic 2.1 allready

 

Well.... I was just tinkering around with the BIOS file, to see if I could remove the need for a DSDT.aml. Don't really know too much about the best way to optimize / edit it... If anyone has a DSDT for it, which is ACPI compatible (for windows), I can insert it into the BIOS.

Link to comment
Share on other sites

those mods should work but best is to ask catri site for guidance as he has done speedstep and acpi compliant.

main worry i have is usb in windows missing some usbs?

another thing is less neeed to mod the dsdt.. so it installs without dsdt need.. but is complimented by dsdt. and keep windows running. i actualy like this so far.. cause i tried catris on a ep45t-ud3l and had minor issues in the sata ide for dvdr.. wasnt burning. might have been dmi issue tho.

Link to comment
Share on other sites

  • 4 weeks later...
 Share

×
×
  • Create New...