Часовой пояс: UTC + 3 часа




Форум закрыт Новая тема / Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней. Закрыто  Сообщений: 224 • Страница 8 из 12<  1 ... 5  6  7  8  9  10  11  12  >
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 

Member
Статус: Не в сети
Регистрация: 01.06.2003
Откуда: Pskov
Выложил небольшой набор утилиток двухлетней давности для выдергивания информации об ACPI из реестра винды и преобразования ее при помощи интеловского компилятора в ASL-код.

ACPI_from_REGISTRY_to_ASL.rar

Цитата из !info.txt
Цитата:
WINDOWS REGISTRY => AML code => ASL code
----------------------------------------

"Программный комплекс" :) предназначен для получения информации об ACPI
из реестра Windows2K/XP и преобразованиия ее в удобоваримый ASL код.

Нужно лишь запустить !aml2asl.bat на подопытном компьютере.

Использован интеловский (де-)компилятор iasl.exe.
Его новую версию при необходимости ищите на сайте Интела.

---
(C) 2004 xKVtor :)


Для тех, кто не совсем понимает о чем речь: в итоге должно получиться нечто подобное:

#77

Этот архив -- своего рода приложение к следующим моим записям:

Прививаем PowerNow! десктопным материнским платам
Вывод на POST-индикатор температуры проца средствами операционной системы.
Обустраиваем 'Термальную зону' (_TZ)

_________________
ПС: [13-06-2006] Идеальный скриншот BIOS'а ? Запросто ! // K.V.



Партнер
 

Advanced member
Статус: Не в сети
Регистрация: 30.08.2003
Откуда: Санкт-Петербург
xerius
Цитата:
А в чем разница между SataRAID и SataLink?

SATARAID = 3112 и пр. (3114, 3152 итд) с рейдовым БИОСом
SATALink = 3112 и пр. с нерейдовым БИОСом.
Цитата:
Народ, может кто подскажет тулзу, которая по VendorID/DeviceID определяет номер PCI шины, устройства и функцию? Желательно простую, для коммандной строки и в лог писащую.

э-э-э... тяжко. Обратную задачу (вывести список дивайсов с VenID/DevID или инфу по конкретному у-ву) - без проблем. Так что пока придется перебирать ручками. Либо можно воспользоваться какой-нить утилитой вроде PCI32, а потом делать поиск по ее логу...
Добавлено спустя 2 минуты, 52 секунды
SweetLow
Цитата:
Кстати, может у кого SiI3112 в режиме SataLink (ATA, а не RAID контроллера) есть, как именно он идентифицируется в системе (Class/SubClass/Program Interface значения) и работает ли на стандартных (ATAPI.SYS) драйверах?

контроллер такой был, но но стандартных дровах он не работал.

_________________
{:€ дед в законе :-) нородный окодемег
почетный пользователь OpenSuSE 11.3
Ремонт и модернизация ноутбуков IBM (Lenovo) ThinkPad


 

Member
Статус: Не в сети
Регистрация: 01.06.2003
Откуда: Pskov
SweetLow писал(а):
Если можно, глянь.

ClassCode=01/80/00

Подробности:
Код:
    00 01 02 03 04 05 06 07   08 09 0A 0B 0C 0D 0E 0F
-----------------------------------------------------
00: 95 10 12 31 07 00 B0 02 │ 02 00 80 01 08 20 00 00
10: 01 C4 00 00 01 C8 00 00 │ 01 CC 00 00 01 D0 00 00
20: 01 D4 00 00 00 00 00 DD │ 00 00 00 00 95 10 12 31
30: 00 00 00 00 60 00 00 00 │ 00 00 00 00 0A 01 00 00
40: 02 00 00 00 5A 20 2C 36 │ 00 00 00 00 00 00 00 00
50: 00 00 00 00 00 00 00 00 │ 00 00 00 00 00 00 00 00
60: 01 00 22 06 00 40 00 64 │ 00 00 00 00 00 00 00 00
70: 00 00 00 00 00 F0 35 03 │ 00 00 00 00 98 F3 35 03
80: 22 00 00 00 22 00 00 00 │ 00 00 00 00 DE 29 F2 DB
90: 00 FC 01 0D FF FF FF 17 │ 00 00 00 19 00 00 00 00
A0: 01 60 15 65 DD 62 DD 62 │ 92 43 92 43 00 00 09 40
B0: 01 60 15 65 DD 62 DD 62 │ 92 43 92 43 00 00 09 40
C0: 84 01 00 00 00 00 00 00 │ 00 00 00 00 00 00 00 00
D0: 00 00 00 00 00 00 00 00 │ 00 00 00 00 00 00 00 00
E0: 00 00 00 00 00 00 00 00 │ 00 00 00 00 00 00 00 00
F0: 00 00 00 00 00 00 00 00 │ 00 00 00 00 00 00 00 00


SweetLow писал(а):
А по реализации - это самый обычный PCI ATA контроллер, как я уже убедился, хе-хе. Собственно говоря, это по ресурсам, которые девайс запрашивает, можно было предположить.


Проводил похожий эксперимент с Si0680A. Сменил код класса на 01/01/85.
Винда радостно нашла стандартный контроллер, установила для него драйвера. Но подключенный к контроллеру сидюк так и не определился. Что-то здесь не то...


Root писал(а):
SATALink = 3112 и пр. с нерейдовым БИОСом.
... или без биоса вообще.

xerius писал(а):
Я тут надыбал еще тулзу для смены регистров. HWDIRECT
Прога интересная. Жаль только, что шароварная.

_________________
ПС: [13-06-2006] Идеальный скриншот BIOS'а ? Запросто ! // K.V.


 

xKVtor
xKVtor писал(а):
Прога интересная. Жаль только, что шароварная.

качаешь помощь от другой версии которая прекрасно пашет. Помощь ищешь в инете.
По поводу первой статьи хочу сказать пару слов: относительно Si0680 - изменил проверил работает. Решил сделать "полуавтомат" для проверки - каково было удивление когда получился сразу "автомат"! Ничего не менял в приоритетах, сразу все пошло, даже и не знаю почему, WPCRSET далеко внизу со своим n/a тегом, хотя я дрова старые не удалял на контроллер может в этом дело.
Отредактировано модератором: Dron`t. Дата: 04.13.2006 0:17


 

Member
Статус: Не в сети
Регистрация: 14.04.2003
Откуда: Минск, Беларусь
xKVtor
Спасибо.

xKVtor писал(а):
Проводил похожий эксперимент с Si0680A. Сменил код класса на 01/01/85.
Винда радостно нашла стандартный контроллер, установила для него драйвера. Но подключенный к контроллеру сидюк так и не определился. Что-то здесь не то...

Вообще то по докам 01/01/85 - это совершенно стандартный режим функционирования для 0680A. Его даже аппаратно можно в такой режим установить согласно даташиту.
Добавлено спустя 37 минут, 23 секунды
P.S. Не мог бы ты даташит на SiI 0649 выложить? А то что-то по ссылке он недоступен и в сети не находится.

_________________
"Помогите, 20 беспроводных мышей общаются сквозь стены!"
--- SweetLow ---


 

Member
Статус: Не в сети
Регистрация: 01.06.2003
Откуда: Pskov
oposssum
oposssum писал(а):
каково было удивление когда получился сразу "автомат"!
Псевдоавтомат обсуждался здесь :)

SweetLow
SweetLow писал(а):
P.S. Не мог бы ты даташит на SiI 0649 выложить? А то что-то по ссылке он недоступен и в сети не находится.
Прямые ссылки ни на файл, ни на страницу, с которой он скачан, не работают. :(
Надо с самого корня сайта начинать.

Поэтому выложил даташит на SiI0649 на своей ПС: SiI-DS-0066-B_649_.pdf (1,7Мб)

SweetLow писал(а):
го даже аппаратно можно в такой режим установить согласно даташиту.

Ты про это:
Цитата:
Pin Names: JP
Pin Numbers: 80
IDE Configuration Jumper Pin.
JP Pin CONFIGURATION

0 RAID Class, PCI Class Code = 010400h
1 IDE Class, PCI Class Code = 010185h


Надо будет поразбираться как-нибудь...

_________________
ПС: [13-06-2006] Идеальный скриншот BIOS'а ? Запросто ! // K.V.


 

Member
Статус: Не в сети
Регистрация: 14.04.2003
Откуда: Минск, Беларусь
xKVtor писал(а):
Поэтому выложил даташит на SiI0649 на своей ПС

Спасибо.

xKVtor писал(а):
Ты про это

Ага.

_________________
"Помогите, 20 беспроводных мышей общаются сквозь стены!"
--- SweetLow ---


 

Братцы! Может кто подскажет? Я решил в своем St-Lab A142 на Sil680 номенять ПЗУ OTP EEPROM на флэшку. Ну все сделал, панельку припаял, флешку поставил, перешил - работает. Ну этого же всегда мало :-) Хочется же еще и БИОС переделать. Ну по крайней мере заменить DeviceID. Я в винхекс посмотрел, комбинация 8006h там 10 раз в прошивке встречается (прошивка b3210.bin). Из них 6 раз вместе с VendorID. Ну я по глупости своей поменял все DeviceID (решил, блин, что этого достаточно) Но девайс как определялся 0680, так и определяется :-( Я на rom.by читал, что контроллер эти данные из БИОСа своего берет. Оказалось нет. Может кто ковырялся с БИОСом. Подскажите, че делать?


 

nForce4 vs StarForce случайно не рассматривался?


 

Member
Статус: Не в сети
Регистрация: 01.06.2003
Откуда: Pskov
Закинул на ПС слегка модифицированные драйвера для SiI0680 под DeviceID=0687 (50Кб).

Перед установкой весьма желательно удалить предыдущие модифицированные, ссылка на которые есть в статье "SiI vs Starforce".

Главное преимущество новой редакции перед старой: официальный драйвер и новый модифицированный могут одновременно сосуществовать в системе.

-=STAS=-
-=STAS=- писал(а):
nForce4 vs StarForce случайно не рассматривался?
Нет пока. :)

_________________
ПС: [13-06-2006] Идеальный скриншот BIOS'а ? Запросто ! // K.V.


 

А по моему вопросу никто не знает? Что на форуме нет знатаков ассемблера? Давайте скинемся по 50WMZ, найдем программера который на хардварном уровне, путем патча прошивки, решит проблему смены DevID. Я конечно в ассемблере дуб, но думаю так, если даже DevID определяется комбинацией резисторов (иногда так делают) то ведь можно перенаправить запрос на определение DevID в пустое место прошивки, вписать туда нужные данные, а затем продолжить выполнение кода. Извиняюсь, если сморозил глупость :-)


 

Member
Статус: Не в сети
Регистрация: 01.06.2003
Откуда: Pskov
xerius

Я не знаток ассемблера, но кое-что у меня получилось. :)

BIOS_0687_MOD_for_SiI0680A.rar

Цитата:
ВСЕ ОПЕРАЦИИ НЕОБХОДИМО ПРОИЗВОДИТЬ ТОЛЬКО В D O S !!!


ПРЕДУПРЕЖДАЮ!

Я не гарантирую 100% работоспособность системы после перепрошивки!

Все, что Вы делаете -- Вы делаете на свой страх и риск!

Я снимаю с себя всякую ответственность за возможные последствия!


================================================================


ЗАЧЕМ ЭТО ВСЕ НУЖНО ?


Прочтите http://people.overclockers.ru/xKVtor/record16

Если не поймете, о чем там речь,
то мой Вам совет -- лучше не беритесь за все это. :)



Файл SI0687_R.rom содержит код, который будучи прошит
во флэшку IDE-контроллера SiliconImage SiI0680A,
при загрузке системы на этапе POST
изменяет его конфигурационные регистры

DeviceID и SubSystemID c 0680h на 0687h.

После прошивки SI0687_R.rom для контроллера потребуется
установить драйвера из папки DRIVERS.687.

Кроме того, после прошивки SI0687_R.rom IDE-контроллер будет вести себя так,
как будто у него нет биоса :)



Поэтому ВНИМАНИЕ!


После прошивки SI0687_R.rom все подсоединенные к
контроллеру IDE-устройства не будут определяться под ДОС!

Так же с них невозможно будет загрузить операционную систему!

RAID, если он был настроен, перестанет функционировать!



КАК ПРОШИТЬ-ТО ?


Командная строка для прошивки:

UPDFLASH.EXE SI0687_R.rom



ЗАЧЕМ НУЖНА ПАПКА UNDO ?

Папка UNDO нужна для того, чтобы произвести обратную
прошивку биоса на оригинальный (смена ID с 0687h на 0680h)

После запуска и выполнения UNDO.BAT будет прошит оригинальный IDE-шный биос.

---
xKVtor, apr 2006

_________________
ПС: [13-06-2006] Идеальный скриншот BIOS'а ? Запросто ! // K.V.


 

xKVtor Спасибо. Сейчас попробую. О результате отпишу.
Добавлено спустя 1 час, 18 минут, 4 секунды
xKVtor Еще раз ОГРОМНОЕ СПАСИБО!!! Все работает. Проверил на игре, которая 680тый в лицо знает, точнее знала :-)
Нам, пытливым умам, хотелось бы поподробней узнать о том как это было сделано. Я глянул в новую прошивку... По сути ее и нет. Я так понимаю там только осталась инициализация девайса и код смены регистров. Какие дальнейшие планы? Я думаю так:
1. Нужно этот код внедрить в стандартную прошивку, дабы все фичи контроллера работали.
2. Написать софтину, которая бы позволила автоиатом патчить дрова и прошивку на нужный DEV_ID.
3. Возможность патчить и прошивать под Вынь.
Ну по пункту 2 я попробую сам с помощью "HiAsm" www.hiasm.com (прога для написания прог без знаиия программирования)
В остальном, к сожалению, могу быть только тестером :-(
Добавлено спустя 1 минуту, 24 секунды
Кстати. Ком. строка при прошивке должна быть такой "updflash SI0687_R.rom –a -ID680"
Добавлено спустя 1 час, 23 минуты, 9 секунд
Еще одна тулза меня заинтересовавшая PCIScope
http://www.tssc.de/download/prods/pciscope.exe
Там на сайте много интересных штучек.
Если нужно лекарство на PCIScope, ACPIScope, DMIScope и IRPTrace есть оно у меня :-)


 

Member
Статус: Не в сети
Регистрация: 01.06.2003
Откуда: Pskov
Очередная вымученная статейка :) :

[url=http://people.overclockers.ru/xKVtor/record20]Волшебная антистарфорсовская дискета для SiliconImage SiI0680A,
или Как выполнить свой программный код до запуска Windows, если нет возможности разместить его в BIOS.
[/url]

В продолжение идей CDRU.TK.

_________________
ПС: [13-06-2006] Идеальный скриншот BIOS'а ? Запросто ! // K.V.


 

Junior
Статус: Не в сети
Регистрация: 26.03.2006
Я тоже думал над возможностью выполнения кода модификации регистров до загрузки Windows. Остановился на ntdetect.com. Чем он мне понравился:
1. Выполняется до загрузки ядра Windows, т.е. на этом этапе нет никаких ограничений на выполнение команд IN/OUT.
2. Имеет очень простую структуру - COM файл, т.е. по сути просто кусок кода.
Идею я проверил на практике, добавив к нему 1 Кб своего кода (в основном инструкции NOP) - Windows загрузился нормально. С изменением регистров пока было лень возиться, т.к. насущной необходимости нет, все и с wpcrset работает.
В самом ntdetect.com я по сути менял только адрес в одном CALL, свой код добавлял в конец файла. Структура этого файла одинакова для всех версий Win NT, так что не сложно будет сделать универсальный патчер. Конфигурацию для той или иной системы можно проводить таким же методом - просто добавляя значения регистров в конец файла, откуда наш универсальный код их будет считывать.
В общем, xKVtor, говори если тебе это интересно - тогда попробую сделать законченную версию с модификацией регистров.


 

Member
Статус: Не в сети
Регистрация: 01.06.2003
Откуда: Pskov
Cuddles
Cuddles писал(а):
говори если тебе это интересно - тогда попробую сделать законченную версию с модификацией регистров.

Я думаю, всем интересно. :)

Лично мне идея с NTDETECT.COM очень даже понравилась: не надо биос модифицировать, с дискетами возиться. А в случае возникновения проблем можно просто загрузиться с дискеты или компакта и восстановить оригинальный NTDETECT.COM.

Вот только размер COM-файла, насколько я помню, оганичен 64-мя килобайтами. Учитывая, что размер самого ntdetect.com около 50Кб, остается около 15Кб. Правда, для сегодняшних нужд этого выше крыши. :)
Добавлено спустя 4 минуты, 24 секунды

xerius
xerius писал(а):
Я так понимаю там только осталась инициализация девайса и код смены регистров.

Нет, только код смены регистров. :)
xerius писал(а):
1. Нужно этот код внедрить в стандартную прошивку, дабы все фичи контроллера работали.
2. Написать софтину, которая бы позволила автоиатом патчить дрова и прошивку на нужный DEV_ID.
3. Возможность патчить и прошивать под Вынь.

Как же это все просто на словах-то. :)

_________________
ПС: [13-06-2006] Идеальный скриншот BIOS'а ? Запросто ! // K.V.


 

Member
Статус: Не в сети
Регистрация: 06.07.2004
Откуда: From above...
Статью прочитал, очень интересно, автор молодец, но не понятно одно, как весь этот огород использовать для борьбы с ненавистным СтарФорсом, в практическом так сказать русле, поскольку в противном случае смысл горожения всего этого огорода честно говоря ускользает... есть у кого нибудь какие то соображения в этом отношении ?

_________________
" - Who is "God"?
- You know when you really want something, you close your eyes and wish for it really hard? God is the guy that ignores you..


 

Junior
Статус: Не в сети
Регистрация: 20.04.2005
Откуда: Ростов-на-Дону
Как узнать, какой стоит контроллер на материнке?


 

Member
Статус: Не в сети
Регистрация: 01.06.2003
Откуда: Pskov
Xaarq
Xaarq писал(а):
Как узнать, какой стоит контроллер на материнке?
Интегрированный IDE/SATA-контроллер можно вычислить при помощи CpuZ -- на закладке Mainboard указывается производитель и модель южного моста (southbridge)

Если IDE/SATA контроллер внешний, то достаточно глянуть в Диспетчере устройств.

Nameloss
Nameloss писал(а):
но не понятно одно, как весь этот огород использовать для борьбы с ненавистным СтарФорсом

По-порядку:

1) с ненавистным старфорсом можно бороться путем изменения некоторых PCI-регистров IDE/SATA-контроллеров (внешних и интегрированных) таких производителей, как VIA, SiS, SiliconImage.

2) изменять эти самые идентификационные PCI-регистры можно несколькими способами.

а) вручную в винде с помощью WPCREDIT (это позволительно благодаря тому, что большинство драйверов по ходу работы не отслеживают состояние идентификационных регистров контроллера, с которым они работают).

б) настроить WPCRSET, чтобы при загрузке винды он менял регистры автоматически.

в) этот способ аналогичен предыдущему, но необходимо повысить приоритет драйвера WPCRSET, как описано в статье. В этом случае потребуется использовать модифицированные драйвера для контроллера

г) использовать дискету, которой посвящена последняя статья. В этом случае для SiImage и других RAID-контроллеров (с подклассом=04h) так же придется использовать модифицированные драйвера

д) модифицировать биос IDE/SATA-контроллера, т.е. внедрить в оригинальный биос код, который сам изменяет идентификационные регистры контроллера. В этом случае опять потребуются модифицированнные драйвера.

---
В случаях в) г) д), если контроллер является стандартным (ClassCode=01/01/8x) и его подкласс и программный интерфейс не изменяются, то модифицированные драйвера не нужны.

Теперь насчет огорода.

На сегодняшний день прекрасно работают способы а) и б).

Но старморсовцы не дураки (не знаю, к счастью или к сожалению ;)). Скорее всего, они пасутся в этом форуме (и некоторых других). Поэтому в будущих версиях своей защиты они наверняка попытаются прикрыть лазейки а) и б).

Возможно, они так же попытаются воспрепятствовать способу в).

Но способам г) и д) воспрепятствовать будет очень и очень затруднительно. Собственно, весь "огород" разводится именно по этой причине -- с прицелом на будущее, так сказать.

ЗЫ: Вообще говоря, антистарфорсовская дискета была выбрана лишь в качестве примера.

Кстати, эту дискету с таким же успехом можно использовать и для VIA, и для SiS. Для этих контроллеров, если ограничиться только сменой DeviceID, модифицированных драйверов, как я уже выше упоминал, не потребуется. Нужно лишь добавить новые конфигурационные файлы (*.cfg).

Пример для виашного IDE-контроллера:

VIA_IDE.cfg
Смена DeviceID: 0571h => 5555h
Код:
$1106 ;VendorID
$0571 ;DeviceID
;Reg# Val Mask // Смена DeviceID: 0571h => 5555h
$D2  $55  $FF ;изменяем часть DeviceID
$D3  $55  $FF
$D6  $55  $FF ;изменяем часть SubSysID
$D7  $55  $FF

_________________
ПС: [13-06-2006] Идеальный скриншот BIOS'а ? Запросто ! // K.V.


 

Member
Статус: Не в сети
Регистрация: 14.01.2004
Откуда: Киев, Украина
xKVtor эту идею СФ может загубить касательно интегрированых в южные мосты контроллеров. Они могут просто детектить южный мост, если ЮМ им известен - они точно могут сказать по каким bus, dev, func сидят IDE контроллеры и т.д., и скорее всего так и сделают :-(

_________________
Ку ку


Показать сообщения за:  Поле сортировки  
Форум закрыт Новая тема / Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней. Закрыто  Сообщений: 224 • Страница 8 из 12<  1 ... 5  6  7  8  9  10  11  12  >
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 14


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan