User Tag List

Страница 1 из 3 123 ПоследняяПоследняя
Показано с 1 по 10 из 27

Тема: Basic 128 & usr 15619

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

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

    Регистрация
    07.02.2008
    Адрес
    г. Рязань
    Сообщений
    2,928
    Спасибо Благодарностей отдано 
    37
    Спасибо Благодарностей получено 
    124
    Поблагодарили
    44 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Basic 128 & usr 15619

    Всем привет!
    Столкнулся с интересной проблемой, может, на форуме пролетало, но не нашел. Может, кому пригодится.
    Итак, дисковал я ленточную прогу, заточенную под 128К. Прока грузила бэйсиком с ленты блоки кодов и закидывала их на RAM-диск 128-го. Чтобы не испытывать проблем с синтаксисом операторов загрузки/записи на RAM-диск, решил переделать бэйсик-загрузчик в редакторе 128К. Заменил всякие LOAD "" CODE на RANDOMIZE USR 15619: REM: LOAD "NAME" CODE, разбил строки с операторами зарузки, сохранил, запустил, и... "C, Nonsense in BASIC"! Бэйсик после первой строки загрузки был испорчен.
    Причина тут в том, что редактор BASIC 128 не токеризирует набранные по буквам ключевые слова после REM. А вот TR-DOS при исполнении токенизирует, но не меняет длину строки.
    В общем, чтобы работал USR 15619, надо либо править строку в 2 приема (REM добавлять после ввода LOAD "NAME" CODE), либо делать это в BASIC 48.
    Вопрос к гуру: если об этои где-то писалось, не подскажете, где можно почитать еще?

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

  3. #2

    Регистрация
    30.08.2009
    Адрес
    г. Луганск
    Сообщений
    841
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    REM это коменты. так что 128 их не так использует - это нормально. найди 1 отличие между 128 и 48 бейсиком)))

  4. #3

    Регистрация
    07.02.2008
    Адрес
    г. Рязань
    Сообщений
    2,928
    Спасибо Благодарностей отдано 
    37
    Спасибо Благодарностей получено 
    124
    Поблагодарили
    44 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Да понятно, что это комменты. Мне интересно почему TR-DOS токенизирует набранные по буквам комманды, но не меняет длину строки.

  5. #4

    Регистрация
    26.09.2009
    Адрес
    г. Красноярск
    Сообщений
    3,198
    Спасибо Благодарностей отдано 
    40
    Спасибо Благодарностей получено 
    128
    Поблагодарили
    103 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Между прочим, набирать строку работы с tr-dos именно токенами, рекомендовали в книжке ".. для пользователей и программистов" - Ларченко-Родионова (правда, там это рекомендовали с иной целью).
    Когда есть, но не знаешь где - это все равно, что нету.

  6. #5

    Регистрация
    07.02.2008
    Адрес
    г. Рязань
    Сообщений
    2,928
    Спасибо Благодарностей отдано 
    37
    Спасибо Благодарностей получено 
    124
    Поблагодарили
    44 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

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

  7. #6

    Регистрация
    26.09.2009
    Адрес
    г. Красноярск
    Сообщений
    3,198
    Спасибо Благодарностей отдано 
    40
    Спасибо Благодарностей получено 
    128
    Поблагодарили
    103 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Alex Rider Посмотреть сообщение
    было бы здорово заменять первую букву набранного токена на его код, а остальные - на пробел
    Вообще-то, примерно так и происходит. Набрав в 128 бейсике программу, выполните все инструкции tr-dos и сохраните ее. Загрузитесь из 48 режима, посмотрите листинг - какие проблемы?!
    Использование токенов, удобно тем, что не нужно "знать" как пишется та или иная команда (также не тратится лишнее время на набор и место в памяти). Логичнее не пользоваться таким "атавизмом", как 128 бейсик.
    А изменение содержимого любого из ПЗУ может вызвать "несовместимость" ряда программ. Поэтому, мне не совсем понятна причина недовольства текущим положением вещей.
    Когда есть, но не знаешь где - это все равно, что нету.

  8. #7

    Регистрация
    07.02.2008
    Адрес
    г. Рязань
    Сообщений
    2,928
    Спасибо Благодарностей отдано 
    37
    Спасибо Благодарностей получено 
    124
    Поблагодарили
    44 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вообще-то, примерно так и происходит. Набрав в 128 бейсике программу, выполните все инструкции tr-dos и сохраните ее. Загрузитесь из 48 режима, посмотрите листинг - какие проблемы?!
    Хоть в 128-м, хоть в 48-м одно и то же: токенизация операторов звгрузки после REM без исправления длин строк. Для инструкции LOAD "NAME" CODE 4-х буквенные слова LOAD и CODE, заменяются на односимвольные токены, строка укорачивается на 6 символов, но байты длины строки после ее номера не корректируется. Если посмотреть листинг, будет все, что угодно.

    Использование токенов, удобно тем, что не нужно "знать" как пишется та или иная команда (также не тратится лишнее время на набор и место в памяти). Логичнее не пользоваться таким "атавизмом", как 128 бейсик.
    Читаем сообщения внимательно - я дисковал программу, рассчитанную на 128-й бэйсик. В частности, использующую команды LOAD ! и SAVE !. Ясно, что в "прогрессивном" BASIC 48 строки с такими командами не введутся.

    А изменение содержимого любого из ПЗУ может вызвать "несовместимость" ряда программ.
    Я предлагал изменения не в канонические прошивки типа 5.03/5.04Т - их я и сам могу модифицировать и словить несовместимость. Изменения можно внести в уже модифицированные прошивки с поддержкой RAM-диска, фиксами известных багов и т.п., явно на 100% не совместимые с оригиналами.

  9. #8

    Регистрация
    30.08.2009
    Адрес
    г. Луганск
    Сообщений
    841
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Alex Rider Посмотреть сообщение
    я дисковал программу, рассчитанную на 128-й бэйсик. В частности, использующую команды LOAD ! и SAVE !
    а можно подробней об этом. листинг например

  10. #9

    Регистрация
    26.09.2009
    Адрес
    г. Красноярск
    Сообщений
    3,198
    Спасибо Благодарностей отдано 
    40
    Спасибо Благодарностей получено 
    128
    Поблагодарили
    103 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Alex Rider Посмотреть сообщение
    байты длины строки после ее номера не корректируется
    Так что мешает набрать строки tr-dos в 48 бейсике токенами?

    Цитата Сообщение от Alex Rider Посмотреть сообщение
    в "прогрессивном" BASIC 48 строки с такими командами не введутся.
    Опять же, что мешает набрать эти команды уже в 128 бейсике?
    Когда есть, но не знаешь где - это все равно, что нету.

  11. #10

    Регистрация
    27.02.2005
    Адрес
    москва
    Сообщений
    14,289
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    202
    Спасибо Благодарностей получено 
    1,456
    Поблагодарили
    946 сообщений
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

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

Страница 1 из 3 123 ПоследняяПоследняя

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

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

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

Похожие темы

  1. BASIC ДВК
    от AlecV в разделе ДВК, УКНЦ
    Ответов: 148
    Последнее: 10.12.2025, 12:31
  2. 128 basic
    от sevol в разделе Для начинающих
    Ответов: 149
    Последнее: 08.02.2025, 05:10
  3. Tiny Basic
    от Kakos_nonos в разделе Зарубежные компьютеры
    Ответов: 0
    Последнее: 25.04.2011, 16:51
  4. Дизассемблер BASIC-48
    от Prusak в разделе Пресса
    Ответов: 4
    Последнее: 22.06.2010, 22:52
  5. Программы на BASIC
    от form в разделе ДВК, УКНЦ
    Ответов: 14
    Последнее: 17.04.2010, 15:41

Ваши права

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