Оберон-клуб «ВЄДАsoft»

Твердыня модульных языков
Текущее время: 28 мар 2024, 13:24

Часовой пояс: UTC + 2 часа




Начать новую тему Ответить на тему  [ Сообщений: 23 ]  На страницу Пред.  1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: Re: Базовый редактор
СообщениеДобавлено: 09 ноя 2016, 20:05 
Не в сети
Администратор
Аватара пользователя

Сообщения: 86
На гитхабе свою поделку я вроде не светил. Собственно, там ровным счётом ничего.
В PascalABC в справке было написано, что компилятор для Net MSIL пишется ЛЕГКО. Вот оно меня и подкупило. За Net мощные библиотеки стоят. Но, без толкового учебника по MSIL ловить нечего))

Я тут затеял Oberon-07/11 (Кротова Антона) под БлэкБокс втащить.
Черновую работу вроде сделал, теперь прикидываю, как модуль SYSTEM красиво подсунуть))
А вообще, рабочий Оберон под Net я бы попробовал ради спортивного интереса)
Zonnon, конечно, интересен. Но Net 2 удручает. И редактор там своеобразный))) С документацией тоже не блеск)

_________________
Действия профессионала предсказуемы. Но в мире полно любителей!


Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Базовый редактор
СообщениеДобавлено: 09 ноя 2016, 20:21 
Не в сети
Администратор
Аватара пользователя

Сообщения: 189
Тяжко он там написан... Тяжко. Это про 07 Оберон 11.

Тут под .NET viewtopic.php?f=108&t=277
Я там и редактор накидал :)

А в ББ лучше AyaCompiler перетащить... Он в принципе совместимость какую то делает!!!
Да и автор понял, что лучше в дерево всё распарсить...а потом уже делай с деревом что угодно, и сборщик прикрутить проще!


Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Базовый редактор
СообщениеДобавлено: 09 ноя 2016, 20:55 
Не в сети
Администратор
Аватара пользователя

Сообщения: 86
Опа... Отстал я от жизни...
Пойду посмотрю))

Ага.... Вижу, что Net там древненький. Может на побаловаться пойдёт.
Адд. Мдя..... С Юникодом не дружит...
Адд2. Второй раз попробовал штурмануть GPCP, и даже успешно что-то накомпилил)))

_________________
Действия профессионала предсказуемы. Но в мире полно любителей!


Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Базовый редактор
СообщениеДобавлено: 23 дек 2016, 02:22 
Не в сети
Администратор
Аватара пользователя

Сообщения: 189
Дополнил редактор...

Открывает\сохраняет\модифицирует проекты
Добавил настройку расцветок и опций
Добавил Hex редактор и Files Comparator

Вообщем удобная штука получилась.
Исходники во вложении...
Это базовая версия, пустая без компилятора...

На днях встрою компилятор и отладчик...

Исправил ошибку открытия файлов... Перезалил архив сюда же...


Вложения:
IDE_Fpc_empty.zip [90.62 КБ]
Скачиваний: 397
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Базовый редактор
СообщениеДобавлено: 30 дек 2016, 03:21 
Не в сети
Администратор
Аватара пользователя

Сообщения: 189
Новая версия ...

IDE для изучения работы FPGA компьютера Н.В.Вирта из ProjectOberon 2016 (новая редакция).
Компилятор генерирует полностью идентичный код.
Линкер разработан под собственную виртуальную машину (потом опишу формат *.bin файла ВМ)
Так же встрою позже линкер для заливки в плату или исполнение на эмуляторе.
Эмулятор тоже потом прикручу.
Так же прорабатываю визуальный редактор для Оберон файловой системы (по типу WinImage)

Дизассемблер и отладчик в одном флаконе отображают код, таблицу модулей в памяти (moduletable) а так же состояние регистров на время исполнения.
Карта памяти подсвечивает последнее активное значение записанное в память (SP регистр работает с последними адресами памяти, поэтому не стал отображать всю память для него).
Пошаговый проход пока работает с заходом в функции (F8)...

При успешной компиляции файлов в папке проекта создаётся бинарный файл NameMainModule.bin для загрузки в дебаггер. В принципе это и есть упрощённая виртуальная машина исполнения.

Окно дизассемблера разделено на две части, потом в правую часть добавлю соответствие строк исходного кода и бинарного кода,
ну и естественно получим трэйсер исходного кода! :)

Так что на данном этапе уже можно написать свой движок (например на OpenGL или SDL2) для исполнения байт кода.
Так что есть возможность изучить работу виртуальных машин (типа Java, C# и т.д.) либо адаптировать данный код под любую платформу (благо что инструкций в данной реализации минимум, по 4 на определённые действия и 2 на работу с памятью)!

Ну вот пока и все новости! :)


Вложения:
Комментарий к файлу: Исходные коды с папкой тестовых файлов.
IDE.zip [141.53 КБ]
Скачиваний: 396
Комментарий к файлу: Скриншот дебаггера
2.png
2.png [ 52.46 КБ | Просмотров: 11828 ]
Комментарий к файлу: Скриншот редактора кода
1.png
1.png [ 32.65 КБ | Просмотров: 11828 ]
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Базовый редактор
СообщениеДобавлено: 30 дек 2016, 03:29 
Не в сети
Администратор
Аватара пользователя

Сообщения: 189
Ну и до кучи скрины с опциональными редакторами


Вложения:
Комментарий к файлу: Hex editor
2.png
2.png [ 33.96 КБ | Просмотров: 11828 ]
Комментарий к файлу: Files comparator
1.png
1.png [ 32.98 КБ | Просмотров: 11828 ]
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Базовый редактор
СообщениеДобавлено: 05 фев 2017, 10:08 
Не в сети
Администратор
Аватара пользователя

Сообщения: 86
Отлично) Я прям обзавидовался)) Как на счёт виртуальной машины для писюка? Чтобы пилить так пилить?!))

_________________
Действия профессионала предсказуемы. Но в мире полно любителей!


Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Базовый редактор
СообщениеДобавлено: 05 фев 2017, 11:46 
Не в сети
Администратор
Аватара пользователя

Сообщения: 189
Сейчас разбираюсь как удобнее реализовать оператор NEW (у Вирта оно как обычно в библиотеку\ядро встроено)...
А так легко, в принципе если обрезать kernel.mod из оригинала, и переписать драйвер дисплея(вернее назначить область памяти для фреймбуффера) то не вопрос...

В отладчике пока что отображается память под переменные и записи и указатели на них (регистр МТ)

ЗЫ.

Для ProjectOberon 2013 уже написал... Надо выложить... :) а то как то забыл...


Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Базовый редактор
СообщениеДобавлено: 05 фев 2017, 12:20 
Не в сети
Администратор
Аватара пользователя

Сообщения: 86
NEW -- это часть языка. Думаю, его запихивать в Kernel не очень-то хорошее решение. В любом случае, успехов!)

_________________
Действия профессионала предсказуемы. Но в мире полно любителей!


Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Базовый редактор
СообщениеДобавлено: 05 фев 2017, 12:24 
Не в сети
Администратор
Аватара пользователя

Сообщения: 189
Так хм... Ну мэтр там же и сборщик мусора реализует. Поэтому все компиляторы Оберона без Kernel.Mod никуда, либо без сборки мусора и NEW!


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

Часовой пояс: UTC + 2 часа


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

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


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

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
© VEDAsoft Oberon Club