c адреса 6000h запускается, но после ввода команды dir , пропадает изобр. На клавиши реагирует , но повторные команды не отрабатывают полостью, дисковод внешне вкл и выкл
Завтра уже займусь
c адреса 6000h запускается, но после ввода команды dir , пропадает изобр. На клавиши реагирует , но повторные команды не отрабатывают полостью, дисковод внешне вкл и выкл
Завтра уже займусь
Последний раз редактировалось Sancho45; 11.07.2017 в 15:54.
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Да, это так, - проверил в эмуляторе 'emu80' для КР580 то, что получил конверсией из кодов Z80. Там также гаснет экран. Видимо какую-то команду Z80 забыл. Просто исходник оригинала я нашёл, когда уже переделал на КР580 исходник с командами Z80. Лишний раз убедился как неудобно не иметь собственного эмулятора, в котором отловить недопустимые для КР580 команды Z80 не составляло бы труда.
Разбираться почему не работает исходник адаптированный от Z80 сложно (и лениво), потому нашёл исходник оригинала RK-DOS 2.95 и просто сделал на нём ту же простейшую переделку (т.е замену п/п-ммы READY на другую). И проверив в эмуляторе, убедился, что по крайней мере в эмуляторе, это работает. Как с адреса 6000, так и на E000. Однако проверить можно только версию для РК86, т.к эмулятор В.Пыхонина не поддерживает КНГМД для МИКРОШИ.
Заменил вложение в посте (#663). Там также исходник и странслированные файлы. При перетрнсляции для МИКРОШИ проверяйте в исходнике ключ 'RK86' (он д.быть для трансляции для МИКРОШИ =0).
Удобно было бы иметь утилиту типа SteinBlume, но не для формата CP/M а для формата RK-DOS. А то вручную, т.е через магнитофон по директиве 'I' и командами SAVE, формировать новые образы дискет - утомительно. Также неудобно снимать файлы с образов дискет, - это сначала надо сделать LOADA с образа дискеты, а затем выйдя в монитор по сбросу (и не факт, что ОЗУ при этом не разрушится) директивой O монитора выгрузить на ленту, т.е сохранить файл на винчестере PC.
И так и не понял, как форматировать дискеты в эмуляторе EMU80. Сначала, не "вставляя дискету" в приводе B, с дискетой с системными файлами входящей в дистрибути в эмулятора "стоящей" в приводе A, набрал команду "FORMAT B:". После приглашения, нажал пробел и получил надпись "FORMATING...". Ждал долго, но всё зависло. Вообще-то неудобно не знать, что делает дисковод. Вот в эмуляторе АМИГИ работа дисковода индицируется в маленьких вкладках в нижней балке (под экраном) и ясно, идёт-ли запись или чтение и какая дорожка и какой сектор читаются/пишутся (т.е сразу видно где стоИт головка НГМД).
Потому новые образы дискет в эмуляторе EMU80 создаю из образа той дискеты, что входит в дистрибутив, для чего на винте IBM PC делаю её копию (под именем DISK_nn.RDI). А затем "поставив" эту новую дискету в привод 'B' запускаю удаление командой "ERASE B:*.*", что длится очень долго, но в итоге получается новая пустая дискета (хотя и не чистая, т.к каталог заполнен удалёнными файлами). Затем уже можно приступать к электротраху по её заполнению, т.е считывая файлы по одному директивой I монитора и записав на бумажку адреса, после перехода в RK-DOS командой "GE000", командой SAVE записываем считанный файл на диск.
Это довольно утомительное и трудоёмкое занятие. Поэтому ещё раз сошлюсь (просьба без злобы со стороны авторов эмуляторов) на идеологию своих эмуляторов, где вообще не используются никакие образы дисков, а используется обычный каталог на винчестере PC, а эмулятор сам при старте формирует нужный образ дискеты из файлов данного каталога (т.е каталога с именем FILES.DOS). Это одновременно избавляет от двух проблем, - не надо формировать слепки дискет и не надо потом трахаться, чтобы извлечь отдельные файлы из этих слепков. Та же идея реализована у меня и для ROM-дисков, что в чужих эмуляторах также реализованы файлом-образом, а у меня просто обычным каталогом с файлами, что хотелось бы видеть на ROM-диске (что избавляет от головной боли по формированию образов ROM-дисков).
Последний раз редактировалось barsik; 12.07.2017 в 20:45.
а для Специалиста RK-DOS ?
barsik,
На СПЕЦИАЛИСТА использовать RK-DOS непроблематично и удобно. Потому-что, во-первых, в базовом СПЕЦИАЛИСТЕ есть куча свободных панелек для установки ПЗУ с RK-DOS. Во-вторых, процессор КР580, а не Z80 (что избавляет от необходимости переделывать RK-DOS). В-третьих, т.к свободного ОЗУ у СПЕЦИАЛИСТА не намного больше, чем у РК86 (да и программ с размером более 7000H, кажется, немного), то перетранслировать RK-DOS на другие адреса нет смысла, отчего отпадает лишний труд по адаптации внешних команд (т.е SYS-файлов).Сообщение от zx_
Я тоже одно время подключал РК-КНГМД к СПЕЦИАЛИСТУ и имел RK-DOS для него в 1994. Перетрансляция не составила проблем. Хотя "в лоб" перетранслировать, лишь заменив адрес РК-КНГМД в исходнике не получится.
Дело в том, что Е.Седов в RK-DOS использует обращение к РК-КНГМД командами IN/OUT, а хотя процессор тот же и также дублирует адрес порта на старшей половине адреса, но такой трюк требует, чтобы на порт отводилось не менее 400H байтов. А я в СПЕЦИАЛИСТЕ использовал разбиение области портов дешифратором ИД7 с шагом в 100H. Потому использовал чуть-чуть изменённую версию, где критичные команды IN/OUT заменены на LD. При области В/У шириной в 100H допустимы IN/OUT только для порта PORT+0, а обращение в PORT+1, PORT+2, PORT+3 и PORT+4 не попадают в нужные порты РК-КНГМД. Помню, что "извращения" Е.Седова экономят ему ~64 байта. А для замены только портов надо выиграть вдвое меньше байтов. Столь немного байтов для НГМД с сигналом READY легко "добыть" посокращав текстовые сообщения и "забив" вывод на принтер. Хотя, чтобы получить версию, работающую с дисководом без READY надо выиграть ещё ~40 байтов.
Но можно ничего не переделывая, просто отдать всю область F000...F7FF на адресацию РК-КНГМД, естественно выкинув из панельки ПЗУ по этому адресу. И если в вашем СПЕЦИАЛИСТЕ стоят два диода (по схеме от SP580), что обеспечивают попадание при обращениях CPU в адреса F800...F8FF на адреса C800...C8FF (т.е если входы F800, F803, F806, F809... сделаны работающими), то даже перетранслировать код RK-DOS не придётся. Если дешифратора на F800 и двух диодов нет, то достаточно лишь перетранслировать заменив вызовы F800 на C800. Это работа на 14 секунд, доступная любому, кто имеет текстовый редактор и Windows XP (т.к на более новых Windows программы MSDOS не запускаются, отчего придётся трахаться с перетрансляцией исходника для Microsoft M80 в каком-нибудь эмуляторе CP/M, что займёт намного больше времени).
Я использовал на СПЕЦИАЛИСТЕ адрес FC00 (этот же адрес используется и для КНГМД на базе ВГ93). Этот адрес потому, что так исторически сложилось. FF00 - это ППА клавиатуры. FE00 - это ППА принтера и прошивателя УФ-ПЗУ. FD00 - это внешний электронный диск на РУ7 (со своими цепями регенерации), и естественно FC00 остаётся для контроллера дисковода.
RK-DOS имеет смысл потому, что формат дискет РК-КНГМД менее требователен к качеству дискет и более надёжен. Кроме того RK-DOS работает в 10 раз быстрее (из-за наличия в CP/M буферизации) и RK-DOS может работать с минимальным базовым ОЗУ в СПЕЦИАЛИСТЕ, тогда как для CP/M необходимо ОЗУ СПЕЦИАЛИСТА расширять (в области D000...F7FF). Дискеты, что для КНГМД на ВГ93 дохлые, с РК-КНГМД работают ещё 10 лет, пока совсем не осыпятся. Кроме того, ВГ93 при такте всего в 2 МГЦ даёт только формат SD (single density), т.е те же 400 кб, тогда какой в нём прок ? На СПЕЦИАЛИСТЕ ещё нет программ для РК-КНГМД, так что можно сразу использовать формат не 400 кб, а 560 кб на диск DD или 640 кб на диск HD (аппаратно допустимо и более, но RK-DOS не может иметь более 8 секторов на трек).
Если хотите могу перетранслировать RK-DOS для СПЕЦИАЛИСТА. Но проверить это не могу, т.к эмулятор 'emu80' для СПЕЦИАЛИСТА не поддерживает РК-КНГМД. Если Вы напишете автору этого эмулятора в личку и попросите поддержать РК-КНГМД и для СПЕЦИАЛИСТА, то проблем не будет. Вероятно это не потребует даже переделок в самом эмуляторе 'emu80', а достаточно лишь составить конфиг-файл, т.к РК-КНГМД там уже поддерживается для РК86.
PS. Кстати однопанельный нортон Е.Седова SE.COM не будет работать на СПЕЦИАЛИСТЕ и переделать его без кардинальной переработки (смены алгоритма) невозможно (т.к он "лазиит" в экранное ОЗУ РК). Тут я могу немного помочь, т.к имею исходник нортона с панелями псевдографикой, окнами и инверсией знакомест, основанный на альтернативном фонте.
Для СПЕЦИАЛИСТА теоретически можно странслировать версию нортона от ОРИОНА, для начала без цвета (т.к цвет в ОРИОНЕ хранится в другой банке ОЗУ, а в СПЕЦИАЛИСТЕ этого нет). Это не совсем просто, т.к в СПЕЦИАЛИСТЕ меньше ОЗУ, чем в ОРИОНЕ и надо как-то разместить оконный драйвер D8, который имеет размер более 10 кб. Т.е для графического нортона всё-равно придётся "открывать ОЗУ" D000...F7FF. А чтобы это отладить обязательно понадобится эмулятор (хотя если я решу проблему массовой памяти для своего СПЕЦИАЛИСТА, то смогу обойтись и без эмулятора, но это не прямо сейчас). А если найдётся эмулятор СПЕЦИАЛИСТА одновременно поддерживающий его стандартный цвет (естественно 8 цветов, не 4) и РК-КНГМД, то легко странслировать и цветную версию.
PPS. Диск-доктор тоже лезет в экран и не будет работать, но есть и независящий от платформы CHKDSK для RK-DOS.
- - - Добавлено - - -
То, что распространялось из ТОО "Лианозово" это версия 2.95 и думаю, что именно она у всех. Но где-то читал, что археологи откопали и немного другую версию (речь не о RK-DOS 1.0, что совсем в другой концепции и несовместима).Сообщение от tnt23
Последний раз редактировалось barsik; 24.07.2017 в 12:40.
Для машины имеющей ПДП, это нормально его использовать. А для машины без ПДП на практике оказалось проще поднять такт КР580 до 2.5 МГЦ и использовать обычный (более простой) КНГМД от КОРВЕТА. Кроме такого (типового) варианта с повышением такта КР580, для СПЕЦИАЛИСТА изобрели ещё два очень хитроумных варианта, что работали даже при мизерном такте КР580 всего в 2 МГЦ.Сообщение от uart
Однако, если хочется использовать именно ВГ93, то кто заставляет обязательно использовать тактирование его стандартно, т.е для SD или DD. Достаточно понизить частоту тактирования ВГ93, отчего на треке будет умещаться не 5 секторов по 1 кб, а только 4 сектора, при этом скорости СПЕЦИАЛИСТА достаточно. Это даёт формат дискеты в 80 TRACKS * 2 SIDES * 4 SECTORS * 1 кб = 640 кб, почти как в TR-DOS (хотя на IBM PC такой диск не прочитать). Но столько же даёт и более простой РК-КНГМД (560К на DD-дисках и 640К на HD-дисках).
Последний раз редактировалось barsik; 12.07.2017 в 09:29.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)