Важная информация

User Tag List

Страница 3 из 22 ПерваяПервая 1234567 ... ПоследняяПоследняя
Показано с 21 по 30 из 211

Тема: Кросс-средства для программирования под МП 1801, 1806, 588

  1. #21
    Guru Аватар для Vslav
    Регистрация
    31.03.2013
    Адрес
    г. Киев
    Сообщений
    2,413
    Спасибо Благодарностей отдано 
    132
    Спасибо Благодарностей получено 
    755
    Поблагодарили
    353 сообщений
    Mentioned
    86 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Написал автору порта MACRO-11, посмотрим что расскажет как он линковал.
    На самый крайний вариант напишу свой простенький конвертор выходного объектника MACRO-11 Win32, там формат вроде достаточно простой, но не хочется время тратить.

  2. #22
    Guru
    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,777
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    61 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Vslav Посмотреть сообщение
    Тема не утратила актуальности - очередному ностальгирующему нужно компилировать тесты для ПЗУ bare system. Не расскажете подробнее как процесс компиляции в эмуляторе организовать?
    Довольно подробный ответ есть ЗДЕСЬ и ЗДЕСЬ.

    ---------- Post added at 15:44 ---------- Previous post was at 15:40 ----------

    Пример компиляции исходника ПЗУ - ЗДЕСЬ.

  3. #23
    Guru Аватар для Vslav
    Регистрация
    31.03.2013
    Адрес
    г. Киев
    Сообщений
    2,413
    Спасибо Благодарностей отдано 
    132
    Спасибо Благодарностей получено 
    755
    Поблагодарили
    353 сообщений
    Mentioned
    86 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Это все понятно, но я хотел бы собирать весь проект целиком одним кликом из своей любимой IDE, а не что-то копировать ТС, потом еще что-то набирать в эмуляторе, потом копировать ТС обратно. Тут важна скорость и удобство, бывает до нескольких десятков пересборок в час, утомительно скакать по окнам и что-то вбивать. А так - одну кнюпочку нажал, по makefile пересобрался .mif, потом .sof, автоматом ушло в FPGA и само перезапустилось.

    Вот, например, некоторые эмуляторы CP/M-80 позволяют запускать себя, потом указанное приложение с указанными параметрами (передается как командная строка приложения эмулятора) и все файловые операции транслируются автоматически в каталог DOS/Windows. Запускать там m80/l80 вполне прикольно и можно приспособить в свой общий makefile.

    PS. Автор порта MACRO-11 Win32 ответил что формат выходного объектника там RT-11 (доку я нашел на него), но линкера под Win32 он не знает. Ну и ладно, своя сборка GCC устроит пока, тем более потом все равно С будет нужен.

  4. #24
    Guru
    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,777
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    61 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Vslav Посмотреть сообщение
    некоторые эмуляторы CP/M-80 позволяют запускать себя, потом указанное приложение с указанными параметрами (передается как командная строка приложения эмулятора) и все файловые операции транслируются автоматически в каталог DOS/Windows.
    Добавление такой возможности в эмулятор RT-11 запланировано, но пока не реализовано.

  5. #25
    Veteran Аватар для Oleg N. Cher
    Регистрация
    24.08.2007
    Адрес
    Днепропетровская обл.
    Сообщений
    1,593
    Спасибо Благодарностей отдано 
    2,159
    Спасибо Благодарностей получено 
    130
    Поблагодарили
    96 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Vslav Посмотреть сообщение
    Ну и ладно, своя сборка GCC устроит пока, тем более потом все равно С будет нужен.
    Я правильно понимаю?

    Своя сборка GCC

    Хост-платформа: Linux
    Таргет: 1801 (совместим с системой команд PDP-11)
    Язык: Си
    Выходной формат? (.sav)?

    Можно ли делать в Си-коде асмовые вставки?

    Можно ли делать/использовать библиотеки стандартными утилитами GCC типа ar?

    Есть ли возможность скачать и опробовать эту сборку для человека, который плоховато дружит с Linux?

  6. #26
    Guru Аватар для Vslav
    Регистрация
    31.03.2013
    Адрес
    г. Киев
    Сообщений
    2,413
    Спасибо Благодарностей отдано 
    132
    Спасибо Благодарностей получено 
    755
    Поблагодарили
    353 сообщений
    Mentioned
    86 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
    Хост-платформа: Linux
    Нет, я под MinGW собрал для Win32

    Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
    Таргет: 1801 (совместим с системой команд PDP-11)
    Язык: Си
    Да. Только там нет тагета именно 1801, придется что-то из дековских подбирать.

    Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
    Выходной формат? (.sav)?
    Формат объектнков a.out.
    Насчет .sav не знаю, это проприетарный формат DEC RT-11. Я сейчас просмотрел - линкер ld формат .sav не поддерживает. Но если не злоупотреблять оверлеями то .sav примитивный, можно конвертор написать.

    Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
    Можно ли делать в Си-коде асмовые вставки?
    Собрано на базе GCC 4.6.2, полагаю что стандартный способ ассемблерных вставок для GCC должен работать.

    Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
    Можно ли делать/использовать библиотеки стандартными утилитами GCC типа ar?
    Да.

    Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
    Есть ли возможность скачать и опробовать эту сборку для человека, который плоховато дружит с Linux?
    Выложил архив 17МБ
    Только сам C/C++ я еще не пробовал. И там у меня пара ран-тайм библиотек со сбоем собралась, но с собственно сишными все ОК. Для программирования на С для bare-metall систем не собранные либы не нужны.

  7. #27
    Veteran Аватар для Oleg N. Cher
    Регистрация
    24.08.2007
    Адрес
    Днепропетровская обл.
    Сообщений
    1,593
    Спасибо Благодарностей отдано 
    2,159
    Спасибо Благодарностей получено 
    130
    Поблагодарили
    96 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Vslav, спасибо за ответы и за сборку.

    Собираюсь попробовать сделать подсистему Pdp11Dev (или как лучше назвать?) для разработки на паскалеподобном языке Оберон-2. Таргеты - БК-0010/0011(M), УКНЦ, возможно, ДВК. Интерес чисто теоретический. Формат .sav не самоцель, просто полезно было бы иметь - видел его поддержку в интерактивном дизассемблере IDA Pro, значит формат достаточно известный.

    Сама подсистема устроена так: среда разработки транслирует своими средствами модуль на Обероне в его сишный эквивалент, потом запускает батник, в котором можно прописать всю логику работы по компиляции сишных файлов в бинари и конвертировании a.out в нужный выходной формат - образ кассеты, образ диска и т.п. Такой принцип обкатан на подсистемах ZXDev и MsxDev и хорошо работает. Почему именно Оберон, а не чистый Си - разговор отдельный и наверное не очень тематический.

    За счёт единообразного по стилю набора библиотек для различных платформ возможна (со многими ограничениями конечно, но возможна) разработка, например, игры с одного исходника для нескольких целевых платформ, различных по архитектуре, вплоть до разрядности. Библиотеки конечно нужно писать с нуля, знания данного асма у меня вообще нет, так что, вероятно, придётся задавать много глупых вопросов по низкоуровневому кодингу.

    Несколько подобных игр находятся у меня в разработке. Целевые платформы - ZX Spectrum, Windows (32/64 bit), Linux (SDL), MSX, Java micro edition, MS-DOS, возможно в скором будущем - Nintendo/NES (6502). Почему бы не прибавить к ним и БК/УК-НЦ.

    ---------- Post added at 02:52 ---------- Previous post was at 01:40 ----------

    Цель разработки такой подсистемы - не только делать игру сразу для нескольких ретро-платформ. Мне всегда не хватало чего-то для быстрого старта. Ну вот, допустим, захотелось покодить для БК. Асма не знаю. Слова "MACRO 11" меня пугают. Зато когда-то работал на Fast/Pascal. Т.е. не хватает чего-то такого: скачал, набрал простенькую программку на пару строк и запустил одним нажатием кнопки, притом не внутри эмулятора. Вот что-то подобное и нужно разработать, чтобы начинающим, кто захочет попробовать кодить под ретро, не пришлось делать рутинную работу по написанию вывода буквочек в текстовую консоль на асме.

    Опишу возникшие трудности со сборкой. Пробую собирать простейший исходник:

    Код:
    int main(int argc, char **argv)
    {
      return 0;
    }
    1. Затребовала ряд .dll:

    libgcc_s_dw2-1.dll
    libgmp-10.dll
    libiconv-2.dll
    libmpc-2.dll
    libmpfr-1.dll

    Взял их с MINGW и поместил в /bin. Пришлось прописать SET path=..\Bin\gcc\bin

    2. Не увиделись файлы в путях для инклюдов. Вызываю так:

    pdp11-aout-gcc.exe -I ../Lib/C -I ../Lib

    Пока пришлось разместить все файлы в одной текущей папке.

    3. Вроде собралось. Но выдало такое:

    h:\Archive\Projects\XDev\Pdp11Dev\Obj>SET path=..\Bin\gcc\bin
    h:\Archive\Projects\XDev\Pdp11Dev\Obj>SET gcc=..\Bin\gcc\bin\pdp11-aout-gcc.exe
    -I ../Lib/C -I ../Lib
    h:\Archive\Projects\XDev\Pdp11Dev\Obj>..\Bin\gcc\b in\pdp11-aout-gcc.exe -I ../Li
    b/C -I ../Lib Empty.c
    h:/archive/projects/xdev/pdp11dev/bin/gcc/bin/../lib/gcc/pdp11-aout/4.6.2/../../
    ../../pdp11-aout/bin/ld.exe: cannot find crt0.o: No such file or directory
    h:/archive/projects/xdev/pdp11dev/bin/gcc/bin/../lib/gcc/pdp11-aout/4.6.2/../../
    ../../pdp11-aout/bin/ld.exe: cannot find -lc
    collect2: ld returned 1 exit status

    Файла crt0.o в архиве нет. Наверное нужно вызывать как-то не так, да?

    Хотелось бы собрать хотя бы helloworld хотя бы для какой-то из платформ - БК, УК-НЦ или ДВК. Если есть идеи, благодарю за них заранее.
    Последний раз редактировалось Oleg N. Cher; 05.12.2021 в 01:50.

  8. #28
    Guru Аватар для Vslav
    Регистрация
    31.03.2013
    Адрес
    г. Киев
    Сообщений
    2,413
    Спасибо Благодарностей отдано 
    132
    Спасибо Благодарностей получено 
    755
    Поблагодарили
    353 сообщений
    Mentioned
    86 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
    Файла crt0.o в архиве нет. Наверное нужно вызывать как-то не так, да?
    Увы, это то о чем я говорил - библиотека ран-тайм для C у меня не собралась. Дело в том, что у меня есть своя модульная система на основе RTOS TNKernel, и все самописное, включая нужные процедуры crt для разных платформ. Поэтому я не разбирался почему оно не собралось - мне эти библиотеки не нужны.
    Варианты решения - или попробовать самому собрать эту библиотеку отдельно, или попробовать взять готовую из какой другой сборки. Или посмотреть какие модули оно хочет из этой библиотеки - если программа пустая то скорее всего стартовый модуль, написать его самому и библиотеку не пользовать.

  9. #29
    Veteran Аватар для Oleg N. Cher
    Регистрация
    24.08.2007
    Адрес
    Днепропетровская обл.
    Сообщений
    1,593
    Спасибо Благодарностей отдано 
    2,159
    Спасибо Благодарностей получено 
    130
    Поблагодарили
    96 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Есть ли интерес к подобной подсистеме для разработки под БК и УК-НЦ? Потому что если нет, то, боюсь, на этом мои исследования и закончены. Не чувствую достаточной уверенности в деле написания собственного линкера или даже конвертера из бинарника в образы ленты/диска. Есть желающие помочь? Получим не только среду разработки на Обероне, но и можно будет скомпоновать свою среду для разработки на Си. Притом по кодогенерации она будет явно мощнее, чем нативные. А библиотеки можно подтянуть да хоть с Fast/Pascal.

    Итак. Задача №1. Как-то получить на выходе бинарный файл, скомпилированный под нужный нам адрес.

    Задача №2. Уже непосредственно конвертировать в образы. Начать можно не с .sav, а, например, с образа ленты БК. Посмотрел, в эмуляторе БК-0010.01 Андрея Грабовца для хранения игр используется непосредственно формат .bin. Он чем-то отличается от бинарника, который наверное способен выдать модифицированный GCC?

    Vslav, я был бы рад примеру подобной библиотеки с процедурами crt и стартовым модулем, которую можно собрать данным GCC.

  10. #30
    R.I.P. Аватар для hobot
    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    370
    Поблагодарили
    309 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
    Таргеты - БК-0010/0010, УК-НЦ, возможно, ДВК.
    Я бы немного поправил (хотя возможно зря я вообще встреваю, я ведь вовсе не программер), но тут надо ориентироваться на ОС RT-11 и её форматы и как самый честный по отношению к PDP-11 в плане железок - это ДВК конечно, но ДВК были(есть) на разных процессорах и на ВМ1 и на ВМ2 и на ВМ3 (???), то есть если собранный sav работает под RT-11 он будет(должен) работать везде и на УК-НЦ(ВМ2) и на БК11М(строго ВМ1) и на ДВК(ВМх). Как-то так.

    Спецификой у этих родственных машинок является только графика !!!
    Поэтому графику пока отложить в сторону (по мере изучения ОС и платформы нюансы с ней связанные станут понятнее - везде графика на уровне железа по разному сделана, такие дела. И если брать какой-то ориентир в плане графики - это наверное либо что то новое к ДВК прикручивать (желательно поддержку Glide - досовский или виндовый) или ориентироваться на КЦГД,
    как самый продвинутый отечественный видео-адаптер, который, кстати говоря, на ВМ2)
    Последний раз редактировалось hobot; 20.11.2014 в 21:36.
    Архив программ для УК-НЦ, ДВК и БК.

    Ищу игру "СТРАНА МОНСТРОВ" [monstr.sav] для ДВК.

Страница 3 из 22 ПерваяПервая 1234567 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Вектор-06Ц: Средства разработки
    от Tim0xA в разделе Вектор
    Ответов: 254
    Последнее: 29.06.2021, 16:49
  2. Микропроцессоры МПК1810,580,1801 и много чего интересного...
    от Alex_Vac в разделе Барахолка (архив)
    Ответов: 8
    Последнее: 03.06.2012, 22:16
  3. Микросхемы МПК 580,1801,1810 и другие...
    от Alex_Vac в разделе Барахолка (архив)
    Ответов: 44
    Последнее: 07.04.2012, 08:03
  4. Учебный стенд УМПК-1801
    от dk_spb в разделе ДВК, УКНЦ
    Ответов: 2
    Последнее: 12.05.2010, 16:52
  5. Средства разработки для C64
    от andrews в разделе Commodore 16/64/128
    Ответов: 0
    Последнее: 05.04.2010, 13:20

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •