Madness
#01
17 февраля 2001 |
|
Глюкодром - глюки определения наличия мышки - актуальная процедура от Stranger'a.
╔════════════────────────────════════════╗ ╠═══─── ГЛЮКОДРОМ ───═══╣ ╚════════════────────────────════════════╝ (c) STRANGER/ASM Corp. "Где эта сволочь?" Михалыч 'Особенности нацио- нальной охоты' Вот,блин,сижу я за клавой и думаю,как же все-таки хреново,когда программы пишут лю- ди,которум абсолютно похеру удобство поль- зователя!Мышь на спеке уже как минимум три года,а до сих пор мало кто научился корре- ктно определять ее наличие. Потому как су- ществуют компы,на которых при наличии от- сутствия факта присутствия данного девайса из портов,соответствующих ему читается всякий бред,и если опрос мыши не отключи- ть,то юзер поимеет абсолютно нерабочую прогу,а автор поимеет массу абсолютно не- цензурных выражений в свой адрес (от этого юзера).Вот и я сегодня попэтался запустить некую программу под названием "BRED_512".- Не подумайте чего плохого,таким загадочным именем автор окрестил редактор уровней для "ЧЕРНОГО ВОРОНА".Так вот,количество нерво- в,истраченных при этом,можно сравнить то- лько с количеством водки, выпитой за весь прошлый год (о чем это я?) Соответственно- ,количество нецензурных выражений в адрес автора этого BRED-а ( :) ) превысило все разумные пределы.А проблема заключалась в вышеописанном глюке,которого,кстати,избе- жать не просто, а очень просто.Это делает- ся примерно так: LD B,100 ;можно и меньше LOOP PUSH BC LD BC,#FADF IN A,(C) CPL AND %00000111 CALL NZ,M_OFF POP BC DJNZ LOOP ... M_OFF ;здесь проца,отключающая ;опрос мыши Итого 17 байт - и проблемы как не быва- ло!Нечто подобное используется в оболочке нашего журнала.Ставится данная мулька в самом начале программы, отрабатывает перед запуском основного блока.А еще лучше пос- тавить ее уже в LOADER-е,тогда процеДУРА (;->>) M_OFF должна дать понять загрузчи- ку,что после распаковки нужно отключить опрос мыши. Теперь для обладателей особо могучего интеллекта кратко обьясню суть вышеприве- денной проги.Все просто - она 100 раз оп- рашивает порт кнопок мыши, и если хотя бы раз считается число отличное от #FF, то это свидетельствует о нестабильности пор- тов мыши,и опрос ее будет жестоко (безжа- лостно,варварски, ну прямо-таки зверски) отключен. Предполагается,что юзверь не бу- дет давить на кнопки во время загрузки (ну а если будет - в награду поимеет отключен- ную мышу - нехрен пальцы совать куда не следует и когда не следует!).Кстати, число 100 (#64,или %01100100) взято (как вы ду- маете,откуда?) естественно с потолка. При желании число повторов цикла можно устано- вить любым - от 2 до хрен знает каких ве- личин,хоть до 10^64 (если терпения хватит организовывать такое количество циклов).О- дин раз опрашивать не рекомендуется - мо- жет получиться так, что как раз в этот мо- мент из порта считается #FF,и будут глюки- .Если у кого-то не хватает фантазии предс- тавить,как выглядит данный глюк,то могу кратко его описать (ударение на А!!!): ку- рсор безумно скачет повсему экрану,включая все попадающие под него иконки,и абсолютно не реагирует на попытки им управлять. Кто-то может заявить:"повесил бы себе мышу,и решил бы все проблемы,и нефиг народ грузить своей бредятиной...". Отвечу: дело не в том,есть у меня мышь или нет,я-то мы- шу во всех имеющихся паталогических прогах уже зарезал.Дело в том, что я не единстве- нный с таким извращенным компом и без мы- ши.Наверняка есть люди,которым тоже хочет- ся поредактить Черную Ворону,а сломать чу- жую прогу они не могут в силу своего бла- городного воспитания ( ;) ).Добавить нес- колько лишних байт в программу не так уж сложно,зачем же портить нервы тем немногим пользователям,которые еще остались (я на- деюсь...) на спектруме... Приведенная выше процедура испытана на всех доступных мне компах с мышой и без нее,и имеет 100% гарантию рабочести. Може- т,это и не шедевр,но она работает, причем надежно. А упомянутый "BRED_512" я уже сломал (sorry!!!),мышу прирезал,осталось решить, пускать ее в свободное распространение или нет (все равно она в инете уже давно лежит - тащи-не хочу). И еще одно.Кто мне может обьяснить, по- чему REAL COMMANDER испортил мне диск с моими любимыми музонами,которые я так дол- го и упорно выTASKивал из всего,что можно? Эта хреновина почему-то посчитала диск пу- стым,и скопнула 500 секторов, начиная с самого начала диска,забив на то, что в ка- талоге на тот момент было около трех деся- тков файлов.Короче,половина музонов поле- тели коту под хвост.Может,это я дурак,и просто нифига не умею обращаться с этим командером??? У кого есть что сказать по этому поводу,пишите. Адрес в разделе "АВ- ТОРЫ". <END OF TEXT>
Другие статьи номера:
Похожие статьи:
В этот день... 21 ноября