30 августа 2017

                            Новости
                        by Alone Coder

Изменения в пакете NedoLang:
- Теперь компилятор поддерживаетдиректории. Вместо 200 файлов в
одном каталоге теперь каждый проект лежит в своей папочке, а ещё
есть общая папка../_sdk/ . В параметрах вызова используются
именно прямые слэши типа/ .
- Ряд багфиксов в компиляторе, библиотеках, утилитах nedotrd и
nedores (спасибоHippiman ). 
- В ошибках компиляциипоказывается имя исходника (в ошибках
ассемблера проблемы из-за недостатка памяти).
- Новые функции вio.h:
fread(PBYTE buf, UINT size, UINT n, PBYTE file);
loadfile(PCHAR filename, PBYTE addr);
findlastslash(PCHAR s) (пропускает путь к файлу);
readsectors/writesectors(PBYTE buf, UINT trsec, BYTE count).
Ещё была функцияcomparedesc(PCHAR filename, PBYTE desc) (для
сравнения дескриптора TR-DOS с заданным именем файла), но она
закомментирована из-за нехватки памяти.
- Появился нативный исполнятор батников batch, запускающий
бинарники с заданными параметрами. Я переписал батники таким
образом, что они могут работать и в Windows, и на Speccy. Batch
располагается с адреса OxfaOO и передаёт строку с параметрами по
указателю в CH_ADD=23645. Теперь для тестирования не нужны
хитрые бейсик-загрузчики.
- Интегрирована звуковая библиотекаayfxplay.h из Ball Quest и
Evo SDK. 
- Добавлен128K рантайм:runtime.h. Предоставляет порты Oxfe,
0x7ffd, несколько установщиков прерываний и обработчик
прерываний (с отдельным стеком, восстановлением вершины стека из
регистра DE и вызовом двух пользовательских колбеков - один
вызывается перед музыкой, другой после).
- Новая библиотекаprint.h. Состоит из процедур setxy, prchar,
nprintf (аналог printf, поддерживает только форматы %s, %c, %d,
%x, %%). Печатает на экране, но для утилит свободна только
верхняя треть, потому что бывает открыто до 8 файлов
одновременно.
- Новые нативные утилиты: diff (сравнивает два файла и
показывает различия на экране), nedodel (удаляет файл), movedisk
(уплотняет TR-DOS диск) и пока ненативный nedopad (обрезает или
дополняет файл до заданного размера).
- Так что теперь тестирование NedoLang'а автоматическое! Каждая
часть (компилятор, токенизатор, ассемблер) помещается на один
TRD и не требует рамдиска для работы.

После этого я для совместимости сделал две версии str:str.i и
str.c (для совместимости с ARM ), и две версии io:iofast.i и 
io.i + io.c (чтобы на ARM Thumb можно было использовать рамдиск
в формате TRD). ARM Thumb таргет добавлен в компилятор,
токенизатор и ассемблер. Компилятор под ARM Thumb уже работает!
Сначала я его тестировал с помощью ассемблера из Keil и дебагера
из Phyton (ассемблер в Phyton несовместимый) - токенизатор под
Z80, скомпилированный под ARM Thumb, выдаёт правильный результат
на рамдиске. Потом я довёл токенизатор и ассемблер до обработки
того же ассемблерного исходника с получением того же самого
выхода, что ассемблер из Keil. Проблема была со смещением
адресации на Thumb: нужны нечётные указатели на функции, но
чётные указатели на данные! Потом всё-таки пришлось отказаться
от совместимости с Keil -овским ассемблером для простоты.

Некоторые команды Thumb не используются в компиляторе, так что я
их не проверял. Есть желающие проверить?

Качайте релиз-кандидат тут:http://alonecoder.nedopc.com/zx/

Теперь не хватает только нативного IDE. Кстати, никому не
попадались исходники C Warp?

                             * * *

Hippiman сменил квартиру, после чего начал писать игровой движок
на NedoLang. Пора публиковать его статью про линковку модулей в
главном конкуренте NedoLang - Evo SDK :) В NedoLang для этого
есть командаEXPORT.

Louisa рисует 3D модель нашей будущей квартиры (на днях мы её
обмерили).

John Silver купил студийные колонки-мониторы. Они воспроизводят
каждый чих в музыке :) Я удивился, насколько грязные были
оригинальные записи Beatles и много что ещё...

Savelij13 с помощьюDimkaM сделал новую версию TR-DOS для 
ZX Evo, которая поддерживает хитрые лоадеры. 

TDD/MSD из Уфы снова появился после многих лет и спаял
неофициальное исправление схемы питания для ZX Evo. В это же
время его одногруппникSAVC написал пару утилит для Speccy с
исходниками: показывалка нажатых клавиш view_keys и редактор
шрифтов font-convert-ed (смотри в приложении - давно у нас не
было приложения :)). Но потом исчез.

Насколько можно судить, первая плата ATM 8.00 всё-таки уже
набитаZorel'ом и будет отправлена Maksagor'у. Это первая
инкарнация стандарта ATMЗ на рассыпухе. Следим за событиями :)

Я забыл сообщить в прошлом номере, что венгерские хакеры
портировали Wolfenstein 2004 на компьютер Enterprise 128. Очень
точная конверсия. Даже музыку сконвертили. Они это делали на
какое-то компо для Enterprise, но вообще не связались со мной
>:(

Прошло несколько демопати, так что, наверно, пора опубликовать
мыслищи разных сценеров по поводу демопатистроения из старых
логов - смотри следующую статью.



Other articles:


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

Similar articles:
Humor - 9600 and all-all-all ...
Census action - A new version of the list of nicknames Spectrum, numbering about five and a half hundreds of items.
Work at Spectrum - "to whom we are trying to produce what one or another software? Who needs all this work?"
Graphics - picture-in ANSI graphics.
From the authors - A new shell of the newspaper. Do you need support for General Sound?

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