+ //Don't write anywhere else than into these two bits
+ s->BAR0.GPIOC = (value & (GPIOC_LDAC_mask | GPIOC_DACEN_mask)) | GPIOC_default_value;
+ socket_write("GPIOC", s->BAR0.GPIOC);
+
+ //Is DAC enabled & Output enabled?
+ if (!(s->BAR0.GPIOC & GPIOC_LDAC_mask) &&
+ (s->BAR0.GPIOC & GPIOC_DACEN_mask)) {
+ socket_write("DA0", s->BAR2.DA0);
+ socket_write("DA1", s->BAR2.DA1);
+ socket_write("DA2", s->BAR2.DA2);
+ socket_write("DA3", s->BAR2.DA3);
+ socket_write("DA4", s->BAR2.DA4);
+ socket_write("DA5", s->BAR2.DA5);
+ socket_write("DA6", s->BAR2.DA6);
+ socket_write("DA7", s->BAR2.DA7);
+ }
+
+ //Is output forced to GND?
+ if (!(s->BAR0.GPIOC & GPIOC_DACEN_mask))
+ {
+ #define GND 0
+ socket_write("DA0", GND);
+ socket_write("DA1", GND);
+ socket_write("DA2", GND);
+ socket_write("DA3", GND);
+ socket_write("DA4", GND);
+ socket_write("DA5", GND);
+ socket_write("DA6", GND);
+ socket_write("DA7", GND);
+ }
+