[uBasic:] c++~~~~ ?" ^Enter next Level!^ ~~~~"

CHDK-Skripte, CHDK-Entwicklung, PC-Zusatzprogramme, Informationen für Tüftler

[uBasic:] c++~~~~ ?" ^Enter next Level!^ ~~~~"

Beitragvon Caefix » 07.06.2019, 20:23

~~~~~~~~~~~~~~~~~ C für Touristen ~~~~~~~~~~~~~~~~~~~
Gibt´s was Spannenderes als ein '}' in der falschen Zeile?
Dann für mutige Selbstcompilierer zum Spielen, Testen, Mitmachen...

download/file.php?id=2890
http://downloads.chdk-treff.de/tools/gcc493-host481.7z
Dateianhänge
!ubasic.zip
rem Bei Bedarf...
(51.85 KiB) 4-mal heruntergeladen
Caefix
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 19
Registriert: 15.06.2018, 19:14
Kamera(s): Einige!

Re: [uBasic:] c++~~~~ ?" ^Enter next Level!^ ~~~~"

Beitragvon rudi » 08.06.2019, 21:18

Caefix hat geschrieben:~~~~~~~~~~~~~~~~~ C für Touristen ~~~~~~~~~~~~~~~~~~~
Gibt´s was Spannenderes als ein '}' in der falschen Zeile?
Dann für mutige Selbstcompilierer zum Spielen, Testen, Mitmachen...
... und ein weiterer Beitrag von Caefix ohne jegliche Beschreibung von Sinn und Zweck. Downloads ohne Hinweis auf eine Relevanz und Inhalt.

Einen Bezug zu uBasic und C++ kann ich nicht herstellen. Bitte keine undokumentierten Downloads und Skripte einstellen.

Sinnvoll für die Gemeinschaft ist auch eine Beschreibung von Einrichtung und Verwendung der CHDK-GCC-Toolchain.

rudi
Benutzeravatar
rudi
CHDK-Spezialist
CHDK-Spezialist
 
Beiträge: 507
Registriert: 11.09.2009, 11:27
Kamera(s): A590IS_101B, SX260_100B

Re: [uBasic:] c++~~~~ ?" ^Enter next Level!^ ~~~~"

Beitragvon Caefix » 10.06.2019, 19:59

Ach ja, für die Jugend braucht´s einen Trailer.
&& Danke, Rudi, das Wichtigste steht jetzt 2* da.

Der Umschlag soll ja vorerst nur einige Experten ansprechen.
Vielleicht müssen wir warten, bis sie aus dem Urlaub zurück sind.
Dann wäre ich wohl bald nicht mehr der Einzige mit einem todo:FAST vollständig funkionierendem uBasic 2019 auf der Kamera.

Code: Alles auswählen
uBASIC by Adam Dunkels
http://www.sics.se/~adam/ubasic/

Pablo d'Angelo improved the parser to support labels and removed the line numbers.


Caefix improved the parser to support

9-stellige Zahlen
IgnoreCase  : If Wait_Click ELSEif etc.
Abkürzungen : wai.0, un.x, md_det., get_ori. etc. // >> 1. Treffer in kw->Liste (tokenizer.c) // avoid i.

Allg: on, off, true, false

   "?" = "print"
   "abs", "odd"
   "mod"="%"
   "xor"="^",
   "!"= "not",
   "!=" = "<>"
   "´" = "beep"
   ".".ein Bremserl, jeweils ein "sleep 50" Kürzel.
   "'".ein Bremserl, jeweils ein "sleep 1000" Kürzel.
   "~" = ein Separator zur Verbindung von Wünschen auf EINER Zeile.
// Now possible: if abs a!=3 then ..#a=33~#b=3~c=3~?a,b,#c else a=111 ~ b=222~ c=333 
   swap #a,#b;#c,#d;e,f
   
Ablauf:
   break | cont für do, for, while
   reset
   ++ calculated jump method: goto/gosub 100*i+x |0 = ignore
   ++ is_key|is_pressed K "up" 200+x ~...->> K=200+x

   loop= x : Reset & Neustart bei Fehler oder eof mit akuten Werten, solange <>0 // ++ loop=#@
   
   ++ Get_time 7|8+> Zeitstempel
   ++ hour,min,sec,msec,lsec : Laufzeit

Mathe wie C:
   i++, i+=x, i*=1000, i/=2, i%=10"+5ignored"*10 , i--
   I?x:y == wenn I!=0, I=x sonst I=y // wenn I, rechne mit x sonst y
   
   ++ "\r" | "\\r" == while (abs(r)>9) {r=r/10;}; "\-4210"=-4
   ++ "=~" etwa-Operator: if X =~ 100;4 then ? "[96..104] == true"

   ++ # als Variablensignal. ++ let

++   10  weitere Variablen, #0-#9 + ##  // #99=#9 ,immer mod 10
      bevorzugt als Vor-/Rückgabewerte zu nutzen mit/ siehe
   data [+5,|=5,]0,1,2,3,4,5,6,7,i*8,get_...
      oder [ [?+>][data+>]let] Makro hinter
      break, cont für do{once}, for{once}, while, goto, gosub, return, restore  // auch:
   let I=1,i=2,c++,...
                    // return +5,0,i+x,get_orientation_sensor -> #5,#6,...=0,...
                    // ...then break ?i,"broken!". #4,#2 let i=1,x=42
   clean [m D] // setzt Bereich m-D=0, alle=0 ohne Param.

data 0,1,2,3,4,5,6,7,8,9
?#0,#1,#2,#3,#4,#5,#6,#7,#8,#9
0 1 2 3 4 5 6 7 8 9
data =5,0,1,2,3,4,5,6,7,8,99,10,11
?#0,#1,#2,#3,#4,#5,#6,#7,#8,#9,##
5 6 7 8 99 10 11 7 8 9 99
data +5,0,1,2,3,42,5,6,7,8,=
?#0,#1,#2,#3,#4,#5,#6,#7,#8,#9,##
5 6 7 8 99 0 1 2 3 42 42
   
*( <--
Comments: Multi~/InLine '{'...'}', man kann aber hineinspringen.
   ++ -- ignores Lua Commentline //
   ++ // ignores C Commentline  // (ganze Zeile)
   ++ "printed Commentline"    //
   ++ i%=10"+5ignored"*10
   ++ ... then exec skiptotodo else {todo...
*) <--
Logging: print : Aus '^' wird '"'.zu ',;' ++ ':'= \n '.'=endof?

Debugging: tron, tronly, troff, beep, bug, debug [0-2]
   list prefix: list ~ "Zeile" = print+do
   varlist ["comment"]
++  Fehlerzeile
   
++   Alter exit_alt & enter_alt Fehler im Aufruf '_statement': erledigt.

++ "shoot ~" : rawproof ??, // wartet bis Dateien geschlossen sind.
++ Glättung interner Abläufe (Schleifen/ Sprünge). , Zeilenende sychronisiert.

++ C Code allgemein leichter lesbar ( && ergänzbar :)

!! Der neue Parser entdeckt ein paar alte Syntaxfehler neu.

{!! Zw. wait_click & if is_key SLEEP(11) oder print. <- Da könnte das Todo|Voodoo sein, aber welcher Art?
Ein paar flag_yield gesetzt & weitergereicht, passt.}

"Sinnvoll für die Gemeinschaft ist auch eine Beschreibung von Einrichtung und Verwendung der CHDK-GCC-Toolchain."
Gewiss, was ist das? Caefix.
Dateianhänge
!!ubasic.zip
++ tokenizer.h, got lost somehow, sorry.
(52.11 KiB) Noch nie heruntergeladen
Caefix
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 19
Registriert: 15.06.2018, 19:14
Kamera(s): Einige!


Zurück zu Code-Ecke

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 5 Gäste