Удаление в знак протеста против действий MM
Последний раз редактировалось MacBuster; 27.01.2019 в 09:00. Причина: Удаление в знак протеста против действий MM
Удаление в знак протеста против действий MM
Последний раз редактировалось MacBuster; 27.01.2019 в 09:00. Причина: Удаление в знак протеста против действий MM
меня смущают цифры (числа ) и значок бакса как 7-й символ )
нормальные локальные меточки кое Где это 1$: 2$:
ну метки для текстовых сообщений и для прыжков JMP - длинных переходов оформляются 6-ю оригинальными символами (буквами) вроде так.
проверил = транслятор не пропускает такое на сами строки с метками ругается как TU, на команды перехода к ним ругается ATU (подглядел в MACMIS.LST и вах! теперь не усну - но энтузиазма автору кода не занимать, что похвально!)
Так же как и МакБастеру с его "правильным синтаксисом и правильным УК-НЦ и правильном всем остальным)
/* 107744$: */
Товарищи, это был листинг драйвера терминала из ПЗУ.. и такая метка указана для наглядности.. т.к. это абсолютный адрес в памяти.. никто листинг ПЗУ транслировать не собирался
Вопрос был в другом.. почему драйвер терминала в листинге начинается со 100000, а ПЗУ в документации со 120000... и какие тогда реальные адреса?
......
/* Вопрос к Hunta */
Возможно в тетрадке где дизассемблировали ПЗУ есть реальные адреса?
/*В целом*/
Где-то выше я сетовал, что при первом знакомстве с УКНЦ мне не понравилась ее некая "терминальность"... согласен, что это сделано для совместимости с древним ПО. НО УКНЦ не терминал, а компьютер и если ты пишешь свою программу зачем упираться в эти навороты. Зачем посылать ESC последовательности чтобы драйвер терминала подумал, обработал их и вызвал процедуру из ПЗУ которую я и так сразу могу вызвать? Если писать в "старом" стиле то ничего кроме "рогаликов" не получится..
P.S.
Не нужно рассуждать о синтаксисе, кто хотя бы раз использовал ПЗУ УКНЦ скажите какие адреса реально и почему в исходниках так..
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Не так. Число (0-65535) со знаком доллара в конце - это локальная метка. Локальная в своей области действия. Обычно это область между двумя постоянными метками, хотя с помощью парных директивОбычно потребность в этом возникает, когда вдруг выясняется, что внутрь уже имеющегося блока локальных меток между двух постоянных, надо сослаться откуда-то издалека.Код:.ENABL LSB ; здесь будет одна большая область локальных меток, ; в которой могут быть и посточнные метки. .DSABL LSB
- - - Добавлено - - -
За пределами этой области действия локальных меток (т.е. в другой области) они могут повторяться.
Кто мешает тебе выдумать порох непромокаемый? (К.Прутков, мысль № 133)
Нормальные локальные метки - это 1$-65535$. И обычно при первом подходе их пишут через 10-ок, а то и через 20-ть
Серьёзно? Вы думаете, я его руками дизассемблил? Даже на БК была написана программа (на Бейсике), которая мне вывела листинг ROM, а уж под RT их..
Для совместимости с исходной архитектурой. Именно она позволила портировать на УК-НЦ RT и стандартные редакторы
С ЦП код на ПП Вы не вызовете.
- - - Добавлено - - -
По документации - с 1. Но я это не проверял. Так как начинал с 10, а после разборки использования пакета структурных макросов вообще забыл про локальные метки
- - - Добавлено - - -
В общем, как я и писал ранее - код ПЗУ в файл я выгрузил и на этом всё закончилось, размер - 63 блока, что явно указывает на стартовый адрес не выше 100000 плюс, насколько я помню - ПЗУ-х в УК-НЦ - 4, а учитывая из размер - 8 кб - предположение, что банк 1 начинается с адреса 100000 становится ещё более обоснованным. И учитывая, что у Вас УК-НЦ прямо таки под рукой - кто мешает проверить, что там - по адресам типа 107744
Последний раз редактировалось Hunta; 16.10.2018 в 06:49.
/* Серьёзно? Вы думаете, я его руками дизассемблил? Даже на БК была написана программа (на Бейсике) */
Ваша программа адреса показывала?
/*1 начинается с адреса 100000 */
Был ли там код ПЗУ ЦП, вообще 100000-160000 это еще ОЗУ пользователя.., а в ПП 100000-120000 - окно для кратриджа
Поэтому я и спрашивал возможно что-то нужно переключить.. режим, банки, страницы.. я блин не знаю.. поэтому и спрашиваю то что я пробовал не работает.
Нужен совет по удачному использованию ПЗУ..
/* С ЦП код на ПП Вы не вызовете. */
Я и не собирался, я же писал выше, что вызываю из ПП.
Последний раз редактировалось S_V_B; 16.10.2018 в 06:54.
Программа писалась под БК. На УК-НЦ я бы стал использовать стандартный DESS, а в нём (по крайне мере тот, который тогда был у меня) - можно было указать, с какого адреса расположен код. Но, как я писал выше - до дизассемблирования дело не дошло - есть только двоичные файлы
Адресные пространства у ЦП и ПП достаточно самостоятельные
ПЗУ у ПП доступно всегда
А что бы туда попасть - код ещё нужно загрузить на ПП. И обычно (например, для текстовых редакторов) на это никто не заморачивался, использовали именно ESC-последовательности.
Сильно подозреваю, что никто Вам особо ничего не подскажет - кроме тех, кому нужна была большая скорость вывода картинки на экран, а таких на этом форуме вроде как немного. У меня потребности что то грузить в ПП и использовать возможности ROM особо не было - если только расширить ESC-последовательности.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)