Ajuda URGENTE Assembly - Versão de Impressão +- Forum Pplware (http://forum.pplware.com) +-- Fórum: Mais Tech (/forumdisplay.php?fid=11) +--- Fórum: Programação e Web (/forumdisplay.php?fid=16) +--- Tópico: Ajuda URGENTE Assembly (/showthread.php?tid=8068) Páginas: 1 2 |
Ajuda URGENTE Assembly - a3deluxe - 22-12-2010 17:41 Boas, Queria desactivar 6 teclas(P,R,4,ESC,DEL,4) do teclado em ms-dos criando um executável em assembly. Da-me um erro(linha que esta a negrito) a compilar com o masm32 o código é este: KB_DATA EQU 60H KB_CTRL EQU 61H EOI EQU 20H INT_CTRL_PORT EQU 20H R_KEY EQU 83 ; codigo para a tecla "r" ; CODE SEGMENT PARA PUBLIC 'CODE' ASSUME CS:CODE ORG 44 ENVIRON DW ? ORG 100H BEGIN: JMP INITIALIZE OLD_INT_9H LABEL DWORD OLD_KBD_INT DW 2 DUP (?) ; CTRLALT PROC NEAR STI PUSH AX PUSH BX PUSH CX PUSH DX PUSH SI PUSH DI PUSH DS PUSH ES IN AL,KB_DATA CMP AL,R_KEY JNE CA4 MOV AH,2 INT 16H JNE EXIT MOV AH,2 INT 16H JE EXIT ; CALL KB_RESET ; MOV AH,25H MOV AL,9 MOV DX,OLD_KBD_INT[2] MOV DS,DX MOV DX,OLD_KBD_INT INT 21H JMP DONE ; EXIT: POP ES POP DS POP DI POP SI POP DX POP CX POP BX POP AX JMP OLD_INT_9H ; CA5: CALL KB_RESET DONE: POP ES POP DS POP DI POP SI POP DX POP CX POP BX POP AX IRET ; CTRLALT ENDP ; KB_RESET PROC NEAR IN AL,KB_CTRL MOV AH,AL OR AL,80H OUT KB_CTRL,AL MOV AL,AH OUT KB_CTRL,AL CLI MOV AL,EOI OUT INT_CTRL_PORT,AL STI RET KB_RESET ENDP INITIALIZE PROC NEAR MOV AH,35H MOV AL,9 INT 21H MOV OLD_KBD_INT,BX MOV OLD_KBD_INT[2],ES MOV AH,25H MOV AL,9 LEA DX,CTRLALT INT 21H ; MOV AX,ENVIRON MOV ES,AX MOV AH,73 INT 21H ; MOV DX,OFFSET INITIALIZE INT 27H INITIALIZE ENDP ; CODE ENDS END BEGIN Cumprimentos obrigado RE: Ajuda URGENTE Assembly - Corvus - 23-12-2010 13:06 Vendo assim de repente, existe um label CA5 mas não um CA4, logo é natural o erro que estás a ter (enganaste-te no nome de um deles?) RE: Ajuda URGENTE Assembly - a3deluxe - 23-12-2010 16:34 Boas Corvus, então alterando para CA5, deve rolar logo ? vou experimentar.. cumprimentos RE: Ajuda URGENTE Assembly - Corvus - 23-12-2010 20:57 Nota que não verifiquei minimamente a correção do programa, apenas notei que tens um salto condicional para um label que não existe e um label com o nome mt parecido Mas (falo por experiência própria) ter programas em asm que não funcionam exactamente como pretendemos é sempre uma experiência "interessante" RE: Ajuda URGENTE Assembly - a3deluxe - 24-12-2010 01:41 O que aconselha a fazer? obrigado RE: Ajuda URGENTE Assembly - Corvus - 24-12-2010 03:13 Apenas que verifiques o programa com cuidado antes de o executares. RE: Ajuda URGENTE Assembly - a3deluxe - 27-12-2010 14:41 Boas. ja revi o código e n vejo onde esta o erro. algum pode ajudar a compilar o programa? Boas festas para todos RE: Ajuda URGENTE Assembly - a3deluxe - 03-01-2011 12:32 HELP !!!!!!!!!! RE: Ajuda URGENTE Assembly - Corvus - 03-01-2011 17:56 Afinal, qual é o problema ao certo? E, já agora, foste tu que fizeste o programa e tens conhecimentos minimos de asm? É pq se não tens, não vai ser fácil qq ajuda RE: Ajuda URGENTE Assembly - a3deluxe - 03-01-2011 23:49 Boas, tenho poucos conhecimentos,sei o básico. ao compilar o programa com qualquer compilador,dá-me um erro na linha onde eu tinha assinalado a negrito.o programa foi um colega que me desenvolveu,mas nunca mais falei com ele para me ajudar. precisava mesmo do programa a trabalhar. cumprimentos a todos BOM ANO!! |