Problemas reportados na utilização do ambiente nasmide/nasm/turbo debugger
Atualizado em 01-09-06
Instalação:
O arquivo .zip
nasmide.zip contém
todos os arquivos necessários à instalação do ambiente nasmide/nasm/turbo debugger
numa máquina Windows. Basta descompactá-lo no diretório de instalação do nasm,
digamos, V:\seu_home_dir\nasm no ambiente do IC, ou C:\nasm em casa.
Edite o arquivo masmide.tmp (que deve ser uma cópia do nasmide.ini), colocando
na linha: NASM_LOCATION=V:\seu_home_dir\nasm\nasmw.exe,
onde V:\seu_home_dir\nasm é o diretório onde V. descompactou o nasmide.zip.
V. irá invocar o nasmide numa janela DOS e deverá
configurar o path da janela DOS conforme explicado abaixo.
Sugestão:
Não coloque seus programas de teste no diretório de instalação
do nasm. Crie um ou mais subdiretórios para colocar seus programas
.asm, digamos, em:
v:\seu_home_dir\nasm\ativ1\, v:\seu_home_dir\nasm\ativ2, etc;
Problemas e soluções:
- V. executa o comamdo nasmide sob uma janela DOS e nada ocorre
(o prompt do DOS é devolvido).
Causa: o arquivo nasmide.ini foi destruído numa invocação
anterior do nasmide.exe (isto é um bug não solucionado do nasmide!).
Solução: Crie um arquivo nasm.bat contendo as linhas:
if not exists nasmide.ini copy v:\seu_home_dir\nasm\nasmide.tmp v:\seu_home_dir\nasm\nasmide.ini
nasmide.exe
Em vez de invocar nasmide.exe simplesmente execute o comando: nasm
-
Ao tentar montar um programa aparece uma mensagem de erro do tipo: "file not found".
Solução: V. deve introduzir no path para o ambiente DOS da sua máquina Windows
o diretório onde se encontram os arquivos do nasm, digamos, C:\nasm.
V. pode fazer isto de várias formas:
- Digitando na janela DOS o comando:
path=c:\nasm;%path% antes do comando nasm
- Colocando no arquivo nasm.bat, que dá partida ao nasmide,
uma linha com o comando:
path=c:\nasm;%path%
- Acrescentando c:\nasm; ao início do comando PATH
do arquivo c:\autoexec.bat do seu Windows (preferível).
-
Ao tentar montar um programa aparece a mensagem de erro : Unknown SPAWNO
error code 2
Causa: o path completo onde se encontra o nasm16.exe (ou nasmw.exe)
não foi corretamente
especificado na janela Options => Assembler => Nasm Location.
Solução: deveria ter algo como: c:\nasm\nasm16.exe ou
c:\nasm\nasmw.exe
Selecione também nesta janela, sob o item Target: Com executable binary file
e marque com X a caixa sob o item:Listing File, a fim de habiitar a
criação dos arquivos .lst quando seus programas são montados
-
Sob Windows o nasmw.exe não é disparado, e surge uma mensagem de erro
do tipo: "not a 16 bit program".
Solução: use a versão nasm16.exe no lugar de nasmw.exe ao configurar o nasmide
via janela: Options => Assembler => Nasm Location.
Obs: Não consegui reproduzir o problema numa máquina do IC, porém
vários alunos tiveram esse problema nas suas máquinas pessoais.
-
Ao tentar disparar o nasmide aparece a mensagem: "Unable to open log file"
Solução: crie no diretório
de instalação do nasm (digamos, C:\nasm) o arquivo vazio: nasm.log
- Agosto 2004: ao tentar montar um programa aparece a mensagem de erro : Unknown SPAWNO
error code 3
Este é bem sutil: o caminho onde se encontra o nasm não pode ter diretorios com mais de 8 caracteres
(Esta é uma limitação antiga do DOS)
- Ao tentar montar um programa que é visualizado sem problemas numa janela
do nasmide aparecem mensagens de erro estranhas e indevidas!
Prováveis causas:
(i) V. visualizou o programa no navegador (browser),
"selecionou, copiou e colou" diretamente no editor de texto,
introduzindo caracteres estranhos no programa. Solução: use o "mouse direito" com a opção
"salvar como" para baixar diretamente o programa na sua área.
(ii) V. baixou o programa via Web de um ambiente Unix/Linux
onde as linhas não estão delimitadas por CR,LF (mas apenas por LF).
Esta é a causa se ao abrir o programa com Notepad as linhas ficarem concatenadas
e separadas por uma barra vertical
parecida com o caracter de cursor do DOS.
Solução: Abra o programa com o Wordpad e salve-o como
"Text Document - MS-DOS Format".
- Agosto 2006: V. montou o seu programa fonte .asm sem erros porém
o executável .com não foi gerado: V. mudou a configuração padrão do assembler
de gerar .com para um dos outros formatos aceitos pelo nasm.