Печально и удивительно.Сообщение от Vladimir_S
Но очень плохо, что Вы не даёте подробной информации, о том, что и как. Какое поведение? Что-то же должно работать. Ну хотябы-бы колесо-то стартует? Готовка отползает на 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.




Ответить с цитированием