PPP это частный случай HDLC, а HDLC этой такой способ уложить управляющую информацию и несколько виртуальных компортов в один физический. Оно вполне реализовано в каждом модеме в рамках GSM07.10. Только каким способом оно заменяет AT-команды? Разве что, команды и данные можно разнести по разным потокам/портам. Бинарный протокол? Упаси боже. Ещё про драйвера заикнись. Получится очередной виндовс, не совсместимый сам с собой. К счастью современные модемы с минимальными изменениями взаимозаменяются на модели других фирм, проводной модем может быть заменен на GSM и т.п. И самое главное -- можно управлять вручную, можно управлять простейшими программами типа chat и echo. Можно включить чётность для тех кому нужно, можно работать с черно-зеленым терминалом из 1976 года. Существование ITU-T V.250 стандартизировавшего интерфейс модема со всех сторон -- вообще большое достижение человечества... И уж принтф'ом распечатать команду совсем не сложно, равно как и распарсить ответы методом рекурсивного спуска, если на ассемблере, или кучкой strsep, strtok, sscanf если в C. Ну там представление хотя бы о конечных автоматах нужно иметь, чтоб в контролере понимать, что модем по-сути автомат и от посылки команды до финального ответа слать следующую не стоит. И, кстати, 2-х килобайт ОЗУ в принципе достаточно. Делал автомобильную сигнализацию в 4-х. Самое сложное -- приём многосегментных СМС, их тупо некуда складывать, как ни был бы там протокол. А хекс в юникоде переводится в IS8859-5 чуть ли не на лету. Зачем CP1251 не знаю, она только тянет за собой таблицу перекодировки на 256 байт (128 туда, 128 обратно). Почему в модеме HEX -- так это ж тоже очевидно, а что там должно быть? UTF-8? Тогда тому, кто с модемом взаимодействует придётся во-первых иметь представление о всём юникоде, знать алфавит, или правила декодирования UTF-8 (и тащит за собой массу сложностей при потенциальном разрыве посередине многобайтового символа), во-вторых теряется возможность работы в 7-битном режиме. Кстати потенциально модемы умеют перекодировать и не в HEX, SIMCOM те же, правда набор кодировок там странный и CP1251 точно нет.
[ZX]