C These arrays are used by input procedures c The X windows routines get_text returns a buffer c (which can be ainbuf) c Decode can then split this into up to ten numbers (ain1) c ain2 provides a second array - this is needed for some cases c such as setting parameters for a dashed line c implicit double precision (a-h, o-z) common/math/pi, twopi, dtr, rtd double precision twopi, dtr, rtd common/aincom1/ain1, ain2, ainfix, aingrd common/aincom2/ainbuf, tstring double precision ain1(20), ain2(20) integer ainfix(20), aingrd(20) c icancel is set to -1 if a "Cancel" button is pressed in a pop-up c individual commands then have to handle this themselves common/cancom/icancel integer icancel character*200 ainbuf character*200 tstring c colours for data and for rest of plot c rgb = colour of most of plot c rgbd = colour of data c rgbhi and rgblo are for colour coding in a "3D" plot common/colors/rgb, rgbd, rgbhi, rgblo integer rgb(3), rgbd(3), rgbhi(3), rgblo(3) c rotation angles for doing a 3d plot common/angles/angle double precision angle(3) c define unit numbers c ifil is the current file number being used c for default I/O c IFIL7 is "ROBOTLOG" c IFIL8 is "ROBOTINF" c ifloop is file written to by loop command c (not yet implemented) common/files/ifil, ifil7, ifil8 integer ifil, ifil7, ifil8 c and their names common/fnames/logf, infof character*60 logf, infof c flag to say if it's event data c used in e.g. folding routines common/bevent/events logical events common/truc/truncate logical truncate c the lowest unit number for reading from a file c initial unit number for reading from a file c ulevel and ulev1 should have the same initial value integer ulevel, ulev1,uloop common/ulevs/ulevel,ulev1,uloop c arrays to be used to store data and instructions if c we loop c common/loop1/rdata, rinst common/loop2/vloop, sloop, maxloop, loop common/loop3/rloop parameter (ilmax = 100) common/loopy/lnow, lbuff integer lnow character*200 lbuff(ilmax) c counters for the loop and for instruction and data counters integer rloop c value of the parameter and the step size double precision vloop, sloop c number of times to loop integer maxloop c and flag to indicate looping logical loop c a small buffer for sending data from the outside of robot c (e.g. an X window routine). Should ultimately cut down on the use c of getting data from directly from within robot common/ibuffer1/ibufstr, maxbuf, HAVEDATA, DONEDATA common/ibuffer2/bufinst parameter(ibufmax = 40) character*200 bufinst(ibufmax) c number of instructions stored integer maxbuf c pointer to instruction to read from and/or write to integer ibufstr c says whether there is data or not logical havedata, donedata c user defined variable names parameter(maxuvar = 100) common/uservar1/uservv, nouvar common/uservar2/uservn c user variable names character*15 uservn(maxuvar) c user variable values double precision uservv(maxuvar) c number of variables used integer nouvar c predefined variable names a1-a5 have these values common/userno/auser1,auser2,auser3,auser4,auser5 double precision auser1,auser2,auser3,auser4,auser5 c spacing of windows common/gaps/xgap, ygap double precision xgap, ygap c window division properties common /windiv/fiplot, fjplot, fmplot, fnplot double precision fiplot, fjplot, fmplot, fnplot