
                    \     /  ))
                 (( |\   / \  ))
                ((( | \ |   \
                 (( |  \|    | \ \
                     \  \\  /   ) )               Khoros System 1.0 P 5
  ---------          __\|_\/   (* *)                Bug List
--------          (_/       \== \ /                                        
   ----------       \_______/    V
                      ))))))
		

		
		 	KHOROS 1.0 Patch 5 BUG LIST


	This is a list of known bugs in Khoros programs.  Some bugs occur
	on all architectures, while others occur only on a particular 
	architecture, or in a particular situation.  Users should be aware
	of current problems,  both so that they can be expected, and also
	so that they need not be reported to khoros-bugs@chama.eece.unm.edu.

	General bugs (those that appear on most/all architectures) appear
	first, while the those that occur only in a particular environment
	are broken up into categories that follow.  Read the list of bugs 
	under "GENERAL", and then look below for any other problems that 
	may occur on your particular architecture / environment.  

	We have tried to test on most major architectures, but we simply
	don't have the facilities to test on them all.  Our major development
	architectures are DECMIPS and SUN4, on 8-plane workstations running
	the twm window manager, so Khoros will probably work best in a similar 
	environment; however, we have also compiled and tested on SGI, NeXt, 
	Sun3, and Cray.  

	In addition, many ports have been done by others to various 
	architectures; we have incorporated their ports 
	into our code but we have no way of testing it.  If you find bugs that 
	are not listed below, please mail them to us via 
	khoros-bugs@bullwinkle.eece.unm.edu => using the BugReport form found in
	$KHOROS_HOME/repos/BugReport.  Other correspondence may be mailed to 
	the Khoros Users Group, khoros@chama.eece.unm.edu.  If you are not on 
	the mailing list and you would like to be, please mail your request to
	khoros-request@bullwinkle.eece.unm.edu.   Thank you...


======================  GENERAL: ===============================

ANNOTATIONS -

*  annotations are created relative to device coordinates, not image
   coordinates (in editimage) or world coordinates (xprism).  this is
   a design flaw rather than a bug.

*  on some architectures, moving a filled polygon will cause the image
   to be "erased" in the area where the polygon was moved

	~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ 

CANTATA -

*  a minor bug in the refresh mechanism shows itself when working with
   procedures.  use the redraw button when necessary.

*  there is a major bug dealing with management of connections between 
   procedures and external glyphs (ie, glyphs in other procedures or a 
   parent workspace).  suppose you have a glyph inside a procedure (an 
   internal glyph);  this glyph is connected to another glyph in the parent 
   procedure (the external glyph).  if you delete the internal glyph,
   cantata will not delete the connection between the external glyph and
   the procedure.  the only way to delete this connection is to delete the
   whole procedure.  after this has occurred for the first time, cantata
   may exhibit strange behavior, or even crash.

*  there is scheduling problems when using "Responsive Mode" set to "on".
   These problems usually occur when scheduling out of a procedure or
   when using fairly complex control (looping) networks.

*  changing connections for procedures will change the internal connection name,
   but not the external connection name;  therefore, it is necessary to hit
   "RESET" before trying to reschedule the procedure after changing its 
   connection. 

*  If the user types in a filename, cantata assumes that it isn't a duplicate 
   filename.  This is a problem if the filename being typed in is a temporary 
   file from a different part of the system.  Meaning, if cantata created a 
   file called tx123 and if the user typed in tx123 into a different glyph,
   cantata would think that tx123 was a permanent file (not temporary) for that 
   glyph.  Next time the user restores the workspace, cantata will not re-
   create a new filename for that glyph; this can lead to some confusion.

*  Single clicks on a connection are used to bring up connection information;
   if you double click on a connection, and then do "delete connection", 
   cantata will crash.

*  If you have errors in cantata (frowny faces) and you exit out of cantata, 
   the temp error files are not removed.  Use "RESET" before exiting to
   remove temp error files.

*  When you do a journal playback of cantata, executions of xvroutines called
   from cantata are not recorded.

          ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ 

COMPOSER -

* In composer, when using the UI spec generator, there is no way of killing
  the pane once you're fininshed generating it, short of exiting composer.  
  "Close" only closes the composer UI spec pane.

* If you comment out lines in a UIS file, use of composer with the UIS file
  will cause the commented UIS lines to be wiped out.

* If you delete an entire portion of a *.prog file (for example, the 
  "-include_macros" section to remove the definition of a sole macro), and
  use composer to remove it by selecting the appropriate button (in this
  example, "MAIN MACROS") to delete the entire contents of the window,
  and then "USE", the contents don't really get deleted.


	~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ 
CONCERT - 

*  does not exit from the originating machine after all parties have 
   hit their respective "Quit" buttons; you must hit ^C on the 
   originating machine to exit.

*  when used with WARPIMAGE, deletion of tiepoints will not propagate 
   to other workstations unless that party's mouse pointer is exactly on top of 
   the same tiepoint that the first person is deleting.  This is because 
   warpimage queries the mouse before deleting a tiepoint.

*  often all users must click on error messages to make 
   them go away.

	~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ 

DISTRIBUTED PROCESSING -

*  certain routines that have not been converted to use data transport
   mechanisms WILL NOT work with either distributed processing or the
   data transport mechanisms.  These programs include:
   
	xprism2 used with ascii functions or ascii data
	xprism3 used with ascii functions or ascii data

	xvhelp

	vprdata
	vprmap
	vfileinfo
	vstats
	vshape
	vhisto 

EDITIMAGE -

*  when used with a large font: the Pixel Display widget (Print Pixels) is not 
   created according to the current font size;  you may have to manually resize 
   the pixel display in order to see all the little pixel-value boxes.  

*  If your image is smaller than the zoom window,
   the cursor will not move within the zoom window
   when you move the cursor within the image.

*  The LUT and PsuedoColor operations have the design limitation that they
   only make sense with 8-bit (pseudocolor) images.  24-bit images cause LUT
   and PsuedoColor operations to not make sense.

*  If you are displaying a multi-banded image, and alter the colormap of the
   displayed band, you will lose that colormap when you change bands.

	~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ 

GHOSTWRITER -

*  if your system does not have "nroff", ghostwriter will give error messages;
   this is not a bug - simply use the [-format 0] option.

*  counter-intuitively, values of cycles go from 0 to N-1, not from 1 to N
   like toggles.

	~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ 
JOURNAL PLAYBACK -

*  will not work on a keyboard that is not qwerty.

*  the composer journal playback file in $KHOROS_HOME/repos/journals/composer.jp
   does not end properly;  you have to kill the process manually when it is
   done, using % kill -9 {process #}

*  will not automatically place windows unless your window manager normally
   does so.

	~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ 

XPRISM3 -

*  Mesh plots are not always correctly drawn when the perspective is changed.

*  When displaying multiple plots, there is not hidden surface removal 
   between plots;  this means that one plot will always appear to be on top
   of the next, when in fact the plots may intersect each other.

*  Xprism3 does not support clipping

*  XYZ data points must have the same number of points in every row of data.
   For example, you may have 5 rows, each with 20 points, but you may not
   have 5 rows with a varying number of points in each row.


======================  OPEN WINDOWS (OLWM) 2.0 : =========================

	NOTE: ALL THESE BUGS HAVE BEEN FIXED WITH OPEN WINDOWS 3.0

* The X server seems to report the position
  of the cursor not at the hot spot, but at the lower right hand corner of the
  cursor.  This results in some inconsistent results in cantata, editimage,
  putimage, etc when the application must query the mouse.  For example, the
  position widget in editimage & putimage reports the pixel values of pixels
  that are really to the lower right of where the hot spot of the cursor is, 
  etc.

* There also seems to be a problem with Backing Store & Pixmaps that will crash
  the server periodically when using Khoros.  We were unable to get around this
  problem.

*  A bug in the X server will cause the server to dump when a display routine
   attempts to create a private colormap.  The bug has been fixed, but at the
   cost of user interface colors no longer being defined as the original colors.
   This implies that on any display routine, your user interface colors will
   be undefined if the programs cannot use the default colormap;  in this 
   case, your user interface colors may disappear, may be arbitrarily defined,
   or may have their colors re-defined according to the current colormap.
   
EDITIMAGE -

*  when using interactive LUT you must click twice (instead of once)
   to set the slope of the RGB curve.  Click 3 times to exit (getting the
   crosshairs back)

======================  SGI (Irix 4.0) : =========================

Scrollbars will not work properly -- ie, the thumb of the scrollbar does not
move correctly, although the operation in question will be correct.


