Страница 2 из 3

PCI Trident не проходит инициализация.

Добавлено: 11.11.2019,15:45
i8088
Руслан, там же самый настоящий native-Phoenix BIOS, да? Он
довольно капризный, на SAI2 например приходилось бездумно
подбирать положение карт, чтобы просто работало ("конфликт"
исчезал, и устройство не выпадало из PCI space. Причем
"конфликт" может исчезать и при добавлении другой карты.

Южный мост, я думаю точно не виноват. Вообще можно подумать,
как исправить, для начала сделай дамп PCI space с регистрами
устройств, например с помощью той же PCI.EXE, посмотреть
как настроены PCI BAR регистры.

Сейчас пока больше не соображу, что посветовать, голова болит
сильно.

PCI Trident не проходит инициализация.

Добавлено: 12.11.2019,09:46
i8088
Руслан, прочитай PCI BAR регистры нужной карты (10h, 14h, 18h, 1Ch, 20h, 24h),
далее можно для начала попробовать поменять IO BAR на нужный, но следить,
чтобы конфликтов не было. У IO BAR младший бит всегда в 1, это признак IO доступа,
а если там всегда 0 - то memory). Тебе наверно проще всего будет для проверки сделать
изменения в WPCREDIT под W98, а потом перезагрузиться в DOS и убедиться (PCI.EXE),
что адрес поменялся. Не забыть, что у Intel младшие байты первыми идут.

Старшие 16 бит IO BAR всегда в нулях (портов максимум 65536), младший в 1 (но его
нужно понимать как 0!), и часть младших тоже в нулях и не могут быть изменены. Это нужно
чтобы узнать, какой диапазон IO требует карта: пишем в решистр 0FFFFh, и читаем, что
получилось. В считанном значении мысленно обнуляем младший бит, а потом инвертируем
значение и добавляем 1 - получаем диапазон IO, требуемый карте.

Напимер
IO BAR 0xd801h -> базовый адрес 0xd800h

Пишем 0FFFFh, получае 0FFC1h,

Далее 0FFC1h -> 0FFC0h ->(инверсия)0003Fh -> (+1) 00040h -> то есть карта требует 40h адресов(64 байта)

PCI Trident не проходит инициализация.

Добавлено: 12.11.2019,17:12
TWG
rus-если есть в хозяйстве материнки сокет 462,то рекомендую проверить на чипсете N-Force2 ,у меня вот тоже 478 сокет проблемно с ДОСом работает,а материнка Gigabute 7N400 на 462 сокете гораздо лучше.

PCI Trident не проходит инициализация.

Добавлено: 14.11.2019,17:58
Mx_Serg
В общем оно несовместимо программно с 845. Нужен патчинг. Эти дрова шли на таких капризных платах, но, совместимость, как я и предупреждал, будет не очень. Может с PC/PCI что-то выйдет...

Проверялось на промышленной 845 с ISA слотами. BIOS - AWARD. На ней другие платы, требующие DDMA идут без проблем, но там дрова поновее.

PCI Trident не проходит инициализация.

Добавлено: 14.11.2019,23:25
rus
TWG писал(а): 12.11.2019,17:12 rus-если есть в хозяйстве материнки сокет 462,то рекомендую проверить на чипсете N-Force2 ,у меня вот тоже 478 сокет проблемно с ДОСом работает,а материнка Gigabute 7N400 на 462 сокете гораздо лучше.
"Проблемно с ДОСом работает" - что за этим стоит? Если применительно к звуку, то nForce2 не то, что PC/PCI или DDMA, он даже через DSDMA работать не хочет. Какая(ие) 478 материнка(и) проблемно работает и в чём именно? В общем и целом, если привязывать не к чипсету, а именно к сокету, 478 камни все поголовно и без вопросов умеют замедляться для DOS - прощай, ошибка 200 - а 462 камни для этого надо замобиливать, да ещё диапазон доступных множителей от конкретной материнки зависит. Это так, к примеру "проблемности". Так в чём именно проблемно? Мне даже интересно стало.
Mx_Serg писал(а): 14.11.2019,17:58 В общем оно несовместимо программно с 845. Нужен патчинг.
Ну в общем да :), я это понял в первый момент :). Вот уже i8088 мне какие-то подсказки дал, придётся напрягать мозги. Только у меня не 845-ая матерь с PC/PCI, у меня 850-ая. Спасибо, сравню эти дрова со своими, я нарыл две версии, ни одна пока не хочет.
i8088 писал(а): 11.11.2019,15:45 Руслан, там же самый настоящий native-Phoenix BIOS, да?
Нет, это Интел, там самый настоящий AMIBIOS, как они всегда любят.
Я прочитал твои рекомендации самым внимательным образом, даже ожидал прочесть нечто подобное, но всё равно сразу не соображу, не соберу в кучу. Слишком сложно для меня. Но всё равно копаться буду обязательно, не такие задачи решали :) После сборки Core 2 Duo с ISA мне уже ничего не страшно. Большое спасибо за инфу, на след. неделе займусь.

PCI Trident не проходит инициализация.

Добавлено: 14.11.2019,23:30
Mx_Serg
rus писал(а): 14.11.2019,23:25 Если применительно к звуку, то nForce2 не то, что PC/PCI или DDMA, он даже через DSDMA работать не хочет.
Это да. nForce, ATI(AMD) и Intel>8xx - враги "правильной" эмуляции SB на PCI :biggrin: Разве что SB128/Live через EMM может что-то изобразить...

PCI Trident не проходит инициализация.

Добавлено: 14.11.2019,23:38
rus
Mx_Serg писал(а): 14.11.2019,23:30 Разве что SB128/Live через EMM может что-то изобразить...
Неа, без DDMA не может. Ямаха через свой DSDMA резидент может иногда изобразить, ESS Solo-1 через переключение регистров изображает TDMA, иногда удачно. А Криватив - без DDMA никогда! Kamerat с vogons большой глубокий специалист в этих вопросах, а мне так, надо только локальную задачу решить. Я подумал, что очень интересно, в первый раз вижу клон SB16 с возможностью подключения через PC/PCI. Я специально для этой цели купил версию NX на ебее и впаял туда пины SB-Link. Если сработает на Intel D850MV, погоняю на предмет совместимости с DOS играми. По DDMA не интересно, я ожидаю высокую степень совместимости именно по SB-Link, как у Ямахи. Ямаха по SB-Link просто бомба, хотя и всё равно хуже, чем ISA карты.

PCI Trident не проходит инициализация.

Добавлено: 14.11.2019,23:44
Mx_Serg
rus писал(а): 14.11.2019,23:38 Неа, без DDMA не может.
Шото припоминается, что на 945-й (ICH7) я таки 128 заставлял работать. Вот с ULi, VIA и SIS проблем не было вплоть до достаточно продвинутых LGA775/Socket939

PCI Trident не проходит инициализация.

Добавлено: 15.11.2019,00:01
rus
Mx_Serg писал(а): 14.11.2019,23:44 Шото припоминается, что на 945-й (ICH7) я таки 128 заставлял работать.
Нет, исключено. Такого не может быть.
Mx_Serg писал(а): 14.11.2019,23:44 Вот с ULi, VIA и SIS проблем не было вплоть до достаточно продвинутых LGA775/Socket939
Это - да. Если быть точнее, вплоть до VIA VT8237A (возможно, и VT8237R), до SiS964. Про ULi ничего сказать не могу.

Примеры самых крутых плат на VIA, где работает DDMA: ASUS M2V (AM2), ASRock 775Dual-VSTA (775).

PCI Trident не проходит инициализация.

Добавлено: 15.11.2019,00:29
Mx_Serg
Я в своих экспериментах остановился на VT8237A, SiS968 и ULi M1567. На первых двух квады ставил, на третьей - AthlonX2. Там работало точно. Что до 945 - надо будет проверить. Может не полностью - но какие-то звуки я из нее извлекал под DOS.

PCI Trident не проходит инициализация.

Добавлено: 15.11.2019,01:37
rus
О, значит, SiS до 968 южника контачит.
На 945(ICH7) можно и не проверять. DDMA закончился на ICH5. Мне тоже удавалось извлекать из Ямахи звуки на nForce2, но только FM звуки, это не требует DMA. Но FM не в счёт :)