1. Заголовок или название темы должно быть информативным 2. Все тексты программ должны помещаться в теги [CODE=asm] [/CODE] 3. Прежде чем задавать вопрос, см. "FAQ",если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно, такую задачу уже решали! 4. Не предлагайте свои решения на других языках, кроме Ассемблера. Исключение только с согласия модератора. 5. НЕ используйте форум для личного общения! Все, что не относиться к обсуждению темы - на PM! 6. Проверяйте программы перед тем, как выложить их на форум!!
Доброго времени суток! У меня тут заданьеце : вывести атрибуты файла, в диалоговой форме произвести переустановку атрибутов. Реализовал первую часть - вывод атрибутов, использую функцию 43h прерывания 21h. Но возникает какая-то ошибка при вызове прерывания. В чём проблема?
data segment path db "E:\data.txt",0 mes1 db 13,10,"read\write$" mes2 db 13,10,"read only$" mes3 db 13,10,"X-files$" mes4 db 13,10,"system$" data ends
Теперь мне нужно сделать, чтоб всё это работало в диалоговой форме. Как сделать, чтоб при нажатии соответствующей кнопки, устанавливался/сбрасывался атрибут? то есть своеобразный case организовать... а вот проверку установить\сбросить атрибут опять же через and + условие jz ? Вот зачатки всего этого (меню пока что)
data segment path db "E:/data.txt",0 mes db 13,10,"R/W$" mes1 db 13,10,"RO$" mes2 db 13,10,"Hidden$" mes3 db 13,10,"System$" mes4 db 13,10,"Label$" mes5 db 13,10,"Dir$" mes6 db 13,10,"Archive$"
mesmen db 13,10,"ON\OFF RO pressed (1)",13,10,"ON\OFF Hidden pressed (2)",13,10,"ON\OFF System pressed (3)",13,10,"ON\OFF Label pressed (4)",13,10,"ON\OFF Dir pressed (5)",13,10,"ON\OFF Archive pressed (6)$"
data ends
code segment assume cs:code, ds:data
showAtr proc
m : mov ax,cx cmp ax,0000h jnz m1 mov ah, 09h mov dx,offset mes int 21h
m1: mov ax,cx and ax,0001h jz m2 mov ah, 09h mov dx,offset mes1 int 21h
m2: mov ax,cx and ax,0002h jz m3 mov ah, 09h mov dx,offset mes2 int 21h
m3: mov ax,cx and ax,0004h jz m4 mov ah, 09h mov dx,offset mes3 int 21h
m4: mov ax,cx and ax,0008h jz m5 mov ah, 09h mov dx,offset mes4 int 21h
m5: mov ax,cx and ax,0010h jz m6 mov ah, 09h mov dx,offset mes5 int 21h
m6: mov ax,cx and ax,0020h jz m7 mov ah, 09h mov dx,offset mes6 int 21h m7: ret