Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Вт июн 19, 2018 16:35

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 29 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Forth86 - вопросы
СообщениеДобавлено: Вт авг 10, 2010 11:07 
Не в сети

Зарегистрирован: Чт авг 05, 2010 13:28
Сообщения: 21
Благодарил (а): 2 раз.
Поблагодарили: 0 раз.
Начал изучать Форт - чаще пишу под МК на ассемблере, иногда на С, поэтому остановился на Forth86 (автор William H. Payne). Вроде как на его основе написан кросс Форт для 8051. Поигрался со стеком - вроде привыкнуть можно. Захотелось попробовать что-нибудь посерьезнее (в рамках моих сегодняшних познаний Форта конечно.... :oops: ), поэтому решил разобраться как происходит работа с загрузкой/сохранением файлов, ведь не все-же набивать с клавиатуры .... и вот тут то облом........ :( . В литературе про это нашел не много ( причем как я понял у каждой реализации Форта свои слова для этого ...), а в English я не силен......
Как сохранить или загрузить файл в DOSe для меня не вопрос - проще всего через int 21h, а вот как тут быть просто не знаю (может есть все-же какие то стандарты ... похоже что для данного Форта - это Форт79). Открыл в Far *.scr-файл - судя по тому, что CR там не видно, текст имеет какое-то свое форматирование ... похоже сохраняется экранная копия. Не хотелось-бы перелезать на другой Форт - может кто работал с этим и подскажет формат слов (команд) ...

P.S. критика приветствуется, но просьба сильно не пинать.... :oops:


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth86 - вопросы
СообщениеДобавлено: Вт авг 10, 2010 11:27 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Ср дек 06, 2006 09:23
Сообщения: 581
Благодарил (а): 6 раз.
Поблагодарили: 25 раз.
Попробуйте для начала SwiftX или ByteForth - в них и документация есть, и мануалы прозрачные, и примеры


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth86 - вопросы
СообщениеДобавлено: Вт авг 10, 2010 12:12 
Не в сети

Зарегистрирован: Пн окт 15, 2007 17:24
Сообщения: 164
Откуда: Бийск
Благодарил (а): 0 раз.
Поблагодарили: 2 раз.
LasyUser писал(а):
Открыл в Far *.scr-файл - судя по тому, что CR там не видно, текст имеет какое-то свое форматирование ... похоже сохраняется экранная копия. Не хотелось-бы перелезать на другой Форт - может кто работал с этим и подскажет формат слов (команд) ...

Судя по всему, там используется для хранения исходников механизм так называемых экранов (16 строк по 64 символа), которые загружаются словом LOAD ( n -> ) , где n номер экрана, а файл *.scr - последовательность таких экранов.
Для проверки этой гипотезы можно попробовать выполнять слово LIST ( n -> ): если оно отображает осмысленный форт-текст, значит так оно и есть. Ну и, если таких файлов несколько, то должно быть переключение межди ними.
В общем, смотреть слова: LIST, LOAD, BLOCK, --> ..., возможно, EDIT есть для этих "экранов"

_________________
And so forth ...


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth86 - вопросы
СообщениеДобавлено: Вт авг 10, 2010 13:24 
Не в сети

Зарегистрирован: Чт авг 05, 2010 13:28
Сообщения: 21
Благодарил (а): 2 раз.
Поблагодарили: 0 раз.
2 Варнак

Цитата:
Судя по всему, там используется для хранения исходников механизм так называемых экранов (16 строк по 64 символа), которые загружаются словом LOAD ( n -> ) , где n номер экрана, а файл *.scr - последовательность таких экранов.


Варнак - спасибо за "наводку" ... судя по тому, что размер *.scr-файлов кратен 64 байтам, то похоже что так и есть.
... а есть где-нибудь примеры использования и формат LOAD, BLOCK

т.е. я так понял , что для загрузки внешнего файла на экран пишут что-то вроде LOAD xxx.scr 1 , где после LOAD идет имя файла и номер блока?
... а вот как образуется нумерация блоков - пока загадка.....


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth86 - вопросы
СообщениеДобавлено: Вт авг 10, 2010 13:45 
Не в сети

Зарегистрирован: Пн окт 15, 2007 17:24
Сообщения: 164
Откуда: Бийск
Благодарил (а): 0 раз.
Поблагодарили: 2 раз.
LasyUser писал(а):
2 Варнак

Цитата:
Судя по всему, там используется для хранения исходников механизм так называемых экранов (16 строк по 64 символа), которые загружаются словом LOAD ( n -> ) , где n номер экрана, а файл *.scr - последовательность таких экранов.


Варнак - спасибо за "наводку" ... судя по тому, что размер *.scr-файлов кратен 64 байтам, то похоже что так и есть.
... а есть где-нибудь примеры использования и формат LOAD, BLOCK

т.е. я так понял , что для загрузки внешнего файла на экран пишут что-то вроде LOAD xxx.scr 1 , где после LOAD идет имя файла и номер блока?
... а вот как образуется нумерация блоков - пока загадка.....

как попадает текст в экран это отдельная песня (скорей всего есть где в этом форте редактор этих экранов, которым текст и создаётся), а для отправки этого текста на интерпретацию фортм пишут "1 LOAD" и т.п.

А размер файлов, скорей всего, кратен 1024.

_________________
And so forth ...


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth86 - вопросы
СообщениеДобавлено: Вт авг 10, 2010 14:00 
Не в сети
Аватара пользователя

Зарегистрирован: Чт июл 20, 2006 11:31
Сообщения: 2107
Откуда: Екб
Благодарил (а): 0 раз.
Поблагодарили: 34 раз.
Где-то видел, что файлы к фортсистеме прицепляют словом USE
USE имя_файла (расширение не пишется)
словом EDIT входят в редактирование файла прицепленного по USE
Словом n LOAD интерпретируют блоки(экраны) файла, где n - номер блока.
В каждом блоке 16 строк по 64 символа - итого 1024 символа(байта)

_________________
С уважением, chess


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth86 - вопросы
СообщениеДобавлено: Вт авг 10, 2010 14:29 
Не в сети

Зарегистрирован: Чт авг 05, 2010 13:28
Сообщения: 21
Благодарил (а): 2 раз.
Поблагодарили: 0 раз.
всем спасибо за поддержку...

начал копать в след. направлении - раз система под DOS, то наверняка используются функции DOS для работы с файлами т.е. (3Dh ... 40h - открытие,закрытие,чтение,запись) и другие....
Выяснил что понимаются слова:
CREATEHANDLE
OPENHANDLE
LOAD
SAVE
READ
PFILE
AFILE
SYSFILE
.... с параметрами пока никак .... лезут ошибки


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth86 - вопросы
СообщениеДобавлено: Вт авг 10, 2010 14:49 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 4920
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 18 раз.
Поблагодарили: 56 раз.
выбор Форта не совсем понятен. Если вам надо 16 бит (а английский язык не проблема) лучше взять FPC, либо, если, русская система, то ищите INFOFORTH версии 4 и выше.
Если, опять же под ДОС, но 32 бита, то лучше SMAL32 нет ничего.
Если хочется кросскомпилятор чтоб был на много систем, то копайте в сторону EFORTH (опять же, имхо, лучший вариант, т.к. это пожалуй самый портируемый из Фортов).

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth86 - вопросы
СообщениеДобавлено: Вт авг 10, 2010 15:20 
Не в сети

Зарегистрирован: Чт авг 05, 2010 13:28
Сообщения: 21
Благодарил (а): 2 раз.
Поблагодарили: 0 раз.
.... выбор пал на FORTH86 по причине доступности исходников и открытости проекта - правда все на английском. Не так страшен английский, как "не перевариваемый" формат
*.scr-файлов (... ежели-бы запустить все это и посмотреть на работу, то потом можно и конвертер *.scr->*.txt состряпать ). Хоть WinFort и наверняка поудобнее, но не хочется разбираться с "удобствами" - цель разобраться с языком, поэтому Дос и выбран.

Интерес вызван именно кросс-возможностями (чаще ковыряюсь со всякими MK где и ассемблер за радость), а в каталоге с FORTH86 в исходниках есть написанный на его базе FORTH51 - для понимания основ самое то. На EFORTH натыкался, но не думаю, что он задокументирован лучше .... так что шило-на-мыло ИМХО ......


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth86 - вопросы
СообщениеДобавлено: Вт авг 10, 2010 15:38 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 4920
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 18 раз.
Поблагодарили: 56 раз.
LasyUser писал(а):
.... выбор пал на FORTH86 по причине доступности исходников и открытости проекта - правда все на английском. Не так страшен английский, как "не перевариваемый" формат *.scr-файлов (... ежели-бы запустить все это и посмотреть на работу, то потом можно и конвертер *.scr->*.txt состряпать ). Хоть WinFort и наверняка поудобнее, но не хочется разбираться с "удобствами" - цель разобраться с языком, поэтому Дос и выбран.

Вряд ли вы много выиграете, взяв старый Форт. Практически все перечисленные мною Форты (за исключением SMAL32 имеют открытый код).

LasyUser писал(а):
Интерес вызван именно кросс-возможностями (чаще ковыряюсь со всякими MK где и ассемблер за радость)

вот тогда и смотрите EFORTH
Цитата:
I wrote eForth so that it would be easier for me to develop Forth systems for many processors. Processors included 56000, 6502, 68332, 68HC11, 8051, 8080, 80C166, 80C196, 80x86, RTX2000, RTX2001, RTX2010, SC32, StrongARM, TMS320, Z80, and I may have forgotten some.

Он не отличается скоростью, зато предельно прост (на ассемблере определено от 27 до 34 примитивов в зависимости от целевой платформы или операционной системы). Я не видел другого Форта, который бы портировали на столько платформ.
Кстати, заметте, что он и сейчас развивается...

LasyUser писал(а):
На EFORTH натыкался, но не думаю, что он задокументирован лучше .... так что шило-на-мыло ИМХО ...

Ваш выбор. Я лишь могу порекомендовать лучший на мой взгляд вариант.

LasyUser писал(а):
Не так страшен английский, как "не перевариваемый" формат *.scr-файлов (... ежели-бы запустить все это и посмотреть на работу, то потом можно и конвертер *.scr->*.txt состряпать )

да там никаких проблем нет. один экран текста = 16 строк по 64 символа, так что конвертилка пишется на раз на любом подручном средстве (отсчитал 64 символа от начала, вставил перевод строки, и так до конца файла).

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth86 - вопросы
СообщениеДобавлено: Вт авг 10, 2010 15:44 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 4920
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 18 раз.
Поблагодарили: 56 раз.
кстати, не забудте посмотреть в раздел статьи
в частности обратите внимание на:
Портирование Форта. ч1. адресная интерпретация, регистры
Портирование Форта. Ч2. Загадочный DOES>
Портирование форта. Изучение вариантов построения Форт-ядра.

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth86 - вопросы
СообщениеДобавлено: Вт авг 10, 2010 15:51 
Не в сети
Аватара пользователя

Зарегистрирован: Чт июл 20, 2006 11:31
Сообщения: 2107
Откуда: Екб
Благодарил (а): 0 раз.
Поблагодарили: 34 раз.
LasyUser писал(а):
Интерес вызван именно кросс-возможностями (чаще ковыряюсь со всякими MK где и ассемблер за радость), а в каталоге с FORTH86 в исходниках есть написанный на его базе FORTH51 - для понимания основ самое то. На EFORTH натыкался, но не думаю, что он задокументирован лучше .... так что шило-на-мыло ИМХО ......

Посмотрите мой кросскомпилятор для МК51 на базе spf4 http://www.chess2007.nm.ru/~chess.zip
Исходники тоже есть ... и на русском, ассемблер внутри форта поддерживается, писать файлы в любом редакторе, создает бинарники, которые поддерживаются стандартными эмуляторами и симуляторами. Создает файл для прошивки без форт-системы - только рабочая программа - посему компактно очень. Да еще и документация по компилятору есть.

_________________
С уважением, chess


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth86 - вопросы
СообщениеДобавлено: Вт авг 10, 2010 15:54 
Не в сети

Зарегистрирован: Чт авг 05, 2010 13:28
Сообщения: 21
Благодарил (а): 2 раз.
Поблагодарили: 0 раз.
... буду разбираться - в случае положительных результатов, готов выложить плоды своих "мучений" ... :)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth86 - вопросы
СообщениеДобавлено: Вт авг 10, 2010 19:35 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 4920
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 18 раз.
Поблагодарили: 56 раз.
кстати, на forth.org не так давно обновление было в http://forth.org/eforth.html

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth86 - вопросы
СообщениеДобавлено: Чт авг 19, 2010 13:07 
Не в сети

Зарегистрирован: Чт авг 05, 2010 13:28
Сообщения: 21
Благодарил (а): 2 раз.
Поблагодарили: 0 раз.
... попытки сделать на Форте что-то большее, чем 6 3 - 7 * - не увенчались успехом. Почитал Броуди и Келли - как там все доступно и просто ... берем и LOAD загружаем файл или блок, ну а если сохранить конечно SAVE ... только вот заставить нормально работать эти команды так и не вышло .... есть хоть какие-нибудь доки, которые описывают работу с Фортом ( загрузка сохранение файлов ) на конкретном примере ???????????


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 29 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


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

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB