Как скомпилировать свой загрузочный образ? (RT-11, MACRO)

DEC Alpha, ARM, MIPS, PowerPC, SPARC, VAX, PDP-8 и другие устройства
Hunta
Advanced Member
Сообщения: 427
Зарегистрирован: 31.08.2020,21:16
Откуда: Самара

Как скомпилировать свой загрузочный образ? (RT-11, MACRO)

Сообщение Hunta » 07.04.2021,20:37

alecv писал(а): 07.04.2021,19:41 SAV в нулевом блоке хранится много полезного
О, кстати, вспомнил.
Если .ASECT-ом писать, то записать в любую ячейку нулевого блока можно что угодно.
За исключением битовой карты (байты с адресами 360(8)-377(8)).
Поэтому для LINK надо указывать опция /NOBITMAP

Вот, например, как выглядит батник для сборки и проверку ПЗУ от KDJ11-B

Код: Выделить всё

MACRO/LIST:KDJ11B/OBJ:KDJ11B KDJ11B
LINK/NOBITMAP/TOP:100000/EXE:KDJ11B.BIN KDJ11B
DIFF/BIN KDJ11B.BIN 2316.BIN

MACRO/LIST:KDJ11B/OBJ:KDJ11B 39X+KDJ11B
LINK/NOBITMAP/TOP:100000/EXE:KDJ11B.BIN KDJ11B
DIFF/BIN KDJ11B.BIN 39X.BIN
/TOP:100000 - по сути, инфа для LINK о максимальном адресе в .ASECT-е - иначе ругается. Но этот же параметр определяет и размер .SAV файла

Аватара пользователя
Technomancer
Advanced Member
Сообщения: 937
Зарегистрирован: 12.06.2016,19:56
Откуда: Рига

Конкурсы

Вклад в сообщество

Как скомпилировать свой загрузочный образ? (RT-11, MACRO)

Сообщение Technomancer » 08.04.2021,07:51

alecv писал(а): 07.04.2021,19:41 Вот тут есть описание формата SAV.
Спасибо, буду читать на работе.
Hunta писал(а): 07.04.2021,20:37 Поэтому для LINK надо указывать опция /NOBITMAP
Спасибо, это и была причина некорректной работы моей программы. Этой программой я проверил память на плате KXT11. В каждое слово памяти загружается комбинации 0000-FFFF-0F0F-F0F0-3333-CCCC-5555-AAAA и каждая комбинация проверяется. В адресах 1000-160000 проблем не обнаружено. Пойду дальше в соответствующей теме.

Hunta
Advanced Member
Сообщения: 427
Зарегистрирован: 31.08.2020,21:16
Откуда: Самара

Как скомпилировать свой загрузочный образ? (RT-11, MACRO)

Сообщение Hunta » 08.04.2021,09:04

Technomancer писал(а): 08.04.2021,07:51 Спасибо, это и была причина некорректной работы моей программы.
Прошу пардону - напрочь вылетело из головы, что у битовой карты приоритет :) Полез смотреть, как я собирал ПЗУ - и вдруг неожиданность :) Проверил - да, этот ключ обязателен. А вот с /TOP - надо ещё посмотреть, когда он обязателен - пока не совсем понял.

Ответить