User Tag List

Показано с 441 по 443 из 443

Тема: Пишу шедевр для «Вектора 06Ц»

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    24.08.2012
    Адрес
    г. Волжский
    Сообщений
    454
    Спасибо Благодарностей отдано 
    789
    Спасибо Благодарностей получено 
    265
    Поблагодарили
    100 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Пишу шедевр для «Вектора 06Ц»

    Привет всем!!

    Моя цель - написать шедевр для «Вектора 06Ц»
    Конечно при поддержке знатоков «Вектора».
    Так вот здесь я буду задавать разные «глупые» вопросы - так что просьба к тем кто знает подскажите начинающему (в детстве у меня был "Вектор", ассемблер знаю только в общих чертах, в последние годы программирую на бейсике AppGameKit - есть несколько завершённых мной игр для Windows). Сейчас исследую Лебедева А.З. «Секреты Вектора» и «Код BoulderDash»

    Для начала вот такие вопросы интересуют:
    1. Посоветуйте какой ассемблер сейчас можно использовать чтобы написать игру для «Вектора» ?
    На каком эмуляторе лучше всего тестировать результаты ?
    2. Есть ли программы преобразования графики с PC в данные для вставки в ассемблер ?
    3. Есть ли музыкальный редактор использующий ВИ53 и выдающий данные которые можно вставить в код игры и есть ли код который мог бы запускать эту мелодию ?
    4. Аппаратным вертикальным скроллингом экрана можно сдвигать только сразу все (8000-FFFF) плоскости экрана или можно сдвигать их по отдельности ?
    5. Как на ассемблере запретить использование плоскости экрана (на Бейсике «Вектора» команда Screen 2,n) и использовать эту память для кода игры ?
    6. Какой архиватор данных эффективнее всего использовать в игре ?
    7. Есть ли код который проигрывает мелодию для чипа AY ?

    ------------------------------------------------------------------------------------
    Прошло 2 месяца
    -------------------------------------------------------------------------------------



    2 месяца и 4 дня.
    Ну вот и пройден путь - моя цель достигнута - завершено написание моего первого "шедевра" для Вектора.
    Спасибо всем кто так или иначе помогал мне написать эту игру.
    Без ваших советов и информации я бы ещё наверное долго разбирался что к чему и писал код.
    Было интересно осваивать ассемблер - в чём-то он конечно сложный, но несомненно очень гибкий и
    мощный, по сути на нём можно сделать очень много невероятных програмных ходов - всё ограничивается
    только техническими характеристиками компьютера и "высотой полёта" самого программиста
    После такой практики написания игры заметил появилось некое "ассемблерное мышление", так что даже
    когда программируешь на Бейсике, но мыслишь уже командами ассемблера
    А также привычка повсюду экономить на количестве и на тактах команд

    Что было сделано:
    - написан конвертер графики с компьютера на Вектор06Ц (формат для вставки в ассемблер)
    - написан редактор уровней, который выдаёт данные для вставки в ассемблер
    - сделана графика для проекта
    - написан свой вариант плеера для проигрывания музыки на ВИ53

    Игру писал используя текстовый редактор "NotePad" и "Pretty 8080 Assembler" (спасибо за него svofski).

    Некоторые технические моменты игры:
    - используется аппаратный вертикальный скроллинг
    - используется 8 цветов (3-и плоскости)
    - музыка воспроизводится на ВИ53 (то что есть в любом стандартном Векторе)
    В игре остались некоторые баги, но существенно на качество игрового процесса они не влияют.

    Ассемблерный поход и Битва за байты.
    Поскольку это мой первый проект на ассемблере, то я особо и не задумывался о том сколько памяти осталось
    и поэтому большую часть кода писал не задумываясь об оптимизации и хитрых алгоритмах.
    В результате под конец проекта возникли сложности с памятью - её стало нехватать.
    Нехватало примерно 2200 байт. Пришлось бороться за каждые возможные байты.
    В итоге пришлось отказаться от использования некоторой графики и придумывать способ сжатия
    картинки на заставку, а также изменить на менее ресурсоёмкий способ хранения уровней.
    Также изменить некоторый код - придумав более сокращённую версию алгоритма.
    В этом есть какая-то штука, когда в стеснёных условиях памяти Вектора ты борешься за каждый байт и
    делаешь некий "подвиг" в своих глазах

    Музыка и эксперименты.
    Самой сложной частью проекта для меня оказалась музыка.
    Как известно на Вектор-06Ц для ВИ53 нет никакого (нормального) редактора для написания музыки.
    Поэтому желая быстро получить музыку я попробовал сделать конвертор музыки из midi формата на свой
    формат написанного мной плеера. Конвертер написал, но с midi форматом не всё просто. Автоматическая
    конвертация это только пол дела. Ещё нужно учесть много моментов, которые на автоматике сложно
    сделать. В итоге перекинулся на другую идею.
    Второй идеей было переложить готовые ноты на формат моего плеера. Поначитавшись информации про
    нотный стан, бемоли, диезы и другие интересности решил написать свой простенький музыкальный
    редактор. Была написана рабочая версия, на которой вполне можно писать музыку. Найдя подходящую
    нотную мелодию я начал писать её в своём редакторе, но довольно скоро столкнулся с проблемой
    синхронизации 3-х каналов. На нотном стане частенько встречаются ноты и паузы с различной
    длительностью, а в редакторе это не было предусмотрено. Нужно было писать более серьёзную версию с
    визуальной синхронизацией по длительности звучания. И идея с нотным редактором была оставлена.

    Далее был эксперимент с рандомным написанием музыки (это уже от отчаяния)
    Было написано несколько вариантов кода, но ничего из этого не нравилось.

    Далее в результате поисков решения этой задачи пришла идея использовать не точный образ midi
    формата, а лишь нотный массив, несущий в себе некий музыкальный мотив.
    Поэтому я вновь вернулся к конвертеру и переделал его для этой цели.
    После конвертации подходящих мелодий остаётся очень немного, но всё же это лучше чем ничего.
    Из двух таких массивов+ручная доработка удалось склеить более менее вариант мелодии для игры.
    Вообщем нужен качественный музыкальный редактор для ВИ53 - если будет вдохновение напишу

    В целом приобретён интересный опыт и какое-то необычное особое чувство когда программируешь на
    первый свой компьютер из своего детства. Сейчас зная различные подводные камни создания игры на Вектор,
    уже понятно с чего начать и как расставлять приоритеты в различных задачах.
    Есть желание создать ещё некоторые игровые проекты для Вектора - теперь уже с более лучшим
    пониманием некоторых ограничений и преимуществ платформы.

    Итак вот мой первый шедевр для Вектора-06Ц игра "Binorum" - логическая с 9-ю уровнями.
    Если кто-то захочет поблагодарить монетой пишите
    Игру можно свободно скачать ниже прилагается (rom)
    или же сразу поиграть здесь http://sensi.org/scalar/ware/910/








    Вложения Вложения
    Последний раз редактировалось metamorpho; 06.08.2021 в 15:25.

    Эти 21 пользователя(ей) поблагодарили metamorpho за это полезное сообщение:

    Adam Bazaroff(13.09.2020), aGGreSSor(13.08.2025), Cooper(14.12.2021), DATAsoft(01.09.2020), Dennion(28.08.2020), ivagor(26.08.2020), jerri(24.08.2020), KTSerg(25.08.2020), nimdasys_inbox_ru(28.04.2021), nzeemin(02.02.2021), Oleg N. Cher(21.06.2020), parallelno(01.07.2022), PPC(25.08.2020), Pyk(14.12.2021), Ramiros(24.08.2020), SegaBoy(24.08.2020), shuran33(07.09.2021), svofski(24.08.2020), x-code(26.08.2020), Дмитрий2012(25.08.2020)

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Бейсики для Вектора-06Ц и клонов
    от ivagor в разделе Вектор
    Ответов: 696
    Последнее: 25.10.2025, 02:34
  2. Картотека ПО для Вектора-06ц
    от svofski в разделе Вектор
    Ответов: 719
    Последнее: 04.04.2024, 11:13
  3. Восстановление Вектора-06ц
    от Daniil Chislov 86 в разделе Вектор
    Ответов: 100
    Последнее: 11.03.2021, 00:23
  4. Ответов: 198
    Последнее: 26.04.2020, 13:05
  5. Ответов: 58
    Последнее: 06.07.2019, 23:56

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •