Forth
-
Пока изучаю то, что народ накодил.Соединяй, и здравствуй.
Для интерактивного изучения (опробования) ядра и управления функциональностью колибри с уровня терминала может бытьred.kaktus.37 wrote:полез сорсы ядра курить и обдумывать, да там же и поник... не совсем понятно ещё пока, это ведь не просто программка под контроллер восьмибитный...
полезным использования версии ядра со встроенной Форт системой в нём. Правда последней актуальной сборки ещё (пока, уже ...) нет.
P.S. Если слово Форт (Forth) вам достаточно знакомо: и что-то значит для Вас:)
Кстати Форт систему SP-Forth (для windows) запускали под "раcширенной" версией DOS системы (загрука консольных приложений PE с необходимым
минимальным сервисом ввода/вывода) на 486 процессоре.
Икать ещё можно по слову Форт и да Форт не представили разработчикам Колибри "на блюдечке" и тема не получила продолжение.XVilka wrote:Слово Forth совсем ничего нам не говорит, и даже поиск по форуму его не может найти: viewtopic.php?f=45&t=395
Была такая тема Форт в ядре колибри (4-е года назад, но что значит время при проектировании ОС:)
P.S. Хотя сборку ядра можно найти (у меня точно осталась) и возможно будет желание поддержать и продолжить авторские изыскания (Михаила) в данном направлении:)
Тем по Форту на местном форуме немного (наверное его идея не была понята и оказалась не интересной)
Last edited by Kopa on Thu Feb 21, 2013 3:33 pm, edited 2 times in total.
OpenBIOS (OpenFirmware) использует Forth для написания переносимой прошивки http://www.openfirmware.info/Forth/FCode
Форт "достаточно полно" представлен в промышленных изделиях, кроме OpenBiosа. (или это только мой субъективный взгляд широко открытыми глазами)XVilka wrote:OpenBIOS (OpenFirmware) использует Forth для написания переносимой прошивки http://www.openfirmware.info/Forth/FCode
Last edited by Kopa on Thu Feb 21, 2013 3:35 pm, edited 2 times in total.
из однокоренных слов только фортран, но это не в ту сторону. так же напомню, что владение ассемблером на х86 равно 0.001%, есть конечно правое и левое полушария, но работают поочерёдно и не всегда в нужном направлении, и вот ответьте мне Уважаемый, какие шансы понять сию ассемблерную птичку, пользуясь абсолютно непонятным интерпретатором?
тут у меня может и танковый подход, но как мне кажется наиправильнейший - не городить огороды из непонятного с изучаемым, а как молодой джедай - прочел, проверил, покурил, видоизменил, подумал, понял.
![Smile :)](./images/smilies/icon_smile.gif)
тут у меня может и танковый подход, но как мне кажется наиправильнейший - не городить огороды из непонятного с изучаемым, а как молодой джедай - прочел, проверил, покурил, видоизменил, подумал, понял.
Для меня ассемблер х86 и для контроллеров не пустой звук, а вполне достойная практическая область для изучения и возможного применения.red.kaktus.37 wrote:из однокоренных слов только фортран, но это не в ту сторону. так же напомню, что владение ассемблером на х86 равно 0.001%,
Фортран? Вы не оригинальны в этом ответе:
![Wink :wink:](./images/smilies/icon_wink.gif)
Следуя ниже означенной мыслиred.kaktus.37 wrote: есть конечно правое и левое полушария, но работают поочерёдно и не всегда в нужном направлении, и вот ответьте мне Уважаемый, какие шансы понять сию ассемблерную птичку, пользуясь абсолютно непонятным интерпретатором?![]()
red.kaktus.37 wrote: тут у меня может и танковый подход, но как мне кажется наиправильнейший - не городить огороды из непонятного с изучаемым, а как молодой джедай - прочел, проверил, покурил, видоизменил, подумал, понял.
P.S. Попробуйте понять что такое Форт и возможно это облегчит Ваш путь джедая. Ассемблер в нём, штатное средство применения, хотя и может отличаться
от Фасм ассемблера.
для меня тоже, под контроллеры я уже давно пишу разные мелочи, но там и уровень... 130 команд и 32 РОНа простор конечно, но по сравнению с иа-32 - это как Куба с Россией...Kopa wrote: Для меня ассемблер х86 и для контроллеров не пустой звук, а вполне достойная практическая область для изучения
так что разбегать мысли на форты и прочие ему подобные, когда уже выбран боевой друг и товарищ... со временем конечно можно обрасти и масмом с пасмом и фортом но это не сейчас.
Не такие уж и разные, в общей точке понимания. Для контроллеров, в частности для AVR и процессора PDP-11, решал на Форте со "слоем" на асме х86 задачу эмуляцииred.kaktus.37 wrote: для меня тоже, под контроллеры я уже давно пишу разные мелочи, но там и уровень... 130 команд и 32 РОНа простор конечно, но по сравнению с иа-32 - это как Куба с Россией...
ядра и периферии контроллера, эдак лет 10 назад . Сложилось мнение, что ассемблер может иметь "достаточно высокий" уровень абстрагирования с приближением по дизайну к языкам условно называемых высокоуровневыми.
Изучение ассемблера на примере ядра операционной системы не лучший возможный вариант ИХМО. Ассемблер, при всех его достоинствах, всё же средство решенияred.kaktus.37 wrote: так что разбегать мысли на форты и прочие ему подобные, когда уже выбран боевой друг и товарищ... со временем конечно можно обрасти и масмом с пасмом и фортом но это не сейчас.
определённого класса задач, а в варианте Фасм он не так уж и достаточно "гибок". Есть, например, и ассемблер HLA в котором улучшен общий дизайн использования.
(но возможно имеет и свои "слабые" стороны.)
P.S. Есть ли какие моменты требующие разъяснения по теме обсуждения?
При заинтересованности в дальнейшем развитии тематики топика, по возможности, продолжу разяснение и развитие Форта для Колибри и смежных вопросов.
Last edited by Kopa on Thu Feb 21, 2013 5:29 pm, edited 3 times in total.
Собрал http://fforum.winglion.ru/download/file.php?id=98, запускаю ошибкаKopa wrote: Это Она из базиса 11-ой подправленная мной на некоторые ошибки и собранная более поздней версией SPF4.
Она рабочая. Проверил сегодня ещё раз. Проходит тест ANSI за некоторыми замеченными "фефектами"![]()
В тетрисе она и есть упакованная kpack
(сборка Форта для Kolibri из исходников Kolspforth11 немного капризное действие т.к. SPF4 исходники довольно хитро самосабираются
и какие то "неувязки" приводящие к неработоспособности Форта может вносить макрооптимизатор задействованный при компиляции.
- этим можно управлять включая/отключая его не особо проникаясь сначала в различия результирующего "псевдо" кода результирующего FASM образа). Макрооптимизатор взят из последних версий. База исходников SPF4 не последней оф. версии.
P.S. 12-ю Сборку для Linux подправил Mak44 на предмет некоторых текстовых различий для сборки под Linux. 12-ю можно разместить в топике KolSpforth.
Какие ещё вопросы?
- Attachments
-
-
Screenshot_2.png (8.02 KiB)Viewed 9257 times
Из хаоса в космос
У меня тоже сейчас запустил и ошибка (правда err=5) но симптомы теже не нахождения подключаемого файла (запуск Kolibri на железе)Leency wrote: Собрал http://fforum.winglion.ru/download/file.php?id=98, запускаю ошибка
errr=2003 не нашла слово (расшифровка ошибок есть в оригинальном SPF4)
P.S. Пока не понятно откуда "грабли" выросли. Что то подобное наблюдал при запуске Форта в рамках Fasm (в Win7 и XP) c использованием консольного API и что интересно в Win7 исполняемый код корректно работал, а в XP вываливалось подобное сообщение.
(указывающее на непонятную разницу в этом моменте - разобраться сразу не удалось).
А бинарно cобранный Kolspf совпадает с Форт в CTetris если его распаковать?
В архиве ещё находятся и ранее собранные meForth.bin и meForth.asm как с ними?
От версии Kolibri "по идее" ничего не должно было измениться. И в какой ОС cобирался Форт.
Вот шайтан!!!1 Всё дело в либах!
Слева либа с форума о форте, справа своя тила из тетриса.
Слева либа с форума о форте, справа своя тила из тетриса.
- Attachments
-
-
8Aos4So.png (33.84 KiB)Viewed 9226 times
Из хаоса в космос
Kopa
Я залил Форт на SVN.
Изменения: пофиксил заголовок и уменьшил перерисовку в 2 раза.
Что нужно сделать:
1. Всё равно перерисовка очень сильно видна. Причина в том, что сначала заливается фон через функцию erase_screen, потом выводится поверх текст - это неправильно. А правильно:
- простой вариант: рисовать чёрную полосу, потом выводить на неё текст и так с каждой линией текста
- правильный вариант: рисовать всё в буфер и выводить в экран картинку с буфером, при нынешней реализации функции 4 - это проще простого
2.
Файл img.asm, строка 25258:
ему сюда нужно подсунуть переменную params и вуа-ля мы сможем запускать любой файл Форта откуда угодно.
Ты сможешь пофиксить 1 и 2?
Я залил Форт на SVN.
Изменения: пофиксил заголовок и уменьшил перерисовку в 2 раза.
Что нужно сделать:
1. Всё равно перерисовка очень сильно видна. Причина в том, что сначала заливается фон через функцию erase_screen, потом выводится поверх текст - это неправильно. А правильно:
- простой вариант: рисовать чёрную полосу, потом выводить на неё текст и так с каждой линией текста
- правильный вариант: рисовать всё в буфер и выводить в экран картинку с буфером, при нынешней реализации функции 4 - это проще простого
2.
Файл img.asm, строка 25258:
Code: Select all
DB '/sys/INIT.F',0
Ты сможешь пофиксить 1 и 2?
Из хаоса в космос
Хорошо, только я с SVN "не дружу" поэтому выложу в данной теме.Leency wrote: Ты сможешь пофиксить 1 и 2?
![Smile :)](./images/smilies/icon_smile.gif)
P.S. Какие ещё идеи?
Если пофиксишь 1 и 2, то будем думать дальше. Тогда можно будет даже в сборку KolibriN Форт и Тетрис добавить.
Из хаоса в космос
Who is online
Users browsing this forum: No registered users and 5 guests