01 марта 2017

                             Новости
                        by Alone Coder

Я взял долгую паузу, чтобы завершить следующий шаг в развитии
компилятора NedoLang. Что было сделано:
-enum (только тип BYTE).
-switch-case (только тип BYTE).
-INCLUDE и INCBIN в NedoAsm.
-Z80 library (умножение, деление, сдвиги).
-TR-DOS I/O library. Как и во встроенных командах TR-DOS для
работы с последовательными файлами, файлы делятся на куски по 4К
с одинаковым названием, отличающиеся только параметром "start".
Это позволяет открыть одновременно несколько файлов на запись.
Пока не хватает работы с файлами произвольного доступа и
переоткрытия файлов на запись.
-Самокомпиляция. Для неё исходник компилятора пришлось
существенно оптимизировать по размеру кода и меток (важно при
ассемблировании, когда должны быть доступны все метки - линкера
нет). Изначально каждая часть системы могла компилироваться на
одном TRD, но после оптимизации по скорости и добавления фич
(см. ниже) компилятор требует полуавтоматической компиляции на
рамдиске. К сожалению, самокомпиляция занимает далеко не минуту
- каждая из 3 частей (компилятор, токенизатор и ассемблер)
компилируется около 2 минут на 3.5 МГц. Последовательность
операций прописана в бейсик-загрузчике (впоследствии в двух
бейсик-загрузчиках из-за недостатка памяти под ассемблер). Думаю
насчёт добавления обработчика батников.
- С помощью самокомпиляции исправлено огромное количество багов.
Я сравниваю результат компиляции (бинарник), сгенерированный
PC-версией, с результатом компиляции ZX-версии. Тестирование
полуавтоматическое.
- Выпущена демонстрация (NedoGift: LVD 35) для отработки
процесса написания программ в системе NedoLang.
-вызов по указателю (без параметров).
-struct (пока без вложенных структур).
-EXPORT для экспортирования меток. Компилятор Си экспортирует
все метки. NedoLang позволяет указать, какие именно надо
экспортировать (переменные, процедуры, функции, массивы, но не
константы, потому что метки экспортируются в виде указателей).
NedoAsm позволяет то же самое. 
- Примитивнаяраздельная компиляция - в основном для сборки
самого компилятора (кодогенератор отдельно, язык отдельно). При
этом экспортируется информация для релокации, но релоцировать
ассемблер пока не умеет. Так что можноINCBIN'ить модуль в
программу по конкретному адресу, куда он скомпилирован,
используя экспортированные метки.
- Выпущенастабильная 48K версия системы вместе с исходниками.
См. тут:http://alonecoder.nedopc.com/zx/
-#include для модулей.
-#define для констант, чтобы обеспечить совместимость с Си при
задании размеров массивов (можно указывать тип констант).
-#ifdef (пока без вложенности).
-+sizeof(<type>).
- Тайпкаст больше не требует'+' перед скобками.
- Написанаэкспериментальная тайлово-спрайтовая библиотека для
будущих игр. Пока находится в процессе отладки и добавления фич.
Конвертор ресурсов будет поставляться с системой. Пока что
поддерживается только 48K Speccy.
- Добавлен экспериментальный таргет ARM Thumb, пока в
неюзабельном виде.

Пока я этим занимался,FlashZX зарелизил первоапрельскую
демоверсию игры Battletoads. Я был поражён тем, что удалось
сделать на EvoSDK (немного доработаннойHippiman'ом ). Так что
буду серьёзно обдумывать новый спрайтовый движок :)

Dart Alver из Смоленска (где раньше не было никакой
спектрумовской сцены) выпустил огромную доработку графического
редактора Burial Gfx Editor. Доработка включает новый движок
масштабирования (с багфиксами, опцией 8x8 и рисованием сеткой),
новое файловое меню (с переименованием, удалением и даже
копированием), попиксельное движение курсора, встроенную справку
и возвращённый плагин для работы с CHR шрифтами. Текущая версия
размещена наhttp://alonecoder.nedopc.com/zx/

Wanderer написал новый скриптовый движок для новой игры, но
проект заморожен, потому что он нашёл новую работу.

Arwald защитил диплом и вернулся к своим игровым проектам.

Не спеша готовится новый номер журнала Info Guide. Появилось
несколько новых статей. Я начал перевод.Karbo прислал несколько
музонов.John Silver написал ещё пару паттернов :) Я отвёз ему
свой пц, и после обработки пылесосом он неожиданно заработал! Но
я его всё никак не заберу.Louisa как будто сломала палец на
ноге и не может водить машину:( (P.S.: Сегодня она поправилась.)

SpeccyWiki перешла рубеж в4000 статей! Tiboh добавляет 
информацию о группах, пока обновляет демоархивZXAAA.

AmoNik написал беспрецедентную автобиографию про компьютерную
жизнь в Ленинграде. История начинается в 1988 году! Читайте её в
этом номере. Возможно, удастся собрать информацию об этих ранних
годах из разносторонних источников в одну книгу (см. прошлые
выпуски ACNews ).



Other articles:


Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Similar articles:
For Coderz - Pro ROM 48k Spectrum (# 0000 - # 1FFF).
a rest - Jokes ...

В этот день...   23 November