SLIC table present but not mapped ?

Discussion in 'Windows Vista' started by ramalina, Jan 12, 2008.

  1. ramalina

    ramalina MDL Novice

    Dec 25, 2007
    9
    0
    0
  2. Yen

    Yen Admin
    Staff Member

    May 6, 2007
    11,098
    10,767
    340
    Please upload a complete dump of the SLIC table with your ASUS-SLIC modded bios and tell me the OEM ID and table ID of RSDT, SLIC.
    THIS IS IMPORTANT TO KNOW!! Therefore use AcpiScope, or Everest.

    This is a interesting question! Never tried to add another OEM with pubkey and marker into a ASUS bios.

    Your bios contains NO SLIC data, only the SLIC string and the code to map pubkey and marker if available.

    You can separate each SLIC into its pubkey and marker.
    I'm curious what ID's you have got since this is NO Asus Notebook!!

    Very interesting!!:)


    THX!!
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  3. ramalina

    ramalina MDL Novice

    Dec 25, 2007
    9
    0
    0
    Yen, thanks for your answer.

    I can confirm you that although is a desktop and not a notebook I can succesfully activate Vista with the method mentioned in this forum. The OEM ID and the table ID are "_ASUS_" and "Notebook", both checked with Everest. This is obvious (I may suppose...) since I've used the pubkey and marker posted around here.

    I can even confirm that the method of pubkey and marker works even with non-ASUS SLIC tables. I tested with the same mainboard (M2n-E) that succesfully activate with FUjitsu ones :)

    At last, I've double checked the ACPITBL.bin extracted with cbrom from the original BIOS: of course there's the "RSDT@.XSDT,,.FACPè.DSDTE.OSFR.APICH.SLICà.HPETV.MCFGz.FACPS." string that lists (if I've correctly understood) the tables present in the bios, but there also is an "empty" SLIC table (not sure if it is a REAL slic table) with a dummy OEMID (the same dummy string present in the original RSDT table) and filled with "00" exactly 374 byte long. SLIC table however is not shown in the ACPI section of Everest, and this is why I supposed that the only matter with it is that it was not mapped into memory althoug present.

    again, many thanks for your help!!
     
  4. Yen

    Yen Admin
    Staff Member

    May 6, 2007
    11,098
    10,767
    340
    #4 Yen, Jan 15, 2008
    Last edited: Jan 15, 2008
    This isn't obvious to me! That's why I'm curious. You can separate each SLIC into the 'header', the pubkey and the marker. You can see that when you have a look at ASUS SLIC, ASUS pubkey and marker.

    The OEM ID and OEM table ID are found in the header. So by adding the pubkey and the marker you don't add the OEM ID and the OEM table ID.

    So from where come the 'foreign' ID'S???

    Have you separated the Fujitzu SLIC into pubkey and marker by yourself?
    What OEM ID and Table ID have you got at Fujitzu-mod? (Everest)
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  5. ramalina

    ramalina MDL Novice

    Dec 25, 2007
    9
    0
    0
    Hi Yen,
    I can't provide the tables id of the asus pubkey since my bios now has the fujitsu one, that follows:

    [ RSDT: Root System Description Table ]

    ACPI Table Properties:
    ACPI Signature RSDT
    ...
    Table Length 60 bytes
    OEM ID FSC
    OEM Table ID PC
    Creator ID AWRD

    [ SLIC: Software Licensing Description Table ]

    ACPI Table Properties:
    ACPI Signature SLIC
    ...
    Table Length 374 bytes
    OEM ID FSC
    OEM Table ID PC
    Creator ID AWRD


    YES! I've splitted an original Fujitsu-Siemens SLIC table into pubkey and marker by myself, by trashing the first 36 bit (the "header" I suppose) using Ultraedit, and splitting the remaining part into two, accordingly to the Asus's pubkey and marker lenght. OK, It's not so-scientific method, but it seems to do its work :p

    then I integrate pubkey and marker with cbrom and voilà! the oem strings where there!!! dont ask me why 'cause I'm not an expert but the same thing happened with the Asus's ones. I thought it was as it should be...

    the thing that is interesting to me remains the presence of that 374 bit simil-SLIC table in the ACPITBL... is it possible in your opinion that the slic table is really there in the original bios, with dummy strings and "empty" and not mapped?? adn if yes it would be possible to map it into memory??
     
  6. Yen

    Yen Admin
    Staff Member

    May 6, 2007
    11,098
    10,767
    340
    #6 Yen, Jan 15, 2008
    Last edited: Jan 15, 2008
    I'm stupid:p
    I had a closer look at the marker. There is, beginning at offset Ch, the OEM ID followed by the OEM table ID.
    The code reads them from there and changes them at RSDT / SLIC as well. No matter what OEM!!
    AT acpitbl.bin there is reserved space for the table. The code reads the marker and the key from its modules and copies it. Also it reads the ID's from the marker. The result is a complete SLIC.
    No modules deployed, no SLIC present. So the table isn't really there, but prepared for. (Same is at some AMI bios, table prepared at 1b module, SLIC at FC module!)

    The question is if it would work if you would copy the whole SLIC into the acpitbl.bin module without the use of the additional modules.

    But it's a higher risk to change the order / offsets of the modules. It's not worth trying, but if somebody wants it to I would suggest to extract/release the Minit module and to reinsert it as last step to make cbrom correct the entry point of it. (We had problems some month ago with that module;) )

    Not clear to me is why do you want to map a empty SLIC into memory? Or am I missing something?
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  7. ramalina

    ramalina MDL Novice

    Dec 25, 2007
    9
    0
    0
    Ok, mistery solved! ;)

    I already tried to copy the slic table into acpitbl. pc doesn't boot and I had to recovery my bios (not a real pain however....).

    can you explain a little bit more? I will try...

    I want to map the SLIC table and fill as you suggested with a real SLIC table, to have a bios without addictional modules built in.

    The step I've followed were:
    a) esctract aptitbl with cbrom (cbrom bios.bin /acpi exctract)
    b) fill the empty slic table with a real one
    c) insert back the acpitb with cbrom

    In this way the pc doesn't boot anymore, so I missed something or something was wrong ( I've tried twice the same thing...). Originally I thought that would be sufficient to fill the empty talbe, but obviously I was wrong! So, after further investigation I discovered that the slic table of the original bios was not shown by everest neither as an empty table.
    As you mentioned before, maybe it's something similar to AMI 1b module problem.

    I know that the pubkey & marker solution works, but I'm curios, and if someone can help I would try something different with award bios...
     
  8. Yen

    Yen Admin
    Staff Member

    May 6, 2007
    11,098
    10,767
    340
    #8 Yen, Jan 16, 2008
    Last edited: Jan 16, 2008
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  9. chaddawkins

    chaddawkins MDL Senior Member

    Sep 16, 2007
    343
    63
    10
    How exactly do you split the SLIC into a pubkey and marker? What tool/steps do you use? I'm working with a Phoenix BIOS
    thanks
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  10. ramalina

    ramalina MDL Novice

    Dec 25, 2007
    9
    0
    0
    just do it using ultraedit or any other hex editor and a oem slic table.
    I used for reference, to know where to "cut", the asus ones...