quinta-feira, 19 de maio de 2022

Códigos de erro

Os códigos de erro do Microsoft BASIC foram traduzidos para o português no MC1000. Os números correspondem ao valor que deve ser carregado no registrador E do Z80 para que a mensagem de erro seja produzida ao saltar para a rotina no endereço $D856.

0: NF — NEXT sem FOR (NF — NEXT without FOR)
O programa atingiu uma instrução NEXT sem que tenha havido um FOR correspondente.
2: SN — Erro de sintaxe (SN — Syntax error)
Erro na formação do comando.
4: RG — RETURN sem GOSUB (RG — RETURN without GOSUB)
O programa atingiu uma instrução RETURN sem que tenha havido um GOSUB correspondente.
6: FD — Fim de dados (OD — Out of data)
O programa atingiu uma instrução READ mas não há mais linhas DATA de onde ler dados.
8: PI — Parâmetro ilegal (FC — Illegal function call)
Foi fornecido um valor inaceitável para algum parâmetro.

Exemplo: COLOR = 4

10: SE — Sem espaço (OV — Overflow)
Utilização de valor numérico acima de 3,4×1038.
12: FM — Fora da memória (OM — Out of memory)
Programa ou matrizes muito grandes. Toda a memória disponível está sendo utilizada.
14: LI — Linha indefinida (UL — Undefined line)
Uma instrução GOTO ou GOSUB tentou enviar a execução para um número linha inexistente.
16: II — Índice ilegal (BS — Bad subscript)
Valor de índice não aceitável.

Exemplo: DIM X(100000)

18: MR — Matriz redimensionada (DD — Duplicate definition)
Tentativa de dimensionar uma matriz já dimensionada.

Exemplo: DIM X(10): DIM X(6)

20: DZ — Divisão por zero (/0 — Division by zero)
Um número foi dividido por zero, ou zero foi elevado a uma potência negativa.
22: DI — Direto ilegal (ID — Illegal direct)
O usuário tentou executar em modo direto uma instrução que só pode ser executada em modo programado (INPUT e DEF).
24: TI — Tipo incompatível (TM — Type mismatch)
Uso de valor numérico em lugar de valor texto ou vice-versa.

Exemplo: X$ = 10

26: FC — Fora da cadeia (OS — Out of string space)
Não há mais espaço disponível para criação de variáveis do tipo cadeia.
28: CL — Cadeia longa demais (LS — String too long)
Tentativa de criar uma cadeia de mais de 255 caracteres.
30: CC — Cadeia complexa (ST — String formula too complex)
Dividir uma cadeia muito complexa em duas ou mais cadeias.

(Essa explicação do Manual do BASIC não é bastante clara. Eis o problema: Durante a avaliação de uma expressão, o interpretador BASIC só tem espaço para três cadeias temporárias. Se a expressão exigir mais do que isso, o erro ocorrerá. A “descrição” acima é na verdade uma sugestão de solução: dividir a expressão em duas ou mais expressões, guardando os resultados temporários em variáveis, para que o limite não seja atingido em uma única expressão.)

Exemplo: X$ = "A" + ("B" + ("C" + ("D")))

32: NC — Não pode continuar (CN — Can’t continue)
O usuário executou a instrução CONT, mas o programa não pode continuar: Não há programa, ou o programa parou por erro.
34: FI — Função indefinida (UF — Undefined user function)
Tentativa de usar uma função que não foi definida com DEF.
36: FO — Falta operando (MO — Missing operand)
O usuário não colocou todos os operandos exigidos por uma instrução.

Exemplo: POKE 2983,

Nenhum comentário:

Postar um comentário

"MC-1000", "MC 1000" ou "MC1000"?

No gabinete do computador, nos acessórios e nos materiais impressos (caixa, capas dos manuais, rótulos e capas das fitas, propagandas etc.) ...