А потом оказывается, что твоя Маслобойка сконструирована в тресте ширпотреба ГУАПа старшим инженером Тучашвили. Цех ширпотреба завода No.29 (нач. цеха Краузе, по национальности немец, член ВКП(б) с 1924 г.) добавил вторую лопасть, установив ее перпендикулярно первой. В результате расположение лопастей приобрело вид фашистской свастики.
А почему нет FreeRTOS? Это такая операционеая система, которую невозможно установить (самостоятельно). Она собирается вместе с пользовательским приложением и составляет с ним одно целое...
Я подумал что для написания подобных эмуляторов в будущем стоит попробовать писать не самостоятельный эмулятор, а интегрировать свой компонент в библиотеку эмулятора SimulIDE Потому что если получится в SimulIDE интегрировать проект, то можно будет собирать целые схемы с вашим процессором и многими-многими другими компонентами...
Как заставить HT443A0 или аналоги выполнять произвольную команду? Кажется, что это невозможно, ведь эти микроконтроллеры имеют масочное ПЗУ, которое может быть задано только один раз на заводе при производстве. Но у нас есть дамп этого ПЗУ. Возможно ли заставить HT443A0 пропускать, проскакивать определенное количество команд? Например, управляя частотой тактирования (завышая ее выше разрешённого предела на необходимое количество тактов) или устраивая просадку напряжения питания во время выборки нежелательных инструкций? Если это возможно, тогда можно выполнять не совсем любую инструкцию, но любую инструкцию из содержимого ПЗУ, верно?
Спасибо за статью! Позвольте вопрос по теме многопоточности. Можно ли обращаться к полям и методам объекта А из объекта Б, если они в разных нитях живут? Evgenii Legotckoi говорит что можно, но так ли это? И если всё же нельзя, то как быть?
Более того, я зная историю с Marcin Konarski, сделал свой форк и даже Pull Request в оригинальный репозиторий. Кстати мой Pull Request на тему о которой писал @DrMefistO Я предложил новый пример со сборкой replxx через механизм FetchContent (мне кажется это очень удобным).
Проблема в том, что разных pull request по проекту накопилось уже больше десятка, кто-то должен взаимодействовать с коммитерами и отвечать на issues. Я думал взяться, но изучив исходный код понял, что у меня не хватает компетенций, а также времени заниматься полноценной command-line tool library.
Marcin Konarski в одиночку тянул проект с открытым исходным кодом, тратил свое время и силы, поддерживал, добавлял фичи, обсуждал pull requests, за время существования проекта 40 авторов внесли свои правки. Хочется верить, что найдется другой человек, который сможет с благодарностью унаследовать и дальше развивать наследие Marcin Konarski. Но какого черта вы называете этого гения вахтёром - вот что понять я не в силах. Поставил вам минус в карму...
Простите за оффтоп, но можно привести примеры когда нужно и когда не нужно писать static inline к строке типа static inline constexpr uint8_t i= 1; Я унаследовал кодовую базу C и перевожу ее на C++. Соответственно заменяю #define на static inline constexpr. Нужно ли тут писать static inline?
Извините за оффтоп. Я помогаю делать IMSProg. Я составляю инструкцию по сборке на Ubuntu 24. Как мне узнать, включен ли по-умолчанию пакет systemd-dev?
А потом оказывается, что твоя Маслобойка сконструирована в тресте ширпотреба ГУАПа старшим инженером Тучашвили. Цех ширпотреба завода No.29 (нач. цеха Краузе, по национальности немец, член ВКП(б) с 1924 г.) добавил вторую лопасть, установив ее перпендикулярно первой. В результате расположение лопастей приобрело вид фашистской свастики.
Электроприводы с обратной связью заказывали? На али искать "DC motor encoder", стоить будет 500 руб... Пример
Как минимум поэтому она и должна была попасть в этот обзор как "странная", не так ли?
Аналогичный проект да с видеокартой на дискретных элементах).
Вот тут можно посмотреть на MLDR44
А почему нет FreeRTOS? Это такая операционеая система, которую невозможно установить (самостоятельно). Она собирается вместе с пользовательским приложением и составляет с ним одно целое...
Я подумал что для написания подобных эмуляторов в будущем стоит попробовать писать не самостоятельный эмулятор, а интегрировать свой компонент в библиотеку эмулятора SimulIDE Потому что если получится в SimulIDE интегрировать проект, то можно будет собирать целые схемы с вашим процессором и многими-многими другими компонентами...
Предлагаю сменить лицензию с Unlicense license на Apache-2.0 license.
Как заставить HT443A0 или аналоги выполнять произвольную команду? Кажется, что это невозможно, ведь эти микроконтроллеры имеют масочное ПЗУ, которое может быть задано только один раз на заводе при производстве. Но у нас есть дамп этого ПЗУ. Возможно ли заставить HT443A0 пропускать, проскакивать определенное количество команд? Например, управляя частотой тактирования (завышая ее выше разрешённого предела на необходимое количество тактов) или устраивая просадку напряжения питания во время выборки нежелательных инструкций? Если это возможно, тогда можно выполнять не совсем любую инструкцию, но любую инструкцию из содержимого ПЗУ, верно?
Есть ещё QHexEdit2, который например в IMSProg используется, выглядит так...
Поясните пожалуйста зачем это нужно? Чем комбинации по-умолчанию плохи?
На Хабре как раз таки есть раздел Посты. Пишите туда пожалуйста. Я вот пишу
Также вам могут быть интересны
Запускаем дисплей на STM32 через LTDC… на регистрах
Миникомпьютер из роутера с OpenWRT: разрабатываем USB-видеокарту
Подключение дисплея 10" ER-TFT101-1 к STM32F429 через FMC
Что можно сделать с большим дисплеем?
Вы тоже любите дисплеи?
Подключаем дисплей к любому одноплатнику с SPI: большой мануал о поиске экранчиков для ваших проектов
Спасибо за статью! Позвольте вопрос по теме многопоточности.
Можно ли обращаться к полям и методам объекта А из объекта Б, если они в разных нитях живут? Evgenii Legotckoi говорит что можно, но так ли это? И если всё же нельзя, то как быть?
Более того, я зная историю с Marcin Konarski, сделал свой форк и даже Pull Request в оригинальный репозиторий.
Кстати мой Pull Request на тему о которой писал @DrMefistO Я предложил новый пример со сборкой replxx через механизм FetchContent (мне кажется это очень удобным).
Проблема в том, что разных pull request по проекту накопилось уже больше десятка, кто-то должен взаимодействовать с коммитерами и отвечать на issues. Я думал взяться, но изучив исходный код понял, что у меня не хватает компетенций, а также времени заниматься полноценной command-line tool library.
Marcin Konarski в одиночку тянул проект с открытым исходным кодом, тратил свое время и силы, поддерживал, добавлял фичи, обсуждал pull requests, за время существования проекта 40 авторов внесли свои правки. Хочется верить, что найдется другой человек, который сможет с благодарностью унаследовать и дальше развивать наследие Marcin Konarski. Но какого черта вы называете этого гения вахтёром - вот что понять я не в силах. Поставил вам минус в карму...
Простите за оффтоп, но можно привести примеры когда нужно и когда не нужно писать static inline к строке типа
static inline constexpr uint8_t i= 1;
Я унаследовал кодовую базу C и перевожу ее на C++. Соответственно заменяю
#define
наstatic inline constexpr
. Нужно ли тут писать static inline?Извините за оффтоп. Я помогаю делать IMSProg. Я составляю инструкцию по сборке на Ubuntu 24. Как мне узнать, включен ли по-умолчанию пакет systemd-dev?
Я плюсую. Хотя уж меня точно нельзя записать в любители СССР...
И в Colobot!