Прямо сейчас я тоже не готов делать новое демо :) Возможно зимой/к весне или к лету :)
Остались еще не реализованные идеи и хочется плотнее поработать с фиксом.
Плотнее с фиксом я поработаю в финальной версии YSKB и в следующем демо на бейсике.
А по идее, нужно было бы по конкретным значениям FRAMES и чтением из памяти значения играющей в данный момент позиции в музыкальном модуле.
Тема синхронизации AY-музыки на прерываниях и BASIC демы еще мало изучена и, может быть, diver4d поделится своими наблюдениями и мыслями по этому поводу.
Я фиксился как раз через переменную FRAMES. После загрузки и небольшого прекалка я обнулял её и затем считывал в цикле эффекта либо в холостом цикле при ожидании следующего эффекта. Вызов сделал через GO SUB 1. Но всё равно эффекты этим тормозились. Если считывать напрямую номер играемой позиции, то, по идее это должно снизить тормоза, т.к. нам нужна всего лишь одна связка «IF PEEK N<POS THEN GO TO».
Фикс через FRAMES (или через номер позиции в плеере) упрощает работу, т.к. не надо думать о задержках внутри эффекта и скорости выполнения эффекта. Мы просто ловим нужную позицию в таймлайне и начинаем следующий эффект. Это должно корректно работать на всех клонах.
Внутри intro в YSKB фикс сделан как через задержки через PAUSE, так и через FRAMES, в принципе и то и другое работает вполне корректно на разных клонах.
Уже в процессе составления таймлайна для написания музыки и фикса, я вдруг осознал, что некоторые эффекты у меня могут сильно отличаться по времени выполнения, что накладывало некоторые проблемы на фикс
То же самое у меня было в Back 2 Basics. Есть какие-то эффекты можно прерывать в любой момент, но есть и части типа Greetings, части с выводом текста, части с пошаговым выводом графики, которые требуют конкретного времени на вывод всего контента, сами собой такие вещи с музыкой не состыкуются, нужны расчеты.
(мне очень стыдно за строчки, дальше середины листинга)
Мне вообще стыдно за весь свой листинг :-D
Но, поскольку я ни разу не уперся в ограничения по памяти для бейсика, то я не тратил время на оптимизацию кода.
Раскрытие циклов, отсутствие, вызываемых по GO SUB, процедур, многократное переопределение переменных с CLEAR в начале каждого эффекта позволяют не терять скорость. Сдается мне, что бейсик при каждом GO TO/GO SUB/RESTORE ищет адресуемые строки перебором, и так с переменными — перебор, пока не будет найдено соответствующее имя. Соответственно, чем дальше адресуемая строка или больше переменных — тем больше тормоза.
Да, будет. Называйте наиболее удобное время. Бейсик компо будет точно на следующем 3BM, да и отдельное виртуальное организовать не проблема. Проблема успеть к дэдлайну)))
Поддерживаю nyuk. Я тоже за равенство по весу голосов. Вводить повышенные веса для «профи» — не честно по отношению к «не профи». Либо общее голосование, либо голосование только онлайн, либо, как крайность, голосование профессионального жюри.
Это никак не меняет дела. Организатор написал в личке о дате, соответственно в календаре дата есть. Насколько я помню, в группе пати в вк так же есть дата проведения и нет новостей об отмене.
Остались еще не реализованные идеи и хочется плотнее поработать с фиксом.
Плотнее с фиксом я поработаю в финальной версии YSKB и в следующем демо на бейсике.
Фикс через FRAMES (или через номер позиции в плеере) упрощает работу, т.к. не надо думать о задержках внутри эффекта и скорости выполнения эффекта. Мы просто ловим нужную позицию в таймлайне и начинаем следующий эффект. Это должно корректно работать на всех клонах.
Внутри intro в YSKB фикс сделан как через задержки через PAUSE, так и через FRAMES, в принципе и то и другое работает вполне корректно на разных клонах.
Но, поскольку я ни разу не уперся в ограничения по памяти для бейсика, то я не тратил время на оптимизацию кода.
Раскрытие циклов, отсутствие, вызываемых по GO SUB, процедур, многократное переопределение переменных с CLEAR в начале каждого эффекта позволяют не терять скорость. Сдается мне, что бейсик при каждом GO TO/GO SUB/RESTORE ищет адресуемые строки перебором, и так с переменными — перебор, пока не будет найдено соответствующее имя. Соответственно, чем дальше адресуемая строка или больше переменных — тем больше тормоза.
Золотые слова-то!
Сам лично приехать не смогу точно. Но работу сделать постараюсь.