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

User Tag List

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

Тема: проблема с tobos и спрайтами.

  1. #1
    Member Аватар для женя999
    Регистрация
    02.04.2009
    Адрес
    Москва
    Сообщений
    144
    Спасибо Благодарностей отдано 
    3
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию проблема с tobos и спрайтами.

    Добрый день, у меня такой вопрос:
    С помощью арт студио можно создать спрайты 8х8 ,потом сохранить на диске файл.
    Потом загрузить его в бейсике, набрать poke 23607,250 и вместо стандартных символов появятся мои спрайты. Вернуться обратно можно poke 23607,60.
    Всё работает. Спрайты хранятся в памяти, начиная с адреса 64255 вроде.
    Но мне ещё надо использовать программу tobos,а он хранится с адреса 53000 длинной 12536 байт. 53000+12536=65536. Т.е. я уничтожу спрайты, или наоборот. Короче эти две вещи не совместимы ?
    Что можно придумать ? Мне нужно пользоваться спрайтами и использовать скомпилированную программу. Может компилятор другой использовать? Во время исполнения скомпилированной программы компилятор должен находиться в памяти ЭВМ, может есть другой, присутствие которого не обязательна ?
    (у меня программа, после загрузки всех этих блоков, вроде бы всё работает, но начинаю писать её дальше, с бейсиком происходят чудеса, то внизу ошибку пишет не понятную, то вообще зависает, то цветные кубики, а команду stop вообще не видит . Если внизу запускаю скомпилированную программу rand usr 40000,то она выполняется нормально, если вставляю её в строчку 10 rand usr 40000 и запускаю run enter ,то всё зависает. )
    Спасибо.

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

  3. #2
    Guru Аватар для null_device
    Регистрация
    26.09.2009
    Адрес
    г. Красноярск
    Сообщений
    3,095
    Спасибо Благодарностей отдано 
    21
    Спасибо Благодарностей получено 
    83
    Поблагодарили
    67 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от женя999 Посмотреть сообщение
    может есть другой, присутствие которого не обязательна
    Mcoder2 от Евдокимова, для работы скомпилированной программы сам компилятор в памяти не нужен. НО он целочисленный и "не понимает" многие операторы бейсика.

    ---------- Post added at 15:12 ---------- Previous post was at 15:11 ----------

    Цитата Сообщение от женя999 Посмотреть сообщение
    Короче эти две вещи не совместимы
    Грузите спрайты по другому адресу: "ниже" скомпилированной программы или "выше" кодов компилятора (мне кажется, он "сверху" не впритык, фонт UDG не затирает). ТОБОС стирает данные между концом скомпилированной программы и началом блока кодов компилятора.
    Последний раз редактировалось null_device; 20.10.2011 в 11:19.
    Когда есть, но не знаешь где - это все равно, что нету.

  4. #3
    Veteran Аватар для AER
    Регистрация
    18.11.2009
    Адрес
    пгт.Малиновка
    Сообщений
    1,355
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    1
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    13 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    спрайты принтом выводишь?я игры в тобосе писал.надо вспомнить..

  5. #4
    Guru Аватар для null_device
    Регистрация
    26.09.2009
    Адрес
    г. Красноярск
    Сообщений
    3,095
    Спасибо Благодарностей отдано 
    21
    Спасибо Благодарностей получено 
    83
    Поблагодарили
    67 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от женя999 Посмотреть сообщение
    ошибку пишет не понятную
    Какую конкретно?

    Цитата Сообщение от женя999 Посмотреть сообщение
    команду stop вообще не видит
    Она не "распознается" компилятором как ограничитель конца программы. По-моему он ее воспринимет как выход из компилированной программы.
    Когда есть, но не знаешь где - это все равно, что нету.

  6. #5
    Veteran Аватар для AER
    Регистрация
    18.11.2009
    Адрес
    пгт.Малиновка
    Сообщений
    1,355
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    1
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    13 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    делал вроде так:
    в 30000 шрифт,компилим в 40000
    1pap0:bord0:goto3
    2rand usr tobos:rand usr 40000:stop
    3далее твоя прога
    тестируешь гоуто 2.
    шрифт грузишь отдельно потом все сохраняй в z80.

    ---------- Post added at 10:30 ---------- Previous post was at 10:27 ----------

    а ну и poke 23606,48 23607,116

  7. #6
    Guru Аватар для null_device
    Регистрация
    26.09.2009
    Адрес
    г. Красноярск
    Сообщений
    3,095
    Спасибо Благодарностей отдано 
    21
    Спасибо Благодарностей получено 
    83
    Поблагодарили
    67 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от женя999 Посмотреть сообщение
    начинаю писать её дальше, с бейсиком происходят чудеса
    Видимо нехватает пямяти? RAMTOP ведь "опускаете" до 39999?!
    При написании программы делайте так:
    1. Поднимаете RAMTOP на максимально возможное значение, командой clear n.
    2. Пишете программу до определенного момента.. в саму программу добавляете строки:
    Код:
    rem: border usr 15619: rem: save "prog" сохраняемся
    rem:clear n: border usr 15619: rem: load "compil" code загрузка компилятора
    rem: border usr 15619: rem: load "graph" code загрузка графики
    rem:  randomize usr 53100 запуск компилятора
    rem:clear n: border usr 15619: rem: save "code" code n+1, m запись скомпилированной программы
    ремарка нужна, для запуска в командной строке и чтобы строка не обрабатывалась компилятром
    3. Потом, выполняете каждую строку по очереди (удаляя команду rem, в начале строки).
    ----
    Можно пользоваться приемом - до компиляции размещать графику вверху памяти. А перед компиляцией "пересчитать графику" под нижние адреса, там, где сейчас находится бейсик-программа. Ну, и компилировать программу "впритык" - первый раз узнаем длину получившейся программы, а второй раз, поднимем ramtop, чтобы конец скомпилированной программы был в районе ~52000-53000.

    ---------- Post added at 15:50 ---------- Previous post was at 15:42 ----------

    Цитата Сообщение от женя999 Посмотреть сообщение
    он хранится с адреса 53000 длинной 12536 байт
    Кодовый блок компилятора TOBOS, начинается с 53100 и имеет длину 12268, т.е. заканчивается в районе 65368. Сверху есть свободных 168 байт.
    Последний раз редактировалось null_device; 20.10.2011 в 12:05.
    Когда есть, но не знаешь где - это все равно, что нету.

  8. #7
    Veteran Аватар для AER
    Регистрация
    18.11.2009
    Адрес
    пгт.Малиновка
    Сообщений
    1,355
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    1
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    13 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    у меня влезало все вроде.завтра игры покажу. считаю самый быстрый (кроме целочисленных) и "добрый" компилятор (инерпретатор?).

  9. #8
    Master Аватар для GM BIT
    Регистрация
    27.11.2008
    Адрес
    Красноярск
    Сообщений
    747
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Просто грузи шрифт в 32768 (до программы tobos) , потом poke 23607,127 (или 128 какое-то правильное)

  10. #9
    Veteran Аватар для AER
    Регистрация
    18.11.2009
    Адрес
    пгт.Малиновка
    Сообщений
    1,355
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    1
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    13 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    а 23606 по умолчанию "ноль" же?

  11. #10
    Guru Аватар для null_device
    Регистрация
    26.09.2009
    Адрес
    г. Красноярск
    Сообщений
    3,095
    Спасибо Благодарностей отдано 
    21
    Спасибо Благодарностей получено 
    83
    Поблагодарили
    67 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от AER Посмотреть сообщение
    а 23606 по умолчанию "ноль" же?
    23606\07 => 0\60
    Когда есть, но не знаешь где - это все равно, что нету.

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

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

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

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

Похожие темы

  1. NEC в чём проблема?
    от Biozoom в разделе Внешние накопители
    Ответов: 22
    Последнее: 10.05.2021, 20:50
  2. Выход из TOBOS в бейсик
    от женя999 в разделе Программирование
    Ответов: 3
    Последнее: 27.09.2011, 17:48
  3. проблема с SID
    от breeze в разделе Commodore 16/64/128
    Ответов: 23
    Последнее: 17.03.2009, 12:24
  4. Tobos FP
    от Zerios в разделе Программирование
    Ответов: 17
    Последнее: 27.05.2006, 12:27

Ваши права

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