- Altpro SMK64. Все что мы знаем о нем
- [+] Старые сообщения (103)
-
? anonymous - 29.07.2010 16:02
Как ее устранить, тоже в комментариях написано в той статье.
-
? dk_spb@ - 29.07.2010 16:02
Там написано "На самом деле код длинных секторов (1024 байта на сектор) 3, а не 2".
Если это именна та самая ошибка, то она тянется и в 327v12 и в АльтПро 2.05
-
? dk_spb@ - 29.07.2010 16:04
То есть эта ошибка всем настолько пофиг что её так и не исправил никто?
Вроде вместо 2 вписать 3 - не сложно.
-
? Дмитрий - 29.07.2010 16:12
Согласен с dk_spb. Не думаю, что простое изменение 2 на 3 введет нормальную поддержку килобайтных секторов (а емкость дискеты тада увеличится до 1,6М, что само по себе немаловажно). И уж точно, если бы было так все просто, пофиксили бы в АльтПро или те, кто занимался модификацией 327 прошивки.
-
? anonymous - 29.07.2010 16:18
С какого перепугу у вас увеличивается емкость дискеты? Количество секторов, при использовании 1к-секторов, на дорожке равно 5.
-
? dk_spb@ - 29.07.2010 16:21
Вот я и думаю что на большие сектора все просто плюнули....
-
? anonymous - 29.07.2010 16:32
1к-сектора использовались, например, в UNIX System-V, но кому на БК нужно было читать такие дискеты? Никаких преимуществ увеличение размера сектора не дает, за счет уменьшения размера GAPов и сокращения количества служебной информации при сокращении количества секторов, вместить дополнительный сектор без увеличения тактовой частоты контроллера все равно не выходит. Другое дело - примитивная защита от копирования, кстати, примененная в ОС NORD версий 2.х - там образ самой системы писался на дорожку с нестандартными секторами и дискета штатными средствами не копировалась, пользовательские дорожки были размечены обычным образом, потом А. Прудковский от этого сам отказался, ибо больше возникало из-за этого проблем, чем выгоды.
-
? Дмитрий - 29.07.2010 16:35
Ну в таком случае понятно, почему не исправляли - в опу тада такие секторы. Я просто не вникал в алгоритм чтения/записи, поэтому и подумал об увеличении емкости.
-
? dk_spb@ - 29.07.2010 16:37
anonymous: спасибо за инфу. Может в реплике SMK исправлю 3 на 2 ;-)
-
? anonymous - 29.07.2010 16:43
Не забывайте еще перед вызовом драйвера для работы с 1к-секторами делать команду ASL 60(R3) после вызова подпрограммы 160010
-
? anonymous - 29.07.2010 16:44
ASR 60(R3) *
-
? Макс Багаев@ - 14.08.2010 15:52
хоть и поздно но Продублировал в http://pdp-11.ru/mybk/Altpro/
-
? tim@ - 03.10.2010 06:14
Интересно, что в контроллере SMK при включении режимов с кодами 20, 120, 100, 0 страничка ОЗУ, подключающаяся на адрес 170000, заодно и перекрывает адреса системных регистров 177000-177777. Т.е. на эти адреса отзывается сигналом RPLY. Как же тогда не происходит конфликтов с адресами контроллеров самой БК. К примеру с регистрами клавиатуры 177660-662, получается на этот адрес отзываются 2 устройства: 1801вп1-14 и SMK ?? Или с регистрами таймера, который в процессоре (177706,10,12) ?
-
? Дмитрий - 03.10.2010 14:25
В SMK по адресам 170000-177000 постоянно (емнип) подключено 3,5кб ОЗУ. Ничего там не перекрывает. Область с 177000 остается как и была.
-
? tim@ - 03.10.2010 19:20
Перекрывает. См. исходники прошивки РТ5 SMK128.MAC, в этом файле в каждом режиме вторая строчка. К примеру для режима 20
.WORD OR,OR, ;177 кр.740-760
что означает подключение нижней половины памяти в режиме "только по чтению" к адресам 177000-177737 и 177760 - 177777, т.е. исключая регистры HDD. Ну и так же, там где разрешение есть, эта же страничка памяти получается подключенной к адресам 170000-176777. Появились следующие соображения: в режимах 120, 100, 0 эти адреса отзываются только по записи, в режиме 20 - только по чтению; по записи конфликта не будет - в ОЗУ будут писаться копии регистров ВУ, если будет запись в них; по чтению - не уверен, но думаю просто не производится обращение к регистрам ВУ, чтобы SMK тоже не отозвался, но это ложится только на программера???
-
? tim@ - 04.10.2010 21:58
В описании от Новака на контроллер есть такое:
4. ДЛЯ ПРОГРАММИСТОВ: Байтовые команды записи в ОЗУ платы
контроллера НЕ РАБОТАЮТ
¤
Но в то же время микросхема КП12 (74253 - U17 по схеме) переключает сигналы разрешения записи по корпусам памяти - старший и младший байт, в зависимости от состояния А0. Аналогичное решение есть и в схеме ДОЗУ опубликованной в журнале Радиолюбитель 1/94, стр. 6-7 автор Чирков. Это что глюк в схеме ? Как происходит запись байта?
¤
При установленном сигнале WTBT и А0 = 0 пишется в младший байт, при этом на шине используются АД7..АД0;
¤
при установленном WTBT и А0 = 1 пишется старший, при этом используются опять же АД7..АД0 ? или АД15..АД8 ?
-
? anonymous - 05.10.2010 09:48
Наоборот, при установленном A0 пишется старший байт.
-
? tim@ - 05.10.2010 10:41
У меня так и написано "при установленном WTBT и А0 = 1 пишется старший". Вопрос в другом: когда идет вывод старшего байта, он передается по младшим линиям или нет ?
-
? anonymous - 05.10.2010 10:58
По старшим, при wtbt=a0=0.
-
? tim - 22.10.2010 18:27
Может есть у кого копия прошивки считанная с реальной РТ5 контроллера ? Никак не разберусь с сигналами CS0 и CS1, снимаемые с этой микросхемы. Анализируя прошивку SMK64.MAC я составил таблицу в Екселе, если кому интересно, вот она - http://www.sendspace.com/file/vjxaxo На листе "РТ5" исходный текст прошивки SMK64.mac, лист "Прошивка РТ5" содержит собственно то же самое содержимое, разбитое по адресам. Там видна привязка данных к входам-выходам микросхемы. Зоны адресов A,B,C,D,E описаны на листе "Адреса altpro". Выходит что сигнал CS0 отвечает за обращение к сегментам памяти 0,1,2,3 а сигнал CS1 за сегменты 4,5,6,7 Но по схеме CS0 заведен на обе микросхемы памяти как сигнал выбора CS. при его значении лог "1" микросхемы памяти будут неактивны. Тогда имеем, что при обращении к верхним сегментам 4..7 CS0 будет неактивен, а следовательно и неактивны и м\с памяти ??? Тогда из всей памяти имеем только половину адресов ? Хотя нет, ведь в режиме 4 - STD11, в седбмом сегменте будет таблица разделов винта по адресу 170000. Есть какие-нибудь соображения по этому поводу ? Хотелось бы слить с реальной РТ5 но нет программатора, можно припаять ее к какой-нибудь ATMEGе чтобы считать побайтно, но вот времени пока не хватает :)
-
? tim - 22.10.2010 20:28
Снял вопрос. Оказывается имею неправильную табличку. Она будет только под 128 Кб версию. Под 64 Кб сигнал CS0 по-другому будет.
- << Форум