FasmARM портировать на WinMobile 5.0

Тема в разделе "WASM.PROJECTS", создана пользователем satrau, 19 фев 2008.

  1. satrau

    satrau Александр

    Публикаций:
    0
    Регистрация:
    5 янв 2008
    Сообщения:
    229
    Многим посвященным известно, что FasmARM есть под win32,Dos,Linux, есть исходники под каждую платформу.
    Предлагаю портировать компилятор под WinMobile - дабы даже имея на руках лиш один телефон с WinMobile - можно было бы на нем создавать приложения, не прибегая к помощи компьютера.
    Результат предствляю себе таким.
    1 В суровых походных условиях, на мобильном телефоне в простеньком редакторе набирается исходник.
    2 Сохраняется например с именем source.asm
    3 Открывается компилятор, в нем 2 поля - в первом пишем путь к исходнику, во втором указываем куда сохранить бинарник.
    ------------
    небольшое отступление.
    А уже на основе созданного компилятора можно будет создавать свои языки программирования и среды для облегчения сего труда.Которые в последствии будут транслироваться в асм, который будет компилировать Fasm.
    ------------
    Надобность в подобном, на мой взгляд есть, ведь существуют платные мобайл бэйсик, шарпы и (кажется бесплатный) портированный gcc.
    А ежели такой компилятор фасма уже есть - подскажите сылочку.
     
  2. t00x

    t00x New Member

    Публикаций:
    0
    Регистрация:
    15 фев 2007
    Сообщения:
    1.921
    только под x86 и т.д.
    ARM имеет другой набор инструкций.
     
  3. _basmp_

    _basmp_ New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2005
    Сообщения:
    2.939
    вношу встречное предложение - портировать fasmarm на платформу Symbian S60, причем так, чтоб компилило на самом девайсе в исполняемый файл его, шелл какой присобачить (bash 8-)) perl под сюда - есть уже (souceforge) редактор можно написать, а можно и готовый использовать (DEd например). И есть чем заняться в очереди, автобусе, поезде, на приеме у посла :)

    мотивирую: данная платформа наиболее распространена, от возможностей совремённых смартов/комуникаторов я вообще фигею - лет 7-8 назад большие компы хуже были, есть порты (com, usb), достаточно доступные цены (бывает новый контроллер + окружение + разводка + пайка дороже и напряжнее старого б/у шного смарта, а экран, а клава, а порт стандартный готовый, а ось многозадачная надежная хорошо описаная с бесплатной SDK-ой =< 8, и управлять по телефону/блютуфу можно, глядеть через камеру, все слышать и мочь ответить через громкую связь). тел всегда с собой и програмить ножно когда делать нечего.

    вот такое вот контрпредложение.
     
  4. _basmp_

    _basmp_ New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2005
    Сообщения:
    2.939
    сдублировало
     
  5. _basmp_

    _basmp_ New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2005
    Сообщения:
    2.939
    сдублировало еще раз
     
  6. _basmp_

    _basmp_ New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2005
    Сообщения:
    2.939
    наверное компу по душе моя месага - переживает за братьев меньших - аж четыре копии отправил.

    кстати говоря есть готовые свободные компилеры с/asm. Компилер из plan9 например - маленький exe-шник, хороший код, с/asm/link-ер - правим линкер, перекомпиляем под ARM с правленым link-ом, все что понравится портируем (исходников очень мало - прикольная сиска - наследница юних) ну и.. итд. Правда синтаксис там AT&T-шный - одновременно удобнее и корявее (непривычнее), но юниксоиды как-то парятся. Препроцессор С-шный.. Да и переписать синтаксис впоследствии можно (lex, bison)..

    Ну вобщем тема ветки правильная, давно сам открыть хотел.

    всем привет.
     
  7. satrau

    satrau Александр

    Публикаций:
    0
    Регистрация:
    5 янв 2008
    Сообщения:
    229
    тогда смею предположить, что самым оптимальным вариантом для обладателей как WinMobile так Simbain, а так же многих других моделей телефонов, будет портирование FasmArm под J2me платформу.
    Тогда всего один раз написав мидлет - им можно будет компилировать нормальный нативный код на многих платформах - вплоть сименса сх 65 :)
    ----
    А так немного пораскинув мозгами пришел к такому решению - использование на смартфоне эмулятора Dos в котором запускать дос версию fasmarm и компилировать.
     
  8. WIN32

    WIN32 Member

    Публикаций:
    0
    Регистрация:
    20 янв 2007
    Сообщения:
    338
    ага под x86.

    У Арма совсем другая архитектура команд, проще будет написать компилятор под арм и все. не знаю выдрать из гцц чтоли
     
  9. satrau

    satrau Александр

    Публикаций:
    0
    Регистрация:
    5 янв 2008
    Сообщения:
    229
    WIN32
    FASMarm тот который уже существует и кажется есть в загрузках на сайте - прекрасно компилирует арм код. да вот только сейчас можно компилировать, только когда находишся в среде вин32,дос или линукс.
    Задача сделать так, чтоб сей компилятор мог работать на wm 5.0, симбаине или j2me.
     
  10. _basmp_

    _basmp_ New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2005
    Сообщения:
    2.939
    satrau
    насчет жабы идея неплохая, НО совершенно разные ахитектуры/библиотеки писать в коде придется все равно. Разные выходные форматы - пересобирать придется опять же, во всех случаях. На обычном теле вся эта петрушка не пойдет полюбому - закрытый аппарат (разве-что FASMjava :)). А учитывая, что у С С++ возможностей побольше и скорость повыше - думаю лучше остановиться на них. На жабе можно обвязку написать (видал когда-то (и пробовал) юних шелл на жабе писанный, с утилями - круто).

    WIN32
    гцц слишком большой, телу памяти не хватит, лсс - полузакрытый - компиленое ним продавать нельзя. Ватком кодогенератора под АРМ не имеет (хотя написать, перелицевав какой нибудь мипс, думаю, можно). Как я уже писал, наиболее оптимальным, на мой взгляд, является компилер из plan9 от белл лабс. Маленький ~200 Кб (это С), быстрый, оптимизирует, они там писали, что собирали им всю систему когда-то - и работала! Простой и понятный код. Есть интересные библиотеки, написаные кросплатформено. Одно только, он под АРМ4 (GameBoy вроде-бы) АРМИ код. Хотя, опять-же думаю, это не страшно.

    Для этого придется написать все с нуля. Асмы не портируются, а х86 (на нем написан FASMarm) и подавно. Кстати существует nasm для arm-а (непроверено).
     
  11. _basmp_

    _basmp_ New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2005
    Сообщения:
    2.939
    http://ftp.slackware.pl/pub/armedslack/armedslack-current/slackware/d/
     
  12. _basmp_

    _basmp_ New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2005
    Сообщения:
    2.939
    http://www.armedslack.org/
    http://www.linuxhints.info/armlinux/
     
  13. WIN32

    WIN32 Member

    Публикаций:
    0
    Регистрация:
    20 янв 2007
    Сообщения:
    338
    satrau
    ты понимаешь что, не только гуи, но и сам транслятор и линковщик работают под X86 ?
    проще будет написать компилятор под арм и все

    _basmp_
    Мне пона не треба , но как только, так сразу :)
     
  14. _basmp_

    _basmp_ New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2005
    Сообщения:
    2.939
    WIN32
    Do you speak russian?
     
  15. WIN32

    WIN32 Member

    Публикаций:
    0
    Регистрация:
    20 янв 2007
    Сообщения:
    338
    _basmp_
    No
     
  16. Cyber_Mozg

    Cyber_Mozg Andrey

    Публикаций:
    0
    Регистрация:
    4 апр 2005
    Сообщения:
    212
    Адрес:
    Russia
    проще буит поставить питон и кодить на питоне
     
  17. _basmp_

    _basmp_ New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2005
    Сообщения:
    2.939
    или на перле или на mshell-е или вообще не програмить - поставить игруху и гаматься пока мозги из ушей не потекут.
    Охота иметь компилеры асма и С и либы к ним работающие на теле и создающие запускаемые файлы для тела, возможно шелл с поддержкой скриптов (баш), и мэйк, чтоб совсем хорошо было. написано все это может быть хоть на васике, работало лишь-бы.
     
  18. _basmp_

    _basmp_ New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2005
    Сообщения:
    2.939
  19. satrau

    satrau Александр

    Публикаций:
    0
    Регистрация:
    5 янв 2008
    Сообщения:
    229
    то что напрямую переводить построчно х86 исходник в арм исходник, с последующей компиляцией - это понятно что глупо.
    Задача стоит в реализации самого алгоритма ФасмАрма х86 в коде на j2me или непосредственно в арм код.
     
  20. Voodoo

    Voodoo New Member

    Публикаций:
    0
    Регистрация:
    9 апр 2003
    Сообщения:
    297
    Адрес:
    Новосибирск
    satrau
    Я вот никак не пойму, чего ты от этой темы ждешь?.. Да, идея, на первый взгляд, неплоха. Так флаг в руки!

    Берешь исходники FASMа, куришь их до полного просветления. Причем достаточно полного, чтобы и впредь понимать, как устроена та или иная фича и иметь возможность ее реализовать в своем проекте. Далее, берешь доки по платформе(ассемблер для ARM, J2ME), куришь их. Реализовываешь FASM на целевой платформе. Аплодисменты. Занавес.

    В принципе, как вариант, можешь написать конвертор х86-асм кода в эквивалентный для ARM. За это аплодисментов будет значительно больше. И портирование будущих версий FASMarm станет куда меньшей проблемой.