Mnemonic |
Opcode |
Parameter |
Beschreibung |
SETBRIGHT |
0x00
-0xBF |
<delay> |
Set
Brightness value for time <delay>
Assembler-Syntax: SETBRIGHT <value>,<delay>
Stellt die
Helligkeit auf den
Wert <value> ein. Der nachfolgende Befehl wird nach der
Zeit
<delay> (in "Ticks") ausgeführt. Der
Helligkeitswert wird
hierbei im Opcode codiert!
Wertebereich:
value: 0..191 (128 entspricht 100%)
delay: 0..255 |
LIGHTOFF |
0x00 |
<delay> |
Turn
Light Off for time <delay>
Andere Form von (SETBRIGHT 0,<delay>)
|
LIGHTON |
0x80 |
<delay> |
Turn
Light On for time <delay>
Andere Form von
(SETBRIGHT 128,<delay>) |
SMOOTHOFF |
0xC0 |
|
Turn
Smooth Mode Off
Helligkeitsänderungen nachfolgender SETBRIGHT-Anweisungen
erfolgen
direkt auf den angegebenen neuen Wert, ohne Zwischenwerte.
(Standardeinstellung) |
SMOOTHON |
0xC1 |
|
Turn
Smooth Mode On
Änderungen
zwischen den
Helligkeitswerten nachfolgender SETBRIGHT-Anweisungen erfolgen
kontinuierlich durch lineare Interpolation.
Implementation:
jedes Steuerkommando mit Opcode >=
0xC0 unterbricht ggf. den
Smooth-Modus
an dieser Programmstelle. SMOOTH bleibt aktiviert, aber es entsteht
ggf. ein Helligkeits-Sprung. |
HALTSWOFF |
0xC2 |
|
Halt
while Channel's Switch is Off
Hält bei ausgeschaltetem Steuerschalter die
Programmausführung an dieser Stelle an, bis der Schalter
eingeschaltet wird. |
HALTSWON |
0xC3 |
|
Halt
while Channel's Switch is On
Hält bei eingeschaltetem Steuerschalter die
Programmausführung an dieser Stelle an, bis der Schalter
ausgeschaltet wird. |
JSWOFF |
0xC4 |
<addr> |
Jump
if Channel's Switch is Off
Wenn der dem eigenen Kanal zugeordnete
Steuerschalter ausgeschaltet ist, wird das Programm an
Speicheradresse <addr> fortgesetzt. |
JSWON |
0xC5 |
<addr> |
Jump
if Channel's Switch is On
Wenn
der dem eigenen Kanal zugeordnete Steuerschalter eingeschaltet ist,
wird das Programm an Speicheradresse <addr> fortgesetzt. |
CLRSW |
0xC6 |
|
Clear
Channel's Switch
Schaltet den dem eigenen Kanal zugeordneten Steuerschalter auf "aus".
|
SETSW |
0xC7 |
|
Set
Channel's Switch
Schaltet den dem eigenen Kanal zugeordneten Steuerschalter auf "ein". |
JUMP |
0xC8 |
<addr> |
Jump
Das Programm wird an Speicheradresse <addr> fortgesetzt.
|
RNDDLY |
0xC9 |
<maxticks> |
Random
Delay
Das Programm wird nach einer zufällig erzeugten Wartezeit
zwischen 0 und <maxticks> fortgesetzt. |
RNDBRT |
0xCA |
<min>,<max>,<delay> |
Set
Random Brightness
Der Helligkeitswert wird zufällig im Bereich
<min> bis
<max> eingestellt und liegt für die Dauer
<delay> dort
an.
funktioniert
nicht im Smooth-Modus |
RNDJMP |
0xCB |
<chance>,<addr> |
Random
Jump
Das Programm wird mit der Wahrscheinlichkeit <chance> an
Addresse <addr> fortgesetzt.
<chance> = 0..128 für nie bis immer. |
JSWXOFF |
0xCC |
<x>,<addr> |
Jump
if Switch X is Off
Wenn der Steuerschalter <x> ausgeschaltet ist, wird das
Programm an Speicheradresse <addr> fortgesetzt. |
JSWXON |
0xCD |
<x>,<addr> |
Jump
if Switch X is On
Wenn der Steuerschalter <x> eingeschaltet ist, wird das
Programm an Speicheradresse <addr> fortgesetzt. |
CLRSWX |
0xCE |
<x> |
Clear
Switch X
Der Steuerschalter <x> wird ausgeschaltet |
SETSWX |
0xCF |
<x> |
Set
Switch X
Der Steuerschalter <x> wird eingeschaltet |
DEFTICKLEN |
0xD0 |
<time> |
Define Length
of Tick (Header-Befehl)*
Definiert die Länge eines Ticks in Millisekunden.
Standard-Wert: 10 ms
funktioniert
nur, wenn das Programm mit
"#define COMMTICK 0" assembliert wird! |
DEFBRIGHT |
0xD1 |
<value> |
Define
Brightness Multiplier (Header-Befehl)*
Definiert einen
Helligkeits-Multiplikator für den
Ausgangs-Kanal.
Bereich: 0..255, Standardwert = 128 = *1.0 |
DEFSWITCH |
0xD2 |
<x> |
Define
Channel Switch (Header-Befehl)*
Definiert einen anderen
Schalter, der dem Ausgangs-Kanal zugeordnet ist
(= channel switch)
Standard: x = Kanalnummer |
DEFVAR |
0xD3 |
<x> |
Define
Control Variable (Header-Befehl)*
Definiert eine andere
Steuerwert-Variable, die dem Kanal zugeordnet ist
(= channel variable)
Standard: x = Kanalnummer |
JVARB |
0xD8 |
<val>,<addr> |
Jump
if Channel's Variable is Below <val>
Wenn der inhalt der dem Kanal zugeordneten Variablen kleiner ist als
<val>, wird das Programm bei <addr>
fortgesetzt. |
JVARAE |
0xD9 |
<val>,<addr> |
Jump
if Channel's Variable is Above or Equal <val>
Wenn
der inhalt der dem Kanal zugeordneten Variablen
größer oder gleich
<val> ist, wird das Programm bei <addr>
fortgesetzt. |
JVARXB |
0xDA |
<x>,<val>,<addr> |
Jump
if Variable X is Below <val>
Wenn
der inhalt Variablen <x> kleiner ist als
<val>, wird das Programm bei <addr>
fortgesetzt. |
JVARXAE |
0xDB |
<x>,<val>,<addr> |
Jump
if Variable X is Above or Equal <val>
Wenn
der inhalt der Variablen <x> größer
oder gleich
<val> ist, wird das Programm bei <addr>
fortgesetzt. |
DELAY |
0xDC |
<delay> |
Delay
Fügt eine
Wartezeit von <delay>
Ticks ein. Der vor diesem Befehl eingestellte Helligkeitswert wird
nicht verändert. |
P_RESET |
0xFF |
|
Program Reset
Setzt für
den aktuellen Kanal den
Programmzähler auf
die Einsprungadresse zurück und aktiviert die
folgenden Werte:
- Ausgangs-Helligkeit:
0
(Licht aus)
- Smooth-Modus:
aus
- Ticklänge:
Default
(10ms)
Schalterstellungen,
Variablen und deren
Zuordnungen bleiben unverändert.
|
*Header Befehle:
diese Anweisungen müssen am Programmanfang stehen, d.h.
unmittelbar nach Einsprungadresse und vor allen anderen Befehlen. Jeder
andere Befehl, als vom Typ "Header", macht Header-Befehle im
nachfolgenden Programmablauf unwirksam. |