Вход

Просмотр полной версии : Порты SMUC



spensor
15.03.2005, 12:44
Как общеизвестно SMUC помимо IDE-адаптера (если кому угодно контроллера), содержал на "борту" также часики (CMOS RTC), адаптер ISA-шины, Serial Flash память (NVRAM) и контроллер прерываний i8259A. Вопрос в следующем – кто знает полную раскладку портов устройства?

“Вскрытие” CD-WALKа и IS-DOS-драйверов породило такие вопросы:
1. Обращение к IDE происходит только через 8 портов (#xxВЕ). В других адаптерах 16 портов. Достаточно ли 8 портов для полноценной работы с IDE?
2. В драйверах IS-DOS обращение к CMOS RTC происходит через один порт #DFBA. Записываем в порт адрес ячейки и считываем из нее данные. Каким образом происходит запись данных в ячейки?

Spectre
15.03.2005, 13:38
Я уже как-то закачивал всю доку по скорповской переферии, что у меня есть (сам возился с портами SMUC'а при поддержке CMOS часов). Но ссылку найти сейчас не могу, поэтому прилагаю еще раз.

SMT
15.03.2005, 19:44
Как общеизвестно SMUC помимо IDE-адаптера (если кому угодно контроллера), содержал на "борту" также часики (CMOS RTC), адаптер ISA-шины, Serial Flash память (NVRAM) и контроллер прерываний i8259A. Вопрос в следующем - кто знает полную раскладку портов устройства?я пока не совсем разобрался. пока смотрю схему и читаю шит от 24LC16 (надо смотреть профПЗУ, пока не знаю, кто контроллирует i2c: аппаратно в альтере или програмно спеком?)


1. Обращение к IDE происходит только через 8 портов (#xxВЕ). В других адаптерах 16 портов. Достаточно ли 8 портов для полноценной работы с IDE?да, из 8 регистров, выбираемых при активном CS1 физически откликается только регистр 6. на чтение он дублирует регистр статуса, но его чтение не сбрасывает INTRQ (то есть если аккуратно читать статус и не выкидывать считанные байты, всё ok). запись - софтварный сброс и маска запрета прерывания, вроде тоже можно обойтись, тем более zx не использует прерывания


2. В драйверах IS-DOS обращение к CMOS RTC происходит через один порт #DFBA. Записываем в порт адрес ячейки и считываем из нее данные. Каким образом происходит запись данных в ячейки?
вот что я нашёл:

(x) Jason

Доступ к микросхеме CMOS-часовъ в контроллере SMUC.

#DFBA - порт адреса/данных
#FFBA bit 7 - разрешение записи данных, маска #77.
_В пространстве ввода/вывода TR-DOS!_

Для чтения из регистра:
- записать номер требуемого регистра в порт #DFBA;
- из него-же прочитать значение.

Для записи в регистр:
- записать номер требуемого регистра в порт #DFBA;
- разрешить запись в регистры микросхемы, для этого
установить бит 7 в порту #FFBA (маска #77), например так:
LD A,#77
SET 7,A
LD BC,#FFBA
OUT (C),A
- записать новое значение регистра в порт #DFBA.
- запретить запись в регистры микросхемы, для этого записать
число #77 в порт #FFBA.

Адреса процедур в ПЗУ trdos:

#3FF0 OUT (C),A
RET
#3FF3 IN A,(C)
RET

spensor
18.03.2005, 15:07
Спасибо за информацию!
Жаль только, что больше сообщений пока не поступало - вопрос с I2C Flash и контроллером прерываний i8259A остается открытым.

Насколько я понимаю, в Altera реализован только адаптер IDE. Косвенно на это указано в документации присланной Spectre (если кому интересно, то источник информации находится по адресу http://scorpion.ru/spectrum/hard/kontroller_SMUC.htm),
там Altera названа 7032HDD5 (почему 5 я не знаю, но скорее всего это версия прошивки).
В общем, то на отсутствие чего-нибудь в ПЛМ еще кроме адаптера, указывает достаточно большое количество микросхем мелкой логики на "борту" SMUC.
Предположительно микросхемы SMUС выполняют следующие функции:
1533ТМ9 (в smuc.doc - не обозначен, находится под i8259A) - порт #FFBA;
??????? (в smuc.doc - не обозначен, находится под MC146818) - вспомогательная схема, не устанавливается;
1533АП6 - буфер шины данных и одновременно разделитель внутренней шины данных SMUC и внешней шины данных компьютера;
1533ЛА2 - дешифратор пространства портов #Bx или %10111x10;
1533ТМ9 - неизвестно;
1533ИР22- буфер шины адреса для ISA;
1533ИР23- буферные регистры для IDE (судя по всему объем Altera настолько мал, что разработчики SMUC посчитали нерациональным реализацию регистров внутри ПЛМ);
i8259A, MC146818 - выполняют всем известные функции.

По серьезному нужно было бы попросить нарисовать схему у имеющих SMUC, но где то за 10 лет существования SMUC не у кого, соображающего в электронике, подобной идеи не возникло - всем в лом (а тут еще новый Spectrum строить собираемся:(. Так что имеем, то что имеем.
Теперь собственно по поводу порта #FFBA. Раскладка пока такова:
D0 - неизвестно;
D1 - a7 ISA;
D2 - a8 ISA;
D3 - не подключен (в первых реализациях SMUC ошибочно был задействован под a8 ISA);
D4 - неизвестно;
D5 - неизвестно;
D6 - неизвестно;
D7 - вывод /DS MC146818.
Тут правда стоит уточнить, что 1533ТМ9 шестибитная, поэтому 2 разряда в принципе не задействованы в порту - какие не знаю.
В принципе оставшихся 3 бит достаточно для управления линиями SDA и SCL шины I2C на запись и выборки одного из двух внутренних регистров i8259A, но как происходит чтение по SDA из Flash, я пока не представляю. У кого есть информация по поводу subj - просьба поделится.

CHRV
18.03.2005, 15:22
По серьезному нужно было бы попросить нарисовать схему у имеющих SMUC, но где то за 10 лет существования SMUC не у кого, соображающего в электронике, подобной идеи не возникло - всем в лом (а тут еще новый Spectrum строить собираемся:(. Так что имеем, то что имеем.
Дело в том что Скорпион может и распространненный комп в Питере и других местах, но, например, я его не видел живьем ни разу, а уж тем более не видел сабж. Из московских он есть токо у И-Кика, так он собственно из Питера его и привез (с Родины).
А то что новый спектрум ОБЯЗАТЕЛЬНО должен быть на базе Скорпиона, ну уж извините, я с этим не согласен. Хотя хорошие вещи можно позаимствовать, но честно говоря я не знаю что такого есть крутого у Скорпиона, что например нет у АТМ (кроме слотов). Если мне будут говорить про теневое ПЗУ, то АТМ ушел еще дальше, у него есть поддержка резидента.

spensor
18.03.2005, 16:32
Меня не так поняли. Я имел ввиду во-первых, то что SMUC есть у достаточно большого числа людей, как бывших, так и нынешних спектрумистов. И многие, если бы не поленились, могли бы за несколько часов перенести схему на бумагу - ничего хитрого здесь нет, а работа это нужная. А во-вторых я не говорил, что новый спектрум должен быть на базе Scorpion'а - имелась ввиду опять же лень людей. А если влом простейшую работу сделать, то о каких разработках может идти речь!

А что касается SMUC, то это, по моему мнению, лучший контроллер винчестера на спектруме, по следующим причинам:
1. К "винту" доступ идет через TR-DOS, как следствие защита от случайных сбоев программ.
2. Адресация ведется через полный 16-битный адрес, а не через 8-битный как в Nemo-контроллере (который откликается на 16*256 адресов), как следствие опять же ниже вероятнось того, что сбойная прога повредит содержимое "винта" и экономятся порты.
3. Настройки хранятся во flash, что исключает ряд проблем при инициализации "винта".
4. Имеется достаточно развитое программное обеспечением.

Недостатком SMUC является закрытость схемы и как следствие высокая
цена устройства (пользуясь тем, что схема трудна для повторения фирма Scorpion могла держать цену на устройство на достаточно высоком уровне). Но по всему видно, что то, что зашито в Altera реально можно воспоизвести не более, чем на 8 корпусах мелкой логики. В свое время наши люди "взломали" ULA, а это будет посложнее SMUCа...

Ну и еще, если кому интересно, предлагаю посмотреть на subj.

CHRV
18.03.2005, 18:12
Недостатком SMUC является закрытость схемы и как следствие высокая
цена устройства (пользуясь тем, что схема трудна для повторения фирма Scorpion могла держать цену на устройство на достаточно высоком уровне). Но по всему видно, что то, что зашито в Altera реально можно воспоизвести не более, чем на 8 корпусах мелкой логики. В свое время наши люди "взломали" ULA, а это будет посложнее SMUCа...

Ну и еще, если кому интересно, предлагаю посмотреть на subj.

Все понял, извини, что если чтото не так написал..
Мне кажется проще схему взять непосредственно у МОА, я не думаю что ему в лом поделиться тем более они сейчас этим не занимаются. а то будет как обычно уйдет на помойку :(. Я даже тебе больше скажу, по моей просьбе сейчас этим занимаются!

Через ТРДОС с диском сейчас будет в АТМ работа тоже, новости у Максагора. Это не реклама - я просто привожу факт, что рабочая группа на месте не стоит. Сейчас идет проработка решений под новый комп! Поэтому всяческая информация будет чрезвычайно полезна!

Conan
18.03.2005, 19:41
И многие, если бы не поленились, могли бы за несколько часов перенести схему на бумагу - ничего хитрого здесь нет, а работа это нужная.
Версии схемы SMUC 1.2 и 1.3. Надеюсь пригодится.

SMT
18.03.2005, 21:02
1. К "винту" доступ идет через TR-DOS, как следствие защита от случайных сбоев программ.
2. Адресация ведется через полный 16-битный адрес, а не через 8-битный как в Nemo-контроллере (который откликается на 16*256 адресов), как следствие опять же ниже вероятнось того, что сбойная прога повредит содержимое "винта" и экономятся порты.
3. Настройки хранятся во flash, что исключает ряд проблем при инициализации "винта".
4. Имеется достаточно развитое программное обеспечением
1. то же у ATM. а у smuc была распространена схема, включавшая HDD в любом режиме, я встречал упоминание is-dos драйверов под неё. очень маловероятно, что запись случайных значений в регистры HDD приведёт в потере данных
2. A3,A4,A11,A12,A14 не участвуют в дешифрации, т.к. не заходят на альтеру. A8,A9,A10,A13 выбирают регистры. так что портов тоже достаточно...
3. каких проблем? :)

а буферы не развели в альтере imho не потому, что кончились элементы, а потому, что кончились ножки альтеры.

зы я тоже гадал, какие микросхемы с этой картинки за что отвечают, пока Neu Animal не выложил схему (спасибо). искать в теме про скорпион-пзу

SMT
18.03.2005, 21:13
пока отвечал, уже схемы и тут появились :)

spensor
22.03.2005, 15:27
Спасибо всем за ответы.
Хотелось бы отдельно поблагодарить Conanа за схемы - не думал даже, что у кого то они найдутся "живьем". Я так полагаю, у него материала на БСЭ (большую спектрумовскую энциклопедию) наберется:).

Что касается Романа, то также спасибо за ответы и ждем информации от МОА.

Теперь, что касается SMT.
Во-первых, спасибо за фрагмент драйвера RTC.
Во-вторых, что касается вопроса “кто контролирует i2c: аппаратно в альтере или программно спеком?”. Если есть схема под рукой, то такой вопрос не должен возникать.
Управление I2C-шиной производит непосредственно комп, путем записи/чтения соответствующих бит. Что в данном случае должна была делать альтера? Преобразовывать последовательный поток в параллельный и наоборот? Так как в альтеру заходит только 3 бита данных (D3,D6,D7), то вопрос отпадает сам собой.
Как видно из схемы раскладка порта #FFBA пока следующая (далее /w – запись в порт, /r – чтение из порта):
D0 - /w - RESET HDD/ISA; /r – нет.
D1 - /w - a7 ISA; /r – нет.
D2 - /w - a8 ISA; /r – нет.
D3 - /w - неизвестно; /r неизвестно.
D4 - /w - SDA OUT I2C; /r – нет.
D5 - /w - WR/RD I2C; /r – нет.
D6 - /w - неизвестно; /r неизвестно.
D7 - /w - вывод /DS MC146818; /r неизвестно.
Поскольку биты D3,D6,D7 заходят в альтеру, то через них может производится как запись, так и чтение информации. Итого осталось 5 неизвестных. Из них один бит чтения должен быть SDA IN I2C. Как происходит управление линией SCL пока остается под вопросом. Дело в том, что есть два варианта: путем установки/сброса бита в порту #FFBA (подходят только D3 и D6) и путем просто записи/чтения порта. Также остается открытым вопрос управления i8259.
В-третьих, что касается схемы включавшей HDD в любом режиме, то на сколько я помню “пробегала” информация, что типа лучше было бы отвязать SMUC от TR-DOS и для этого надо отрезать проводник сигнала /DOS и подать на него “землю”. В общем, как обычно “коряворукие доработчики” кидали идеи, которые, наверное, где-то и были воплощены. На оригинальной схеме это реализовать не удастся, поскольку сигнал /DOS заведен на дешифратор портов SMUC.
В-четвертых, что касается неполной дешифрации портов в SMUC – то я не согласен. Дело в том, что в Nemo-IDE порты изначально 8-битные и соответственно нет возможности их “закрепить” за 16-битные адреса, скажем если их привязать к портам FFxx жесткой дешифрацией, то драйвера не будут корректно работать. А вот у SMUC имеются “законные” адреса и при желании можно ввести полную дешифрацию.
В-пятых, что касается ряда проблем при инициализации "винта", то где то проходила инфа, что было бы рационально хранить установки "винта" в CMOS RTC, так вот Flash подходит для этого больше.
Ну и наконец в-шестых, подскажите, а где собственно искать “тему про скорпион-пзу”.

И еще люди, не в службу, а в дружбу подкорректируйте свои профели - ну хотябы год рождения. Ведь интересно же какой контенгент занимается Spectrum.

SMT
22.03.2005, 18:00
насчёт i2c уже понял. всё общение c NVRAM происходит через #FFBA, биты 4 и 6.

а почему не отвязать весь smuc от tr-dos, не только hdd?

Conan
23.03.2005, 02:07
подскажите, а где собственно искать “тему про скорпион-пзу”.
По всей видимости, речь шла вот об этом топике:

http://zx.pk.ru/showthread.php?t=25&page=1&pp=10 (http://zx.pk.ru/showthread.php?t=25&page=1&pp=10)

spensor
23.03.2005, 11:54
Спасибо за ссылку – почему-то этот топик я ранее проигнорировал, и поэтому задавал вопросы уже обсужденные там. Как вариант решения подобных проблем предлагаю вводить краткую аннотацию темы. В противном случае, получается "начали за здравие, а кончили за упокой".
Теперь вопрос к SMT - а собственно, какой бит за что отвечает, и какой на запись, а какой на чтение. Я так предполагаю, в порте #FFBA за I2С отвечают следующие разряды:
D4 - /w - SDA OUT I2C; /r – нет.
D5 - /w - WR/RD I2C; /r – нет.
D6 - /w - SCL OUT I2C; /r - SDA IN I2C.
Или быть может, я ошибаюсь?
А насчет отвязки SMUC от TR-DOS я не согласен. На спеке нет такой фичи как "обращение к процедурам BIOS через прерывания" и соответственно нет гарантии, что чья-то процедура не запишет на "винт" недопустимые значения. По серьезному неплохо было бы использовать прерывания профПЗУ - надежность работы устройства в этом случае была бы максимально-возможной, но даже использование "TR-DOS триггера" дает некоторые гарантии безопасности, например, если в случае какого-то сбоя приложение начнет писать во все порты отфонарные значения. Вспомните, как у некоторых повреждалась инфа на IS-DOS дисках из-за простых сбоев в программах.
Хотя возможно во мне говорит "железячник" - например, я не представляю на Спектруме многозадачность без аппаратного супервизора (по моему так называется фича следящая за доступом приложений к своим областям памяти).

SMT
23.03.2005, 21:45
пин SCL nvram-памяти работает только на ввод (шину i2c тактирует master).
read: D6: SDA (afaik, значимый только этот бит, остальные установлены в 1)
write: согласен с Вашим описанием.
увы, Кирилл Фролов давно не появлялся в форуме, а именно его подробную карту портов я недавно нагуглил:
Все сообщения из раздела
Сообщение 1 в разделе
От:Kirill Frolov (Kirill.Frolov@p2.f827.n5030.z2.fidonet.org)
Тема:SMUC неизвестные порты
View this article only
Группы новостей:fido7.real.speccy
Дата:2002-07-17 15:31:54 PST

Hемедленно нажми на RESET, All!
[...skip...]
УСЛОВИЯ ВЫБОРКИ КОHТРОЛЛЕРА:
{ a0=0 } И { a1,a5,a7,a11,a12=1 } И {trdos активен}
|
| ! АДРЕСА ISA-BUS:
| ! a8,a9,a10,a13,a14,a3,a4 isa/ide/pic address (A0-A6)
|
| +- a6=1 обращение к ISA слоту
| | (!) ВЛИЯHИЕ a13 HА ЭТИ ПОРТЫ HЕИЗВЕСТHО!
| | +- a2=1
| | |
| | | +- a15=1 ??? (ISA A9 ?) HЕИЗВЕСТHЫЙ РЕГИСТР
| | | | +- a13=1 ???
| | | |
| | | +- a13=0 ???
| | |
| | |
| | +- a15=0 isa bus ports rw
| | | isa address bits(A9-A0): (cp==control port bit)
| | | { ? (0), cp.2, cp.1, a4, a3, a14, a13, a10, a9, a8 }
| | |
| | +- a13=1 ???
| | |
| | +- a13=0 ???
| |
| |
| +- a2=0 ???
| |
| +- a15=1 ??? HЕИЗВЕСТHЫЕ РЕГИСТРЫ
| | |
| | +- a13=1 ???
| | |
| | +- a13=1 ???
| |
| +- a15=0 ???
| |
| +- a13=1 ???
| |
| +- a13=0 ???
|
|
+- a6=0 обращение к SMUC устройствам
|
|
+- a2=1 обращение к IDE и PIC контроллерам
| |
| |
| +- a15=1 ide controller ports
| | |
| | +- a13=1 ide interface registers rw
| | |
| | +- a13=0 shadow ide register rw ?
| |
| |
| +- a15=0 interrupt controller register block rw
| |
| +- a13=1 <DEFAULT>
| | ( каково влияние этого бита )
| | ( на работу SMUC и контроллера )
| +- a13=0 ( прерываний? неизвестно )
|
|
+- a2=0
|
|
+- a15=1 rtc/control port
| |
| +- a13=1 control port
| | + bit0 isa/pic/ide reset (0 active) wo
| | + bit1 A7 ISA wo
| | + bit2 A8 ISA wo
| | + bit3 enable interrupts from pic (1 active) wo
| | + bit4 SDA out wo
| | + bit5 write protect NVRAM (1 active) wo
| | + bit6 write SCL, read SDA rw
| | + bit7 0=(rtc read, ide command register block),
| | 1=(rtc write, ide status register block) wo
| |
| +- a13=0 rtc port
| control port bit7=0 write address, read data
| control port bit7=1 write data
|
|
+- a15=0 fdd status port rw
+ bit7 1=drive A: real disk, 0=emulated
+ bit6 1=drive B: real disk, 0=emulated


c2005Google

spensor
04.07.2005, 17:39
подробную карту портов я недавно нагуглил
Проанализировал вышеупомянутые данные, нашел одну неточность - возможно автор не имел под рукой схемы SMUCа - адресная линия A9 не изменяет своего значения (жестко висит на +5В).
Еще сварганил небольшую табличку, что-бы было видно на каких портах висят внутренние девайсы SMUCа.
Просьба к обладателям сего чуда техники, выяснить возможен ли доступ к второй "половине" регистров IDE. Автор раскладки предположил, что комбинация CS0(CS1)=1, CS1(CS3)=0 появиться если обратиться к портам IDE при a13=0 (shadow ide register rw). Тоесть надо считать данные из портов #D8BE-#DFBE. Если сказать более конкретно, то при наличии такой возможности, ситать удасться только порт #DEBE - альтернативный регистр состояния. С остальнами результат будет один и тот же - будет считано #FF, как при наличии, так и при отсутствии данной возможности. У кого есть реальное устройство, большая просьба проверить данное предположение.

Ronin
05.07.2005, 00:00
скажем если их привязать к портам FFxx жесткой дешифрацией
ну блин, грубая дешифрация - плохо, подайте ить #FD,
неполная - опять плохо, давайте когонибудь куданибудь закрепим...
никто ничего закреплять не будет - есть реальный серийный РАБОТАЮЩИЙ девайс. и этот факт заявляет собой с ним мириться даже тем кому он не нравиться. хотя лично я проблем в такой дешифрации ВООБЩЕ не вижу. даже более того - вижу суперплюс - она позволяет писать более ***БЫСТРЫЙ*** драйвер!


Вспомните, как у некоторых повреждалась инфа на IS-DOS дисках из-за простых сбоев в программах
...не помню. что значит некоторых ? конкретнее надо быть в обвинениях.
и потом если машина сама на сотне проводков наладом дышит - чего ей бы не поглючить, причем тут сразу вдруг контроллер хдд?

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

spensor
05.07.2005, 09:50
лично я проблем в такой дешифрации ВООБЩЕ не вижу. даже более того - вижу суперплюс - она позволяет писать более ***БЫСТРЫЙ*** драйвер!
Быстрый драйвер? А как насчет поддержки старших процессоров линейки Z80. Туманная перспектива,согласен, но нафиг себе еще палки в колеса ставить. Ясно же, что команды работы с 8-битными портами прийдется упразнять, в противном случае, про перспективу можно забыть.

...не помню. что значит некоторых ? конкретнее надо быть в обвинениях.и потом если машина сама на сотне проводков наладом дышит - чего ей бы не поглючить, причем тут сразу вдруг контроллер хдд?
Ты, думаешь, я могу вспомнить источник информации с которым я сталкивался лет 7 назад. А насчет "дохлых" проводников, согласен, это реалии и эти машины в работе. Нужны примеры - предоставлю. Я и не говорил, что виноват HDC. И поэтому нужно перестраховываться.
А "железячник" во мне правильно говорит - надежность, а не цена превыше всего. А "китайчатины", в которой половины компонентов нет, у нас и так предостаточно.

fk0
06.07.2005, 18:18
Как общеизвестно SMUC помимо IDE-адаптера (если кому угодно контроллера), содержал на "борту" также часики (CMOS RTC), адаптер ISA-шины, Serial Flash память (NVRAM) и контроллер прерываний i8259A. Вопрос в следующем – кто знает полную раскладку портов устройства?

Начинать надо с того, что SMUC, да и любое другое железо, адресуется
не "портами", а определёнными комбинациями сигналов ША и некоторых
других. Это принципиальный момент.

http://groups-beta.google.com/group/fido7.zx.spectrum/browse_thread/thread/b3b0cc321a9eaa65/b03f020858053fc8?q=group:fido7.zx.spectrum+Frolov+ SMUC+a2&rnum=1#b03f020858053fc8
http://groups-beta.google.com/group/fido7.zx.spectrum/browse_thread/thread/fd811a7de98b8b1f/1358ab1899a1ed7e?q=group:fido7.zx.spectrum+Frolov+ SMUC+a2&rnum=2#1358ab1899a1ed7e
http://groups-beta.google.com/group/fido7.zx.spectrum/browse_thread/thread/4f1761c330cb9a86/2e4240c5cee111de?q=group:fido7.zx.spectrum+Frolov+ SMUC+a2&rnum=7#2e4240c5cee111de

fk0
06.07.2005, 18:19
1. Обращение к IDE происходит только через 8 портов (#xxВЕ). В других адаптерах 16 портов. Достаточно ли 8 портов для полноценной работы с IDE?

http://www.ata-atapi.com

fk0
06.07.2005, 18:23
А что касается SMUC, то это, по моему мнению, лучший контроллер винчестера на спектруме, по следующим причинам:
1. К "винту" доступ идет через TR-DOS, как следствие защита от случайных сбоев программ.

И как следствие непомерная (это не то слово...) тормознутость. Настолько,
что отдельные умельцы припаивали провода (см. архив HARDWARE.ZX),
чтоб данное ограничение обойти.

fk0
06.07.2005, 18:26
2. Адресация ведется через полный 16-битный адрес, а не через 8-битный как в Nemo-контроллере (который откликается на 16*256 адресов), как следствие опять же ниже вероятнось того, что сбойная прога повредит содержимое "винта" и экономятся порты.


Как читается хороший контроллер:

INI
INI
INI
...

Например, sprinter. Итого 16 тактов на байт. Как читается SMUC
лучше не говорить. Не сильно быстрей дискеты. Это тоже причина.



3. Настройки хранятся во flash, что исключает ряд проблем при инициализации "винта".


Т.е. при смене "винта" с неправильными настройками /в лучшем случае/
ничего просто работать не будет. А чтоб будет в худшем не сложно
догадаться.



4. Имеется достаточно развитое программное обеспечением.


cd-walk. Что-тп ещё?

fk0
06.07.2005, 18:31
Проанализировал вышеупомянутые данные, нашел одну неточность - возможно автор не имел под рукой схемы SMUCа - адресная линия A9 не изменяет своего значения (жестко висит на +5В).

Которая на ISA идёт в конечном счёте? Да, действительно, там есть ошибка.

jtn
06.07.2005, 19:00
И как следствие непомерная (это не то слово...) тормознутость. Настолько,
что отдельные умельцы припаивали провода (см. архив HARDWARE.ZX),
чтоб данное ограничение обойти.
были бы порты как хотя бы у немовского иде и в пзу прошито все что нужно...

spensor
07.07.2005, 09:47
Начинать надо с того, что SMUC, да и любое другое железо, адресуется не "портами", а определёнными комбинациями сигналов ША и некоторых других. Это принципиальный момент.
В чем принципиальность? Порт это и есть комбинация сигналов адреса, IORQ, M1, RD, WR (иногда WAIT). Кстати, за линки большое спасибо. Правда с последней непонятки - в какой она кодировке? А ссылочку на архив HARDWARE.ZX можно получить?

Как читается SMUC лучше не говорить. Не сильно быстрей дискеты. Это тоже причина.
В принципе согласен. Но порты IDE все равно должны быть 16-битными - ради перспективы со старшими процессорами. А проблема скорости решаема. Например в SMUC2 можно внести DMA-контроллер.

Т.е. при смене "винта" с неправильными настройками /в лучшем случае/ ничего просто работать не будет. А чтоб будет в худшем не сложно
догадаться.
Пожалуй это то-же правда. А какже на PC? Там вроде как настройки в RTC-RAM сидят?

cd-walk. Что-тп ещё?
А что, соответствующего уровня есть под NEMO? В смысле, что еще, кроме CD-Walk?

Повторюсь, кто может узнать/подсказать есть ли в SMUC возможность доступа к порту #DEBE? Ведь есть же на форуме люди с рабочим SMUCом. Проверьте plz!

Sonic
07.07.2005, 11:12
Господа, да дался вам этот CMOS? Кроме как в IBM PC ручного определения типа винта нет абсолютно нигде. В самом PC сие - пережиток давнего MFM-ного прошлого, ибо даже древнющие 40 мб винты понимают INQUERY. Абсолютно все давным-давно выставляют тип винтов в AUTO.

spensor
26.07.2005, 16:32
| | + bit7 0=(rtc read, ide command register block),
| | 1=(rtc write, ide status register block) wo
Кто может подсказать о каких блоках идет речь? Если о портах ввода и вывода, то как-то нелогично получается - чтобы считать или записать данные в HDD, приходится щелкать портом #FFBA. Или, быть может, тут речь идет о второй половине регистров IDE?
Вопрос к знатокам ПрофПЗУ. Есть в прошивке какие-то места, отвечающие за назначение бит D1 и D2 порта #FFBA? Суть вопроса сводится к тому, что для модернизации схемы SMUCа необходима пара бит регистра конфигурации. Что-бы не вводить новых регистров я хочу использовать эти два бита - все равно никому в голову сейчас не прийдет использовать 8-битные ISA-карты. Но хотелось бы знать не повлечет ли такое изменеие конфликтов с имеющимся софтом.

Orionsoft
27.07.2005, 03:49
Схема сабжа оригинальная 1.3 версия бумажная
качество отстой
но если ЭТО чуть-чуть поможет распознать порты - буду рад ! ;)

spensor
27.07.2005, 09:09
Схема сабжа оригинальная 1.3 версия бумажная качество отстой но если ЭТО чуть-чуть поможет распознать порты - буду рад !
Спасибо, но схема такой же версии (1.3) уже находится в этом топике.
Люди, пожалуйста отвечая на темы, не поленитесь прочитать все предыдущие посты - эта ошибка встречается очень часто!
Схема сабжа не позволит разобраться со всеми тонкостями устройства, по той простой причине, что "ядро" схемы находится внутри ПЛИС, и недоступно для непосредственного изучения. Понять принципы функционирования устройства ("взломать ПЛИС") возможно только по косвенным признакам - по поведению/работе самой схемы. А для этого, как минимум, надо иметь оригинальное устройство (SMUC изготовленный фирмой Scorpion). Поскольку такового у меня нет, я и задаю вопросы людям у которых оно есть живьем.

spensor
10.08.2005, 17:13
2 SMT Нашел совершенно случайно гуглей такую фразу "Добавлены порты SMUC #5FBA и #5FBE. - Бордюр (порт #FE) не очищался при перезапуске. - Поддержка KAY-256/1024. - Порт Scorpion’а #1FFD теперь работает как ...".
Насколько понял речь об Унреале. Так что, есть какие-то новые данные по Портам SMUC? Что это за порты (#5FBA и #5FBE)? За что отвечают?

SMT
10.08.2005, 18:27
Что это за порты (#5FBA и #5FBE)? За что отвечают?читаются константы - версия SMUC

spensor
11.08.2005, 08:58
Что это за порты (#5FBA и #5FBE)? За что отвечают?

читаются константы - версия SMUC
А можно более детально осветить данный вопрос - где, что, как? Порты только на чтение? И еще можно дать линк на источник информации?

SMT
11.08.2005, 09:39
а зачем они тебе нужны ;)?

всё началось с deathsoft, который заметил, что в скорпионе показывается правильная версия SMUC, а у меня невесть какая...

дальше анализ профПЗУ. оказалось, что эти порты используются там лишь однажды, при холодной загрузке. из них читаются значения, над ними делаются какие-то арифметические операции (сейчас не скажу какие, я подсчитал, что нужно, чтобы получилась версия 1.2 и бумажку выкинул - смотри ПЗУ сам) и в табличку со списком железа пишется эти данные в графу "версия smuc"

так что польза от них - только эстетическая, можно заставить профПЗУ писать при включении то, что тебе нужно

spensor
11.08.2005, 10:21
а зачем они тебе нужны ?
Да вот понимаешь хочу закрасить все белые пятна в вопросах этого девайса. Быть может удастся повторить.

SMT
15.08.2005, 20:11
у кого-нибудь есть/был живой SMUC версии 1.2?
и что (какую версию) показывал профпзу в заставке?

дело в том, что для того, чтобы ПЗУ показало 1.2, нужно, чтобы с порты #5FBE считался #57. а так как D5 не заходит на альтеру, то либо этот порт в другом месте (каком?), или я не знаю... похоже, это ошибка в проф-пзу и чётные цифры в версии не могут возникнуть

SMT
17.08.2005, 16:27
столько "скорпионщиков" (судя по подписям scorp/smuc/hdd/другое/супер/железо). а воткнуть smuc 1.2, включить свой скорп и посмотреть версию на заставке никому недосуг :(