кроссплатформенная среда разработки (IDE) для программирования на ассемблере, C или C++
eS — это свободно распространяемая, кроссплатформенная среда разработки (IDE) для программирования на ассемблере, C или C++, предназначенная для взаимодействия с различными компиляторами и отладчиками (GDB, CDB). Среда позволяет разрабатывать и отлаживать код для MIPS, ARM, i386 и любых других процессоров для встраиваемых решений и настольных приложений. Содержит минимум настроек для легкого и удобного программирования. Процесс аппаратной отладки возможен при наличии аппаратного и/или программного обеспечения для вашей цели.
Настраиваемая подсветка синтаксиса (в том числе в ассемблерных файлах)
Настраиваемая контекстная помощь
Можно настроить и подключить любой компилятор к IDE (многие компиляторы уже настроены)
Код можно отлаживать в среде с использованием GDB (и CDB для Windows)
Код можно организовать как библиотеку и связать с другим проектом
В проекте можно настроить меню для вызова внешних инструментов
Для папок проекта можно задать условия их использования по разным критериям
Полностью настраиваемый размер всех элементов интерфейса
Используется Clang для навигации по коду и завершения кода (подключается как плагин)
В комментариях можно организовать ссылки для перехода к другим файлам проекта (система привязок)
Проекты, созданные в версии для Linux, можно загрузить в версию для Windows и наоборот
Подробнее о возможностях среды можно узнать посмотрев Экранные формы ниже, а если хотите начать работу со средой можно перейти на страницу с интересующим вас примером и поэтапно выполнить несколько простых шагов.
Пример работы с решением – Экранные формы
Решение (решение - это один или несколько проектов), на котором я ниже показываю работу IDE, настроено для сборки машинного кода для запуска его под QEMU (процессор MIPS и i386) и на конкретных платах на этих процессорах. Использование QEMU позволяет на компьютере пользователя собирать и отлаживать программы для разных архитектур.
В данном решении работа происходит с последовательным портом. При запуске QEMU конфигурируется так, что последовательный порт перенаправляется на TCP порт 3344. Что бы мы могли общаться с нашей программой открываем TCP сервер используя терминал jsTerm.
Основная часть кода оформлена во втором (нижнем) проекте как внешняя библиотека в исходных текстах. Эта библиотека может подключатся к другим решениям.
Используемый тут терминал jsTerm - Скачать можно тут
После смены профиля изменился используемый компилятор и цвета некоторых папок (они помечены буквой f). Это папки, для которых задается условия их использования. Дело в том, что для разных процессоров необходим свой стартовый код (он написан на ассемблере для соответствующего процессора) и свой скрипт для линкера (файл ld). Кстати применение того или иного скрипта линковки очень простое - он просто добавляется в проект.
Пример работы со справкой – Экранные формы
Существует возможность добавлять ссылки на справочную информацию, размещая их в комментариях исходного кода. Специально оформленный якорь позволяет перейти в другое место исходного кода или открыть внешний PDF файл на указанной странице.
Так же некоторые инструменты (ассемблер, С/С++ компилятор, отладчик, библиотекарь, линкер) в своих настройках в рамках среды могут иметь дополнительную справку по командам ассемблера.