summaryrefslogtreecommitdiffstats
path: root/konsole/tests/ripple.c
diff options
context:
space:
mode:
Diffstat (limited to 'konsole/tests/ripple.c')
-rw-r--r--konsole/tests/ripple.c29
1 files changed, 29 insertions, 0 deletions
diff --git a/konsole/tests/ripple.c b/konsole/tests/ripple.c
new file mode 100644
index 000000000..7047c7f94
--- /dev/null
+++ b/konsole/tests/ripple.c
@@ -0,0 +1,29 @@
+/*
+ Ripple test.
+ Usage: ripple [ w [ l ] ]
+ w = screen line width, default 80, must be > 0, max 132.
+ l = how many lines to display, default 1000, must be > 0.
+ Author: Frank da Cruz, Columbia University, 1995.
+*/
+char *crlf = "\015\012";
+char *p = " !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]\
+^_`abcdefghijklmnopqrstuvwxyz{|}~ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGH\
+IJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ !\"#$%&'()*+,-./012\
+3456789:;<=>?@ABCD";
+
+main(argc,argv) int argc; char *argv[]; {
+ int i, j, w = 80, l = 1000;
+
+ if (argc > 1) /* User-specified width */
+ w = atoi(argv[1]);
+ if (argc > 2) /* User-specified number of lines */
+ l = atoi(argv[2]);
+ if (w < 1 || l < 1 || w > 132) /* Quit upon conversion error */
+ exit(1);
+
+ for (j = i = 0; i < l; i++) { /* Ripple loop */
+ write(1, p+j, w);
+ write(1, crlf, 2);
+ if (++j > 94) j = 0;
+ }
+}