home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / CLIPPER / MISC / MSMOUSE1.ZIP / FOR.ZIP / FDEMO.FOR next >
Encoding:
Text File  |  1989-02-10  |  2.8 KB  |  92 lines

  1. ******************************************************************
  2. *  FDEMO.FOR                                                     *
  3. *                                                                *
  4. *  Graphics-mode demonstration of FORTRAN 4.1 mouse programming  *
  5. *                                                                *
  6. *  Compile using large model (default)                           *
  7. *  Link with SUBS.OBJ and MOUSE.LIB                              *
  8. *  Example:                                                      *
  9. *  masm subs;                                                    *
  10. *  fl /FPc fdemo.for subs.obj -link mouse                        *
  11. ******************************************************************
  12.  
  13.        PROGRAM MTEST
  14.  
  15. C      -- mouse parameters --
  16.        INTEGER*2   M1, M2, M3, M4, M5
  17.        INTEGER*2   MCURSOR(32), BOUND(4)
  18.        INTEGER*2   ARRLOC(2)
  19.        INTEGER*4   ARRADDS
  20.        EXTERNAL    CHKDRV, GRAF
  21.        EQUIVALENCE (ARRLOC(1),ARRADDS)
  22.  
  23. C      -- initialize data for Function call 9 --
  24. C      Mouse call #9 needs 2-byte integer input
  25.  
  26.        DO 50 I = 1, 16
  27.   50   MCURSOR (I) = INT2(#ffff)
  28.  
  29.        MCURSOR(17) = INT2(#0780)
  30.        MCURSOR(18) = INT2(#b8b8)
  31.        MCURSOR(19) = INT2(#3060)
  32.        MCURSOR(20) = INT2(#6038)
  33.        MCURSOR(21) = INT2(#f07e)
  34.        MCURSOR(22) = INT2(#8841)
  35.        MCURSOR(23) = INT2(#f031)
  36.        MCURSOR(24) = INT2(#7020)
  37.        MCURSOR(25) = INT2(#401c)
  38.        MCURSOR(26) = INT2(#6006)
  39.        MCURSOR(27) = INT2(#3c06)
  40.        MCURSOR(28) = INT2(#03fe)
  41.        MCURSOR(29) = INT2(#0001)
  42.        MCURSOR(30) = INT2(#f001)
  43.        MCURSOR(31) = INT2(#0301)
  44.        MCURSOR(32) = INT2(#007c)
  45.  
  46. C      -- Check for mouse and driver installation  --
  47.        CALL CHKDRV
  48.  
  49.        M1 = 0
  50.        CALL MOUSEL(M1, M2, M3, M4)
  51.  
  52.        IF ( M1 .EQ. 0 ) THEN
  53.            WRITE(*,*)' Microsoft mouse not found'
  54.            STOP
  55.        ENDIF
  56.  
  57.        WRITE(*,*) ' Type "c" then Enter to begin'
  58.   100  READ (*,200) CH
  59.   200  FORMAT(A)
  60.        IF ( CH .NE. 'c' ) GOTO 100
  61.  
  62. C      -- Change to graphics mode --
  63.        CALL GRAF
  64.  
  65. C      -- Function 9 Graphics Cursor --
  66.        M1 = 9
  67.        M2 = 1
  68.        M3 = 1
  69.        ARRADDS = LOCFAR(MCURSOR)
  70.        CALL MOUSEL(M1, M2, M3, ARRLOC(1))
  71.  
  72.        M1 = 1
  73.        CALL MOUSEL(M1, M2, M3, M4)
  74.  
  75. C      -- Function 16 Conditional Off --
  76.        WRITE (*,*) '  '
  77.        WRITE (*,*) ' Cursor disappears in this area.'
  78.        M1 = 16
  79.        BOUND(1) = 0
  80.        BOUND(2) = 0
  81.        BOUND(3) = 300
  82.        BOUND(4) = 20
  83.        ARRADDS = LOCFAR(BOUND)
  84.        CALL MOUSEL(M1, M2, M3, ARRLOC(1))
  85.  
  86.        WRITE(*,*) ' Type "q" then Enter to exit '
  87.   300  READ (*,200) CH
  88.        IF ( CH .NE. 'q' ) GOTO 300
  89.  
  90.        STOP
  91.        END
  92.