atarionline.pl polecenie PUT w Basicu - Forum Atarum

Jeśli chcesz wziąć udział w dyskusjach na forum - zaloguj się. Jeżeli nie masz loginu - poproś o członkostwo.

  • :
  • :

Vanilla 1.1.4 jest produktem Lussumo. Więcej informacji: Dokumentacja, Forum.

    • 1: CommentAuthorCuzz
    • CommentTime2 Jul 2023
     
    Mam do was pytanie. Używam PUT polecenia, i wyskakuje bład, ale polecenie modyfikuje kod. Nie wiem czy się dobrze wyraziłem, proszę o wyjaśnienie mi o co w tym chodzi. Po prostu tym poleceniem udało mi się przerobić gierkę w emulatorze (starquake i zorro). Nie wiem tylko czemu się pojawia error "9" . Na pewno znajdzie się ktoś madry kto mi wyjaśni, czego nie rozumiem.
    • 2:
       
      CommentAuthorpirx
    • CommentTime2 Jul 2023
     
    to, co napisałeś powyżej nie ma sensu.

    wiem, że masz kłopot z wyrażaniem myśli. mam pomysł.

    nagraj film telefonem komórkowym, na którym będzie widać, co robisz krok po kroku.
    powiedz, co chcesz uzyskać.

    może w ten sposób da się zrozumieć, z czym masz problem.
    • 3: CommentAuthorCuzz
    • CommentTime3 Jul 2023
     
    No jak to nie ma sensu. PUT to polecenie Basica. Robię to w sprytny sposób w emulatorze. Robię attach i zakładam atr, po czym wpisuje put z dwoma zmiennymi, x=put(...,...) i wiem ze to działa na format atr. Co ciekawe serio działa , można kompletnie modyfikować kod, chodzi mi tylko o to , ze te put musi się dostać do peryferii bo to I/O operacja chyba i pojawia się jakiś bład 9. To zapytam inaczej, czy ktoś stosuję te polecenie? Jeśli tak to do czego, chętnie się tego dowiem.
    • 4:
       
      CommentAuthorsmector
    • CommentTime3 Jul 2023
     
    @cuzz Kolego moze jednak sprobuj nagrac ten filmik jak pirx radzi. Wtedy zaistnieje szansa ze uzyskasz odp. rozwiazujaca Twoj problem.
    • 5: CommentAuthormarok
    • CommentTime3 Jul 2023 zmieniony
     
    o PUT:
    Powoduje wysłanie pojedynczego bajtu danych z komputera do określonego urządzenia.

    o błędzie 9 Basica:
    Błąd DIM (wymiarowania) tablicy lub łańcucha (ang. "string"):
    rozmiar jest większy niż 32767 lub odwołanie do tablicy / macierzy (ang. "matrix") jest poza zakresem zwymiarowanego rozmiaru [DIM dla konkretnego łańcucha musi być większe], lub tablica lub macierz/ łańcuch został już zwymiarowany [DIM tej samej tablicy/ łańcucha drugi raz], lub odwołanie zostało utworzone do niewymiarowej tablicy lub łańcucha [brakuje DIM].

    Moje dopiski są w nawiasach kawdratowych (mają pomóc, ale może są jakoś mylące, jeśli się pomyliłem w interpretacji).
    Sam zupełnie nie rozumiem czym jest ta "macierz" z opisu.

    ----
    dopisuję: "macierz" to chyba inna nazwa dla łańcucha, znaczy że "string" = "matrix" ("tablica" jest jakby czymś innym, ale nie wiem/ nie pamiętam jak się ją definiuje w Basicu)
    ----

    Opis jest tłumaczeniem z instrukcji po angielsku (translatorem "deepln")

    Osobiście nie miałem okazji stosować tego rozkazu w swoich programikach w Basicu, ale to istrukcja używana powszechnie (o ile wiem).
    • 6: CommentAuthorZenon
    • CommentTime3 Jul 2023
     
    Polecenie PUT wysyła jeden bajt danych przez kanał, który wcześniej musi być zadeklarowany i otwarty do transmisji. Np.
    10 PUT #6,20
    Wysyła przez otwarty kanał nr.6 bajt o wartości 20
    10 PUT #5, ASC(A$(1,1))
    Wysyła przez otwarty kanał nr.5 kod ASC zmiennej tekstowe A$ z jej pozycji pierwszej, czyli wysyła jej pierwszy znak. Ale zmienna A$ musi być wcześniej zadeklarowana np. DIM A$(10) i wypełniona jakimś tekstem.
    Jeżeli brak deklaracji to jest błąd, bo PUT nie rozumie skąd pobrać daną do wysłania.
    • 7: CommentAuthorCuzz
    • CommentTime3 Jul 2023
     
    dzięki, już rozumiem