ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
23 ноября
1060590 Топик полностью
POV_ (14.12.2020 00:03, просмотров: 7) ответил fk0 на Что значит "не будет"? Оно есть. Если его нет -- у тебя программа никогда не заработает ни на x51, ни на pic18. На обоих архитектурах ВЫЧИСЛЯЕМЫЙ адрес функции невозможен. Только из набора жёстко заданных. А это тот же switch-case. Преимущество switch-case -- не нужно морочиться с OVERLAY. Но если у тебя кросс-платформенность и switch-case не удобен, то мучайся с OVERLAY. Я в своё время предпочёл OVERLAY и FNCALL (в PICC18), чем switch-case (ибо архитектурно жутко неудобно)
Тот код, где вызывает колбэк - это неизменяемый код. Типа, библиотека низкого уровня. Она не может и не должна знать о новых фичах прошивки... 

И должна либо иметь объявления с зарезервированными именами функций (и комментарить их пустые реализации по необходимости), либо иметь один вход в прошивку (так же заранее объявленный пустой обработчик, который надо комментить) и там ветвлить - что неинтересно, т.к. тот же АЦП надо настраивать силами библиотеки.

Не вижу никаких особенностей архитектуры, которые препятствуют тому, что я хочу. Ресурсы тут - не вопрос. Они либо там будут просраны, либо в другом месте. Об экономии тактов и байтов речи не идёт.