Рассылка закрыта
При закрытии подписчики были переданы в рассылку "RFpro.ru: Ассемблер? Это просто! Учимся программировать" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
RusFAQ.ru: программирование на языке Assembler
Информационный Канал Subscribe.Ru |
RusFAQ.ru: программирование на языке Assembler
Выпуск № 493
от 25.02.2003, 07:20
Администратор: Имя: Калашников О.А. URL: Информационный ресурс ICQ: 68951340 Россия, Москва |
О рассылке: Задано вопросов: 2650 Отправлено ответов: 7956 Активность: 300.2 %
|
Список экспертов, ответы которых опубликованы в данном выпуске |
Maverick Статус: Профессиональный Общий рейтинг: 139.28 URL: Задачи по ассемблеру Телефон: 89039415024 (BeeLine GSM) [Подробней >>] |
Broken Sword Статус: Профессиональный Общий рейтинг: 125.89 URL: моя рассылка по Protected Mode [Подробней >>] |
vitya Статус: Профессиональный Общий рейтинг: 107.89 [Подробней >>] |
Ayl Статус: Профессиональный Общий рейтинг: 118.37 [Подробней >>] |
Joy Статус: Доверительный Общий рейтинг: 121.27 [Подробней >>] |
DiGiT[old] Статус: Профессиональный Общий рейтинг: 109.9 [Подробней >>] |
ASMодей Статус: Профессиональный Общий рейтинг: 117.33 [Подробней >>] |
baldr Статус: Профессиональный Общий рейтинг: 113.86 URL: Сайт об ОС DOS. Всем, кто любит эту ОС! [Подробней >>] |
keleb-glin Статус: Опытный Общий рейтинг: 110.91 [Подробней >>] |
Igoryk Статус: Профессиональный Общий рейтинг: 137.04 URL: IgorykSoft [Подробней >>] |
masquer Статус: Профессиональный Общий рейтинг: 145.01 [Подробней >>] |
Andrew Vext Статус: Опытный Общий рейтинг: 107.29 [Подробней >>] |
Краткий перечень вопросов |
Вопрос № 2622. Привет. У меня глупый вопрос как работать с мышью? На каком она порте, как отловить нажатие кнопочек... (ответов: 10)
Вопрос № 2623. Доброе время суток, читатели и эксперты! Приятно снова видеть rusfaq живым! Так что всех с новым год... (ответов: 2)
Вопрос № 2624. Здравствуйте, товарищи эксперты! Есть машина Sun Blade 100 на SPARK прецессоре. Есть дока по архитек... (ответов: 1)
Вопрос № 2625. Здравствуйте, Посмотрите где проблема - программа на данной процедуре вылетает. Текст этой процедуры... (ответов: 1)
Вопрос № 2626. Здравствуйте эксперты! У меня к вам такой вопрос: как мне в графическом режиме 640x480 - 16 цветов(1... (ответов: 4)
Вопрос № 2627. Недавно наткнулся на рассылку "Ассемблер - это просто". Откуда можно скачать все выпуски р... (ответов: 3)
Вопрос № 2628. Привет всем !! Если этот вопрос пройдет, значит русфак работает... :)) Раз уж это спам, то задам хот... (ответов: 6)
Вопросов: 7, ответов: 27
Вопрос № 2622 |
Привет.
У меня глупый вопрос как работать с мышью? На каком она порте, как отловить нажатие кнопочек, перемещение и текущие координаты... Или где про это можно почитать... Пишу под Dos.
За ранее спасибо.
Вопрос отправлен: 20.02.2003, 10:47
Отправитель: Mystique
[Следующий вопрос >>] [Список вопросов]
Отвечает Maverick
Добрый день, Mystique!
Следующий раз оставляй мыло, куда док-ю слать.
Гляди в приложении.
Приложение:
Ответ отправлен: 20.02.2003, 11:08
Отправитель: Maverick
Отвечает Broken Sword
Добрый день, Mystique!
Даже не представляешь как ты обрадовал всех экспертов своим глупым вопросом! int 31 по моему
Ответ отправлен: 20.02.2003, 11:14
Отправитель: Broken Sword
Отвечает vitya
Добрый день, Mystique!
под ДОС есть такое замечательное прерывание 33h Вся работа идет через него. Параметры передаешь через ax.
Ответ отправлен: 20.02.2003, 12:08
Отправитель: vitya
Отвечает Ayl
Добрый день, Mystique!
Лучше всего с мышой работать через прерывание 33h. Смотри его описания.
Ответ отправлен: 20.02.2003, 13:03
Отправитель: Ayl
Отвечает Joy
Добрый день, Mystique!
Никакой порт отлавливать не надо. Просто под ДОС загрузи мышиный драйвер и пользуйся ДОСовским int 33h. Почитать про это можно в справочниках. Если нужен таково - пиши joy@stsland.ru (только у меня он на англицком). А вкраце смотри в приложении.
Приложение:
Ответ отправлен: 20.02.2003, 14:00
Отправитель: Joy
Отвечает DiGiT[old]
Добрый день, Mystique!
Под дос прерывание int 33h.
А вообще мышь может быть подсоединена разными интерфейсами: через COM порт , PS/2 и USB и др. Соответсвенно слушаешь прерывания от этих устройств(Универсально не тока под ДОС :) )
Ответ отправлен: 21.02.2003, 07:44
Отправитель: DiGiT[old]
Отвечает ASMодей
Приветствую Вас, Mystique!
Если работать с мышью в DOS, то можно использовать прерывание INT 33h,
но это возможно только при загруженном драйвере (типа mouse.com).
Если же драйвера нет или его нужно написать, то тогда с мышью,
подключаемой к COM-порту можно работать через этот последовательный порт.
При этом мышь при передвижении или нажатии кнопки посылает через этот порт
некоторые пакеты байтов по определенному протоколу. Причем этих протоколов
существует несколько видов (4-байтовый, 3-байтовый). Если нужно, пиши,
у меня есть дока по всем этим протоколам.
Ответ отправлен: 21.02.2003, 16:36
Отправитель: ASMодей
Отвечает baldr
Здравствуйте, Mystique!
Если хочешь пример, то jmp next иначе - ret. (странное условие, не так ли? :))
next:
Драйвер мыши с исходниками на асме ты можешь найти на моем сайте.
http://www.dospage.by.ru.
Называется он CtMouse.
Ответ отправлен: 21.02.2003, 21:59
Отправитель: baldr
Отвечает keleb-glin
Здравствуйте, Mystique!
Вообще мышь генерит то преривание, на каком порту сидит, но... также мышью занимается 33h-е прерывание. Я про него многого не знаю, однако там есть всякие полезные функции, которые 100% работают при наличии драйвера мыши. 33h - известное прерывание. Про него можно прочесть в любом подходящем справочнике.
Ответ отправлен: 21.02.2003, 22:01
Отправитель: keleb-glin
Отвечает Igoryk
Здравствуйте, Mystique!
При программировании под DOS для управления мышью используется прерывание int 33h. Вот параметры, которые могут Вам пригодиться:
AX=0 - инициализация мыши.
AX=1 - показать курсор.
AX=2 - спрятать курсор.
AX=3 - определить состояние мыши:
на выходе:
BX - бит 0 - нажата левая кнопка
BX - бит 1 - нажата правая кнопка
BX - бит 2 - нажата средняя кнопка
CX - X-координата
DX - Y-координата
Ответ отправлен: 22.02.2003, 14:53
Отправитель: Igoryk
Вопрос № 2623 |
Доброе время суток, читатели и эксперты!
Приятно снова видеть rusfaq живым!
Так что всех с новым годом ... (хостинга на majordomo, конечно)!!!
Вопрос отправлен: 20.02.2003, 12:14
Отправитель: Bob Johnson (BobJohn@NewMail.ru)
[Следующий вопрос >>] [Список вопросов]
Отвечает Maverick
Привет и тебе, Bob Johnson!
Так что же это было то?
Я то поначалу подумал, что новую систему ставят...
Ответ отправлен: 20.02.2003, 13:30
Отправитель: Maverick
Отвечает Igoryk
Приветствую Вас, Bob Johnson!
Мне тоже приятно!
Ответ отправлен: 22.02.2003, 14:53
Отправитель: Igoryk
Вопрос № 2624 |
Здравствуйте, товарищи эксперты!
Есть машина Sun Blade 100 на SPARK прецессоре. Есть дока по архитектуре и самому асему и про его аргументы коммандной строки. Но =( В СИСТЕМЕ НЕТУ САМОГО АССЕМБЛЕРА =( тут стоит SUN OS UNIX.
1) Где можно достать программу ассемблер AS. или её аналоги под вышеупомянутую ось? (на sun.com ничё нету...)
2) Можно ли выдрать этот ассемблер из C/C++ forte, диски которого имеются? (ну тоесть чтоб было что-то ml.exe)
3) Если вышеперечисленое исключается, то ведь можно писать в машинных кодах - но где взять hex editor & ELF linker???
Если у кого есть в этом опыт, напишите pls названия программ которые мне понядобятся для данного дела, и по-возможности где скачать.
c уважением, Эдвард.
PS: ...и только тогда я понял вест тайный смысл фразы Broken Sworda о том, что "Intel проц представлят из себя шитано-перелатоного уродца" (c).
Вопрос отправлен: 20.02.2003, 12:15
Отправитель: Эдвард Самохвалов (zeleniy_kot@yahoo.com)
[Следующий вопрос >>] [Список вопросов]
Отвечает DiGiT[old]
Доброе время суток, Эдвард Самохвалов!
Ищи новую доку по программирования под sparc платформу. Я знаю о спарках то, что это RISC архитектура. А насчет асма должно быть укороченный набор команд(в сравнении с IA-32), ассемблер не выдерешь из компилера си.
Ответ отправлен: 21.02.2003, 07:41
Отправитель: DiGiT[old]
Вопрос № 2625 |
Здравствуйте,
Посмотрите где проблема - программа на данной процедуре вылетает. Текст этой процедуры полностью(входные данные только немного переделал - по тексту видно) взят из gdc_2002_amd.pdf - скачал с АМД-шного сайта, в другом ихнем руководстве по оптимизации кода есть аналогичный, слегка изменненный пример, - вылетает так же.
Спасибо
Приложение:
Вопрос отправлен: 20.02.2003, 20:25
Отправитель: Yuri Gordienko
[Следующий вопрос >>] [Список вопросов]
Отвечает masquer
Добрый день, Yuri Gordienko!
Ну, а где вылетает? Я, например, слишком ленивый, чтобы все это воспроизводить. Может сишный компилер не видит вызываемой функции, может еще что...
Ответ отправлен: 21.02.2003, 14:23
Отправитель: masquer
Вопрос № 2626 |
Здравствуйте эксперты!
У меня к вам такой вопрос: как мне в графическом режиме 640x480 - 16
цветов(12h) записать пикселы разных цветов напрямую в видио память?
Нет, выводить пикселы у меня получается(см. приложение), но они все
время БЕЛЫЕ! А мне-то нужно цветные!
P.S. Функциями BIOS я умею, но это больно тормозно(намек понятен?)
Заранее спасибо.
ToshibA
Приложение:
Вопрос отправлен: 20.02.2003, 21:20
Отправитель: ToshibA
[Следующий вопрос >>] [Список вопросов]
Отвечает Joy
Приветствую Вас, ToshibA!
УВАЖАЕМЫЕ ДАМЫ И ГОСПОДА! УВАЖАЕМЫЕ ПОДПИСЧИКИ! РЕБЯТА! ПОЛЬЗУЙТЕСЬ ПОЖАЛУЙСТА СПРАВОЧНИКАМИ! (крик отчаяния)
Ответ: В этом режиме не линейная модель памяти, поэтому таким способом в этом видеорежиме у тебя ничего не получится. Пример как получится в приложении (или функции БИОСа). А совет тебе такой: пользуйся режимом 13h, он линейный. Просто загоняешь байты начиная с адреса 0A000h и каждый байт это цвет, т.о. у нас палитра 256 цветов при разрешении 320*200.
Приложение:
Ответ отправлен: 21.02.2003, 12:14
Отправитель: Joy
Отвечает Ayl
Здравствуйте, ToshibA!
Вывел, блин! :-) Ты хоть одну книжку по программированию графики на EGA/VGA открывал? Там все черным по белому написано - и про организацию видеопамяти в виде 4-х плоскостей, и про регистр битовой маски для разрешения определенных точек, и про регистры установки/сброса и разрешения оного, и про регистр сдвига...
И про 4 режима записи (0-3). Правда, про режим записи 3 я читал только у Майкла Абраша, но это и не важно.
В приложении процедурка вывода пиксела в режиме записи 2, ри котором не требуется программирование регистра разрешения установки/сброса и регистра установки/сброса.
Для использования этой процедуры нужно подготовить регистры:
ES = 0a000h - сегмент видеопамяти
BX - смещение в видеобуфере байта, в котором содержится пиксел (BX = (640 * Y + X) shr 3)
AL - цвет устанавливаемой точки (0-15)
CL - маска для доступа к пикселю (CL = 80h shr (X and 7))
Приложение:
Ответ отправлен: 21.02.2003, 12:16
Отправитель: Ayl
Отвечает ASMодей
Приветствую Вас, ToshibA!
Чтобы выводить цветные пикселы в этом режиме, нужно программить
видеоконтроллер через порты. Там довольно сложная схема, несколько
режимов работы, использование нескольких видов масок, так что
если нужно могу скинуть документацию.
Ответ отправлен: 21.02.2003, 16:37
Отправитель: ASMодей
Отвечает keleb-glin
Здравствуйте, ToshibA!
Всё дело в том, что режим 16 цветов отличается следующей особенностью. Видеопамять разделена на 4 "страницы", каждому пикселю соответствует 4 бита - по одному с каждой страницы ( на соответствующих положениях ). Т.е. тебе постоянно прийдётся переключаться.
пример:
out 3ceh, 0005h ;подготовка к работе
out 3c4h, n ;0 стр. n=0102h
;1 стр. n=0202h
;2 стр. n=0402h
;3 стр. n=0802h
;тут - запись в видеопамять по 0a000h. Заметь, в каждом ;байте старшие биты соответствуют более "ранним" пикселям
out 3c4h, 0f02h ;кончили (работу)
Ответ отправлен: 22.02.2003, 18:45
Отправитель: keleb-glin
Вопрос № 2627 |
Недавно наткнулся на рассылку "Ассемблер - это просто".
Откуда можно скачать все выпуски разом? + RusFAQ.ru: программирование на языке Assembler???
Дайте ссылку пожалуйста. А то в первых выпусках приводится
адрес oleg77.newmail.ru - не работает :-(
Вопрос отправлен: 21.02.2003, 01:43
Отправитель: Victor Buznikov
[Следующий вопрос >>] [Список вопросов]
Отвечает Maverick
Здравствуйте, Victor Buznikov!
По винде на субкрайбе.
По досу на странице Bob Jonsona:
http://www.bobjohnson.nm.ru/
Ответ отправлен: 21.02.2003, 09:02
Отправитель: Maverick
Отвечает Joy
Приветствую Вас, Victor Buznikov!
1. С Сабскрайба (ссылка внизу рассылки)
2. С сайта Боба Джонсона (ссылка вверху рассылки)
Ответ отправлен: 21.02.2003, 10:05
Отправитель: Joy
Отвечает Igoryk
Доброе время суток, Victor Buznikov!
С сайта Боба Джонсона.
Ответ отправлен: 22.02.2003, 14:53
Отправитель: Igoryk
Вопрос № 2628 |
Привет всем !!
Если этот вопрос пройдет, значит русфак работает... :))
Раз уж это спам, то задам хоть какой-нить вопрос во имя оживления... В общем как вы оцениваете отставание России в Computer Science(не мого другого слова найти)
Вопрос отправлен: 21.02.2003, 07:13
Отправитель: DiGiT
[Следующий вопрос >>] [Список вопросов]
Отвечает Maverick
Приветствую Вас, DiGiT!
О-о-о, гигантское.
По другому и быть не может.
Все забугровые разработки появляются у нас через неск-ко лет, вследствии чего мы не можем учится на их ошибкак вовремя.
Ответ отправлен: 21.02.2003, 09:03
Отправитель: Maverick
Отвечает Joy
Добрый день, DiGiT!
Вот блин, еще один. Случайно не ты задавал вопрос "Почему эксперты этой расслыки не хотят чтобы в армии программеров на АССМе прибыло"!?
Ответ на твой вопрос: Да ни как! Если ты считаешь что Россия отстала, то у тебя просто нет верной информации!
Ответ отправлен: 21.02.2003, 11:18
Отправитель: Joy
Отвечает Andrew Vext
Добрый день, DiGiT!
Раз уж это спам, то повышу рейтинг.
Никак. В Computer Science особого отставания я не вижу. Возможно, под этим термином мы понимаем разные вещи.
Ответ отправлен: 21.02.2003, 12:22
Отправитель: Andrew Vext
Отвечает masquer
Приветствую Вас, DiGiT!
А чего отстает? По-моему, как раз наоборот, Россия с Китаем на гребне волны :)
Ответ отправлен: 21.02.2003, 14:25
Отправитель: masquer
Отвечает baldr
Добрый день, DiGiT!
РусФАК заработал! :) А как мы забегали, а? ;-)
А слабо вопрос этот на форум закинуть? Там обсуждать удобнее буит...
А отставание - это еще с давних пор идет... И развал СССР только немного ему помог...
Надо было в свое время создавать СВОЙ процессор и железки для него. Допустим, писюку
была бы не альтернатива, но распространиться он мог хотя бы покруче маков! И дешевле был бы,
так что всяким конторам государственным и лабораториям досталось бы побольше!
Ответ отправлен: 21.02.2003, 21:59
Отправитель: baldr
Отвечает Igoryk
Здравствуйте, DiGiT!
Вопрос прошел! На мой взгляд Россия на нормальном уровне развития в компьютерном образовании. Именно на нормальном - не на высоком и не на низком. Просто кто хотел этим заниматься, тот занимался, кто не хотел - тот нет.
Ответ отправлен: 22.02.2003, 14:53
Отправитель: Igoryk
Форма отправки вопроса |
Форма может работать некорректно в почтовых программах "Microsoft Outlook" и "Microsoft Outlook Express". В программе The Bat! подобные формы не работают вообще!
После нажатия на кнопку "Отправить", будет открыто второе окно. Заметьте, что в некоторых браузерах могут стоять запреты на открытие других окон, а также "чрезмерное" кэширование данных, при этом факт отправки Вашего вопроса стоит под сомнением.
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.
© 2002 Команда RusFAQ.ru.
Вопрос и дополнение |
Ваш вопрос:
Приложение (если необходимо):
Получить ответов:
Выбор рассылки |
Программисту Assembler (32) C / C++ (24) Perl (2) Delphi (17) Pascal (21) Basic / VBA (10) Java / JavaScript (7) PHP (4) MySQL / MSSQL (3) |
Пользователю Windows 95/98/Me (31) Windows NT/2000/XP (23) "Железо" (27) Поиск информации (14) |
Администратору Windows NT/2000/XP (10) Linux / Unix (11) |
Юристу Гражданское право (7) Семейное право (4) Трудовое право (4) КоАП (4) |
Отправить вопрос всем экспертам выбранной рассылки.
© 2002 Россия, Москва. Авторское право: RusFAQ.ru |
http://subscribe.ru/
E-mail: ask@subscribe.ru |
Отписаться
Убрать рекламу |
В избранное | ||