Jump to content

Ozmosis


xpamamadeus
6,231 posts in this topic

Recommended Posts

Hi xpamamamdeus,

 

I followed your guide exactly, but as you can see dsdt2bios fails with

 

"File has .ROM section. It can't be patched."

 

However I can tell you additionally, that loading DSDT.aml from EFI partition is not working as it should.

There are some parts of the existing DSDT merged with the patched DSDT, and that's why my audio still doesn't work.

I remember we discussed DSDT patching at MDL so next step is to try it manually.

What board/bios u use for this?

Link to comment
Share on other sites

I tried to make a DSDT but there is no GFX0, PEGP with any reference to aty,framebuffer by using Maciasl and no one has done a DSDT for my board H87M-HD3 bios version F8.

You need to edit your SSDT there are PEGP. and to get HDMI and DVI work you need Connectors patch lock here for example http://www.insanelymac.com/forum/topic/249642-editing-custom-personalities-for-ati-radeon-hd45xxx/ or check this Binary patch 

sudo perl -pi -e 's|\x00\x04\x00\x00\x04\x03\x00\x00\x00\x01\x01\x01\x12\x04\x04\x01\x00\x04\x00\x00\x04\x03\x00\x00\x00\x01\x02\x01\x22\x05\x05\x02\x04\x00\x00\x00\x14\x02\x00\x00\x00\x01\x03\x00\x00\x00\x06\x06\x00\x08\x00\x00\x04\x02\x00\x00\x00\x01\x04\x00\x11\x02\x01\x03|\x00\x04\x00\x00\x04\x03\x00\x00\x00\x01\x01\x01\x12\x04\x04\x01\x00\x04\x00\x00\x04\x03\x00\x00\x00\x01\x02\x01\x22\x05\x05\x02\x00\x08\x00\x00\x04\x02\x00\x00\x00\x01\x00\x00\x11\x04\x02\x03\x00\x02\x00\x00\x04\x02\x00\x00\x00\x01\x00\x00\x10\x00\x03\x06|g' /System/Library/Extensions/AMD7000Controller.kext/Contents/MacOS/AMD7000Controller 

example for Framebuffer.

Device (GFX0)
                {
                    Name (_ADR, Zero)  // _ADR: Address
                    Name (_SUN, One)  // _SUN: Slot User Number
                    Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
                    {
                        Return (Package (0x02)
                        {
                            0x09, 
                            0x04
                        })
                    }

                    Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
                    {
                        Store (Package (0x48)
                            {
                                "@0,AAPL,boot-display", 
                                Buffer (0x04)
                                {
                                     0x01, 0x00, 0x00, 0x00
                                }, 

                                "@0,compatible", 
                                Buffer (0x0D)
                                {
                                    "ATY,Futomaki"
                                }, 

                                "@0,device_type", 
                                Buffer (0x08)
                                {
                                    "display"
                                }, 

                                "@0,display-type", 
                                Buffer (0x04)
                                {
                                    "LCD"
                                }, 

                                "@0,name", 
                                Buffer (0x0D)
                                {
                                    "ATY,Futomaki"
                                }, 

                                "@0,VRAM,memsize", 
                                Buffer (0x08)
                                {
                                     0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80
                                }, 

                                "@1,compatible", 
                                Buffer (0x0D)
                                {
                                    "ATY,Futomaki"
                                }, 

                                "@1,device_type", 
                                Buffer (0x08)
                                {
                                    "display"
                                }, 

                                "@1,display-type", 
                                Buffer (0x05)
                                {
                                    "NONE"
                                }, 

                                "@1,name", 
                                Buffer (0x0D)
                                {
                                    "ATY,Futomaki"
                                }, 

                                "@1,VRAM,memsize", 
                                Buffer (0x08)
                                {
                                     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80
                                }, 

                                "@2,compatible", 
                                Buffer (0x0D)
                                {
                                    "ATY,Futomaki"
                                }, 

                                "@2,device_type", 
                                Buffer (0x08)
                                {
                                    "display"
                                }, 

                                "@2,display-type", 
                                Buffer (0x05)
                                {
                                    "NONE"
                                }, 

                                "@2,name", 
                                Buffer (0x0D)
                                {
                                    "ATY,Futomaki"
                                }, 

                                "@2,VRAM,memsize", 
                                Buffer (0x08)
                                {
                                     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80
                                }, 

                                "@3,compatible", 
                                Buffer (0x0D)
                                {
                                    "ATY,Futomaki"
                                }, 

                                "@3,device_type", 
                                Buffer (0x08)
                                {
                                    "display"
                                }, 

                                "@3,display-type", 
                                Buffer (0x05)
                                {
                                    "NONE"
                                }, 

                                "@3,name", 
                                Buffer (0x19)
                                {
                                    "ATY,Futomaki"
                                }, 

                                "@3,VRAM,memsize", 
                                Buffer (0x08)
                                {
                                     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80
                                }, 

                                "ATY,EFIVersion", 
                                Buffer (0x09)
                                {
                                    /* 0000 */   0x30, 0x31, 0x2E, 0x30, 0x30, 0x2E, 0x36, 0x38,
                                    /* 0008 */   0x37
                                }, 

                                "ATY,EFICompileDate", 
                                Buffer (0x0B)
                                {
                                    /* 0000 */   0x4F, 0x63, 0x74, 0x20, 0x32, 0x33, 0x20, 0x32,
                                    /* 0008 */   0x30, 0x31, 0x33
                                }, 

                                "ATY,EFIDispConfig", 
                                Buffer (0x08)
                                {
                                     0x0F, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
                                }, 

                                "ATY,EFIDriverType", 
                                Buffer (One)
                                {
                                     0x02
                                }, 

                                "ATY,EFIEnabledMode", 
                                Buffer (One)
                                {
                                     0x02
                                }, 

                                "ATY,EFIHWInitStatus", 
                                Buffer (0x08)
                                {
                                     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
                                }, 

                                "ATY,EFIOrientation", 
                                Buffer (0x02)
                                {
                                     0x00, 0x02
                                }, 

                                "ATY,EFIVersionB", 
                                Buffer (0x0F)
                                {
                                    /* 0000 */   0x31, 0x31, 0x33, 0x2D, 0x43, 0x34, 0x30, 0x31,
                                    /* 0008 */   0x32, 0x50, 0x42, 0x2D, 0x30, 0x30, 0x44
                                }, 

                                "ATY,EFIVersionE", 
                                Buffer (0x0E)
                                {
                                    /* 0000 */   0x31, 0x31, 0x33, 0x2D, 0x43, 0x34, 0x30, 0x31,
                                    /* 0008 */   0x32, 0x46, 0x2D, 0x36, 0x38, 0x37
                                }, 

                                "ATY,Card#", 
                                Buffer (0x0E)
                                {
                                    /* 0000 */   0x31, 0x30, 0x39, 0x2D, 0x43, 0x34, 0x30, 0x31,
                                    /* 0008 */   0x32, 0x50, 0x41, 0x2D, 0x30, 0x30
                                }, 

                                "device-id", 
                                Buffer (0x04)
                                {
                                     0x10, 0x68, 0x00, 0x00
                                }, 

                                "ATY,DeviceID", 
                                Buffer (0x02)
                                {
                                     0x10, 0x68
                                }, 

                                "ATY,Rom#", 
                                Buffer (0x0F)
                                {
                                    /* 0000 */   0x31, 0x31, 0x33, 0x2D, 0x41, 0x43, 0x39, 0x32,
                                    /* 0008 */   0x38, 0x30, 0x30, 0x2D, 0x31, 0x30, 0x32
                                }, 

                                "model", 
                                Buffer (0x13)
                                {
                                    "AMD Radeon R9 280X"
                                }, 

                                "hda-gfx", 
                                Buffer (0x0A)
                                {
                                    "onboard-2"
                                }
                            }, Local0)
                        DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                        Return (Local0)
                    }
                }

                Device (HDAU)
                {
                    Name (_ADR, One)  // _ADR: Address
                    Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
                    {
                        Store (Package (0x02)
                            {
                                "hda-gfx", 
                                Buffer (0x0A)
                                {
                                    "onboard-2"
                                }
                            }, Local0)
                        DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                        Return (Local0)
                    }
                }
            } 

good luck

Link to comment
Share on other sites

"File has .ROM section. It can't be patched."

 

My Z68 has the same .ROM section. FredWst doesn't know how to handle this so the warning is to prevent getting a corrupt DSDT (happened here a couple of times but I have a USB programmer to reflash).

 

Once you have a working DSDT you'll have to manually add it to the BIOS by overwriting the existing one. It will have to be the same size as the original (padding is allowed). So you might have to remove a device or two to get the size down.

  • Like 1
Link to comment
Share on other sites

You need to edit your SSDT there are PEGP. and to get HDMI and DVI work you need Connectors patch lock here for example http://www.insanelymac.com/forum/topic/249642-editing-custom-personalities-for-ati-radeon-hd45xxx/ or check this Binary patch 

sudo perl -pi -e 's|\x00\x04\x00\x00\x04\x03\x00\x00\x00\x01\x01\x01\x12\x04\x04\x01\x00\x04\x00\x00\x04\x03\x00\x00\x00\x01\x02\x01\x22\x05\x05\x02\x04\x00\x00\x00\x14\x02\x00\x00\x00\x01\x03\x00\x00\x00\x06\x06\x00\x08\x00\x00\x04\x02\x00\x00\x00\x01\x04\x00\x11\x02\x01\x03|\x00\x04\x00\x00\x04\x03\x00\x00\x00\x01\x01\x01\x12\x04\x04\x01\x00\x04\x00\x00\x04\x03\x00\x00\x00\x01\x02\x01\x22\x05\x05\x02\x00\x08\x00\x00\x04\x02\x00\x00\x00\x01\x00\x00\x11\x04\x02\x03\x00\x02\x00\x00\x04\x02\x00\x00\x00\x01\x00\x00\x10\x00\x03\x06|g' /System/Library/Extensions/AMD7000Controller.kext/Contents/MacOS/AMD7000Controller 

example for Framebuffer.

Device (GFX0)
                {
                    Name (_ADR, Zero)  // _ADR: Address
                    Name (_SUN, One)  // _SUN: Slot User Number
                    Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
                    {
                        Return (Package (0x02)
                        {
                            0x09, 
                            0x04
                        })
                    }

                    Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
                    {
                        Store (Package (0x48)
                            {
                                "@0,AAPL,boot-display", 
                                Buffer (0x04)
                                {
                                     0x01, 0x00, 0x00, 0x00
                                }, 

                                "@0,compatible", 
                                Buffer (0x0D)
                                {
                                    "ATY,Futomaki"
                                }, 

                                "@0,device_type", 
                                Buffer (0x08)
                                {
                                    "display"
                                }, 

                                "@0,display-type", 
                                Buffer (0x04)
                                {
                                    "LCD"
                                }, 

                                "@0,name", 
                                Buffer (0x0D)
                                {
                                    "ATY,Futomaki"
                                }, 

                                "@0,VRAM,memsize", 
                                Buffer (0x08)
                                {
                                     0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80
                                }, 

                                "@1,compatible", 
                                Buffer (0x0D)
                                {
                                    "ATY,Futomaki"
                                }, 

                                "@1,device_type", 
                                Buffer (0x08)
                                {
                                    "display"
                                }, 

                                "@1,display-type", 
                                Buffer (0x05)
                                {
                                    "NONE"
                                }, 

                                "@1,name", 
                                Buffer (0x0D)
                                {
                                    "ATY,Futomaki"
                                }, 

                                "@1,VRAM,memsize", 
                                Buffer (0x08)
                                {
                                     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80
                                }, 

                                "@2,compatible", 
                                Buffer (0x0D)
                                {
                                    "ATY,Futomaki"
                                }, 

                                "@2,device_type", 
                                Buffer (0x08)
                                {
                                    "display"
                                }, 

                                "@2,display-type", 
                                Buffer (0x05)
                                {
                                    "NONE"
                                }, 

                                "@2,name", 
                                Buffer (0x0D)
                                {
                                    "ATY,Futomaki"
                                }, 

                                "@2,VRAM,memsize", 
                                Buffer (0x08)
                                {
                                     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80
                                }, 

                                "@3,compatible", 
                                Buffer (0x0D)
                                {
                                    "ATY,Futomaki"
                                }, 

                                "@3,device_type", 
                                Buffer (0x08)
                                {
                                    "display"
                                }, 

                                "@3,display-type", 
                                Buffer (0x05)
                                {
                                    "NONE"
                                }, 

                                "@3,name", 
                                Buffer (0x19)
                                {
                                    "ATY,Futomaki"
                                }, 

                                "@3,VRAM,memsize", 
                                Buffer (0x08)
                                {
                                     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80
                                }, 

                                "ATY,EFIVersion", 
                                Buffer (0x09)
                                {
                                    /* 0000 */   0x30, 0x31, 0x2E, 0x30, 0x30, 0x2E, 0x36, 0x38,
                                    /* 0008 */   0x37
                                }, 

                                "ATY,EFICompileDate", 
                                Buffer (0x0B)
                                {
                                    /* 0000 */   0x4F, 0x63, 0x74, 0x20, 0x32, 0x33, 0x20, 0x32,
                                    /* 0008 */   0x30, 0x31, 0x33
                                }, 

                                "ATY,EFIDispConfig", 
                                Buffer (0x08)
                                {
                                     0x0F, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
                                }, 

                                "ATY,EFIDriverType", 
                                Buffer (One)
                                {
                                     0x02
                                }, 

                                "ATY,EFIEnabledMode", 
                                Buffer (One)
                                {
                                     0x02
                                }, 

                                "ATY,EFIHWInitStatus", 
                                Buffer (0x08)
                                {
                                     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
                                }, 

                                "ATY,EFIOrientation", 
                                Buffer (0x02)
                                {
                                     0x00, 0x02
                                }, 

                                "ATY,EFIVersionB", 
                                Buffer (0x0F)
                                {
                                    /* 0000 */   0x31, 0x31, 0x33, 0x2D, 0x43, 0x34, 0x30, 0x31,
                                    /* 0008 */   0x32, 0x50, 0x42, 0x2D, 0x30, 0x30, 0x44
                                }, 

                                "ATY,EFIVersionE", 
                                Buffer (0x0E)
                                {
                                    /* 0000 */   0x31, 0x31, 0x33, 0x2D, 0x43, 0x34, 0x30, 0x31,
                                    /* 0008 */   0x32, 0x46, 0x2D, 0x36, 0x38, 0x37
                                }, 

                                "ATY,Card#", 
                                Buffer (0x0E)
                                {
                                    /* 0000 */   0x31, 0x30, 0x39, 0x2D, 0x43, 0x34, 0x30, 0x31,
                                    /* 0008 */   0x32, 0x50, 0x41, 0x2D, 0x30, 0x30
                                }, 

                                "device-id", 
                                Buffer (0x04)
                                {
                                     0x10, 0x68, 0x00, 0x00
                                }, 

                                "ATY,DeviceID", 
                                Buffer (0x02)
                                {
                                     0x10, 0x68
                                }, 

                                "ATY,Rom#", 
                                Buffer (0x0F)
                                {
                                    /* 0000 */   0x31, 0x31, 0x33, 0x2D, 0x41, 0x43, 0x39, 0x32,
                                    /* 0008 */   0x38, 0x30, 0x30, 0x2D, 0x31, 0x30, 0x32
                                }, 

                                "model", 
                                Buffer (0x13)
                                {
                                    "AMD Radeon R9 280X"
                                }, 

                                "hda-gfx", 
                                Buffer (0x0A)
                                {
                                    "onboard-2"
                                }
                            }, Local0)
                        DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                        Return (Local0)
                    }
                }

                Device (HDAU)
                {
                    Name (_ADR, One)  // _ADR: Address
                    Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
                    {
                        Store (Package (0x02)
                            {
                                "hda-gfx", 
                                Buffer (0x0A)
                                {
                                    "onboard-2"
                                }
                            }, Local0)
                        DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                        Return (Local0)
                    }
                }
            } 

good luck

Maybe connector perl patch to help him, basically he needs to disable Ozmosis ATI injector(that is what he does with Clover) and that, as I said is not possible at this moment.

Link to comment
Share on other sites

What board/bios u use for this?

 

P8Z77-V LX UEFI v2403 (latest)

My Z68 has the same .ROM section. FredWst doesn't know how to handle this so the warning is to prevent getting a corrupt DSDT (happened here a couple of times but I have a USB programmer to reflash).

 

Once you have a working DSDT you'll have to manually add it to the BIOS by overwriting the existing one. It will have to be the same size as the original (padding is allowed). So you might have to remove a device or two to get the size down.

 

yeah, me too, I replaced the DSDT section with patched one and zeroed out the rest of the unused, original range, but at reboot I got a blackscreen,

could only restore my bios using spipgm ;)

Link to comment
Share on other sites

That happened here the first time too. Think I deleted/renamed something I shouldn't have. Since then I just apply the bare minimum patches and it's been good.

 

thanks, you're right but I guess that's not ideal, I asked in the QUO section how to change the acpi loader mode ;)

for loading an untouched DSDT.aml with windows and a modified, optimized one with OS X.

Link to comment
Share on other sites

Using Method OSDW you can make your patches conditional, so they only load under OS X. This is what Apple use and it's also in the Ozmosis DSDT. This way you can keep the Windows side largely untouched.

 

Here's a snippet of my DSDT patch so you can see how it works.

 

 

 

# ********************************************************************************
#   Add method OSDW
# ********************************************************************************
into method label OSDW remove_entry;
into definitionblock code_regex . insert
begin
    Method (OSDW, 0, NotSerialized)\n
    {\n
        If (LEqual (OSYS, 0x2710))\n
        {\n
            Return (One)\n
        }\n
        Else\n
        {\n
            Return (Zero)\n
        }\n
    }
end;
# ********************************************************************************
#   Add Darwin to OS list
# ********************************************************************************
into method label _INI replace_content
begin
            Store (0x07D0, OSYS)\n
            If (CondRefOf (_OSI, Local0))\n
            {\n
                If (_OSI ("Darwin"))\n
                {\n
                    Store (0x2710, OSYS)\n
                }\n
                If (_OSI ("Windows 2001"))\n
                {\n
                    Store (0x07D1, OSYS)\n
                }\n
                If (_OSI ("Windows 2001 SP1"))\n
                {\n
                    Store (0x07D1, OSYS)\n
                }\n
                If (_OSI ("Windows 2001 SP2"))\n
                {\n
                    Store (0x07D2, OSYS)\n
                }\n
                If (_OSI ("Windows 2001.1"))\n
                {\n
                    Store (0x07D3, OSYS)\n
                }\n
                If (_OSI ("Windows 2006"))\n
                {\n
                    Store (0x07D6, OSYS)\n
                }\n
                If (_OSI ("Windows 2009"))\n
                {\n
                    Store (0x07D9, OSYS)\n
                }\n
            }\n
end;
# ********************************************************************************
#   Inject HDEF device (Layout ID 1)
# ********************************************************************************
into method label _DSM parent_adr 0x001B0000 remove_entry;
into device name_adr 0x001B0000 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
    Store (Package (0x04)\n
        {\n
            "layout-id",\n
            Buffer (0x04)\n
            {\n
                0x01, 0x00, 0x00, 0x00\n
            },\n
            "PinConfigurations",\n
            Buffer (Zero) {}\n
        }, Local0)\n
    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
    If (OSDW ())\n
	 {\n
	   Return (Local0)\n
	 }\n
	 Else\n
	 {\n
	   Return (Zero)\n
	 }\n
}
end;

 

 

 

You just have to replace the "Return (Local0)" that's at the end of most of your patches with the "If (OSDW ())" section.

  • Like 1
Link to comment
Share on other sites

Using Method OSDW you can make your patches conditional, so they only load under OS X. This is what Apple use and it's also in the Ozmosis DSDT. This way you can keep the Windows side largely untouched.

 

Here's a snippet of my DSDT patch so you can see how it works.

 

 

 

# ********************************************************************************
#   Add method OSDW
# ********************************************************************************
into method label OSDW remove_entry;
into definitionblock code_regex . insert
begin
    Method (OSDW, 0, NotSerialized)\n
    {\n
        If (LEqual (OSYS, 0x2710))\n
        {\n
            Return (One)\n
        }\n
        Else\n
        {\n
            Return (Zero)\n
        }\n
    }
end;
# ********************************************************************************
#   Add Darwin to OS list
# ********************************************************************************
into method label _INI replace_content
begin
            Store (0x07D0, OSYS)\n
            If (CondRefOf (_OSI, Local0))\n
            {\n
                If (_OSI ("Darwin"))\n
                {\n
                    Store (0x2710, OSYS)\n
                }\n
                If (_OSI ("Windows 2001"))\n
                {\n
                    Store (0x07D1, OSYS)\n
                }\n
                If (_OSI ("Windows 2001 SP1"))\n
                {\n
                    Store (0x07D1, OSYS)\n
                }\n
                If (_OSI ("Windows 2001 SP2"))\n
                {\n
                    Store (0x07D2, OSYS)\n
                }\n
                If (_OSI ("Windows 2001.1"))\n
                {\n
                    Store (0x07D3, OSYS)\n
                }\n
                If (_OSI ("Windows 2006"))\n
                {\n
                    Store (0x07D6, OSYS)\n
                }\n
                If (_OSI ("Windows 2009"))\n
                {\n
                    Store (0x07D9, OSYS)\n
                }\n
            }\n
end;
# ********************************************************************************
#   Inject HDEF device (Layout ID 1)
# ********************************************************************************
into method label _DSM parent_adr 0x001B0000 remove_entry;
into device name_adr 0x001B0000 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
    Store (Package (0x04)\n
        {\n
            "layout-id",\n
            Buffer (0x04)\n
            {\n
                0x01, 0x00, 0x00, 0x00\n
            },\n
            "PinConfigurations",\n
            Buffer (Zero) {}\n
        }, Local0)\n
    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
    If (OSDW ())\n
	 {\n
	   Return (Local0)\n
	 }\n
	 Else\n
	 {\n
	   Return (Zero)\n
	 }\n
}
end;

 

 

 

You just have to replace the "Return (Local0)" that's at the end of most of your patches with the "If (OSDW ())" section.

Thanks, very interesting, I wasn't aware of that, and how did you solve ssdt patching or did you leave it untouched?

Link to comment
Share on other sites

hi guys. someone here has problem in installing the new nvidia web driver?

i just downloaded the webdriver-334.01.02f02.pkg (for 10.9.4) and it gives me always error at the end of the installation.

i uninstalled the old driver first, then i installed the new, but it gives me error

gtx 780 ti, imac14,2 as system definition

Link to comment
Share on other sites

hi guys. someone here has problem in installing the new nvidia web driver?

i just downloaded the webdriver-334.01.02f02.pkg (for 10.9.4) and it gives me always error at the end of the installation.

i uninstalled the old driver first, then i installed the new, but it gives me error

gtx 780 ti, imac14,2 as system definition

I dont think it's ozmosis related problem

Link to comment
Share on other sites

I always get that error too. The drivers are installed, it's the nvidia menu that fails. You can just add nvda_drv=1 to your boot-args in nvram to enable the new drivers.

i had never that error with the previous installation, even using ozmosis with imac14,2

i have nvda_drv=1 in my ozmosisdefault. it works with the previous version, but no with this version of web driver.

so i have a no working gtx780 ti for now

 

edit: solved using fakesmc by slice instead of smcemulator

Link to comment
Share on other sites

I need a fix for iMessage, therefor I set

 

4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:BaseBoardSerial    C02140302CAFEBEEF (17 digits)

and

4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:ROM  %10%caHfebe%ef  (hw mac adress, but which format is correct, it looks wrong?)

 

also I saw

4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:MLB is missing

 

how are the values for BaseBoardSerial, Mac and MLB generated correctly for iMac13,2?

 

best regards

Link to comment
Share on other sites

sudo nvram 4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14:MLB=

sudo nvram 4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14:ROM=

sudo nvram 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:BaseBoardSerial=17digits

 

Reboot. It will work.

  • Like 1
Link to comment
Share on other sites

sudo nvram 4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14:MLB=

sudo nvram 4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14:ROM=

sudo nvram 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:BaseBoardSerial=17digits

 

Reboot. It will work.

thanks a lot, looks good but maybe it's a bug on yosemite, the log shows:

06.07.14 11:39:27,239 com.apple.xpc.launchd[1]: (com.apple.imfoundation.IMRemoteURLConnectionAgent) The _DirtyJetsamMemoryLimit key is not available on this platform.

it's just not logging in, anyway bdmesg shows:

28:042 00:000 Setting RS+BS 4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14:MLB 17 bytes - Success

post-217399-0-77778600-1404643641_thumb.png

 

oh, on mavericks 10.9.4 the same issue I guess

Link to comment
Share on other sites

Does anybody know how to use the nvram app, included in HermitShellX64, from the shell?

I would like to think I could write nvram variables with it but I can't figure out how.

 

I've tried using it like I would from OS X.

nvram 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:ProductName=iMac12,2
But I don't see any difference when running dmpstore.

 

Otherwise, can Ozmosis read the OzmosisDefaults file from disk? Maybe load from some location inside ESP\EFI\Quo directory? If yes, does it need to be a .ffs file or can it just be a plain text xml file?

Link to comment
Share on other sites

Does anybody know how to use the nvram app, included in HermitShellX64, from the shell?

I would like to think I could write nvram variables with it but I can't figure out how.

 

I've tried using it like I would from OS X.

nvram 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:ProductName=iMac12,2
But I don't see any difference when running dmpstore.

 

Otherwise, can Ozmosis read the OzmosisDefaults file from disk? Maybe load from some location inside ESP\EFI\Quo directory? If yes, does it need to be a .ffs file or can it just be a plain text xml file?

 

 

Hi blackosx,

 

tuxuser provided a solution using the setvar command from uefi shell.

Link to comment
Share on other sites

Thanks LightServer. I'd missed that post.  :)

I'll try using setvar

 

EDIT:

hermitShellX64.efi does not contain the setvar command.
?             - Displays the EFI Shell command list or verbose command help
alias         - Displays, creates, or deletes EFI Shell aliases
attrib        - Displays or changes the attributes of files or directories
bcfg          - Manages the boot and driver options that are stored in NVRAM.
bdmesg        - Displays the booter message log.
cd            - Displays or changes the current directory
cls           - Clears standard output and optionally changes background color
comp          - Compares the contents of two files
connect       - Connects one or more EFI drivers to a device
cp            - Copies one or more files or directories to another location
date          - Displays or changes the current system date
dblk          - Displays one or more blocks from a block device
devices       - Displays the list of devices managed by EFI drivers
devtree       - Displays the EFI Driver Model compliant device tree
dh            - Displays EFI handle information
disconnect    - Disconnects one or more EFI drivers from a device
diskpart      - Start GPT disk partitioning program.
dmem          - Displays the contents of memory
dmpstore      - Displays all EFI NVRAM variables
drivers       - Displays the EFI driver list
drvcfg        - Invokes the Driver Configuration Protocol
drvdiag       - Invokes the Driver Diagnostics Protocol
echo          - Controls batch file command echoing or displays a message
edit          - Full screen editor for ASCII or UNICODE files
eficompress   - Compress a file
efidecompress - Decompress a file
err           - Displays or changes the error level
exit          - Exits the EFI Shell environment
for           - Executes commands for each item in a set of items
goto          - Forces batch file execution to jump to specified location
gptsync       - GPT to MBR partition table synchronisation tool.
guid          - Displays all registered EFI GUIDs
help          - Displays the EFI Shell command list or verbose command help
hexedit       - Full screen hex editor
if            - Executes commands in specified conditions
ifconfig      - Modify the default IP address of UEFI network stack
ipconfig      - Displays or modifies the current IP configuration
load          - Loads and optionally connects one or more EFI drivers
loadpcirom    - Loads a PCI Option ROM
ls            - Displays a list of files and subdirectories in a directory
map           - Displays or defines mappings
mem           - Displays the contents of memory
memmap        - Displays the memory map
mkdir         - Creates one or more directories
mm            - Displays or modifies MEM/MMIO/IO/PCI/PCIE address space
mode          - Displays or changes the console output device mode
mount         - Mounts a file system on a block device
mv            - Moves one or more files or directories to another location
nvram         - Manipulates the booter NVRam settings.
openinfo      - Displays the protocols and agents associated with a handle
pause         - Prints a message and waits for keyboard input
pci           - Displays PCI device list or PCI function configuration space
ping          - Ping a target machine with UEFI network stack
reconnect     - Reconnects one or more EFI drivers to a device
reset         - Resets the system
rm            - Deletes one or more files or directories
sermode       - Sets serial port attributes
set           - Displays or modifies EFI Shell environment variables
shift         - Shifts batch file input parameter positions
smbiosview    - Displays SMBIOS information
stall         - Stalls the processor for the specified number of microseconds
telnetmgmt    - Change terminal type
time          - Displays or changes the current system time
timezone      - Displays or sets time zone information
touch         - Updates filename timestamp with current system date and time
type          - Displays file contents
unload        - Unloads a EFI driver
ver           - Displays EFI Firmware version information
vol           - Displays or changes a file system volume label
Maybe I need to find, or build, a different version of shell app?
 
Link to comment
Share on other sites

 

Thanks LightServer. I'd missed that post.  :)

I'll try using setvar

 

EDIT:

hermitShellX64.efi does not contain the setvar command.
?             - Displays the EFI Shell command list or verbose command help
alias         - Displays, creates, or deletes EFI Shell aliases
attrib        - Displays or changes the attributes of files or directories
bcfg          - Manages the boot and driver options that are stored in NVRAM.
bdmesg        - Displays the booter message log.
cd            - Displays or changes the current directory
cls           - Clears standard output and optionally changes background color
comp          - Compares the contents of two files
connect       - Connects one or more EFI drivers to a device
cp            - Copies one or more files or directories to another location
date          - Displays or changes the current system date
dblk          - Displays one or more blocks from a block device
devices       - Displays the list of devices managed by EFI drivers
devtree       - Displays the EFI Driver Model compliant device tree
dh            - Displays EFI handle information
disconnect    - Disconnects one or more EFI drivers from a device
diskpart      - Start GPT disk partitioning program.
dmem          - Displays the contents of memory
dmpstore      - Displays all EFI NVRAM variables
drivers       - Displays the EFI driver list
drvcfg        - Invokes the Driver Configuration Protocol
drvdiag       - Invokes the Driver Diagnostics Protocol
echo          - Controls batch file command echoing or displays a message
edit          - Full screen editor for ASCII or UNICODE files
eficompress   - Compress a file
efidecompress - Decompress a file
err           - Displays or changes the error level
exit          - Exits the EFI Shell environment
for           - Executes commands for each item in a set of items
goto          - Forces batch file execution to jump to specified location
gptsync       - GPT to MBR partition table synchronisation tool.
guid          - Displays all registered EFI GUIDs
help          - Displays the EFI Shell command list or verbose command help
hexedit       - Full screen hex editor
if            - Executes commands in specified conditions
ifconfig      - Modify the default IP address of UEFI network stack
ipconfig      - Displays or modifies the current IP configuration
load          - Loads and optionally connects one or more EFI drivers
loadpcirom    - Loads a PCI Option ROM
ls            - Displays a list of files and subdirectories in a directory
map           - Displays or defines mappings
mem           - Displays the contents of memory
memmap        - Displays the memory map
mkdir         - Creates one or more directories
mm            - Displays or modifies MEM/MMIO/IO/PCI/PCIE address space
mode          - Displays or changes the console output device mode
mount         - Mounts a file system on a block device
mv            - Moves one or more files or directories to another location
nvram         - Manipulates the booter NVRam settings.
openinfo      - Displays the protocols and agents associated with a handle
pause         - Prints a message and waits for keyboard input
pci           - Displays PCI device list or PCI function configuration space
ping          - Ping a target machine with UEFI network stack
reconnect     - Reconnects one or more EFI drivers to a device
reset         - Resets the system
rm            - Deletes one or more files or directories
sermode       - Sets serial port attributes
set           - Displays or modifies EFI Shell environment variables
shift         - Shifts batch file input parameter positions
smbiosview    - Displays SMBIOS information
stall         - Stalls the processor for the specified number of microseconds
telnetmgmt    - Change terminal type
time          - Displays or changes the current system time
timezone      - Displays or sets time zone information
touch         - Updates filename timestamp with current system date and time
type          - Displays file contents
unload        - Unloads a EFI driver
ver           - Displays EFI Firmware version information
vol           - Displays or changes a file system volume label
Maybe I need to find, or build, a different version of shell app?

 

 

HermitShell is based on edkshell, which lacks the command.

 

Setvar is available in the efishell which is part of edk2.

Link to comment
Share on other sites

you can place a Defaults.plist file in /EFI/Quo and it will take precedence of any found in firmware

Wonderful. Thank you.

Let me see if I can get it working.

Setvar is available in the efishell which is part of edk2.

Okay. Thanks again.

Link to comment
Share on other sites

You could use a shell script to load Ozmosis and HFSPlus and then start whatever app you like. e.g. rEFIt or boot.efi.

Or recompile dbounce.c from rEFIt to make it load Ozmosis and Hfsplus and then start the app you like. You can add dbounce.efi as a boot option via bcfg and choose it from F12 menu.

Then you have what you are looking for ;)

I have tried to see if I can recompile dbounce.c but have failed so far because my knowledge of how to is not there yet. I did set myself up with UDK2014 and Windows Visual Studio 2008 and try it that way but I found I was missing a .inf file, and also some headers which I found in gnu-efi. I had a go at creating a .inf file but think maybe I need to forget about that and try to compile it in Linux using gnu-efi and the dbounce.mak file.

 

Instead I have looked at the EFI shell script route combined with rEFIt and found the only stumbling block was not being able to set the nvram variables from my platform from efi shell.

 

Loading Defaults.plist from /EFI/Quo didn't seem to work so for now I booted in to OS X using clover, manually set the nvram vars then rebooted. From the EFI shell I then loaded Hfsplus, Ozmosis, rEFIt and finally booted in to Yosemite DP2. So at last I made it. Thanks for your suggestions. :)

 

I will play more with an efishell from edkII as mentioned by bs0d so I can get to set the nvram vars using setvar.

  • Like 1
Link to comment
Share on other sites

thanks a lot, looks good but maybe it's a bug on yosemite, the log shows:

06.07.14 11:39:27,239 com.apple.xpc.launchd[1]: (com.apple.imfoundation.IMRemoteURLConnectionAgent) The _DirtyJetsamMemoryLimit key is not available on this platform.

it's just not logging in, anyway bdmesg shows:

28:042 00:000 Setting RS+BS 4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14:MLB 17 bytes - Success

attachicon.gifBildschirmfoto 2014-07-06 um 12.42.41.png

 

oh, on mavericks 10.9.4 the same issue I guess

what show ROM after restart?

Link to comment
Share on other sites

×
×
  • Create New...