Windows Vista Soem-Preis BIOS Umb.-Methode durch das Hinzufügen der SLIC Tabelle mit dynamischer Speicheradresse

Windows Vista Soem-Aktivierungssprungmethode erfordert ein SLP 2.0 (Systems-verschlossene Vorinstallation 2.0) gefälliges BIOS-Motherboard. Neuer eingebrannter Soem-Computer kommt mit einem oder bietet nicht-so-altem Motherboard ein BIOS freies Aufsteigen bis den an, der SLP 2.0 mit SLIC Tabelle und unterzeichnetem Windows-Markt stützt (Soem-Identifikation und Tabelle Identifikation). Wenn Sie älteren Computer oder DIY Motherboard benutzen, sind Sie nicht aus Glück heraus zwar. Chinesische Häcker haben zu Umb. das gehandhabt in der SLIC ( die Software, die internen Code genehmigt ) Tabelle in die ACPI Tabelle zu ersetzen oder hinzuzufügen BIOS. Jedoch kann der Wiedereinbau der bestehenden ACPI Tabelle Verlust bestimmter Eigenschaften verursachen, während Zusatz der SLIC Tabelle inkompatibel auf Computer mit unterschiedlicher Größe des Gedächtnisses kann, da BIOS stark mit der körperlichen Speicheradresse der Tabelle des SLICS ausgebessert wird, die das Umb.-BIOS auf die Maschine einschränken, die, es nur geändert worden ist.

So ist die Methode zum Umb.-BIOS für Windows Vista Soem-Unterstützung mit vorher verwendeter statischer SLIC Speicheradresse problematisch, da die Speicheradresse geändert wird, als die Speichergröße änderte, und Benutzernotwendigkeit, die SLIC Adresse in ACPITBL.BIN zu ändern oder sonst sind sie nicht in der Lage, in das System aufzuladen und missbilligen Massenzirkulation des Umb. Soem-BIOS. So entwickeln die chinesischen Häcker die Technik erlaubt dynamische körperliche Speicheradressenverteilung der SLIC Tabelle wird verwendet weiter. Mit dynamischer Speicherallozierung kann körperliche Speichergröße ohne irgendeine Zustimmung des BIOS geändert werden non-compliant. Neben, kann vorhergehende Methode des Addierens der SLIC Tabelle Benutzer erfordern, BIOS in ROM 2mal, zuerst mit dem Umb.-BIOS und später mit dem ursprünglichen BIOS zu blitzen, während das BIOS mit dieser weiter entwickelten Methode mit dynamischem Speicheradressregister nur einen Blitz höchstens erfordert.

Werkzeuge und Dienstprogramme erfordert:

  1. MODBIN6
  2. CBROM219
  3. WinHEX
  4. Hiew 7.4 (Hiew32) (nur für Preis BIOS, wenn Sie Hiew32 Sie haben, erfordern nicht mehr IDA 5.0)
  5. IDA 5.0
  6. UltraEdit

Die Anweisung, ein Umb. Vista Soem-BIOS mit dynamischer Speicheradressen-Verteilungsfähigkeit zu verursachen ist schwierig, und empfohlen für nur Experten. Neben, wird dieser Artikel von den Dokumenten auf Chinesen übersetzt, also wird die Genauigkeit der Übersetzung nicht garantiert. Wenn Sie wirklich Ihr BIOS in der Lage sein lassen möchten, Soem-Version von Windows Vista zu aktivieren, versuchen Sie das BIOS Bereitumb. (mit statischer Adresse), Software gegründeten Vista-Ladevorrichtung Soem-BIOS-Nacheiferer oder Software gegründeten Soem-BIOS EmulationToolkit. Anderer populärer Vista-Sprung schließen TimerLock mit ein, die automatisch TimerStop Fahrer anwenden. Dieses Tutorium ist Beweis nur des Konzeptes, da jedes BIOS unterschiedlich ist, und folglich können die Werte oder die Schritte oder die Sachen, die geändert werden, unterschiedlich sein.

Warnung: Änderung zum BIOS kann Garantie, Ursachencomputer zu nicht imstande, oben aufzuladen oder anderen unwiederbringlichen Effekt ungültig erklären. Tun Sie sie an Ihrem eigenen Risiko.

Wenn Sie Hilfe auf Umb.-BIOS für Vista-Aktivierung benötigen, überprüfen Sie heraus dieses Gewinde.

  1. Stellen Sie ein temporäres Faltblatt (Vista oder BIOS ist Sie mögen), am root-Dateiverzeichnis her (C:\).
  2. Laden Sie CBROM 2.19 (abhängig von, wo Sie Download, es das vollziehbare zu cbrom.exe umbenennen müssen können, wie in diesem Artikel veranschaulicht), MODBIN6 2.01.01, SLIC.BIN (genannt acpislic.bin, das unterschieden werden kann, der der SLIC Tabellenteil des BIOS ist), von den Downloadverbindungen oben herunter und legen Sie sie in das temporäre Faltblatt.
  3. Auszug, Export oder außer dem (Name kann geändert werden, der das Motherboard BIOS ist, das Sie für Windows Vista Soem-Aktivierung zerhacken möchten). Einfachere Weise ist, die BIOS-Mikroprogrammaufstellung von den Computer- oder Motherboardherstellern wie ASUS, Gigabyte, MSI, Acer, HP, Dell, Lenovo und etc. einfach herunterzuladen.
  4. Stellen Sie fest, welcher BIOS-Teil der Akte das Feld von RSDT… FACS gelegen ist:
    1. In erhöhtem Befehlseingabeformat (oder in der Sperrung UAC), schreiben Sie den folgenden Befehl:

      CBROM.EXE /d

      Sie sehen etwas wie untengenanntes screencap:

      CBROM V2.19 (C) Preis-Software 2001 alle Rechte vorbehalten.

      ******** BIOS Teil********

      Nr., Einzelteil-Name Ursprünglich-Größe Komprimiert-Größe Ursprünglich-Akte-Name
      =====================================================
      0. System BIOS 20000h (128.00K) 13B3Eh (78.81K) 83IID318.BIN
      1. XGROUP CODE 0DFF0h (55.98K) 0993Ch (38.31K) awardext.rom
      2. ACPI Tabelle 043E5h (16.97K) 01A46h (6.57K) ACPITBL.BIN
      3. EPA FIRMENZEICHEN 0168Ch (5.64K) 002AAh (0.67K) AwardBmp.bmp
      4. YGROUP ROM 0F570h (61.36K) 0482Dh (18.04K) awardeyt.rom
      5. GRUPPEN-ROM [0] 04CD0h (19.20K) 02261h (8.59K) _EN_CODE.BIN
      6. Anderes (404E: 0000) 03476h (13.12K) 00EB4h (3.68K) 64N8IIP.BMP
      7. Anderes (404F: 0000) 0345Dh (13.09K) 008B9h (2.18K) 64N8P4P.BMP
      8. Anderes (4050: 0000) 0345Dh (13.09K) 008CCh (2.20K) 64N8P4HT.BMP
      9. Anderes (4051: 0000) 04286h (16.63K) 00A7Eh (2.62K) 64N8P4E.BMP
      10. Anderes (4052: 0000) 04286h (16.63K) 00B58h (2.84K) 64N8P4HE.BMP
      11. Anderes (4053: 0000) 0345Dh (13.09K) 007D9h (1.96K) 64N8ICPD.BMP
      12. PCI-ROM [A] 0D000h (52.00K) 07DA8h (31.41K) RTM8100.LOM

      Gesamtkompressecoderaum = 4B000h (300.00K)
      Totalgröße des komprimierten Codes = 31788h (197.88K)
      Bleiben Kompressecoderaum = 19878h (102.12K)

      ** Mikrocode-Informationen **
      Update Identifikation CPUID | Update Identifikation CPUID | Update Identifikation CPUID | Update Identifikation CPUID
      - - - - - - +-------+-------+------
      PGA478 2E 0F29|

    2. Im oben genannten Fall innerhalb, gibt es keine ggroup.bin (wo „RSDTFACPDSDTAPICHPETMCFGFACS“ oder Ähnliches ACPI Tabellenindexfeld lokalisiert wird), also RSDT… FACS befindet sich Feld innerhalb des System BIOS-Byte-Code 中 und diese Notwendigkeit zu ändern, MODBIN6 zu verwenden. Wenn Ihr BIOS ggroup.bin enthält, können Sie CBROM verwenden, um ggroup.bin BIOS-Teil als Akte zu extrahieren und zu trennen.

      Ist unten der Ausgang des Beispiel CBROM „CBROM.EXE /d“ des Befehls für BIOS mit ggruoup.bin (Gigabyte GA-G1975X BIOS als Beispiel):

      Nr., Einzelteil-Name Ursprünglich-Größe Komprimiert-Größe Ursprünglich-FI
      ================================================
      0. System BIOS 20000h (128.00K) 1492Ah (82.29K) G1975X.BIN
      1. XGROUP CODE 0F7B0h (61.92K) 0A8E6h (42.22K) awardext.rom
      2. EPA FIRMENZEICHEN 0168Ch (5.64K) 0030Dh (0.76K) AwardBmp.bmp
      3. GRUPPEN-ROM [18] 00EF0h (3.73K) 00B77h (2.87K) ggroup.bin
      4. YGROUP ROM 07140h (28.31K) 04D7Ch (19.37K) awardeyt.rom
      5. FNT1 ROM 02D28h (11.29K) 02038h (8.05K) font1.awd
      6. FNT2 ROM 03278h (12.62K) 01F18h (7.77K) font2.awd
      7. FNT3 ROM 025FCh (9.50K) 017FBh (6.00K) font3.awd
      8. GRUPPEN-ROM [0] 06010h (24.02K) 02787h (9.88K) _EN_CODE.BIN
      9. GRUPPEN-ROM [1] 06510h (25.27K) 02A1Fh (10.53K) _FR_CODE.BIN
      10. GRUPPEN-ROM [3] 06420h (25.03K) 02A75h (10.61K) _GR_CODE.BIN
      11. GRUPPEN-ROM [4] 068D0h (26.20K) 02A74h (10.61K) _SP_CODE.BIN
      12. GRUPPEN-ROM [8] 04EF0h (19.73K) 02575h (9.36K) _B5_CODE.BIN
      13. GRUPPEN-ROM [10] 04F60h (19.84K) 025E9h (9.48K) _GB_CODE.BIN
      14. GRUPPEN-ROM [11] 05E50h (23.58K) 02A85h (10.63K) _JP_CODE.BIN
      15. PCI-ROM [A] 0F200h (60.50K) 09594h (37.39K) ICH7RAID.BIN
      16. PCI-ROM [B] 10000h (64.00K) 09A15h (38.52K) b169d.pxe
      17. LOGO1 ROM 00B64h (2.85K) 00520h (1.28K) dbios.bmp
      18. PCI-ROM [C] 04000h (16.00K) 02287h (8.63K) ITE8212.ROM
      19. Anderes (4067: 0000) 01AADh (6.67K) 00B75h (2.86K) PPMINIT.ROM
      20. OEM0 CODE 025B3h (9.42K) 01B37h (6.80K) dbf.bin
      21. GRUPPEN-ROM [24] 00132h (0.30K) 0011Eh (0.28K) SPECIAL.FNT
      22. ACPI Tabelle 09640h (37.56K) 0352Ch (13.29K) ASUSACPI.BIN

      Gesamtkompressecoderaum = 67000h (412.00K)
      Totalgröße des komprimierten Codes = 57613h (349.52K)
      Bleiben Kompressecoderaum = 0F9EDh (62.48K)

      ** Mikrocode-Informationen **
      Update Identifikation CPUID | Update Identifikation CPUID | Update Identifikation CPUID | Upd
      - - - - - - +-------+-------+--
      SLOT1 0A 0F32| PGA423 2C 0F25| 00000000 00000000 0000
      00000000 00000000 0000 0000| 00000000 00000000 0000
      00000000 00000000 0000 0000| 00000000 00000000 0000
      00000000 00000000 0000 0000| 00000000 00000000 0000
      00000000 00000000 0000 0000| 00000000 00000000 0000
      00000000 00000000 0000 0000|

    3. Für BIOS mit ggroup.bin, extrahieren Sie das ggroup.bin mit dem folgenden Befehl:

      CBROM.EXE G1975X.bin /group18 Auszug

      Sie sollten den folgenden Ausgang als screenshot unten sehen:

      CBROM V2.19 (C) Preis-Software 2001 alle Rechte vorbehalten.
      Tragen Sie einen Auszugdateinamen ein: (ggroup.bin)
      [GRUPPE] wird ROM zu ggroup.bin extrahiert

    4. Unterschiedlich, außer und extrahieren Sie das ACPITBL.BIN, indem Sie den folgenden Befehl verwenden:

      CBROM.EXE 050318.BIN /acpi Auszug

      Sie sollten das folgende sehen, von CBROM auszugeben:

      CBROM V2.19 (C) Preis-Software 2001 alle Rechte vorbehalten.
      Tragen Sie einen Auszugdateinamen ein: (ACPITBL.BIN)
      [ACPI] ROM wird zu ACPITBL.BIN extrahiert

    5. Für BIOS ohne ggroup.bin (die mit ggroup.bin können diesen Schritt überspringen), Produkteinführung MODBIN6, auserwähltes (muss in der .BIN Verlängerung genannt werden, wenn, sie nicht umzubenennen. Es ist das, um in der SLIC Tabelle hinzuzufügen zu ändern BIOS, damit es gefälliges SLP 2.0. ist). Schließen Sie nicht das Fenster von MODBIN6, und warten Sie das im temporären Faltblatt extrahiert zu werden und verursacht worden ORIGINAL.BIN.
  5. Befolgen Sie die untengenannten Anweisungen, ACPITBL.BIN zu ändern:
    1. Lassen Sie UltraEdit laufen und öffnen Sie ACPITBL.BIN BIOS-Bildakte.
    2. Suchen Sie Text nach RSDT.
    3. Hinter RSDT ist das Byte, das die Länge der RSDT Tabelle anzeigt. Fügen Sie 4 dieser Zahl im HEXE-Format hinzu. Z.B. wenn der angezeigte Wert 002C ist, ändern Sie und redigieren Sie den Wert, um 0030 zu werden. Merken Sie dass die Rückreihenfolge von Paaren beim Befestigen im UltraEdit Hexeherausgeber (kommen Sie d.h. als 30 00 anstelle von 00 30 herein).
    4. Setzen Sie (nicht ersetzen) zusätzliche 4 Bytes Wert 00 nach der ursprünglichen Länge (002C) der RSDT Tabelle ein (normalerweise vor FACPt oder FXCPt für bestimmtes Gigabytes mobo). Sie können die 4 Bytes von 00 von anderer Position zu dieser Position kopieren und kleben. Diese Änderung und Änderung ist, Raum zur Verfügung zu stellen, um die SLIC Tabelle in den zukünftigen Schritten zu speichern, also erinnern Sie sich an diese Adresse (für diesen Führer, nehmen Sie an, dass diese Position SLICaddress ist). In diesem Beispiel ist SLICaddress Wert 002C.

      ACPITBL.BIN vor ändern
      Vor Änderung von ACPITBL.BIN in UltraEdit

      ACPITBL.BIN nach ändern
      Nach Änderung von ACPITBL.BIN in UltraEdit, zum des Raumes für SLIC Tabelle zuzuteilen.

    5. Überprüfen Sie die Gesamtlänge von ACPITBL.BIN, wenn die Länge vollständig geteilt werden kann…. Wenn nicht, fügen Sie 1 bis 3 Bytes von 00 am Ende der BIOS-Bildakte hinzu, damit die Länge durch 4 ohne irgendeinen Rest geteilt werden kann. Dieses ist, dass, nach dem Mischen zu garantieren, mit SLIC.BIN Bildakte, die Überschriftadresse der SLIC Tabelle durch 4 ohne Rest auch geteilt werden kann.

      ACPITBL.BIN vor ändern für Abteilung 4
      Überprüfen Sie ob die Länge von ACPITBL.BIN (die letzte Adresse der Akte + 1) kann durch 4 ohne Rest geteilt werden. In diesem Beispiel vor dieser Schrittänderung, hat das letzte Byte HEXE-Adresse von 43E8, also ist die Länge der Akte 43E9, kann nicht durch 4 voll ohne Rest innen geteilt werden.

      ACPITBL.BIN nach ändern für Verteilung 4
      Nachdem die Überprüfungsänderung mit 4 Abteilungen, addiert 3 00 Bytes bewerten.

    6. Ändern Sie OEM_ID und OEM_Table_ID entsprechend Ihren Anforderungen (normalerweise _ASUS_ und Notizbuch). Beziehen Sie sich verbessert hinzufügen SLIC Tabellenanweisung an Schritt 8 von Teil 2 zu mehr Information.
    7. Außer der Akte.
    8. Führen Sie den folgenden Befehl durch, den SLIC Tabelleninhalt mit dem geänderten ACPITBL.BIN zu vermischen und auszubessern, um die abschließende Funktionskopie von ACPITBL.BIN zu erhalten:

      KOPIEREN SIE ACPITBL.BIN /B + SLIC.BIN /B ACPI.BIN /B

      Anmerkung: Entsprechend Ihrer Anforderung verwenden Sie das korrekte ACPI.BIN, d.h. ASUS für ASUS Soem-Identifikation, Lenovo für Lenovo Soemidentifikation und -etc.

  6. Folgen Sie den untengenannten Schritten, um die Position des Raumes zu finden, die vorübergehend den Wert der Adresse der Überschriften von jedem Tabellen im Code von ORIGINAL.BIN oder von ggroup.bin speichern. Diese Adresse wird als TempBuffer_Address angenommen:
    1. Lassen Sie Ultract laufen, um ORIGINAL.BIN oder ggroup.bin zu öffnen.
    2. Führen Sie IDA durch.

      IDA

    3. Klicken Sie weitergehen, IDA einzutragen. Dann wählen Sie vor und öffnen Sie ORIGINAL.BIN Akte.
    4. In der „Last ziehen eine neue Akte“ Dialogfeld, unter dem Abschnitt „der Prozessorart“, das Menü herunter und wählen „Prozessoren Intel-80×86 vor: 80686p“.

      Prozessor-Art von IDA

    5. Nach vorgewählt schlagen Sie „einstellen“ Knopf rechts.
    6. Klicken Sie an „OKAY“ Knopf, und schlagen Sie dann auf „ja“ Knopf, wenn Sie gebeten werden zu bestätigen „, Sie möchten die Prozessorart zu 80686p ändern?“

      Bestätigen Sie Prozessor-Art Änderung

    7. Im Dialogfeld, das gebeten wird, um zu bestätigen „möchten Sie, es als 32-Bitcode auseinanderbauen? “, wird Presse auf „keinem“ Knopf als Handhabung im 16-Bitmodus getan.

      IDA wählen Spitzenmodus

    8. Im Schnur-Fenster rechts, finden Sie und lokalisieren Sie die RSDT… FACS Zeichenfolgereihenfolge, und doppelt klicken Sie an sie.

      RSDT Schnur im Schnur-Fenster

    9. Bringen Sie den Cursor an der Position des r-Buchstabens in Position. Drücken Sie dann „a-“ Taste, und dann wird RSDT… FACS Zeichenfolge angezeigt. Diese Textreihenfolge von RSDT… FACS wird ACPItables genannt.

      R-Position
      Positionierung des Cursors an der Linie von R.

      Schnur Windows eine Presse
      Nachdem a-Taste gedrückt worden ist.

    10. Bringen Sie den Cursor nach der RSDT… FACS Schnur ACPItables in Position (DB 1EH).

      Nach ACPItables

      Drücken Sie die „c-“ Taste. Ein Block des Versammlungscodes wird angezeigt.

      Versammlungscode

    11. Aber es gibt restlichen Code, der nicht in Versammlungscode auseinandergebaut worden ist. Bringen Sie so den Cursor am zuerst gebliebenen zusammengebauten Code in Position. In diesem Fall ist es Linie von unk_CC49, nachdem die RSDT… FACS Schnur ACPItables von DB 1Eh zur Verfügung stellte. Drücken Sie dann die „c-“ Taste, um den restlichen BIOS-Bytecode umzuwandeln und auseinanderzubauen.
    12. Verschieben Sie den Cursor über den Linien des folgenden „ANRUF“ Blockes.

      Benennen Sie Block

    13. Passen Sie heraus für die „ANRUF“ Linie auf, die Code wie unten oben knallen kann:

      drücken Sie eax
      drücken Sie CX
      drücken Sie ebp
      xor ebp, ebp
      Bewegungen CX, TABLE_Numbers (vorübergehend Gebrauch TABELLE _Numbers, zum eines Wertes darzustellen)
      Bewegungen EDI, eax

      In diesem Beispiel ist es die Linie von „Anruf sub_CCD4 ″.

    14. Doppelt klicken Sie an sub_CCD4, um zum Codeabschnitt von sub_CCD4 zu gehen. Wenn der gegenwärtige Anzeigemodus in der Grafik ist, Recht - klicken Sie an und wählen Sie „TEXT Ansicht“ über das Zusammenhangmenü vor, um zum Textmodus zu schalten.
    15. Innerhalb dieses Blockes des Codes, holen Sie die 3 wichtigen Variablen - TABLE_Numbers, ACPItables_address, TempBuffer_Address, zurück und notieren Sie ihren Wert. In diesem Beispiel sind der Wert der Variablen 4, CC20, 89C4 beziehungsweise, wo Adressen ungefähr an CCDC sitzen, CCE2, CD12 beziehungsweise.

      Wert vom Anruf-Block

    16. Verwenden Sie den Wert von TempBuffer_Address (89C4 vom Schritt oben) um mit jeder Tabelle in der RSDT… FACS Textfolge, mit Stufensprung von 4 nach jeder Tabelle (zusammenpassende Tabelle) zusammenzupassen. Z.B.:

      89C4 RSDT
      89C8 FACP
      89CC DSDT
      89D0 APIC
      89D4 FACS
      89D8
      89DC

      Der vorhergehende Block des Codes kopiert die erforderlichen Tabellen IM ACPITBL BIOS-Bild entsprechend RSDT… FACS Schnur in eine freie Speicheradresse und speichert diese Wert von Adressen im Raum, der von TempBuffer_Address spezifiziert wird und dann füllt schließlich diese Adressen in einige spezifische Tabellen. So während dieses Prozesses, muss der speichernadressenwert von TempBuffer_Address sein sicherstellen, der nicht kann und nicht ändert, oder sonst Umb.-BIOS fällt aus.

    17. Schalten Sie zu UltraEdit und betätigen Sie Abkürzung der Tastatur Ctrl-f, um nach D889 (d.h. 89D8 Wert, der Wert zu suchen der Gedächtnisraumposition nach FACS, in der es eine Rückseite mit niedrigem Byte im vorderen und hohen Byte nach ist). Zahlen Sie Aufmerksamkeit zu einigen Position (82D4, CC91) die senken als FFFF. Höchstwahrscheinlich finden Sie es an einigen Position. Wenn Sie kein D889 (gespeicherten Wert von 89D8) finden können, dann können Sie die Adresse (89D8) direkt verwenden gelegen hinter der Adresse, die verwendet wird, um FACS (89D4) zu speichern. Welche Mittel-SLIC Tabelle sofort hinter FACS hinzugefügt wird, mit Schnur werden etwas wie RSDT… FACSSLIC und können also durch eine, Position zu finden tun, um diese Schnur zu setzen (verschieben Sie vorwärts 4 Bytes oder verwenden Sie neue Position).
    18. Jedoch wenn Sie Code wie das folgende nahe die Position von CC91 in IDA lokalisierten, die bedeuten, dass der Abschnitt des Codes nach rechts nachdem „Anruf sub_CCD4 ″ benutzt wird, und herauf die Speicheradresse von 89D8 verwenden Sie.

      seg000: CC80 sub_CC80 proc nahe; CODE XREF: seg000: CC52p
      seg000: CC80 Stoß ds
      seg000: Axt der Bewegungen CC81, 0F000h
      seg000: CC84 Bewegungen ds, Axt
      seg000: CC86 nehmen ds an: nichts
      seg000: CC86 addieren EDI, 10h
      seg000: CC8A und Di, 0FFF0h
      seg000: CC8D Bewegungen großer ds: 89D8h, EDI
      seg000: CC95 Knall ds
      seg000: CC96 nehmen ds an: nichts
      seg000: Retn CC96
      seg000: CC96 sub_CC80 endp

      In diesem Fall Gebrauch UltraEdit, nach folgender vorhandener Adresse vom Schritt oben zu suchen (DC89 für 89DC). Wenn nichts gefunden wird, kann diese Speicheradressenposition verwendet werden, um SLIC Tabelle zu setzen. Das Problem mit dieser Speicheradressenverteilung ist, dass es eine Zeilensprungadresse oder einen Raum (89D8) zwischen FACS und SLIC Tabellen gibt. Um diese Ausgabe zu reparieren, fügen Sie die Textfolge von FACSSLIC anstelle von gerade SLIC hinzu, da FACS Tabelle klein ist und nicht zu viel Gedächtnis verwenden wird.

    19. Nach Änderung haben Sie die ACPI Tabellen-Indexschnur entweder als RSDT… FACSSLIC oder RSDT… FACSFACSSLIC. Zu die erste Instanz der Schnur unterbringen sollen, kann die vollständige Schnur sich bewegen vorwärts (zur Frontseite) durch 4 Bytes, wie oben erwähnt. Andernfalls muss eine neue Position identifizierent werden, um die neue Textfolge zu speichern. Aber im neueren Fall, in dem 8 Bytes addiert worden sind, also in uns müssen Sie eine neue Position für diese längere Schnur finden. In diesem Beispiel BIOS gibt es 11 leere Bytes (00) vor dem ACPItables_address (gelegen an CC20). Dieses sollten leere Bytes dazu in UltraEdit unbenutzt sein, dort ist kein Code, der das CC18 verwendet, oder CC1C zwei Positionen adressieren. So kann die neue Schnur zur Position mit Anfangsadresse als CC18 vorgebracht werden.

      Fügen Sie SLIC BIOS hinzu

      Fügen Sie SLIC BIOS hinzu
      Bewegende RSDT reihen vorwärts 8 Bytes auf, um neue 8 Tabelle der Bytes SLIC unterzubringen.

    20. Jetzt ist die Ankeradresse der RSDT… SLIC Schnur verschoben worden, und die Anfangsspitzenadresse der Schnur muss zum System bekannt gegeben werden. Suchen Sie in UltraEdit nach „20CC“ (die ursprüngliche Adresse), Sie findet sie an der Adresse CCE2, wie vom Schritt oben herausgefunden. Ändern Sie die 20 bis die 18, zum es „von 18CC“ (der Adresse Rückseite immer, wenn anzeigen Sie), die neue Anfangsadresse anzeigen zu lassen.

      Fügen Sie SLIC BIOS hinzu

      Fügen Sie SLIC BIOS hinzu
      Nachdem 20 bis 18 geändert worden sind, zum der neuen Positionsadresse anzuzeigen.

    21. Da die RSDT Schnur verschoben worden ist, hat die Position der FACS Tabelle auch sich auch bewogen (beziehen Sie sich auf Abbildungen oben). Die ursprüngliche Adresse der FACS Tabelle ist CC30, während neue Adresse CC28 oder CC2C ist. Und, im Rest des Codes, wird die Adresse verwendet. So muss die Adresse von FACS auch geändert werden.

      Fügen Sie SLIC BIOS hinzu

      Der Wert für die ursprüngliche Adresse ist Adresse von ACPItables_address (CC20) + 10, das zu CC30 entspricht. In UltraEdit Suche nach 30CC, das um ungefähr Bezugsposition von CD35 gefunden werden sollte. Ändern Sie das 30CC zu 28CC (für CC28) oder zu 2CCC (für CC2C).

      Fügen Sie SLIC BIOS hinzu

      Fügen Sie SLIC BIOS hinzu

    22. Zunächst muss SLIC Tabelle der Adresse hinzugefügt werden, die für sie in der RSDT Tabellenschnur in ACPI.BIN aufgehoben wird.

      seg000: CD74
      seg000: CD74 sub_CD74 proc nahe; CODE XREF: seg000: CC5Bp
      seg000: CD74 Stoß EDI
      seg000: Stoß CD76 esi
      seg000: Bewegungen CD78 esi, 0F0000h
      seg000: CD7E Bewegungen eax, [esi+89C4h]; Adresse der Fülle RSDT zu RSDT PTR
      seg000: CD86 oder eax, eax
      seg000: CD89 jz loc_CE32
      seg000: CD8D Bewegungen [esi+89C0h], eax; RSDT PTR
      seg000: Bewegungen CD95 eax, [esi+89CCh]; Adresse der Fülle DSDT zu FACP
      seg000: CD9D oder eax, eax
      seg000: CDA0 jz loc_CE32
      seg000: CDA4 Bewegungen EDI, [esi+89C8h]; FACP
      seg000: CDAC Bewegungen es: [edi+28h], eax
      seg000: Bewegungen CDB2 eax, [esi+89D4h]; Adresse der Fülle FACS zu FACP
      seg000: CDBA oder eax, eax
      seg000: CDBD jz loc_CE32
      seg000: CDC1 Bewegungen EDI, [esi+89C8h]; FACP
      seg000: CDC9 Bewegungen es: [edi+24h], eax
      seg000: CDCF Bewegungen eax, [esi+89C8h]; Adresse der Fülle FACP zu RSDT+24
      seg000: CDD7 oder eax, eax
      seg000: CDDA jz loc_CE32
      seg000: CDDE Bewegungen EDI, [esi+89C4h]; RSDT
      seg000: CDE6 Bewegungen es: [edi+24h], eax
      seg000: CDEC cmp-Byte-PTR [bp+1BFh], 7
      seg000: Jnz CDF1 Kurzschluss loc_CDFE
      seg000: Test CDF3 dword PTR [bp+1C6h], 200h
      seg000: CDFC jz Kurzschluss loc_CE2F
      seg000: CDFE
      seg000: CDFE loc_CDFE: ; CODE XREF: sub_CD74+7Dj
      seg000: CDFE Test-Byte-PTR [bp+2EBh], 4
      seg000: CE03 jz loc_CE2F
      seg000: Bewegungen CE07 eax, [esi+89D0h]; Adresse der Fülle ACPI zu RSDT+28
      seg000: CE0F oder eax, eax
      seg000: Jz CE12 Kurzschluss loc_CE2F
      seg000: CE14 Bewegungen EDI, [esi+89C4h]
      seg000: CE1C Bewegungen es: [edi+28h], eax
      seg000: CE22 Bewegungen EDI, eax
      seg000: CE25 Stoß es
      seg000: CE26 Anruf sub_B4BB
      seg000: CE29 Knall es
      seg000: CE2A jb Kurzschluss loc_CE2F
      seg000: CE2C Anruf sub_5077

      Von der zusammenpassenden Tabelle, die zusammenpaßt, legt das ACPI zur jeweiligen Speicheradresse ver, die im Schritt oben gebildet wird, verwenden ihn, um an den Code oben anzupassen. Hier muss keiner des Codes, der Prozess darstellt, um den Datenwert der Adresse 89DC zum RSDT Tabelle zu füllen, also, der folgende Code addiert werden:

      Bewegungen eax, [esi+89DCh]; 8 Bytes
      Bewegungen EDI, [esi+89C4h]; 8 Bytes
      Bewegungen es: [edi+2Ch], eax; 6 Bytes, der Wert der Länge der ACPI Tabellen (SLICaddress, das 2C ist).

      Zusatz von diesen Code kann den Rest der Adresse der Funktionen nicht beeinflussen, also einig muss nicht kritischer Code gelöscht werden, um etwas Raum oben freizugeben.

      Im oben genannten Code nach jedem Bewegungen eax, [esi+???? h], ist es vom Block des Codes als unten gefolgt:

      oder eax, eax; 3 Bytes
      jz kurzes loc_CE2F; 2 Bytes

      Diese sind Überprüfungsspitzen, das die Vorkehrungmethode ist, zum des Einsturzes oder der Störung des Systems zu verhindern. Jedoch nach Analyse, gibt es Paare Überprüfungsspitzen, die nach Reorganisierung der RSDT Tabelle entfernt werden können. So entfernen Sie die Datenüberprüfungsteile der RSDT Tabelle, die sich befindet als unten:

      seg000: CDD7 oder eax, eax; 3 Bytes
      seg000: CDDA jz loc_CE32; 2 Bytes

      und

      seg000: CE0F oder eax, eax; 3 Bytes
      seg000: Jz CE12 Kurzschluss loc_CE2F; 2 Bytes

      Nach dem Handeln dies, wird nur 10 Bytes mit Leerzeichen oben freigegeben, aber der Umb. erfordert 22 Bytes. Im Code oben, wann immer es den Code für RSDT Tabelle auffüllt, führt er diesen Befehl durch:

      Bewegungen EDI, [esi+89C4h]; 8 Bytes

      Aber, es ändert nicht den Wert des Registers oder der Variable, wenn zweimal es den Prozess durchführt, um die RSDT Tabelle auszufüllen. So kann dieser Befehl nur einmal durchgeführt werden. Tatsächlich wenn der neue Code hier gesetzt wird, kann dieser Befehl für den neuen Code auch übersprungen werden. Mit dieser Justage gibt es genügend Leerstelle geleert. Extraraum kann mit unbelegtem Befehl dann aufgefüllt werden (90 und nop). Der abschließende Code sieht wie dieses aus:

      seg000: CDCF
      Bewegungen eax, [esi+89C8h]; füllen Sie FACP Adresse zu RSDT+24 auf
      Bewegungen EDI, [esi+89C4h]; RSDT
      Bewegungen es: [edi+24h], eax
      Bewegungen eax, [esi+89DCh]
      Bewegungen es: [edi+2Ch], eax
      nop
      nop
      nop
      nop
      cmp-Byte-PTR [bp+1BFh], 7
      jnz kurzes loc_CDFE
      prüfen Sie dword PTR [bp+1C6h], 200h
      jz kurzes loc_CE2F
      prüfen Sie Byte-PTR [bp+2EBh], 4
      jz loc_CE2F
      Bewegungen eax, [esi+89D0h]; füllen Sie ACPI Adresse zu RSDT+28 auf
      seg000: CE22 Bewegungen es: [edi+28h], kann eax die Adresse für diesen Befehl nicht geändert werden.

      An die Adressenposition des Codes, der gelöscht und eingesetzt wird, muss erinnert werden:

      seg000: CDD7 oder eax, eax; 3 Bytes
      seg000: CDDA jz loc_CE32; 2 Bytes
      5 Bytes, die von CDD7 abfahren

      seg000: CE0F oder eax, eax; 3 Bytes
      seg000: Jz CE12 Kurzschluss loc_CE2F; 2 Bytes
      seg000: CE14 Bewegungen EDI, [esi+89C4h]
      5+8 Bytes, die von CE0F anstarren

      seg000: CDEC cmp-Byte-PTR [bp+1BFh], 7
      Ursprüngliche Position von CDEC, zum alles erforderlichen Codes hier einzusetzen

    23. Der Umb.-Prozess ist erfolgt, geht jetzt zurück zu UltraEdit für letzte Schrittadressenänderung. Dieser Schritt ist gut von der Unterseite verhindern bis den Code unter durcheinandergebracht erfolgt, wenn man das vordere Fach ersetzt.

      Fügen Sie SLIC BIOS hinzu
      Erstens entfernen Sie 13 Bytes beginnend von CE0F.

      Fügen Sie SLIC BIOS hinzu
      Dann setzen Sie alle mögliche 4 Bytes gelegentliche Daten am CDEC ein, dann ändern Sie den Wert bis 4 90 (90h=nop).

      Fügen Sie SLIC BIOS hinzu
      Kopieren Sie den Code an CDE6 zu CDEB, und kleben Sie ihn, um das Beginnen von CDEC zu adressieren, den verwendeten Befehl zu reflektieren: Bewegungen es: [edi+2Ch], eax

      Fügen Sie SLIC BIOS hinzu
      Kopieren Sie den Code an CDCF zu CDD6, und kleben Sie ihn, um das Beginnen von CDEC zu adressieren, den verwendeten Befehl zu reflektieren: Bewegungen eax, [esi+89DCh]

      Fügen Sie SLIC BIOS hinzu
      Zuletzt entfernen Sie 5 Bytes beginnend von CDD7.

    24. Außer dem Code.
    25. Überprüfen Sie, dass die Änderung des Codes korrekt ist, indem sie IDA verwendet, um zu überprüfen, ob der geänderte Code korrekt ist. Wenn ja, packen Sie den Code in die BIOS-Akte ein.

Verzicht: Dieser Artikel ist nur zum informierenden und pädagogischen Zweck.

WICHTIG: Die Seite ist und vorausgesetzt „maschinell übersetzt, wie“ ohne Garantie ist. Maschinelle Übersetzung kann schwierig sein zu verstehen. Beziehen Sie bitte sich auf ursprünglichen englischen Artikel, wann immer möglich.


37 Antworten „zur Windows Vista Soem-Preis BIOS Umb.-Methode durch das Hinzufügen der SLIC Tabelle mit dynamischer Speicheradresse“

Seiten: 2 [1] zeigen alle

  1. stroths
    15. März 2007 05:44
    25

    @narcan

    Dank für das Versuchen. Jemand gab eine geänderte Version dieses Bios bekannt, also wundere ich mich, wie er sie taten?

  2. admin
    15. März 2007 01:08
    24

    Hallo Jimmy-Dank. Haben die Störung behoben.

  3. Jimmy
    14. März 2007 23:52
    23

    grrr, kein Wunder, das ich es nicht herausfinden könnte, Schritt 21, hat einen Typo,

    Die ursprüngliche Adresse der FACS Tabelle ist 0030

    sein angenommenes zu sagen, CC30

    konnte admin dieses beheben?

  4. narcan
    14. März 2007 20:43
    22

    @stroths

    heißen Sie mich überprüfte, Sie versuchen nicht, das exe zu laden ;) arbeitet nicht hier auch gut, merkwürdig.

  5. narcan
    14. März 2007 20:30
    21

    @stroths

    Dumme Frage möglicherweise, aber haben Auszug das .exe, oder versuchen Sie, dieses .exe mit modbin6 zu laden?

  6. stroths
    14. März 2007 19:58
    20

    Update zu meinem vorhergehenden Pfosten: Mein Bios ist PREIS wie in dem Aufladungspfosten gezeigt und wie auf der Gigabyteweb site beschrieben.

  7. stroths
    14. März 2007 19:09
    19

    Hat jemand dem Mitteilung „nicht zusammengedrückten Preis den binären Code“ wann das Bios unter Verwendung ModBin6 öffnend erhalten? Ich wünsche jemand nicht zu Umb. das Bios für mich, aber möchte etwas Hilfe, die hinter dieser Störung erhält.

    Ich versuchte, ein Biosdump sowie die Anwendung einer Kopie von der Gigabyteweb site zu erhalten für mein 965P-DS3. Ist unten eine Verbindung zum Bios, wenn jedermann mir erklären kann, wie man dieses erfolgreich in modbin6 öffnet.

    http://america.giga-byte.com/FileList/BIOS/motherboard_bios_ga-965p-ds3_f10.exe

  8. Begrenzung
    14. März 2007 05:29
    18

    @Maniax
    Ist hier mein Problem - beide Speicherstellen direkt, nachdem die FACS Tabelle bereits benutzt werden.
    (IE, 89D8 und 89DC sind gebräuchlich)

    Der Artikel gibt „in diesem Fall an, Gebrauch UltraEdit, nach folgender vorhandener Adresse vom Schritt oben zu suchen (DC89 für 89DC). Wenn nichts gefunden wird, kann diese Speicheradressenposition verwendet werden, um SLIC Tabelle zu setzen. Das Problem mit dieser Speicheradressenverteilung ist, dass es gibt eine Zeilensprungadresse oder einen Raum (89D8) zwischen FACS und SLIC Tabellen.“

    Was es nicht bedeckt, ist was, zu tun, wenn die folgenden zwei Adressen auch gebräuchlich sind. Müssen wir die, RSDT Schnur aufzufüllen halten?

    Ist hier das Bios, das ich an bearbeite.
    ftp://ftp-usa.abit.com.tw/pub/download/bios/aw9d/aw9d14.zip

  9. Maniax
    14. März 2007 00:00
    17

    @Limit:
    Step18 ist gerade ein Überprüfungs-/Vorbereitungsschritt. Sie brauchen, nichts dort einzuspritzen. Es versucht, sicherzustellen, wenn Sie einen blinden Abschnitt (FACS, FACS, SLIC) oder nicht benötigen (FACS, SLIC). Sie wissen, indem Sie die Adresse suchen, die Sie durch step16 berechneten.

    Ich habe ein zusätzliches grelles ROM 2mbit jetzt, aber ich benötige ein 4mbit eins. Notwendigkeit, mehr Freunde anzurufen. :)

  10. Agnoia
    13. März 2007 16:50
    16

    Ich stimme, wir benötige einen Platz für Diskussion zu

    Wenn Preis BIOS besser ist - gewusst, möglicherweise können wir das Wissen AM AMI-BIOS anwenden (es gibt keine RSDTFACPACPI… Blabla Schnur). Ich wirklich möchte verbinden, auch.

  11. Begrenzung
    13. März 2007 15:53
    15

    In Schritt 18, muss die Speicherstelle für die SLIC Tabelle nach der FACS Tabelle sein, oder können wir irgendeine freie Speicherstelle verwenden? Ich versuche zu Umb. ein abit aw9d-max 1.4 Bios und zu den zwei Gedächtnis lcations direkt, nachdem die FACS Tabelle bereits benutzt sind.

    Ich mag Maniax Idee der Anwendung eines Inline-Fleckens, des Springens zu einer unbenutzten Speicherstelle - oder das Ende, und zurück zu dem ursprünglichen Code dann springen.

  12. Maniax
    13. März 2007 15:16
    14

    Ich wirklich möchte mich Entwicklungsdiskussion anschließen, oder Hilfe bei den weiteren Optimierungsschritten und ich haben noch einige Fragen wie, warum nicht erhöhten `no.of Tabellen dieses der mal ist und warum wir sie notieren müssen dann? Und so weiter…

    Wenn sein ausschließlich chinesisches Forum es nicht sinnvoll zwar sein würde, da ich nicht einen Wortchinesen spreche.

    Können Sie das Forum nennen oder mir eine eMail mit der Adresse schicken?

  13. Martin
    13. März 2007 15:04
    13

    Wow ist dieses wirklich hartes Material. Für nur Experten. Es gibt etwas interessante Einblicke in das BIOSzerhacken.

    Schritte 22/23 sind wirklich schwierig und können zu irgendeinem verdorbene BIOS mods führen. Es würde nett sein, eine komplette Auflistung des geänderten abschließenden Codes zu haben. Verbessern Sie sogar, wenn jemand eine Vorlage und erfolgreich geänderte EINE BIOS-Akte bekannt geben könnte, die everone vergleichen und analysieren kann.

    Dennoch wieder gute Arbeit über diesen Aufstellungsort hier!

    thx
    Martin

  14. admin
    13. März 2007 14:30
    12

    Hallo Maniax ja hat er vom chinesischen Forum übersetzt. Ist Forumgewinde notwendig?

  15. Maniax
    13. März 2007 14:08
    11

    Wir benötigen einen Platz, dieses zu besprechen. Was ist der Quellort dieser Informationen? Ist es chinesisches Sprachforum? Kann jemand kindly ein englisches Gewinde herstellen und uns dort zeigen?

    Betreffend das Tutorium:
    Sein möglicherweise einfacheres `zum Inline-patch der Zusatzcode, durch einen Sprung zum Ende des codeblock weit verwenden. Es sollte mehr als genügende unbenutzten Auffüllenbytes (FF FF halten…). Ein weit Sprung benötigt gerade 5 Bytes, die, die Bytes können auf das Inline-Programm verschoben werden ersetzten (Gebrauch or+jnz, der 5 Bytes benötigt, befestigt gerade das jnz am `far später), also lösen Sie keinen Code und sein viel einfacheres.

    Ich prüfe es, sobald ich einen zweiten grellen Span für Unterstützung gegründet habe.

  16. Begrenzung
    13. März 2007 08:46
    10

    Dieses ist groß - ich wunderte mich, wie man dynamisch die SLIC Nachschlagen addiert. Dieses überprüft heraus mit der Forschung, die ich getan hatte. Sobald ich einen neuen Biosspan innen erhalte, fange ich an, diese Methode zu prüfen.

  17. OvErDoSeNL
    12. März 2007 23:39
    9

    Regelt dieses schließlich das nicht ArbeitsAsus Kommando-Bios?

    Wenn ja kann jemand das Kommando-Bios regeln?

  18. Lächeln
    12. März 2007 22:13
    8

    Wieder denkt der Autor, dass alle wir PREIS Bioses haben?

    , um mit AMI oder zu verbessern zu verwenden was dennoch Phoenix-BIOS zu arbeiten?

    Das modbin arbeitet nicht an umbenannten *.rom Akten, die Sie kennen….

  19. Aufstand
    12. März 2007 22:11
    7

    Tut diese Arbeit über ein Pheonix Bios??

  20. Agnoia
    12. März 2007 21:17
    6

    ja!

    Inproved Methode: Örtlich festgelegte (statische) RAM-Adresse der Tabelle (seien Sie heraus eine Strecke, wenn u-untereres RAM und aus Gleichem heraus, wenn u-Erhöhung RAM)

    Dynamisch: Adresse passt sich RAM-Größe (Sitze immer) = vollkommener Umb. an

    Für mich wünsche ich gerade zu den extact Informationen, die ich auf AMI-BIOS erfolgreich werden muss….

  21. Jimmy
    12. März 2007 20:51
    5

    wow dieses sieht wie eine Herausforderung zu mir lol aus

    so bedeutet dieses, dass, solange ich nicht mein RAM auf meinem Brett ändere, ich die verbesserte, Methode anzuwenden halten kann???

    im nicht sure im den Unterschied von diesem und von der verbesserten Methode verstehend

  22. Moto
    12. März 2007 19:20
    4

    Danke

  23. Agnoia
    12. März 2007 18:40
    3

    Thanx. Dieses ist groß!

  24. Windy1664
    12. März 2007 17:50
    2

    Großer Führer.

    Ich wundere mich, wenn Niko anfängt, diese Methode anzuwenden???

  25. O Indigente
    12. März 2007 17:31
    1

    @ Admin

    Dank, für pädagogischeres Hilfsmittel der Aufgabe eine.

    Dieses kann helfen.

    :)

    Cumps.

Seiten: 2 [1] zeigen alle

Lassen Sie eine Antwort

Sie können diese Umbauten benutzen: <a href= "" title= "" > <abbr title= "" > <acronym title= "" > <b> <blockquote cite= "" > <cite> <code> <del datetime= "" > <em> <i> <q cite= "" > <strike> <strong>

Unterzeichnen Sie zu den Anmerkungen, die Eigenschaft gesperrt worden ist. Um Mitteilung der spätesten bekanntgegebenen Anmerkungen zu empfangen, unterzeichnen Sie zu meiner Zufuhr der Digital-Leben-Anmerkungen RSS oder das Register zum der neuen Anmerkungen in der täglichen eMail zu empfangen verdauen.
Custom Search

Neue Artikel

Ankommende Suchausdrücke für den Artikel

das Vista-Bios - slic (v2) - slic v2 - Vistasoem - SLIC - Vista-Biosumb. - slic Bios - die BIOS-Unterstützungen slic (v2) - Bios SLIC - SLIC Biosumb. - Bios Vista - Vista SLIC - Biosumb. - Vistasoem-Bios - Soem-Bios - Umb.-Bios - Soem-Biosumb. - modded Bios - slic Tabelle dem Bios hinzufügend - SLIC modded Bios - Info des BIOS ACPI_SLIC redigierend - den Preis slic - fügen Sie slic Bios - Biosumb.vista - ändern Bios slic Bios des slic - das Preis- Bios slic - Vista - Preis-Biosherausgeber - alle - Bios slic v2 - addieren SLIC - Biossoem - Preis-Bios hinzu Umb. - Preis-Bios Vista - PC BIOS stützt slic (v2) - Vista - BIOS Stützslic - Vistasoem-Biosumb. - slic v2 Bios - binärer Code des nicht komprimierten Preises - ändern Sie Bios Vista - CBROM 2.19 - Bios - Soem-Bios mods - Soemvista - slic Tabelle - Preis-Bios - ändern Sie Bios - slic Bios mods - das Bios slic (v2) - Preis-Bios SLIC - Preis-Bios Vistaumb. - das Phoenix-Bios, das modding ist - Bios Modding Vista - ggroup.bin - Windows Vistasoem-Bios - slic Vista - addieren Sie slic Preis-Bios - P31 SLIC Modded BIOS - AMI-BIOS - Soem „Soem-Biosumb. - slic Tabelle addierend - - slic Umb. - Biosumb. slic - Hinzufügen slic Bios - modded Bios Vista - cbrom slic - PC-BIOS stützt slic - modded Bios des Phoenix- Bios slic - Preis-Bios slp Downloads - Vista - slic Tabelle des Bios - MSI K8N Soemvista-Aktivierungsumb. - Windows Vistasoem -