Improved Way to Add SLIC (SLP 2.0) Table into BIOS ACPI to Activate Windows Vista OEM

Microsoft is using SLP 2.0 (System Locked Preinstallation) technology for activation process of OEM (Original Equipment Manufacturer) edition of Windows Vista on branded PC. One of the requirement to activate Windows Vista with OEM product key is the existance of SLP public key and SLP marker which stored in SLIC table in ACPI. If you have older motherboard with no updated BIOS with SLIC table, the BIOS has to be patched or hacked to add in SLIC table plus OEMID and OEMTableID. The original instruction to add in SLIC information involves method to replace an existing ACPI description table, which may affect some functionalities of computer. Now there is improved way to actually add in SLIC table into BIOS ACPI module, without replacing any existing tables.
The new improved procedure may also works on older motherboards with BIOS that previously thought to be unable to edit or alter, or those BIOS that has to replace the APIC table which may force user to reinstall Windows operating system as existing OS fails (see step 8 of original article). As with the original guide, the following tutorial is based on Award BIOS on DFI CA64-TC motherboard. As usual the tools or utilities that needed include:

  1. CBROM 2.15 or CBROM 2.19 – A tool to add, edit or exchange the components of an Award Modular BIOS. The tool is needed to edit and exchange ACPI digital byte-code table.
  2. MODBIN6 2.01.01 – Used to modify the Award Modular BIOS strings or options. The tool is needed to modify Award core BIOS module, as CBROM is unable to edit the BIOS module.
  3. WinHEX – A popular HEX editor used to modify content in the ACPI table.
  4. HWDirect – An advanced low-level hardware register access software tool for Windows, used to dump the memory contents.

New: Virtual BIOS simulator for Windows Vista OEM activation without actually modify BIOS.

If you need help in modifying BIOS for activating Vista, check out this thread.

Part 1 – Modify BIOS to Add in SLIC Table

  1. Create a temporary folder (Vista or BIOS is you like) at root directory (C:\)
  2. Download CBROM 2.19, MODBIN6 2.01.01 and WinHEX with download links above, and place them in the temporary folder.

    Vista OEM Crack

  3. Extract your motherboard BIOS image with name in the format of XXXXXXXX.bin (if the BIOS image name is not with .bin extension, rename it) to the temporary folder by using tool like WinFlash. The easy way is to download the corresponding BIOS file which intended for flash BIOS upgrade from motherboard manufacturers’ websites.
  4. Run modbin6.exe by double clicking on it.
  5. Select the BIOS image file at the MODBIN6 menu.

    MODBIN Vista OEM Crack

  6. Do not close the window of MODBIN6. Now go to the File Explorer for the temporary folder, you will notice that some more files have been created. Among them, ORIGINAL.BIN is the one that needs to be modify.

    Vista OEM Crack

  7. Launch WinHEX and open ORIGINAL.BIN.
  8. Search for the string of “RSDT” (without quotation marks). If you only find RSDTFACPDSDTFACS string, there is no ACPI tables that you can changed, so the only way is to add in SLIC instead of replacing. Anyway, note down and remember the reference address to the starting location of ACPI descriptor tables string (example in this case is D0E0). In this case, there are 2 options:

    ACPI strings in BIOS

    1. There is 4 or more blank (00 HEX value) in front of RSDT. In this case, move the whole string of RSDTFACPDSDT forward 4 position (left FACS intact unmoved). After moving, add in SLIC at the blank space leftover by moved string (should be right after moved string). Note down and remember the starting position of ACPI index string in HEX, i.e. D0DC in this case.

      Add SLIC by moving ACPI string
      Example of moving the ACPI string, by typing again the exact string that needs to be moved starting from earlier position.

    2. If there is not enough free blank space in front of RSDT, the whole ACPI tables index string can be moved to the blank unused space after that particular block of code. Search and locate a blank or free block in BIOS looks something like this, (example below show the free block starting from address of 0000E1E0), which has a block of empty unused value that can be written:

      Free blank space in BIOS

      Then, copy and paste and whole ACPI index string with SLIC (RSTDFACPDSDTSLIC with HEX value of 525344544641435044534454534C4943 to the free blank region in the BIOS found above. Note that you have to “paste”, which mean overwrite the existing “FF” code instead of add or insert, as no new digits or characters should be added. You can leave the existing ACPI string (RSTD…….) at original location intact or replaced with “00″ or “FF” (both ignored bits is same to fill blank unused space), as the string at original location will no longer be used. Note down and remember the starting location of ACPI index string in HEX, i.e. E1E0 in this case.

      ACPI strings in new location
      ACPI tables index string in new BIOS location (for example)

  9. As the starting reference address or namespace location for ACPI tables index has been changed, so the reference pointer to the ACPI location has to be changed too. Go back to the original position of ACPI string (in this example is at D0E0). From there, search for HEX string of E0D0 (note the reserved position for D0E0 when called in pointer).

    BIOS Pointer to ACPI

  10. Edit and change the E0D0 to DCD0 or D0E1 (depending on which scenerio you used above) or any other starting location you choose (always reverse the location address you found at the offset).
  11. A little bit in front or above the line, there should be the HEX bits of B903 which indicates to system ACPI tables or segments the string contained and should be read to memory space. If your system has more ACPI tables, this value will be different (B903 for 4 tables, B904 for 5 tables and so on). Change it to B904 or your value added by 1.

    Modified BIOS with SLIC
    Modified BIOS after adding in SLIC table into ACPI and correcting the reference pointer to ACPI location.

  12. Save the modified BIOS with WinHEX.
  13. Switch to MODBIN6 window, press F2 to save or click on File, then select Save.

    Save BIOS for Vista

Note that FACS has a fixed location that cannot be modifiable.

Part 2 – Modify BIOS ACPI Table

  1. Open command prompt by type Cmd in Run. Change directory or folder to the temporary folder if need to.
  2. Type “cbrom219 XXXXXXXX.bin /acpitbl extract” (without quotes, with XXXXXXXX.bin the filename you choose, normally acpitbl.bin) and press Enter. You can also use awdbedit.
  3. Press Enter again when prompted for an extract file name to use the default name of acpitbl.bin.
  4. Use WinHEX to open acpitbl.bin (or whatever file name that you choose).
  5. Search for “RSDT” string (without quotes).
  6. At the end of RSDT table byte code block, just before the string of FACPt (or FXCPt for certain Gigabytes mobo), insert or add 4 bytes (00 00 00 00) to represent SLIC table. You can press Ctrl-0 keyboard shortcut for insert dialog box. Code after it will be pushed backward. Remember this location of SLIC.
  7. The byte right after RSDT represent the length of the RSDT table. It needs to be added by 4 in hexadecimal mode. For example, if existing byte is 28, after plus 4 it will be 2C.

    Modified ACPI with SLIC

  8. The OEMID and OEMTableID is the identifier string for SLP 2.0 that has to match with the product key, and thus has to edit to match according to the OEM product key and certificate that you have. OEMID has 6 characters, and OEMTableID has 8 characters. Each hardware manufacturer will have their own identifier here. So if you value your desktop or laptop computer brand, you need to figure out the correct value for it. However, if you’re using generic mobo, you can locate the string of “RSDT,…..XXXXXXXXXXXXXXX.0BAWRD” (without quotes, your BIOS string may be different), with RSDT,….._ASUS_Notebook1.0BAWRD. Here, the OEMID is _ASUS_ and OEMTableID is Notebook. Any empty character should be filled with blank (0×20). This will make your motherboard and BIOS to be recognized by Vista as ASUS mobo.

    Modified BIOS with SLIC and OEMID

  9. Save the file.
  10. Download Asus OEM acpislic.bin.
  11. Go back to the command prompt, type the following commandcopy acpitbl.bin /b + acpislic.bin /b acpitbl.bin /bPress Enter when done to add the SLIC table contents to end of ACPI module. acpislic.bin is digital certificate for SLIC which contains SLP certificate public key and SLP marker/logo. Press Enter to confirm if prompted warning of file overwrite.
  12. Update the modified ACPI digital module into the BIOS by entering following command in the Command Prompt, and then press Enter:cbrom219 *.BIN /acpitbl acpitbl.bin
  13. Flash and update your BIOS with the SLIC-included modified version. Check your motherboard guide for how to do it.a
  14. BIOS update is completed. If you’re using Everest to check the tables of ACPI, you will notice that SLIC is not included yet. This is due to the corresponding memory address space or namespace is not added. Memory address space for SLIC has to be manually added. For this, we need to download and install HWDirect.
  15. Launch Everest, expand the Motherboard section, then select ACPI. On the right pane, select RSDT, the determine the value of Memory Address. In this example, it will be 1FFF3000h.
  16. Launch HWDirect.
  17. Key in the memory address found from Everest in the first Physical Address (Hex) field. Size (bytes in Hex) set to the size of acpitbl.bin (2800 or above). And then click on Dump button to dump the memory to a file.
  18. In the memory dump pane, search and locate SLIC or SLICv string. Note down and remember the physical memory address or offset of SLIC or SLICv (locate in front of the memory dump result). In this example, the memory address for SLIC is 1FFF5500.

    Memory Address of SLIC

  19. If you haven’t close the WinHEX window, switch back to it. Else run WinHEX again and open acpitbl.bin.
  20. Go back to the location (4 bytes of 00) we added in step 6 (figure in step 7). The ACPI table needs to be modified to set the memory address of SLIC.
  21. Input the memory address space of SLIC into the previously added space and replace the existing value of 00 00 00 00. The memory address space value has to be entered in reverse order with 2 unit as a group. For example, for 1FFF5500, enter as 00 55 FF 1F.
  22. Save the modified acpitbl.bin.
  23. Update the modified ACPI tables into the BIOS again with the following command:cbrom219 *.BIN /acpitbl acpitbl.bin
  24. Flash the modified BIOS to the system ROM.
  25. Check if SLIC table is listed in Everest’s ACPI module, together with correct OEM ID (_ASUS_) and OEM Table ID (Notebook). Verify also they’re the same with the values in RSDT table.

Part 3 – Install Windows Vista and Signed OEM Certificate

  1. Install Windows Vista with the following ASUS computer OEM product key:

    Home Basic: 2WP98-XXXXX-XXXXX-XXXXX-XXXXX
    Home Basic: 762HW-XXXXX-XXXXX-XXXXX-XXXXX
    Home Premium: BH626-XXXXX-XXXXX-XXXXX-XXXXX
    Home Premium: 8XPM9-XXXXX-XXXXX-XXXXX-XXXXX
    Business: 72PFD-XXXXX-XXXXX-XXXXX-XXXXX
    Ultimate: 6F2D7-XXXXX-XXXXX-XXXXX-XXXXX

    You can also change your existing Windows Vista product key by using the following command in command prompt with administrator privileges:

    slmgr.vbs -ipk <new product key>

  2. Download oemcert.xrm-ms, the Microsoft signed OEM certification for ASUS computer which has the identifier that needs to match the BIOS SLIC identifier, preferably to C:\ root.
  3. Open a command prompt and type the following command, then press Enter:

    slmgr.vbs -ilc C:\oemcert.xrm-ms

    This will install the digital certificate for OEM activation.

  4. Check your system properties, Windows Vista should be activated.

Further refined way to modify BIOS to emulate as OEM BIOS with dynamic memory address allocation for SLIC table.

You can also find list of already modified BIOS that supports SLIC here.

Warning: Alteration to BIOS may invalidate warranty, cause computer to unable to boot up or other irrecoverable effect. Do it at your own risk.

Disclaimer: This article is for information and educational purpose only.


117 Responses to “Improved Way to Add SLIC (SLP 2.0) Table into BIOS ACPI to Activate Windows Vista OEM”

Pages: « 5 4 [3] 2 1 » Show All

  1. bobafett
    March 4th, 2007 19:16
    75

    For some reason I can’t open my BIOS file in MODBIN6. If anyone would be willing to help me out here I’d greatly appreciate it. :)

    I prefer doing the hard-coded fix as opposed to the PARADOX fix to avoid any driver patch that Microsoft might issue in the future.

    If no one feels like creating the file for me, could you at least show me how to open it with MODBIN6? Thanks.

    This is the BIOS file:
    ftp://ftp.work.acer-euro.com/notebook/aspire_3000_5000/bios/3a32.zip

  2. bwhsh8r
    March 3rd, 2007 22:12
    74

    Im going to give the a8ale compaq mobo a try later today maybe.

  3. SLIC Table (SLIC.BIN or ACPISLIC.BIN) BIOS File for OEMs Download » My Digital Life
    March 3rd, 2007 16:58
    73

    [...] a Sony, HP or Lenovo (IBM ThinkPad) OEM product, at least so when during activation? You can patch or mod your computer or motherboard BIOS to use any of the OEM brand in the market, provided you know the correct and valid OEM ID, and has [...]

  4. Greg
    March 3rd, 2007 06:11
    72

    Hellz yeah! Couldnt find ACPI info in my everest, but it worked flawlessly!

  5. Windows Vista No Activation OEM ID for Various Manufacturers » My Digital Life
    March 3rd, 2007 02:28
    71

    [...] you intend to modify your BIOS physically and hard code the SLIC table content and data into ACPI section so that it’s SLP 2.0 [...]

  6. Windows Vista OEM Activation Crack (vstaldr) without Modify or Flash BIOS » My Digital Life
    March 2nd, 2007 13:13
    70

    [...] tired or scared of modifying motherboard or computer BIOS to get instant Windows Vista activation ala OEM edition preinstalled in branded machine? Now you [...]

  7. bob
    March 2nd, 2007 04:37
    69

    Anyone got a little more specifics on how to do DELL Bios’s? I have a couple Optiplex GX620’s and GX280’s that can handle Vista

  8. poid
    March 1st, 2007 20:47
    68

    hay guys seen alot of gigabyte boards on here anyone care to do the gigabyte k8ns ultra 939 heres the link to the bios on there site http://america.giga-byte.com/FileList/BIOS/motherboard_bios_ga-k8nsultra939_f10.exe id prefer the dell install but asus or acer would be fine cheers poid

  9. alen
    March 1st, 2007 20:45
    67

    I’ve tried with NF7-V(internal lan removed model from NF7), and in my case, the string is ‘RSDT FACP DSDT APIC FACS’.

    I turned this to ‘RSDT FACP DSDT APIC SLIC FACS’ and followed your instructions, but no ‘SLIC’ string shows in my memory dump table. (I tried at address 5fff3000 to next 20000 bytes.)

    Shall I try the string like ‘RSDT FACP DSDT SLIC!!!! APIC FACS’?

    Please, give me some advice.

    Thanks for your sharing.

  10. S9
    March 1st, 2007 18:10
    66

    Hi Again
    I am want to this patch on my compaq N410c evo laptop. But can not open the HP OEM bios file. I think its a Phoenix bios but using the Phoenix Pro editor I just get the message ‘BCPSYS not found’ error message when i try to open the bios file ‘ROM.BIN’. Am i using the wrong bios editor or worse is it not possible to edit a HP laptop OEM bios?

    Any help or advice you guys can give would be really appreciated.

    thanks
    S9

  11. sagem
    March 1st, 2007 15:41
    65

    for eny one that has a acer
    i will be posting a oem vista ultimate dvd iso up soon keep a look out for it on http://www.thehotfix.net.
    this will be a oem dvd for acer and im hopeing all the rest as well only if i can get my hands on some hp motherboards and dell as well

  12. Diamond
    March 1st, 2007 11:23
    64

    Thanks JOE very much…Now I activated Vista Ultimate!!!

    Here my Gygabyte 8IPE1000 PRO2 F10 BIOS working with activate Vista
    http://giahung.googlepages.com/8IPE1000PRO2F10.zip

    Thanks again JOE

  13. S9
    March 1st, 2007 08:54
    63

    forgot to mention the system that i performed this on has only 512mb physical RAM installed running at dual channel. I read somewhere, people saying it may not work on any system with less than 1024mb installed, well it disproves that theory at present as its working great.

    Also for those that care I used a Retail copy of the Windows Vista DVD and it loaded the Asus OEMLIC and key no problem.

    Sorry to keep posting but I hope this helps some people
    S9

  14. S9
    March 1st, 2007 08:34
    62

    Hi chris i notice you have the same prob I did.
    this is what I did. At instruction #12 i flashed the acpitbl to a copy of my original untampered mobo bios i.e. type in command prompt: cbrom219 XXXXXXXX.BIN /acpitbl acpitbl.bin

    (XXXXXXXX.BIN represents a copy of your original mobo bios file that has not been modified)

    Then re-perform steps 4 to 9 using the bios you just inserted acpitbl into.

    I hope this helps

    S9

  15. S9
    March 1st, 2007 08:22
    61

    Hi Guys,
    This guys a genious it worked! I now have an activated Ultimate on my GA-8KNXPv2 mobo.

    I got stuck on #12 also (see my previous posts) However, I used my original untampered bios to flash the acpitbl to first, then went back and modified the bios containing the new acpitbl as in instruction #1. Then saved it. Then checked everything was modified correctly then flashed bios.

    hope this helps

    S9

  16. Chris
    February 28th, 2007 18:55
    60

    As for step 12. I need help. the *.BIN dose not work for me. I don’t think it likes wildcards, I tried the xxxx.bin (name of my original bios) but no luck just give a weird 37% message. *.bin gives error cannot find file.

    Update the modified ACPI digital module into the BIOS by entering following command in the Command Prompt, and then press Enter:cbrom219 *.BIN /acpitbl acpitbl.bin

    Any help so close.

  17. Steve
    February 28th, 2007 12:15
    59

    Help please. I have tried unsucessfully for five days now to crack this sucker. Keeps going into reboot. Anyone get it right yet? Gigabyte GA-8PE667 Ultra. Any help would be appreciated. Thanks.

    http://www.gigabyte.com.tw/Support/Motherboard/BIOS_Model.aspx?ClassValue=Motherboard&ProductID=1425&ProductName=GA-8PE667%20Ultra

  18. Peter
    February 28th, 2007 11:23
    58

    I have finished successfully. Here’s my instructions for details.
    http://rapidshare.com/files/18645897/windows-vista.rar.html

  19. S9
    February 28th, 2007 10:19
    57

    Help!! when i follow instruction 12 to add the modified acpitbl to the *.bin file i get the message file not found! so I change *.bin to my bios saved named file i.e. 8knxp2.bin, the procedure then seems to work and I get a message adding acpitbl 38.6%, the system keeps going and I notice the bios file has grown to over 4GB!?! I must be doing something wrong but what?

    Any Ideas please?

    cheers
    S9

    for some reason I end up with a bios file

  20. S9
    February 27th, 2007 19:30
    56

    I am in the middle of working out My Gigabyte 8KNXPv2 Bios has anyone done one of these before, please?

    Also, having probs with extracting ACPITBL, Cbrom in cmd prompt does not give me an option to save file. I type in the dos command and hit enter then nothing elase happens it just goes to cmd prompt again?

    Any ideas, please?

    cheers

    S9

  21. JOE
    February 27th, 2007 03:01
    55

    @Diamond: In ur original.bin the new reference pointer to the ACPI location must be DB0C! (reverse OCDB). It is missing!!!. Try again from start with ur original bios! Delete all old files to avoid confusing. Since u have overwritten the original pointer (DB10 reverse 10DB), i can´t fix it! Read step9 and 10 carefully.

  22. Diamond
    February 26th, 2007 11:51
    54

    @JOE: I try again but the same result here :(
    I think the BIOS was not applied…When I dump in step 17 (Part 2) I found that the BIOS was not edited…It showed GBT AWRDAC, but it maybe _ASUS_Notebook?

    Here is my demo
    http://giahung.googlepages.com/Demo.swf

    and my original.bin and acpitbl.bin file
    http://giahung.googlepages.com/Fileaftermod.zip

    Thanks again JOE

  23. Marcelo
    February 26th, 2007 03:51
    53

    Ok, I’ve opened my Asus K8N AMI BIOS with AMIBCP, what now?? Where do I write something??

  24. Marcelo
    February 26th, 2007 03:21
    52

    Hey, I have a Asus K8N with AMI BIOS, can someone help me?? I could not do Step 5, it said “!! BIOS Version not 6.0 !!”, plus the BIOS comes from Asus website as a .rom…

    Help patching it would be greatly appreciated!!

  25. JOE
    February 26th, 2007 01:15
    51

    @Diamond
    I think u missed to set the new reference pointer to the ACPI location. Step9.
    Try again from beginning, slowly!

Pages: « 5 4 [3] 2 1 » Show All

Leave a Reply

You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Subscribe to comments feature has been disabled. To receive notification of latest comments posted, subscribe to My Digital Life Comments RSS feed or register to receive new comments in daily email digest.
Custom Search

New Articles

Incoming Search Terms for the Article

what is SLIC - slic - slic table - windows 7 slic - add slic to bios - vista slic - slic vista - slic bios - acpi slic - add slic table to bios - slic windows 7 - SLP 2.0 - slp bios - BIOS SLIC - slic gigabyte - gx280 slic 2.1 - how to add slic table in bios - no slic table - the slic table in your bios is unknown - bios slp - modify bios slic - Motherboard slic - modifing bios slic - oem slic - slic oem - slp slic - how to add slic to bios - bios modify slic - phoenix bios slic - edit awardbios oem - optiplex gx620 slic 2.1 bios - add slic table - how to slic bios - MODBIN6 2.01.01 - everest bios - how to check slic version - slic check - HP BIOS ROM.bin Extract - cant find slic table - intel bios slic - mod bios slic - gx620 slic 2.1 - vista slic 2.0 - BIOS SLP extraction - How to Slic my Intel MotherBoard - add slic tables to bios - gx280 slic - what is slic? - windows 7 slic bios - gx620 how to update slic 2.1 -