Page 3 of 6

Posted: Mon Mar 13, 2006 12:37 pm
by diamond
При существующей реализации есть куча возможностей выйти в 0-кольцо прямо из приложения, без всяких дополнительных условий...

Re: Forth

Posted: Wed Mar 22, 2006 4:58 pm
by Mihail
willow wrote: Сегодня уже практически готова 32-битная версия для Колибри. Осталось сделать некоторые усовершенствования в консоли.
И где ?

Posted: Wed Mar 29, 2006 11:44 am
by Mihail
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

Posted: Wed Mar 29, 2006 8:14 pm
by Mario79
Ситуация становиться все интересней. У нас будет уже 2 Форта. :-)
Теперь все зависит от того, кто быстрей доделает сам интерпретатор и подробную документацию по работе с ним.
Желательно хотя бы простенькое руководство программиста, для того чтобы будущий программер понял всю мощь этого языка.

Posted: Thu Mar 30, 2006 1:07 pm
by willow
Прикольный. У меня поменьше словарь будет...

Posted: Thu Mar 30, 2006 2:39 pm
by Mihail
SPF - это коллективное творчество. Добавлять добавляют, а выкинуть чужое рука не поднимается.
Может что-то и следовало вынести в библиотеку для дозагрузки, но особо есть не просит.
А ты работу с файлами сделал? Что-то мне таскливо становится глядя на доступ к файлам в Колибри.
Хочется обычного открытия/закрытия файлов и доступ к данным не на уровне блоков.
Может, кто-то сделал соответствующую библиотеку?

Posted: Thu Mar 30, 2006 3:35 pm
by willow
У меня пока только типа S" /rd/1/menuet.f" INCLUDED, а работа с файлами через стандартные сисфункции

Posted: Thu Mar 30, 2006 3:39 pm
by willow
или так:
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

Posted: Thu Mar 30, 2006 4:46 pm
by Mihail
willow wrote:У меня пока только типа S" /rd/1/menuet.f" INCLUDED, а работа с файлами через стандартные сисфункции
В смысле с помощью: kol_0520src-1\other\fasm164\system.inc
Вообще, выкладывай что сделал, чтобы я не делал что сделано.
На то он и OpenSource.

Posted: Thu Mar 30, 2006 5:11 pm
by willow
Видишь ли, у меня прародителем выступает 16-разрядный eForth, поэтому вряд ли тебе поможет мой код - разные концепции. Завтра выложу где-нибудь

Posted: Thu Mar 30, 2006 5:56 pm
by Mihail
Концепции cmd и masmspf еще более разные.
Воодще, самым принципиальным отличием между Фортами может быть только тип шитого кода.
Ради совместимости, особенности шитого кода, следует использовать в крайних случаях.
Чаще всего, причиной несовместимости является конфликт имен.

Posted: Thu Mar 30, 2006 6:32 pm
by Mario79
Mihail
willow
А может, совместно будете делать. И быстрей и веселей, и другие потянутся?
P.S. Но в принципе как хотите, лишь бы хорошая вещь не зачахла в самом начале развития.

Posted: Fri Mar 31, 2006 10:20 am
by willow
Миша, свяжись со мной по email

Posted: Thu Apr 06, 2006 8:18 pm
by Mihail
Слил две системы в один модуль.

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.
Но я немогу правильно отследить подъем экрана.

Posted: Sat Apr 15, 2006 3:52 pm
by andrew_programmer
Ни один из фортов не компилируется,потомучто нужен файл img.asm ,которого в архиве небыло.


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