+/* file operations */
+static vi_file *file_open(const char *path, unsigned int flags);
+static void file_close(vi_file *file);
+static long file_size(vi_file *file);
+static void *file_map(vi_file *file);
+static void file_unmap(vi_file *file);
+static long file_read(vi_file *file, void *buf, long count);
+static long file_write(vi_file *file, void *buf, long count);
+static long file_seek(vi_file *file, long offs, int whence);
+
+static struct visor *vi;
+
+static int num_fpaths;
+static char **fpaths;
+
+static struct vi_alloc alloc = {
+ malloc, free, realloc
+};
+
+static struct vi_fileops fops = {
+ file_open, file_close, file_size,
+ file_map, file_unmap,
+ file_read, file_write, file_seek
+};
+
+/*
+static struct vi_ttyops ttyops = {
+ tty_clear, tty_clear_line, tty_clear_line_at,
+ tty_setcursor, tty_putchar, tty_putchar_at,
+ tty_scroll, tty_del_back, tty_del_fwd, tty_status
+};
+*/