Jump to content

DSDT editor and patcher


oldnapalm
 Share

999 posts in this topic

Recommended Posts

Hi all again oldnapalm tested the dsdt edit you did for me know i have just got 4 .kext files to run on whoot whoot but i have a small error.

 

Sep 23 00:25:03 localhost kernel[0]: AppleLMUController::getSensorType: SMC result1 = Error 0x00000084

Sep 23 00:25:03 localhost kernel[0]: AppleLMUController: SMCResult1 error. Result = 132.

Sep 23 00:25:03 localhost kernel[0]: AppleLMUController: InterruptCallback getSensorReading error

Sep 23 00:25:03 localhost kernel[0]: VoodooHDADevice[0x47433000]::init

Sep 23 00:25:03 localhost kernel[0]: AppleLMUController: SMCResult1 error. Result = 132.

Sep 23 00:25:03 localhost kernel[0]: AppleLMUController: sensorTask error

Sep 23 00:25:03 localhost kernel[0]: AppleLMUController: SMCResult1 error. Result = 132.

Sep 23 00:25:03 localhost kernel[0]: AppleLMUController: sensorTask error

Sep 23 00:25:03 localhost kernel[0]: AppleLMUController: SMCResult1 error. Result = 132.

Sep 23 00:25:03 localhost kernel[0]: AppleLMUController: sensorTask error

Sep 23 00:25:03 localhost kernel[0]: AppleLMUController: SMCResult1 error. Result = 132.

Sep 23 00:25:03 localhost kernel[0]: AppleLMUController: sensorTask error

 

Other then that my Hackingtosh is fast then ever used to just get 115 Xbench marks now i get 141 Xbenchmarks and the GFX is spot on as well.

 

Thanks for your help. Just hope i can rid of this last Error.

 

After that its Make a New BootCD with all the Stuff required.

 

All credit will go to you on the DSDT front though.

Link to comment
Share on other sites

Is there any benefit in injecting onboard ethernet info in the dsdt or is it just to further get rid of third party kexts? ;)

I guess it depends on why you need to use a third party kext. In my case, my chipset has a native OSX support but I add that code to have the result I mentioned above.

JBraddock, i do have that screen already because OSX has native support for 88E8053 - the chip is present in AppleYukon2.kext by default.

My chipset has also native support but I can only see that screen with that DSDT fix I shared above.

Link to comment
Share on other sites

@JBraddock: My integrated lan is Realtek RTL8111B, I read on OSX wiki that it works using DSDT patching, but no concrete patch is available. Supposedly it even works without patching, but needs the realtek kext for AFP share mounting (which I need). Anyone have a working patch?

Link to comment
Share on other sites

@JBraddock: My integrated lan is Realtek RTL8111B, I read on OSX wiki that it works using DSDT patching, but no concrete patch is available. Supposedly it even works without patching, but needs the realtek kext for AFP share mounting (which I need). Anyone have a working patch?

Inside EmpireEFI v1.085 R2 boot CD, there is a patched IONetworkingFamily.kext which enabled my Realtek LAN device. Try it.

Link to comment
Share on other sites

@JBraddock: My integrated lan is Realtek RTL8111B, I read on OSX wiki that it works using DSDT patching, but no concrete patch is available. Supposedly it even works without patching, but needs the realtek kext for AFP share mounting (which I need). Anyone have a working patch?

I don't think you need a special dsdt fix but a similar one that I shared above.

Also there is a Time Machines Fix in DSDTSE similar to the one I used. I suggest you take a look at it, search for your device address and and find the correct device and apply that fix.

 

If that doesn't solve your problem, look at this topic. I don't know what they are trying to achieve as I didn't read carefully but they are doing some geeky stuff with Realtek network card :D (Look at the recent posts)

 

I am sure they can help. Sorry I couldn't be more helpful.

Link to comment
Share on other sites

 

 

Thanks a Lot :)

 

smokev.gif

 

GIGABYTE GA P35-DS3

# Add method DTGP to the main block, it's used by other patches
#
into method label DTGP remove_entry;
into definitionblock code_regex . insert
begin
Method (DTGP, 5, NotSerialized)\n
{\n
   If (LEqual (Arg0, Buffer (0x10)\n
           {\n
               /* 0000 */    0xC6, 0xB7, 0xB5, 0xA0, 0x18, 0x13, 0x1C, 0x44, \n
               /* 0008 */    0xB0, 0xC9, 0xFE, 0x69, 0x5E, 0xAF, 0x94, 0x9B\n
           }))\n
   {\n
       If (LEqual (Arg1, One))\n
       {\n
           If (LEqual (Arg2, Zero))\n
           {\n
               Store (Buffer (One)\n
                   {\n
                       0x03\n
                   }, Arg4)\n
               Return (One)\n
           }\n
           If (LEqual (Arg2, One))\n
           {\n
               Return (One)\n
           }\n
       }\n
   }\n
   Store (Buffer (One)\n
       {\n
           0x00\n
       }, Arg4)\n
   Return (Zero)\n
}
end;
# Change ID of SATA device to fake ESB2 AHCI (silver icons for internal HDs instead of orange ones)
#
into method label _DSM parent_adr 0x001F0002 remove_entry;
into device name_adr 0x001F0002 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
   Store (Package (0x02)\n
       {\n
           "device-id", \n
           Buffer (0x04)\n
           {\n
               0x81, 0x26, 0x00, 0x00\n
           }\n
       }, Local0)\n
   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
   Return (Local0)\n
}
end;
# Rename device AZAL to HDEF and change all references to it
#
into device name_adr 0x001B0000 set_label
begin
HDEF
end;
into_all all code_regex AZAL replaceall_matched
begin
HDEF
end;
# Insert method _DSM into device with _ADR 0x001B0000
#
into method label _DSM parent_adr 0x001B0000 remove_entry;
into device name_adr 0x001B0000 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
   Store (Package (0x0A)\n
       {\n
           "built-in",\n
           Buffer (One)\n
           {\n
               0x01\n
           },\n
           "codec-id",\n
           Buffer (0x04)\n
           {\n
               0x85, 0x08, 0xEC, 0x10\n
           },\n
           "layout-id",\n
           Buffer (0x04)\n
           {\n
               0x75, 0x03, 0x00, 0x00\n
           },\n
           "device-type",\n
           Buffer (0x10)\n
           {\n
               "Realtek ALC889A"\n
           },\n
           "PinConfigurations",\n
           Buffer (0x28)\n
           {\n
               /* 0000 */    0x10, 0x90, 0xA1, 0x01, 0x20, 0x90, 0xA1, 0x02,\n
               /* 0008 */    0x80, 0x30, 0x81, 0x01, 0x90, 0x40, 0x21, 0x02,\n
               /* 0010 */    0x30, 0x40, 0x11, 0x01, 0x40, 0x40, 0x01, 0x01,\n
               /* 0018 */    0x50, 0x60, 0x01, 0x01, 0x60, 0x20, 0x01, 0x01,\n
               /* 0020 */    0x70, 0x61, 0x4B, 0x01, 0xA0, 0x01, 0xCB, 0x01\n
           }\n
       }, Local0)\n
   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
   Return (Local0)\n
}
end;
# Insert device GIGE into device with _ADR 0x001C0004
# (for Gigabyte motherboards)
#
into device label GIGE parent_adr 0x001C0004 remove_entry;
into device name_adr 0x001C0004 insert
begin
Device (GIGE)\n
{\n
Method (_DSM, 4, NotSerialized)\n
               {\n
                   Store (Package (0x04)\n
                       {\n
                           "model", \n
                           Buffer (0x2A)\n
                           {\n
                               "Realtek RTL8111/8168B Gigabit Ethernet Controller"\n
                           }, \n
                           "built-in", \n
                           Buffer (One)\n
                           {\n
                               0x00\n
                           }\n
                       }, Local0)\n
                   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
                   Return (Local0)\n
               }    \n
Name (_ADR, Zero)\n
   Name (_PRW, Package (0x02)\n
   {\n
       0x09,\n
       0x03\n
   })\n
   Method (EWOL, 1, NotSerialized)\n
   {\n
       If (LEqual (Arg0, One))\n
       {\n
           Or (GP9, One, GP9)\n
       }\n
       Else\n
       {\n
           And (GP9, Zero, GP9)\n
       }\n
       If (LEqual (Arg0, GP9))\n
       {\n
           Return (Zero)\n
       }\n
       Else\n
       {\n
           Return (One)\n
       }\n
   }\n
}
end;
into all code_regex
(OperationRegion\s\(GPIO,\sSystemIO,\s0x\d+,\s)0x05(\)\s*\n[^\n]+\n\s*\{\s*\n)((?:[^\n]+\n){5}\s*\})
replace_matched
begin
%10x06%2
                      GP9,    1,\n%3
end;
# Change methods _STA and _CRS into device HPET (to avoid AppleIntelCPUPowerManagement panic)
#
into method label _STA parent_hid PNP0103 remove_entry;
into device name_hid PNP0103 insert
begin
Method (_STA, 0, NotSerialized)\n
{\n
   Return (0x0F)\n
}
end;
into method label _CRS parent_hid PNP0103 remove_entry;
into device name_hid PNP0103 insert
begin
Method (_CRS, 0, NotSerialized)\n
{\n
   Return (ATT3)\n
}
end;
# EHCI fix
#
into method label _DSM parent_adr 0x001D0007 remove_entry;
into device name_adr 0x001D0007 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
Store (Package (0x04)\n
{\n
"AAPL,clock-id",\n
Buffer (One)\n
{\n
0x01\n
},\n
"device_type",\n
Buffer (0x05)\n
{\n
"EHCI"\n
}\n
}, Local0)\n
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
Return (Local0)\n
}
end;
into method label _DSM parent_adr 0x001A0007 remove_entry;
into device name_adr 0x001A0007 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
Store (Package (0x04)\n
{\n
"AAPL,clock-id",\n
Buffer (One)\n
{\n
0x02\n
},\n
"device_type",\n
Buffer (0x05)\n
{\n
"EHCI"\n
}\n
}, Local0)\n
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
Return (Local0)\n
}
end;
# Change ID of USB devices to fake ICH10-R (sleep fix for ICH9)
#
into method label _DSM parent_adr 0x001D0000 remove_entry;
into device name_adr 0x001D0000 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
   Store (Package (0x02)\n
       {\n
           "device-id", \n
           Buffer (0x04)\n
           {\n
               0x34, 0x3A, 0x00, 0x00\n
           }\n
       }, Local0)\n
   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
   Return (Local0)\n
}
end;
into method label _DSM parent_adr 0x001D0001 remove_entry;
into device name_adr 0x001D0001 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
   Store (Package (0x02)\n
       {\n
           "device-id", \n
           Buffer (0x04)\n
           {\n
               0x35, 0x3A, 0x00, 0x00\n
           }\n
       }, Local0)\n
   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
   Return (Local0)\n
}
end;
into method label _DSM parent_adr 0x001D0002 remove_entry;
into device name_adr 0x001D0002 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
   Store (Package (0x02)\n
       {\n
           "device-id", \n
           Buffer (0x04)\n
           {\n
               0x36, 0x3A, 0x00, 0x00\n
           }\n
       }, Local0)\n
   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
   Return (Local0)\n
}
end;
into method label _DSM parent_adr 0x001A0000 remove_entry;
into device name_adr 0x001A0000 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
   Store (Package (0x02)\n
       {\n
           "device-id", \n
           Buffer (0x04)\n
           {\n
               0x37, 0x3A, 0x00, 0x00\n
           }\n
       }, Local0)\n
   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
   Return (Local0)\n
}
end;
into method label _DSM parent_adr 0x001A0001 remove_entry;
into device name_adr 0x001A0001 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
   Store (Package (0x02)\n
       {\n
           "device-id", \n
           Buffer (0x04)\n
           {\n
               0x38, 0x3A, 0x00, 0x00\n
           }\n
       }, Local0)\n
   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
   Return (Local0)\n
}
end;
into method label _DSM parent_adr 0x001A0002 remove_entry;
into device name_adr 0x001A0002 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
   Store (Package (0x02)\n
       {\n
           "device-id", \n
           Buffer (0x04)\n
           {\n
               0x39, 0x3A, 0x00, 0x00\n
           }\n
       }, Local0)\n
   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
   Return (Local0)\n
}
end;
# Remove IRQs from devices PIC, RTC and TMR, and add IRQs to device HPET
#
into device name_hid PNP0000 code_regex IRQNoFlags\s\(\)\n\s+\{(\d+)\} remove_matched;
into device name_hid PNP0100 code_regex IRQNoFlags\s\(\)\n\s+\{(\d+)\} remove_matched;
into device name_hid PNP0B00 code_regex IRQNoFlags\s\(\)\n\s+\{(\d+)\} remove_matched;
into device name_hid PNP0103 code_regex_not IRQNoFlags code_regex Name\s\(([^,]+),\sResourceTemplate\s\(\)\n\s+\{((?:.|\n)*)\}\) replace_matched
begin
Name (%1, ResourceTemplate ()\n
                   {\n
                       IRQNoFlags ()\n
                           {0}\n
                       IRQNoFlags ()\n
                           {8}\n
%2
})
end;
# Change ID of device with _ADR 0x001F0000 (LPC)
#
into method label _DSM parent_adr 0x001F0000 remove_entry;
into device name_adr 0x001F0000 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
   Store (Package (0x02)\n
       {\n
           "device-id", \n
           Buffer (0x04)\n
           {\n
               0x16, 0x29, 0x00, 0x00\n
           }\n
       }, Local0)\n
   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
   Return (Local0)\n
}
end;
# Insert device SBUS into device PCI0
#
into device name_adr 0x001F0003 parent_label PCI0 remove_entry;
into device label PCI0 insert
begin
Device (SBUS)\n
{\n
   Name (_ADR, 0x001F0003)\n
   Device (BUS0)\n
   {\n
       Name (_CID, "smbus")\n
       Name (_ADR, Zero)\n
       Device (DVL0)\n
       {\n
           Name (_ADR, 0x57)\n
           Name (_CID, "diagsvault")\n
       }\n
   }\n
   Method (_DSM, 4, NotSerialized)\n
   {\n
       Store (Package (0x02)\n
           {\n
               "device-id", \n
               Buffer (0x04)\n
               {\n
                   0x30, 0x3A, 0x00, 0x00\n
               }\n
           }, Local0)\n
       DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
       Return (Local0)\n
   }\n
}
end;
# Change method _PTS where Arg0 is 0x05 (shutdown)
#
into method label _PTS code_regex (If\s*\(LEqual\s*\(Arg0,\s*0x05\)\)\s*\n\s*\{\s*\n)(?:[^\n\}]+\n)+(\s*\}) replace_matched
begin
%1
           Store (Zero, SLPE)\n
           Sleep (0x10)\n
%2
end;
into method label \_PTS code_regex (If\s*\(LEqual\s*\(Arg0,\s*0x05\)\)\s*\n\s*\{\s*\n)(?:[^\n\}]+\n)+(\s*\}) replace_matched
begin
%1
           Store (Zero, SLPE)\n
           Sleep (0x10)\n
%2
end;
into definitionblock code_regex . code_regex_not OperationRegion\s*\(PMRS insert
begin
OperationRegion (PMRS, SystemIO, 0x0430, One)\n
Field (PMRS, ByteAcc, NoLock, Preserve)\n
{\n
       ,   4, \n
   SLPE,   1\n
}
end;
# Insert return into method _WAK to fix warning
# (for Gigabyte motherboards)
#
into method label _WAK code_regex Return\s\(\s*\n?\s*Package\s*\n?\s*\(0x02\)\s*\n?\s*\{\s*\n?(?:\s*Zero,?\s*\n?){2}\s*\}\s*\n?\s*\) remove_matched;
into method label _WAK insert
begin
Return (Package (0x02)\n
{\n
   Zero, \n
   Zero\n
})
end;
into method label \_WAK code_regex Return\s\(\s*\n?\s*Package\s*\n?\s*\(0x02\)\s*\n?\s*\{\s*\n?(?:\s*Zero,?\s*\n?){2}\s*\}\s*\n?\s*\) remove_matched;
into method label \_WAK insert
begin
Return (Package (0x02)\n
{\n
   Zero, \n
   Zero\n
})
end;
into device label FWH set_label begin FWHD end;
into device label MCH set_label begin MCEH end;
into device label PIC set_label begin IPIC end;
into device label DMAD set_label begin DMAC end;
into device label TMR set_label begin TIMR end;
into device label RTC0 set_label begin RTC end;
into device label COPR set_label begin MATH end;
into device label OMSC set_label begin LDRC end;
into device label IDE1 set_label begin SATA end;
into device label CHN0 set_label begin PRT0 end;
into device label CHN1 set_label begin PRT1 end;
into device label USB0 set_label begin UHC1 end;
into device label USB1 set_label begin UHC2 end;
into device label USB2 set_label begin UHC3 end;
into device label US31 set_label begin UHC4 end;
into device label USB4 set_label begin UHC5 end;
into device label USB5 set_label begin UHC6 end;
into device label USBE set_label begin EHC1 end;
into device label USE2 set_label begin EHC2 end;
into device label PX40 set_label begin LPCB end;
into_all all code_regex DMAD replaceall_matched begin DMAC end;
into_all all code_regex TMR replaceall_matched begin TIMR end;
into_all all code_regex RTC0 replaceall_matched begin RTC end;
into_all all code_regex COPR replaceall_matched begin MATH end;
into_all all code_regex OMSC replaceall_matched begin LDRC end;
into_all all code_regex CHN0 replaceall_matched begin PRT0 end;
into_all all code_regex CHN1 replaceall_matched begin PRT1 end;
into_all all code_regex PX40 replaceall_matched begin LPCB end;
into_all all code_regex USB0 replaceall_matched begin UHC1 end;
into_all all code_regex USB1 replaceall_matched begin UHC2 end;
into_all all code_regex USB2 replaceall_matched begin UHC3 end;
into_all all code_regex US31 replaceall_matched begin UHC4 end;
into_all all code_regex USB4 replaceall_matched begin UHC5 end;
into_all all code_regex USB5 replaceall_matched begin UHC6 end;
into_all all code_regex USBE replaceall_matched begin EHC1 end;
into_all all code_regex USE2 replaceall_matched begin EHC2 end;
into device name_adr 0x001E0000 set_label
begin
PCIB
end;
into_all all code_regex HUB0 replaceall_matched
begin
PCIB
end;
# Change the length of IO segment in device RTC to 0x02 (fix CMOS reset)
#
into device name_hid PNP0B00 code_regex (IO\s\((?:\s*[^,]+,\s*(?:\/\/\s.*)?\s*\n)+\s*)(\dx\d+)(,\s*(?:\/\/\s.*)?\s*\n\s*\)) replace_matched begin %10x02%3 end

 

SBUS

# Insert device SBUS into device PCI0
#
into device name_adr 0x001F0003 parent_label PCI0 remove_entry;
into device label PCI0 insert
begin
Device (SBUS)\n
{\n
   Name (_ADR, 0x001F0003)\n
   Device (BUS0)\n
   {\n
       Name (_CID, "smbus")\n
       Name (_ADR, Zero)\n
       Device (DVL0)\n
       {\n
           Name (_ADR, 0x57)\n
           Name (_CID, "diagsvault")\n
       }\n
   }\n
   Method (_DSM, 4, NotSerialized)\n
   {\n
       Store (Package (0x02)\n
           {\n
               "device-id", \n
               Buffer (0x04)\n
               {\n
                   0x30, 0x3A, 0x00, 0x00\n
               }\n
           }, Local0)\n
       DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
       Return (Local0)\n
   }\n
}
end

Link to comment
Share on other sites

@oldnapalm, I wrote about both already:

 

USB problem solved by your EHCI patch explained in Post #302

 

Marvell explained in Post #321

 

Sleep explained in Post #335

 

Hooray, and the SATA problem is gone too ! I started playing around with SATA ports after noticing that POST was giving something like

 

Port1: ERROR _resetting controller.

 

Solved by moving DVD burner to another port and now everything is detected and working as it should.

Link to comment
Share on other sites

Hi!

 

Great editor.

 

I have an ASUS P5Q-E MBO with Intel Q9550 CPU (@8.5x400Mhz=3400MHz) and 8GB of Mushkin redline DDR2 RAM running at 1000MHz with 2101 BIOS modified with SLIC 2.1 for windows 7 installed on first SATA disk.

I have successfuly installed iAtkos S3 v2 on second disk and made com.apple.Boot.plist with EFI string for new nVidia GTX 470 GPU and it boots OK but without sound.

 

I made a plain vanilla install on second disk using a method of installing on different disk from working iAtkos S3 v2 installation and applying 10.6.4 patch onto that disk.

 

 

Can someone tell me which patches are necessary to apply to DSDT to get my plain vanilla install of SnowLeo 10.6.4 boot with minimal set of Extra kexts?

Link to comment
Share on other sites

to start

 

DTGP

IRQs

Shutdown

LPC

 

*you must need the usb fixs

 

for native power managment and restart fix --> Chameleon RC5

Look it

http://www.insanelymac.com/forum/index.php?showtopic=225766

Download Chameleon RC5

http://www.insanelymac.com/forum/index.php?showtopic=231075

 

include in boot.plist

 

GeneratePStates

Yes

GenerateCStates

Yes

 

smbios MacPro / boot.plist

SMBIOS_MP___BOOT.PLIST.zip

 

for audio use voodoohda

http://www.insanelymac.com/forum/index.php?showtopic=216071

or

apply the patch in DSDT + legacy + *applehda 10.6.2

Link to comment
Share on other sites

Hi oldnapalm thanks for the help so far just wondered if it would be possible to do the sound card etc in the DSDT to inject into the appleHDA.kext file.

 

If you could tell me what is needed i know codecs is one of them and give me a howto i would gladly help get the info together to help you.

Link to comment
Share on other sites

Gosh man. I ran into something. I kept on changing my DSDT in the editor, and used ctrl-s to save my changes... to find out that keyboard shurtcuts don't work. Bummer.

 

Joke: (Sorry dad) My father kept on hammering. Use ctrl-s Use ctrl-s. Probably because he is from a past century Where stuff might not have worked like todays software. Ouch. It still doesn't work LOL :))

 

Cheers,

 

Sam.

Link to comment
Share on other sites

@Mohamed Khairy: I can patch your new DSDT later, but if you want to see what I changed, you can simply take your previous original DSDT (the one you sent me), the one I edited, and compare them using a diff tool. You can use the diff command in terminal, but I suggest DiffMerge for better visualization.

http://www.sourcegear.com/diffmerge/downloads.html

 

 

@dutchhockeypro: this editor was made essentially to help new users to understand the DSDT structure (tree view) and applying automated patches made by experienced users, that's why it lacks some basic features found in common text editors. I will ask el_coniglio to implement the save shortcut in next release. It will probably be command+S which is the Mac OS default.

Link to comment
Share on other sites

@Mohamed Khairy: I can patch your new DSDT later, but if you want to see what I changed, you can simply take your previous original DSDT (the one you sent me), the one I edited, and compare them using a diff tool. You can use the diff command in terminal, but I suggest DiffMerge for better visualization.

http://www.sourcegear.com/diffmerge/downloads.html

 

this appear good i fixed it now thanks :gun:

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share

×
×
  • Create New...