Для "библиотеки" -- да.Сообщение от Vitamin
Если в ROM-диск (маленький...)? И потом настраивать надо- 2 байта на каждый call в настраиваемой программе. для последующей настройки. в дальнейшем эта память может использоваться под свои нужды (можно не считать)
- несколько сотен(?) байт на настройщик (проигрыш)
абсолютно все программы. Через JP xxxx вызовы "библиотеки"
загруженной по абсолютному адресу (например, вызовы подпрограмм
ПЗУ) настраивать не надо.
Кроме того, ещё один ньюанс. Допустим, "библиотекой" реализуется
некий "драйвер" устройства. Например, HDD. Загрузил, пропатчил --
работай. Хорошо. А КАК БЫТЬ, КОГДА В ОДИН КОМПУТЕР НУЖНО
ЗАГРУЗИТЬ НЕСКОЛЬКО ТАКИХ "ДРАЙВЕРОВ"? Вот тут вся технология ломается. В варианте с JP xxxx на это есть два выхода:
1) для переключения между разными "библиотеками" просто
копируется массив JP xxxx целиком поверх текущего
используемого. Медленное переключение, быстрый вызов.
2) вызов по методу вызова виртуальных функций, я как-то писал.
Вызов медленный (100 тактов), переключение времени не
отнимает.
В качестве компромисса я бы предложил в качестве базовогоВыигрываем 10 тактов на выполнение каждого вызова и проигрываем несколько сотен(?) тактов на настройщик (один раз за всю работу программы)
варианта всё-таки JP xxx. Экономия байта из двух на десятках
"библиотечных" функций многого не отнимет. А кому нужно очень
быстро могут поверх этого реализовывать вариант с прямым
вызовом. Наоборот тоже можно было бы, но это сложней получается
и ОЗУ больше нужно.