Автор Тема: [SMD] Хак Zero Tolerance  (Прочитано 293494 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн AuAurora

  • Пользователь
  • Сообщений: 1496
  • Мур
    • Youtube
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1770 : 09 Июнь 2020, 16:42:45 »
При разгоне 3(мед, 1.5х) враги уже слишком быстро мелькают, видимо от фпса зависит их скорость) при разгоне 2 - почти идеально, управление не тормозное, враги не тормозные, лагает только если толпу огнемётом жарить

Оффлайн perfect_genius

  • Пользователь
  • Сообщений: 1055
    • ВКонтакте
    • Steam
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1771 : 11 Июнь 2020, 20:33:57 »
Rumata, что-то не смог там быстро найти, только инфу, что приставка может определять что же к нему подключено опрашивая это самое устройство :ohmy:

megavolt85, по ссылке действительно нет, но там-же перешёл на другую страницу и нашёл, что приставка действительно отправляет импульсы геймпаду, геймпад в ответ на каждый импульс отправляет приставке свой набор нажатых кнопок. Похоже, подключённые приставки общаются считывая только нажатие одной кнопки за один импульс. Задержка измеряется не миллисекундами, а аж микросекундами :ohmy:. По идее, низкая частота кадров игры снижает требование к задержке, но XYZ всё-равно не использовали, потому что не влезли в ограничение, скорее всего.

Не оставляете надежды добавить в зеро мультиплеер)
Совпало, что делаю свой дизассемблер для приставочных игр, и как раз начал с Сеги. Мультиплеер ZT на эмуляторе хотят уже давно, а я придумал как его можно реализовать. Рано или поздно кто-то должен сделать :)

движется по приходящим пакетам из второго порта, а также код передачи событий на соседнюю сосноль
Как игры синхронизируются, раз у каждого игрока в разной части карты может быть своя частота кадров? Неужели зафиксирована на самой низкой? Или же просто тормоза одного передаются другому? И что же там отправляется о другом игроке при его передвижении - факт движения вперёд/назад/вбок и поворота вправо/влево или же координаты и угол?
Хакеры может и разобрались, но как это реализовать в эмуляторе? Специально для одной игры править исходники эмулятора, чтобы он показывал и синхронизировал два экрана?

И кто-нибудь знает куда пропал Lurler, создавший эту тему? Последняя его активность - 5 лет назад. Интересно, сделали ли ему хак, который он хотел.

Оффлайн megavolt85

  • Пользователь
  • Сообщений: 1464
  • Пол: Мужской
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1772 : 13 Июнь 2020, 01:33:20 »
perfect_genius, стоп, стоп, ты уже в какие то дебри полез
ты знаешь что такое последовательный порт?
мультиплеер на genisis/megadrive работает именно через последовательный порт, в отличии от опроса джоя, который происходит когда порт в параллельном режиме
« Последнее редактирование: 13 Июнь 2020, 01:45:17 от megavolt85 »

Оффлайн Rumata

  • Модератор
  • Сообщений: 23960
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1773 : 13 Июнь 2020, 03:04:54 »
мультиплеер на genisis/megadrive работает именно через последовательный порт
Ага, только через параллельный :D Там данные полубайтом (нибблом) передаются.

И немного ясности для общего понимания:
- В ZT нет никакой игры "по сети". От слова совсем
- Аналог этого режима в ПК - прямое кабельное соединение, причём не COM, а LPT.

приставка может определять что же к нему подключено опрашивая это самое устройство
Потрясающе. Только делает это не "приставка", а программа. Кем-то написанная. А там хоть джойстик, хоть мышь, пистолет, активатор...

Оффлайн perfect_genius

  • Пользователь
  • Сообщений: 1055
    • ВКонтакте
    • Steam
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1774 : 14 Июнь 2020, 23:50:34 »
делает это не "приставка", а программа
Это же в контексте соединения геймпад-приставка было написано. А так уж ясно, что в приставке нет встроенного опрашивателя.

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3237
  • Пол: Мужской
  • Blast Processing!
    • Twitter
    • Youtube
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1775 : 16 Июнь 2020, 11:43:52 »
perfect_genius, синхронизация на частоту кадров приставки поставлена, а не на лаги гемплея.
к тому же в ZT много чего оптимизировать можно и повысить тем самым колличество кадров или разрешение.
я пока адаптивный фреймскип писал для ZT видел, что там и как и местами решения оставленные разработчиками создают больше вопросов чем ответов. :lol:

Оффлайн perfect_genius

  • Пользователь
  • Сообщений: 1055
    • ВКонтакте
    • Steam
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1776 : 17 Июнь 2020, 22:28:42 »
Segaman, информация какая-нибудь есть по тому, почему они не использовали XYZ?

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3237
  • Пол: Мужской
  • Blast Processing!
    • Twitter
    • Youtube
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1777 : 03 Июль 2020, 11:44:29 »
perfect_genius, ненаходил.

кстати Piko молчат. а я без них не могу доделать сюжет ибо у них на руках все доки, а у меня тока наработки.
вот все и застыло  :(


Оффлайн Temkins

  • Пользователь
  • Сообщений: 47
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1778 : 29 Август 2020, 16:21:45 »
ну что там? есть чЁ :blush:?   ;)

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2328
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1779 : 29 Август 2020, 16:41:07 »
не. всё скурили.

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3237
  • Пол: Мужской
  • Blast Processing!
    • Twitter
    • Youtube
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1780 : 31 Август 2020, 09:22:34 »
Temkins, есть полностью доделанный сиквел.
а еще есть Piko Interractive, которые не хотят ее выпускать.

от нефиг делать я сел писать эмуляцию сетевухи для ZT :)

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2328
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1781 : 31 Август 2020, 22:14:51 »
пятая часть по менеджменту звуков ZT :)


Оффлайн AuAurora

  • Пользователь
  • Сообщений: 1496
  • Мур
    • Youtube
    • Просмотр профиля
Re: [SMD] Хак Zero Tolerance
« Ответ #1782 : 01 Сентябрь 2020, 18:07:03 »
SeregaZ, прикооооольно

Оффлайн perfect_genius

  • Пользователь
  • Сообщений: 1055
    • ВКонтакте
    • Steam
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1783 : 02 Сентябрь 2020, 22:43:55 »
Segaman, именно эмуляцию? Модифицируешь эмулятор и он будет выводить два экрана рядом?

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2328
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1784 : 03 Сентябрь 2020, 08:45:55 »
ZT же по другому принципу играется :) два картриджа, две приставки, два телевизора и кабель, соединяющий гнезда второго игрока на приставке. то есть каждый в своем экране играет. два экрана рядом на одном телевизоре не потянет. тут один экран то и то не на весь экран сделано, чтоб снизить нагрузки на просчет графики. а два сразу рисовать приставка повесится :) через меднафен предполагалось будет возможность играть через интернет.

Оффлайн perfect_genius

  • Пользователь
  • Сообщений: 1055
    • ВКонтакте
    • Steam
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1785 : 03 Сентябрь 2020, 21:11:03 »
SeregaZ, я про то, как сделали для расширения экрана Дюны - два соединённых экрана эмулятора.

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2328
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1786 : 05 Сентябрь 2020, 13:10:03 »
Zero Tolerance Sound Manager 0.5.3
вроде бы все. добавил чо хотел по звуку. но думаю еще было бы не плохо графику в третьей вкладке :) шрифты редактировать, и экраны. сейчас в архиве выкидыватель тайлов для ZT приложен. но он пока только с одним экраном работает - который "Потрачено", то есть "Deseased" - когда агент погибает. но им же я помница экран титульника правил, если знать где и что. и так-же может быть еще какие экраны можно. но я их не искал. (следует в окошках карты и тайл сета указать файлы из папки и после выделить каждый файл в окошках - произойдет отрисовка надписи. можно еще нажать кнопку демо - программа докинет экран агента и надпись сверху, чтоб видеть как она будет выглядеть в итоге. так-же есть кнопка вставки изображения. то есть можно в пейнте подрисовать и вставить в программу. но будет вписывать в существующую палитру - там 3 или 4 цвета всего чтоль.)

из нового, что уже вышло после видео, это пункт опции трека, при клике правой кнопкой мышки:


в чем суть? как я уже говорил - не во всех треках есть бесконечное зацикливание мелодии, то есть команда loop $7F для дорожек. в результате на этапе можно играть час, а мелодия 2 минуты проиграет и все. дальше будет тишина. то есть как в Дюне например - там мелодии сменяют друг друга. в ZT же одна и та-же мелодия весь этап крутится. сделать мелодию бесконечной можно двумя путями - добавить этот самый loop $7F во всех дорожках мелодии - это сложно все четко расчитать, чтобы никакого рассинхрона не было. либо взять самую длинную дорожку и втулить туда команду play сам на себя. то есть доигрывая мелодию до конца, она стартует сама себя с начала. в результате одна и та-же мелодия будет играть весь этап, как это было в оригинале ZT. вот с помощью этого меню можно сделать такое зацикливание, добавив номер трека сам на себя. то есть кликаем правой на 009 мелодии, добавляем плей 9, применяем и все. песня у нас будет играть бесконечно. но в принципе этим же плеем можно добиться сменяемости мелодии. типа у нас три трека добавлено 009, 010, 011. в 009 добавляем плей 10, в 10 треке добавляем команду плей 11, в 11 треке плей 9. в результате мелодии, доигрывая до конца, будут передавать так сказать проигрывание следующему треку. хотя я думаю все-таки лучше следовать оригиналу - одной мелодии весь этап.

так-же там есть пункт, сигнализирующий о наличии сэмплов в треке. напомню - использовать сэмплы нельзя, потому что у нас тупо нет свободных слотов в банке сэмплов, а во вторых - сэмплы в песне и сэмплы в игре типа: шотган коллектед - будут перебивать друг друга.


здесь ром, переведенный в 2002 некой конторой Падис. но предполагалось что можно добавить английский вариант и его лопатить. но я так это дело и забросил :) но в принципе можно использовать любой ром, просто адреса нужно будет изменить в асм файле на нужные.


дальше - поскольку я в ромхакинге разбираюсь весьма отдаленно - на выходе получается гавнохак, не рационально использующий место в роме. дело в том, что музыка лежит в роме, так сказать, по середине. и самый жирный банк - это банк сэмплов. сейчас я добавляю копию нового банка сэмплов в конец рома, увеличивая его размер. а на место оригинального банка сэмплов - пишу новые банки мелодий. но все равно куча неиспользуемого места в роме остается. ну не умею я двигать данные :) в смысле те, что идут после банков GEMS. с Зомбями, жрущими соседей было в этом плане проще. там банки как раз в конце рома лежали и там можно было извращаться как угодно. а тут в середине.
« Последнее редактирование: 14 Сентябрь 2020, 12:11:58 от SeregaZ »

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2328
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1787 : 08 Октябрь 2020, 18:55:06 »
кто знает чем кончилось? в смысле в том месте иде Сегаман делал эмуляцию игры по сети для ZT. я чот упустил сей момент... столько времени прошло :) может уже готово?

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3237
  • Пол: Мужской
  • Blast Processing!
    • Twitter
    • Youtube
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1788 : 09 Октябрь 2020, 13:27:49 »
SeregaZ, у меня навернулось все что могло:
дрова, вайн, проги (все перечисленное из-за отключения света)
на работе дедлайн, сижу в том числе и по 24 часов в сутки.
мне щас тупо максимально не до этого :)
а как только появится время придется весь софт снова настраивать :D
так что много времени пройдет прежде чем я вернусь в обычное русло :)

Оффлайн Lucas [32]

  • Пользователь
  • Сообщений: 479
  • Пол: Мужской
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1789 : 09 Октябрь 2020, 13:43:45 »
SeregaZ, у меня навернулось все что могло:
дрова, вайн, проги (все перечисленное из-за отключения света)
Очередное доказательство того, что на разработке эмулятора сетевой игры лежит некое проклятье.
« Последнее редактирование: 09 Октябрь 2020, 16:13:37 от Lucas [32] »

Оффлайн AuAurora

  • Пользователь
  • Сообщений: 1496
  • Мур
    • Youtube
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1790 : 09 Октябрь 2020, 13:55:27 »
Ага  :lol:

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2328
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1791 : 09 Октябрь 2020, 14:58:52 »
да не, не может быть. я ж знаю у него на мониторе наклеены три иконки - они оберегают :) просто совпадение.

Оффлайн perfect_genius

  • Пользователь
  • Сообщений: 1055
    • ВКонтакте
    • Steam
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1792 : 14 Октябрь 2020, 01:19:57 »
Я плотно взялся за изучение того, как Сега опрашивает контроллеры - просто офигел от сложности. Если на NES и SNES достаточно посмотреть на биты нажатых кнопок в определённых байтах в памяти, то на Сеге в байте надо долбить один бит, выпрашивая у геймпада нажатые кнопки через соседние биты. Чтобы опросить XYZ и Mode требуется отправить около 6 сигналов на этот бит, что долго (для трёхнопочного достаточно два), поэтому они и не задействованы ни в кооперативе ни в сингле, скорее всего.
Становится всё интереснее, хочется посмотреть как всё это выглядит в коде.  Когда начну разбираться - отпишусь.
« Последнее редактирование: 14 Октябрь 2020, 21:25:03 от perfect_genius »

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2328
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1793 : 14 Октябрь 2020, 08:36:40 »
я вроде что-то такое читал... что типа изначально делали 3 кнопочный контроллер. следовательно вся архитектура была запилена именно под 3... а тут бац и решили что 3 кнопки мало. начали выкручиваться, чтобы вместить в старую отработанную технологию 6 кнопок.

с подобными костылями сталкивался еще со ZX Спектрумом :) там всего 1 кнопка была. а действий то хочется побольше. там что-то выходило типа зажал кнопку и стрелкой кудалибо. таким образом можно было производить чуть больше действий, чем давала одна кнопка.

Оффлайн perfect_genius

  • Пользователь
  • Сообщений: 1055
    • ВКонтакте
    • Steam
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1794 : 14 Октябрь 2020, 09:59:09 »
В случае с Сегой больше похоже не на костыль, а на поддержку дополнительного оборудования кроме стандартного трёхкнопочного геймпада. Ведь к Сеге можно подключить и мышь, пистолеты, модемы, дополнительные геймпады и т.д.  Т.е. "новые" 4 кнопки шестикнопочного геймпада распознаются приставкой как дополнительное устройство. А за костыль можно считать кнопку Mode: большинство игр опрашивают геймпад один раз за кадр игры, но некоторые таки больше, отчего они получают уже значения кнопок XYZ, из-за чего всё работают некорректно. И вот из-за них сделали кнопку Mode - режим трёхкнопочного геймпада, всегда отдающего значения стандартных кнопок (чтобы переключиться в этот режим надо удерживать Mode до включения приставки). В детстве попадалась только одна такая игра - какая-то из Golden Axe в многоигровке. В ней за передвижение отвечали XYZ и Mode, отчего было почти неиграбельно, пробовал даже играть наклонив геймпад. Знал бы я тогда как включать имитацию трёхкнопочного...
В те времена вообще удивлялся тому, как мало игр поддерживает верхние кнопки, а Mode вообще практически нигде не задействован.

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3237
  • Пол: Мужской
  • Blast Processing!
    • Twitter
    • Youtube
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1795 : 14 Октябрь 2020, 10:22:05 »
perfect_genius,
lea     ($FFFFFF80).w,a1         ;адрес сохранения состояния кнопок джойстика
lea     ($A10003).l,a0           ;установить чтение первого джойстика
jsr     +                 ;прочесть
;после чтения будет получено 4 байта данных
;первый байт будет содержать кнопки ZYXM
;второй байт - UDLRBCAS
;третий байт - нажатие (press) ZYXM
;четвёртый байт - нажатие UDLRBCAS
addq.w #2,a0                    ;установить чтение второго джойстика (он уже будут прочитан в адрес на 4 больше предыдущего)
+:
; чистим регистры
clr.l   d0
clr.l   d1

; запрос в порт геймпада
move.b   #$40,(a0)

; ожидание ответа
nop
nop

; получить ответ
move.b   (a0),d1

; оставить только нужные биты
andi.b   #$3F,d1

; запрос в порт геймпада
move.b   #$00,(a0)

;ожидание ответа
nop
nop

; получить ответ
move.b   (a0),d0

; оставить только нужные биты
and.b   #$30,d0

;сместить биты дважды влево (все равно что умножить число на 4)
rol.b   #2,d0

;совместить два ответа вместе
or.b   d0,d1

;серия запросов в порт без прочтения ответа
move.b   #$40,(a0)
nop
nop
move.b   #$00,(a0)
nop
nop
move.b   #$40,(a0)
nop
nop
move.b   #$00,(a0)
nop
nop
move.b   #$40,(a0)
nop
nop

; получить ответ
move.b   (a0),d0

; оставить нужные биты
andi.b   #$0F,d0

; обратить биты (xor)
eor.b   #$0F,d0

; сместить биты влево (все равно что помножить на 256)
rol.l   #8,d0

; совместить с предыдущим опросом кнопок
or.w   d1,d0

; хоть убей - не помню что эта команда делает
not.b   d0

; запрос в порт без получения ответа
move.b   #$40,(a0)

; здесь уже просчитываются значения предыдущих нажатий, чтобы выявить только что нажатые
; например только что был нажат старт и тп

move.w  (a1),d1
eor.w   d0,d1
;bclr    #11,d1   ;disable mode
;bclr    #11,d0
move.w  d0,(a1)+
and.w   d0,d1
move.w  d1,(a1)+
rts

Оффлайн perfect_genius

  • Пользователь
  • Сообщений: 1055
    • ВКонтакте
    • Steam
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1796 : 14 Октябрь 2020, 21:16:23 »
Подумал, что ты выложил код из исходников игры :)
Даже удивился, что игра таки опрашивала XYZM.
Цитата
хоть убей - не помню что эта команда делает
      not.b   d0
Просто инвертирует биты.


Добавлено позже:
Не хотел настолько углубляться, больше ожидал, что всё это дилетантское безобразие увидят специалисты и расскажут что к чему. Но что-то нет терпения их ждать, но есть сильное любопытство, поэтому продолжил расследование.
Изучая техдоки по МегаДрайву заметил, что значения нажатых кнопок и вообще все порты находятся прямо в адресном пространстве Z80 - отдельном процессоре, отвечающем за звук. Странно же? Поэтому сразу вспомнил, что Z80 использовался в предыдущей консоли как центральный процессор - в Master System, и что в МегаДрайве была обратная совместимость с ней (через Power Base Converter). Глянул на её порты, и действительно - точно такие входы для геймпада! А у геймпада только крестовина и две кнопки, даже Старта нет. Всё стало ясно теперь, почему только эти кнопки и доступны в памяти при первом обращении и почему надо опрашивать остальные у геймпада через дополнительный бит. Это ж память в памяти в памяти [тут картинка с Ди Каприо из "Начала"] - ячейки контроллера в памяти Z80, которая в свою очередь в памяти Сеги. Скорее всего и геймпады SMS без проблем работают на МегаДрайве, и геймпады МегаДрайва работают на SMS, +на МегаДрайве в режиме обратной совместимости с SMS. В этом случае двумя кнопками геймпада SMS на геймпаде МегаДрайва будут выступать кнопки B и C. Шестикнопочный надо переводить в трёхкнопочный, по идее. Кроссовместимость, обратно-передняя совместимость... не знаю как такое назвать.
Скорее всего вся эта информация где-то есть, и может даже на русском, но я не встречал и Википедия ничего не знает.
В итоге SNES даёт нажатые кнопки сразу в двух байтах ("просто, как два байта прочитать" ^_^), а у Сеги из-за обратной совместимости всё сложно как аппаратно, так и программно.
Так что предположение, что
типа изначально делали 3 кнопочный контроллер. следовательно вся архитектура была запилена именно под 3
не подтверждается. Изначально всё рассчитывалось на крестовину и две кнопки :lol:



Добавлено позже:
Нашёл сайт фанатов SMS (:debile:), там на форуме подтвердилось всё: и геймпады МегаДрайва работают на SMS в большинстве игр, и кнопки именно B и C, и в трёхкнопочный режим переводить надо. Т.е. выходит, что кнопка Mode не только из-за 16-битных игр Сеги, но и 8-битных предыдущего поколения.

Добавлено позже:
Ого, не знал, что игра вышла в августе в Стиме :ohmy:
Просто эмулятор, мультиплеера нет, сами игры удалили с официального сайта. Похоже, свободно их распространять теперь не выйдет, только патчами :)
« Последнее редактирование: 14 Октябрь 2020, 22:23:24 от perfect_genius »

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1289
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1797 : 15 Октябрь 2020, 14:16:04 »
Ого, не знал, что игра вышла в августе в Стиме
Просто эмулятор, мультиплеера нет, сами игры удалили с официального сайта. Похоже, свободно их распространять теперь не выйдет, только патчами
Ого! Не знал, спасибо:)

Оффлайн megavolt85

  • Пользователь
  • Сообщений: 1464
  • Пол: Мужской
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1798 : 15 Октябрь 2020, 21:39:42 »
; хоть убей - не помню что эта команда делает
      not.b   d0

в самом джое все кнопки подтянуты к плюсу, а при нажатии замыкаются на землю, нажатая кнопка это лог 0, отпущенная лог 1, но привычней в коде использовать 1 нажато, 0 отпущено, для этого и нужна not.b, она инвертирует все биты, те что были 1 становятся нулями, а что были нулями станут единицами

Оффлайн Yoti

  • Пользователь
  • Сообщений: 4330
  • Пол: Мужской
  • Не тро-гай ме-ня
    • Steam
    • Просмотр профиля
[SMD] Хак Zero Tolerance
« Ответ #1799 : 15 Октябрь 2020, 23:49:43 »
Скорее всего вся эта информация где-то есть, и может даже на русском
На каждом углу.