Уважаемый hobot!
На теоретическую часть ответил в теме Теоретическое обоснование подсистемы XDev/Pdp11Dev. Практические же вопросы я наоборот надеялся выяснить здесь, затем и пришёл к вам за ответами.
Это я пытаюсь.Vslav прекрасный системщик, с GCC на "ты". Я конечно тоже писал crt0 для SDCC, но там он совсем простенький, просто переход на главную функцию.
ТЗ у меня такое. Примеряюсь к возможности создать подсистему XDev для разработки под УК-НЦ и БК. В перспективе надеюсь собрать для УК-НЦ игру Dark Woods. Позволим Vslav'у быть в стороне от этих планов Барбаросса.Поэтому и не будем говорить "вы хотите сделать", наоборот, пока только я хочу. Но без вашей помощи и интереса, боюсь, ничего у меня не выйдет. Vslav, у Вас имеется хотя бы минимальный интерес к данному направлению?
Это не слишком принципиально, но в первую очередь конечно интересует возможность разрабатывать на Обероне. Через трансляцию в Си, разумеется. Поддержка C++ лично мне не нужна.
Вот это было бы идеально. Потом из батника утилиткой запихиваем .SAV в образ диска, и вуаля.
Я не уверен, что GCC даст на выходе ассемблерный листинг. А даже если и да, то крайне сомнительно, что его удастся без модификации и бубна собрать с помощью MACRO-11.
На асме разрабатывать принципиально не хочу, это слишком сложно и неинтересно. Долю асмовой части кода попробуем уменьшить до минимума. Низкоуровневые процедуры поупрятываем в библиотеки. GCC же вместо УК-НЦ-шных средств разработки обещает более качественный, компактный и быстрый код, наиболее приближённый к закодированному вручную на асме. Хотя до этого конечно далеко, но надо же с чего-то начать. Ещё раз подчёркиваю, что "нативные" средства разработки - тупик как в плане увеличения качества машинного кода, так и в плане дальнейших доработок. Это путь, лишённый потенциала. А кросс-разработка - вполне нормальная практика. Вот представь, что у тебя микроконтроллер с памятью 4 кб, как ты туда Си впихнёшь?
Спектрумный BIN нужно хотя бы в образ ленты сконвертировать (формат TAP или TZX). Или в образ диска (TRD или SCL). Я примерно так же представлял себе создание целевого файла и для RT-11, но вот эти все проблемы, о которых ты упомянул, меня конечно смущают.
Не спорю, нужно щупать.
Vslav, я скачал архив 011.rar, но не знаю что с ним делать.Нужны подробные инструкции как хотя бы бинарничек сделать. Кстати, ещё возникает опрос про стартовый адрес. С какого адреса должен быть собран исполняемый файл для RT11? Как вообще можно указать стартовый адрес для сборки целевого бинаря в GCC?
Всё зависит от целей, которые ставят перед собой люди. Можно немного поплыть против течения, но если всё обстоит действительно так плохо, как:
тогда конечно упс.
В идеале конечно хотелось бы в любом. Хотя для начала и UKNCBTL устроит.
Я предлагаю получить среду разработки для УК-НЦ/БК/ДВК на базе GCC. Это мне кажется самым лучшим что можно вообще придумать в плане затрат времени и сил умноженных на результат - качество кода. А вот, например, в теме LLVM компилятор для БК0011М/БК12 предлагают то же самое на базе LLVM, но в варианте с GCC будет поменьше гимору, поверьте. По крайней мере придётся заниматься форматами и выковыриванием кусков кода из готовых библиотек. Всё это - гораздо проще, чем делать высокооптимальную генерацию машинного кода для LLVM, качественно отличающуюся от достижимой "нативными" средствами разработки для УК-НЦ, ДВК или БК.






Нужны подробные инструкции как хотя бы бинарничек сделать. Кстати, ещё возникает опрос про стартовый адрес. С какого адреса должен быть собран исполняемый файл для RT11? Как вообще можно указать стартовый адрес для сборки целевого бинаря в GCC?
Ответить с цитированием