head     56.3;
access   paws bayes jws quist brad dew jwh;
symbols  ;
locks    ; strict;
comment  @# @;


56.3
date     93.01.27.13.37.43;  author jwh;  state Exp;
branches ;
next     56.2;

56.2
date     93.01.27.12.13.10;  author jwh;  state Exp;
branches ;
next     56.1;

56.1
date     91.11.05.09.43.25;  author jwh;  state Exp;
branches ;
next     55.1;

55.1
date     91.08.25.10.21.36;  author jwh;  state Exp;
branches ;
next     54.1;

54.1
date     91.03.18.15.25.43;  author jwh;  state Exp;
branches ;
next     53.1;

53.1
date     91.03.11.19.26.53;  author jwh;  state Exp;
branches ;
next     52.1;

52.1
date     91.02.19.09.10.52;  author jwh;  state Exp;
branches ;
next     51.1;

51.1
date     91.01.30.16.10.25;  author jwh;  state Exp;
branches ;
next     50.1;

50.1
date     90.10.29.16.25.16;  author jwh;  state Exp;
branches ;
next     49.1;

49.1
date     90.08.14.14.09.34;  author jwh;  state Exp;
branches ;
next     48.1;

48.1
date     90.07.26.11.15.38;  author jwh;  state Exp;
branches ;
next     47.1;

47.1
date     90.05.14.10.57.31;  author dew;  state Exp;
branches ;
next     46.1;

46.1
date     90.05.07.08.44.43;  author jwh;  state Exp;
branches ;
next     45.1;

45.1
date     90.04.19.15.52.21;  author jwh;  state Exp;
branches ;
next     44.1;

44.1
date     90.04.01.22.09.44;  author jwh;  state Exp;
branches ;
next     43.1;

43.1
date     90.03.20.14.01.09;  author jwh;  state Exp;
branches ;
next     42.1;

42.1
date     90.01.23.17.45.48;  author jwh;  state Exp;
branches ;
next     41.1;

41.1
date     89.12.22.11.28.34;  author jwh;  state Exp;
branches ;
next     40.1;

40.1
date     89.09.29.11.50.34;  author jwh;  state Exp;
branches ;
next     39.1;

39.1
date     89.09.26.16.34.56;  author dew;  state Exp;
branches ;
next     38.1;

38.1
date     89.08.29.11.26.36;  author jwh;  state Exp;
branches ;
next     37.1;

37.1
date     89.05.12.11.39.07;  author dew;  state Exp;
branches ;
next     36.1;

36.1
date     89.02.06.10.17.38;  author dew;  state Exp;
branches ;
next     35.1;

35.1
date     89.02.02.13.31.43;  author dew;  state Exp;
branches ;
next     34.1;

34.1
date     89.01.23.16.06.56;  author jwh;  state Exp;
branches ;
next     33.1;

33.1
date     89.01.16.11.39.36;  author dew;  state Exp;
branches ;
next     32.1;

32.1
date     89.01.10.11.47.26;  author bayes;  state Exp;
branches ;
next     31.1;

31.1
date     88.12.14.18.08.41;  author bayes;  state Exp;
branches ;
next     30.1;

30.1
date     88.12.09.13.45.57;  author dew;  state Exp;
branches ;
next     29.1;

29.1
date     88.10.31.15.30.37;  author bayes;  state Exp;
branches ;
next     28.1;

28.1
date     88.10.06.10.58.12;  author dew;  state Exp;
branches ;
next     27.1;

27.1
date     88.09.29.11.29.49;  author bayes;  state Exp;
branches ;
next     26.1;

26.1
date     88.09.28.13.10.50;  author bayes;  state Exp;
branches ;
next     25.1;

25.1
date     88.03.02.09.27.11;  author bayes;  state Exp;
branches ;
next     24.1;

24.1
date     87.08.31.09.46.35;  author jws;  state Exp;
branches ;
next     23.1;

23.1
date     87.08.26.10.23.38;  author bayes;  state Exp;
branches ;
next     22.1;

22.1
date     87.08.17.11.09.03;  author bayes;  state Exp;
branches ;
next     21.1;

21.1
date     87.08.12.13.52.06;  author bayes;  state Exp;
branches ;
next     20.1;

20.1
date     87.07.30.11.05.32;  author bayes;  state Exp;
branches ;
next     19.1;

19.1
date     87.06.01.08.21.18;  author jws;  state Exp;
branches ;
next     18.1;

18.1
date     87.05.20.15.17.39;  author bayes;  state Exp;
branches ;
next     17.1;

17.1
date     87.04.30.10.31.57;  author jws;  state Exp;
branches ;
next     16.1;

16.1
date     87.04.26.15.44.34;  author jws;  state Exp;
branches ;
next     15.1;

15.1
date     87.04.13.09.18.41;  author jws;  state Exp;
branches ;
next     14.1;

14.1
date     87.04.01.15.22.34;  author jws;  state Exp;
branches ;
next     13.1;

13.1
date     87.02.28.18.30.14;  author jws;  state Exp;
branches ;
next     12.1;

12.1
date     87.02.02.13.20.39;  author jws;  state Exp;
branches ;
next     11.1;

11.1
date     87.01.19.09.46.50;  author jws;  state Exp;
branches ;
next     10.1;

10.1
date     86.12.24.10.54.30;  author jws;  state Exp;
branches ;
next     9.1;

9.1
date     86.12.12.14.34.24;  author bayes;  state Exp;
branches ;
next     8.1;

8.1
date     86.11.27.11.52.20;  author jws;  state Exp;
branches ;
next     7.1;

7.1
date     86.11.20.13.42.07;  author hal;  state Exp;
branches ;
next     6.1;

6.1
date     86.11.04.17.53.55;  author paws;  state Exp;
branches ;
next     5.1;

5.1
date     86.10.28.16.43.18;  author hal;  state Exp;
branches ;
next     4.1;

4.1
date     86.09.30.19.43.23;  author hal;  state Exp;
branches ;
next     3.2;

3.2
date     86.09.03.10.03.13;  author hal;  state Exp;
branches ;
next     3.1;

3.1
date     86.09.01.11.54.21;  author hal;  state Exp;
branches ;
next     2.1;

2.1
date     86.07.30.14.40.19;  author hal;  state Exp;
branches ;
next     1.1;

1.1
date     86.06.30.14.52.51;  author danm;  state tmp;
branches ;
next     ;


desc
@Base file for PWS 3.2 release.

@


56.3
log
@
pws2rcs automatic delta on Wed Jan 27 13:14:25 MST 1993
@
text
@(*

 (c) Copyright Hewlett-Packard Company, 1985, 1986.
All rights are reserved.  Copying or other
reproduction of this program except for archival
purposes is prohibited without the prior
written consent of Hewlett-Packard Company.


	    RESTRICTED RIGHTS LEGEND

Use, duplication, or disclosure by the Government
is subject to restrictions as set forth in
paragraph (b) (3) (B) of the Rights in Technical
Data and Computer Software clause in
DAR 7-104.9(a).

HEWLETT-PACKARD COMPANY
Fort Collins, Colorado                         *)

$sysprog$
$stackcheck off$ $heap_dispose off$
$iocheck off$ $range off$ $ovflcheck off$
$debug off$

program mouseinit;

module mouse; { mouse module }
import sysdevs,sysglobals;

export

  function initmouse:boolean;

implement
  type
    sint = -32768..32767;

    pollblock = packed record
		  case integer of
		  0:(d: packed array[1..7] of byte);
		  1:(twosets  : boolean;
		     kcodes   : 0..3;
		     filler   : 0..7;
		     numaxes  : 0..3;
		     xdata    : sint;
		     ydata    : sint;
		     zdata    : sint)
		end;
    lkeytype = packed record
		 case integer of
		 0:(b:byte);
		 1:(row:0..15;
		    col:0..7;
		    up : boolean)
	       end;
    kmtype = array[0..7] of byte;
  const
    mkeymap = kmtype[3,13,{8} 30,0,0,0,0,0]; { ex,cr,rs,.... } {BUTTON 3
	      CHANGED FROM bs (LEFT ARROW) TO rs 4/17/85 SFB}
  var
    driver : loopdvrptr;
    keystate : array[0..7] of boolean;
    cumdata  : array[1..3] of integer;
    gdata    : pollblock;
    cindex   : 0..3;

  procedure doreset;
  var i : sint;
  begin
    for i:=0 to 7 do keystate[i]:=true; { all keys up }
    for i:=1 to 7 do gdata.d[i]:=0;
    for i:=1 to 3 do cumdata[i]:=0;
  end;

  {parameter done changed to doit, SFB--6/6/85}
  procedure mdataproc(var statbyte,databyte:byte; var doit:boolean);
  var
    k     : lkeytype;
  begin {mdataproc;  mouse data proc }
   if doit then {SFB--6/6/85}
   WITH LOOPCONTROL^ DO                {4/9/84 SFB}
    with loopdevices[loopdevice] do
    case devstate of
    1:begin
	gdata.d[1]:=databyte; cindex:=0;
	if gdata.numaxes=0 then devstate:=8 else devstate:=2;
      end;
    2,4,6:
      begin  { co-ord data } { low byte }
	if not descrip.size16 then
	  if databyte>127 then gdata.d[devstate]:=255 { sign extend }
			  else gdata.d[devstate]:=0;
	gdata.d[devstate+1]:=databyte;
	devstate:=devstate+1+ord(not descrip.size16);
	if not descrip.size16 then
	begin   { 8 bit mode }
	  cindex:=cindex+1;
	  if cindex>=gdata.numaxes then devstate:=8;
	end;
      end;
    3,5,7:   { co-ord data } { high byte }
      begin
	gdata.d[devstate-1]:=databyte;
	devstate:=devstate+1;
	cindex:=cindex+1;
	if cindex>=gdata.numaxes then devstate:=8;
      end;
    8:begin { keydata }
	case gdata.kcodes of
	0:;     { not supposed to be any data }
	1:begin         { is all ready ascii }
	    statbyte:=0;
	    call(kbdisrhook,statbyte,databyte,doit);    {SFB--6/6/85}
	  end;
	otherwise       { key code data }
	  k.b:=databyte;
	  keystate[k.col]:=k.up; { record the state }
	  if not k.up then
	  begin
	    statbyte:=0; databyte:=mkeymap[k.col];
	    call(kbdisrhook,statbyte,databyte,doit);    {SFB--6/6/85}
	  end;  {if not k.up}
	end;   {case gdata.kcodes}
      end;    {case 8}
    end;     {case devstate}
  end; {mdataproc}

  procedure mopsproc(op:loopdvrop);
  var
    limit : integer;
    statbyte,databyte : byte;
    done  : boolean;

    procedure check(i:integer;d:sint);
    begin
      cumdata[i]:=cumdata[i]+d; done:=false;
      if abs(cumdata[i])>limit then
      begin
	done:=true;
	if (i=1) then
	begin
	  statbyte:=hex('FF'); { normal} { x }
	  if d>0 then databyte:=255 else databyte:=1;
	end
	else
	begin
	  statbyte:=hex('EF'); { shift } { y }
	  if d>0 then databyte:=1 else databyte:=255;
	end;
	cumdata[i]:=0;
      end;
    end;  { check }

  begin { mopsproc; mouse ops }
   WITH LOOPCONTROL^ DO                {4/9/84 SFB}
    with loopdevices[loopdevice] do
    case op of
      datastarting: begin       {3.1E BUGFIX SFB--6/6/85}
		     devstate:=1;
		     gdata.xdata := 0;  {zero OPTIONAL pollblock values SFB}
		     gdata.ydata := 0;  {zero OPTIONAL pollblock values SFB}
		     gdata.zdata := 0;  {zero OPTIONAL pollblock values SFB}
		    end;
      dataended:
	begin
	  if descrip.size16 then limit:=descrip.counts div 8
			    else limit:=descrip.counts div 800;
	  check(1,gdata.xdata);
	  if done then
	  begin call(rpgisrhook,statbyte,databyte,done);
		gdata.ydata:=0;
	  end
	  else
	  begin
	    if (descrip.id = hex('60')) OR
	       (descrip.id = hex('e0'))  then   {added 5/2/85 SFB to special}
	     gdata.ydata := - gdata.ydata;      {case knob and HIL NIMITZ}
						{and reverse y-axis}
	    check(2,gdata.ydata);
	    if done then
	    begin call(rpgisrhook,statbyte,databyte,done);
		  gdata.xdata:=0;
	    end;
	  end;
	end;
      resetdevice: doreset;
      otherwise begin end;      {SFB 4/10/85 for uninitdevice opcode, etc.}
    end;
  end; { mopsproc}

  function initmouse:boolean;
  const
    ndrivers=2;
  type
     idarraytype = array[1..ndrivers] of integer;
  const
     lowids = idarraytype[96,224];
     highids = idarraytype[127,224];

  var i: integer;

  begin
    if hil_present and (driver=nil) then
     begin
      for i:=1 to ndrivers do begin
	new(driver);
	with driver^ do
	begin     { initialize driver log in record }
	  lowid:=lowids[i];      { all relative pointers }
	  highid:=highids[i];
	  daddr:=0;       { any device address }
	  opsproc:=mopsproc;      { set procedure vars }
	  dataproc:=mdataproc;
	  next:=loopdriverlist;   { add to driver list }
	  loopdriverlist:=driver;
	end;
      end;
      if LOOPCONTROL^.loopisok                  {4/9/84 SFB}
       then CALL(HPHILCMDHOOK,CONFIGUREOP);     {4/9/84 SFB}
      initmouse:=true;
     end
    else initmouse:=false;
  end;  { initloop }

end;    { mouse interface  module }

import mouse, loader;

begin
  if initmouse then markuser;
end.


@


56.2
log
@
pws2rcs automatic delta on Wed Jan 27 11:57:27 MST 1993
@
text
@d1 234
@


56.1
log
@Automatic bump of revision number for PWS version 3.25
@
text
@a0 234
(*

 (c) Copyright Hewlett-Packard Company, 1985, 1986.
All rights are reserved.  Copying or other
reproduction of this program except for archival
purposes is prohibited without the prior
written consent of Hewlett-Packard Company.


	    RESTRICTED RIGHTS LEGEND

Use, duplication, or disclosure by the Government
is subject to restrictions as set forth in
paragraph (b) (3) (B) of the Rights in Technical
Data and Computer Software clause in
DAR 7-104.9(a).

HEWLETT-PACKARD COMPANY
Fort Collins, Colorado                         *)

$sysprog$
$stackcheck off$ $heap_dispose off$
$iocheck off$ $range off$ $ovflcheck off$
$debug off$

program mouseinit;

module mouse; { mouse module }
import sysdevs,sysglobals;

export

  function initmouse:boolean;

implement
  type
    sint = -32768..32767;

    pollblock = packed record
		  case integer of
		  0:(d: packed array[1..7] of byte);
		  1:(twosets  : boolean;
		     kcodes   : 0..3;
		     filler   : 0..7;
		     numaxes  : 0..3;
		     xdata    : sint;
		     ydata    : sint;
		     zdata    : sint)
		end;
    lkeytype = packed record
		 case integer of
		 0:(b:byte);
		 1:(row:0..15;
		    col:0..7;
		    up : boolean)
	       end;
    kmtype = array[0..7] of byte;
  const
    mkeymap = kmtype[3,13,{8} 30,0,0,0,0,0]; { ex,cr,rs,.... } {BUTTON 3
	      CHANGED FROM bs (LEFT ARROW) TO rs 4/17/85 SFB}
  var
    driver : loopdvrptr;
    keystate : array[0..7] of boolean;
    cumdata  : array[1..3] of integer;
    gdata    : pollblock;
    cindex   : 0..3;

  procedure doreset;
  var i : sint;
  begin
    for i:=0 to 7 do keystate[i]:=true; { all keys up }
    for i:=1 to 7 do gdata.d[i]:=0;
    for i:=1 to 3 do cumdata[i]:=0;
  end;

  {parameter done changed to doit, SFB--6/6/85}
  procedure mdataproc(var statbyte,databyte:byte; var doit:boolean);
  var
    k     : lkeytype;
  begin {mdataproc;  mouse data proc }
   if doit then {SFB--6/6/85}
   WITH LOOPCONTROL^ DO                {4/9/84 SFB}
    with loopdevices[loopdevice] do
    case devstate of
    1:begin
	gdata.d[1]:=databyte; cindex:=0;
	if gdata.numaxes=0 then devstate:=8 else devstate:=2;
      end;
    2,4,6:
      begin  { co-ord data } { low byte }
	if not descrip.size16 then
	  if databyte>127 then gdata.d[devstate]:=255 { sign extend }
			  else gdata.d[devstate]:=0;
	gdata.d[devstate+1]:=databyte;
	devstate:=devstate+1+ord(not descrip.size16);
	if not descrip.size16 then
	begin   { 8 bit mode }
	  cindex:=cindex+1;
	  if cindex>=gdata.numaxes then devstate:=8;
	end;
      end;
    3,5,7:   { co-ord data } { high byte }
      begin
	gdata.d[devstate-1]:=databyte;
	devstate:=devstate+1;
	cindex:=cindex+1;
	if cindex>=gdata.numaxes then devstate:=8;
      end;
    8:begin { keydata }
	case gdata.kcodes of
	0:;     { not supposed to be any data }
	1:begin         { is all ready ascii }
	    statbyte:=0;
	    call(kbdisrhook,statbyte,databyte,doit);    {SFB--6/6/85}
	  end;
	otherwise       { key code data }
	  k.b:=databyte;
	  keystate[k.col]:=k.up; { record the state }
	  if not k.up then
	  begin
	    statbyte:=0; databyte:=mkeymap[k.col];
	    call(kbdisrhook,statbyte,databyte,doit);    {SFB--6/6/85}
	  end;  {if not k.up}
	end;   {case gdata.kcodes}
      end;    {case 8}
    end;     {case devstate}
  end; {mdataproc}

  procedure mopsproc(op:loopdvrop);
  var
    limit : integer;
    statbyte,databyte : byte;
    done  : boolean;

    procedure check(i:integer;d:sint);
    begin
      cumdata[i]:=cumdata[i]+d; done:=false;
      if abs(cumdata[i])>limit then
      begin
	done:=true;
	if (i=1) then
	begin
	  statbyte:=hex('FF'); { normal} { x }
	  if d>0 then databyte:=255 else databyte:=1;
	end
	else
	begin
	  statbyte:=hex('EF'); { shift } { y }
	  if d>0 then databyte:=1 else databyte:=255;
	end;
	cumdata[i]:=0;
      end;
    end;  { check }

  begin { mopsproc; mouse ops }
   WITH LOOPCONTROL^ DO                {4/9/84 SFB}
    with loopdevices[loopdevice] do
    case op of
      datastarting: begin       {3.1E BUGFIX SFB--6/6/85}
		     devstate:=1;
		     gdata.xdata := 0;  {zero OPTIONAL pollblock values SFB}
		     gdata.ydata := 0;  {zero OPTIONAL pollblock values SFB}
		     gdata.zdata := 0;  {zero OPTIONAL pollblock values SFB}
		    end;
      dataended:
	begin
	  if descrip.size16 then limit:=descrip.counts div 8
			    else limit:=descrip.counts div 800;
	  check(1,gdata.xdata);
	  if done then
	  begin call(rpgisrhook,statbyte,databyte,done);
		gdata.ydata:=0;
	  end
	  else
	  begin
	    if (descrip.id = hex('60')) OR
	       (descrip.id = hex('e0'))  then   {added 5/2/85 SFB to special}
	     gdata.ydata := - gdata.ydata;      {case knob and HIL NIMITZ}
						{and reverse y-axis}
	    check(2,gdata.ydata);
	    if done then
	    begin call(rpgisrhook,statbyte,databyte,done);
		  gdata.xdata:=0;
	    end;
	  end;
	end;
      resetdevice: doreset;
      otherwise begin end;      {SFB 4/10/85 for uninitdevice opcode, etc.}
    end;
  end; { mopsproc}

  function initmouse:boolean;
  const
    ndrivers=2;
  type
     idarraytype = array[1..ndrivers] of integer;
  const
     lowids = idarraytype[96,224];
     highids = idarraytype[127,224];

  var i: integer;

  begin
    if hil_present and (driver=nil) then
     begin
      for i:=1 to ndrivers do begin
	new(driver);
	with driver^ do
	begin     { initialize driver log in record }
	  lowid:=lowids[i];      { all relative pointers }
	  highid:=highids[i];
	  daddr:=0;       { any device address }
	  opsproc:=mopsproc;      { set procedure vars }
	  dataproc:=mdataproc;
	  next:=loopdriverlist;   { add to driver list }
	  loopdriverlist:=driver;
	end;
      end;
      if LOOPCONTROL^.loopisok                  {4/9/84 SFB}
       then CALL(HPHILCMDHOOK,CONFIGUREOP);     {4/9/84 SFB}
      initmouse:=true;
     end
    else initmouse:=false;
  end;  { initloop }

end;    { mouse interface  module }

import mouse, loader;

begin
  if initmouse then markuser;
end.


@


55.1
log
@Automatic bump of revision number for PWS version 3.25A
@
text
@@


54.1
log
@Automatic bump of revision number for PWS version 3.24
@
text
@@


53.1
log
@Automatic bump of revision number for PWS version 3.24B
@
text
@@


52.1
log
@Automatic bump of revision number for PWS version 3.24A
@
text
@@


51.1
log
@Automatic bump of revision number for PWS version 3.24d
@
text
@@


50.1
log
@Automatic bump of revision number for PWS version 3.23c
@
text
@@


49.1
log
@Automatic bump of revision number for PWS version 3.24b
@
text
@@


48.1
log
@Automatic bump of revision number for PWS version 3.24a
@
text
@@


47.1
log
@Automatic bump of revision number for PWS version 3.23
@
text
@@


46.1
log
@Automatic bump of revision number for PWS version 3.23
@
text
@@


45.1
log
@Automatic bump of revision number for PWS version 3.23C
@
text
@@


44.1
log
@Automatic bump of revision number for PWS version 3.23B
@
text
@@


43.1
log
@Automatic bump of revision number for PWS version 3.23aA
@
text
@@


42.1
log
@Automatic bump of revision number for PWS version 3.23e
@
text
@@


41.1
log
@Automatic bump of revision number for PWS version 3.23d
@
text
@@


40.1
log
@Automatic bump of revision number for PWS version 3.23c
@
text
@@


39.1
log
@Automatic bump of revision number for PWS version 3.23b
@
text
@@


38.1
log
@Automatic bump of revision number for PWS version 3.23a
@
text
@@


37.1
log
@Automatic bump of revision number for PWS version 3.3a
@
text
@@


36.1
log
@Automatic bump of revision number for PWS version 3.22
@
text
@@


35.1
log
@Automatic bump of revision number for PWS version 3.22
@
text
@@


34.1
log
@Automatic bump of revision number for PWS version 3.22
@
text
@@


33.1
log
@Automatic bump of revision number for PWS version 3.22D
@
text
@@


32.1
log
@Automatic bump of revision number for PWS version 3.22C
@
text
@@


31.1
log
@Automatic bump of revision number for PWS version 3.22B
@
text
@@


30.1
log
@Automatic bump of revision number for PWS version 3.22A
@
text
@@


29.1
log
@Automatic bump of revision number for PWS version 3.22b
@
text
@@


28.1
log
@Automatic bump of revision number for PWS version 3.3b
@
text
@@


27.1
log
@Automatic bump of revision number for PWS version 3.3a
@
text
@@


26.1
log
@Automatic bump of revision number for PWS version 3.3 Synch
@
text
@@


25.1
log
@Automatic bump of revision number for PWS version 3.2Y
@
text
@@


24.1
log
@Automatic bump of revision number for PWS version 3.2
@
text
@@


23.1
log
@Automatic bump of revision number for PWS version 3.2P
@
text
@@


22.1
log
@Automatic bump of revision number for PWS version 3.2N
@
text
@@


21.1
log
@Automatic bump of revision number for PWS version 3.2M
@
text
@@


20.1
log
@Automatic bump of revision number for PWS version 3.2L
@
text
@@


19.1
log
@Automatic bump of revision number for PWS version 3.2K
@
text
@@


18.1
log
@Automatic bump of revision number for PWS version 3.2J
@
text
@@


17.1
log
@Automatic bump of revision number for PWS version 3.2I+
@
text
@@


16.1
log
@Automatic bump of revision number for PWS version 3.2I
@
text
@@


15.1
log
@Automatic bump of revision number for PWS version 3.2H
@
text
@@


14.1
log
@Automatic bump of revision number for PWS version 3.2G
@
text
@@


13.1
log
@Automatic bump of revision number for PWS version 3.2F
@
text
@@


12.1
log
@Automatic bump of revision number for PWS version 3.2E
@
text
@@


11.1
log
@Automatic bump of revision number for PWS version 3.2D
@
text
@@


10.1
log
@Automatic bump of revision number for PWS version 3.2C
@
text
@@


9.1
log
@Automatic bump of revision number for PWS version 3.2B
@
text
@@


8.1
log
@Automatic bump of revision number for PWS version 3.2A
@
text
@@


7.1
log
@Automatic bump of revision number for PWS version 3.2l
@
text
@@


6.1
log
@Automatic bump of revision number for PWS version 3.2k
@
text
@@


5.1
log
@Automatic bump of revision number for PWS version 3.2j
@
text
@@


4.1
log
@Automatic bump of revision number for PWS version 3.2i
@
text
@@


3.2
log
@Changes sent by Scott Bayes.
@
text
@@


3.1
log
@Automatic bump of revision number for PWS version 3.2h
@
text
@d3 1
a3 1
 (c) Copyright Hewlett-Packard Company, 1985.
d176 4
a179 2
	    if descrip.id = hex('60') then      {added 5/2/85 SFB to special}
	     gdata.ydata := - gdata.ydata;      {case knob and reverse y-axis}
d193 10
d204 1
a204 1
    if (kbdtype=itfkbd) and (driver=nil) then
d206 12
a217 10
      new(driver);
      with driver^ do
      begin     { initialize driver log in record }
	lowid:=96;      { all relative pointers }
	highid:=127;
	daddr:=0;       { any device address }
	opsproc:=mopsproc;      { set procedure vars }
	dataproc:=mdataproc;
	next:=loopdriverlist;   { add to driver list }
	loopdriverlist:=driver;
@


2.1
log
@Auto bump rev number to 2.1 for sys 3.2e.
@
text
@@


1.1
log
@Initial revision
@
text
@@
