User Tag List

Страница 3 из 11 ПерваяПервая 1234567 ... ПоследняяПоследняя
Показано с 21 по 30 из 102

Тема: Разработка игры Dash

  1. #21

    Регистрация
    24.05.2005
    Адрес
    г. Запорожье, Украина
    Сообщений
    992
    Спасибо Благодарностей отдано 
    571
    Спасибо Благодарностей получено 
    365
    Поблагодарили
    239 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    ... и как вам тут же ответили что для опроса клавиатуры менять режим не нужно, но вы почему-то упорно пытаетесь его менять.
    Если понимание механизмов работы прерываний неполное - просто поверьте на слово - менять режим в пределах приложения (кроме этапа инициализации) не нужно - тем более если этот режим IM2.
    Последний раз редактировалось shurik-ua; 09.10.2015 в 17:42.

  2. #22

    Регистрация
    24.08.2007
    Адрес
    Днепропетровская обл.
    Сообщений
    1,681
    Спасибо Благодарностей отдано 
    2,712
    Спасибо Благодарностей получено 
    170
    Поблагодарили
    130 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    О'кей, я вас услышал, но сделаю так, как, считаю, будет лучше. Исходя из своего опыта. Зачем именно так. В принципе игра устроена именно так, как и предлагается. Генерится таблица, ставится IM 2 - и поехали. Теперь игрок погеймал, проиграл и получил геймовер и просьбу ввести имя. Вот тут-то из процедуры опроса кнопок, которая должна учитывать регистр символов, понимать Shift, делать автоповтор нажатой клавиши при её удерживании, и ставится режим IM 1 - чисто для сокращения объёма кода. И здесь jerri предлагает мне всё это не юзать из ПЗУ, а переписывать заново? Вот уж спасибо, не надо.

  3. #23

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

    По умолчанию

    Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
    Поясните, пожалуйста, не избыточен ли он, и зачем здесь нужно устанавливать регистр I ?
    Установка I в 63 вроде бы связано с ULA фирменных спектрумов, точнее сказать не смогу.

  4. #24

    Регистрация
    24.05.2005
    Адрес
    г. Запорожье, Украина
    Сообщений
    992
    Спасибо Благодарностей отдано 
    571
    Спасибо Благодарностей получено 
    365
    Поблагодарили
    239 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ну так опрашивайте клавиатуру из ПЗУ - режим то зачем менять.

    Кстати насчёт того чтобы не использовать ПП ПЗУ совет весьма дельный - тут например можно надёргать процедур на любой вкус - http://zxdn.narod.ru/coding.htm

  5. #25

    Регистрация
    18.04.2015
    Адрес
    г. Люберцы
    Сообщений
    342
    Спасибо Благодарностей отдано 
    103
    Спасибо Благодарностей получено 
    32
    Поблагодарили
    27 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
    Код:
        LD   A,#63
        LD   I,A
        IM   1
    Поясните, пожалуйста, не избыточен ли он, и зачем здесь нужно устанавливать регистр I ?
    Я может чего-то не помню, но это похоже лишнее, т.к. в IM 1 ничего с шины не читается, при обработке прерываний и этот I регистр вообще может быть использован как регистр общего назначения.

    Кстати, на оригинальных машинах важно какое именно место выбрано под таблицу: http://zx-pk.ru/showthread.php?t=7427

  6. #26

    Регистрация
    24.05.2005
    Адрес
    г. Запорожье, Украина
    Сообщений
    992
    Спасибо Благодарностей отдано 
    571
    Спасибо Благодарностей получено 
    365
    Поблагодарили
    239 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вот кстати - пункт 3 как раз ваш случай - http://zxpress.ru/article.php?id=3480

  7. #27

    Регистрация
    18.04.2015
    Адрес
    г. Люберцы
    Сообщений
    342
    Спасибо Благодарностей отдано 
    103
    Спасибо Благодарностей получено 
    32
    Поблагодарили
    27 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Насчет загрузки 63 в I:
    http://maben.homeip.net/static/s100/...air%20user.pdf (размер 60Мбайт!), 122 страница:

    "TROFF performs the opposite function
    in that it resets the machine to
    normal interrupts. You will notice that
    I is loaded with 3FH or 63. That is the
    address (3FFF) that the ROM sets up as
    an interrupt vector on power up. In
    interrupt mode 2 that would cause a
    jump to address 60 which is part way
    through the normal interrupt routine. It
    is important, therefore, when resetting
    to put the machine into !MI. The only
    USR call that is necessary anywhere in
    this program is the initial one to
    TRON. TROFF is called by means of a
    normal Basic variable."

    Всё это выглядит как бред наркомана или как мега костыль...

  8. #28

    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    4,866
    Спасибо Благодарностей отдано 
    328
    Спасибо Благодарностей получено 
    310
    Поблагодарили
    234 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Oleg N. Cher, мне не нравится твой тон.
    мне по большому счету пофиг как будет выглядеть твоя кроссплатформенная игра.
    меня больше интересовало чтобы на спектруме она выглядела достойно.
    но нет так нет.
    С уважением,
    Jerri / Red Triangle.

  9. #29

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

    По умолчанию

    Цитата Сообщение от shurik-ua Посмотреть сообщение
    ... и как вам тут же ответили что для опроса клавиатуры менять режим не нужно, но вы почему-то упорно пытаетесь его менять.
    Если понимание механизмов работы прерываний неполное - просто поверьте на слово - менять режим в пределах приложения (кроме этапа инициализации) не нужно - тем более если этот режим IM2.
    Вот тут я поспорю с тобой и соглашусь с Олегом. Если я хочу в меню игры использовать ПЗУшный опрос кнопок, а в игре - свой в IM2, то так проще и правильнее. Ибо не сдался мне в меню обработчик IM2, который хочет играть музыку, опрашивать управление, считать игровые таймеры и так далее. И уж точно в игре мне не нужен обработчик прерываний BASIC'а. А патчить ISR при переходе в меню и в игру или обвешиваться флагами (игра/меню) нафик не уперлось.

    ---------- Post added at 23:14 ---------- Previous post was at 23:12 ----------

    Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
    Всё, вопрос №1 закрыт.
    Еще раз намекну: используй IM1, а не IM0. В теории на клонах с нестабильной шиной должно быть все ок при IM0, но на то шина и нестабильная, что хрен его знает что там будет болтаться в момент прихода прерывания.

    ---------- Post added at 23:18 ---------- Previous post was at 23:14 ----------

    Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
    Поясните, пожалуйста, не избыточен ли он, и зачем здесь нужно устанавливать регистр I ?
    Если ты планируешь вернуться в BASIC корректно, обеспечь нормальную работу софтов, которые будут запущены после твоего. Кстати, можно запросто верруться и не в BASIC, а в другую ОС, которая может запустить твою игру. Софты ждут, что i = #3f - как это выставляет BASIC при сбросе. Олсо не забывай при выходе выставлять iy в #5c3a и hl' в #2758.

    ---------- Post added at 23:21 ---------- Previous post was at 23:18 ----------

    Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
    LD A,#63
    В используемом ассемблере символ # - это признак адресации или 16-ричной системы? в i надо засылать #3f = 63 dec.
    Последний раз редактировалось Alex Rider; 09.10.2015 в 23:24.
    ZX Evolution Rev C + ZXM-SoundCard Extreme + NeoGS.

  10. #30

    Регистрация
    01.03.2005
    Адрес
    Новосибирск
    Сообщений
    2,080
    Спасибо Благодарностей отдано 
    87
    Спасибо Благодарностей получено 
    480
    Поблагодарили
    145 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Oleg N. Cher, вот тебе пример простейшего способа ввода текста на примере опроса клавиатуры, что я публиковал постом выше. Драйвер клавиатуры, вывода текста и все остальное не зависят от системных переменных ПЗУ, режима IM1, не используют подпрограмм ПЗУ.

    https://www.dropbox.com/s/wk4yrlmc7l786zw/prj_keys.zip

Страница 3 из 11 ПерваяПервая 1234567 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Ищу неломанный Boulder Dash 5
    от transman в разделе Игры
    Ответов: 17
    Последнее: 01.07.2021, 23:28
  2. Boulder Dash
    от Cat_Alex/QRP в разделе Игры
    Ответов: 6
    Последнее: 04.03.2013, 21:43
  3. О чем думал автор? Boulder Dash IV
    от JeRrS в разделе Игры
    Ответов: 7
    Последнее: 08.07.2010, 12:52
  4. Slalom demo by Dr.Dash
    от cardin в разделе Демо
    Ответов: 2
    Последнее: 06.02.2010, 06:28

Ваши права

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