User Tag List

Показано с 1 по 10 из 311

Тема: РАДИО-86РК на Z80

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    14.01.2010
    Адрес
    г. Шумерля, Чувашия
    Сообщений
    1,358
    Спасибо Благодарностей отдано 
    27
    Спасибо Благодарностей получено 
    42
    Поблагодарили
    37 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от barsik Посмотреть сообщение
    В каком журнале и когда публиковали RK-DOS?
    Это не то?
    https://yadi.sk/d/9_8GUIyQ3AXdQK

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2

    Регистрация
    05.10.2016
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,080
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Pyk
    За что вообще W_INC отвечает и при чем тут Z80, пока не понимаю; если поясните, буду благодарен
    W_INC (with INC) значит с командами INC (HL), когда HL адресуется в порт. INC (HL) делает считывание из порта и тут же запись в него. Это работает на РК86, но не всегда работает на ОРИОНЕ, даже с тактом всего в 2.5 МГЦ. А при Z80 в ОРИОНЕ такт всегда 5 МГЦ, неважно сделана схема ТУРБО с WAIT (142%) или ТУРБО-200%. ВВ55 не любит когда два обращения в порт происходят сразу друг за другом. Нужна пауза между обращениями. Поэтому была применена условная трансляция, чтобы иметь оба варианта. По этим же соображениям многие константы были увеличены вдвое.

    8000...83FF - ППА клавиатуры
    8400...BFFF - доп.ОЗУ, переключаемое битами D0...D5 порта C доп.ППА
    C000...DFFF - ВГ75
    E000...EFFF - ВТ57 / ПЗУ с RK-DOS или другим кодом
    F000...F0FF - РК-КНГМД (факультативно)
    F100...F1FF - доп.ППА (тот что называется D14)
    F200...F2FF - ВИ53 (факультативно)
    F800...FFFF - ПДП/ПЗУ с ROM-BIOS

    То, какое ОЗУ прокачивается в окне 8400...BFFF, зависит от физической реализации. Может быть совмещённое ОЗУ и две разных банки ОЗУ (РУ5+62256). Самый дешевый вариант это РУ5 и прокачка в окне 4-х сегментов из неё размером по 16К (хотя доступно лишь 15К из 16-ти). При этом отображаемые в окне 8400 сегменты с номерами 0 и 1 оказываются из основного ОЗУ с адресов 0400...3FFF и 4400...7FFF. Можно сделать так, чтобы при РУ5-тых было только два сегмента, т.е управление только битом D0, тогда это получается как будто есть 2 банки ОЗУ, одна - основное ОЗУ, другое - оконное, хотя физически всё в одной банке РУ5-тых. Но при РУ7-мых такой трюк не проходит, т.к 32К не являются половиной от 256К.

    Но если ОЗУ - несовмещённое, т.е состоит из двух разных банок ОЗУ, то в окне 8400...BFFF никак не включить основное ОЗУ из РУ5-тых, там всегда включается ОЗУ из 62256 или W24257. Это программно может определить программа и соответственно назначить начальный адрес эл.диска, так что эл.диск не конфликтует с основным ОЗУ при любой физической конструкции.

    В эмуляторе надо реализовать большое ОЗУ. А значит, это совмещённое ОЗУ в 288К с прокачкой всех 288 Кб в окне 8400...BFFF. Т.е сегменты 0 и 1 в окне 8400 должны быть совмещены с основным ОЗУ 0...7FFF. 288К, а не 256К потому что, из-за недоступности в окне в каждом куске в 16К участка в 1 кб, чтобы логически иметь 256К, физически надо иметь 288К, т.е 4 банки по 64К + ещё пол-банки 32К. А на реальном РК на РУ7-мых подпрограммами F836/39 в последней 3-тьей банке доступно лишь 48К из 64К, т.е всего 32+30*7=242К, что чуть больше, чем 241К физически доступных в ОРИОНЕ на РУ7-мых..

    На реальном РК86 с РУ7 при чтении сегмента с номером 16 будет читаться кусок основного ОЗУ 0400...3FFF, т.к физически банки 4...7, 8...11, 12...15 и т.д, это тоже самое, что банки 0...3, т.к управление выбором сегмента только 4-мя битами (в КП11 всего 4 разряда).

    Регистр, для пробы установленный по адресу F300, в эмуляторе B2M должен был переключать целую полубанку в адресах 0...7FFF, по принципу цельнобанковой коммутации ОРИОНА. Т.о при РУ5-тых получалось две полубанки, а при РУ7 - 8 полубанок.

    Никто такого реально никогда не имел. Хотя реализация при РУ5 самая простейшая из всех доработок. Если для коммутации использовать бит PC1 ППА клавиатуры, то расход деталей - кусок проволоки. На адрес A15 у мультиплексора КП11 просто заводится бит. Сюжет заключается в том, что тогда есть доступ ко всему ОЗУ без потерь. Минусом такой архитектуры является то, что только подпрограммой из ПЗУ F800 можно читать и писать в дополнительных полубанках.

    Однако иметь ОЗУ выше 8000 важнее, чем потеря ОЗУ в 6% при окне не кратном 8 Кб. Делать и окно на 8400 и цельно полу-банковую коммутацию по 32К одновременно - слишком громоздко. Хотя при наличии 62256, что включена двумя страницами в окне 8400...BFFF, имеющуюся на плате банку РУ5 разумно использовать целиком как две полубанки (т.к куска проволоки никому не жалко). Что даёт в сумме 94 (32+32+30) кб.

    Цитата Сообщение от Pyk
    Не понял насчёт переключения шрифтов битом D7. Вроде бы ранее было предложено менять шрифты атрибутом RVV?
    Атрибут RVV это ReVerseVideo и его всегда применяют для инверсии знакомест. А атрибуты HGLT, GPA1, GPA2 (General Purpose Attribute) могут использоваться произвольно. Во-первых одного атрибута для фонтов - мало. Считайте сами. Как минимум, нужен фонт для режима графики 192*100, нужен фонт с инверсией, нужен фонт КОИ-8 и базовый фонт. Поэтому управлять фонтами атрибутами не надо. Пусть атрибуты идут на цвет.

    Управление инверсией атрибутом неудобно, т.к не позволяет использовать встроенный в ПЗУ драйвер вывода символов. В то время как инверсия за счёт фонта на порядок удобнее и проще. И главное позволяет иметь инверсные окна с рамками, что даёт программам совсем другой вид. Я использовал в своё время атрибут RVV для инверсии, но отказался. Но сама переделка для RVV на моём РК сделана и она ничему не мешала. И её надо иметь, потому что инверсия фонтом неполноценная и пригодна только для системных программ. Т.к число символов сокращается вдвое с 128 до 64 и остаются только латинские буквы.

    Цитата Сообщение от Pyk
    Альтернативный шрифт в бинарном виде пока недоступен? Да и основной, смотрю, тоже высотой 8 строк, а не 10
    У меня на реальном РК86 фонт в РФ2, т.е всего 2К. Изначально на РК с 60 кб для CP/M был фонт с матрицей 8*10 (только ASCII), но не было никакой совместимости. Впоследствии, я догадался как расширить ОЗУ в РК совместимо, вернул архитектуру РК и стал использовать фонт 8*8 с инверсией. Потому что старые игры РК рассчитаны на фонт высотой в 8 точек. Т.е при 2-х кб ПЗУ можно иметь на выбор, - или фонт 8*10 или два фонта 8*8, один из которых с инверсией. Но для эмулятора нет проблемы иметь фонт и в 4К и 8К, так что такой выбор не стоит. Иметь фонт 8*10 удобно только если в РК есть много фонтов, один из которых - базовый и высотой в 8 точек, чтобы иметь совместимость.

    Фонт с инверсией у меня есть в ПЗУ реального РК, надо лишь перенести на PC, есть также где-то в виде листинга в исходнике эмулятора. Но пока нечего смотреть с фонтом с инверсией, т.к это использовано только в НОРТОН-ах, а они только для ДОС.

    С трудом сделал ROM-BIOS для КР580 с подпрограммами F836/39. После выкидывания директивы X и стоп точки в директиве G, освободилось почти 90 байт. За счёт этого удалось уместить подпрограммы F836/39 и ввести 2 новые команды. Доп.информация в начале листинга. Используйте этот ROM-BIOS в эмуляторе B2M. Версию ROM-BIOS для Z80 тоже обновлю, т.к нашёл способ выиграть ещё несколько байт. Обращайте внимание на число просмотров и на дату упаковки архива, а также даты в исходниках. Если число просмотров для давно выложенного RAR-файла равно 0, значит этот архив был обновлён, т.к всё устаревшее или дохлое в выложенных ранее RAR-файлах я удаляю или заменяю.

    - - - Добавлено - - -

    Цитата Сообщение от uart
    Микроша круче
    Никто с этим спорить не может. Но "ещё не вечер"... Может быть и РК86 с дополнительным ОЗУ будет не хуже. Кстати, скажите, фонт в МИКРОШЕ более красивый 8*8 или её изготовители не додумались и оставили фонт такой же как в базовом РК - 6*8?

    Цитата Сообщение от uart
    Чего вы так к РК86 привязались?
    Люди пользуются реальной РК86, потому что её имеют. А в эмуляторе, потому что про РК86 что-то знают, а про МИКРОШУ и ПАРТНЁР никто ничего не знает, т.к это малораспространённые среди самодельщиков машины. Готовые промышленные ЭВМ покупали "отцы семейств", а радиолюбители РК86 делали себе сами. А так как на этом сайте больше радиолюбителей, то отсюда и "привязка" к РК86.

    Хорошо, что Вы напомнили о МИКРОШЕ, т.к это связано с темой ПЗУ.

    У меня программ от МИКРОШИ никогда не было, но в дистрибутиве EMU80 в 1999 я нашёл кучу программ от МИКРОШИ и убедился, что они не работают в моём эмуляторе РК86 на ОРИОНЕ, т.к в эмуляторе совсем иной код ПЗУ F800. Дело в том, что в МИКРОШЕ несовместимое с РК86 ПЗУ, даже по стандартным точкам. В частности WBOOT там не F86C, а F89D. Ну а внутренние точки вообще несовместимы, и также для МИКРОШИ полно глупых авторов, что лезут в нестантартные точки ПЗУ глубоко внутри ПЗУ F800. Идиотизм, ради экономии трёх байтов терять совместимсоть.

    Обнаружил, что программы МИКРОШИ по большей части вообще наглые и неграмотные. Вместо того чтобы считать стек в HL и проверить старший байт, чтобы узнать ОЗУ 16К или 32К, там сдуру лезут в ПЗУ в то место где стоит команда LD SP,STACK и смотрят старший байт. Это идиотизм (что, кто-то не согласен?). Причём, т.к в РК86 и в МИКРОШЕ эти байты - в разных адресах, то сначала идиотским способом выясняется тип машины - это РК86 или МИКРОША?. Для чего смотрится куда идёт JMP с адреса F800. Если там стоит адрес F836, то это РК86, иначе - МИКРОША. Т.е программы МИКРОШИ сделанные универсальными, - "привязаны" к коду ПЗУ РК86.

    Поэтому если использовать 100% совместимое, но не базовое ПЗУ F800, то программы МИКРОШИ успешно глюкаются на РК86. Исправление такой глупости конечно несложно, но неприятно. Теоретически, можно даже написать программку, которая ищет в коде программ МИКРОШИ команды которые считывают несколько популярных точек внутри ПЗУ F800, чтобы сделать вывод о том, МИКРОША это или РК86. Но вообще-то руки надо отрывать авторам таких программ. Всякий, кто "привязывается" к конкретному коду ПЗУ, - это явный "враг народа". Чтобы определить МИКРОША или РК86 надо тестировать где стоят В/У. Например, ППА легко определить. Также идентифицировать другие БИС несложно.
    Вложения Вложения
    Последний раз редактировалось barsik; 27.01.2017 в 00:47.

  4. #3

    Регистрация
    05.10.2016
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,080
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Vladimir_S
    Вот схема ADR.JPG
    Посмотрел схему ADR.JPG. Сначала увидел /IORQ и решил, что Вы эксклюзивно включили РК-КНГМД в область В/У, т.е с ним можно работать ТОЛЬКО командами IN/OUT? Но RK-DOS и программы для неё работают командами LD, т.к в реальности РК-КНГМД включён в области памяти, а не в области В/У. Если так сделать, то придётся корректировать все программы, в том числе и RK-DOS. Причём эта коррекция очень сложна. Как заменить конструкцию вида LD A,(HL), где HL меняется по INC или ещё как-то. Сделать так, было бы "самовредительством". Т.к команды OUT Е.Седов применил лишь в тех местах, где идёт прямая адресация. Но в основном RK-DOS работает с РК-КНМД с помощью команда LD A,(HL) и LD (HL),A. К тому же Е.Седов использует некорректную команду INC (HL), когда HL указывает в ППА. Это единственная в мире попытка инкрементировать порт. ППА для этого не предназначен. Он нуждается в паузе между двумя командами записи в него (порядка 1 МКСЕК), оттого этот трюк работает только на скорости 1.77 МГЦ.

    Однако в итоге, заметил, что выходы дешифратора портов объединяются на ЛИ1 с какими то сигналами. Предположительно, выборками портов в памяти. Такая конструкция должна работать.

    Vladimir_S и Pyk. Вот пожалуйста. Самая близкая к оригиналу версия RK-DOS для Z80. Содержит полностью идентичный оригиналу код, за исключением того, что команды IN/OUT заменены на LD. Эта версия просто обязана работать. Если работает версия для КР580, то точно будет работать и эта версия.

    NB: Если у Вас порт доп.ППА (D14) стоит не на F100, то Вам надо корректировать адрес порта на реальный. Иначе, если дешифратора нет, то адрес F100 эквивалентен адресу F000, где стоит ППА платы РК-КНГМД. А так как при старте ДОС эти порты программируются по разному, то в этом случае порт РК-КНГМД окажется запрограммированным, как порт принтера, и естественно RK-DOS работать не будет. В этой версии, я на всякий случай изменил адрес доп.ППА на оригинальный A000 и тем самым при работе RK-DOS ОЗУ по этому адресу будет портиться (поэтому не транслируйте RKDOS в этот адрес). Это справедливо для моих версий RK-DOS, версия Е.Седова вообще не инициализирует порт принтера (считая, что он уже инициализирован при старте монитора).

    Здесь, чтобы выиграть 25 байтов, мне пришлось забить вывод на принтер. Теперь при печати на принтер вывод пойдёт на экран. Эта версия будет работать и при Z80 и при КР580.

    Но! Сигнал READY здесь, как и в оригинале должен быть аппаратным. В крайнем случае закоротите READY на землю. Если будут сбои из-за медленной раскрутки, то и сигнал START закоротите на землю. Тогда колесо будет всегда вращаться, поэтому на сигнал START лучше поставить тумблер и отключать вращение колеса при ненадобности. Такая проблема возможна на старом DD-дисководе 5.25". Дисководы 3.5" и HD-5.25" (включённые перемычками в режим DD, чтобы скорость колеса была 300 об/мин) разгоняются быстро и т.к делается 10 попыток чтения перед признанием сектора дохлым, то на них всё работает.

    Цитата Сообщение от Pyk
    почему-то при выводе списка файлов не происходит возврат каретки и перевод строки
    Относительно версий RK-DOS для Z80 полученных из версий ОРИОНА и выложенных 3 дня назад, в которых у Вас не работала команда DIR. Я визуально просмотрел текст команды DIR и глюков не обнаружил. Зато обнаружил, что в исходнике файла с именем RKDOS сохранён оригинальный код DIR, выводящий в одну колонку. Чтобы получить версию с "родным" DIR, достаточно откомментировать оригинальный DIR и закомментировать DIR, что выводит файлы в 3 колонки. Чтобы проверить процедуру DIR я взял и целиком подставил её в версию RK-DOS работающую в моём эмуляторе РК86 на ОРИОНЕ. Там процедура чтения/записи сектора работает не с РК-КНГМД, а с ОЗУ ОРИОНА, но для DIR это без разницы. И всё работало. Так что в команде DIR ошибок нет.

    При выводе DIR имена файлов выводятся на консоль, а возврат каретки выводится подпрограммой OUT_13, которая выводит код 13 в канал (т.е вызывается подпрограмма, адрес которой в векторе канала на вывод). Вывод кода 13 (что собственно перевод строки) в РК86 автоматически как бы дополняется кодом 10 (что и есть перевод строки), т.е производится переход на другую строку. Это идиотское свойство, которого нет в других компьютерах (для перехода в начало следующей строки там надо выводить на консоль и код ВК и код ПС). Чтобы проверить, что неверно инициализирован канал вывода, замените 'CALL OUT_13' на 'LD C,13 : CALL 0F809H' (только в процедуре DIR ) и посмотрите не будет ли выводиться возврат каретки в команде DIR. Впрочем, я это тоже сделал для Вас.

    Прилагаю те же самые версии RK-DOS, но в них введена условная трансляция по ключу
    DIRORG. Если этот флаг не нулевой, то транслируется полностью оригинальный DIR, иначе
    DIR с выводом в 3 колонки.

    Ключ NO_KAN заменяет в командах DIR вывод кода 13 в канал вывода - на вывод кода 13 на MCOUT (F809).
    Вложения Вложения
    Последний раз редактировалось barsik; 28.01.2017 в 04:10.

  5. #4

    Регистрация
    12.12.2011
    Адрес
    г. Иркутск
    Сообщений
    2,509
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    22
    Поблагодарили
    20 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    barsik, Завтра попробую.

    - - - Добавлено - - -

    Хотя теперь со схемой дешифрации портов IN/OUT в формате Z80 работает.

    - - - Добавлено - - -

    Цитата Сообщение от barsik Посмотреть сообщение
    Но! Сигнал READY здесь, как и в оригинале должен быть аппаратным.
    У меня несколько 3.5 дисководов с полноценным сигналом READY.

    - - - Добавлено - - -

    Цитата Сообщение от barsik Посмотреть сообщение
    Вы что же включили РК-КНГМД в область В/У, т.е с ним можно работать ТОЛЬКО командами IN/OUT?
    По схеме ведь видно, что по команде IN/OUT сигналом IORQ подключаются порты С(х), Е(х), и F(х). В остальное время через элементы 2И дешифрация стандартная. Т.е. например к ВГ75 можно обратится и OUT С8 и по адресу С008. И кстати, если бы обращение было ТОЛЬКО по IN/OUT, то комп бы вообще не работал в мониторе.

    - - - Добавлено - - -

    barsik, не работает и с Z80 и ВМ85.
    Последний раз редактировалось Vladimir_S; 25.01.2017 в 18:03.

  6. #5

    Регистрация
    05.10.2016
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,080
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Vladimir_S
    RK-DOS, где лишь только команды OUT заменены на LD не работает ни с Z80 ни с с 8085.
    Печально и удивительно.

    Но очень плохо, что Вы не даёте подробной информации, о том, что и как. Какое поведение? Что-то же должно работать. Ну хотябы-бы колесо-то стартует? Готовка отползает на 32-тый трек (где каталог)? Я почти уверен, что не посадил ляпов при замене OUT на LD. Хотя про тот листинг, что был взят за исходник, ничего сказать не могу. Он "пришёл" из глубины веков... из 1993-94. Да и при хранении на древних носителях могло что-то произойти (после крушения винта в 2000, мне пришлось все файлы переносить на PC заново с древних носителей, и естественно, я уже не помнил как какие-то файлы получены, потому переносил, всё подряд, оттого так много дублирующих файлов). Оттого в моём архиве полно версий RK-DOS и в некоторых даже написано "Полный оригинал".

    Замена кодов OUT отнимает 5 минут (перестановкой строк из версии, где это уже сделано). Так что я сейчас повторю замену кодов OUT с другим исходником RK-DOS и выложу, через час. Но чтобы уже и "комар не подкопался", то предварительно проверю исходный текст на полную идентичность с оригиналом. Точнее, нет. Я просто в эту версию введу условную трансляцию с ключом W_OUT (with OUT), т.е смогу реверсировать замену команд OUT, и получить, якобы, оригинал и полученный объектный код сверю с оригиналом Е.Седова.

    А вообще-то в таких случаях надо писать специальный тест, где работоспособнать проверяется по пунктам. Тогда можно точно выяснить, что конкретно не работает. Это тоже несложно, если все подпрограммы работающие с железом есть по отдельности. А у меня как-ра это есть, т.к пришлось это сделать, когда делал CP/M на безе РК-КНГМД для ОРИОНА. Тогда тест не понадобился, т.к железо было отлажено ещё на РК86, а CP/M заработала сразу.

    Но на написание теста надо уже потратить пару часов. Надеюсь обойдется без этого, т.к написать новую программу без возможности её проверки, чревато ошибками.

    В какое ОЗУ Вы транслировали этот исходник. Я там поставил 6000, исходя из того, что Вы не будете использовать AUTOEXEC, т.к при открытии каждого файла уровень RAMTOP снижается, кажется, на 512+160 байтов. Попробуйте странслировать в другие адреса - на 5000, на 9000.
    Последний раз редактировалось barsik; 21.02.2017 в 11:18.

  7. #6

    Регистрация
    12.12.2011
    Адрес
    г. Иркутск
    Сообщений
    2,509
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    22
    Поблагодарили
    20 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от barsik Посмотреть сообщение
    Но очень плохо, что Вы не даёте подробной информации, о том, что и как.
    Оригинальная прошивка DOS с процессором ВМ85 уже не первый год работает без единого сбоя. С Z80 вроде как стартует, головка перемещается, движок крутит и светодиод загорается. Потом все останавливается и пишет I/O ERROR и выводится промт А> и на любую (даже безсмысленную) команду все повторяется как при старте. В прошивке с замененными IN/OUT то же самое уже с любым процессором.

  8. #7

    Регистрация
    05.10.2016
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,080
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Сделал реверсирование выложенного ранее исходника, т.е включил условную трансляцию с ключом W_OUT (with OUT). Теперь, если этот ключ поставить не 0, то транслируется версия с командами IN/OUT, т.е, якобы, полный оригинал.

    И странслировал чтобы получить оригинал и сравнил с дампом полного оригинала, полученного в 1993 из МП "Лианозово". Оказалось, есть небольшие несовпадения в 3-х местах. Поэтому пришлось с этим разбираться, отчего и ушло больше времени, чем 1 час. Оказалось, что это всё-же по работе полный оригинал, а точнее оригинал с исправленными ошибками и глупостями.

    Во-первых исправлена ошибка Е.Седова по адресу E778. Это явная ошибка (что ясно, если рассмотреть алгоритм), - у числа случайно стёрся суффикс H. Эта ошибка не сказывается при формате 5 секторов, но фатальна при другом формате.

    Во-вторых в двух местах две команды переставлены местами. А именно там регистр B перед возвратом по RET загружается кодом ошибки. В этих двух местах загрузка B сделана раньше, а именно, перед CALL на подпрограмму (которая B не изменяет). Логично параметр загружать перед его использованием, что делает исходник понятным. Причём и у самого Е.Седова в остальных случаях так и сделано, но в этих двух местах логика нарушена и потому была исправлена (а в тексте оставлена строка "Полный оригинал", что и ввело меня спустя 20 лет в лишние хлопоты).

    Так что Вы получили всё-же оригинал по работе. Но чтобы убрать все сомнения я опять переставил эти две команды и получился на самом деле полный оригинал. И если Вы утверждаете, что оригинал RK-DOS у Вас много лет успешно работал, то странслируйте эту версию с ключом W_OUT=1 (или не 0) и получите полный оригинал той RK-DOS, что 20 лет работала на моём РК86 на КР580. Она, предположительно должна работать и на 8085.

    Про 8085 ничего не знаю. Что 8085 дублирует адреса порта при командах IN/OUT на старших адресах, также как КР580?

    Сообщите, что Вы конкретно транслируете (куда), т.е как Вы проверяете исходник. И интересно как Вы пересылаете файлы из PC в РК86. У меня эта задача не была решена (эта задача не ставилась, т.к РК я практически с 1995 не пользовался, а диски РК86 прекрасно читал ОРИОН, у которого был обмен с PC и по проводной линии и через дискеты в форматах 800К ОРИОНА и 360К и 720К в формате MSDOS)

    Скиньте мне пожалуйста код вашей версии RK-DOS, которая много лет работает на 8085, а также коды и других версий RK-DOS (имели хождение много версий RK-DOS, хотя 2.95, кажется, последняя от Е.Седова, но после него этим занимались авторы РК-МАКСИ и доработали её).

    PS: Сейчас ключ W_OUT стоит равным 1, т.е транслируется полный оригинал, не для Z80. Для трансляции для Z80 поставьте этот ключ равным 0.

    - - - Добавлено - - -

    Ради интереса стал искать на сайте код RK-DOS. С трудом нашёл дистрибутив RK-DOS выложенный Cyb в теме "Подключение НГМД". И оказалось, что этот код один в один совпал с моим оригиналом из 1993 года.

    Вчера я перепутал и выложил не ту версию монитора для КР580. Архив с именем 'ROM-BIOS КР580' это незаконченная версия, в которой подпрограммы F836/39 есть, но входов в них в таблице входов нет (т.е нет самих JMP-ов в начале ПЗУ - JMP RRAM и JMP WRAM на адресах F836 и F839). Вот та же самая версия, отличающаяся лишь тем, что эти входы теперь есть, а в остальном код идентичен, можете сравнить.
    Вложения Вложения
    Последний раз редактировалось barsik; 28.01.2017 в 04:12.

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Радио-86РК: Видеовыход
    от m.d. в разделе Радио-86РК
    Ответов: 13
    Последнее: 21.05.2015, 08:19
  2. Радио-86РК: По страницам журнала "Радио"
    от Viktor2312 в разделе Радио-86РК
    Ответов: 79
    Последнее: 13.02.2014, 08:34
  3. эмулятор радио-86рк
    от sergey2b в разделе Эмуляторы отечественных компьютеров
    Ответов: 4
    Последнее: 09.06.2011, 15:59
  4. Радио 86РК
    от Shnurkov в разделе Барахолка (архив)
    Ответов: 1
    Последнее: 02.01.2009, 12:52

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •