Forth

...
  • willow wrote: Сегодня уже практически готова 32-битная версия для Колибри. Осталось сделать некоторые усовершенствования в консоли.
    И где ?
  • http://forth.spb.su:8888/KolSPForth.rar
    Вот сляпал из kol_0520src-1\programs\cmd и http://forth.spb.su:8888/masmspf2.rar
    С доступ к файлам пока не сделал.
    Ссылка на последнюю версию будет на http://wiki.forth.org.ru/SPF%20on%20MASM
  • Ситуация становиться все интересней. У нас будет уже 2 Форта. :-)
    Теперь все зависит от того, кто быстрей доделает сам интерпретатор и подробную документацию по работе с ним.
    Желательно хотя бы простенькое руководство программиста, для того чтобы будущий программер понял всю мощь этого языка.
  • Прикольный. У меня поменьше словарь будет...
  • SPF - это коллективное творчество. Добавлять добавляют, а выкинуть чужое рука не поднимается.
    Может что-то и следовало вынести в библиотеку для дозагрузки, но особо есть не просит.
    А ты работу с файлами сделал? Что-то мне таскливо становится глядя на доступ к файлам в Колибри.
    Хочется обычного открытия/закрытия файлов и доступ к данным не на уровне блоков.
    Может, кто-то сделал соответствующую библиотеку?
  • У меня пока только типа S" /rd/1/menuet.f" INCLUDED, а работа с файлами через стандартные сисфункции
  • или так:
    73 CONSTANT img.width
    22 CONSTANT img.height
    CREATE raw img.width img.height * 3 * 16 + ALLOT
    CREATE gif 600 ALLOT
    : new_me ( new main loop)
    gif DUP $" /rd/1/Menu.gif" COUNT READ 2DROP
    gif raw READ_GIF .
    ;

    Это я gif картинку считываю через встроенный gif_lite
    Vivat assembler et KolibriOS!
  • willow wrote:У меня пока только типа S" /rd/1/menuet.f" INCLUDED, а работа с файлами через стандартные сисфункции
    В смысле с помощью: kol_0520src-1\other\fasm164\system.inc
    Вообще, выкладывай что сделал, чтобы я не делал что сделано.
    На то он и OpenSource.
    Last edited by Mihail on Thu Mar 30, 2006 5:16 pm, edited 1 time in total.
  • Видишь ли, у меня прародителем выступает 16-разрядный eForth, поэтому вряд ли тебе поможет мой код - разные концепции. Завтра выложу где-нибудь
  • Концепции cmd и masmspf еще более разные.
    Воодще, самым принципиальным отличием между Фортами может быть только тип шитого кода.
    Ради совместимости, особенности шитого кода, следует использовать в крайних случаях.
    Чаще всего, причиной несовместимости является конфликт имен.
  • Mihail
    willow
    А может, совместно будете делать. И быстрей и веселей, и другие потянутся?
    P.S. Но в принципе как хотите, лишь бы хорошая вещь не зачахла в самом начале развития.
  • Миша, свяжись со мной по email
  • Слил две системы в один модуль.

    http://fpauk.narod.ru/kolspforth.2.rar

    Для избежания конфликта имен на уровне ассемблера к
    генератор ассемблерного файла ко всем словам
    (кроме слов начинающихся с префикса SYS_)
    добавляет префикс cfa_.

    В spf применяется подпрограммный шитый код с TOS , а в meforth - прямой без TOS.
    Для превращения примитива meforth в примитив spf достаточно
    обрамить его макросами $BMEF $EMEF и заменить $NEXT
    на RET. Для вызова spf программы из meforth примитива,
    команду CALL нужно обрамить макросами $BSPF $ESPF.

    С начало вызывается meforth система. Командой spf вызывается spf.
    По команде BYE возврат в meforth.

    Для избежания перерисовки всего экрана при выводе каждого символа
    в слове EMIT_M можно применить e_calc_lines вместо calc_lines.
    Но я немогу правильно отследить подъем экрана.
  • Ни один из фортов не компилируется,потомучто нужен файл img.asm ,которого в архиве небыло.


    Мне один человек сказал,что форт - это хороший язык(он быстро наращивает свои возможности).И то,что в Колибри есть форт - это хорошо.Осталось только посмотреть его в деле.
  • Who is online

    Users browsing this forum: No registered users and 4 guests