Оберон-клуб «ВЄДАsoft»
https://zx.oberon.org/forum/

Базовый редактор
https://zx.oberon.org/forum/viewtopic.php?f=98&t=292
Страница 2 из 3

Автор:  prospero78su [ 09 ноя 2016, 20:05 ]
Заголовок сообщения:  Re: Базовый редактор

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

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

Автор:  S.Atan [ 09 ноя 2016, 20:21 ]
Заголовок сообщения:  Re: Базовый редактор

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

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

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

Автор:  prospero78su [ 09 ноя 2016, 20:55 ]
Заголовок сообщения:  Re: Базовый редактор

Опа... Отстал я от жизни...
Пойду посмотрю))

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

Автор:  S.Atan [ 23 дек 2016, 02:22 ]
Заголовок сообщения:  Re: Базовый редактор

Дополнил редактор...

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

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

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

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

Вложения:
IDE_Fpc_empty.zip [90.62 КБ]
Скачиваний: 397

Автор:  S.Atan [ 30 дек 2016, 03:21 ]
Заголовок сообщения:  Re: Базовый редактор

Новая версия ...

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 КБ | Просмотров: 11833 ]
Комментарий к файлу: Скриншот редактора кода
1.png
1.png [ 32.65 КБ | Просмотров: 11833 ]

Автор:  S.Atan [ 30 дек 2016, 03:29 ]
Заголовок сообщения:  Re: Базовый редактор

Ну и до кучи скрины с опциональными редакторами

Вложения:
Комментарий к файлу: Hex editor
2.png
2.png [ 33.96 КБ | Просмотров: 11833 ]
Комментарий к файлу: Files comparator
1.png
1.png [ 32.98 КБ | Просмотров: 11833 ]

Автор:  prospero78su [ 05 фев 2017, 10:08 ]
Заголовок сообщения:  Re: Базовый редактор

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

Автор:  S.Atan [ 05 фев 2017, 11:46 ]
Заголовок сообщения:  Re: Базовый редактор

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

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

ЗЫ.

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

Автор:  prospero78su [ 05 фев 2017, 12:20 ]
Заголовок сообщения:  Re: Базовый редактор

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

Автор:  S.Atan [ 05 фев 2017, 12:24 ]
Заголовок сообщения:  Re: Базовый редактор

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

Страница 2 из 3 Часовой пояс: UTC + 2 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/