Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: программирование на языке Assembler


Информационный Канал Subscribe.Ru

RusFAQ.ru: программирование на языке Assembler

Выпуск № 503
от 13.03.2003, 21:00

Администратор:
Имя: Калашников О.А.
URL: Информационный ресурс
ICQ: 68951340
Россия, Москва
О рассылке:
Задано вопросов: 2765
Отправлено ответов: 8251
Активность: 298.4 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе][Обсудить на форуме]


 Список экспертов, ответы которых опубликованы в данном выпуске

akul
Статус: Доверительный
Общий рейтинг: 118.47
[Подробней >>]
Joy
Статус: Опытный
Общий рейтинг: 127.55
[Подробней >>]
Bob Johnson
Статус: Профессиональный
Общий рейтинг: 150.21
URL: Программирование
[Подробней >>]
 
Александр
Статус: Начальный
Общий рейтинг: 103.88
[Подробней >>]
Dark_Lord
Статус: Профессиональный
Общий рейтинг: 116.36
[Подробней >>]
ASMодей
Статус: Профессиональный
Общий рейтинг: 116.77
[Подробней >>]
 
Kostyan
Статус: Доверительный
Общий рейтинг: 114.03
[Подробней >>]
baldr
Статус: Профессиональный
Общий рейтинг: 113.57
URL: Сайт об ОС DOS. Всем, кто любит эту ОС!
[Подробней >>]
DiGiT[old]
Статус: Профессиональный
Общий рейтинг: 110.58
[Подробней >>]
 
Igoryk
Статус: Профессиональный
Общий рейтинг: 130.45
URL: IgorykSoft
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 2733. Уважаемые эксперты подскажите пожалуйста как тестировать компьютерное железо? Я слышал что можно по... (ответов: 2)
Вопрос № 2734. Здравствуй Bob Jhonson! Дело в том, что ты меня немного не правильно понял по поводу АЦП. То, что мн... (ответов: 1)
Вопрос № 2736. ][айте! есть в комлекте доса debug такой, так вот, там мона делать так debug<... (ответов: 1)
Вопрос № 2737. Здравствуйте, уважаемые эксперты! В программе есть диалог и мне нужно, чтобы этот диалог можно было ... (ответов: 2)
Вопрос № 2738. Добрый день, Господа эксперты !!! Недавно разбирался с кодом программы, которая выводит разные линии... (ответов: 3)
Вопрос № 2739. Здравствуйте Эксперты! У меня к вам такая просьба, посмотрите пожалуйста почему программа не работае... (ответов: 5)
Вопрос № 2740. Здравствуйте эксперты. Проблема такая: не могу установить модем в ноутбуку. -------------- ОС: Win 9... (ответов: 2)
Вопрос № 2741. Здравствуйте эксперты. Помогите избавиться от такой ошибки: при работа с формами в IE6.0 русский шри... (ответов: 1)
Вопрос № 2742. Всем привет. Объясните, плз, мне такую ситуацию... Есть комп. Celeron 433, мать ASUS KN97-X (редкое ... (ответов: 4)
Вопрос № 2743. Уважаемые эксперты, здравствуйте! Есть программа, которая работает только под WINDOWS, но в режиме D... (ответов: 4)

Вопросов: 10, ответов: 25


 Вопрос № 2733

Уважаемые эксперты подскажите пожалуйста как тестировать
компьютерное железо?
Я слышал что можно получить код ошибки которая произошла на мат-плате, как это зделать?



Вопрос отправлен: 08.03.2003, 12:42
Отправитель: Vlad

[Следующий вопрос >>] [Список вопросов]

Отвечает akul

Здравствуйте, Vlad!
Купить или сделать самому железку которая будет перехватывать вывод в порт 80h. Это так называемые POST коды. Железка желательно PCI иначе не удасться перехватывать ошибки до настройки PCI-ISA Bridge. Описания POST кодов найдешь в интернете для твоего биоса.


Ответ отправлен: 10.03.2003, 09:46
Отправитель: akul


Отвечает Joy

Здравствуйте, Vlad!
А зачем так сложно. качаешь программу диагности с любого сервака и проверяешь! Разве так не проще?

Ответ отправлен: 10.03.2003, 09:47
Отправитель: Joy


 Вопрос № 2734

Здравствуй Bob Jhonson!
Дело в том, что ты меня немного не правильно понял по поводу АЦП. То, что мне нужно было списать с кассеты - эт совсем другая опера :) у меня есть устройство, дающее постоянный сигнал, который нужно превратить в цифру (сигнал даёт один измерительный прибор - по результатам измерений). Так вот я подумал, что это можно сделать через звуковую карту. А можт всё-таки есть способ считать цифрорвой код сигнала, подаваемого на line-in?..
С уважением, 86 a5 ad ef.



Вопрос отправлен: 08.03.2003, 17:35
Отправитель: 86 a5 ad ef

[Следующий вопрос >>] [Список вопросов]

Отвечает Bob Johnson

Доброе время суток, 86 a5 ad ef!
Если устройство выдает медленно изменяющийся во времени сигнал (т.е. меньше 20 гц), то звуковая карта может его не воспринять (если есть ёмкость на входе), но это следует проверить, может быть все будет нормально.
Если карта не возмет постоянный сигнал, тогда надо будет делать свой АЦП...
> А можт всё-таки есть способ считать цифрорвой код сигнала, подаваемого на line-in?..
Ты имеешь ввиду однократное чтение сигнала? Нет, звуковая карта предназначена немного не для этого, и позволяет считывать сигнал блоками, но ты можешь использовать только первое его значение.


Ответ отправлен: 11.03.2003, 15:24
Отправитель: Bob Johnson


 Вопрос № 2736

][айте!
есть в комлекте доса debug такой, так вот,
там мона делать так debug<где в файле file1.txt содержитси примерно следующее:
=CUT=
n ee.rar
0100 53 0A C0 75 1A ED 12 52 51 53 E8 28 01 0A C0 75
0200 3B 71 2E C7 06 91 E3 47 71 2E C7 06 97 E3 6C 71
RCX
20
W
Q
=CUT=
ни и вот, это надо HEXредактором всё вырезать и последнюю
цифру самому считать, есть ли такие программы, которые автоматически генерируют такой вот фаял-лист??



Вопрос отправлен: 09.03.2003, 09:38
Отправитель: Zensor

[Следующий вопрос >>] [Список вопросов]

Отвечает Александр

Добрый день, Zensor!
Единственное, что мне непонятно, так это смысл данной операции. Цифра из регистра CX в данном случае просто длина загруженного файла. Если тебе надо что-то автоматизировать при помощи debug, то используй следующую командную строку:
debug file_to_open < to_do > dump
Соответственно file_to_open это файл который ты зачем то грузишь командой внутри дебага, а to_do файл с набором команд, как будто ты их вводишь в интерактивном режиме. Для того чтобы дебаг корректно завершился не забудь пустую строку после команды Q.
P.S. Забавно сразу после 100 идёт 200, а не 110 :-)


Приложение:

Ответ отправлен: 13.03.2003, 08:51
Отправитель: Александр


 Вопрос № 2737

Здравствуйте, уважаемые эксперты!
В программе есть диалог и мне нужно, чтобы этот диалог можно было перемещать не только за заголовок, но и за всю клиентскую часть.
В приложении обработчик сообщения WM_NCHITTEST из диалоговой процедуры, в WinXP это работает, но в Win98 работает не правильно.
Как еще можно решить данную задачу?
Спасибо.


Приложение:


Вопрос отправлен: 09.03.2003, 10:56
Отправитель: Sledge (sledge@nm.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает Dark_Lord

Здравствуйте, Sledge!
Почему не использовать WM_RBUTTONDOWN!? После нажатия кнопки выставь флаг о нажатии и лови перемещения мыши до сообщения WM_RBUTTONUP!

Ответ отправлен: 09.03.2003, 16:24
Отправитель: Dark_Lord


Отвечает Bob Johnson

Доброе время суток, Sledge!
Перемещай окно сам, когда ему приходит WM_LBUTTONDOWN и WM_MOUSEMOVE - вызывай MoveWindow, например.


Ответ отправлен: 11.03.2003, 15:25
Отправитель: Bob Johnson


 Вопрос № 2738

Добрый день, Господа эксперты !!!
Недавно разбирался с кодом программы, которая выводит разные линии на экран и наткнулся на такую вещь - программирование видеоконтроллера. Вопрос:
Что это такое? Может кто объяснит или ссылку даст на информацию. Заранее спасибо!!!



Вопрос отправлен: 09.03.2003, 13:13
Отправитель: Олег (kirillovoleg@narod.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает Joy

Доброе время суток, Олег!
У видеоадаптера есть несколько контроллеров, таких как "Контроллер Элекстронно-лучевой трубки" и т.п. Есть очень мого литературы по их программированию (через порты в частности). Если нужна, то www.codenet.ru, http://www.gelos.ru/upload/BSP/bsp_03.zip, http://www.gelos.ru/upload/BSP/bsp_21.zip
Ну а если чета не понимаешь, то joy@stsland.ru

Ответ отправлен: 10.03.2003, 09:47
Отправитель: Joy


Отвечает ASMодей

Доброе время суток, Олег!
Под програмированием видеоконтроллера понимается записывание
в его регистры каких-то значений, вследствие чего он меняет режимы
своей работы. Кстати, насколько я знаю, этим давно уже никто не
пользуется, так как современные видеокарты позволяют работать с
видеопамятью без всякого программирования видеоконтроллера.


Ответ отправлен: 09.03.2003, 15:43
Отправитель: ASMодей


Отвечает Kostyan

Добрый день, Олег!
У Зубкова почитай.


Ответ отправлен: 09.03.2003, 16:06
Отправитель: Kostyan


 Вопрос № 2739

Здравствуйте Эксперты!
У меня к вам такая просьба, посмотрите пожалуйста почему программа не работает(см. приложение)
Программа должна выводить текст в графическом режиме. Прога вистет. Наверное проблемы со стеком.
Объасните плиз.
ToshibA


Приложение:


Вопрос отправлен: 09.03.2003, 13:21
Отправитель: ToshibA (toshiba@nm.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает Joy

Приветствую Вас, ToshibA!
Если проблема только со стеком, то замени ret на int 20h. Если не начнет работать, то проблема не со стеком. А код твой настолько замудренный.... разбираться даже не хочется :(

Ответ отправлен: 10.03.2003, 11:30
Отправитель: Joy


Отвечает Dark_Lord

Здравствуйте, ToshibA!
Неправильно происходит адресация к переменным в стеке, в начале надо в bp sp записать, и надо обратить внимание на то, что в стек помещается слово, а не байт, поэтому самый лёгкий подход смотри в приложении

Приложение:

Ответ отправлен: 09.03.2003, 16:31
Отправитель: Dark_Lord


Отвечает ASMодей

Приветствую Вас, ToshibA!
Естественно она не будет работать: перед вызовом процедуры
ты запихиваешь в стек 4 слова, а вынимать их оттуда должны
как раз те 4 команды POP CX, которые ты закомментировал.
И еще совет на будущее: прежде чем убирать из чужой программы
что-то, на твой взгляд ненужное, десять раз подумай - может
все-таки это здесь нужно?


Ответ отправлен: 09.03.2003, 15:43
Отправитель: ASMодей


Отвечает Kostyan

Приветствую Вас, ToshibA!
>Программа должна выводить текст в графическом режиме.
Что бы вывести текст в графическом режиме - нужно в него переключиться. Например - функцией 0 прерывания 10h.
>Наверное проблемы со стеком.
Конечно проблемы, положил и не забрал. И виснет поэтому.
Пользуйся отладчиком!


Ответ отправлен: 09.03.2003, 16:05
Отправитель: Kostyan


Отвечает Александр

Добрый день, ToshibA!
Вижу 3 возможных проблемы/решения.
1. Выход из программы через ret.
2. Даже если ты раскоментируешь все 4 pop cx, то ты "абсолютно случайно" уничтожишь и адрес возврата. Так что один из pop cx - лишний.
3. Зачем так извращаться(3 pop cx), используй вместо них и ret одну команду ret 6. Возврат в программу, очистка стека от аргументов.


Ответ отправлен: 13.03.2003, 08:52
Отправитель: Александр


 Вопрос № 2740

Здравствуйте эксперты.
Проблема такая: не могу установить модем в ноутбуку.
--------------
ОС: Win 98 SE.
Модем внутренний, порт неизвестен:).
--------------
Помогите решить эту проблему, может софт какой есть по
диагностике оборудования...?
--------------
Ноутбук из бусурмании.



Вопрос отправлен: 09.03.2003, 13:46
Отправитель: kuper

[Следующий вопрос >>] [Список вопросов]

Отвечает baldr

Здравствуйте, kuper!
Есть такая интересная программка Astra. Она, хотя и для DOS, но постоянно обновляется
и определяет оборудование довольно хорошо.


Ответ отправлен: 09.03.2003, 22:35
Отправитель: baldr


Отвечает Joy

Здравствуйте, kuper!
А как ты пытался установить? Выньда пишет, что нашла неизвестное устройство? Если пишет, то вставляй драйвер, если не пишет....может он не работает? (погорел или еще чета)
Есть программы, которые анализируют конфигурацию компа. Найти их сможешь на любом бесплатном ресурсе (например www.download.ru). Их там великое множество.

Ответ отправлен: 10.03.2003, 09:30
Отправитель: Joy


 Вопрос № 2741

Здравствуйте эксперты.
Помогите избавиться от такой ошибки:
при работа с формами в IE6.0 русский
шрифт неправельно отображается, а
точнее взаместо русских букв какая-то
мутатень.
Пример:4@02AB2C9B5 M:A?5@BK! (это
слова "здравствуйте эксперты").
----------
Удачи... .



Вопрос отправлен: 09.03.2003, 15:56
Отправитель: kuper

[Следующий вопрос >>] [Список вопросов]

Отвечает Bob Johnson

Приветствую Вас, kuper!
Переустанови винды, iexporer, и все остальное.


Ответ отправлен: 11.03.2003, 15:25
Отправитель: Bob Johnson


 Вопрос № 2742

Всем привет.
Объясните, плз, мне такую ситуацию...
Есть комп. Celeron 433, мать ASUS KN97-X (редкое дерьмо, IMHO!), винт Fujitsu 1623d (кажется) на
1.7 Gb, памяти 24Мб (SIMM: 4x2+8x2), видеокарточка S3Trio64V+ (2Mb). Все остальное (сидюк,
звуковуха и шлейфы:) ) существенно не важны. Так вот, когда запускаю какие-нибудь программы,
чаще всего, игры, которые работают в защищенном режиме, используют SVGA графику и иногда
обращаются к винту, то при одном из таких обращений комп вешается нахрен и не реагирует ни
на что кроме Reset... :( При этом, перед зависанием пытается обратиться к винту,
производя на свет звуки, похожие на те, что они (винты) издают при появлении бэдов...
Бэдов нет - проверял недавно scandisk'ом. Стоит 98SE винда, которая тоже частенько глючит,
но не до такой степени - отделываемся BSoD и одновременным выполнением недопустимых
операций всеми запущенными прогами...
Я слышал, что такие видюхи, как у меня, имеют глючный BIOS, но ни проверить его, ни
перепрошить не могу, ибо нечем.
Также, грешу порой на память, ибо есть подозрение, что она битая, но тоже не знаю чем
проверить - ndiags от NU говорил, что все, мол, ОК...
Винт тоже не самый стабильный - фуджики часто, говорят, сыплются, но до сих пор нет ни
одного бэда и никаких непонятных ошибок, вроде тоже...
В общем, с таким железом,как говорил кто-то из великих, главное - чтобы количество
ошибок было четным: они друг друга компенсируют... Эта фигня у меня уже давно и даже есть
один положительный момент в этом - я практически перестал играть в игры... :))
Если кто объяснит мне в чем дело и посоветует что-нибудь кроме "замени железо", тот
получит от меня большое человеческое спасибо и уважение!



Вопрос отправлен: 09.03.2003, 17:54
Отправитель: baldr (baldr@pisem.net)

[Следующий вопрос >>] [Список вопросов]

Отвечает Joy

Приветствую Вас, baldr!
А у тебя выньда работает ровно? В любом случае грешить нужно на железо (если ты пробывал эти игры на другом компе). Могу посоветовать вынуть память (например две четверки) и попробывать. Кстати, у тебя вся память по парам одинаковая (производитель, тип, частота и т.п.). Если нет - то вот она и проблема. И все четыре модуля памяти должны быть одного типа. На видео грешить всетаки нельзя, потому что ее проблема скорей всего не приведет к обращению к винту. Ты кстати игры запускаешь из-под выньды? Если игры ДОСовские, то пробуй запустить из-под ДОСа. "Если ошибка повториться, то обратитесь к разработчику" :)

Ответ отправлен: 10.03.2003, 09:30
Отправитель: Joy


Отвечает Kostyan

Добрый день, baldr!
Может процессор греется?
Проверь куллер.


Ответ отправлен: 09.03.2003, 18:16
Отправитель: Kostyan


Отвечает DiGiT[old]

Доброе время суток, baldr!
Перестать играть в игры это прогресс. Я однажды перестал играть из за того что на моя тачка висла, из за настройки в биосе. И не жалею сейчас :)
А насчет проблемы, я так думаю это поганая S3 у меняесть два класса(вернее администрирую их), там стоит такое же дерьмо. Так вот оно глючит(выдает ошибку четности под виндой, что вполне приемлимо может подвесить прогу, являющуюся типа ядром которая не обрабатывает такие эксепшины), после того как 7 лет отработало. Причем ничего не сделаешь. Советую выбросить эту гадость и рублей за 100 купить что нить другое :))

Ответ отправлен: 11.03.2003, 07:18
Отправитель: DiGiT[old]


Отвечает Александр

Добрый день, baldr!
Не понимаю твоих разговоров про защищённый режим. Если ты запускаешь ДОСовские проги под виндой, то это вообще вечный источник глюков. Есть большое подозрение, что в твоём случае надо просто отключить использование DMA при работе с диском. Про источник звуков могу только догадываться(кто его знает как дерутся винт и видюха). Короче на такой системе не до роскошеств - выставь как можно больше настроек в состояние fail-safe, есть такая вкладочка устранение конфликтов, можно и 16-битный доступ к харду потерпеть, если поможет. Если чипсет известен - поставь драйвера. Ну и выкинь ты это железо :-) Только монитор и хард оставь. Хотя видюха тоже может пригодиться. А вот мамка, камень и память - в музей, для опытов. Кстати, а звука у тебя нет? Может это конфликт звука и харда, и тот и другой могут бороться за DMA.


Ответ отправлен: 13.03.2003, 08:52
Отправитель: Александр


 Вопрос № 2743

Уважаемые эксперты, здравствуйте!
Есть программа, которая работает только под WINDOWS, но в режиме DOS. (т.е. текстовый режим).
Программа спрашивает пароль. Необходимо послать этой программе пароль из другой программы.
Я сделал это через буфер клавиатуры (INT 16, функция 05h).
Проблема в том, что символы-то посылаются, а послать код кнопки ENTER не получается.
Как это можно исправить? Если можно с примерами. Спасибо.



Вопрос отправлен: 09.03.2003, 20:51
Отправитель: DoMY (batalion@knet.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает Kostyan

Приветствую Вас, DoMY!
Попробуй так (смотри приложение).

Приложение:

Ответ отправлен: 09.03.2003, 21:38
Отправитель: Kostyan


Отвечает Joy

Приветствую Вас, DoMY!
D>Есть программа, которая работает только под WINDOWS, но в режиме DOS. (т.е. текстовый режим).
Так програмка под ДОС или выньду? Если под выньду, то как ты можешь пользоваться int 16h? А если под ДОС, то почему она работает только под выньду? Ну если ты умудряешься послать символы, то в конце пошли еще и 0Dh.

Ответ отправлен: 10.03.2003, 09:29
Отправитель: Joy


Отвечает DiGiT[old]

Приветствую Вас, DoMY!
Что то я не врубаюсь. Как это программа под винды досовская, т.е. текстовая. Под дос могут быть и не текстовые проги. Во вторых вдруг ты под винды написал консольное приложение. Притом ты говоришь о зачатках IPC(межпроцессное взаимодействие), ты его не можешь реализовать в ОС в которой в лучшем случае это можно сделать через общую область памяти :)). Делай через файл самое оптимальное, так как у ДОС и виндов нет ничего общего, кроме файловой системы.
А вообще глупость какая-то :(

Ответ отправлен: 11.03.2003, 07:11
Отправитель: DiGiT[old]


Отвечает Igoryk

Здравствуйте, DoMY!
Нельзя путать режим консоли и режим DOSа. Если тебе нужно послать код под DOS, то посылай код 0Dh, если под Win, то сымитируй командой keybd_event.

Ответ отправлен: 13.03.2003, 14:04
Отправитель: Igoryk



Форма отправки вопроса

Внимание!
Форма может работать некорректно в почтовых программах "Microsoft Outlook" и "Microsoft Outlook Express". В программе The Bat! подобные формы не работают вообще!
После нажатия на кнопку "Отправить", будет открыто второе окно. Заметьте, что в некоторых браузерах могут стоять запреты на открытие других окон, а также "чрезмерное" кэширование данных, при этом факт отправки Вашего вопроса стоит под сомнением.
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

© 2002 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


Приложение (если необходимо):


Получить ответов:


 Выбор рассылки

Программисту
Assembler (34)
C / C++ (29)
Perl (6)
Delphi (15)
Pascal (19)
Basic / VBA (11)
Java / JavaScript (10)
PHP (7)
MySQL / MSSQL (6)
Пользователю
Windows 95/98/Me (32)
Windows NT/2000/XP (25)
"Железо" (29)
Поиск информации (14)
Администратору
Windows NT/2000/XP (12)
Linux / Unix (13)
Юристу
Гражданское право (7)
Семейное право (3)
Трудовое право (4)
КоАП (4)

Отправить вопрос всем экспертам выбранной рассылки.




Яндекс цитирования

© 2002 Россия, Москва. Авторское право: RusFAQ.ru


http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное