Важная информация

User Tag List

Страница 26 из 57 ПерваяПервая ... 222324252627282930 ... ПоследняяПоследняя
Показано с 251 по 260 из 565

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

  1. #251
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,857
    Спасибо Благодарностей отдано 
    655
    Спасибо Благодарностей получено 
    1,846
    Поблагодарили
    1,054 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от metamorpho Посмотреть сообщение
    каков шанс ускорить команду POKE ?
    Посмотрел, особых резервов там нет, получилось ускорить на 5% относительно 2.70. Если будут еще версии, то эта доработка там будет, но вряд ли это будет заметно. А вот использование шестнадцатеричных сказывается гораздо сильнее (особенно если POKE используется активно).

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

    metamorpho (10.04.2023)

  3. #252
    Activist Аватар для metamorpho
    Регистрация
    24.08.2012
    Адрес
    г. Волжский
    Сообщений
    345
    Спасибо Благодарностей отдано 
    602
    Спасибо Благодарностей получено 
    183
    Поблагодарили
    61 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Посмотрел, особых резервов там нет, получилось ускорить на 5% относительно 2.70. Если будут еще версии, то эта доработка там будет, но вряд ли это будет заметно. А вот использование шестнадцатеричных сказывается гораздо сильнее (особенно если POKE используется активно).
    Решил попробовать использовать шестнадцатеричные числа (заменил в POKE все десятичные) - Бейсик упрямо выдаёт синтаксическую ошибку в строке 297
    297 POKE BD-256,&00,&00,&00,&00,&00,&00,&00,&00:POKE BD,&20,&70,&60,&E0,&60,&60,&C0,&C0:GOTO 330

    Что в ней не так не пойму ?

  4. #253
    Master
    Регистрация
    13.05.2018
    Адрес
    г. Тамбов
    Сообщений
    713
    Спасибо Благодарностей отдано 
    267
    Спасибо Благодарностей получено 
    517
    Поблагодарили
    161 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    297 POKE BD-256,&00,&00,&00,&00,&00,&00,&00,&00:POKE BD,&20,&70,&60,&E0,&60,&60,&C0,&C0:GOTO 330
    Там данные по-моему, по байту...
    Через запятую - нельзя...

  5. #254
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,857
    Спасибо Благодарностей отдано 
    655
    Спасибо Благодарностей получено 
    1,846
    Поблагодарили
    1,054 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Это ошибка 2.5, в моих модификациях этот баг давно исправлен (пункт 3 в readme). В 2.5 надо чтобы POKE с шестнадцатеричными был последним оператором в строке.

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

    metamorpho (10.04.2023)

  7. #255
    Activist Аватар для metamorpho
    Регистрация
    24.08.2012
    Адрес
    г. Волжский
    Сообщений
    345
    Спасибо Благодарностей отдано 
    602
    Спасибо Благодарностей получено 
    183
    Поблагодарили
    61 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Это ошибка 2.5, в моих модификациях этот баг давно исправлен (пункт 3 в readme). В 2.5 надо чтобы POKE с шестнадцатеричными был последним оператором в строке.
    Да точно. Запустил на Бейсике 2.70 и всё работает. Человечек стал немного шустрее бегать.

  8. #256
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,857
    Спасибо Благодарностей отдано 
    655
    Спасибо Благодарностей получено 
    1,846
    Поблагодарили
    1,054 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Хочется все же сохранить совместимость с 2.5. Можно последнее число в POKE (перед двоеточием) сделать десятичным, а остальные пусть будут шестнадцатеричными.

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

    metamorpho (10.04.2023)

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

  11. #257
    Guru Аватар для svofski
    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,116
    Спасибо Благодарностей отдано 
    800
    Спасибо Благодарностей получено 
    658
    Поблагодарили
    403 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Хочется все же сохранить совместимость с 2.5.
    Какой смысл сохранять совместимость с багами 30-летней давности? Если бы это был Бейсик из ПЗУ, то конечно. Но тут-то.
    Больше игр нет

  12. #258
    Activist Аватар для PPC
    Регистрация
    01.03.2011
    Адрес
    Stamford
    Сообщений
    335
    Спасибо Благодарностей отдано 
    46
    Спасибо Благодарностей получено 
    42
    Поблагодарили
    18 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    скорее всего получится впихнуть быстрый PUT или PAINT (не вместе, а быстрые символы точно не поместятся).
    В пределе можно рассмотреть совсем безумные идеи патча интерпретатора на лету. Если, скажем удастся локализовать код исходных операторов большими кусками, то можно делать отдельные куски "микрокода" команд. Например, делаем BLOAD в ленточной версии BASIC или LOAD DATA в дисковом BASIC 2.5, загружая микрокод команды в интерпретатор на место быстрого набора зарезервированных слов (или какой-другой команды).

    Или, cкажем, расширяем оператор SCREEN новыми смыслами на которые по умолчанию стоят заглушки.

    Цитата Сообщение от ivagor Посмотреть сообщение
    А про компилятор повторю мысль, которую уже писал: если нацеливаться на компиляцию 2.5, то runtime библиотка - не проблема (она уже есть), проблема в трансляторе.
    Может и правда начать с генерации какого-либо P-кода?

    Скажем, в Supersoft C есть т.н. Optimizer - отдельный исполняемый файл C2.COM, основная задача которого - перетолмачивание P-кода сгенерённого компилятором в ассемблерный выхлоп (то что он какой-нить peephole optimization ещё делает-скорее доп. фича).
    Этот конкретный P-код хранится в виде текстового файла, так что можно на лету играться. Пример:

    Скрытый текст

    C65 2
    D27 sh_font
    D3 DLG_FONT
    B9
    D27 wn_inactive
    C65 2
    C1
    B9
    D27 bm_prompt
    C65 2
    D3 DLG_INFO
    B9
    D27 wn_inactive
    C65 2
    B12
    B99
    H61 sigterm
    C1
    B9
    D27 textcolor
    C65 2
    D27 clrscr
    D27 sh_csr
    C1
    B9
    D27 exit
    C65 2
    [свернуть]


    Недостаток в том что вот этот конкретный генератор возможно не поддерживает floating point типы данных.

    Конечно, придётся разбираться во всех p-кодах, дописывать (использовать) рантайм для операций над типами и т.п.

    ЛС-Паскаль уже предлагался, там вроде UCSD p-code, не уверен. Если так, то там стеков гора и быстро на ВМ80 не выйдет.

    Возможно уже где-то есть P-код генератор для какого-нибудь абстрактного Бейсика и компилятор P-кода в i8080 c исходниками на C.
    Если так, то портануть его на какой-нибудь C для CP/M и допилить до совместимости с BASIC 2.5 будет чуть проще, хоть и всё равно гора работы.

  13. #259
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,857
    Спасибо Благодарностей отдано 
    655
    Спасибо Благодарностей получено 
    1,846
    Поблагодарили
    1,054 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от svofski Посмотреть сообщение
    Какой смысл сохранять совместимость с багами 30-летней давности?
    1. Для самоудовлетворения мне нужна точка отсчета, чтобы получать удовольствие от того, насколько мои модификации быстрее. Эту причину можно смело игнорировать.
    2. На данный момент есть дисковые версии только 2.5. Надо делать свой дисковый вариант, много лет собираюсь.

    Цитата Сообщение от PPC Посмотреть сообщение
    Может и правда начать с генерации какого-либо P-кода?
    Надо определиться, что важнее - скорость или размер. Если скорость, то никакого байт-кода, только ассемблер, но тогда многие откомпилированные старые программы не поместятся в памяти.

  14. #260
    Guru Аватар для svofski
    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,116
    Спасибо Благодарностей отдано 
    800
    Спасибо Благодарностей получено 
    658
    Поблагодарили
    403 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от PPC Посмотреть сообщение
    Может и правда начать с генерации какого-либо P-кода?
    ACK тоже компилирует свои языки (среди которых есть Бейсик) в какой-то промежуточный код. Если у тебя настроение есть в этом копаться, посмотри что там.

    Что до p-кода, мы уже играли в похожую вещь, когда делали ZPU8080. Конечно zpu совсем не для 8080, это было чисто цирковое выступление и, может быть, можно придумать получше именно для 8080. Но я чего-то забыл, мы какую задачу решаем?

    Если хочется скомпилировать Бейсик любой ценой, то почему не подходят те компиляторы, что уже есть? Если плавучка, то плавучка в ACK есть, нету только библиотеки, которая ее реализовывает.

    Лично мне было бы прикольно попробовать сделать Бейсик наподобие 2.5, но не подглядывая в 2.5. По крайней мере кроме все той же злосчастной плавучки, вот чего делать самому было бы не прикольно. И посмотреть, насколько плохо все получится. Но это, опять же, из категории цирковых номеров, не дай бог углядеть в этом какую-то практическую ценность.
    Больше игр нет

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

    PPC (11.04.2023)

Страница 26 из 57 ПерваяПервая ... 222324252627282930 ... ПоследняяПоследняя

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

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

Эту тему просматривают: 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

Ваши права

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