Rev 2325 | Blame | Compare with Previous | Last modification | View Log | Download
08.02.2018:+ версия для пц собирается всегда с настройкой BIGMEM (nedodefs.h) (Hippiman)14.03.2018:- была редкая ошибка с переключением чипов в ayfxplay.i28.03.2018:+ в runtime.i, runtime.h добавлены функции приостановки проигрывания музыки (pause, unpause) и глобальная переменная _PAUSED (Hippiman)09.10.2018:- в lib.i была ошибка деления LONG'ов22.11.2018:+ добавлена поддержка 3-символьного расширения в io.c, iofast.i, nedotrd (первый блок файла имеет имя типа "filename.asm", второй "filename.atm" и т.д., а не как раньше с нуля во втором байте расширения)+ iofast.i, io.c: nfopen при открытии в режиме чтения возвращает 0, если файл не существует- был глюк в movedisk26.11.2018:+ в nedotrd поддержаны слеши вида /27.11.2018:- поддержка 3-символьного расширения в nedotrd не работала в режиме extract+ поддержка NedoOS (добавлены версии стартап-модулей основных компонентов и библиотека io_os.i вместо iofast.i)28.11.2018:+ в nedotrd информация "opened trd..." показывается только при использовании ключа -v05.12.2018:+ в io_os.i поддержаны пути06.12.2018- nedotrd убирал $ из расширений файлов даже не в режиме -eh, -ah27.12.2018:- в nedores неправильно обрабатывался случай залитого знакоместа при defaultcolor с яркостью (Hippiman)14.01.2019:- в io_os.i неправильно закрывались файлы длиной 018.02.2019:* в io.h убрана функция closewrite, вместо неё всегда используется fclose* расширение *.asm (сгенерированный ассемблерный файл) заменено на *.ast, иначе невозможно делать полноценный clean. Исправлены все батники и стартапы, а также сам clean.+ примеры под NedoOS используют nedodefs.asm, а не числовые константы27.02.2019:+ в nedores фон для залитых знакомест начиная с зелёного теперь чёрный, фон для чёрных знакомест берёт яркость от defaultcolor, а для залитых знакомест менее зелёного не берёт (Hippiman)25.04.2019:+ nedotok исправлен для компиляции в gcc (demige) - 32bit only!+ в str добавлена функция strlen (demige)04.06.2020:+ enum позволяет запятую после последнего элемента+ enum {a, b=10, c, d}- неправильно работал двойной typecast, например VAR LONG l2 = (STRUCT zzz*)((UINT)&zuzu+zzz_nnn)->lb;- неправильно работали вложенные #ifdef, если внутри был #include05.06.2020:+ добавлен таргет script, в нём 4-байтные слова (список слов в testspt/enum.h)08.06.2020:+ в таргете script добавлен FLOAT, слова теперь 8-байтные (интерпретатор в testspt/g_states.cpp)22.06.2020:* CONST PCHAR s = "str" компилируется в модуль кода, а не в модуль данных (важно для скрипта)+ в скрипт добавлены спецфункции24.08.2020:+ evar {UINT var1 = 1, INT var2 = 2, FLOAT var3} и т.п. создаёт переменные заданого типа с заданными адресами26.08.2020:- enum создавал псевдопеременные для каждого элемента - выброшено* для BIGMEM (т.е. версий для пц) _STRLEN=255, иначе 8027.08.2020:+ константные выражения +(expr) - тип выражения определяется по левому контексту. В исходниках почищена такая же устаревшая запись тайпкаста.24.09.2020:+ exp добавлена версия под NedoOS (вызов: exp filename.A_, результат в exp.f)20.03.2022:+ в iofast.i добавлено getfiletime()- исправлен lbltype.i в соответствии с lbltype.c, чтобы на реале правильно компилировались обращения к структурам (например, в io.c)- исправлена автосборка nedoasm07.05.2024:* batch компилируется в адрес 0x4000 (освобождено 0x600 байт)* в comp метки переходов нумеруются без префикса имени функции. нумерация начинается с запуска comp, т.е. все обрабатываемые за один вызов файлы имеют разные метки. теперь при ассемблировании comp свободно 10652 байт в тестовом окружении (освобождено 0xafd байт, итого 0x10fd). при ассемблировании asm свободно 9140 байт в тестовом окружении- в test.bat была пропущена токенизация lbltype.i- скрипты build.bat не копировали релиз в bin06.06.2025:+ в компилятор z80 добавлена оптимизация call:ret, самосборка ускорилась на 3%* nedolang сокращён на 516 байт, nedoasm на 19, nedotok на 4309.06.2025:+ в компилятор z80 добавлена оптимизация ld [addr],a:<могут быть чтения других регистров>:ld a,[addr]* nedolang сокращён на 13 байт, nedoasm на 42, nedotok на 4510.06.2025:* поддержан RETURN из середины функций, кроме рекурсивных. В рекурсивных теперь RETURN должен быть последним оператором, а не внутри второго вложенного {}! Поэтому в рекурсивных функциях RETURN не может использовать значения локальных переменных, временно копируйте их в глобальные!* nedolang сокращён на 135 байт, nedotok на 674, самосборка ускорена на 10%. при ассемблировании asm свободно 10481 байт в текстовом окружении11.06.2025:+ убран лишний jp после RETURN из ветки IF и метка для него* обращение выражения частично перенесено в nedoasm (невидимые операции убраны из токенизированного файла)* nedolang сокращён на 77 байт, nedotok на 274, nedoasm увеличился на 422, самосборка ускорена на 15%.10.07.2025:* в компилятор встроен токенизатор, но убрана директива asm. формат токенизированного исходника изменён. самосборка ускорена на 22%.* буфер под метки в nedolang увеличен более чем на 2 килобайта.* суммарный размер системы (8 программ) сокращён на 9 килобайт.14.07.2025:* убрал символ _TOKENDCOMMENT- не работали таргеты arm (компилируется через текст), script (компилируется через токенизированное представление, совместимое с z80)- не работал таргет 386 (генерирует только текст, ассемблер не написан)- не было exp для таргета arm- в GUI не было учтено токенизированное представление