никак, вам оно не надо
Это ещё почему?
Как во всех других случаях. Писать в соответствующий файл устройства.
Открыть файл. Сформировать текстовую строку, и записать ее туда.
чаще всего модемы работают через com порт, AT команды представляют собой поток данных в этот порт начинающийся с заголовка AT
И что это даст что за файл такой то?
CreateFile(), WriteFile(). Основная сложность - найти имя виртуального COM-порта, сопоставленное с USB-устройством. Но у тебя есть пример исходников как это делать (VirtualTSP), по сути работа с AT-командами точно такая же.
Но мне не понятно что за файл , что он делает что это дает и тд
Наверное не Create а Open?
И это через ассемблер ?
А есть пример кода ?
Тебе скопировать-вставить надо что ли? Так темболее не научишься ничему
Выше по чату есть пример моих опытов с фреймбуфером. Здесь должно быть аналогично.
во, читай, только оно уже не работает лет так 10 http://websvn.kolibrios.org/filedetails.php?repname=Kolibri+OS&path=%2Fprograms%2Fdevelop%2Fexamples%2Frtdata%2Ftrunk%2Frtdata.asm
Что такое фреймбуфер?
Так а если оно не работает смысл есть ?
Текстовый экран в Linux.
отображение памяти видеокарты(которая выводится на экран) на на обычную память
ну там по сути обработка прерываний не работает, а логика то целая
Ну и как быть , да и я еще не осознал ассемблер ещё
Можно код глянуть ?
port_name db 10 dup 0 port_mask db "\\.\COM%u",0 cinvoke wnsprintfA, port_name, sizeof.port_name, port_mask, [port_number] invoke CreateFileA, port_name, GENERIC_READ or GENERIC_WRITE, 0, 0, OPEN_EXISTING, FILE_FLAG_OVERLAPPED, 0 cmp eax, INVALID_HANDLE_VALUE je port_open_error mov [hComPort], eax
Чего там осознавать то? Есть регистры, есть память, есть команды, которые позволяют модифицировать данные в первых двух.
читай, тут много кода
Читать в MSDN про CreateFile, это одна из основ всего, через CreateFile (вопреки названию) осуществляется работа не только с файлами а со всем - объекты разные, драйвера, порты, и прочие. Открытие COM и LPT портов - тоже через CreateFile.
Правильно я понимаю, что CreateFile по майкрософтовски — это Assign в других языках?
Ну как чего вот например есть программа org 100h mov ah, 02h mov dl, 41h ;add dl, 80 int 21h mov dl, 41h int 21h mov dl, 41h int 21h mov dl, 41h int 21h ret
Какая тут вообще задача то решается?
Научится грамотно и осознанно использовать команды ассемблера, четкое понимание как это работает, понимать мая задача
Тогда и пишите сразу под современные ОС. В DOS огромное количество легаси и просто рудиментов, которые приходится изучать просто чтобы понять проидящее, но они не имеют смысла в современных системах. Наглядный пример - org 100h.
Так org 100h можно написать другой например 50h и будет работать
в прогах под современные ос там вообще нет никаких org там формат ELF или PE
То есть получается концепция DOS не имеет отношения к сегодняшнему современному языку, это точно так? А может просто уже современная обертка просто скрыла старые отголоски и всё?
> А может просто уже современная обертка просто скрыла старые отголоски и всё? так было только в вин3.1/вин95/98, под капотом дос крутился
Ну а смысл работы понять что откуда берется и как работает что нет смысла его изучать как простую концепцию? Мне посоветовали начать с этого а еще тis100 astra 256 эмулятор как вариант
Омг, ну мб хватит уже тут цирк устраивать? Ну второй день подряд ты пишешь бред...
Имеет, но примерно на 2/3 там уже история развития IT, а не реальность.
можно, научишься основным командам типа mov, jmp, add, cmp и тд. в 32 битном и 64 битном асме они ведь тоже есть, только с другими размерностями. Но не проще ли сразу взять например 32 битный х86 асм по винду? Это напоминает срач "Нужно ли учить сначала С чтобы выучить С++?"
Ну это понятно у меня нет альтернатив просто другого не советовали
Смысл есть, если есть именно интерес к истории развития. Посмотреть на ход мыслей предшественников. В современных ОС многое устроено принципиально иначе.
Ну хорошо а как тогда действовать чтобы допустим наглядно увидеть работу , понять смысловые конструкции языка и всё остальное
придумать себе задачу и решить ее
Я не вижу вашей компетенции в данном вопросе, одни какие то упрёки ни одной годной рекомендации 😕
так я по факту сказал, ты не поймешь ассемблер пока не попишешь на нем
Ты угораешь надо мной сейчас? Чтобыт начать писать нужно понимать нюансы и как это работает опять упрёки а не рекомендации с пояснениями иикомментариями
если очень хочется изучить асм, рекомендую написать миниатюрную ОС или хотя бы загрузчик таковой
Вряд ли. У новых операционных обычно много наработок и полностью переработаны все системы. Взять даже работу с памятью. У DOS всё выполнялось в однозадачном режиме и никакого переключения процессов небыло. Позже появились ОС с сегментной и страничной адресацией памяти. В процессоры добавили новые фичи для многозадачности. У того же доса ядро было монолитным, а у современной винды оно гибридное. Для обращения к ОС юзаются сервисы и тд и тп. Короче мораль сей басней такова, толпою га... то есть хоть системы и содержат порой старый код, но кроме того большая часть была доработана и переработана в угоду эффективности и требованиям
Обсуждают сегодня