Mrrl: полагаю, лучше для дел интерактивно-консольных использовать ncurses или родственные библиотеки. Все ж таки форматный ввод подразумевает, что источником данных является не человек, а некий заранее отформатированный файл.
ginoyisez: Если по этим проводам будет поступать Интернет со скоростью до 10 мегабит - хорошая скрутка с этим справится. На более высоких скоростях данная скрутка может начать переотражать сигнал, что приведет к снижению скорости и потерям пакетов.
Помимо этого, плохо изолированная скрутка со временем может окислится, а это наверняка выведет линию из строя.
Именно по этому, спайка, да еще с минимальным нарушением повивки - самый предпочтительный вариант в вашей ситуации.
Алексей Яхненко: Нет уверенности в том, что в буфере при этом что-то будет. Если же буфер будет пуст, попытка очистки превратится в ожидание нового символа.
Японский Городовой: такое мнение сложилось - библиотеку делал программист на C++ (или Java), которого силком пересадили на C. Кругом попытки "обобъектить", "оструктурить" все что только под руку попадется.
Японский Городовой: Меня в STM такой момент останавливает - Необходимость инициализации каких-то странных структур для работы с периферией.
Понятно, что фактически идет передача структур, по которым библиотека должна заполнить регистры (попытка абстракции от конкретного камня), но в разных мануалах и примерах инициализация выполняется разными способами, что на первых порах ставит в тупик.
В то же время, с AVR написание идет без затруднений - бахай себе битики в регистры и вперед.
Вот честно - автогубители такое очень любят. "Совершенно секретная" кастомная сигнализация, которую устанавливают в гаражной мастерской у самоделкина - мегатренд. За пожар или заглохший посреди обгона двигатель, понятное дело, самоделкин ответственности не несет.
jcmvbkbc: так я об этом и говорю в своем ответе - единого стандарта нет. На тот момент, когда я писал ответ, я же не знал, что автор вопроса интересуется форматом, который сможет съесть tlink.
lexaxaxa: когда я говорил о написании программы на высокоуровневом языке, я говорил о написанни программы - генератора объектных файлов. Потому как структурно такая программа на ассемблере под Windows будет мало отличатся от аналогичной программы на Си - нужно будет
сложить на стек параметры для вызова CreateFile, вызвать ее,
потом собрать структуры данных в нужном формате,
потом сложить на стек параметры для WriteFile, вызвать ее,
потом сложить на стек параметры для CloseHandle, вызвать ее.
jcmvbkbc: GCC не принимает объектные файлы от другой версии GCC (ABI совпадают конечно же). Так что хороший способ что-то записать в объектный файл для GCC - пользоваться соответствующим API из Binutils.
Если бы была тотальная стандартизация, компоновщик от VisualStudio мог бы съесть объектные файлы от GCC, однако такой радости нет (да и смысла в ней нет).
OnYourLips: Тем не менее, исследователи Google такую игрушку (2D типа Марио) успешно сделали на Qt: VoltAir
А вопрос распространенности тех или иных игр не очень-то связан с их технической стороной.
Я согласен с тем, что Unity3D - отличная платформа для игр. Но я не был бы столь категоричен с заявлением, что "Qt - совсем не подходящая фигня".
DrMultic: На ардуине без издевательства над собой получится разве что сотворить вариант RS232 через IP. И то, это будет довольно накладно, так как придется к контроллеру подключать еще и ethernet-модуль.
lexaxaxa: задача компоновщика - объединить единицы трансляции и статические данные в выполняемый файл. Так как вы эти задачи сняли, то и компоновщик вам не нужен.