DEC Alpha, ARM, MIPS, PowerPC, SPARC, VAX, PDP-8 и другие устройства
-
Hunta
- Advanced Member
- Сообщения: 427
- Зарегистрирован: 31.08.2020,21:16
- Откуда: Самара
Сообщение
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 файла
Hunta
-
Technomancer
- Advanced Member
- Сообщения: 937
- Зарегистрирован: 12.06.2016,19:56
- Откуда: Рига
-
Конкурсы
Вклад в сообщество
Сообщение
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 проблем не обнаружено. Пойду дальше в соответствующей теме.
Technomancer
-
Hunta
- Advanced Member
- Сообщения: 427
- Зарегистрирован: 31.08.2020,21:16
- Откуда: Самара
Сообщение
Hunta » 08.04.2021,09:04
Technomancer писал(а): ↑08.04.2021,07:51
Спасибо, это и была причина некорректной работы моей программы.
Прошу пардону - напрочь вылетело из головы, что у битовой карты приоритет
Полез смотреть, как я собирал ПЗУ - и вдруг неожиданность
Проверил - да, этот ключ обязателен. А вот с /TOP - надо ещё посмотреть, когда он обязателен - пока не совсем понял.
Hunta