Goto page Previous 1, 2, 3, 4, 5, 6, 7 Next
HF5BS
Guest
Wed May 03, 2017 1:29 am
Użytkownik "slawek" <fake@fakeemail.com> napisał w wiadomości
news:almarsoft.24686994549888747@news.v.pl...
Quote:
On Tue, 2 May 2017 15:23:41 +0200, "HF5BS" <hf5bs@t.pl> wrote:
po prostu potrzeba więcej dyscypliny. Długo "bawiłem się" dialektem
z C64
(taki sam dialekt, jak VIC-20), wzięty zresztą od M$,
Chyba starszy niż MS, bo na początku lat 70-tych był już taki, a MS nie
było przed 1975. BASICA i QBASIC były nieco inne niż to co miał C64
zeszyte w ROM.
Ale składnia jest bardzo podobna. Oczywście, podstawowego zestawu, bo
wspomniane dialekty, wobec prymitywnego Basic 2.0 w Komodzie, są bardzo
rozbudowane. A tych już w C64 nie ma.
Quote:
QBASIC da się odpalić na współczesnych Windows. MS miał taką paczkę o
I często to robię na XP - działa bardzo ładnie. Choć ja staram się używać
QB64 (są wersje 32 i 64), tylko muszę rozpracować problem, że liczba w
okolicach 2^24, przy permamentnym dodawaniu +1, nagle przestaje rosnąć i nie
wyrzuca błędu. Co mi wręcz uniemożliwiło napisanie pewnego programu, a
QBasic ma z kolei inny problem - działa ślicznie, zapisałem 26 GB do pliku
(oczywiście, ćwiczebnie, zawsze najpierw sprawdzam, nauczony smutnymi
doświadczeniami, czy mi program nie da rzyci, w najmniej odpowiednim
momencie). No, zapisało się, a teraz, Waść, zamknij plik. Powodzen ia, ślepa
Gienia, kup se trąbk...Aj, to nie teraz... cholera, śpiący jestem...
Quote:
nazwie OLDDOS (czy jakoś tak) - uzupełniała WIN95 o QBasic, subst, join
itp. Można pobrać gdzieś z serwera MS.
W98 miał to już chyba na pokładzie. Nie pamiętam, czy nie miał tego również
NT4, ale nawet jeśli nie (dawno już nie używam, ale postawić bez problemu
dam radę), wiem, że w XP musiałem dogrywać, co nie było problemem, bo w
necie znajduje się to chyba szybciej, niż o gołych babach.
Quote:
C64 to niegłupi Simons Basic. Hires i auto. Tyle że wtedy już był
Simons - a jakże! Choć nie miałem okazji szerzej użyć (Wówczas nie było
jeszcze netu, z którego bym to ściągnął). Natomiast chwalę sobie BASIC 7.0 z
C128 D (zwany żartobliwie Diesel), ma bardzo cenną rzecz - rozdzieloną
pamięć programu i zmiennych liczbowych, od pamięci łańcuchów, co umożliwia
sortowanie nawet bardzo dużych i skomplikowanych, jak na Komodę, baz, bo
C64, ze wszystkim (program, łańcuchy, zmienne, musi wyrobić się w 38 kB, a
na C128 mam na to aż 122 kB, bankowanie następuje w locie. Lepiej też sobie
radzi z natłokiem zagłębionych GOSUB. Ale i tu Commodore zaliczył obsuwę,
IMHO raczej niewybaczalną - na stronie zerowej, jest duża część ważnych
wektorów i zmiennych systemowych. Między C64 i C128, o 2 bajty w bok, są
przesunięte lokalizacje większości z nich (a nie ma tej obsuwy między C64 i
VIC20), co utrudnia napisanie uniwersalnego programu, który sięgałby trochę
głębiej w system, celem np. dopieszczenia działania niektórych programów
(np. nie wiem teraz, czy równie łatwo bym napisał oparty o dynamiczną
klawiaturę wczytywacz programów listingów ASCII)
Quote:
normalny Fortran 77 na klonach PC XT. A to oznaczało że programy z kart
dziurkowanych można było puszczać zamiast na Odrze to na PC. Na przykład
NAP2.
Ale musiałeś mieć chyba czytnik? Bo same z kart raczej nie spłynęły...
BTW. Tak na szybko z gugla...
https://archive.org/details/NevadaFortranfortheCommodore64 
Ale języka
poszukam już z rana... zresztą... i tak na razie nie chcę szerzej w to
włazić.
I w ogóle
https://www.lyonlabs.org/commodore/onrequest/collections.html Nie
muszę chyba oznajmiać, ze to zaledwie garstka? :)
Dobra, na razie, do następnych...
--
"Jeśli przyjmiesz do siebie zabiedzonego psa i sprawisz,
że zacznie mu się dobrze powodzić - nie ugryzie cię.
Na tym polega zasadnicza różnica między psem a człowiekiem"
(C) Mark Twain
slawek
Guest
Wed May 03, 2017 7:57 am
On Wed, 3 May 2017 02:34:37 +0200, "HF5BS" <hf5bs@t.pl> wrote:
Quote:
Aha... z równoległego wątku?
I po to są komentarze. Bez komentarza fragment w którym dodaje się
a+b wygląda na nudny, wręcz niepotrzebny. Komentarz zwraca uwagę na
kontekst i ważność komentowanego fragmentu.
Nota bene, MS zdarzyło się nie przywracać stanu FPU przy
przełączeniach pomiędzy zadaniami. Na szczęście natychmiast był
patch.
slawek
Guest
Wed May 03, 2017 8:01 am
On Wed, 3 May 2017 02:47:26 +0200, "HF5BS" <hf5bs@t.pl> wrote:
Quote:
Raczej staram się to przewidzieć
Niby można. Gorzej gdy program pisze trzech lub więcej ludzi. Albo
gdy coś było pisane dla double, a ma działać potem z uchwytami do
bitmap. Co? Np. jakieś sortowanie czy wyszukiwanie. Zwykle 90% kodu
nie obchodzi co tam jest, patrz szablony w C++.
slawek
Guest
Wed May 03, 2017 8:08 am
On Wed, 3 May 2017 03:29:15 +0200, "HF5BS" <hf5bs@t.pl> wrote:
Quote:
QBasic ma z kolei inny problem - działa ślicznie, zapisałem 26 GB
do pliku
(oczywiście, ćwiczebnie, zawsze najpierw sprawdzam, nauczony
smutnymi
doświadczeniami, czy mi program nie da rzyci, w najmniej
odpowiednim
momencie). No, zapisało się, a teraz, Waść, zamknij plik. Powodzen
ia, ślepa
Gienia, kup se trąbk...Aj, to nie teraz... cholera,
Hardcore to kill program (przez odłączenie zasilanie też można) i
puszczanie potem chkdsk do fixacji dysku. Na 95% znajdzie i odzyska
26 GB plik. I to będzie to.
slawek
Guest
Wed May 03, 2017 8:29 am
On Wed, 3 May 2017 03:29:15 +0200, "HF5BS" <hf5bs@t.pl> wrote:
Quote:
Ale musiałeś mieć chyba czytnik? Bo same z kart raczej nie
spłynęły...
Napęd taśm półcalowych dla PC. To do danych.
A programy? Przepisanie paru tysięcy linijek to nie jest aż tak
wielki problem. Być może niektóre były przepompowne przez port
szeregowy: coś elektrycznie zgodnego było jeżeli nie w Odrze to w
PDP11, w 8-bitowcach takich jak C64, Atari itp.
Internetu nie było. Ale dyskietki były. Chyba nawet C64 dawał radę
zapisywać w FS FAT. Z drugiej strony nie było ograniczeń prawnych i
wirusów, a to stwarzało możliwości których obecnie nie ma.
HF5BS
Guest
Wed May 03, 2017 8:40 am
Użytkownik "slawek" <fake@fakeemail.com> napisał w wiadomości
news:almarsoft.8174952577351404959@news.v.pl...
Quote:
On Wed, 3 May 2017 03:29:15 +0200, "HF5BS" <hf5bs@t.pl> wrote:
QBasic ma z kolei inny problem - działa ślicznie, zapisałem 26 GB
do pliku
(oczywiście, ćwiczebnie, zawsze najpierw sprawdzam, nauczony
smutnymi
doświadczeniami, czy mi program nie da rzyci, w najmniej
odpowiednim
momencie). No, zapisało się, a teraz, Waść, zamknij plik. Powodzen
ia, ślepa
Gienia, kup se trąbk...Aj, to nie teraz... cholera,
Hardcore to kill program (przez odłączenie zasilanie też można) i
I czasem sie robi. Ale NT (czyli XP też) jest cwany i bywa, że nawet to nie
spowoduje sprawdzenia dysku, nawet ręczne popchnięcie wiele nie da.
Quote:
puszczanie potem chkdsk do fixacji dysku. Na 95% znajdzie i odzyska 26 GB
plik. I to będzie to.
Tylko teraz, jaki to miało bufor, coby profilaktycznie dopchnąć tyle
(później się obetnie) tyle, aby wszystko, co nas interesuje, znalazło się w
pliku. Już w C64 ten problem występował, tyle, że wiadomo było, ile dać
nadmiaru, żeby było z czego obcinać. No i ręczne zamknięcie pliku bardziej
skomplikowane, bo całkowicie ręcznie, bądź odpowiednim programem (ja zwykle
ręcznie załatwiałem, wspomagając się jedynie programikiem, który sczytywał
mi odpowiedni sektor, a to tylko po to, żeby w ogóle wiedzieć, gdzie jest
wpis, który trzeba zmodyfikować, potem przestawienie bitu 7 (jego znaczenie
0 - plik otwarty, 1 - zamknięty) w znaczniku rodzaju pliku i już, na koniec
"validate" dla odświeżenia BAM.
NTFS, jako system z atomowymi operacjami zapisu, średnio daje się
sprowokować do zrobienia automatycznie chkdsk, zwykłym wyłączeniem
zasilania. Ale jest prosty sposób, z wiersza poleceń/okna "DOS"owego
zapodać:
fsutil dirty set <volumin>
gdzie <volumin>, to litera, albo ścieżka zamontowania zasobu.
I wtedy pyk hebel...
Przyznam, że muszę poćwiczyć, choć jak wtedy próbowałem, to chyba nawet nie
bardzo trzeba, bo przy zapisie sekwencyjnym nie ma zadeklarowanej długości
pliku i nie jest ona rezerwowana, jak w sytuacji, gdy wiadomo (no, system
musi wiedzieć przecież, sama nasza wiedza nie styknie), że "zapisujemy
4294967295 bajtów danych". A to się wiąże z tym, że do pliku dane dopisuje
się (nasz QBasic DOSowy) na bieżąco (i nawet nie wiem, czy to się w
przerwach między porcjami samo nie jakby nie zamyka... (nie chodzi o
BASICowe CLOSE, bo to się zrobić nie daje)) i tylko ten bufor, aby nadmiarem
zepchnąć jego zawartość na nośnik. A dopilnować trzeba, bo czasem ten
ostatni bajt najbardziej znaczy... taka przewrotność losu, jak np. archiwum
rozpakować nie zechce...
--
"Jeśli przyjmiesz do siebie zabiedzonego psa i sprawisz,
że zacznie mu się dobrze powodzić - nie ugryzie cię.
Na tym polega zasadnicza różnica między psem a człowiekiem"
(C) Mark Twain
Sebastian BiaĹy
Guest
Wed May 03, 2017 8:53 am
On 5/2/2017 7:28 PM, slawek wrote:
Quote:
On Tue, 2 May 2017 15:23:41 +0200, "HF5BS" <hf5bs@t.pl> wrote:
po prostu potrzeba więcej dyscypliny. Długo "bawiłem się" dialektem
z C64
(taki sam dialekt, jak VIC-20), wzięty zresztą od M$,
Chyba starszy niż MS, bo na początku lat 70-tych był już taki, a MS nie
było przed 1975. BASICA i QBASIC były nieco inne niż to co miał C64
zeszyte w ROM.
Producentem BASICa doa Commodore był MS. Historia sięga PETa i jest ciekawa:
http://www.pagetable.com/?p=43
Inne popularne maszyny jak Atari i Zx Spectrum miały wlasny basic, ale
Microsoft zdominował wtedy rynek komputerów 8-bit swoim basicem i wiele
maszyn go miało jako standardowy. Dodatkowo Atari miało feler (wszystko
na floating point) i zx (tokenizacja jednostka białkową).
HF5BS
Guest
Wed May 03, 2017 9:01 am
Użytkownik "slawek" <fake@fakeemail.com> napisał w wiadomości
news:almarsoft.3637783890851740928@news.v.pl...
Quote:
On Wed, 3 May 2017 02:34:37 +0200, "HF5BS" <hf5bs@t.pl> wrote:
Aha... z równoległego wątku?
I po to są komentarze. Bez komentarza fragment w którym dodaje się a+b
wygląda na nudny, wręcz niepotrzebny. Komentarz zwraca uwagę na kontekst i
ważność komentowanego fragmentu.
No to jasne, że wtedy jakoś trzeba temat zaznaczyć, żeby się kuku nie stało.
Wtedy jest to zdecydowanie potrzebne, coś jak znak "Zwolnij" na prostej
szosie postawiony, bo np. dzikie zwierzęta, czy śliska nawierzchnia, a zrobi
co zechce, tylko konsekwencje mogą być, że okoliczne drzewo zmieni się w
drewnianą jesionkę.
Jak ja to rozumiem, obrazowo, nie w języku programowania, czyli pseudokodem,
mniejsza o elegancję i prawidłowość.
najprościej:
NAPISZ 2+2
Nieco bardziej:
a=2
b=2
NAPISZ a+b
Bardziej:
Deklaracja zmiennych:
a - zmiennoprzecinkowa pojedyncza
b - całkowita
REM (czasem tak trzeba, niektóre kompilatory dają radę)
a=2
b=2
NAPISZ a+b
I już przerost formy nad treścią:
Program dodający dwie różne liczby, "a" i "b"
Deklaracja zmiennych:
a - zmienna zmiennoprzecinkowa podwójnej precyzji
b - zmienna zmiennoprzecinkowa podwójnej precyzji
REM dobra, już nie dziwaczę, niech typy będą jednakowe
a=2
REM zmiennej a nadano wartość 2, aby następnie poddać ją działaniu dodawania
b=2
REM zmiennej b nadano wartość 2, aby następnie poddać ją działaniu dodawania
NAPISZ a+b
REM dodano zmienne a oraz b, aby uzyskać wynik ich dodawania, w wyniku
działania dodawania wyprowadzona została ich suma, ukazująca wynik
dodawania.
Ja głosuję za przykładem pierwszym. Ewentualnie drugim, jeśli wartości będą
sie zmieniać. Mogę też, zamiast wpisywania w treść programu, zapodać komendę
przyjmującą dane z zewnątrz, za każdym odpaleniem programu.
W przypadkach, o jakich mówisz, zgadzam się na opcję nr 3, bo jesli mamy
uniknąć konfliktu interesów, to trzeba to zaznaczyć.
Ale już nr 4 wydaje się być przegięciem, gdzie przykład drugi obrósł
nadmiernie, wręcz zaciemniając program.
Quote:
Nota bene, MS zdarzyło się nie przywracać stanu FPU przy
Domyślam się, że konsekwencje potrafiły być bolesne...?
Quote:
przełączeniach pomiędzy zadaniami. Na szczęście natychmiast był patch.
To załatano. Ale wiele innych rzeczy "od narodzin po śmierć" było
pokrzywione i nadal jest, mniej, lub bardziej... o ile o tej samej
"dziedzinie" gadamy.
--
"Jeśli przyjmiesz do siebie zabiedzonego psa i sprawisz,
że zacznie mu się dobrze powodzić - nie ugryzie cię.
Na tym polega zasadnicza różnica między psem a człowiekiem"
(C) Mark Twain
HF5BS
Guest
Wed May 03, 2017 9:21 am
Użytkownik "slawek" <fake@fakeemail.com> napisał w wiadomości
news:almarsoft.6098016854069617109@news.v.pl...
Quote:
On Wed, 3 May 2017 03:29:15 +0200, "HF5BS" <hf5bs@t.pl> wrote:
Ale musiałeś mieć chyba czytnik? Bo same z kart raczej nie
spłynęły...
Napęd taśm półcalowych dla PC. To do danych.
No, faktycznie... WIem, że do Komody cuda podłączano. Podobno kiedyś komuś
udało się (chyba w Bajtku pisali) podłączyć dwużyłowo dalekopis bezpośrednio
z portu rozszerzeń, sterując jakąś linię. (co wobec C64 jest raczej
nieostrożnością... ale skoro ruszyło, o ile to nie była bajka)
Quote:
A programy? Przepisanie paru tysięcy linijek to nie jest aż tak wielki
problem. Być może niektóre były przepompowne przez port szeregowy: coś
elektrycznie zgodnego było jeżeli nie w Odrze to w PDP11, w 8-bitowcach
takich jak C64, Atari itp.
W sumie RS chyna jest standardem, więc przepompować, czemu nie?
Quote:
Internetu nie było. Ale dyskietki były. Chyba nawet C64 dawał radę
zapisywać w FS FAT. Z drugiej strony nie było ograniczeń prawnych i
Owszem, choć nie tak najprościej. FAT jest bardzo prostym algorytmem (tak go
teraz określę), każda część ma swoje miejsce w strukturach, więc w sasadzie
wystarczy umiejętnie powachlować wektorami, wskaźnikami i jedziemy. FS, jako
wyższy w warstwie, dawał się załatwiać przez działanie zwykłego programu.
Sama stacja 1541 nie umiała sektorów MFM i jesli, to trzeba by to realizować
maszynowo, ale nie wiem, czy komuś się to udało, kodowała jedynie GCR.
Natomiast 1570/-1/-2, umiały już MFM, przełączało się jedną komendą (miały
OIDP kontroler, który umie MFM) i dawało się ponoc czytać dyskietki 360 kB,
w stacji 157x. Jednak między dyskietkami MFM dla PC i GCR dla Commodore była
inna, istotna różnica, dyskietki PC miały sektory 512 bajtów, a Commodore
256, przy czym jedynie 254 było dla danych, a dwa pierwsze bajty były
wektorem, wskazującym na następny w pliku sektor z jego zawartością. Bajt
zerowy na pozycji zero oznaczał, że to ostatni sektor, a bajt 1, był
lokalnym wektorem wskazującym, który bajt sektora jest ostatnim bajtem
pliku. Komenda validate powodowała skan wszystkich plików, wylistowanie
wektorów i odpowiednią modyfikację BAM, co zapobiegało uszkodzeniu dabych w
przypadku niezgodności. Nie wolno było wykonywać porządkowania na plikach o
dostępie swobodnym, gdyż powodowało ich uszkodzenie (nie udało mi się
rozkminić, jak działał mechanizm plików "REL", resztę rozgryzłem).
Quote:
wirusów, a to stwarzało możliwości których obecnie nie ma.
Bayerische HackerPost, wirus na komodę... Nie trafił mnie, podobno u
Niemców, jak nazwa wskazuje, roznosił się, w programach maszynowych. W
BASICu, rzecz jasna, nie miał jak się roznieść, ale wystarczyło coś
maszynowego i jedziem, nie pamiętam, jak się doklejał. A to nie jedyny na
C64.
http://csdb.dk/release/?id=49101 Tu coś mam, ale na razie nie zbadam, czy to
ma jakiś związek z rzeczywistym zagrożeniem.
--
"Jeśli przyjmiesz do siebie zabiedzonego psa i sprawisz,
że zacznie mu się dobrze powodzić - nie ugryzie cię.
Na tym polega zasadnicza różnica między psem a człowiekiem"
(C) Mark Twain
HF5BS
Guest
Wed May 03, 2017 9:39 am
Użytkownik "HF5BS" <hf5bs@t.pl> napisał w wiadomości
news:oec7ev$nlq$1@node1.news.atman.pl...
Quote:
W sumie RS chyna jest standardem, więc przepompować, czemu nie?
"CHYBA"... rany, jak ja nie cierpię robić literówek...
--
"Jeśli przyjmiesz do siebie zabiedzonego psa i sprawisz,
że zacznie mu się dobrze powodzić - nie ugryzie cię.
Na tym polega zasadnicza różnica między psem a człowiekiem"
(C) Mark Twain
ToMasz
Guest
Wed May 03, 2017 12:03 pm
fajnie się Was czyta, ale co powiecie na takie coś:
char key = keypad.waitForKey(); //czekaj na naciśnięcie klawisza
Serial.println(key); //wyświetl co zostało naciśnięte
no i działa pięknie. wciskam 1 na klawiaturce, na ekranie pojawia się 1.
jak wcisnę 2 to na ekranie "wyskoczy" 2. Niestety na wyświetlaniu się
kończy. Problem pojawia się przy próbie wykorzystania zmiennej "Key" w
matematyce, gdyż "1" z klawiatury, zapamiętuje się jako key = 48. Chwała
Bogu że 2 to 49, 3 to 50, więc szybko problem "obszedłem", ale nie
rozwiązałem. nie wiem dlaczego arduino tak "robi"
ToMasz
Sebastian BiaĹy
Guest
Wed May 03, 2017 12:50 pm
On 5/3/2017 2:03 PM, ToMasz wrote:
Quote:
char key = keypad.waitForKey(); //czekaj na naciśnięcie klawisza
Serial.println(key); //wyświetl co zostało naciśnięte
no i działa pięknie. wciskam 1 na klawiaturce, na ekranie pojawia się 1.
jak wcisnę 2 to na ekranie "wyskoczy" 2. Niestety na wyświetlaniu się
kończy. Problem pojawia się przy próbie wykorzystania zmiennej "Key" w
matematyce, gdyż "1" z klawiatury, zapamiętuje się jako key = 48.
http://www.asciitable.com/
mylisz reprezentację graficzna z wartością. Zastanów sie przez chwile co
miało by sie pojawić jak wciśniejsz a.
Piotr Dmochowski
Guest
Wed May 03, 2017 12:55 pm
W dniu 2017-05-03 o 14:03, ToMasz pisze:
Quote:
fajnie się Was czyta, ale co powiecie na takie coś:
char key = keypad.waitForKey(); //czekaj na naciśnięcie klawisza
Serial.println(key); //wyświetl co zostało naciśnięte
no i działa pięknie. wciskam 1 na klawiaturce, na ekranie pojawia się 1.
jak wcisnę 2 to na ekranie "wyskoczy" 2. Niestety na wyświetlaniu się
kończy. Problem pojawia się przy próbie wykorzystania zmiennej "Key" w
matematyce, gdyż "1" z klawiatury, zapamiętuje się jako key = 48. Chwała
Bogu że 2 to 49, 3 to 50, więc szybko problem "obszedłem", ale nie
rozwiązałem. nie wiem dlaczego arduino tak "robi"
Tak robi bo mu tak kazałeś

W definicji klawiszy prawdopodobnie użyłeś znaków a nie cyfr, więc
funkcja zwraca numer znaku w tabeli ASCII. Przykład z tutoriala:
char keys[ROWS][COLS] = {
{'1','2','3'},
{'4','5','6'},
{'7','8','9'},
{'#','0','*'}
};
Zgodnie z tablicą ASCII jedynka ma numer 49 i taka liczba jest zapisana
w zmiennej key.
Gdyby w tablicy keys była 1 zamiast '1' to łatwiej byłoby liczyć, ale na
porcie szeregowym byłyby krzaki.
--
Pozdrawiam
Piotrek
HF5BS
Guest
Wed May 03, 2017 1:55 pm
Użytkownik "ToMasz" <tomasz@poczta.fm.com.pl> napisał w wiadomości
news:oecgor$2du$1@dont-email.me...
Quote:
fajnie się Was czyta, ale co powiecie na takie coś:
char key = keypad.waitForKey(); //czekaj na naciśnięcie klawisza
Serial.println(key); //wyświetl co zostało naciśnięte
no i działa pięknie. wciskam 1 na klawiaturce, na ekranie pojawia się 1.
jak wcisnę 2 to na ekranie "wyskoczy" 2. Niestety na wyświetlaniu się
kończy. Problem pojawia się przy próbie wykorzystania zmiennej "Key" w
matematyce, gdyż "1" z klawiatury, zapamiętuje się jako key = 48. Chwała
Bogu że 2 to 49, 3 to 50, więc szybko problem "obszedłem", ale nie
rozwiązałem. nie wiem dlaczego arduino tak "robi"
Wszędzie tak masz.
Na szybko, więc mało eleganckie i ze znienawidzonym GOTO, ale prościej się
nie da:
10 a$=INKEY$: REM w różnych dialektach jest to bardzo różnie
20 PRINT a$;: GOTO 10
A jeszcze prościej, nie wszystkie dialekty pozwalają tak łatwo:
10 PRINT INKEY$: GOTO 10
Z "debagiem":
10 a$=INKEY$: IF a$="" THEN 10:REM lub GOTO 10, powinno być, aby tekst nie
latał po ekranie
20 PRINT "Znakowi ";a$;" odpowiada kod ASCII";ASC(a$+CHR$(0))
30 GOTO 10
Tak wygląda sprawa, dlaczemu tu i tam widzisz inne wartości.
--
"Jeśli przyjmiesz do siebie zabiedzonego psa i sprawisz,
że zacznie mu się dobrze powodzić - nie ugryzie cię.
Na tym polega zasadnicza różnica między psem a człowiekiem"
(C) Mark Twain
ToMasz
Guest
Wed May 03, 2017 2:37 pm
W dniu 03.05.2017 o 14:50, Sebastian Biały pisze:
Quote:
On 5/3/2017 2:03 PM, ToMasz wrote:
char key = keypad.waitForKey(); //czekaj na naciśnięcie klawisza
Serial.println(key); //wyświetl co zostało naciśnięte
no i działa pięknie. wciskam 1 na klawiaturce, na ekranie pojawia się 1.
jak wcisnę 2 to na ekranie "wyskoczy" 2. Niestety na wyświetlaniu się
kończy. Problem pojawia się przy próbie wykorzystania zmiennej "Key" w
matematyce, gdyż "1" z klawiatury, zapamiętuje się jako key = 48.
http://www.asciitable.com/
mylisz reprezentację graficzna z wartością. Zastanów sie przez chwile co
miało by sie pojawić jak wciśniejsz a.
97. dzięki za naprowadzenie. klawiaturę numeryczną, bez literek, więc
nie pomyślałem o ascii....
ToMasz
Goto page Previous 1, 2, 3, 4, 5, 6, 7 Next