wprmsite 0 Denunciar post Postado Janeiro 10, 2014 Alguém entende de assmebly ai? Enfim, estava fazendo uns testes criando rotina assembly junto ao código Delphi e me deparei com um problema. O Delphi não consegue executar as instruções INT nem PUSH. Alguém sabe me dizer se elas funcionão. Código que estou tentando executar: Código: procedure Cls(); asm MOV AH, $0F //Função retorna modo de video em AL INT $10 MOV AH, $0 //Função que altera o modo de video em AL. INT $10 end; begin Cls(); end. Aplicação Console. Quando é executado é lançado uma exceção de acesso violado a memória. Compartilhar este post Link para o post Compartilhar em outros sites
Roberto Fagundes 40 Denunciar post Postado Janeiro 10, 2014 Se eu não me engano isso funciona, mas apenas até o windows 98 por questão de segurança... Compartilhar este post Link para o post Compartilhar em outros sites
wprmsite 0 Denunciar post Postado Janeiro 11, 2014 Montei um programa em assembly no Window 7 atraves do TASM e TLINK. E tambem atraves do DEBUG, uma ferramente que vem com o próprio Windows. O programa rodou normalmente. Então não acho que seja questão de segurança. A resposta mais coerente que encontrei ate agora é que estas interrupções só funcionam em aplicações DOS. E realmente o programa que montei foi para DOS. E visto que outras instruções funcionam normalmente. Mas algo que me deixa com muita duvida é: Por que nem as interrupções da BIOS podem ser acionadas, pois do DOS ate concordo. Compartilhar este post Link para o post Compartilhar em outros sites
wprmsite 0 Denunciar post Postado Janeiro 13, 2014 http://www.activedelphi.com.br/forum/viewtopic.php?t=84626&highlight= Compartilhar este post Link para o post Compartilhar em outros sites