diff --git a/duck/duck.c b/duck/duck.c index c72638c9cdbf33a169c6272feb95a4f75f24f2a9..280eb9e4c44e6698c78d959312d884fe5604bc3a 100644 --- a/duck/duck.c +++ b/duck/duck.c @@ -91,6 +91,10 @@ int main(int argc, char **argv) shake(MOTOR_2, numnods, -90, 0, 250); i++; } + } else if (strcmp(argv[i], "print") == 0) { + if (argv[i+1]) { + duck_write_text(argv[i+1]); + } } } if (read_mode) { diff --git a/libduck/libduck.c b/libduck/libduck.c index cb4e3ece9d11d8cc2db3e1d63050024e54c7ff64..54c9caabb140c1436b5bc4872a9101d0daf8ffe0 100644 --- a/libduck/libduck.c +++ b/libduck/libduck.c @@ -88,6 +88,11 @@ int duck_set_velocity(int motor, int deg_per_sec, int ms) return duck_printf("v %d %d %d\n", motor, deg_per_sec, ms); } +int duck_write_text(const char *str) +{ + return duck_printf("t %s\n", str); +} + void read_duck_to_stdout(void) { while (1) { diff --git a/libduck/libduck.h b/libduck/libduck.h index 68e17cbc11998d5a582fb4c3b132529114e33a5a..9ce01667bf2b107d35497b1a3b4a7de3b95fa6bf 100644 --- a/libduck/libduck.h +++ b/libduck/libduck.h @@ -16,6 +16,7 @@ void configure_duck(void); int duck_set_position(int motor, int angle); int duck_delay(int ms); int duck_set_velocity(int motor, int deg_per_sec, int ms); +int duck_write_text(const char *str); void read_duck_to_stdout(void); void close_duck(void);