PDA

Просмотр полной версии : Замена двух ПЗУ на одну



tnt23
18.11.2018, 18:30
Собрал адаптер с ZIF-панелькой, вставляющийся в панель ПЗУ 0:
66958
Поскольку впереди предстоят игры с перепрошивкой Монитора и CP/M, захотелось вместо двух ПЗУ поставить одну, бОльшего объема.

Вместо A13 на ПЗУ приходит сигнал ROMA13 с линии B6 порта управления банками памяти. Видимо, авторы предполагали в будущем использовать ПЗУ объемом 16-32-64К. Так или иначе, после инициализации ROMA13 всегда равен 0, толку от него нет. Я отрезал ROMA13 и взял вместо него A13 с процессора, прописал в 64K флешку Монитор+CP/M (многократно), cигналы выборки объединил в один через два диода с резистором к +5в. Но весь этот колхоз просто не грузится.

Придется позорно существовать с двумя 64K EEPROM, используя каждую на 25%.

L Juriy
18.11.2018, 19:13
Мое мнение.
У тебя по сбросу адрес становится в 0, Вот и пропиши в ПЗУ по этому адресу переход на монитор.
В первой половине в нулевом адресе переход на монитор, после перехода переключиться
на вторую половину ПЗУ с нормальными образами монитора и СРМ.
Как то так.

А вообще посмотри как реализовано в ЮТ88 все в одном. Используется загрузчик.

tnt23
18.11.2018, 19:36
Так в том-то и дело, что я размножил парочку (CPM+Монитор) по всему 64К ПЗУ. С адресов 0, 4000, 8000, C000. Точно так же размножал Тест по всему объему флешки, и все работало.

Может быть, объединение сигналов выборки через диоды не самое удачное место. Периодически по команде DC000 видны были разрозненные байты второй ПЗУ.

L Juriy
18.11.2018, 19:53
Я сделаю вот так. и в 0 ячейке ПЗУ переход на монитор.

Да на ПЗУ все адреса с адресной шины A13, A14, A15.

tnt23
19.11.2018, 10:03
и в 0 ячейке ПЗУ переход на монитор.

Первой командой монитора все равно идет переход на процедуру инициализации в тех же адресах (CxxxH), а сразу после сброса ПЗУ мапится на всю память. Так что это лишнее, думается мне.