Index: trunk/Ohana/src/opihi/cmd.data/jpeg.c
===================================================================
--- trunk/Ohana/src/opihi/cmd.data/jpeg.c	(revision 7917)
+++ trunk/Ohana/src/opihi/cmd.data/jpeg.c	(revision 13479)
@@ -4,5 +4,6 @@
 
   char filename[1024];
-  int N, Source, Nsource, IsImage, IsPNG;
+  int N, kapa, IsImage, IsPNG, IsPPM;
+  char *name;
   
   if ((N = get_argument (argc, argv, "--help"))) {
@@ -12,9 +13,15 @@
 
   /* image type */
-  IsPNG = TRUE;
+  IsPPM = IsPNG = FALSE;
   if ((N = get_argument (argc, argv, "-ppm"))) {
     remove_argument (N, &argc, argv);
-    IsPNG = FALSE;
+    IsPPM = TRUE;
   }
+  if ((N = get_argument (argc, argv, "-png"))) {
+    remove_argument (N, &argc, argv);
+    IsPNG = TRUE;
+  }
+  if (!strcmp (argv[0], "png")) IsPNG = TRUE;
+  if (!strcmp (argv[0], "ppm")) IsPPM = TRUE;
 
   /* file name */
@@ -27,31 +34,30 @@
 
   /* display source */
-  Nsource = -1;
+  name = NULL;
   if ((N = get_argument (argc, argv, "-n"))) {
     remove_argument (N, &argc, argv);
-    Nsource = atof (argv[N]);
+    name = strcreate (argv[N]);
     remove_argument (N, &argc, argv);
   }
+
+  /* XXX output png / jpeg needs to include both graph and image
+     if available.  this is a poor mix of data representations 
+     (png for image / jpeg for plots)
   if ((N = get_argument (argc, argv, "-g"))) {
-    remove_argument (N, &argc, argv);
-    SetImageDevice (FALSE);
-  }  
   if ((N = get_argument (argc, argv, "-i"))) {
-    remove_argument (N, &argc, argv);
-    SetImageDevice (TRUE);
-  }  
-  IsImage = GetCurrentDevice ();
-  if (IsImage) {
-    if (!GetImage (&Source, &Nsource)) return (FALSE);
-    if (!filename[0]) strcpy (filename, "Ximage.jpg");
-    KiiJPEG (Source, filename);
-  } else {
-    if (!GetGraph (NULL, &Source, &Nsource)) return (FALSE);
-    if (!filename[0]) strcpy (filename, "Xgraph.png");
-    if (IsPNG) {
-      KapaPNG (Source, filename);
-    } else {
-      KapaPPM (Source, filename);
-    }
+  */
+
+  if (!GetGraph (NULL, &kapa, name)) return (FALSE);
+  if (!IsPNG && !IsPPM) {
+    if (!filename[0]) strcpy (filename, "kapa.jpg");
+    KiiJPEG (kapa, filename);
+  }
+  if (IsPNG) {
+    if (!filename[0]) strcpy (filename, "kapa.png");
+    KapaPNG (kapa, filename);
+  } 
+  if (IsPPM) {
+    if (!filename[0]) strcpy (filename, "kapa.ppm");
+    KapaPPM (kapa, filename);
   }
   return (TRUE);
