Komunikaty Basic’a o błędach

BAD DATA ERROR
Problem: Z otwartego zbioru wczytano daną łańcuchową, gdy program spodziewał się danej numerycznej.
Reakcja: Upewnij się, czy dane wprowadzono z separatorami pomiędzy elementami.

BAD SUBSCRIPT
Problem: Program próbuje odwołać się do elementu tablicy, którego numer leży poza zakresem zdefiniowanym w DIM.
Reakcja: Upewnij się, czy właściwie zdeklarowałeś tablice. W modzie bezpośrednim wydrukuj ZAWSZE indeksy.

BREAK
Problem: Program zatrzymał się, ponieważ wcisnąłeś klawisz STOP (RUN/STOP).
Reakcja: Użyj polecenia CONT w celu kontynuowania programu.

CAN’T CONTINUE
Problem: Polecenie CONT nie pracuje, bo: program nie był jeszcze uruchomiony albo: wystąpił błąd lub też: linia programu była edytowana.
Reakcja: Prawdopodobnie naniosłeś poprawki; uruchom program od nowa.

DEVICE NOT PRESENT
Problem: Zadane urządzenie WE/WY nie jest osiągalne dla instrukcji OPEN, CLOSE, CMD, PRINT#, INPUT#, GET#.
Reakcja: Sprawdź, czy używane urządzenie jest włączone, oraz czy używasz właściwie instrukcji OPEN.

DIVISION BY ZERO
Problem: Dzielenie przez zero jest niedopuszczalne w arytmetyce.
Reakcja: Każ wydrukować podejrzane zmienne, aby określić, która ma wartość 0.

EXTRA IGNORED
Problem: Wpisano zbyt wiele elementów w odpowiedzi na instrukcję INPUT. Tylko kilka pierwszych zostało zaakceptowanych.
Reakcja: Sprawdź znaki przestankowe.

FILE NOT FOUND
Problem: Nie ma zbioru o podanej nazwie.
Reakcja: Sprawdź, czy używasz właściwego dysku lub taśmy, oraz czy nazwa zbioru została wpisana bez błędu; zwróć szczególną uwagę na duże i małe litery i odstępy.

FILE NOT OPEN
Problem: Zbiór użyty w instrukcji OPEN, CLOSE, CMD, PRINT#, INPUT#, GET# musi zostać najpierw otwarty.
Reakcja: Otwórz zbiór. Sprawdź, czy używasz właściwego numeru zbioru.

FILE OPEN
Problem: Usiłowano otworzyć zbiór używając numeru zbioru otwartego wcześniej.
Reakcja: Zamknij poprzedni zbiór lub użyj innego numeru.

FORMULA TOO COMPLEX
Problem: Wyrażenie tekstowe powinno zostać podzielone co najmniej na dwie części, aby komputer mógł je obrabiać albo wyrażenie ma zbyt wiele nawiasów.
Reakcja: Użyj mniejszych łańcuchów. Zmniejsz liczbę nawiasów.

ILLEGAL DEVICE NUMBER
Problem: Pojawia się, jeśli usiłujesz nieprawidłowo użyć urządzenia (np. załadować [LOAD] program z klawiatury, ekranu lub RS-232).
Reakcja: Użyj właściwego numeru urządzenia.

ILLEGAL DIRECT
Problem: Instrukcja INPUT może być używana tylko wewnątrz programu, a nie w modzie bezpośrednim.
Reakcja: Użyj innego polecenia.

ILLEGAL QUANTITY
Problem: Wartość argumentu używanego w funkcji lub instrukcji leży poza dopuszczalnymi granicami.
Reakcja: Użyj trybu bezpośredniego w celu określenia wartości zmiennych w danej chwili. Popraw ujemne indeksy. Sprawdź, czy wymiary są dostatecznie duże.

LOAD
Problem: Są kłopoty z programem na dyskietce lub taśmie.
Reakcja: Załaduj powtórnie.

MISSING FILE NAME
Problem: Ładowanie (lub zapisywanie) z portu szeregowego wymaga podania nazwy zbioru.
Reakcja: Podaj nazwę zbioru.

NEXT WITHOUT FOR
Problem: Spowodowany przez nieprawidłowe zagnieżdżenie pętli lub użycie różnych zmiennych indeksowych w instrukcjach FOR i NEXT.
Reakcja: Sprawdź, czy pętla ma punkt początkowy.

NOT INPUT FILE
Problem: Próbowano dokonać operacji INPUT do zbioru, który był określony jako wejściowy.
Reakcja: Popraw drugi adres w instrukcji OPEN.

NOT OUTPUT FILE
Problem: Próbowano dokonać operacji PRINT do zbioru, który był określony jako wejściowy.
Reakcja: Popraw drugi adres w instrukcji OPEN.

OUT OF DATA
Problem: Wykonano instrukcję READ, kiedy w instrukcji DATA nie było już nie wczytanych danych.
Reakcja: Sprawdź, czy nie opuściłeś danych; dodaj więcej, jeśli potrzeba.

OUT OF MEMORY
Problem: Zabrakło pamięci do pomieszczenia programu lub zmiennych. Może także nastąpić, gdy zagnieżdżono zbyt wiele pętli, lub wywołań GOSUB.
Reakcja: Zmiejsz ilość pętli lub instrukcji GOSUB działających jednocześnie. Używaj zmiennych indeksowych powtórnie tam gdzie jest to możliwe, aby uniknąć wielu nie zakończonych pętli. Wyczyść pamięć używając funkcji FREE(X).

OVERFLOV
Problem: Wynik obliczeń przekroczył dopuszczalny zakres – liczbę 1.70141884E+38.
Reakcja: Spradź poszczególne kroki rachunków.

REDIM’D ARRAY
Problem: Tablica może być deklarowana tylko raz w programie. Jeśli tablica jest użyta przed jej zadeklarowaniem, to automatycznie zadeklarowany zostanie wymiar 10. Każda następna deklaracja spowoduje wtedy błąd.
Reakcja: Umieszczaj instrukcje DIM przed pierwszym odwołaniem do tablicy i nie powtarzaj deklaracji.

REDO FROM START
Problem: Znaki alfanumeryczne zostały wpisane podczas instrukcji INPUT tam, gdzie powinna być podana liczba. Wystarczy wprowadzić dane powtórnie, a program sam podejmie dalsze działanie.
Reakcja: Podaj właściwe dane dla instrukcji INPUT.

RETURN WITHOUT GOSUB
Problem: Napotkano instrukcję RETURN, podczas gdy nie było odwołania GOSUB do procedury.
Reakcja: Sprawdź, czy program kończy się (END) zanim trafi na procedurę umieszczoną na końcu programu.

STRING TOO LONG
Problem: Łańcuch może mieć co najwyżej 255 znaków.
Reakcja: Pilnuj, aby łańcuchy nie miały więcej niż 255 znaków, a wprowadzone przy pomocy instrukcji INPUT 80 znaków.

?SYNTAX ERROR
Problem: Instrukcja jest nierozpoznawalna dla Commodore 64C. Brakujące lub nadmiarowe nawiasy, literówki w słowach kluczowych.
Reakcja: Sprawdź pisownię słów kluczowych i składnię instrukcji.

TYPE MISMATCH
Problem: Ten błąd pojawia się, kiedy liczba użyta zostanie zamiast tekstu lub na odwrót.
Reakcja: Sprawdź, czy znaki $ zostały umieszczone tam gdzie być powinny.

UNDEF’D FUNCTION
Problem: Wywołana została funkcja użytkownika, która nigdy nie została zdefiniowana przy użyciu DEF FN.
Reakcja: Zdefiniuj funkcję przy użyciu DEF FN.

UNDEF’D STATEMENT
Problem: Próbowano wykonać instrukcję GOTO, GOSUB lub RUN do linii, której nie ma w programie.
Reakcja: Sprawdź, czy linia programu istnieje.

VERIFY
Problem: Programy na dyskietce lub taśmie i w pamięci są różne.
Reakcja: Zapisz program jeszcze raz, używając innej nazwy.

Uwaga:
Typowym błędem jest wpisanie linii o długości 41 lub więcej znaków, nie wciśnięcie RETURN i napisanie następnej linii. Wciśnięcie RETURN potraktuje teraz obie linie jako jedną. Aby odnaleźć ten błąd należy wylistować program na ekranie i naciskając RETURN w kolejnych liniach programu. Patrz uważnie jak kursor przeskakuje do następnej linii programu (nie: ekranu). Linia, którą opuści, jest dołączona do linii powyżej. Przepisz tę linię na nowo.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *