c86470ec0fc9f1da7754eff2242859c3acec027f
[akaros.git] / user / apps / parlib / matrix.c
1 #include <stdlib.h>
2 #include <string.h>
3 #include <stdio.h>
4 #include <unistd.h>
5 #include <parlib.h>
6 #include <ros/common.h>
7 #include <sys/stat.h>
8
9 extern char * readline(const char *prompt);
10 extern void draw_nanwan();
11 extern void clrscrn(int leaverows);
12 extern void change_user();
13 extern void set_default_user();
14 extern void file_io();
15 extern void file_error();
16 extern void run_binary(size_t colors);
17 extern int  run_binary_filename(const char* fn, size_t colors);
18 extern void run_binary_colored();
19 extern char prompt[256];
20
21 void help() {
22         printf("Possible commands to run:\n"
23            "  draw_nanwan:      Draw a picture of Nanwan, our mascot giraffe\n"
24            "  clear_screen:     Clear the Screen\n"
25            "  change_user:      Change Username\n"
26            "  reboot:           Hopefully you can figure this one out...\n"
27            "  file_io:          Run File Related IO Tests\n"
28            "  file_error:       Run File Error Related Tests\n"
29            "  run_binary:       Load and run a binary located on the remote server\n"
30            "  run_binary_colored:       Load and run a binary located on the remote server with a specified number of page colors\n"
31               );
32 }
33
34 int main(int argc, char** argv)
35 {       
36         set_default_user();
37         printf("Welcome to the Tessellation OS newlib test suite!\n");
38         printf("Enter at your own risk....\n");
39         clrscrn(2);
40         while(1) {
41                 char* s = readline(prompt);
42
43                 if (s == NULL)
44                         continue;
45
46                 if(strcmp(s, "draw_nanwan") == 0)
47                         draw_nanwan();          
48                 else if(strcmp(s, "clear_screen") == 0)
49                         clrscrn(0);             
50                 else if (strcmp(s, "change_user") == 0)
51                         change_user();
52                 else if (strcmp(s, "reboot") == 0)
53                         sys_reboot();
54                 else if (strcmp(s, "file_io") == 0)
55                         file_io();
56                 else if (strcmp(s, "file_error") == 0)
57                         file_error();
58                 else if (strcmp(s, "run_binary") == 0)
59                         run_binary(0);
60                 else if (strcmp(s, "run_binary_colored") == 0)
61                         run_binary_colored();
62                 else if (run_binary_filename(s,0) == 0)
63                         ;
64                 else
65                         help(); 
66
67         }       
68         return 0;
69 }