Difference between revisions of "U23 2005/Gui"

From C4 Wiki
Jump to: navigation, search
m (Subkategorie)
 
(11 intermediate revisions by 5 users not shown)
Line 1: Line 1:
'''Ideen''':
+
== Daily Snapshot, Last Update: <i>23. November 2005</i> ==
- Background / Colourobjekt (Farben setzen?)
 
- Lampen simulieren?
 
- Colour Picker
 
- Lampen-Timeline oder Blöcke aufeinanderstapeln
 
- Scripte absichern (angezeigt als kleine fnordlichter)
 
- Letztendlich: Code auf Mausklick erstellen (fertig zum Kompilieren)
 
  
  '''Unbedingt beachten''':
+
  &rarr; [http://stuff.die-kassetten.de/fnordlicht/gui/ Flash 8 Objekt '''öffnen''']
- Scripte mit anderer Gruppe abpassen und angleichen
+
  &rarr; [http://macromedia.com/go/getflashplayer_de Flash-Plugin runterladen]
- möglichst benutzerfreundlich halten
 
  
 +
== Ein Script mit der GUI erstellen ==
 +
Ich habe bisher nur eine konkrete Möglichkeit für Windows, die ich beschreiben kann; vielleicht erbarmt sich jemand und schreibt meine Vermutungen einfach mal ins Richtige.
  
&rarr; [http://stuff.die-kassetten.de/fnordlicht/Klicky-GUI.html Daily Snapshot]
+
=== Script unter Windows ===
 +
----
  
'''Momentane Features''':
+
==== Einführung & Layout ====
  - Cooles Logo (mit virtuellem fnordlicht - wow! ;)
+
----
  - Super stylische Mauszeiger
 
  - '''Colour-Picker''':
 
  - Rot-, Grün- und Blaukanal als kleine Schieberegler
 
  - Eingabe von Hex-Zahlen
 
  - Live-Hex-Farben-Anzeige
 
  - Blöcke einstellbar (50 Stück immerhin!)
 
  - Lücken können geschlossen werden (Button muss eventuell mehrmals geklickt werden)
 
  - Grundgerüst für das Script-Parsen ist vorhanden
 
  - Hilfe wird auf der linken Seite angezeigt, wenn Elemente gehovert werden
 
  
'''Auf jeden Fall fehlende Features''':
+
Zunächst [http://stuff.die-kassetten.de/fnordlicht/gui/ öffne die GUI]. Du wirst ein Logo sehen und ratlos auf ein virtuelles fnordlicht starren. Das muss nicht ewig so blieben, klicke einfach unten rechts auf "'''go'''". Es offenbart sich Dir die '''richtige''' GUI.<br>
 
+
Ganz links ist ein grauer Kasten, in dem später Tooltipps angezeigt werden. Dann, direkt daneben, sind die Boxen, die das Programm symbolisieren. In diesen Boxen werden alle Einstellungen gemacht. Direkt neben den Boxen ist der Scrollbalken und drei Buttons. Der oberste fügt einen Slot hinzu, der dadrunter löcht den letzten und der ganz unten schiebt die Slots eine Box nach oben, wenn über ihnen eine Box frei ist.
  - Simulation des Programms
+
Dann kommt ein großer weißer Kasten, in dem später der Code drin steht. Weiteres sind der Colour-Picker unten rechts und ein weiteres "'''go'''" oben rechts in der Ecke. ''Dieses'' go generiert den Code.
  
'''Momentane Arbeit''':
+
Fangen wir an. Jede Box hat in seiner Titelleiste vier Symbole. Die Funktionen derer von Links nach Rechts sind:
  ''raffiX'':
+
* alle Boxen einschließlich der angeklickten um '''einen Slot nach unten verschieben'''
  - hat Pause ;)
+
* die angeklickte Box '''leeren'''
 +
* einen Warte-Befehl erstellen
 +
** ''Ist unterteilt in:''
 +
**# warte eine Zeit in '''15tel Sekunden'''
 +
**# warte, bis '''alle Channel''' fertig sind
 +
* fade zu einer Farbe
 +
** ''Speed bedeutet:''
 +
*** 0: Farbe wird '''direkt''' gesetzt
 +
*** 1-99: Je '''kleiner''', desto '''langsamer''' der "Fade"
  
'''Code-Ausgabe''' (Demo; noch nicht geprüft!)
+
==== Erste Schritte ====
+
----
  ; ersetze die Codes in static_scripts.inc durch Folgendes
+
 
 +
Angenommen, wir wollten ein Programm erstellen, das kontinuierlich blitzt und so Leuten auf den Keks geht.<br>Wir erstellten also ein Programm, das stetig schwarz und weiß wird. Es soll blitzen, daher macht ein Fade keinen Sinn.<br>
 +
Erstelle also eine ''Fade-Box''.
 +
 
 +
http://stuff.die-kassetten.de/fnordlicht/gui/01-create_box.gif
 +
 
 +
Es ist nicht verkehrt, die 0 zu lassen; schließlich brauchen wir keinen Fade.<br>Jetzt machen wir uns an's Einstellen der Farbe. Hierzu musst Du erst auf "'''pick'''" klicken und dann im ColourPicker unten entweder die Regler verstellen, den HEX-Code eingeben oder auf die Vorschau klicken, um eine zufällige Farbe zu generieren.<br>Für unsere Zwecke reicht es aber, den HEX-Code #000000 einzugeben; schwarz.
 +
 
 +
http://stuff.die-kassetten.de/fnordlicht/gui/02-set_colour-1.gif http://stuff.die-kassetten.de/fnordlicht/gui/02-set_colour-2.gif
 +
 
 +
Als nächstes wollen wir das fnordlicht warten lassen. Sonst macht das Ganze keinen Sinn. Warten wir also zwei 15tel Sekunde, das sollte für ein Flackern ausreichen.
 +
 
 +
http://stuff.die-kassetten.de/fnordlicht/gui/03-create_wait.gif
 +
 
 +
Als nächstes erstellen wir eine Box, die #ffffff als Farbe hat; weiß.<br>Dann wiederholen wir die Prozedur aus der zweiten Box mit der vierten.
 +
 
 +
Anschließend sollten wir ein Programm über vier Boxen haben.
 +
 
 +
http://stuff.die-kassetten.de/fnordlicht/gui/04-program.gif
 +
 
 +
Jetzt klicken wir oben rechts auf "'''go'''" und sehen uns an, was wir für ein Script bekommen.
 +
 
 +
  ; ersetze die Codes in
 +
; static_scripts.inc durch Folgendes
 
   
 
   
 
  static_script_table:
 
  static_script_table:
Line 44: Line 62:
 
   
 
   
 
  static_script_r:
 
  static_script_r:
 +
 
   MACRO_SET_CHANNEL ChannelR, 0x00
 
   MACRO_SET_CHANNEL ChannelR, 0x00
   MACRO_WAIT (1<<ChannelR)
+
   MACRO_SLEEP 16
   MACRO_WAIT (1<<ChannelG)
+
   MACRO_SET_CHANNEL ChannelR, 0xff
  MACRO_WAIT (1<<ChannelB)
+
   MACRO_SLEEP 16
  MACRO_FADE_CHANNEL ChannelR, 0xff, 35, 0
+
   MACRO_JUMP -5
  MACRO_WAIT (1<<ChannelR)
 
   MACRO_WAIT (1<<ChannelG)
 
  MACRO_WAIT (1<<ChannelB)
 
  MACRO_FADE_CHANNEL ChannelR, 0x00, 20, 0
 
   MACRO_JUMP -10
 
 
   
 
   
 
  static_script_g:
 
  static_script_g:
 +
 
   MACRO_SET_CHANNEL ChannelG, 0x00
 
   MACRO_SET_CHANNEL ChannelG, 0x00
   MACRO_WAIT (1<<ChannelR)
+
   MACRO_SLEEP 16
   MACRO_WAIT (1<<ChannelG)
+
   MACRO_SET_CHANNEL ChannelG, 0xff
  MACRO_WAIT (1<<ChannelB)
+
   MACRO_SLEEP 16
  MACRO_FADE_CHANNEL ChannelG, 0x00, 35, 0
+
   MACRO_JUMP -5
  MACRO_WAIT (1<<ChannelR)
 
   MACRO_WAIT (1<<ChannelG)
 
  MACRO_WAIT (1<<ChannelB)
 
  MACRO_FADE_CHANNEL ChannelG, 0x00, 20, 0
 
   MACRO_JUMP -10
 
 
   
 
   
 
  static_script_b:
 
  static_script_b:
 +
 
   MACRO_SET_CHANNEL ChannelB, 0x00
 
   MACRO_SET_CHANNEL ChannelB, 0x00
   MACRO_WAIT (1<<ChannelR)
+
   MACRO_SLEEP 16
   MACRO_WAIT (1<<ChannelG)
+
   MACRO_SET_CHANNEL ChannelB, 0xff
   MACRO_WAIT (1<<ChannelB)
+
   MACRO_SLEEP 16
   MACRO_FADE_CHANNEL ChannelB, 0xff, 35, 0
+
   MACRO_JUMP -5
  MACRO_WAIT (1<<ChannelR)
+
 
  MACRO_WAIT (1<<ChannelG)
+
==== Programm hochladen ====
  MACRO_WAIT (1<<ChannelB)
+
----
  MACRO_FADE_CHANNEL ChannelB, 0x00, 20, 0
+
 
  MACRO_JUMP -10
+
Zunächst brauchen wir avrdude[http://savannah.nongnu.org/download/avrdude/], avra[http://sourceforge.net/project/showfiles.php?group_id=55499] und die Firmware[http://koeln.ccc.de/prozesse/running/fnordlicht/fnordlicht-0.2.tar.gz]. An diesem Punkt helfe nicht weiter; da kann man noch 'was selbst machen.<br>So, unter Windows kann man das ganz einfach machen. Entpacke / Installiere einfach alle drei Sachen in einen Ordner, und zwar so, dass die Firmware und die Binaries von avra und avrdude in einem Ordner sind. So muss man nicht noch mehr basteln. Das ist zwar unübersichtlich, aber so geht's.
 +
Dann lege eine Batch-Datei an (die mit der Endung .bat). Schreibe Folgendes hinein:
 +
 
 +
@echo off
 +
avra --max_errors 1 fnordlicht.asm *.inc
 +
pause > nul:
 +
avrdude -p m8 -c butterfly -P '''<com>''' -U f:w:fnordlicht.hex
 +
pause > nul:
 +
 
 +
'''<com>''' ist zu ersetzen durch den Port; bei mir war das com1.
 +
''(Beispiel ausgehend von der Tatsache, dass man den Serial-Converter hat und benutzt!)''
 +
Wenn Du nun den Code in der static_scripts.inc änderst und diese Batch-Datei ausführst, so sollte die Firmware hochgeladen werden.
 +
 
 +
==== Schlusswort ====
 +
----
 +
So, das ist auch eigentlich schon alles, was man wissen muss. Ich wünsche viel Spaß.<br>--[[User:RaffiX|raffiX]] 21:02, 23 Nov 2005 (CET)
 +
 
 +
=== Script unter MacOS ===
 +
----
 +
 
 +
''Mir ist leider nicht bekannt, dass es die nötigen Programme für MacOS gibt. Das heißt aber nicht, dass es keine Alternativen gibt. Wenn einer weiß, wie's unter MacOS geht, möge er es gerne hier reinschreiben.''
 +
 
 +
=== Script unter Linux ===
 +
----
 +
 
 +
''Leider hat sich Macromedia nocht nicht dazu aufraffen können, das Flash-8-Plugin für Linux herauszubringen. Sollte es Neuigkeiten geben, werde ich diesen Bereich erweitern.''
 +
 
 +
== Link-Liste ==
 +
[1] http://savannah.nongnu.org/download/avrdude/<br>
 +
[2] http://sourceforge.net/project/showfiles.php?group_id=55499<br>
 +
[3] http://koeln.ccc.de/prozesse/running/fnordlicht/fnordlicht-0.2.tar.gz<br>
 +
 
 +
[[Category:U23 2005]]

Latest revision as of 14:20, 28 May 2007

Daily Snapshot, Last Update: 23. November 2005

Flash 8 Objekt öffnenFlash-Plugin runterladen

Ein Script mit der GUI erstellen

Ich habe bisher nur eine konkrete Möglichkeit für Windows, die ich beschreiben kann; vielleicht erbarmt sich jemand und schreibt meine Vermutungen einfach mal ins Richtige.

Script unter Windows


Einführung & Layout


Zunächst öffne die GUI. Du wirst ein Logo sehen und ratlos auf ein virtuelles fnordlicht starren. Das muss nicht ewig so blieben, klicke einfach unten rechts auf "go". Es offenbart sich Dir die richtige GUI.
Ganz links ist ein grauer Kasten, in dem später Tooltipps angezeigt werden. Dann, direkt daneben, sind die Boxen, die das Programm symbolisieren. In diesen Boxen werden alle Einstellungen gemacht. Direkt neben den Boxen ist der Scrollbalken und drei Buttons. Der oberste fügt einen Slot hinzu, der dadrunter löcht den letzten und der ganz unten schiebt die Slots eine Box nach oben, wenn über ihnen eine Box frei ist. Dann kommt ein großer weißer Kasten, in dem später der Code drin steht. Weiteres sind der Colour-Picker unten rechts und ein weiteres "go" oben rechts in der Ecke. Dieses go generiert den Code.

Fangen wir an. Jede Box hat in seiner Titelleiste vier Symbole. Die Funktionen derer von Links nach Rechts sind:

  • alle Boxen einschließlich der angeklickten um einen Slot nach unten verschieben
  • die angeklickte Box leeren
  • einen Warte-Befehl erstellen
    • Ist unterteilt in:
      1. warte eine Zeit in 15tel Sekunden
      2. warte, bis alle Channel fertig sind
  • fade zu einer Farbe
    • Speed bedeutet:
      • 0: Farbe wird direkt gesetzt
      • 1-99: Je kleiner, desto langsamer der "Fade"

Erste Schritte


Angenommen, wir wollten ein Programm erstellen, das kontinuierlich blitzt und so Leuten auf den Keks geht.
Wir erstellten also ein Programm, das stetig schwarz und weiß wird. Es soll blitzen, daher macht ein Fade keinen Sinn.
Erstelle also eine Fade-Box.

http://stuff.die-kassetten.de/fnordlicht/gui/01-create_box.gif

Es ist nicht verkehrt, die 0 zu lassen; schließlich brauchen wir keinen Fade.
Jetzt machen wir uns an's Einstellen der Farbe. Hierzu musst Du erst auf "pick" klicken und dann im ColourPicker unten entweder die Regler verstellen, den HEX-Code eingeben oder auf die Vorschau klicken, um eine zufällige Farbe zu generieren.
Für unsere Zwecke reicht es aber, den HEX-Code #000000 einzugeben; schwarz.

http://stuff.die-kassetten.de/fnordlicht/gui/02-set_colour-1.gif http://stuff.die-kassetten.de/fnordlicht/gui/02-set_colour-2.gif

Als nächstes wollen wir das fnordlicht warten lassen. Sonst macht das Ganze keinen Sinn. Warten wir also zwei 15tel Sekunde, das sollte für ein Flackern ausreichen.

http://stuff.die-kassetten.de/fnordlicht/gui/03-create_wait.gif

Als nächstes erstellen wir eine Box, die #ffffff als Farbe hat; weiß.
Dann wiederholen wir die Prozedur aus der zweiten Box mit der vierten.

Anschließend sollten wir ein Programm über vier Boxen haben.

http://stuff.die-kassetten.de/fnordlicht/gui/04-program.gif

Jetzt klicken wir oben rechts auf "go" und sehen uns an, was wir für ein Script bekommen.

; ersetze die Codes in
; static_scripts.inc durch Folgendes

static_script_table:
 .dw static_script_r
 .dw static_script_g
 .dw static_script_b

static_script_r:

 MACRO_SET_CHANNEL ChannelR, 0x00
 MACRO_SLEEP 16
 MACRO_SET_CHANNEL ChannelR, 0xff
 MACRO_SLEEP 16
 MACRO_JUMP -5

static_script_g:

 MACRO_SET_CHANNEL ChannelG, 0x00
 MACRO_SLEEP 16
 MACRO_SET_CHANNEL ChannelG, 0xff
 MACRO_SLEEP 16
 MACRO_JUMP -5

static_script_b:

 MACRO_SET_CHANNEL ChannelB, 0x00
 MACRO_SLEEP 16
 MACRO_SET_CHANNEL ChannelB, 0xff
 MACRO_SLEEP 16
 MACRO_JUMP -5

Programm hochladen


Zunächst brauchen wir avrdude[1], avra[2] und die Firmware[3]. An diesem Punkt helfe nicht weiter; da kann man noch 'was selbst machen.
So, unter Windows kann man das ganz einfach machen. Entpacke / Installiere einfach alle drei Sachen in einen Ordner, und zwar so, dass die Firmware und die Binaries von avra und avrdude in einem Ordner sind. So muss man nicht noch mehr basteln. Das ist zwar unübersichtlich, aber so geht's. Dann lege eine Batch-Datei an (die mit der Endung .bat). Schreibe Folgendes hinein:

@echo off
avra --max_errors 1 fnordlicht.asm *.inc
pause > nul:
avrdude -p m8 -c butterfly -P <com> -U f:w:fnordlicht.hex
pause > nul:

<com> ist zu ersetzen durch den Port; bei mir war das com1. (Beispiel ausgehend von der Tatsache, dass man den Serial-Converter hat und benutzt!) Wenn Du nun den Code in der static_scripts.inc änderst und diese Batch-Datei ausführst, so sollte die Firmware hochgeladen werden.

Schlusswort


So, das ist auch eigentlich schon alles, was man wissen muss. Ich wünsche viel Spaß.
--raffiX 21:02, 23 Nov 2005 (CET)

Script unter MacOS


Mir ist leider nicht bekannt, dass es die nötigen Programme für MacOS gibt. Das heißt aber nicht, dass es keine Alternativen gibt. Wenn einer weiß, wie's unter MacOS geht, möge er es gerne hier reinschreiben.

Script unter Linux


Leider hat sich Macromedia nocht nicht dazu aufraffen können, das Flash-8-Plugin für Linux herauszubringen. Sollte es Neuigkeiten geben, werde ich diesen Bereich erweitern.

Link-Liste

[1] http://savannah.nongnu.org/download/avrdude/
[2] http://sourceforge.net/project/showfiles.php?group_id=55499
[3] http://koeln.ccc.de/prozesse/running/fnordlicht/fnordlicht-0.2.tar.gz