User Tag List

Показано с 1 по 10 из 697

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

Комбинированный просмотр

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

    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,926
    Спасибо Благодарностей отдано 
    105
    Спасибо Благодарностей получено 
    290
    Поблагодарили
    216 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Не работает с отрицательными. А как красиво начиналось...

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

  3. #2

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

    По умолчанию

    Цитата Сообщение от b2m Посмотреть сообщение
    Не работает с отрицательными. А как красиво начиналось...
    Это уже перебор, для смещения 0-255 отличный вариант, а для -128 - 127 настолько коротко и быстро на 8080 никак не получится.

    Чего не было в описаниях советских постальтаирских бейсиков.
    1. NEXT позволяет перечислить переменные через запятую. Если что - быстрее и короче совсем не указывать переменные в NEXT.
    2. В имени переменной после первого символа могут быть не только буквы и цифры, но и пробелы (они будут проигнорированы). Т.е. переменная ABC идентична A B C или AB C или A BC (или AB). На мой взгляд это зря.
    3. Более частный факт про описание 2.5 - информация про DELETE не вполне верная, нельзя сделать DELETE без аргументов и DELETE только с начальной строкой.

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

    Оффтоп про знаковое HL+=A


    Если разрешить использовать BC или DE то так
    Код:
    mov c,a
    add a
    sbb a
    mov b,a
    dad b
    Если нельзя трогать BC и DE, то придется задействовать команды перехода. Работоспособно, но не очень изящно.
    [свернуть]

  4. #3

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

    По умолчанию

    Спасибо всем за информацию об ошибках !!
    Всё исправил и обновил ссылку на новое описание Бейсика.
    https://zx-pk.ru/threads/30566-bejsi...=1#post1191025

    ivagor, нашёл вот что - в посте #358 в этой теме:

    Цитата Сообщение от ivagor Посмотреть сообщение
    ......
    Чего не было в описаниях советских постальтаирских бейсиков.
    1. NEXT позволяет перечислить переменные через запятую. Если что - быстрее и короче совсем не указывать переменные в NEXT.
    2. В имени переменной после первого символа могут быть не только буквы и цифры, но и пробелы (они будут проигнорированы). Т.е. переменная ABC идентична A B C или AB C или A BC (или AB). На мой взгляд это зря.
    3. Более частный факт про описание 2.5 - информация про DELETE не вполне верная, нельзя сделать DELETE без аргументов и DELETE только с начальной строкой.
    1. например
    FOR A=1 TO 10
    FOR B=1 TO 10
    NEXT B
    NEXT A
    т.е. можно не указывать NEXT B, NEXT A, а просто написать NEXT, NEXT ?

    А что имелось ввиду "NEXT позволяет перечислить переменные через запятую" - как так через запятую, что за переменные ?

    2. Пробелы в именах - это относится к Бейсику v.2.5 ?

    ---------
    Ещё - можно ли в Бейсике (не применяя ассемблерных вставок) через OUT в порт 1 вывести синтезированную речь (возможно запретив прерывания) ?

    Каким образом (как это выглядит в строках кода) через Bload можно загружать массивы для Put ?
    Последний раз редактировалось metamorpho; 28.12.2023 в 12:32.

  5. #4

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

    По умолчанию

    Цитата Сообщение от metamorpho Посмотреть сообщение
    1. например
    FOR A=1 TO 10
    FOR B=1 TO 10
    NEXT B
    NEXT A
    т.е. можно не указывать NEXT B, NEXT A, а просто написать NEXT, NEXT ?
    можно NEXT B,A или NEXT:NEXT
    Второе, насколько помню, чуть быстрее

    Цитата Сообщение от metamorpho Посмотреть сообщение
    2. Пробелы в именах - это относится к Бейсику v.2.5 ?
    Да, к 2.5 и всем его модификациям это тоже относится

    Цитата Сообщение от metamorpho Посмотреть сообщение
    Ещё - можно ли в Бейсике (не применяя ассемблерных вставок) через OUT в порт 1 вывести синтезированную речь (возможно запретив прерывания) ?
    К сожалению нет, частота дискретизации недостаточная, бейсик слишком медленный.

    Цитата Сообщение от metamorpho Посмотреть сообщение
    Каким образом (как это выглядит в строках кода) через Bload можно загружать массивы для Put ?
    Попробуем без подробного кода
    Генерация
    1. Делаем HIMEM, чтобы выделить место под картинку
    2. Рисуем на экране картинку и делаем GET в область между HIMEM и экраном
    3. Делаем BSAVE сохраненной через GET картинки
    Использование
    1. HIMEM
    2. BLOAD

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

    metamorpho(28.12.2023)

  6. #5

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

    По умолчанию

    Цитата Сообщение от Stl75 Посмотреть сообщение
    ...
    Насчёт сроков правильно написали...
    Многие не помнят как команды работают,
    а Вы за 2 месяца софтину хотите???
    Да ещё приличную...Ну я как бы начну, а там как получится...
    Это похоже больше в тему конкурса подходит.
    Всё же Бейсик не ассемблер, а тем более если раньше программировали на нём, то это как на велосипеде один раз научился, а потом спустя время навык намного легче восстановить, чем если бы вообще не знали Бейсика.
    Так что 2 месяца вполне себе нормально, а если больше растягивать, то бывает вдохновение теряется

    Цитата Сообщение от ivagor Посмотреть сообщение
    .............
    Попробуем без подробного кода
    Генерация
    1. Делаем HIMEM, чтобы выделить место под картинку
    2. Рисуем на экране картинку и делаем GET в область между HIMEM и экраном
    3. Делаем BSAVE сохраненной через GET картинки
    Использование
    1. HIMEM
    2. BLOAD
    Оригинальный способ !!
    А как быть если много разных картинок - спрайты анимации например - это надо же расположение каждой в памяти знать, иначе как PUT догадается откуда выводить из какого массива ?
    Или же уже при записи вся структура (массивы) должна быть определена и она записывается при запоминании в GET ?
    Последний раз редактировалось metamorpho; 28.12.2023 в 14:07.

  7. #6

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

    По умолчанию

    Цитата Сообщение от metamorpho Посмотреть сообщение
    Оригинальный способ !!
    Он несколько более оригинальный, чем хотелось бы, в 2.5 так не получится.
    Цитата Сообщение от metamorpho Посмотреть сообщение
    А как быть если много разных картинок - спрайты анимации например - это надо же расположение каждой в памяти знать, иначе как PUT догадается откуда выводить из какого массива ?
    Или же уже при записи вся структура (массивы) должна быть определена и она записывается при запоминании в GET ?
    Надо самому распланировать распределение памяти. Для этого надо считать, сколько займет каждая картинка. Самый простой вариант - берем формулу из описания 2.5
    INT(Х*У/8+3/4)+1 и умножаем на 4 - это будет число байт на картинку. На самом деле можно и чуть поменьше, но пусть лучше будет с запасом.
    Вместе с графическими данными хранятся еще два параметра - ширина и высота картинки.

    Цитата Сообщение от ivagor Посмотреть сообщение
    частота дискретизации недостаточная, бейсик слишком медленный.
    Прикинул достижимую частоту дискретизации при выводе по OUT1,PEEK(I)
    в 2.5 - 160-190 Гц
    в последних модификациях - 300-320 Гц
    А для речи надо раз в 10-20-30 больше.

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

    metamorpho(28.12.2023)

  8. #7

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

    По умолчанию

    Цитата Сообщение от metamorpho Посмотреть сообщение
    можно ли в Бейсике (не применяя ассемблерных вставок) через OUT в порт 1 вывести синтезированную речь (возможно запретив прерывания) ?
    Не через out, но теоретически нечто отдаленно похожее на речь или музыку все же можно воспроизвести штатным средством - BSAVE. Сначала загружаем звук по BLOAD, потом воспроизводим по BSAVE. Все упирается в конвертер, который должен преобразовать ИКМ в манчестер. Есть степень свободы - загрузить можно на стандартной скорости, а перед воспроизведением увеличить. Еще вариант - в бейсике-корвет частотная модуляция, можно и там попробовать.

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

    metamorpho(21.03.2024)

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

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

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

Похожие темы

  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

Ваши права

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