При использовании отладочных JW кристаллов большая часть времени уходит на его стирание. Да и каждое стирание уменьшает срок службы кристалла. На самом, деле стирать каждый раз кристалл нет необходимости, поскольку реальная программа обычно многократно помещается в его объеме. Нужно просто дописывать новые версии программы в старшие адреса, до заполнения ПЗУ. Команды перехода к новой версии записываются друг за другом, начиная с адреса сброса. Предыдущие команды замещаются командой NOP. Таким образом можно не только сократить время на отладку программы но и увеличить срок службы кристалла. Проверено!
Следует заметить, что некоторые кристаллы имеют страничную организацию памяти. Например, в 16С505 подпрограммы могут располагаться в первых 256 ячейках памяти программ (0x000 - 0x100). Связано это с тем, что в команде перехода к подпрограмме call присутствует только 8 бит адреса ячейки памяти начала подпрограммы, девятый бит теряется (устанавливается в "0"), а десятый берется из бита PA0 регистра STATUS. Правда замечено, что возможно вызывать подпрограммы из второй половины области памяти программ, расположенные в первых 256 ячейках этой половины. Тоесть, из области 0x200 - 0x3FF можно вызывать подпрограммы из области 0x200 - 0x2FF. Только при этом должен быть установлен в "1" бит PA0 регистра STATUS для правильного возврата из подпрограммы.