Code: Select all
;--- Interpreting AML ---
Interpret_AML: lods byte [gs:esi] ;Get Lead Byte
cmp al, 0x10 ;10h = SCOPE Operator
jne AML_1
;--- Interpreting 10h=ScopeOp ---
Skip_Pack: mov dl, [gs:esi] ;Get Package Length, byte 0
movzx ebx, dl
and dl, 11000000b
jz Skip_Package
and bl, 00001111b
mov cx, 0x104 ;Offset=1, Shifts=4
call Scan_AML_Local_0
cmp dl, 01000000b
je Skip_Package
mov cx, 0x20C ;Offset=2, Shifts=12
call Scan_AML_Local_0
cmp dl, 10000000b
je Skip_Package
mov cx, 0x314 ;Offset=3, Shifts=20
call Scan_AML_Local_0
Skip_Package: add esi, ebx
jmp Next_AML
данное декодирование не находит _S5_ ввиду
неправильного либо кода 19h либо... либо самого декодирования.
Возможно версия ACPI таблицы старовата, вернее что то типа ACPI v.1.0, не помню...
это старенький ящик, там южник ICH2, это точно.
Так вот думаю, может он, этот байт раньше как то по другому кодировался чтоли...
мало того гугл говорит, что народ мордующийся, проблемами корявого ACPI в ноутах, часто
говорит, что дескать поправьте сами, пропачте Вашу проблему.
Сайтов таких немало и даже специалные ,т.е. специализирующихся на коллекционировании
методов исправления ACPI корявостей. Я не специально это говорю, чтобы очернить.
Я сам в шоке с массой увиденного и прочитанного.
Подумал что с ходу оседлаю ACPI, универсальность...
Похоже ляжет очередным пластом недоделок в мой "личный ящик черновиков"...
Некогда
Нужно думать.
Думать и принимать решение(е) и вообще ограничиться бы "правильным" и нужным сегментом ACPI и не лезть в дебри. Вряд ли кто подскажет. Нужен реальнй опыт на разных чипах и производителях.
Кто бы подсказал что лишнее, что нет, что в перую очередь, а что нет.
Это если делать. А делать никто не хочет.
Все хотят бесплатной халвы и чтобы именно его чипсет работал и пофиг дальше. Факт.
Ладно, дам ссылку про ноуты, может кому и на подобную неприятность откроет глаза
http://habrahabr.ru/blogs/system_programming/128449/
Приятно читать у других то, за что говорил сам (SMI).