Discussion in 'Windows Vista' started by re*s.t.a.r.s.*2, Oct 30, 2007.
You need to login to view this posts content.
Woho!! I've read your post, I don't have here the tools to check, but some sentences I have to say.......
First: It's great that you've tried to mod your own bios manually I realy appreciate!
There are different tecniques to modify a AMI bios. You tried superstatic v1.
We now do a superstatic v3 which is easier to do.
At a superstatic v1 mod you see at bios.rom file the SLIC with a hexeditor, cause it is inserted uncompressed as a separate module (23).
At SSV3 you have to insert the SLIC INTO the 1B module. The 1B module is replaced in a compressed way, so you never see the SLIC string at bios.rom again!
At SSV3 you always got the same address to call at RSDT /XSDT.
At SSV1 you have to calculate it for each bios!!!
This is right for you:
Best restart again and post detailed questions. I'll help you. I'm not at home at the moment so I cannot use the tools..
AND: Never use parts (modules) of a old bios version and combine them with a newer version. The offsets for addresses to call / jump may be different and it'll end up fatal at almost every case........
Oh thanks Yen , you cleared my mind up now, will read the thread you direct me and see if i can restart the mod again from scratch.....
be back later ok so you can telll if i am wrong again..
Cant understand at all!
The improvement and the differences:
At extracted 1b module find AMIBIOS 0800 string.
The clue is: This string will always be mapped to 0FF400h real address.
Go now 200h backwards and edit any SLIC here into 1b module. (Size of 1b module must NOT be changed)!!!!
The result will be: START ADDRESS OF SLIC IS ALWAYS 000FF200h.
No calculation of address needed anymore, no uncopressed module to be inserted.
Same steps to continue:
Raise RSDT table length byte +4h and XSDT table length byte +8h.
Change both OEM id and OEM table id at RSDT and XSDT to the one you inserted.
Count forward 41 bytes beginning from "R" of RSDT.(R=1) This will be the first byte to insert pointer. Pointer is ALWAYS reversed address of 000FF200h.
Pointer has to be set for XSDT, too. Count forward 45 (41+4 cause it´s 4 bytes longer) beginning from "X" of XSDT (X=1) and insert same reversed pointer, too
Replace 1b module.
Superstatic v3 is done
1.- i found the AMIBIOS 0800 string, now it says go backwards 200h and edit any slic here ( where is the 200h , and i shouldnt have any slic info..)
2.- raise RSDT and XSDT + RSDT+4h and XSDT+8h , where i find thos 4h and 8h's?
3.- i dont have an oem id, (can tell me wich one, i mean ASUS ID)
4.-what pointers? and how do i get to address 000FF200h?
5.- still dont know what pointers and if they between the RSDT and forward counting 41 bytes?
Sorry but i feel like a noob, i am actually, never played with hex stuff, can you help me out Yen.... be right back
PS missing info is on the second page of the tutorial, sorry must read that one again to understand...
You need to login to view this posts content.
I don't have here the tools to check. You are trying hard...go on
A way to learn such things: Download the original and the modified bios of a working AMI mod like this:
Extract at both the 1b module. LOOK at RSDT, XSDT and AMIBIOS 0800 string and SEE what is modified by comparing them. Hint: You used the wrong address to call , it must be 000FF200h. To call it, reverse it: 00 F2 0F 00.
To insert the SLIC copy and paste it at (offset of AMIBIOS 0800 string)-200h address. Offset = relative position in the 1b module.
The (h) means only that this are hex values, nothing more.
I'm sure you'll make it. Almost done.....
I am trying comparing my 1.70 bios that was moded here in this board, and with an untouched 1.80 bios, see what happen now....
Question. if i compare the Moded 1.70 with the 1.80 i see the AMI 0800 string on both i dont see then replaced with the SLIC info , but at the upper level of the AMI 0800 string i see the slic info, why is that?
sorry will try more see you later.
I see the SLIC info beginning from offset F554 down to F6C0, and the AMI 0800 is at offset 754, this is what confuse me the most, cuz you said that you must copy paste the SLIC info at the offset AMI 0800 string,
woot i wait reply... regards
It''s better to compare the same version of a bios (original / mod). It could be that the programmer have made a change at 1b module that'll confuse you.
You have to paste the SLIC into a free area! And it has to be 200h above the AMI 0800 string, always. And the address to call is ALWAYS the same!!!!
This is what I meant as I stated: ".........Go now 200h backwards and edit any SLIC here into 1b module. (Size of 1b module must NOT be changed)"
The AMI 0800 string is for orientation and must be remained.
Do not insert it, overwrite the free bytes!!
Ok when you say go backward 200h you mean count 200 dot starting from the Word A while you go up?
sorry if i sound stupid, but i am new to all this, dont know anything about hexing, thanks YEN regards
No! 200h = 512 Decimal!!
Are you using winhex? Winhex shows you the offset of the cursors' position on the bottom bar. But the values are in hexadecimal. Point on "A" of AMIBIOS 0800 look what's the offset. Use OS calculator in hex mode. Subtract 200h off the offset.
E.g. The offset of "A" is at F7A2. Calculate: F7A2-200= F5A2. This must be the starting position of SLIC to be inserted. Click at offset on lower bar at winhex. Enter the result F5A2, press ok!! Now the cursor is where the "s" of SLIC has to start!!
You don't have to count annoying 512 positions backwards This would suck!!
Human sense of numbers = decimal system. Computer sense of numbers (addresses) here hexadecimal.
1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16...... our system
1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,10,11,12,13,14,15,16..... hexadecimal system
BTW: I did a mistake as well. It's the AMIBIOS 0800 string not the AMI 0800 string lol!!!
I've checked your mod
There is one little thing: OEM ID is _ASUS_
OEM table ID is Notebook. After Notebook you edited the byte "27" to byte "24" (the $ ). This you have done at RSDT and XSDT!!
The string ends with the "k" of Notebook. Your mod works anyway, but is perfect if you would let the original "27" byte. According to ACPI specification it already belongs to the OEM revision byte (the next three bytes as well).
You may flash the mod using AFUDOS or make it perfect..as you want
To calculate the pointer: This belongs to the older superstatic v1 method. SSV1 method doesn't work at AMI bioses with 2048 kbyte.
FOR THE SSV3 METHOD YOU DON'T NEED TO CALCULATE THE ADDRESS CAUSE IT IS FOR EVERY BIOS THE SAME. No matter what size.
Additional info (doesn't belong to the method you've done):
Pointer: 1Mbyte bios: FFF00000 + offset of SLIC at bios (uncompressed, inserted as module 23)
512 kByte: FFF80000 + offset of SLIC at bios (uncompressed, inserted as module 23)
256 kByte: FFFC0000 + offset of SLIC at bios (uncompressed, inserted as module 23)
ALL TO REVERSE!!
I suggest you to stay at SSV3. SSV1 is not needed anymore!
Please report. Have fun!
Thanks Yen i really apreciate....
Now for the byte 27 i copyed and pasted the asus notebooks and there was the 24 so i left it like this....
one thing i see is that the moded 1.70 that wa done here, the 07 was used intead of 27 or 24 why is this? could be of the OEM revision you were talking about?
i will fix the 24 byte to 27 so is perfect...
are you sure this mod would work?
i am really afraid of tring becouse of the death bios i done when i tried myself......
regards be back
I'm sure the mod is right. There is the usual risk to flash a bios, of course.
At 1.70 is "07" at original and mod? Yes this is cause of another OEM revision byte. Load setup defaults after you've flashed the bios.
Holy cow You Made it Yen....
As i said i would change the the byte 24 to 27 on both RSDT XSDT, and then flashed with Afuwin, man rebooted all went fine on POST and logged on Vista
checked with everest and there was SLIC presence, then went to my computers properties and it was activated.....Wohooooo
Now this is so good, i thank you for all this help you gave me, and i apriciate what you done to me.....
No i will start remaking the mod until i feel freely to done some more, after that i will learn the other one, for award.....
Truly Thanks YEN
I'm happy as well!
One more to say: A flash with a dos tool is the safer way. This is my experience.
Glad to help you. Now I'm gonna logout!
All the best!