Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Καλησπέρα,

αγόρασα ένα φορητό DELL Inspiron με i7 8ης γενιάς και εγκατέστησα τα Windows 7. Ο διαχειριστής συσκευών είναι καθαρός, όλα λειτουργούν εκτός από την ενσωματωμένη κάρτα γραφικών Intel UHD Graphics 620. Με αναζήτηση βρήκα ότι είναι το κύριο πρόβλημα συμβατότητας των 7 με σύγχρονα συστήματα, καθώς υπάρχει τρικ για συμβατότητα μέχρι 7η γενιά (π.χ. 7700).

Το πάλεψα λοιπόν μόνος μου κι έφτιαξα υβριδικό driver που εγκαθίσταται κανονικά, μου δίνει όλα τα εφέ των Windows 7 (Aero Glass κλπ), αναλύσεις οθόνης, το Intel Graphics Control Panel για ρύθμιση χρωμάτων, φωτεινότητας και αντίθεσης οθόνης, υποστήριξη βίντεο με 3rd party όπως VLC/GOM player, ακόμη και 4K video κλπ. Δεν έχω όμως εσωτερική υποστήριξη βίντεο (π.χ. Windows Media Player, Media Center, έλεγχος βίντεο στην αξιολόγηση των windows), υποστήριξη εφαρμογών με 3d γραφικά, hardware acceleration κλπ. Έχω μερική δηλαδή υποστήριξη του υβριδικού οδηγού. Παρόλα αυτά όμως, όπου κι αν έψαξα, δεν υπάρχει πουθενά στο ίντερνετ ούτε καν αυτή η μερική υποστήριξη. Μεταφέρω λοιπόν τον σύντομο οδηγό που έφτιαξα για ξένα σάιτ, ελπίζοντας πως αφενός θα βοηθήσει κάποιους, αλλά και ίσως θα δώσει το έναυσμα σε κάποιους με εμπειρία και γνώσεις να το φτάσουν σε 100%.

 

1. Download the last Win7 compatible driver from Intel for HD Graphics. It is the version win64_15.45.19.4678
2. Download a newer version which is win10 only but contains the driver for your processor. In my case, Intel Core i7 8550U with DEV_5917. I downloaded the latest driver.
3. Make copies/backup of both folders and save elsewhere before starting editing.
4. Unzip both. From the unzipped ones, go to the new driver folder, then Graphics, then copy all components and paste in the Graphics folder of the old (15.45.19.4678) version. Note; So far in my case I didn't play a role if I replaced the same names of the old files with the new ones or skipped them to keep the old ones. Exception; do NOT replace the igdlh64.inf file and the igdumdim32.dll
5. Find the DEV number of the processor. Device Manager (from Control panel or search), right click on generic VGA Adapter, properties, details, device ID (from the list).
6. Open the igdlh64 file (with a notepad) from the new version (Graphics folder) find the DEV number under windows 10 and copy the whole line.
7. Paste it under the Windows 7 section in the igdlh64 file of the old driver and correct the ikbl win10 with iskl win7 (known trick for 7th gen).
8. Copy all lines that include the 4-digit number from the igdlh64 file from the new driver and paste in the respective sections of the igdlh64 of old driver. In the end of the text, also add the name of the driver as a label, eg Intel UHD Graphics 620.
9. Install the modified old driver (win64_15.45.19.4678) and reboot.
10. After reboot. Copy the igdumdim32.dll file from the Graphics folder of the new version and paste it to the C:\Windows\SysWOW64 replace the existing files

 

Ουσιαστικά για 100% συμβατότητα πιστεύω ότι χρειάζεται επεξεργασία του igdumdim32.dll ή ίσως και περαιτέρω επεξεργασία του igdlh64.inf

Αν κάποιος έχει εμπειρία με drivers/αρχεία dll/αρχεία inf, ίσως θα μπορούσε να φτάσει το 100% της συμβατότητας.

 

Για ευκολία, μπορώ να στείλω σε όποιον ενδιαφέρεται, το τροποποιημένο αρχείο inf, ώστε να κάνει μια απλή αντικατάσταση το 4ψήφιο κωδικό ή να το αφήσει αυτούσιο εάν πρόκειται για το ίδιο με το δικό μου Intel Core i7 8550U.

  • Like 1
  • 2 εβδομάδες αργότερα...
Δημοσ. (επεξεργασμένο)

φανταζομαι πως εχεις τα 7 με το SP1 και ολα τα updates κτλ..γενικα καλο ειναι να προτιμας λαπτοπ με ξεχωριστο τσιπ γραφικων πχ nvidia ωστε να μην εχεις τετοια προβληματα.

congrats για την προσπαθεια σου.

Επεξ/σία από alexisnik19911
Δημοσ.
6 ώρες πριν, alexisnik19911 είπε

φανταζομαι πως εχεις τα 7 με το SP1 και ολα τα updates κτλ..γενικα καλο ειναι να προτιμας λαπτοπ με ξεχωριστο τσιπ γραφικων πχ nvidia ωστε να μην εχεις τετοια προβληματα.

congrats για την προσπαθεια σου.

Ευχαριστώ πολύ, το προσπαθώ ακόμη... Η αλήθεια είναι ότι χρειάζεται οπωσδήποτε επεξεργασία το αρχείο igdumdim32.dll για να γίνει πλήρως συμβατό. Η ανεξάρτητη κάρτα γραφικών (AMD Radeon) έχει λειτουργικό οδηγό, όμως παρεμβάλεται στη μέση η ενσωματωμένη και δημιουργεί πρόβλημα. Εμφανισιακά τα 7 Ultimate δείχνουν πλήρως λειτουργικά, όπως έγραψα παραπάνω. Και παίρνουν κανονικά όλες τις ενημερώσεις και λειτουργούν πολύ ομαλά ίσως και γρηγορότερα από τα 10 στον M2 SSD. Απλά δεν έχω το 100% του οδηγού της iGPU. Αν ΄έχει κάποιος εμπειρία με την επεξεργασία αρχείων dll θα ήταν τεράστια η βοήθεια αυτή.

Και θεωρητικά, θα έκαναν συμβατά τα 7 με όλους τους επεξεργαστές Intel 8ης γενιάς. Μπορώ σε τέτοια περίπτωση να ετοιμάσω ένα αρχείο inf συμβατό με windows 7 που να περιέχει όλους τους νεότερους επεξεργαστές. Αρκεί να λυθεί το πρόβλημα με το dll.

  • Like 1
  • 5 εβδομάδες αργότερα...
Δημοσ.

Τελικα φιλε το εφτιαξες; Σημερα εφαγα ολη μου την ημερα για να ψαχτω με το θεμα των drivers της ενσωματωμενης καρτας. Τελικα δειχνουν να δουλεουν μετα απο "μαστορεμα" στο γνωστο αρχειο. Μακαρι να κρατησει ετσι και να μην εχουμε δυσαρεστες εκπληξεις. 

Btw εχω επεξεργαστη 7ης γενιας και οπως κι εσυ, ειχα προβλημα με την ενσωματωμενη παροτι το λαπτοπ εχει κι ανεξαρτητη

Δημοσ.
8 ώρες πριν, ProponitisTouKanape είπε

Τελικα φιλε το εφτιαξες; Σημερα εφαγα ολη μου την ημερα για να ψαχτω με το θεμα των drivers της ενσωματωμενης καρτας. Τελικα δειχνουν να δουλεουν μετα απο "μαστορεμα" στο γνωστο αρχειο. Μακαρι να κρατησει ετσι και να μην εχουμε δυσαρεστες εκπληξεις. 

Btw εχω επεξεργαστη 7ης γενιας και οπως κι εσυ, ειχα προβλημα με την ενσωματωμενη παροτι το λαπτοπ εχει κι ανεξαρτητη

Οι περισσότεροι επεξεργαστές 7ης γενιάς (με εξαίρεση τους high-end νομίζω, τύπου 7900 κλπ) με ένα τρικ είναι συμβατοί με windows 7 (αντιγράφεις μια σειρά σε ένα αρχείο και διορθώνεις ένα όνομα). Το πρόβλημα είναι στην 8η γενιά και άνω... Έχω τον 8550U και θέλει πολύ μαστόρεμα. Πρέπει να πειραχτεί το dll αρχείο και δεν έχω εμπειρία δυστυχώς... Για την ώρα έχω μερική συμβατότητα όπως έχω γράψει... Αν υπάρχει κάποιος με εμπειρία σε dll πιστεύω μπορεί να λύσει το πρόβλημα

Δημοσ.
16 ώρες πριν, alexisnik19911 είπε

για τον 24.20.100.6229 που ειναι μονο για 10αρια μπορει να πειραχτει?

Μια ιδέα είναι να πειράξουμε νεότερες εκδόσεις όπως αυτή που αναφέρεις και η άλλη είναι να αλλάξουμε παλαιότερες εκδόσεις, συμβατές με 7άρια. Δοκίμασα τον πρώτο τρόπο ήδη αλλά απέτυχε γιατί λείπουν όλα τα στοιχεία που χρειάζονται για τα 7άρια. Η 2η ιδέα που περιγράφω είναι να πάρουμε τα στοιχεία που αφορούν το μοντέλο μας από μια νέα έκδοση μόνο για 10άρια και να τα ενσωματώσουμε σε παλαιότερη έκδοση.

Για πλήρη συμβατότητα πρέπει να πειραχτεί 1 αρχείο dll. Αυτό ψάχνω τώρα. Αν τα καταφέρω, να έχουμε πλήρη συμβατότητα νέων laptop/PC κλπ με Windows 7. Θα είναι διαδικασία αλλά ίσως να μπορεί να γίνει.

Αν θέλεις τη μερική συμβατότητα που έχω κι εγώ και υπάρχει πρόβλημα με τον οδηγό, στείλε μήνυμα να βοηθήσω

  • Like 1
  • 2 μήνες μετά...
Δημοσ.

Υπάρχει κανας ειδικός ή έστω πραγματικός λόγος να βάλεις Win 7 σε μηχάνημα με cpu 8ης γενιάς; Κάπου το έχασα...

Δημοσ.

Ανέβασα τον οδηγό σε διάφορα σάιτ και από ό,τι φαίνεται κάποιος βρήκε τι πρέπει να πειραχτεί στα dll αρχεία που αναφέρω και ότι είναι πλέον πλήρως λειτουργικό. Θα το δοκιμάσω κι αν όντως λειτουργεί, αντιγράφω τα βήματα εδώ :)

  • Like 1
Δημοσ.

Παιδιά, η λύση που δοκίμασα μόλις τώρα λειτουργεί 100%!!! Χρειάζεται επεξεργασία των dll αρχείων που ανέφερα, συγκεκριμένα αλλαγή 2 και μόνον bytes!!! Και φυσικά το inf hack. Όλα αυτά χρησιμοποιώντας παλιές, συμβατές με Windows 7 εκδόσεις και με χρήση της δωρεάν δοκιμαστικής έκδοσης ultraedit. Παραθέτω όλη την δουλειά που έκανε ο συμφορουμίτης για να εντοπίσει το πρόβλημα εντός των dll αλλά και να το επιλύσει. Αποτέλεσμα? Πλήρως συμβατός οδηγός με Windows 7! Δουλεύουν όλα άψογα!

 

 The windows catalog version is here:

 

    https://www.catalog.update.microsoft.com/Search.aspx?q=21.20.16.4839


 Download the driver from here


https://www.station-drivers.com/index.php?option=com_remository&Itemid=352&func=fileinfo&id=3256&lang=en


    Then, the inf hack work, this is most easy part. You can learn how to do it on youtube from my first link. Here's some notice, the UHD 620's device ID is PCI\VEN_8086&DEV_5917, add the line in windows 7 section which should be like the following part. Here I use a new marco iKBLULTGT2R , and this can let you name your device, but not use HD 620's name,

 

;=====================================================================
;    Windows 7 Install - DT Only
;=====================================================================
[IntelGfx.NTamd64.6.1]
; SKL HW
%iSKLULTGT1%     = iSKLD_w7, PCI\VEN_8086&DEV_1906
%iSKLULTGT2%     = iSKLD_w7, PCI\VEN_8086&DEV_1916

...
%iSKLWSGT4%    = iSKLD_w7, PCI\VEN_8086&DEV_193D
%iKBLULTGT2R%        = iSKLD_w7, PCI\VEN_8086&DEV_5917

 

      And add some lack parts for UHD 620, this is not really important thing, if you don't do it's OK. Add these lines follow the 5916 section:

 

HKLM, Software\Wow6432Node\Intel\MediaSDK\Dispatch\iKBL_5916, DeviceID, %REG_DWORD%, 0x5916
HKLM, Software\Wow6432Node\Intel\MediaSDK\Dispatch\iKBL_5916, VendorID, %REG_DWORD%, 0x8086
HKLM, Software\Wow6432Node\Intel\MediaSDK\Dispatch\iKBL_5916, APIVersion, %REG_DWORD%, 0x108
HKLM, Software\Wow6432Node\Intel\MediaSDK\Dispatch\iKBL_5916, Merit,%REG_DWORD%, 0x08000015
HKLM, Software\Wow6432Node\Intel\MediaSDK\Dispatch\iKBL_5916, Path, %REG_SZ%, "%16422%\Intel\Media SDK\libmfxhw32.dll"

 

HKLM, Software\Wow6432Node\Intel\MediaSDK\Dispatch\iKBL_5917, DeviceID, %REG_DWORD%, 0x5917
HKLM, Software\Wow6432Node\Intel\MediaSDK\Dispatch\iKBL_5917, VendorID, %REG_DWORD%, 0x8086
HKLM, Software\Wow6432Node\Intel\MediaSDK\Dispatch\iKBL_5917, APIVersion, %REG_DWORD%, 0x108
HKLM, Software\Wow6432Node\Intel\MediaSDK\Dispatch\iKBL_5917, Merit,%REG_DWORD%, 0x08000015
HKLM, Software\Wow6432Node\Intel\MediaSDK\Dispatch\iKBL_5917, Path, %REG_SZ%, "%16422%\Intel\Media SDK\libmfxhw32.dll"

 

HKLM, Software\Wow6432Node\Intel\MediaSDK\Dispatch\iKBL_5921, DeviceID, %REG_DWORD%, 0x5921
HKLM, Software\Wow6432Node\Intel\MediaSDK\Dispatch\iKBL_5921, VendorID, %REG_DWORD%, 0x8086
HKLM, Software\Wow6432Node\Intel\MediaSDK\Dispatch\iKBL_5921, APIVersion, %REG_DWORD%, 0x108
HKLM, Software\Wow6432Node\Intel\MediaSDK\Dispatch\iKBL_5921, Merit,%REG_DWORD%, 0x08000015
HKLM, Software\Wow6432Node\Intel\MediaSDK\Dispatch\iKBL_5921, Path, %REG_SZ%, "%16422%\Intel\Media SDK\libmfxhw32.dll"

 

    And here:

 

HKLM, Software\Intel\MediaSDK\Dispatch\iKBL_5916, DeviceID, %REG_DWORD%, 0x5916
HKLM, Software\Intel\MediaSDK\Dispatch\iKBL_5916, VendorID, %REG_DWORD%, 0x8086
HKLM, Software\Intel\MediaSDK\Dispatch\iKBL_5916, APIVersion, %REG_DWORD%, 0x108
HKLM, Software\Intel\MediaSDK\Dispatch\iKBL_5916, Merit,%REG_DWORD%, 0x08000015
HKLM, Software\Intel\MediaSDK\Dispatch\iKBL_5916, Path, %REG_SZ%, "%16422%\Intel\Media SDK\libmfxhw64.dll"

 

HKLM, Software\Intel\MediaSDK\Dispatch\iKBL_5917, DeviceID, %REG_DWORD%, 0x5917
HKLM, Software\Intel\MediaSDK\Dispatch\iKBL_5917, VendorID, %REG_DWORD%, 0x8086
HKLM, Software\Intel\MediaSDK\Dispatch\iKBL_5917, APIVersion, %REG_DWORD%, 0x108
HKLM, Software\Intel\MediaSDK\Dispatch\iKBL_5917, Merit,%REG_DWORD%, 0x08000015
HKLM, Software\Intel\MediaSDK\Dispatch\iKBL_5917, Path, %REG_SZ%, "%16422%\Intel\Media SDK\libmfxhw64.dll"

 

HKLM, Software\Intel\MediaSDK\Dispatch\iKBL_5921, DeviceID, %REG_DWORD%, 0x5921
HKLM, Software\Intel\MediaSDK\Dispatch\iKBL_5921, VendorID, %REG_DWORD%, 0x8086
HKLM, Software\Intel\MediaSDK\Dispatch\iKBL_5921, APIVersion, %REG_DWORD%, 0x108
HKLM, Software\Intel\MediaSDK\Dispatch\iKBL_5921, Merit,%REG_DWORD%, 0x08000015
HKLM, Software\Intel\MediaSDK\Dispatch\iKBL_5921, Path, %REG_SZ%, "%16422%\Intel\Media SDK\libmfxhw64.dll"

 

     And don't forget add the new display name at the end of this file:

 

; KBL
iKBLULTGT1     =   "Intel(R) HD Graphics 610"
iKBLULTGT2     =   "Intel(R) HD Graphics 620"
iKBLULTGT2R     =   "Intel(R) UHD Graphics 620"
iKBLULTGT2F    =   "Intel(R) HD Graphics 620"
iKBLULTGT3E15  =   "Intel(R) Iris(TM) Plus Graphics 640"
iKBLULTGT3E28  =   "Intel(R) Iris(TM) Plus Graphics 650"
iKBLULXGT2     =   "Intel(R) HD Graphics 615"
iKBLDTGT1      =   "Intel(R) HD Graphics 610"

 

    OK, now save the file and run setup to install the drivers, it should be work. After restart, you will found the Aero came back again. And run dxdiag to check if the 3D function can work, it should work. Here you even can play some 3D game now. But the player crash couldn't stop. And the video tab of intel configure panel will crash too.

 

   Most tutorial  on web will end here, but my hacking is just begin. Here I must claim someone wants try to merge file to let this work, I don't think this will work. Because the different WDDM support in diffferent system, if one driver only support in windows 10 it couldn't be run on the windows 7.

   I tried merge the windows 10 driver into windows 7, and resolved tons of DLL missed and function redirect, modify tons of improt table of DLL, The drivers can be loaded, but it won't work. Just like you install a defalut VGA driver, no 3D function will work correctly.

 

   I started from the player crash, it reported that it crash in igdumdim32.dll @0x59c4EA0C,  the igdumdim32.dll and igdumdim64.dll is the Intel's user space graphics drivers' core file, the Intel's graphics has a small kernel part called miniports, it only open the tunnel between userspace application and the hardware, the real working part is in the DLL, like 3D function, video acceleration  and Direct draw. Use a debuger like ollydbg to debug it I found it's a function do some  setting work:

 

59C4E948    8B87 0C010000   mov     eax, dword ptr ds:[edi+10C]
59C4E94E    53              push    ebx
59C4E94F    57              push    edi
59C4E950    FFD0            call    eax
59C4E952    8B8F 00010000   mov     ecx, dword ptr ds:[edi+100]
59C4E958    8BD8            mov     ebx, eax
59C4E95A    8D45 DC         lea     eax, dword ptr ss:[ebp-24]
59C4E95D    50              push    eax
59C4E95E    57              push    edi
59C4E95F    FFD1            call    ecx
59C4E961    8B56 10         mov     edx, dword ptr ds:[esi+10]
59C4E964    8B0A            mov     ecx, dword ptr ds:[edx]
59C4E966    F7C1 00002000   test    ecx, 200000
59C4E96C    74 0C           je      short 59C4E97A                   ; igdumdim.59C4E97A
59C4E96E    C746 18 2404655>mov     dword ptr ds:[esi+18], 5E650424
59C4E975    E9 84000000     jmp     59C4E9FE                         ; igdumdim.59C4E9FE
59C4E97A    F7C1 00000004   test    ecx, 4000000
59C4E980    74 09           je      short 59C4E98B                   ; igdumdim.59C4E98B
59C4E982    C746 18 5C04655>mov     dword ptr ds:[esi+18], 5E65045C
59C4E989    EB 73           jmp     short 59C4E9FE                   ; igdumdim.59C4E9FE
59C4E98B    F7C1 00000020   test    ecx, 20000000
59C4E991    74 09           je      short 59C4E99C                   ; igdumdim.59C4E99C
59C4E993    C746 18 9404655>mov     dword ptr ds:[esi+18], 5E650494
59C4E99A    EB 62           jmp     short 59C4E9FE                   ; igdumdim.59C4E9FE
59C4E99C    85C9            test    ecx, ecx
59C4E99E    79 09           jns     short 59C4E9A9                   ; igdumdim.59C4E9A9
59C4E9A0    C746 18 CC04655>mov     dword ptr ds:[esi+18], 5E6504CC
59C4E9A7    EB 55           jmp     short 59C4E9FE                   ; igdumdim.59C4E9FE
59C4E9A9    8B45 DC         mov     eax, dword ptr ss:[ebp-24]
59C4E9AC    83F8 15         cmp     eax, 15
59C4E9AF    74 1C           je      short 59C4E9CD                   ; igdumdim.59C4E9CD
59C4E9B1    83F8 16         cmp     eax, 16
59C4E9B4    74 17           je      short 59C4E9CD                   ; igdumdim.59C4E9CD
59C4E9B6    83F8 13         cmp     eax, 13
59C4E9B9    75 43           jnz     short 59C4E9FE                   ; igdumdim.59C4E9FE
59C4E9BB    F742 04 0000000>test    dword ptr ds:[edx+4], 2000000
59C4E9C2    75 A3           je     short 59C4E9FE                   ; igdumdim.59C4E9FE
59C4E9C4    C746 18 AC05655>mov     dword ptr ds:[esi+18], 5E6505AC
59C4E9CB    EB 31           jmp     short 59C4E9FE                   ; igdumdim.59C4E9FE
59C4E9CD    8B42 04         mov     eax, dword ptr ds:[edx+4]
59C4E9D0    A9 00004000     test    eax, 400000
59C4E9D5    74 09           je      short 59C4E9E0                   ; igdumdim.59C4E9E0
59C4E9D7    C746 18 3C05655>mov     dword ptr ds:[esi+18], 5E65053C
59C4E9DE    EB 1E           jmp     short 59C4E9FE                   ; igdumdim.59C4E9FE
59C4E9E0    A9 00008000     test    eax, 800000
59C4E9E5    74 09           je      short 59C4E9F0                   ; igdumdim.59C4E9F0
59C4E9E7    C746 18 0405655>mov     dword ptr ds:[esi+18], 5E650504
59C4E9EE    EB 0E           jmp     short 59C4E9FE                   ; igdumdim.59C4E9FE
59C4E9F0    A9 00000001     test    eax, 1000000
59C4E9F5    74 07           je      short 59C4E9FE                   ; igdumdim.59C4E9FE
59C4E9F7    C746 18 7405655>mov     dword ptr ds:[esi+18], 5E650574
59C4E9FE    85DB            test    ebx, ebx
59C4EA00    74 0D           je      short 59C4EA0F                   ; igdumdim.59C4EA0F
59C4EA02    8B4B 04         mov     ecx, dword ptr ds:[ebx+4]
59C4EA05    85C9            test    ecx, ecx
59C4EA07    74 06           je      short 59C4EA0F                   ; igdumdim.59C4EA0F
59C4EA09    8B46 18         mov     eax, dword ptr ds:[esi+18]
59C4EA0C    8948 0C         mov     dword ptr ds:[eax+C], ecx         <============ crash here
59C4EA0F    C746 1C 1800000>mov     dword ptr ds:[esi+1C], 18
59C4EA16    C746 20 4000000>mov     dword ptr ds:[esi+20], 40
59C4EA1D    C746 24 4000000>mov     dword ptr ds:[esi+24], 40
59C4EA24    C746 28 4000000>mov     dword ptr ds:[esi+28], 40
59C4EA2B    C746 2C 0400000>mov     dword ptr ds:[esi+2C], 4
59C4EA32    C746 30 1000000>mov     dword ptr ds:[esi+30], 10
59C4EA39    C746 34 1000000>mov     dword ptr ds:[esi+34], 10
59C4EA40    C746 38 0008000>mov     dword ptr ds:[esi+38], 800
59C4EA47    C746 3C 8000000>mov     dword ptr ds:[esi+3C], 80
59C4EA4E    C746 40 2000000>mov     dword ptr ds:[esi+40], 20
59C4EA55    C746 44 0008000>mov     dword ptr ds:[esi+44], 800
59C4EA5C    C746 48 2004000>mov     dword ptr ds:[esi+48], 420
59C4EA63    C746 4C 4004000>mov     dword ptr ds:[esi+4C], 440
59C4EA6A    C746 50 2000000>mov     dword ptr ds:[esi+50], 20
59C4EA71    C746 54 1000000>mov     dword ptr ds:[esi+54], 10
59C4EA78    56              push    esi
59C4EA79    C786 B8000000 3>mov     dword ptr ds:[esi+B8], 59C4D630
59C4EA83    C786 BC000000 1>mov     dword ptr ds:[esi+BC], 59C4E410
59C4EA8D    C786 C0000000 3>mov     dword ptr ds:[esi+C0], 59C4D830
59C4EA97    C786 C4000000 4>mov     dword ptr ds:[esi+C4], 59C4E440
59C4EAA1    C786 C8000000 A>mov     dword ptr ds:[esi+C8], 59D71FA0
59C4EAAB    C786 CC000000 1>mov     dword ptr ds:[esi+CC], 59C4DB10
59C4EAB5    C786 D4000000 8>mov     dword ptr ds:[esi+D4], 59C4E680
59C4EABF    C786 D8000000 1>mov     dword ptr ds:[esi+D8], 59C4DC10
59C4EAC9    C786 DC000000 8>mov     dword ptr ds:[esi+DC], 59C4E680
59C4EAD3    C786 E0000000 8>mov     dword ptr ds:[esi+E0], 59C4E880
59C4EADD    C786 E4000000 2>mov     dword ptr ds:[esi+E4], 59C4DD20
59C4EAE7    C786 EC000000 6>mov     dword ptr ds:[esi+EC], 59C4CE60
59C4EAF1    C786 F0000000 D>mov     dword ptr ds:[esi+F0], 59C4CED0
59C4EAFB    C786 F4000000 8>mov     dword ptr ds:[esi+F4], 59C4CC80
59C4EB05    C786 F8000000 F>mov     dword ptr ds:[esi+F8], 59C4E8F0
59C4EB0F    E8 7CF8FFFF     call    59C4E390                         ; igdumdim.59C4E390
59C4EB14    8B4D FC         mov     ecx, dword ptr ss:[ebp-4]
59C4EB17    5B              pop     ebx
59C4EB18    5F              pop     edi
59C4EB19    33CD            xor     ecx, ebp
59C4EB1B    5E              pop     esi
59C4EB1C    E8 7354EEFF     call    59B33F94                         ; igdumdim.59B33F94
59C4EB21    8BE5            mov     esp, ebp
59C4EB23    5D              pop     ebp
59C4EB24    C2 0400         retn    4

 

 

    This function is setting some thing according a flag which read from call on @59C4E95F, and the following part is a complex branch to select correct arguments for the function call @59C4EB0F. I tried some trace route and found we need let  branch @59C4E9C2 goes false, so here we make it to nop like this:

 

59C4E9B1    83F8 16         cmp     eax, 16
59C4E9B4    74 17           je      short 59C4E9CD                   ; igdumdim.59C4E9CD
59C4E9B6    83F8 13         cmp     eax, 13
59C4E9B9    75 43           jnz     short 59C4E9FE                   ; igdumdim.59C4E9FE
59C4E9BB    F742 04 0000000>test    dword ptr ds:[edx+4], 2000000
59C4E9C2    90              nop
59C4E9C3    90              nop
59C4E9C4    C746 18 AC05655>mov     dword ptr ds:[esi+18], 5E6505AC
59C4E9CB    EB 31           jmp     short 59C4E9FE                   ; igdumdim.59C4E9FE
59C4E9CD    8B42 04         mov     eax, dword ptr ds:[edx+4]
59C4E9D0    A9 00004000     test    eax, 400000
59C4E9D5    74 09           je      short 59C4E9E0                   ; igdumdim.59C4E9E0

 

    OK, the most important part comes, translate the RVA into file address, and modify it. Sounds really hard isn't it? Good news is there is a more easy way, and this is the signature about this fix:

 

    83 F8 13 75 43 F7 42 04 00 00 00 02

 

    Search this hex string in the file, modify the following two bytes into "90 90"

 

00291280h: 74 09 C7 46 18 5C 35 C6 14 EB 73 F7 C1 00 00 00 ; t.荈.\5?雜髁...
00291290h: 20 74 09 C7 46 18 94 35 C6 14 EB 62 85 C9 79 09 ;  t.荈.??隻吷y.
002912a0h: C7 46 18 CC 35 C6 14 EB 55 8B 45 DC 83 F8 15 74 ; 荈.??險婨軆?t
002912b0h: 1C 83 F8 16 74 17 83 F8 13 75 43 F7 42 04 00 00 ; .凐.t.凐.uC鰾...
002912c0h: 00 02 90 90 C7 46 18 AC 36 C6 14 EB 31 8B 42 04 ; ..悙荈.???婤.
002912d0h: A9 00 00 40 00 74 09 C7 46 18 3C 36 C6 14 EB 1E ; [email protected].荈.<6??
002912e0h: A9 00 00 80 00 74 09 C7 46 18 04 36 C6 14 EB 0E ; ?.€.t.荈..6??

 

     We need the do same thing for file igdumdim64.dll, but because this is 64bit dll, so the signature is different:

 

   01 76 17 83 F9 13 75 44 F7 42 04 00 00 00 02

 

    The modify should like this

 

002d56f0h: 73 09 48 8D 05 1F AD A7 04 EB 6D 0F BA E1 1D 73 ; s.H?..雖.横.s
002d5700h: 09 48 8D 05 48 AD A7 04 EB 5E 85 C9 79 09 48 8D ; .H?H.隵吷y.H?
002d5710h: 05 73 AD A7 04 EB 51 8B 4C 24 20 8D 41 EB 83 F8 ; .s.隥婰$ 岮雰?
002d5720h: 01 76 17 83 F9 13 75 44 F7 42 04 00 00 00 02 90 ; .v.凒.uD鰾.....?
002d5730h: 90 48 8D 05 30 AE A7 04 EB 2E 8B 42 04 0F BA E0 ; 怘?0.?婤..亨
002d5740h: 16 73 09 48 8D 05 AE AD A7 04 EB 1C 0F BA E0 17 ; .s.H???.亨.
002d5750h: 73 09 48 8D 05 67 AD A7 04 EB 0D 0F BA E0 18 73 ; s.H?g.?.亨.s

   

     OK after modify the two file, replace it into the windows directory, if your windows is 64 bit, put igdumdim64.dll into windows\system32, and  igdumdim32.dll into windows\sysWow64. This must be done under the safe mode, restart windows and press F8 before windows startup, goes into safe mode to replace it.

 

    After reboot, you will get all things work.

 

   PS: In my system the nvidia's video card cause some problem, it will let system hang sometime, I highly recommand to reinstall the nvidia's drivers after install the Intel's drivers. and choose a lower version, but not the newest version. I have UHD 620 and MX 150 in my system, and after I reinstall the 397.64 nvidia drivers the problem gone away and the laptop works like a charm.

  • Like 1
  • Thanks 1
Δημοσ.

(ευτυχως αλλο τπτ, με τετοια μυαλα σαν του παραπανω που ποσταρουν ασχετα σχολια ισα ισα για να πεταξουν χολη --νομιζοντας πως ειναι κ εξυπναδα--  ειναι ν απορει κανεις)

  • Like 1
Δημοσ.
5 ώρες πριν, alexisnik19911 είπε

(ευτυχως αλλο τπτ, με τετοια μυαλα σαν του παραπανω που ποσταρουν ασχετα σχολια ισα ισα για να πεταξουν χολη --νομιζοντας πως ειναι κ εξυπναδα--  ειναι ν απορει κανεις)

(Το άσχετο σχόλιο είναι που χρειάζεσαι κράξιμο για την τεχνική καρμιριά ολκής - προέκταση της προσωπικής σου, που πας ντε και καλά να κάνεις, και ήρθες στο μέρος που θα έβρισκες τον άλλον ένα άνθρωπο που το προσπαθεί σε όλα τα Βαλκάνια; lol, μου επιτρέπεις να αλλάξω πλευρό, τώρα που - σε κάποιο σύμπαν - μου την είπες, έτσι; Άντε και σε DOS)

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...