User Tag List

Страница 15 из 70 ПерваяПервая ... 111213141516171819 ... ПоследняяПоследняя
Показано с 141 по 150 из 697

Тема: Бейсики для Вектора-06Ц и клонов

  1. #141

    Регистрация
    05.08.2008
    Адрес
    Магнитогорск
    Сообщений
    989
    Спасибо Благодарностей отдано 
    25
    Спасибо Благодарностей получено 
    96
    Поблагодарили
    46 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    metamorpho, немного бустануть программу можно используя basic 2.62
    Здесь можно скачать актуальные версии Virtual Vector (VV)

    Этот пользователь поблагодарил Ramiros за это полезное сообщение:

    metamorpho(01.03.2023)

  2. #142

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,391
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    2.62 даст проценты ускорения, на глаз незаметно.
    Если оставаясь в рамках бейсика говорить например о рисовании лабиринта 32x32, то быстрее сделать можно, но быстро все равно не будет. Если разных видов тайлов немного, например 4, то можно объединить их по 2 и сделать 16 вариантов рисования. При выводе с использованием POKE удобно объединить 2 по вертикали, если тайлы одинаковые, то можно нарисовать 2 одним POKE.
    В детстве я проходил этот путь когда делал редактор спрайтов и "мегаигру". Постепенно перекладывал медленные операции на машиннокодовые процедуры, в частности и рисование уровня. Редактор в принципе и на бейсике+коды получился нормально, а вот игру надо было полностью перевести на ассемблер. Это было возможно, но проблема была с графикой и анимацией главного героя, красиво или хотя бы приемлемо у меня не получалось.

    - - - Добавлено - - -

    2.62 более ценен тем, что там исправлены известные баги.

    Этот пользователь поблагодарил ivagor за это полезное сообщение:

    metamorpho(01.03.2023)

  3. #143

    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,299
    Спасибо Благодарностей отдано 
    1,028
    Спасибо Благодарностей получено 
    813
    Поблагодарили
    484 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Не разбирался, как работает загрузочный скрипт v06x, вероятно он ожидает, что 3 нуля в конце программы будут в составе bas (и это пожалуй правильно), а Vector06CBasic этого не обеспечивает.
    Я деталей тоже не помню, но bas25hook.chai дописывает 0 0 0 d3 d3 d3 0 в конец виртуального .cas-файла перед контрольной суммой.

    @metamorpho а есть где-то текст твоей программы целиком, чтобы запустить?
    Больше игр нет

  4. #144

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,391
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от svofski Посмотреть сообщение
    bas25hook.chai дописывает 0 0 0 d3 d3 d3 0 в конец виртуального .cas-файла перед контрольной суммой
    Это странно, в конце должно быть три нуля потом контрольная сумма. В casах так уже сделано, лучше для них скрипт сделать.

  5. #145

    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,299
    Спасибо Благодарностей отдано 
    1,028
    Спасибо Благодарностей получено 
    813
    Поблагодарили
    484 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Это странно, в конце должно быть три нуля потом контрольная сумма. В casах так уже сделано, лучше для них скрипт сделать.
    Оишбся, не в конец, а после имени. Три нуля подряд интерпретируются как признак конца bas-файла. Видимо ты клонишь к тому, что если в конце .bas файла не нашлось трех нулей, их стоит додумать. Это можно сделать, просто мне не встречалось таких bas-файлов раньше. Пришли плс.
    Больше игр нет

  6. #146

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,391
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Добавил архив с BAS и TXT.
    BAS, насколько я понимаю, был в свое время форматом для хранения на дискетах, поэтому контрольная сумма там не требовалась. На тему тонкостей BAS надо бы посмотреть BT.COM от авторов вектора.

  7. #147

    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,299
    Спасибо Благодарностей отдано 
    1,028
    Спасибо Благодарностей получено 
    813
    Поблагодарили
    484 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Спасибо, пока я не добрался сделать чего-то полноценно, можно вставить
    Код:
            for (var i = zeroseq; i > 0; --i) {
                this.cas.push_back(0)
            }
            cs &= 0xffff // это было
    в bas25hook.chai в строке 59. И тогда твой .bas загружается.

    В bas файлах контрольной суммы нет, это все про cas.
    Больше игр нет

    Этот пользователь поблагодарил svofski за это полезное сообщение:

    ivagor(01.03.2023)

  8. #148

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

    По умолчанию

    Ещё протестировал вариант вывода графики уровня с командой PUT, скорость тоже медленная.
    Прежде чем выводить через PUT нужно резервировать массив (- память), потом нарисовать спрайт (- память) и потом
    запоминать это в GET и только потом использовать PUT. Минусы - затраты памяти и много лишних движений.
    Над плюсами ещё думаю есть ли они.

    Запускал программу в Бейсик 2.62 - если мерить строго на глаз то ощущение что есть небольшой прирост скорости, но
    в целом всё так же медленно.

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

    Цитата Сообщение от svofski Посмотреть сообщение
    ............
    @metamorpho а есть где-то текст твоей программы целиком, чтобы запустить?
    Пока что нигде нету. После завершения проекта выложу здесь.
    Скорее всего в этой игре будет один уровень в конце которого главный герой на чём-то куда-то улетает.
    Этот проект задумывался мной как небольшое исследование и как результат демонстрация того какие можно было делать игры чисто на Бейсике с использованием некоторых специфичных моментов Вектора.

  9. #149

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

    По умолчанию

    ....и вот что получается - нарисовал с помощью LINE ракету и вылетает надпись "памяти больше нет". Как так нет, я же "почти" ничего ещё не рисовал
    Однако быстро память кончилась, а я не успел внедрить и половины того что хотел. Придётся ужимать код программы и использовать другой вариант вывода персонажа игры (сейчас он через ресурсоёмкий PUT выводится).
    Игра и на базовом этапе (уровень и человечек бегает - типа LodeRunner) была довольно медленная, а с прибавлением каждого нового элемента скорость падает уже до неиграбельности. Однако меня подкупает включение режима 12Мгц - всё прекрасно летает и парит (может сделаю настройки под режим 12Мгц). Вообщем хочется ещё немного поэксперементировать с некоторыми идеями, но уже сейчас понятно что на стандартном режиме 3Мгц на Бейсике мало что можно выжать в отношении скорости.
    На данный момент в ходе экспериментов с Бейсиком удалось реализовать идею (она конечно не новая, но думаю немного в новой форме) анимации различных объектов (в основном статичных) с помощью программирования палитры. Т.е. можно хоть весь экран привести в движение без особых нагрузок на процессор, всё что нужно сделать это заранее правильно нарисовать графику, а потом в ходе игрового цикла менять только палитру.
    Есть ещё идея сделать скроллинг уровня вверх-вниз, но это наверное совсем уничтожит скорость игры
    Хотя на 12Мгц думаю всё будет неплохо работать.
    Вообщем процесс создания пока продолжается, но память в Бейсике всё же коротка и сколько не ужимай программу довольно скоро упрёшься в потолок - а значит скоро (наверное) будет выдан результат моих экспериментов

  10. #150

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,391
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    С нехваткой памяти можно бороться несколькими способами:
    1. Отключать плоскости, но что-то мне подсказывает, что в данном случае этот вариант не подойдет.
    2. Более экономно хранить данные
    2.1. Разделить программу на основной блок (загружаем по cload"") и блок данных, подгружаемый по bload"".
    2.2. Компромиссный вариант - упаковывать данные в строки после REM и читать оттуда по PEEK.

    Этот пользователь поблагодарил ivagor за это полезное сообщение:

    metamorpho(07.03.2023)

Страница 15 из 70 ПерваяПервая ... 111213141516171819 ... ПоследняяПоследняя

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

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

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

Похожие темы

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

Ваши права

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