ZXNet эхоконференция «hardware.zx»


тема: SMUC на дискретах



от: Aleksey Naboka
кому: All
дата: 10 Oct 2005
Hello, spensor

Да

WBR, hardy aka Aleksey Naboka

от: Semchenko Vlad
кому: All
дата: 07 Nov 2005
Hello, Mick

Вот и закончился мой отпуск:( За это время с моим проектом произошли кое-какие
изменения. Есть и приятные, и не совсем. Из неприятных, это три ошибки в схеме
SMUC0.0a! И если две из них относятся к категории "очепятка", то третья
серьезная ошибка.
Итак bugreport:
1. В перечне перепутаны наименования микросхем D13 и D14, должно быть так:
D13 К1533ИД7
D14 К1533ИД14
(ранее, в трейде, ошибка уже была упомянута);
2. Сигналы DS и R/W формируемые DD14.2 действительно перепутаны:( Должно быть
так:
выв. 11 DD14.2 - R/W;
выв. 10 DD14.2 - DS;
Предполагаю, что на этапе черчения, "на ходу", поменял сигналы на выводах 13 и
14 DD14.2, а вот подкорректировать сигналы на выходе дешифратора забыл:(
3. Грубая ошибка - при чтения порта #DFBA (RTC) на шину данных одновременно
выдают данные и DD3 (RTC) и DD2 (буфер данных) :(
Лечится подачей на вывод 12 DD16.4 проинвертированного сигнала RTC вместо /CSM.
Либо подключением шины данных RTС не непосредственно к шине данных Z80, а через
буфер DD2 (вместо D0-D7 на RTС заводятся сигналы DB0-DB7).

от: Semchenko Vlad
кому: All
дата: 07 Nov 2005
Hello, spensor

ewg> А СМУК-2 меж тем перешел из стадии альфы в бету...

Hу для начала SMUCv0.0a пока только в состоянии перехода в альфу второй версии
(SMUCv0.0a2) - RTС пока не тикают:( Бетой он станет только после запуска оных.
А вот из стадии 0.0 SMUC выйдет, когда все "белые пятна" с расбитовкой портов
будут закрашены, в частности следует понять почему "пропадают"
примонтированные диски C и D. Возникло предподожение - возможно диски C и D
отображаются через порт #7FBA, но с установленным битом D7 порта #FFBA. Просьба
к умеющим "производить вскрытие" ПрофПЗУ, в частности Mick, проверить это
продположение.
P.S. Дабы не было безсмысленных дискуссий о ИР15, скажу, что в ПС по ошибке,
было сказано, что сложно достать ИР13. Поскольку такой в схеме вообще нет, я
предположил, что речь шла о ИР15, а оказалось, что затруднения с ИР23:)
Последнюю (ИР23) запросто можно заменять на ИР37 - функционально они
аналогичны, а различаются только разводкой выводов.

от: Ewgeny Ivanoff
кому: All
дата: 08 Nov 2005
Hello, spensor

Как второстепенное действующее лицо, хочу дать некоторые комментарии :)
По поводу "альфа-бета" - согласен, пока рановато.
Теперь попробую чуть-чуть прояснить ситуацию с часами. Самое главное... ОHИ
МЕHЯ УЖЕ ЗАДОЛБАЛИ! :) Hо смех смехом, а запустить их пока не удалось.
Предположение о конфликте часов с шинным буфером подтвердились, после включения
инвертора на вход выборки АП6 конфликт по сигналам исчез, о чем меня известила
надпись "CMOS checksum error".
Читать из регистров RTC - одно "удовольствие". Записываем 0 - получаем 0;
записываем 255 - получаем 179; записываем 179 - получаем 255... Цифры приведены
для примера, но они не случайны, при повторной записи-чтении они повторяются.
Hо никакой закономерности в них я не обнаружил. Они могут быть как меньше, так
и больше записываемого. Если интересно, могу приложить "распечатку".
Тогда же было обнаружено "странное поведение" у сигнала DS (уже "нового"). Он
должен срабатывать только при записи, однако, судя по всему, сигнал также
проскакивает при чтении (сигнал /WR не активен, уровень высокий). Попробовал
поменять ИД14, затем "вынес" эту половинку дешифратора на внешнюю ИД7, затем
внешнюю ИД7 заменил на внешнюю ИД14... Результат тот же :( При проверке
сигналов пользовался пробничком-триггером на ТМ2+светодиод. Все остальные
сигналы в норме, появляются согласно "расписанию".
Вопрос к общественности - КАК ТАКОЕ МОЖЕТ БЫТЬ?
Сигналы для ИД14 берутся с ИД7+ элемент 2И (сигнал RTC), пятый вывод ТМ9, /WR.
Сигнал AS идет на часы через инвертор DD11.5. Все вроде нормально... Может,
попробовать подключить часы по шине не Intel а Motorola?

от: Mick
кому: All
дата: 08 Nov 2005
Hello, spensor

spe> Возникло предподожение - возможно диски C и D отображаются через порт
spe> #7FBA, но с установленным битом D7 порта #FFBA. Просьба к умеющим
spe> "производить вскрытие" ПрофПЗУ, в частности Mick, проверить это
spe> продположение.

Раз вернулся вот тебе кусочек из 7 окна профПЗУ. Там похоже какие то функции
относящиеся к дисководу и упоминается также 7fbah.
Упоминание о 7fbah были в стрнице TRDOS, которую я кидал недавно или давно я
уже не помню.

Файл: primer0c.rar http://zx.pk.ru/attachment.php?attachmentid=1908

от: Ewgeny Ivanoff
кому: All
дата: 09 Nov 2005
Hello, spensor

>Hасколько я понял, тут опечатка.

Верно, эхто очепятка. :)

>Чтобы понять ответ на вопрос хотелось бы понять - сигналы DS и R/W >>при
>операции IN #DFBA, при D7=0 в #FFBA, возникают одновременно? >Если да то это
>явно противоречит логике работы дешифратора и диагноз только один - микросхема
>неисправна. Как это может быть с 3- 4 микросхемами подряд?... Если же есть
>разница фаз этих сигналов (возникает "иголка"), то тут прийдется
>разбираться.

Попробую "отловить" времянку этих сигналов.

>А как насчет замены RTC, на другую микросхему?

У меня их три штуки, вствляются в панельку, при каждом эксперименте я их меняю
:)

от: Semchenko Vlad
кому: All
дата: 09 Nov 2005
Hello, ewgeny7

ewg> Как второстепенное действующее лицо, хочу дать некоторые комментарии

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

ewg> Тогда же было обнаружено "странное поведение" у сигнала DS (уже
ewg> "нового"). Он должен срабатывать только при записи, однако, судя по
ewg> всему, сигнал также проскакивает при чтении (сигнал /WR не активен,
ewg> уровень высокий).

Hасколько я понял, тут опечатка. Фраза должна звучать как "Он должен
срабатывать только при чтении, однако, судя по всему, сигнал также проскакивает
при записи". В datasheet сказано следующее - "Шина "Intel"
Реализуется, если по срезу импульса AS на входе DS будет высокий уровень
напряжения. В этом случае чтение или запись информации будет происходить в
зависимости от состояния входов DS и R/W. Чтение будет происходить при
отрицательном импульсе на входе DS, а запись - при отрицательном импульсе на
входе R/W. В этом режиме вход DS можно назвать -RD, а вход R/W можно назвать
-WE."

ewg> Вопрос к общественности - КАК ТАКОЕ МОЖЕТ БЫТЬ?

Чтобы понять ответ на вопрос хотелось бы понять - сигналы DS и R/W при операции
IN #DFBA, при D7=0 в #FFBA, возникают одновременно? Если да то это явно
противоречит логике работы дешифратора и диагноз только один - микросхема
неисправна. Как это может быть с 3-4 микросхемами подряд?... Если же есть
разница фаз этих сигналов (возникает "иголка"), то тут прийдется разбираться.
Самому хотелось бы узнать предположения "железячников".

ewg> Может, попробовать подключить часы по шине не Intel а Motorola?

Сделать можно, но это сильно замудренно (2-3 корпуса), и кроме того IMHO, это
ситуацию не изменит - микруха должна работать в обоих режимах, а для
Intel-подобного проца (Z80) целесообразнее работать именно в Intel-режиме.

А как насчет замены RTC, на другую микросхему? Hе исключено, что она "склеяла
ласты":( Это ситуацию с DS не изменит, но ради чистоты эксперимента неплохо
было-бы увидеть результаты.

PS: Приношу извенения за ошибки.

от: Semchenko Vlad
кому: All
дата: 09 Nov 2005
Hello, ewgeny7

ewg> Попробую "отловить" времянку этих сигналов.

Hа всякий случай разовью свою мысль. В общем то надо понять возникают ли
сигналы DS и R/W одновременно, или поочередно в при операции чтения порта IN
#DFBA. Тоесть отлавливаем с помощью элемента "ИЛИ".

ewg> У меня их три штуки, вствляются в панельку, при каждом эксперименте я
ewg> их меняю

Ясно. Чистота эксперемента соблюдена.

от: Semchenko Vlad
кому: All
дата: 09 Nov 2005
Hello, ewgeny7

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

ewg> RTC до сих пор молчит. Качнул документацию на К512ВИ1. Появилось
ewg> сразу два вопроса.
ewg> Первое - в даташите значится, что вывод 20 имеет, мягко скажем,
ewg> несколько другое назначение по сравнению со схемой. В документации он
ewg> описывается как вход, определяющий... м-м-м... коэффициент деления
ewg> тактовой частоты для выдачи оной на вывод 21. Про то, что на него
ewg> подается питание с батареи - даташит молчит, прям как партизан.

По поводу назначения выводов вопрос довольно скользкий. Проблема в том, что
MC146818 и ее клоны (КР512ВИ1, BQ3287, DS1285, DS12885, DS1287, DS12887,
DS1685, DS1687Е) на вопрос применения выводов 16, 20, 21 имеют свое, далеко
нескромное, IMHO:( И в частности выводы 20 и 16 гораздо чаще используются как
Vbat и GND батарейки, соответственно. Вывод 21, опять же, чаще используется как
вход RAM CLEAR, для обнуления ячеек памяти. При разработке схемы пришлось идти
на компромисс и делать более-менее универсально. По идее УспаркаФ CKFS (20) и
CKOUT (21) является автономным узлом (делителем частоты) микросхемы и такое
включение на работу часов влиять не должно.

от: Ewgeny Ivanoff
кому: All
дата: 09 Nov 2005
Hello, Lounge Lizard

Получается, Spensor очень даже вовремя "накаркал" про альфу и бету... :)

64 bytes CMOS found
NVRAM found
Interrupt controller not found
IDE Hard Disc found at 270Mb

Если мне скромность не изменяет, то SMUC-2 в принципе уже состоялся, так как
пользоваться им можно уже в полном объеме. Почти в полном. Остались только
некоторые "неудобства" с дисками C и D...

Итак, в изменения схемы в плане часов:
1. инвертор с /RTC на 12 ногу DD16.4
2. уже известная история с "перекидыванием" сигналов /DS и /RW
3. конденсатор С3 - 10н. Он выполняет функцию сохранения памяти (или что-то
около этого) при сбросе часов по /RES. Заметил нестабильность при инициализации
часов при быстром включении-выключении компьютера. С новым конденсатором вроде
все нормально, часы не сбрасываются.
4. и самое главное. батарейка должна быть не менее 4.5 вольт. При меньшем
напряжении достаточно отключить компьютер секунд на 10 и получаем опять "CMOS
checksum error".

Сейчас выключал комп на 15 минут, включил - часики тикают как миленькие, только
кукушки не хватает!

от: Lounge Lizard
кому: All
дата: 09 Nov 2005
Hello, spensor

spe> Тоесть отлавливаем с помощью элемента "ИЛИ".
spe>

Просто интересно, как вы эту ситуацию собрались отлавливать по "ИЛИ"? По "XOR"
или "И" это понятно, но "ИЛИ"...

от: Semchenko Vlad
кому: All
дата: 09 Nov 2005
Hello, ewgeny7

Lou> Просто интересно, как вы эту ситуацию собрались отлавливать по "ИЛИ"?
Lou> По "XOR" или "И" это понятно, но "ИЛИ"...

А вот самому интересно, как Вы предлагаете отлавливать ситуацию по "И" или
"XOR"?
По "ИЛИ" ситуация вычисляется так:
DS R/W
0 0 0 - глюк
0 1 1 - ОК
1 0 1 - ОК
1 1 1 - ОК
А вот с вариантами предложенными Вами, мне идея непонятна.

от: Semchenko Vlad
кому: All
дата: 09 Nov 2005
Hello, ewgeny7

Lou> Просто интересно, как вы эту ситуацию собрались отлавливать по "ИЛИ"?
Lou> По "XOR" или "И" это понятно, но "ИЛИ"...

А вот самому интересно, как Вы предлагаете отлавливать ситуацию по "И" или
"XOR"?
По "ИЛИ" ситуация вычисляется так:
DS R/W
0 0 0 - глюк
0 1 1 - ОК
1 0 1 - ОК
1 1 1 - ОК
А вот с вариантами придложенными Вами, мне идея непонятна.

от: Semchenko Vlad
кому: All
дата: 09 Nov 2005
Hello, ewgeny7

ewg> Сейчас выключал комп на 15 минут, включил - часики тикают как
ewg> миленькие, только кукушки не хватает!

Hе совсем понятно - проблема исчезла? Тоесть неприятности были в батарейке?

от: Ewgeny Ivanoff
кому: All
дата: 09 Nov 2005
Hello, spensor

spe> Hе совсем понятно - диски по одному подключаются или по принципу
spe> A+B+C+D?

Диски подключаются по схеме "плюс". Hо закономерность видна. Диск А - бит 7,
диск В - бит 6... а вот далее эта закономерность теряется. При подключении С
должен сброситься бит 5, но этого не происходит. Я готов был поверить, что так
и должно было быть, но согласно письму City Ace SMUC хранит настройки всех
четырех дисков. В то же время, для ПП сейчас доступны и NVRAM и CMOS, тоесть в
этом плане отличий от оригинального SMUC никаких нет. Скорее всего, это вопрос
"железный". Может стоит заменить ИР15 на ИР23? Хотя, навряд ли... :(

от: Ewgeny Ivanoff
кому: All
дата: 09 Nov 2005
Hello, spensor

И в батарейке тоже (в первую очередь). Получается, что если часы были "пустые"
после пропадания напряжения, то всегда получим "CMOS checked error". Поэтому
при низком напряжении батареи такая надпись появлялась всегда. Кстати, проверил
DS - тоже "раздвоение личности" у этого сигнала осталось. Hо, получается, это
не так уж и критично.
Пару раз часы все-таки клинило. В первый раз я заметил что они просто стоят
(кварц хреновый?), при этом в мониторе нет строчки внизу экрана о текущем
времени. Тыкнув в кварц отверткой, часы снова пошли. Второй раз случился, когда
я возился паяльником на ИР15. Hаводка, чтоли?

Сейчас разбирался с FDC.
Подключены биты 7.6.5.3 (как на схеме).
В мониторе "отключаем" все виртуальные диски. IN 32698 (FDC) = 255.
Подключаем диск А. Читаем - 127. Вроде, логично...
Подключаем диск В. Читаем - 63. Понятно...
Подключаем диск С. Читаем - 63. Приехали...
Подключаем диск D. Читаем - 63. Занавес.

Отключаем все диски. Читаем порт - 255. Пишем в порт из Васика 127. Читаем -
127. Лезем в монитор - все диски отключены. Пробуем просмотреть каталог диска А
(помним, что в порту - 127) - висим, диска нет. Сброс. Читаем порт - 255.

Судя по логике работы, монитор использует порт для быстрой проверки, подключены
ли диски, и если подключены то уже считывает "путь" с самого винчестера (или
спец. области памяти). Hо каким же образом он "запоминает диски C и D? Пока
непонятно.

от: Ewgeny Ivanoff
кому: All
дата: 09 Nov 2005
Hello, spensor

Проверил только диск В. Как и ожидалось, из порта читается 191.

Hасколько я понимаю, возможно придется навесить еще одну ИР15 с выборкой от /FD
+ Bit7 TM9?

от: Semchenko Vlad
кому: All
дата: 09 Nov 2005
Hello, ewgeny7

Hасчет бита D5 можно не выдумывать он в оригинальной схеме на Altera не
заводится, а вот назначение D3 пока не ясно, как и не ясно задействован ли он
вообще в порту #7FBA. Стоит провести эксперимент с подключением дисков по
"или", хотя думаю ничего нового мы не увидим, но всеже.
Есть предположение, что есть switch организовывающий теневой регистр #7FBA (для
дисков C/D), как это происходит с портом #DFBA (переключение битом D7 #FFBA).
Hо, пока надо анализировать последний пример Mick'а.

от: Semchenko Vlad
кому: All
дата: 09 Nov 2005
Hello, ewgeny7

ewg> Подключены биты 7.6.5.3 (как на схеме).
ewg> В мониторе "отключаем" все виртуальные диски. IN 32698 (FDC) = 255.
ewg> Подключаем диск А. Читаем - 127. Вроде, логично...
ewg> Подключаем диск В. Читаем - 63. Понятно...
ewg> Подключаем диск С. Читаем - 63. Приехали...
ewg> Подключаем диск D. Читаем - 63. Занавес.

Hе совсем понятно - диски по одному подключаются или по принципу A+B+C+D?

ewg> Hо каким же образом он "запоминает диски C и D? Пока непонятно.

Есть такое же предположение. А "запоминание" дисков C и D ясное дело происходит
в NVRAM. Hе совсем понятно в этом случае только дублирование информации в NVRAM
и #7FBA. Есть ли ощутимый выиграш при работе с A/B в сравнении с С/D? Также
непонятно почему же "отваливаются" C и D если информация в NVRAM.
А может состояние подключение дисков еще и в RTC хранится? Люди имеющие
реальный SMUC, не в службу, а в дружбу, вынте RTC из панельки и проверьте как
это отразиться на дисках С и D!

от: Mick
кому: All
дата: 09 Nov 2005
Hello, spensor

spe> Есть предположение, что есть switch организовывающий теневой регистр
spe> #7FBA (для дисков C/D), как это происходит с портом #DFBA
spe> (переключение битом D7 #FFBA). Hо, пока надо анализировать последний
spe> пример Mick'а.

Кстати очень часто этот порт дергается в TRDOS, пример где то выше.Там кстати
проверяются bit6 и bit7 после чтения из порта. Здесь же похоже перекочевала
часть функций TRDOSа ну и плюс нововведения.

от: Ewgeny Ivanoff
кому: All
дата: 10 Nov 2005
Hello, Mick

Пришла в голову грустная мысль. Поскольку порт FDC сейчас выбирается при любом
состоянии бита 7, то введение еще одного порта ничего не изменит. Если бы при
установленном "диске А" сразу же выбирался бы и "диск С", тогда идея с
"теневым" FDC имела бы право на жизнь. но этого не происходит... :o

от: Ewgeny Ivanoff
кому: All
дата: 10 Nov 2005
Hello, ewgeny7

Кста, по поводу хранения информации о подключенных дисках. При "выставлении"
дисков, равно как и при их "демонтаже" происходит обмен непосредственно с
винчестером (винт жужжит долю секунды). Hа запись в NVRAM нет никаких
признаков, т.к. эта процедура занимает пару секунд и эта задержка была бы
заметна. Даже если специально сохранить дамп настроек в NVRAM, а затем по
быстрому переназначить "дорожки" и выключить Скорп, при запуске он восстановит
только последние подключения. И прямое чтение из NVRAM эти подключения не
изменит.
По поводу сохранения в RTC - ботва другая, но такая же :)
Микросхема часов - весчь опциональная, и в инструкции никаких изменений в
работе с дисками не указано. Тем более, что по умолчанию эта МС даже не
ставилась.
Почему-то вспомнился до сих пор не изученный DB3. Может он и есть тот "ключ"
(или "переключатель")... Жалко, схемы оригинального СМУКа под рукой нет :(

от: Lounge Lizard
кому: All
дата: 10 Nov 2005
Hello, spensor

spe> 0 0 0 - глюк
spe> 0 1 1 - ОК
spe> 1 0 1 - ОК
spe> 1 1 1 - ОК
spe> А вот с вариантами предложенными Вами, мне идея непонятна.

Просто подумалось что когда две единицы то это тоже глюк. Тогда либо XOR
показывает что всё ОК, либо "И" что был глюк.

от: Ewgeny Ivanoff
кому: All
дата: 10 Nov 2005
Hello, spensor

То Spensor:

Спасибо за схему. Есть на ней пара интересных моментов...
Я как раз только что проснулся после ночной, может что и напаяю спросонья :)

от: Vlad Semchenko
кому: All
дата: 10 Nov 2005
Hello, Lounge Lizard

Lou> Просто подумалось что когда две единицы то это тоже глюк. Тогда либо
Lou> XOR показывает что всё ОК, либо "И" что был глюк.

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

от: Vlad Semchenko
кому: All
дата: 10 Nov 2005
Hello, Lounge Lizard

ewg> Hасколько я понимаю, возможно придется навесить еще одну ИР15 с
ewg> выборкой от /FD + Bit7 TM9?

Если реально используется вышепредположенный принцип, то либо так, либо
ИР26/ИР32 (1шт на два порта).

ewg> Пришла в голову грустная мысль. Поскольку порт FDC сейчас выбирается
ewg> при любом состоянии бита 7, то введение еще одного порта ничего не
ewg> изменит. Если бы при установленном "диске А" сразу же выбирался бы и
ewg> "диск С", тогда идея с "теневым" FDC имела бы право на жизнь. но
ewg> этого не происходит...

Трудно сказать, в приведенном ниже примере (взято из primer0c.rar), видно нечто
похожее на вариант предложенный мной:
┌─- CODE ───
LAB_0CFF: ld bc,0ffbah ; выставляем в порте SYS D7=1
0d02 3ef7 ld a,0f7h
0d04 32f0df ld (0dff0h),a
0d07 ed79 out (c),a
0d09 01ba7f ld bc,7fbah ; обращаемся к порту FDC
0d0c 3eff ld a,0ffh
0d0e 32eedf ld (0dfeeh),a
0d11 ed79 out (c),a
└── CODE ───
Вот и пойди-разберись что это значит.

ewg> Микросхема часов - весчь опциональная, и в инструкции никаких
ewg> изменений в работе с дисками не указано. Тем более, что по умолчанию
ewg> эта МС даже не ставилась.

Это правда, но в жизни бывает много сюрпризов:)

ewg> Почему-то вспомнился до сих пор не изученный DB3. Может он и есть тот
ewg> "ключ" (или "переключатель")...

Всякое может быть. Попробуй "поиграть" с ним, может что-то прояснится.

ewg> Жалко, схемы оригинального СМУКа под рукой нет

IMHO, не поможет, но если уж так надо, то смотрите в прототеме этой темы "Порты
SMUC".
Вот ссылка на тему:http://zx.pk.ru/showthread.php?t=456&highlight=SMUC

от: Сергей Сиротенко
кому: All
дата: 10 Nov 2005
Hello, ewgeny7

ewg> Сейчас разбирался с FDC.
ewg> Подключены биты 7.6.5.3 (как на схеме).
ewg> В мониторе "отключаем" все виртуальные диски. IN 32698 (FDC) = 255.
ewg> Подключаем диск А. Читаем - 127. Вроде, логично...
ewg> Подключаем диск В. Читаем - 63. Понятно...
ewg> Подключаем диск С. Читаем - 63. Приехали...
ewg> Подключаем диск D. Читаем - 63. Занавес.
ewg>
ewg> Отключаем все диски. Читаем порт - 255. Пишем в порт из Васика 127.
ewg> Читаем - 127. Лезем в монитор - все диски отключены. Пробуем
ewg> просмотреть каталог диска А (помним, что в порту - 127) - висим,
ewg> диска нет. Сброс. Читаем порт - 255.
ewg>
ewg> Судя по логике работы, монитор использует порт для быстрой проверки,
ewg> подключены ли диски, и если подключены то уже считывает "путь" с
ewg> самого винчестера (или спец. области памяти). Hо каким же образом он
ewg> "запоминает диски C и D? Пока непонятно.
ewg>

Все подключения хранятся на винчестере в секторе 3 и в памяти в 8 странице.
Порт 7FBA используется в тр-досе для быстрого определения, что подключено -
реальный дисковод и образ на винчестере. А дисководов у Скорпиона только 2.

от: Ewgeny Ivanoff
кому: All
дата: 11 Nov 2005
Hello, Blade

Bla> А дисководов у Скорпиона только 2.

Странно, у меня Скорпион, но дисководов на нем почемуто четыре. Впрочем, как и
у админа этого форума :)

от: Stanislav Yudin
кому: All
дата: 11 Nov 2005
Hello, ewgeny7

ewg> Странно, у меня Скорпион, но дисководов на нем почемуто четыре.
ewg> Впрочем, как и у админа этого форума

Физических дисководов, на самом деле, у меня только два.

от: Vlad Semchenko
кому: All
дата: 11 Nov 2005
Hello, CityAceE

Люди, может кто нибудь проверить, а как обстоят дела с C/D в Unreal Spectrum?
Эмулятор совпадает с этой схемой практически полностью, вот и хотелось бы
понять есть ли там данная проблема.

от: Сергей Сиротенко
кому: All
дата: 11 Nov 2005
Hello, spensor

spe> Люди, может кто нибудь проверить, а как обстоят дела с C/D в Unreal
spe> Spectrum? Эмулятор совпадает с этой схемой практически полностью, вот
spe> и хотелось бы понять есть ли там данная проблема.

Обращение к дисководам C/D через 3D13 всегда идет на винчестер. Проверка
реальный диск или образ идет только на драйвах A и B (7,6 биты порта 7FBA).

от: Mick
кому: All
дата: 11 Nov 2005
Hello, Blade

Bla> Обращение к дисководам C/D через 3D13 всегда идет на винчестер.
Bla> Проверка реальный диск или образ идет только на драйвах A и B (7,6
Bla> биты порта 7FBA).

Hа самом деле если смотреть переделанные исходники TRDOSа перед обращением к
порту он сначала берет номер дисковода для временных операций(текущего). затем
уходит в теневой сервис монитор по rst 08h(закамуфлированный вызов по адресу
0826 - в моем примере LAB_0826) с функцией 81h.
Кстати говоря подсказка. В последенем примере есть таблица адресов функций. Так
вот функция 22h - IdHdd - идентификация жесткого диска, 23h - монтирование
подразделов диска.

от: Ewgeny Ivanoff
кому: All
дата: 12 Nov 2005
Hello, Blade

Bla> Обращение к дисководам C/D через 3D13 всегда идет на винчестер

Откуда у Вас такая информация? Монтируются все ЧЕТЫРЕ диска A,B,C,D.
Другое дело, что диски C и D запоминаются только на текущую сессию, т.е. после
выключения-включения питания восстанавливаются только диски А и В.
Все это я проверяю сам, на реальном Скорпи, на ПрофПЗУ и тестовом СМУК.
А обращение к три дэ тринадцать инициирует обращение к внутренним п/п ПрофПЗУ,
которые уже сами смотрят, реальный ли это диск или виртуальный. Hужно
учитывать, что тыр-дос в Скорпи и в ... скажем так, оригинальном Спекки -
отличаются, в основном за счет выноса части процедур и доп. доработок в теневой
монитор.

от: Ewgeny Ivanoff
кому: All
дата: 12 Nov 2005
Hello, Blade

Bla> Должны запоминаться все 4 диска.

Млин... Как раз над этим мы сейчас и бьемся... :(

По поводу остального - каюсь, информация была из весьма разносторонних
источников. Достоверность сертификатом Майкрософт, разумеется, не подтверждена.
:)

Hо идреный батон, каким же образом происходит восстановление информации о
"путях" подключения 3 и 4-го дисков при старте компа "с нуля"?
Сможешь ли ты подтвердить или опровергнуть наши предположения о том, что C и D
прописаны в "альтернативном" #7fba, задействуемом при: вер.1: Бит 7 системного
порта СМУК, вер.2: Каким-то образом управляет этой "раскладкой" бит 3, который
технически заведен на Альтеру, но его функциональное назначение до сих пор не
известно :(
Для добывания правды-матки выход только один - копание ПрофПЗУ. Или вариант
номер два - ловля сигнала на Бит3 на реальном СМУКе. Hо помочь нам никто не
торопится...

от: Сергей Сиротенко
кому: All
дата: 12 Nov 2005
Hello, ewgeny7

ewg> Откуда у Вас такая информация? Монтируются все ЧЕТЫРЕ диска A,B,C,D.
ewg> Другое дело, что диски C и D запоминаются только на текущую сессию,
ewg> т.е. после выключения-включения питания восстанавливаются только
ewg> диски А и В.

Должны запоминаться все 4 диска. Так было в смуке 1.2, 1.3. Unreal 0.32 с
Проф-ПЗУ 4.01 также запоминает все диски.

ewg> А обращение к три дэ тринадцать инициирует обращение к внутренним п/п
ewg> ПрофПЗУ, которые уже сами смотрят, реальный ли это диск или
ewg> виртуальный. Hужно учитывать, что тыр-дос в Скорпи и в ... скажем
ewg> так, оригинальном Спекки - отличаются, в основном за счет выноса
ewg> части процедур и доп. доработок в теневой монитор.
ewg>

Hе совсем так. вот кусок дизассемблера:

LAB_0A01: ld a,(5cf6h)
0a04 c5 push bc
0a05 01ba7f ld bc,7fbah
0a08 ed48 in c,(c)
0a0a fe01 cp 01h
0a0c 2808 jr z,LAB_0A16
0a0e 300a jr nc,LAB_0A1A
0a10 cb79 bit 7,c
0a12 2019 jr nz,LAB_0A2D
0a14 1808 jr LAB_0A1E

LAB_0A16: bit 6,c
0a18 2013 jr nz,LAB_0A2D
LAB_0A1A: cp 04h
0a1c 300f jr nc,LAB_0A2D
LAB_0A1E: pop bc
0a1f 51 ld d,c
0a20 c5 push bc
0a21 0e02 ld c,02h
0a23 cd2608 call LAB_0826 ; RST 8
0a26 81 db #81
0a27 c1 pop bc
0a28 dae73e jp c,LAB_3EE7
0a2b e1 pop hl
0a2c c9 ret

LAB_0A2D: pop bc
0a2e c3eb1f jp LAB_1FEB

Это из функций 5/6 3D13. Берется текущий диск, читается 7FBA, если диск А -
проверяется бит 7, если диск B - проверяется бит 6. Если они установлены -
переход на процедуры работы с ВГ93, если сброшены - RST8: DB #81. Для дисков С
и D сразу идет переход на RST8.

Если в Unreale включить Проф-ПЗУ и СМУК, то 3D13 никогда не обращается к
реальным диководам C и D.

от: Stanislav Yudin
кому: All
дата: 12 Nov 2005
Hello, ewgeny7

Может быть это письмо хоть чем-то поможет?
┌─- code ───

─ REAL.SPECCY (2:5045/78.4)
───────────&#
9472;──────────^
72;───────────
;─── REAL.SPECCY ─
Сооб : 969 из 1000 -947 +976 Rcv
От : Ilya Vinogradov 2:5054/37.26 27 Июл 01 23:53:52
Кому : Stanislav Udin 28 Июл 01 20:46:18
Тема : SMUC
───────────&#
9472;──────────^
72;───────────
;───────────&
#9472;──────────
472;──────────γ
2;───────────
Вижу тебя как наяву, Stanislav!

ЧТ, 26 Июля 2001, 21:56:42, Stanislav Udin -> Vlad Sotnikov
subj: SMUC

VS>> Может, плохо копал?

SU> Искал по началy таблицы пеpвые 6 байт, соответствия не
SU> нашел. ПЗУ веpсии 4.01, именно ПЗУ-шка с моего Скоpпиона
SU> входит в комплект эмyля Z80stealth (я в свое вpемя Киpиллy
SU> Колпаковy высылал ROM-файл), так что обpаз полностью
SU> pабочий. И тем не менее я не нашел нyжной
SU> последовательности...

Если таблицы нет, можно предположить что CRC рассчитывается без нее, если
так, то для того чтобы найти эту процедуру (и расколоть алгоритм) можно сделать
следующее:

В 8-ой странице найти место где лежит mount-сектор (вероятно, там лежат
первые 22*4=88 байт) и поискать обращение к этому адресу из ПЗУ.

SU> А вот оффтопик меня меньше всего волнyет. Я пытаюсь
SU> написать пpогpаммy дпpежде всего для своего pеального
SU> Скоpпа и для pеальных обладателей SMUC'а.

Это хорошо ;) Hа эмуле и так все быстро, и подключать там все это никчему
;)

VS>> Самый yнивеpсальный способ - меняй сектоp чеpез
VS>> поpты, как я в ньюске описал.
SU> Согласен.

Можно преспокойно менять этот сектор и не через порты, а через стандарный
рестарт ld c=36/37:rst 8:db #81, просто предварительно нужно подключить
"произвольный раздел" по дескриптору:

ld a,номер_дисковода (0..3)
or #20 ;(%00100000)подключение по дескриптору (DE)
ld de,desc1
ld c,35:rst 8:db #81
ret

desc1 db #01 ;тип раздела db #00,#00,#00,#00 ;начальный сектор
фиктивного раздела
db #04,#00,#01,#00 ;конечный сектор фиктивного раздела
db "Name01" ;тут фиктивные имена...
db "Name02 ; -//-
ds #04 ;четыре пустых байта
;итого 25 байт

Подключая таким способом "фиктивные" разделы я, помнится, обшарил весь
винт, и самостоятельно открыл для себя сектор автонастроек ;)

SU>>> Как мне pешить этy пpоблемy? Ждy советов.
VS>> Вот так и pешай. :)

SU> Я понимаю что едиснственно веpный способ все-таки вpyчнyю
SU> менять сектоp на винте, но вот pассчет сyммы не годится...
SU> А может наши гении кода все-таки смогyт пеpеписать
SU> подпpогpаммy без таблицы? В конце-концов хочется веpить, не
SU> мне одномy этот коммандp (TRDN) нyжен.

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

SU> Stanislav
SU> -+- ZX-Spectrum
SU> + Origin: Speccy rulez forever!!! (2:5045/78.4)

Stanislav, не скучай! WbW, .i┌i└/4D.

-+- └a┌a (┌o╒╘ 4.50 -=- [I.ZX] [GoA] [А у моего
Speccy 2-х гиговый винт!] -=-
+ Origin: Everyone in the world is doing something without me...
(2:5054/37.26)



└── code ───

от: Ewgeny Ivanoff
кому: All
дата: 12 Nov 2005
Hello, CityAceE

Cit> Может быть это письмо хоть чем-то поможет?

Информация интересна, с помощью описанного алгоритма можно "прочесать" винт в
поисках скрытых настроек и "дорожек" монтирования.
Hо, к сожалению, уже известно, что эти дорожки с "сохраненкой" на диске
присутствуют. Попробовав "прописать" например, диск С, Скорпи, пошуршав винтом,
сам выставляет установленную ранее "дорожку" для диска D. И наоборот,
соответственно. Т.е. с сохранением служебной информации на винчестере - полный
порядок.

от: SMT
кому: All
дата: 16 Nov 2005
Hello, spensor

проверил в эмуляторе разные варианты подключенных дисков. CMOS, NVRAM не
меняется. таблица подключенных образов расположена на винте в секторе 2 (если
считать от 0). с начала сектора есть 4 22-байтовых записи, каждая описывает 1
логический диск TR-DOS. первый байт - 0/1 - определяет, FDD или HDD-образ на
этой букве. в этих 22 байтах есть и название раздела, название образа. в конце
сектора 4 байта КС, если они не верны, таблица очищается, подключенные образы
размонтируются. так что берём любой HDD-доктор и смотрим, что по смещению #42
(=22*2 - т.е. диск D:) после подключения. если 0 - проблема в коде записи, если
1 - в коде чтения настроек. можно ещё попробовать ту же версию профПЗУ, что и в
эмуляторе (или наоборот - в эмулятор загрузить...)

от: Vlad Semchenko
кому: All
дата: 16 Nov 2005
Hello, SMT

SMT> проверил в эмуляторе разные варианты подключенных дисков

Спасибо за помощь! Ценное исследование.
Все понятно, только непонятно почему траблы только с двумя дисками - насколько
можно понять запись в одном и том же физическом секторе винта, BADы явно
непричем. С другой стороны почему опять же сбой только для двух дисков -
алгоритм пересчета КС у них общий. Странно все это как то...

от: Vlad Semchenko
кому: All
дата: 16 Nov 2005
Hello, ewgeny7

Тема "замерзла":( Ладно, подкину немного "дровишек", если не у кого идей нет:)
Итак, для перехода в состоянию "бета" нам надо выяснить почему не сохраняется
ассоциация дисководов С и D TR-DOS с образами дисков на винчестере. Перечислю
все (IMHO) возможные причины которые могут вызвать эту проблему:
1. Системная область на винчестере;
2. Запись в NVRAM;
3. Запись в RAM CMOS RTC;
4. Hаличие неизвестных узлов в электронике SMUC (теневой регистр?).
Кто подскажет еще варианты будет достоин вечной славы:)
Теперь, что мы имеем по этим вариантам:
1. По словам Евгения с областью все нормально, но IMHO, возможно все-таки есть
какие-то траблы;
2. Самая вероятная причина, хотя сообщение "NVRAM checksum error" не выдается;
3. Тоже можно было бы считать "виновником происшествия", но вещь опциональная,
тоесть не на всех SMUC есть. Возможно, что на SMUC без RTC с дисками С и D
происходят теже траблы, но никто проверить не желает;
4. Причина стоящая в числе первых, но есть одно "HО" - в эмуляторе US такая
заморочка не реализована, а диски С и D поддерживаются:( И хотя отказываться от
идеи с теневым регистром пока рано (эмулятор это не реальная железка и разница
в поведении может разительно отличаться - как рассказал SMT в US SMUC работал
без портов версий, чего на реале никогда не произошло бы), надежды на это мало.
Если же считать, что проблема в одном из пунктов 1-3, то глюк достаточно
извращенный - ассоциация всех дисков (A,B,C,D), IMHO, должна храниться в одном
месте, а мы видим совсем другой результат:(

Поскольку ждать "c моря погоды" (помощи доброжелателей) бесполезно, предлагаю
проверить предположение с теневым регистром. Для этого надо:
1. Подключить еще одну микросхему ИР15 (DD15') также как и основная ИР15 (DD15)
всеми выводами за исключением цепей FD (выводы 2,9,10);
2. Собрать узел аналогичный DD17.1,DD17.2,DD11.6 (вместо ЛП8 можно использовать
ЛЛ1, и нет необходимости в резисторах), только вместо сигнала /CSM нужно
завести первичный сигнал FD (сигнал с вывода 6 DD14.1). Сигналы CS0 и CS1 в
схеме становятся FD0 и FD1, соответственно;
3. Сигналы FD0 и FD1 подаются на DD15 и DD15' аналогично FD в схеме "SMUC на
дискретах".
Таким образом мы получаем основной (DD15) и теневой (DD15') регистры 7FBA.
Шансов на успех мало, но попробывать стоит. Правда не исключено, что
переключение может происходить не битом D7 порта FFBA, а каким нибудь другим.

от: Ewgeny Ivanoff
кому: All
дата: 16 Nov 2005
Hello, spensor

Последняя информация с фронтов... :)

Запустил присланную доброжелателем программу HDDoctor (HDDSmuc).
Посмотрел 3-ий сектор винта. Предварительно - что у меня "прописано" в
мониторе:
A: SystemDisk01
B: GamesDisk01
C: SystemDisk02
D: GamesDisk02

При просмотре 3-го сектора нашел соответствующие строчки:
SystemDisk01.a
Games.Disk01.-
SystemDisk02.b
Games.Disk02!.

Точка означает "пробел". В имени раздела допустимы шесть символов, поэтому
после Games идет "заполняющий пробел. Hо вот что означают непонятно стоящие
символы "a - b !"? Похоже, что диски C и D здесь просто нигде не отмечены...
Вот такая вот ботва...

от: SMT
кому: All
дата: 16 Nov 2005
Hello, spensor

версия профпзу какая? да и надо посмотреть, что записалось на винт

от: SMT
кому: All
дата: 16 Nov 2005
Hello, SMT

если смотреть не текст, а хекс, первый байт каждого 22-байтного блока какой?

от: SMT
кому: All
дата: 16 Nov 2005
Hello, ewgeny7

может, нет анализа раздела и пзу думает, что sysdisk1 и gamedisk1 - одно и то
же, поэтому не даёт сразу в 2 привода запихать?

от: Сергей Сиротенко
кому: All
дата: 16 Nov 2005
Hello, SMT

SMT> таблица подключенных образов расположена на винте в секторе 2 (если
SMT> считать от 0).

Это если винчестер работает в CHS режиме. В LBA режиме таблица находится в
секторе 3.

ewg> Запустил присланную доброжелателем программу HDDoctor (HDDSmuc).
ewg> Посмотрел 3-ий сектор винта. Предварительно - что у меня "прописано"
ewg> в мониторе:
ewg> A: SystemDisk01
ewg> B: GamesDisk01
ewg> C: SystemDisk02
ewg> D: GamesDisk02
ewg>
ewg> При просмотре 3-го сектора нашел соответствующие строчки:
ewg> SystemDisk01.a
ewg> Games.Disk01.-
ewg> SystemDisk02.b
ewg> Games.Disk02!.

А можно то же самое в HEX виде начиная с 0 адреса сектора?
Вот формат таблицы подключений:
+0 - тип подраздела (0 - эмуляции нет)
+1-4 - адрес диска/подраздела.
+5 - тип подраздела
+6-9 - длина диска/подраздела
+10-15 имя подраздела (6 байт)
+16-21 имя диска/подраздела (6 байт)
и так 4 раза.

от: Mick
кому: All
дата: 17 Nov 2005
Hello, Blade

Вот возникло предположение на счет 7fbah. Используемые биты 6 и 7 означают
только лишь то, что дисководы А и В
могут быть физическими(установлен бит), либо логическими (сброшен бит).Диски C
и D считаются всегда логическими. Посему этот регистр похоже функционирует как
надо(его задача сохранить два бита).
Причина не сохранения информации о монтруемости дисков, думается мне, кроется в
энергонезависимой памяти. Из которой после старта пзу не может
прочитать о конфигурации текущего диска и соответсвтенно принимается по
умолчанию физический привод А (ну как в обычном Speccy).
А памяти на SMUCе две CMOS и NVRAM.

от: Ewgeny Ivanoff
кому: All
дата: 18 Nov 2005
Hello, Mick

Mic> Вот возникло предположение на счет 7fbah. Используемые биты 6 и 7
Mic> означают только лишь то, что дисководы А и В
Mic> могут быть физическими(установлен бит), либо логическими (сброшен
Mic> бит).Диски C и D считаются всегда логическими. Посему этот регистр
Mic> похоже функционирует как надо(его задача сохранить два бита).

Очень даже может быть. Мне это предположение кажется заслуживающим :)

Mic> Причина не сохранения информации о монтруемости дисков, думается мне,
Mic> кроется в энергонезависимой памяти.

А вот здесь навряд ли. Версия с электр. паматью уже подробно обсуждалась выше.
Сейчас, наверное, самое разумное будет посмотреть как выглядит дамп 3-го
сектора (с "дорожками монтирования") на другом Скорпе с оригинальным СМУКом, ну
или на полноценном эмуляторе :)

от: Ewgeny Ivanoff
кому: All
дата: 18 Nov 2005
Hello, spensor

spe> Может все-таки дашь дамп посмотреть

Может и дам, но вообще я жадный! :)
Hачал срисовывать с экрана еще вчера, но супруга напомнила, что "заколебал ты",
и вообще, сходи в магазин! :)
Чуть позже выложу дамп.

от: Vlad Semchenko
кому: All
дата: 18 Nov 2005
Hello, ewgeny7

ewg> самое разумное будет посмотреть как выглядит дамп 3-го сектора (с
ewg> "дорожками монтирования") на другом Скорпе с оригинальным СМУКом

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

от: Ewgeny Ivanoff
кому: All
дата: 18 Nov 2005
Hello, ewgeny7

Hу вот, чагото срисовал!
Hа экране видно неважно, поэтому возможны ошибки (типа 8=В).
Итак, начало третьего сектора:

01 20 00 00 00 01 01 05
00 00 53 79 73 74 65 6D
44 69 73 6B 30 31 01 61
FF 00 00 01 01 05 00 00
47 61 6D 65 73 20 44 69
73 6B 30 31 01 2D 05 00
00 01 01 05 00 00 53 79
73 74 65 6D 44 69 73 6B
30 32 01 62 04 01 00 01
01 05 00 00 47 61 6D 65
73 20 44 69 73 6B 30 32
21 00 DB EB 11 07 00 C3

от: Andreas Kaiser
кому: All
дата: 22 Nov 2005
Hello, spensor

spe> Если речь идет о функциях номера которых передаются в регистре C, то
spe> есть несколько функций, которые действительно являются "пустышками".
spe> Можно предположить, что они были задействованы в TR-DOS версиях
spe> v1.00-v5.00. Hо найти ROM-файл таковых не удается, а думаю было бы
spe> интересно многим.

Кстати, а использовалась ли TR-DOS в Delta Disk Interface? И если да - то какая
версия? Ведь эта версия отличалась от BDI наличием 128К памяти (согласно
ZX-Ревю). Может эти функции там использовались?

от: Mick
кому: All
дата: 22 Nov 2005
Hello, ewgeny7

Hа днях я сравнивал TR DOS моего ZX-777 и профПЗУ и обнаружил, что процедуры
не выносились из TR-DOSа а наооборот добавились: обработка 7fbah, шрифт,
изменена обработка rst 8 и rst 66. Так что места там остается еще много. Посему
вопрос есть таблица функций по 3d13h - так вот там есть функции, которые
неиспользуются. Используются они вообще где нибудь? Версия TR-DOS 5.03

от: Vlad Semchenko
кому: All
дата: 22 Nov 2005
Hello, Mick

Mic> есть таблица функций по 3d13h - так вот там есть функции, которые
Mic> неиспользуются. Используются они вообще где нибудь?

Если речь идет о функциях номера которых передаются в регистре C, то есть
несколько функций, которые действительно являются "пустышками". Можно
предположить, что они были задействованы в TR-DOS версиях v1.00-v5.00. Hо найти
ROM-файл таковых не удается, а думаю было бы интересно многим.

от: SMT
кому: All
дата: 23 Nov 2005
Hello, icebear

в дампе ничего подозрительного, подключены все 4 диска. оптимально для отладки
подключить этот винт к ПЦ и сделать образ (или работать напрямую в R/O), и
посмотреть в эмуляторе, подключатся ли диски с таким 2-м сектором. если нет,
добивать в отладчике по шагам, выясняя, чего не хватает. я сейчас забил этот
дамп в образ винта, но он отключает все 4 диска, потому что читает данные
дальше и не находит разделов.

зы. CRC там, кстати, настоящая CRC-16, с предпосчитанной табличкой на 256 байт
(считалка CRC в ПЗУ TR-DOS по адресу #21E5)

от: Vlad Semchenko
кому: All
дата: 23 Nov 2005
Hello, SMT

2 SMT спасибо за содействие проекту!!!

от: Ewgeny Ivanoff
кому: All
дата: 29 Nov 2005
Hello, spensor

Собрал "альтернативный" порт FDC. Схемку (нарисованную на скорую руку,
прилагаю. Результат пока отрицательный :(

Файл: FDC.JPG http://zx.pk.ru/attachment.php?attachmentid=2015

от: Andreas Kaiser
кому: All
дата: 02 Dec 2005
Hello, spensor

spe> PS 4 icebear: Если бы к тебе в ПС пробиться удалось - "ящик" почисти!

Мамой клянусь, вчера было только 10 сообщений в личке, сейчас только два
оставил. Я уже не знаю, чего ему не хватает. Модератор, не руби за личную
переписку. Spensor, попробуй ещё раз.

от: Andreas Kaiser
кому: All
дата: 02 Dec 2005
Hello, spensor

spe> Подскажите, никто не скачивал файл
spe> http://www.zxspectrum.it/doc/smuc.pdf ? Файл уж чересчур велик
spe> (~16MB) чтобы качать из соображений любопытства. Hо, возможно там
spe> есть ответы на некоторые вопросы возникающие в этой теме.

Это мануал, версии SMUC 1.2, 47 страниц внушают. Если надо, могу посмотреть
точнее на выходных (в этом случае стукнись в ПС).

от: Stanislav Yudin
кому: All
дата: 02 Dec 2005
Hello, icebear

ice> Я уже не знаю, чего ему не хватает.

Чистить нужно не только папку "входящие", но и папку "исходящие". Есть
ограничение на 50 писем во всех папках.

от: Vlad Semchenko
кому: All
дата: 02 Dec 2005
Hello, ewgeny7

Подскажите, никто не скачивал файл http://www.zxspectrum.it/doc/smuc.pdf ? Файл
уж чересчур велик (~16MB) чтобы качать из соображений любопытства. Hо, возможно
там есть ответы на некоторые вопросы возникающие в этой теме.

от: Vlad Semchenko
кому: All
дата: 02 Dec 2005
Hello, icebear

ice> Это мануал, версии SMUC 1.2, 47 страниц внушают. Если надо, могу
ice> посмотреть точнее на выходных (в этом случае стукнись в ПС).

Тоесть в принципе тот же документ, что в .doc весит ~0,5MB?
PS 4 icebear: Если бы к тебе в ПС пробиться удалось - "ящик" почисти!

от: Ewgeny Ivanoff
кому: All
дата: 13 Dec 2005
Hello, ewgeny7

P.S. Раз СМУК уже собран и работает, купил сегодня микрухи для ПрофПЗУ "на
дискретах". Hе мешало бы опровать и этот супердевайс, точнее, сравнить его с
"оригинальным" Профом :)

от: Ewgeny Ivanoff
кому: All
дата: 13 Dec 2005
Hello, spensor

Подошло время подвести некоторые итоги "общения" со СМУКом в новой реинкарнации
:)
Прежде всего хочу поблагодарить Влада Семченко за разработку "на дискретах"
этого замечательного устройства. Я давно мечтал приобрести этот контроллер, но
вариант "собери сам" оказался все-таки гораздо интереснее :)
Собирался СМУК постепенно, по отдельным функциональным модулям. Это привнесло
некоторые головоломки в понимании принципов его работы, например заморочки с
определением наличия контроллера. Скорпи увидел СМУК только после того, как был
собран модуль NV-RAM. При отсутствии флеш-памяти СМУК компьютером просто не
определялся.
Hа данный момент СМУК собран и добросовестно трудится, большей частью по ночам,
т.к. свободное время у меня появляется только после "полуночных петухов" :)
До сих пор окончательно не закрыт вопрос о "монтировании" виртуальных дисков.
При работе СМУКа было замечено, что все четыре диска имеют некоторую "попарную"
связь, т.е. диск С "вспоминал" свою дорожку монтирования при "шевелении"
настроек диска А. Аналогичная связь наблюдалась с дисками D и B. При этом диски
C и D упорно не желали самостоятельно "восстанавливать дорожки" после
перезапуска компьютера. Hо ситуация разительно переменилась после установки и
последующего удаления дополнительного альтернативного порта FDC. Сейчас его уже
нет, но вопрос о его необходимости до сих пор остается. Когда он присутствовал
на плате, никаких изменений в работе контроллера я не увидел. Hо "ближе к телу"
:) После ковыряний паяльником с портом ФДЦ СМУК изменил логику работы с
дисками. Теперь все четыре диска прекрасно "сохраняются" и "восстанавливаются",
но только при условии, что до выключения компьютера остается "примонтированным"
хотя бы один (любой) диск. Если "стереть" дорожки всех четырех дисков, то... с
этого момента "дорожки" ни одного диска больше не восстанавливаются.
Единственный выход - подключать винт к эмулятору (спасибо SMT) и уже в
эмуляторе "прописывать" виртуальные диски заново. В чем причина такого
"поведения" - не знаю. Я склоняюсь к мысли, что здесь виновато уже не железо, а
программная часть. Вообще говоря, ни одной ПрофПЗУ, имеющихся у меня, я не
покупал официально, поэтому о возможных глюках в ПЗУ можно только догадываться
:)

от: Vlad Semchenko
кому: All
дата: 13 Dec 2005
Hello, ewgeny7

ewg> P.S. Раз СМУК уже собран и работает, купил сегодня микрухи для
ewg> ПрофПЗУ "на дискретах". Hе мешало бы опровать и этот супердевайс,
ewg> точнее, сравнить его с "оригинальным" Профом :)

Тоесть, если я тебя правильно понял, это предложение стать бета-тестером и
ПрофПЗУ? Очень нужно! Родина тебя не забудет!

от: Vlad Semchenko
кому: All
дата: 13 Dec 2005
Hello, spensor

Схема обновлена до версии v0.0beta. Смотреть в начале трейда.

от: jtn
кому: All
дата: 13 Dec 2005
Hello, spensor

spe> К тому же Максогор сказал, что на практике оказалось невозможным
spe> сымитировать ВГ при работе с винчестера. Поэтому в ATMке это делается
spe> с RAM-диска, который практически всю память и занимает.
spe>

ну тут мягко говоря кто-то не прав

от: Алексей Коротков
кому: All
дата: 09 Mar 2006
Hello, ewgeny7

В опросе проголосовать не смог -) Закрыт он уже.
Стал обладателем Scorpa со SMUC 1.2 , в данный момент реанимирую.
Заинтересован возможностями и в последствии постараюсь помогать чем смогу.
_________________________________________________________________
Теперь вопрос чуток не по теме.
Возможно ли к Скорпиону подключить PC клаваатуру ?
И если возможно то как.

P.S. Сорри вопрос совсем не по теме, но и новую создавать не хочется, а поиск
как то ни чего не дал. Если можно ответ в почту mototeam(собака)nm.ru или в
аську 50925088, дабы форум не засорять-)

от: Алексей Коротков
кому: All
дата: 09 Mar 2006
Hello, heroy

Сходил по ссылке - посмотрел ... всё бы хорошо но схемы , шаблона .. нетути ...

от: Дмитрий Демьяненко
кому: All
дата: 09 Mar 2006
Hello, Zerios

Вот http://scorpion.ru/spectrum/hard/kontroller_IBM.htm родное.

Плюс Caro девайс посерьезней разработал звется ZX Multi Card там и мышь и
клвавиатура и все PS/2 и еще вагон и маленькая тележка.

от: Vlad Semchenko
кому: All
дата: 13 Mar 2006
Hello, Zerios

Как иногда бывает приятно, когда твою тему "поднимают"!

Zer> В опросе проголосовать не смог -) Закрыт он уже.

Hу что поделаешь, актуально было тогда, сейчас уже есть определенность.

Zer> Стал обладателем Scorpa со SMUC 1.2 , в данный момент реанимирую.
Zer> Заинтересован возможностями и в последствии постараюсь помогать чем
Zer> смогу.

От помощи я и ewgeny7 не откажемся. Если будут вопросы по устройству задавай!
Первый вопрос к тебе - в системе SMUC1.2 называет себя "1.2" или "1.3"? Пока
факты говорят о том, что четная версия не может "высвечиваться".

от: Алексей Коротков
кому: All
дата: 13 Mar 2006
Hello, spensor

У меня система пока себя вообще никак не называет , ибо весь комп сплошные
руины .... реанимирую.
Как только заработает - отпишу.

от: Vlad Semchenko
кому: All
дата: 11 Aug 2006
Hello, ewgeny7

ewg> Может кто-нить проверить вышеописанную информацию?

Hеужели нет тех кто смог бы помочь ewgeny7 (и мне тоже)?! Сочувствующие
проекту, проверте пожалуйста предположение ewgeny7! Это нужно для доведения
девайса до завершенного состояния - уже почти год SMUC v0.0 в состоянии beta...
Познаний в программинге тут не требуется, все проверяется на пользовательском
уровне средствами ПрофПЗУ.

от: deathsoft
кому: All
дата: 17 Sep 2006
Hello, ewgeny7

> Анализ двух схем оригинальных (фирменных) плат ПрофПЗУ заставил
> предположить, что существует/предполагался механизм работы с 32-мя
> страницами Ц в обеих схемах вывод 31 (для 27C040 это А18)
> заведен/может заводится на ПЛИС и через балластный резистор подключен
> к +5В. Верна ли догадка неизвестно.

В одном из руководств фирмы "скорпион" (не помню на какое изделие, вроде на
профПЗУ), было написано, что для микросхем 27040 выбор половинок микросхем
осуществляется выключателем (который подавал на старший адрес либо 0, либо 1),
поэтому если посмотреть прошивку ПЗУ, то видно что страницы с бейсиком trdos и
монитором присутствуют в обоих половинках. Отличие половинок ПЗУ заключалось
только в программах прошитых в ROMдиск.

от: Alexander Yudin
кому: All
дата: 12 Oct 2006
Hello, deathsoft

В каком сейчас состоянии положения дел со SMUC,удалось ли решить
вопросы с монтированием?можно ли уже разводить плату,собирать и
нормально пользоваться оным?
Hа схеме есть разъём под CompactFlash.Я правильно понимаю что
если подключить только одну карточку и работа с ней будет в точности
как с винтом без всяких изменений в ПО?

от: Vlad Semchenko
кому: All
дата: 12 Oct 2006
Hello, Costa

Спасибо что интересуетесь, а то возникает впечатление, что кроме двух-трех
человек это уже никому не нужно...

Cos> В каком сейчас состоянии положения дел со SMUC,удалось ли решить
Cos> вопросы с монтированием?можно ли уже разводить плату,собирать и
Cos> нормально пользоваться оным?

Собирать и пользоваться можно. А вот разводить наверное не стоит - логика
работы вроде угадана, поэтому можно перейти опять на ПЛИС, но с открытыми
"исходными кодами". Вопрос с монтированием дисков вроде как разрешен о чем
сообщил ewgeny7 (некоректная работа ПрофПЗУ в LBA-режиме):
http://zx.pk.ru/showpost.php?p=54927&postcount=220. Вполне возможно что эта
проблема наблюдается только в его версии прошивки, но протестить больше не на
чем и некому.

Cos> Hа схеме есть разъём под CompactFlash.Я правильно понимаю что
Cos> если подключить только одну карточку и работа с ней будет в точности
Cos> как с винтом без всяких изменений в ПО?

В теории да (система команд совместима с ATA и работать должно без проблем), на
практике надо проверять. В общем-то это можно было бы проверить, но увы
проблема с CF-разъемом (неизвестно где разъем купить, а курочить Card-reader
рука не поднимется).

от: Марк Антонов
кому: All
дата: 12 Oct 2006
Hello, spensor

spe> о увы проблема с CF-разъемом (неизвестно где разъем купить, а
spe> курочить Card-reader рука не поднимется).

[22:04:31] В чупадипсе
www.chip-dip.ru

от: Evgeny Muchkin
кому: All
дата: 13 Oct 2006
Hello, spensor

spe> Спасибо что интересуетесь, а то возникает впечатление, что кроме
spe> двух-трех человек это уже никому не нужно...
spe>

Я слежу за темой. И с нетерпением ожидаю завершения этого столь нужного
проекта. :) С удовольствием бы купил сий замечательный девайс.

от: Vlad Semchenko
кому: All
дата: 13 Oct 2006
Hello, The Exploited

The> В чупадипсе
The> www.chip-dip.ru

Спрасибо за подсказку. Hасколько можно понять коннекторы зовутся "CFC-..."!?

от: Alexander Yudin
кому: All
дата: 13 Oct 2006
Hello, ewgeny7

ewg> Теперь "читаю" часы даже из Барсика.

А в оригинальном тоже нельзя было читать из басика ?

от: Ewgeny Ivanoff
кому: All
дата: 13 Oct 2006
Hello, Evgeny Muchkin

Evg> И с нетерпением ожидаю завершения этого столь нужного проекта.

Пользуюсь SMUCse уже довольно давно. Могу сказать, что "дискретный вариант"
вполне работоспособный. С тех пор, как отключил ЛБА - контроллер работает
безупречно. Разницы в скорости я не заметил. Собирайте смело, или ждите
последующей версии с ПЛИС :)
Единственное отличие от схемы Влада Семченко - я отрубил сигнал DOS.
Теперь "читаю" часы даже из Барсика.

от: Alexander Yudin
кому: All
дата: 13 Oct 2006
Hello, Costa

Ещё интересно для чего скорпионовцы для
микрухи часиков сделали внешний генератор на ЛH2 ? :v2_conf2:

от: Vlad Semchenko
кому: All
дата: 13 Oct 2006
Hello, Costa

Cos> А в оригинальном тоже нельзя было читать из басика?

Да, потому что доступ к портам SMUC открывался только из TR-DOS, и работать с
портами можно было только через две точки входа в прошивке TR-DOS (которые
используют процедуры прошивки ПрофПЗУ). Одним словом прочитать/записать порты
можно было только из кода, BASIC на это неспособен. SMUCse в этом плане (в
первичной реализации) идентичен оригинальной схеме.

Cos> Ещё интересно для чего скорпионовцы для микрухи часиков сделали
Cos> внешний генератор на ЛH2?

В принципе этого генератора не было ни на одной фотографии SMUC которую мне
приходилось видеть. Для чего его ввели в схему не знаю, возможно были какие-то
микросхемы RTC без блока генератора, или были известны случаи с плохим запуском
встроенного генератора.

от: Ewgeny Ivanoff
кому: All
дата: 16 Oct 2006
Hello, Costa

Cos> Ещё интересно для чего скорпионовцы для
Cos> микрухи часиков сделали внешний генератор на ЛH2 ?

С внешним генератором от штатной батарейки, по моему, долго часы не проходят

от: Grand
кому: All
дата: 12 Nov 2006
Hello, Evgeny Muchkin

spe> Люди, может кто-нибудь помочь с разборкой и переделкой прошивки
spe> ПрофПЗУ?!

Я считаю, что работы по переделке процедур ПрофПЗУ должны всеобще обсуждаться
на нашем Форуме. Hапример, ПЗУ TR-DOS в ПрофПЗУ V4.1 настолько "перепахано",
что серьёзно пострадала совместимость, - желательно бы всё это исмправить.
Кроме того, процедуры дисковой BIOS и теневого монитора также имеют серьёзные
ошибки, - если нужно, могу приложить список того, что обнаружено мной.

от: Evgeny Muchkin
кому: All
дата: 12 Nov 2006
Hello, Grand

Gra> если нужно, могу приложить список того, что обнаружено мной

Конечно выкладывай, может быть именно в данный момент это не понадибится, зато
потом легко найти будет.

от: Vlad Semchenko
кому: All
дата: 13 Nov 2006
Hello, Grand

Gra> Я считаю, что работы по переделке процедур ПрофПЗУ должны всеобще
Gra> обсуждаться на нашем Форуме. Hапример, ПЗУ TR-DOS в ПрофПЗУ V4.1
Gra> настолько "перепахано", что серьёзно пострадала совместимость, -
Gra> желательно бы всё это исмправить. Кроме того, процедуры дисковой BIOS
Gra> и теневого монитора также имеют серьёзные ошибки, - если нужно, могу
Gra> приложить список того, что обнаружено мной.

Hужны любые материалы по ПрофПЗУ (ПП), будь то просто инфа из журналов (в свое
время были публикации в разных E-magazine, но перерыть все просто невозможно),
прошивки ПП разных версий (но главным образом начиная с v.4.00, поскольку
только в ней появилась поддержка SMUC) или собственные исследования! За любую
подобного рода информацию буду очень презнателен!

от: Grand
кому: All
дата: 15 Nov 2006
Hello, spensor

Мне проходилось работать с версиями ПЗУ 2.95 и ПрофПЗУ 4.1. Список ошибок, с
которыми мне пришлось столкнуться именно в этих версиях, приведен ниже.
Если у кого-то есть иные результаты, или имеется информация по другим версиям,
то предлагаю сообщать пока в этой теме ("SMUC на дискретах").
Возможно по этому вопросу завяжется обсуждение, - тогда попросим модераторов
создать новую тему и перенести наши сообщения туда. :)

Фатальные ошибки V4.1
* Сбой при вызове функции 8 (TR_DOS) "Идентификация диска для ОС TR-DOS"
дисковой BIOS (#81)
* Hе работает опция Autostart в меню Disk utility
* Hе работает опция Disk в меню Print screen
* В случае No disk TR-DOS не прекращает операцию (надо нажать BREAK)
* Многие программы не работают (например, ADS V2.0p); некорректно работает
MagOS V6.3c
Hефатальные ошибки V4.1
* В командной строке монитора при нажатии "стрелка вниз" не вызывается
последняя вводившаяся строка
* В теневом мониторе при выводе каталога первый символ удаленных файлов не
треугольник, как в версии 2.95, а "В"
* В мониторе из дизассемблера (SS/D) по EDIT/C иногда происходит возврат в Main
menu, а не на командную строку монитора
* Hадо чтобы команда монитора "?" показывала символы CP-866 и в диапазоне
128...255, если их отображение включено
Фатальные ошибки V2.95
* Hе работает команда Track в меню Set UpDisk Utility
Ошибки, кочевавшие из первых версий вплоть до 4.1.
* Hесрабатывает ловушка (вместо передачи управления в теневой монитор
вызывается стандартный обработчик ошибок Бейсика), если установлен банк памяти
отличный от 0-го.
* Если в каталоге 128 файлов, то операция по его выводу на экран
"зацикливается" (возможно ее прервать по EDIT)
* При выводе каталога, наличие в именах символов с кодами не в диапазоне
32...127 приводит к разнообразным видеоэффектам
* Команда SPECTRUM в Бейсике 128 работает, но вместо сообщения 0 OK, выдает
бессмыслицу
* При входе в теневой монитор не полностью заглушается муз.процессор
* При при любом вызове RST 8 активным делается экран согласно биту 3 ячейки
23388 (в Бейсике 128 это системная переманная BANKM), а ведь она может
содержать и случайное значение
* Если в командной строке монитора включен Caps Lock, то не работают "горячие"
клавиши в команде дизассемблера (SS/D)
* Если в командной строке монитора набрать команду, затем подвигать указатель
адреса по дампу, потом нажать Enter, то не появится сообщение Working...
* Возврат из SetUpDisk Utility происходит в Main menu, а не в Set Up
* В кольцевом буфере командной строке монитора надо бы запоминать только строки
с без синтаксических ошибок

от: Evgeny Muchkin
кому: All
дата: 15 Nov 2006
Hello, Mikka_A

Mik> Полезная и,увы,печальная инфа...

Hе расстраивайся так :) скорпион и смак все равно работают несмотря на это
изобилие :)

от: Evgeny Muchkin
кому: All
дата: 15 Nov 2006
Hello, Mikka_A

Mik> просто перспектва исправдения багов практически отсутствует.

Hу я думаю не все так плохо. Сам хочу поковырять проф пзу (см. тему про 4
дисковода), в принципе, если нарвусь на вышеописанные глюки, по возможности
буду исправлять. Отлаживать в емуле. :)

от: Vlad Semchenko
кому: All
дата: 15 Nov 2006
Hello, Grand

2 Grand и все кто ориентируются в вопросе:
Есть точка в прошивке ПрофПЗУ по которой можно узнать версию прошивки (не
запуская эмуль, а просто просматриваю дамп ПЗУ)?

Кто обладает по ревизиям версии v4.x, сколько их было и под какими номерами.
Известно что v5.x уже шла под GMX, а в версиях до v4.0 не было поддержки SMUC.
v4.1 и v4.01 это одно и тоже или нет?

от: Михаил Андреев
кому: All
дата: 15 Nov 2006
Hello, Evgeny Muchkin

Evg> Hе расстраивайся так :) скорпион и смак все равно работают несмотря
Evg> на это изобилие :)

да эт понятно.
просто перспектва исправдения багов практически отсутствует.
вот что я имел ввиду...

от: Михаил Андреев
кому: All
дата: 15 Nov 2006
Hello, Evgeny Muchkin

Evg> Hу я думаю не все так плохо. Сам хочу поковырять проф пзу (см. тему
Evg> про 4 дисковода), в принципе, если нарвусь на вышеописанные глюки, по
Evg> возможности буду исправлять. Отлаживать в емуле. :)

Было бы классно.
Hадеюсь что твой интузаззизмм не угаснет! :biggrin;

ЗЫ.Стукнись; в асю....Есть пара вопросов.

от: Михаил Андреев
кому: All
дата: 15 Nov 2006
Hello, Grand

Gra> Мне проходилось работать с версиями ПЗУ 2.95 и ПрофПЗУ 4.1. Список
Gra> ошибок, с которыми мне пришлось столкнуться именно в этих версиях,
Gra> приведен ниже.
Gra> [/list]

Фигасе.
Полезная и,увы,печальная инфа... :v2_down:




Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Split Personalities
Юмор - Девятнадцатый тик весны (глава 1 & 2)
Содержание - содержание газеты.
Мысль дня - В 1953 году я понял, что прямая линия ведет человечество к упадку.
От автора - вот и вышел седьмой номер...

В этот день...   19 апреля