Рассылка закрыта
При закрытии подписчики были переданы в рассылку "RFpro.ru: Ассемблер? Это просто! Учимся программировать" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
Ассемблер? Это просто! Учимся программировать (FAQ)
Ассемблер? Это просто! Учимся программировать (FAQ)
Выпуск N 150 |
Вопросы, которые поступили от подписчиков рассылки
"Ассемблер? Это просто! Учимся программировать"
Дата выхода: 2001-12-08
Вопрос №1746
здрасти, к вам можно? :)
Проблема собственно в отсутсвии нормальной доки...
в частности везде по инету в описаниях API красиво расписывают как той или иной ф-ции "передаются параметры... [чего-то там]" например of_Read, of_ReadWrite или of_Write.
так вот... о чем это я... все это конечно хорошо, но.
не подскажите где-нибудь доку где описан API с этими "параметрами", но не только в виде _Read, а и в виде циферок, которые я какбы передаю ф-ции...
потому как при отладке если я вижу
push 0000022
call [xxxxxxx] ; kernel32 -function '_lopen'
то сходу определить чего это _lopen сейчас для меня сделает сложновато. :)
вобщем надеюсь я не слишком прострастен... :)
PS: да... пробовал ходить на http://win32asm.newmail.ru/
.....узел не найден. Переехал куда-то?
PPS: Чуть не забыл - заранее спасибо. :)
Ответ
Здравствуйте, Hill!
Описание того, очем ты пишешь (для ассемблера) находится в файле windows.inc (во всяком случае у меня так). Где его взять не знаю. Но если хочешь могу скинуть. rar 150kb. Пиши.
Отправил эксперт: Andy Bitoff (http://bitoff.pisem.net - HomePage)
Эксперт отправил ответов (всего): 32
Экспертная группа: Общие вопросы по программированию на Ассемблере под Win32
Вопрос №1753
Какой Java-skript надо для того чтобы поставить кнопку, сделанную во флеше на сайт.заранее благодарна.
Ответ
Здравствуйте, Анна!
Никакой, дабы во Flash есть свой встроенный язык ActiveScript! Ежли нада описания, могу выслать!!!
Отправил эксперт: AllAddIn
Эксперт отправил ответов (всего): 14
Экспертная группа: Общие вопросы по программированию на Ассемблере под Win32
Вопрос №1754
Здравствуйте эксперты.
У меня не большая проблема:.. На работе имеются компы и довольно большое количество, но у них всех в BIOS закрыт диск А: и естественно, чтобы изменить конфигурация нужен пароль.
Вопрос следующий: можно ли добраться до диска каким-нибудь способом или возможно ли определить пароль BIOS.
PS: Стирание пароля путём очистки CMOS
полностью исключено.
Ответ
Здравствуйте, Михаил!
А, собственно, зачем это нужно? Я, в свое время, приложил немало усилий, что бы закрыть доступ к дисководам (на фирме). Раньше было большое колличество программ позволяющих определить пароль BIOS (что с этим сейчас я не в курсе). Если Вы системный администратор, подумайте о последствиях.
Отправил эксперт: Ivan
Эксперт отправил ответов (всего): 2
Экспертная группа: Пользовательская работа с Windows
Вопрос №1754
Здравствуйте эксперты.
У меня не большая проблема:.. На работе имеются компы и довольно большое количество, но у них всех в BIOS закрыт диск А: и естественно, чтобы изменить конфигурация нужен пароль.
Вопрос следующий: можно ли добраться до диска каким-нибудь способом или возможно ли определить пароль BIOS.
PS: Стирание пароля путём очистки CMOS
полностью исключено.
Ответ
Здравствуйте, Михаил!
Частенько случалось, когда нужно снять пароль на BIOS для изменения установок так, чтобы админ не узнал. Для AWARD BIOS до версии 4.51 сделать это довольно легко. Нужно ввести "универсальный" пароль, подходящий для данного BIOSа. Вот неполный список таких паролей (чувствительны к регистру, без кавычек): "AWARD_SW", "j262", "AWARD_WG", "ALFAROME", "BIOSTAR", "SKY_FOX", "01322222", "j256", "j322", "j09F", "ZBAAACA", "ZAAADA", "ZJAAADC", "TTPTHA", "lkwpeter", "KDD", "HLT", "SER", "h6BB", "TzqF", "g6PJ", "t0cH88", "toh2Dx", "1EAAh", "aPAf", "Syxz", "Woodj", "?award". Если же ни один из паролей не подходит, то остается воспользоваться стопроцентным методом: вытащить батарейку из материнской платы! Через некоторое время (от нескольких долей секунды и до недели (!) время, дата и заветный пароль сбросятся. :)))))))))
Отправил эксперт: Tiger (www.tigeer.narod.ru - Что-то вроде того)
Эксперт отправил ответов (всего): 2
Экспертная группа: Пользовательская работа с Windows
Вопрос №1747
вопрос следующего вида...
в уроке 13 (вирус) есть строка типа
jmp dword ptr cs:[Off_move] ; прыгаем куда переместили (фактически на след. строку, только уже в сегменте 0BF00h)
после выполнения которой изменяется адрес сегмента в регистре CS, я уже "сломал" шею, но разобраться ТАк и не могу. почему меняется адрес сегменте????
Ответ
Здравствуйте, Тимофей!
jmp dword ptr сs:[Off_move] - это косвенный межсегментный(!) дальний переход на... следующую строку (в твоем примере). А пара регистров CS:IP всегда содержит адрес команды, которая будет выполняться следующей. Соответственно и CS после джампа равен 0BF00h.
Отправил эксперт: ScientiaCupidus
Эксперт отправил ответов (всего): 2
Экспертная группа: Общие вопросы по программированию на Ассемблере под Win32
Вопрос №1754
Здравствуйте эксперты.
У меня не большая проблема:.. На работе имеются компы и довольно большое количество, но у них всех в BIOS закрыт диск А: и естественно, чтобы изменить конфигурация нужен пароль.
Вопрос следующий: можно ли добраться до диска каким-нибудь способом или возможно ли определить пароль BIOS.
PS: Стирание пароля путём очистки CMOS
полностью исключено.
Ответ
Здравствуйте, Михаил!
Как добраться до диска - не знаю, а насчет определить пароль - проверь почту...
Отправил эксперт: ScientiaCupidus
Эксперт отправил ответов (всего): 3
Экспертная группа: Пользовательская работа с Windows
Вопрос №1726
Здравствуйте!
Напишите пожалуйста как прочитать BPB(Bios parameters block)
Очень нужно!Горю! Лабу в универе здать нужно!
Всем заранее спасибо
Ответ
Здравствуйте, Николай!
Наверно поздно и некстати, но все же вроде лучше, чем ничего...
Итак, BIOS PARAMETER BLOCK... Перерыл буквально ВСЕ, нашел только структуру этого самого BPB (см. приложение). Специально во всем первом меге оперативы полез искать ну хоть что-то похожее на BPB, но ничего даже близкого по смыслу. Глядя на структуру, могу сказать, что имеет САМОЕ НЕПОСРЕДСТВЕННОЕ отношение к DRIVE PARAMETER BLOCK (!).
Дело в том, что в ДОС-е есть специальная 53 ф-ция 21h-прерывания:
INT 21 53-- - DOS 2+ internal - TRANSLATE BIOS PARAMETER BLOCK
TO DRIVE PARAM BLOCK
Inp.:
AH = 53h
DS:SI -> BIOS Parameter Block (see #01663)
ES:BP -> buffer for Drive Parameter Block
CX = signature 4558h ('EX') for FAT32 extended BPB/DPB
DX = signature 4152h ('AR') for FAT32 extended BPB/DPB
Return: ES:BP buffer filled
т.е. специальная трансляция из BPB в DPB
НО(!) это тебе ни к чему...
Находится еще одна функция...
INT 21 32-- - DOS 2+ - GET DOS DRIVE PARAMETER BLOCK FOR
SPECIFIC DRIVE
Inp.:
AH = 32h
DL = drive number (00h = default, 01h = A:, etc)
Return: AL = status
00h successful
DS:BX -> Drive Parameter Block (DPB) for specified
drive
FFh invalid or network drive
Это уже то что тебе нада. Так пойдешь на лабу и объяснишь, что, мол, так и так, BPB эквивалентно DPB (структуру см. в приложении после BPB)
и вот моя (твоя тобишь) прога (см. в приложении в самом конце), которая "читает" DPB, что эквивалентно BPB... ну вообщем главное чтоб препод не запутался :). Теперь, все что тебе нада - ткнуть его носом в DS:BX - каждый байтик расписан в приложении...
Приложение:
Отправил эксперт: Broken Sword
Эксперт отправил ответов (всего): 233
Экспертная группа: Пользовательская работа c DOS
Вопрос №1736
Хотулось бы высказаться, но нет времени потому буду кратор то что придумал Олег напоминает армию! Сначало дух потом дембель и т.д (да че уж армия везде где не вазьмись: начайник, за ним помошник начайника и т.д.). Что поделаеш такова жизнь... . Но хотелось бы чтоб все было свободно и просторно..., а тут на тебе и самая классная рассылка привратилась в хр** знает что. А еше спрашивают "почему люди не летают?", помойму в выпуске под N 147 ответ на этот вечный вопрос!
Ответ
Здравствуйте, Alex!
Б.я! Что ж это такое творится то?! (Я как всегда торможу - получил №147 4 числа проглядел только сейчас (7.12 0:34)). Я конечно не спорю, хозяин - барин, но помоему не стоит этого всего воротить. Не то что я о себе там забочусь - хотя по правде говоря обидно - почту я обчно получаю раз в день вечером и отвечаю уже не в первой десятке (ну конечно смотря какой вопрос), но это не говорит о том что мои ответы становятся хуже или я отвечаю "подглядывая" ответы других экспертов (помнится за все время что я в рассылке такое было пару раз и то я что то дополнял там). Собственно я думаю что не я один такой. Вот. Конечно в 30 то часов уложиться любой может, но вот надо ли всё это?! Если бы эксперты боролись бы за баллы (я не говорю что таких нет) то они бы всей толпой отвечали бы и на философские воросы Вал.Ика и на всякие межэкспертские переговоры.
Короче семь раз отмерь - один отрежь. А еще можно провести голосование (в первую очередь среди экспертов, а то ведь возьмут да и разбегутся) по поводу нужны ли все эти реформы или народ за анархию и всё такое.
Отправил эксперт: Painbringer (http://limanski.narod.ru - нечто наподобие домашней страницы)
Эксперт отправил ответов (всего): 258
Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS
Мой комментарий
Хорошо, друзья мои! Вижу, что дело преобретает серьезный оборот!
Давайте сделаем так:
Эта рассылка ("Ассемблер? Это просто! Учимся программировать (FAQ)") остается как есть. Ничего в ней не будет меняться. Я открываю еще одну рассылку "FAQ по Ассемблеру" или что-то вроде этого.
Как только новая система начинает работать, я сообщаю об этом в настоящей рассылке. Все желающие (как эксперты, так и подписчики) могут зарегистрироваться / подписаться. Если я дейстивтельно сделал "туфту", то прекращу это дело. Если нет - то обе рассылки продолжат свое существование. При этом, баллы, скорее всего, будут суммироваться экспертам, отвечающие на вопросы в обеих рассылках. А дальше время покажет...
Сразу отмечу, что премущества буду отдавать новой системе.
По многочисленным просьбам "суровые требования" к экспертам, имеющим статус "Начальный", будут снижены. Я еще подумаю, как...
Но, прежде, чем делать какие-то выводы, я бы посоветовал вам заглянуть сюда: http://www.kalashnikoff.ru/cgi-bin/Expert.cgi и попробовать зарегистрироваться в качестве эксперта. Думаю, что это будет лучше существующей системы...
Если не так - пишите!
Вопрос №1728
Здравствуйте эксперты.
Хочу задать вопрос,я знаю что к Windows он ни какого отношения не имеет.Просто я не знаю кому мне еще его задать.
Сильно меня не ругайте.Как в Linux поставить дрова,на модем.
Ответ
Здравствуйте, Max!
Напиши поподробнее (какой модем, дрова откуда и в каком они виде).
Отправил эксперт: Painbringer (http://limanski.narod.ru - нечто наподобие домашней страницы)
Эксперт отправил ответов (всего): 260
Экспертная группа: Пользовательская работа с Windows
Вопрос №1752
Hi!
Скажите плз. а что такое ActiveX с точки зрения API.
Ответ
Здравствуйте, Matpoc!
С точки зрения АПИ. В каком смысле. Почитай что такое АКТИВ ИХС. Там просто для реализации используется АПИ. А так это в общем свое АПИ, предоставляемое клиентам(сервером). Ведь про эту технологию не расскажешь в двух словах.
Отправил эксперт: DiGiT
Эксперт отправил ответов (всего): 123
Экспертная группа: Пользовательская работа с Windows
Вопрос №1756
Здравствуйте, уважаемые эксперты!
Num, Caps и Scroll lock'ами наморгался (спасибо задавшему и ответившим на данный вопрос), аж полегчало, но ненадолго, вдруг захотелось погудеть, ну не в смысле напиться, а системным динамиком. Заглянул в TechHelp, но наверное не вовремя т.к. ничего не нашел. Подскажите что в какой порт впереть "шоб аж загуло" , как задать тон и т.п., не дайте пропасть в этом мире.
Медленно сходящий с ума ламер ассемблера.
Ответ
Здравствуйте, Медленно сходящий с ума ламер ассемблера!
program speaker1;
uses crt;
const
speaker_port = $61;
var
portval : byte;
begin
portval := port[speaker_port] and $FC;
while not KeyPressed do
begin
port[speaker_port] := portval or 2;
delay(5);
port[speaker_port] := portval;
delay(5);
end;
ReadKey;
end.
В асм переводи сам, а вообще : http://www.softline.ru/products/Piter/5-8046-0137-7.asp
Отправил эксперт: DiGiT
Эксперт отправил ответов (всего): 125
Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS
Вопрос №1752
Hi!
Скажите плз. а что такое ActiveX с точки зрения API.
Ответ
Здравствуйте, Matpoc!
По-моему понятие ActiveX больше связано напрямую с ООП(объектно-ориентированным программированием). Так вот ActiveX -
это программный объект, использующийся в создании визуального интерфейса программ, и, соответственно, призванный облегчить дизайнерскую работу. Как любой объект, ActiveX-компонент может содержать свойства, процедуры, методы и функции (последние два понятия в большей степени относятся к VisualBasic). За примерами, думаю, далеко ходить не надо - это стандартные кнопки, меню, полосы прокрутки, панели управления, текстовые поля... Используется ActiveX в языках среднего и высокого уровня C++, Delphi, VBasic.
Отправил эксперт: DivX
Эксперт отправил ответов (всего): 71
Экспертная группа: Пользовательская работа с Windows
Вопрос №1756
Здравствуйте, уважаемые эксперты!
Num, Caps и Scroll lock'ами наморгался (спасибо задавшему и ответившим на данный вопрос), аж полегчало, но ненадолго, вдруг захотелось погудеть, ну не в смысле напиться, а системным динамиком. Заглянул в TechHelp, но наверное не вовремя т.к. ничего не нашел. Подскажите что в какой порт впереть "шоб аж загуло" , как задать тон и т.п., не дайте пропасть в этом мире.
Медленно сходящий с ума ламер ассемблера.
Ответ
Здравствуйте, Медленно сходящий с ума ламер ассемблера!
Прямое программирование динамика.
Второй способ основан на прямом обращении к динамику. Это
можно сделать, изменяя первый бит порта 61h. Если бит равен
нулю, то на динамик подается одно напряжение, если единице, то
другое. Включая и выключая этот бит с определенной частотой,
можно получить звук этой же частоты. Чтобы получить звук
определенной частоты, нужно обращаться к этому биту, как
минимум, в два раза чаще: чтобы включить бит и чтобы его
выключить. При программировании второго канала таймера, на
динамик с определенной частотой подаются короткие импульсы, а
с помощью этого метода можно сделать так, чтобы ноль и единица
были равны по времени, это будет хорошо заметно на низких
частотах. Динамик однобитный, то есть можно поставить два
уровня - минимум и максимум. В жизни огибающая имеет плавный
переход от минимального к максимальному. Конечно, одним битом
ее не воспроизведешь, но, меняя уровень в несколько десятков раз
чаще периода огибающей, можно сделать так, что общее время,
когда на динамике сигнал есть, будет пропорционально уровню
огибающей в этом месте (типа того, как в графике текстурами
делаются полутона).
Этот способ дает больше возможностей, но требует много
машинного времени и более сложной настройки на быстродействие
компьютера, чем при программировании второго канала таймера, а
также если он прерывается, то тон становится менее чистым.
Следующая программа вызывает звук с помощью обращения к
первому биту порта 61h. Эта программа не настраивается на
быстродействие компьютера: тон и длина звука будут зависеть от
быстродействия компьютера, на котором ее запускают.
Приложение:
Отправил эксперт: Covax
Эксперт отправил ответов (всего): 9
Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS
Вопрос №1756
Здравствуйте, уважаемые эксперты!
Num, Caps и Scroll lock'ами наморгался (спасибо задавшему и ответившим на данный вопрос), аж полегчало, но ненадолго, вдруг захотелось погудеть, ну не в смысле напиться, а системным динамиком. Заглянул в TechHelp, но наверное не вовремя т.к. ничего не нашел. Подскажите что в какой порт впереть "шоб аж загуло" , как задать тон и т.п., не дайте пропасть в этом мире.
Медленно сходящий с ума ламер ассемблера.
Ответ
Здравствуйте, Медленно сходящий с ума ламер ассемблера!
В принципе, можно управлять звуком включая-выключая ток в спикере, но это не интересно. Мы будем программировать второй канал таймера, связанный с динамиком.
42h - фиксатор второго канала таймера (меняюешь фиксатор - меняется частота звука)
43h - регистр команд, где должно быть управляющее слово - параметры работы таймера
61h - нулевой бит мы используем для вкл/выкл второго канала таймера
Приложение:
Отправил эксперт: ScientiaCupidus
Эксперт отправил ответов (всего): 4
Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS
Вопрос №1755
Здравствуйте эксперты!
Сейчас разбираюсь с одной программой, но дело не в ней, а в отладичке TD5.0. Он не хочет переходить по смещению 001b,002b и т.д.
Если в GOTO написать "ds:001b", то он переходит на "ds:0001", а если написать "ds:002b","ds:003b", то он вообще выдает ошибку синтаксиса!
Что это, а самое главное, можно ли от этого избавиться?
Это был первый вопрос, а второй то же по TD, если в ДОС-е загрузить TD и поводить мышкой по экрану, то в некоторых местах после проведения мыши появляются закрашенные каким-либо цветом прямоугольники, а то и вообще мигающие, работать это мешает, можно ли от этого избавиться? Работать без мышки в TD мне жутко неудобно, поэтому прошу не предлагать не загружать драйвер мыши!:-)
Ответ
Здравствуйте, ILYA D.!
Ну во-первых, переходы на ds:001b и ds:0001h - это по сути переходы на один и тот же адрес, ведь 1b=1h. Во-вторых, b - означает binary - двоичный, то есть используются только цифры 0 и 1! Так как ты можешь писать 002b или 003b? Нет в двоичной системе цифр 2, 3 и т.д. Пиши просто ds:0003
Отправил эксперт: ScientiaCupidus
Эксперт отправил ответов (всего): 5
Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS
Вопрос №1755
Здравствуйте эксперты!
Сейчас разбираюсь с одной программой, но дело не в ней, а в отладичке TD5.0. Он не хочет переходить по смещению 001b,002b и т.д.
Если в GOTO написать "ds:001b", то он переходит на "ds:0001", а если написать "ds:002b","ds:003b", то он вообще выдает ошибку синтаксиса!
Что это, а самое главное, можно ли от этого избавиться?
Это был первый вопрос, а второй то же по TD, если в ДОС-е загрузить TD и поводить мышкой по экрану, то в некоторых местах после проведения мыши появляются закрашенные каким-либо цветом прямоугольники, а то и вообще мигающие, работать это мешает, можно ли от этого избавиться? Работать без мышки в TD мне жутко неудобно, поэтому прошу не предлагать не загружать драйвер мыши!:-)
Ответ
Здравствуйте, ILYA D.!
002b-шестнадцатеричный адрес, его писать надо 002bh-перейдет на 002b
Хотя может и 0x002b-пробуй, у меня сейчас нету дебаггера под рукой.
А cимвол b после адреса говорит TD отом, что адрес в двоичной форме, а цифр типа 2,3, итд в двоичной записи нет...
По мыше не встречался с проблемой, поэтому дам стандартный ответ - найди другие дрова для нее
Отправил эксперт: Sensey
Эксперт отправил ответов (всего): 222
Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS
Вопрос №1755
Здравствуйте эксперты!
Сейчас разбираюсь с одной программой, но дело не в ней, а в отладичке TD5.0. Он не хочет переходить по смещению 001b,002b и т.д.
Если в GOTO написать "ds:001b", то он переходит на "ds:0001", а если написать "ds:002b","ds:003b", то он вообще выдает ошибку синтаксиса!
Что это, а самое главное, можно ли от этого избавиться?
Это был первый вопрос, а второй то же по TD, если в ДОС-е загрузить TD и поводить мышкой по экрану, то в некоторых местах после проведения мыши появляются закрашенные каким-либо цветом прямоугольники, а то и вообще мигающие, работать это мешает, можно ли от этого избавиться? Работать без мышки в TD мне жутко неудобно, поэтому прошу не предлагать не загружать драйвер мыши!:-)
Ответ
Здравствуйте, ILYA D.!
Прошу прощения, но что это за число: 002b? Вообще-то, b - это префикс числа в двоичной с.с. А там могут использоваться только цифры 0 и 1. Может быть, все-таки нужна 16-тиричная с.с.? Тогда префикс должен быть указан h. Т.е. задаете ds:002h, ds:003h - и все работает. А в 2-й с.с. это должно быть указано так: ds:010b, ds:011b и т.д.
Отправил эксперт: Ayl
Эксперт отправил ответов (всего): 100
Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS
Вопрос №1761
Всем привет!
Короче, не могу никак втыкнуть....
Страница видеопамяти и цветовой слой видеопамяти - это одно и то же, или нет? Вот пишут, например, что таблица знакогенератора грузится во второй цветовой слой видеопамяти. Это где? Если я переключусь на вторую страницу видеопамяти, я увижу эту таблицу или нет? В общем я тут с экраном работаю, программой Вас пока грузить не хочу, проясните, пожалуйста...
С уважением Вал.Ик.
Ответ
Здравствуйте, Вал.Ик.!
Нет, это не одно и тоже. В EGA/VGA видеопамять разделена на плоскости (это слово мне нравится больше, нежели цветовой слой). Плоскостей всего 4 (в SVGA может быть больше). Каждая плоскость имеет размер 64К. В текстовых режимых используется только до 16К видеопамяти для сохранения экрана (например, в режиме 3 (80*25, 16 цветов - 4000 байт)), соответственно, имеется как минимум 4 видеостраницы. Причем все они размещаются в одной плоскости.
Знакогенератор размещается во второй плоскости, причем способен поддерживать до 512 описаний символов. Вторые 256 символов получаются с использованием атрибута яркости/мерцания фона.
Так что переключившись на 2-ю страницу видеопамяти получить доступ к знакогенератору не получится. А вот если установить графический режим с установленным старшим битом (т.е. без очистки плоскостей), то можество отображенных точек и будет обусловлено загруженным знакогенератором. Правда, в графическом режиме от него толку никакого нет.
Отправил эксперт: Ayl
Эксперт отправил ответов (всего): 101
Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS
Вопрос №1762
ещ_: как заставить С++ Builder 5.0 выдавать РУССКИЕ буквы вместо белиберды при наборе?
Буду очень признателен.
Ответ
Здравствуйте, Anton!
Tool->Editor Options->Display
Поставь шрифт Courier New Cyr или другой русскоязычный
Отправил эксперт: Sheriff
Эксперт отправил ответов (всего): 3
Экспертная группа: Пользовательская работа с Windows
Вопрос №1762
Кто-нибудь знает, как поставить знак копирайта в окошке на Visual C++? И ещ_: как заставить С++ Builder 5.0 выдавать РУССКИЕ буквы вместо белиберды при наборе?
Буду очень признателен.
Ответ
Здравствуйте, Anton!
В C++ Builder по умолчанию установлен шрифт Courier New. Попробуйте заменить его на Courier New Cyr.
Отправил эксперт: Ivan
Эксперт отправил ответов (всего): 3
Экспертная группа: Пользовательская работа с Windows
Вопрос №1761
Всем привет!
Короче, не могу никак втыкнуть....
Страница видеопамяти и цветовой слой видеопамяти - это одно и то же, или нет? Вот пишут, например, что таблица знакогенератора грузится во второй цветовой слой видеопамяти. Это где? Если я переключусь на вторую страницу видеопамяти, я увижу эту таблицу или нет? В общем я тут с экраном работаю, программой Вас пока грузить не хочу, проясните, пожалуйста...
С уважением Вал.Ик.
Ответ
Здравствуйте, Вал.Ик.! Нет это не одно и тоже! Т.к. видеопамяти обычно гораздо больше чем надо для хранения данных для данного видеорежима (к примеру 13h 320x200x1 (1 байт на цвет, всего 256 цветов) = 64000б (так что 32мб вашей GeForce хватит с лихвой ;) то остальная память разбивается на видео страницы ( кстати для 13h аппаратной поддержки видеостраниц нет :( ) но активной может быть лишь 1 (а остальные обычно используются обычно для анимации и прочей белеберды) видеослой это ситсема отображения цветов в 16 цветных (по моему только там) режимах, только это помоему нужно только при работе с видеоадаптером через порты VGA DAC.
Отправил эксперт: Bart Simpson
Эксперт отправил ответов (всего): 25
Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS
Вопрос №1763
Здравствуйте!
Не подскажете, как можно из досовской программы узнать запущена она под чистым Досом или под Windows, например как в NDD (Norton Disk Doctor for DOS).
Заранее благодарен.
Ответ
Здравствуйте, PashaS!
Просто напиши так:
mov ax,1600h
int 2Fh
test al,3Fh
jz UnderWindows
; Здесь полноценная работа (не под Windows)
UnderWindows:
; Здесь работа под Windows
А вообще - читай TechHelp - там столько интересного!
Отправил эксперт: Артём Шегеда (shegeda.chat.ru - Личная страничка - ничего особенного)
Эксперт отправил ответов (всего): 1
Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS
Вопрос №1762
Кто-нибудь знает, как поставить знак копирайта в окошке на Visual C++? И ещ_: как заставить С++ Builder 5.0 выдавать РУССКИЕ буквы вместо белиберды при наборе?
Буду очень признателен.
Ответ
Здравствуйте, Anton!
Насчет C++ Builder:
Может кто-то потер у вас шрифт Courner New в папке windows\fonts. Удалял сам - глюк действительно наблюдался.
После установки в окне C++ по умолчанию используется шрифт Courner New. В меню Tools->Editor Options->Display->Editor Font попробуйте выбрать другой шрифт из списка. Может быть просто эти настройки кем-то были изменены.
Можно попробовать запустить программу установки и выбрать пункт Registry Settings Only при установке для установки вообще всех настроек реестра по умолчанию (позволяет также не переставлять C++ после переустановки Windows).
Если это было сразу после установки С++, может быть просто "левый" установочный диск.
Отправил эксперт: kosstik
Эксперт отправил ответов (всего): 1
Экспертная группа: Пользовательская работа с Windows
Вопрос №1763
Здравствуйте!
Не подскажете, как можно из досовской программы узнать запущена она под чистым Досом или под Windows, например как в NDD (Norton Disk Doctor for DOS).
Заранее благодарен.
Ответ
Здравствуйте, PashaS! По прерыванию мультиплексора. Какие при этом рег. должны быть не помню :( Но в доке по Dos Navigator'у про это что то было написано)
Отправил эксперт: Bart Simpson
Эксперт отправил ответов (всего): 26
Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS
Вопрос №1765
гДПЮБЯРБСИРЕ ЩЙЯОЕПРШ, НЯНАЕММН Broken Sword!
ъ НОЪРЭ ОН ОНБНДС ЛШЬЙХ Б TD.
нРБЕР ЩЙЯОЕПРЮ Broken Sword "дПЮИБЕП ЛШЬХ РСР МЕ ОПХ ВЕЛ. щРН БЯЕ БХДЕНЙЮПРЮ. еЯХ НМЮ AGP Х БННАЫЕ ЕЯКХ ХГ ОНД БХМДНБ - РН РСР ДЕКН ЛСРНПМНЕ..."
с ЛЕМЪ БХДЧУЮ AGP. рЮЙ Ъ МЕ ОНМЪК, ЛНФМН КХ ЩРН ЙЮЙ-РН ХЯОПЮБХРЭ ХКХ МЕР Х ЕЯКХ ЛНФМН РН ЙЮЙ? гЮПЮМЕЕ ЯОЮЯХАН ГЮ КЧАСЧ ОНЛНЫЭ!
Ответ
еЯКХ ДПЮИБЕП ЛХЬЙХ РСР ЕМОПХВЕЛ - РН ЛМ ЕХМРЕПЕЯМН: ЙЮЙЮЪ С РЕАЪ няЭ ? оПНЯР НЪ ВЮЯР НБЯРПЕВЮК РЮЙСЧ аюцС Б кХМНКЕСЛЕ.
Отправил эксперт: K.A. NiCK
Эксперт отправил ответов (всего): 151
Экспертная группа: нАЫХЕ БНОПНЯШ ОН ОПНЦПЮЛЛХПНБЮМХЧ МЮ юЯЯЕЛАКЕПЕ ОНД DOS
Вопрос №1764
Здравствуйте эксперты!!!
Спасибо, что ответили на мой вопрос, про пaроли BIOS. Но мне нужно маленькое уточнение!!! Если я буду вводить стандартные (некоторые называют инженерные) пароли BIOS и они откроют доступ, то при этом, что произойдет с паролем администратора, будет ли он стерт или изменён??? То есть, мне нужно, что бы об этом ни кто не узнал, иначе я буду иметь неприятные разговоры с начальством. Работа с диском А: будет выглядеть следующим образом. Когда нужно делаю его доступным, а после работы закрываю обратно и всем хорошо, и все довольны.
Ответ
Здравствуйте, Михаил!
Никто не догадается (если установленный пароль не менять). По крайней мере когда я так вводил никто ничего не заподозрил.
Отправил эксперт: DaM
Эксперт отправил ответов (всего): 6
Экспертная группа: Пользовательская работа с Windows
Вопрос №1765
Здравствуйте эксперты, особенно Broken Sword!
Я опять по поводу мышки в TD.
Ответ эксперта Broken Sword "Драйвер мыши тут не при чем. Это все видеокарта. Еси она AGP и вообще если из под виндов - то тут дело муторное..."
У меня видюха AGP. Так я не понял, можно ли это как-то исправить или нет и если можно то как? Заранее спасибо за любую помощь!
Ответ
Здравствуй ILYA D.
0. Если у тебя проблемы с "миганием квадратиков" ТОЛЬКО в TD 5.0, то дальше ни в коем случае не читай!!!
1. Зря ты все же решил читать дальше! ;)
Для начала лезь в BIOS. Установи все таким манером:
Video BIOS shadowing : DISABLED
Video BIOS cacheable : DISABLED
xxxxx - xxxxx Shadow : ALL DISABLED
Init Display First : AGP
Assign IRQ for VGA : ENABLED
PCI/VGA palette snoop : DISABLED (!!!)
AGP aperture size : Объем твоей оперативы/2
AGP master 1 WS write : DISABLED
AGP master 1 WS read : DISABLED
PCI Concurrency : ENABLED
PCI master 0 WS write : DISABLED
System BIOS cacheable : DISABLED
Video RAM cacheable : DISABLED
особенно обрати внимание на PCI/VGA palette snoop!!!
если это помогло, то напиши, я скажу что желательно вернуть на место ;)
2. Если не помогло, то тода лезь в "свойства экрана" - найди там "аппаратное ускорение" (ползунок) и сбрось его на два пункта влево.
3. Возьми дрова производителя, а не микрософтовские, и желательно посвежее.
Если у тебя VIA-вский чипсет на материне, то:
4. Забыл самое главное!!! У меня у самого недавна были проблемы с AGP. Добрые эксперты мне порекомендовали VIA 4in1 driver pack (зайди на www.viatech.com и там найдешь без проблем). Кроме того, сразу там же найди VIA AGP 4.10 pack (поддержка 133Mhz и 4Х) - меня это сразу лишило кучи проблем.
5. Если ничего из вышеперечисленного не помогло, то медицина тут бессильна... ;(
Отправил эксперт: Broken Sword
Эксперт отправил ответов (всего): 235
Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS
Вопрос №1766
Вопрос по SoftIce. При просмотре содержимого регистров,
информация выдается в HEX кодах. Можно ли как-нибудь поменять вывод на другой? Надеюсь, что вопрос сформулирован понятно.
Ответ
Здравствуйте, TanaT!
нет, нельзя. надеюсь, ответ сформулирован не менее понятно
Отправил эксперт: Broken Sword
Эксперт отправил ответов (всего): 236
Экспертная группа: Дизассемблеры
Вопрос №1764
Здравствуйте эксперты!!!
Спасибо, что ответили на мой вопрос, про пaроли BIOS. Но мне нужно маленькое уточнение!!! Если я буду вводить стандартные (некоторые называют инженерные) пароли BIOS и они откроют доступ, то при этом, что произойдет с паролем администратора, будет ли он стерт или изменён??? То есть, мне нужно, что бы об этом ни кто не узнал, иначе я буду иметь неприятные разговоры с начальством. Работа с диском А: будет выглядеть следующим образом. Когда нужно делаю его доступным, а после работы закрываю обратно и всем хорошо, и все довольны.
Ответ
Здравствуйте, Михаил!
Насколько я знаю, если ты вводишь стандартный пароль, то пароль, который установил админ не уничтожается, т.е. ты изменил в БИОС то, что тебе нужно, поработал и все Ок. Но только не забудь после работы снова войти в БИОС и все поставить заново как было. :))))
Отправил эксперт: Tiger (www.tigeer.narod.ru - Что-то вроде того)
Эксперт отправил ответов (всего): 3
Экспертная группа: Пользовательская работа с Windows
Вопрос №1764
Здравствуйте эксперты!!!
Спасибо, что ответили на мой вопрос, про пaроли BIOS. Но мне нужно маленькое уточнение!!! Если я буду вводить стандартные (некоторые называют инженерные) пароли BIOS и они откроют доступ, то при этом, что произойдет с паролем администратора, будет ли он стерт или изменён??? То есть, мне нужно, что бы об этом ни кто не узнал, иначе я буду иметь неприятные разговоры с начальством. Работа с диском А: будет выглядеть следующим образом. Когда нужно делаю его доступным, а после работы закрываю обратно и всем хорошо, и все довольны.
Ответ
Здравствуйте, Михаил!
Не бойтесь, пароль админа останется в целости и сохранности :)
Отправил эксперт: x-gn (www.mail2k.ru/~ev-i - Пусто :))
Эксперт отправил ответов (всего): 4
Экспертная группа: Пользовательская работа с Windows
Форма подачи вопроса
ВНИМАНИЕ!!! Пожалуйста, НЕ высылайте один вопрос сразу нескольким подгруппам! Дополнения к вопросам, на которые эксперт уже ответил НЕ следует направлять ведущему рассылки (я не успеваю!). Просто скомбинируйте первый вопрос и дополнение к нему, а затем заново отправьте его, используя приведенную ниже форму!Нажимайте кнопку "Отправить" только ОДИН раз и дождитесь полной загрузки страницы, иначе вопрос будет продублирован!
Регистрация в качестве эксперта
Архив выпусков
Управляющий рассылкой,
Калашников Олег:
Assembler@Kalashnikoff.ru
ICQ No.: 68951340
URL сайта подписчиков:
http://www.Kalashnikoff.ru
(C) Москва, 2001. Авторское право принадлежит Калашникову О.А. Публичное размещение материала из рассылки, а также его использование полностью или частично в коммерческих или иных подобных целях без письменного согласия автора влечет ответственность за нарушение авторских прав. |
Реклама на сайте Kalashnikoff.ru
http://subscribe.ru/
E-mail: ask@subscribe.ru |
Отписаться
Убрать рекламу |
В избранное | ||