home *** CD-ROM | disk | FTP | other *** search
/ Otherware / Otherware_1_SB_Development.iso / mac / developm / source / oodleutl.cpt / oodles-of-utils / MCLs-funniest-home-videos / video-players / P8000-vp.lisp < prev    next >
Encoding:
Text File  |  1992-01-23  |  1.6 KB  |  72 lines

  1. (in-package :oou)
  2. (oou-provide :P8000-vp)
  3. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  4. ;; P8000-vp.lisp
  5. ;;
  6. ;; Copyright ⌐ 1991 Northwestern University Institute for the Learning Sciences
  7. ;; All Rights Reserved
  8. ;;
  9. ;; author: Michael S. Engber
  10. ;;
  11. ;; video player class for Pioneer model 8000 laserdisc players
  12. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  13.  
  14. (oou-dependencies
  15.  :Pioneer-vp
  16.  )
  17.  
  18. (export '(P8000-vp))
  19.  
  20. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  21.  
  22. (defclass P8000-vp (Pioneer-vp) ())
  23.  
  24. (defmethod vp-features ((vp P8000-vp))
  25.   (if (eq (disk-format vp) :CLV)
  26.     '(:freeze)
  27.     '(:freeze :step :scan)))
  28.  
  29. (defmethod vp-step ((vp P8000-vp) direction)
  30.   (declare (ignore direction))
  31.   (unless (eq (disk-format vp) :CLV)
  32.     (call-next-method)))
  33.  
  34. (defmethod vp-scan ((vp P8000-vp) direction speed-x)
  35.   (declare (ignore direction speed-x))
  36.   (unless (eq (disk-format vp) :CLV)
  37.     (call-next-method)))
  38.  
  39. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  40.  
  41. (defmethod pld-address-format ((vp P8000-vp) disk-format)
  42.   (ecase disk-format
  43.     (:CAV   :frame)
  44.     (:CLV   :hmmss)
  45.     (:CLV-E :hmmssff)))
  46.  
  47. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  48.  
  49. #|
  50. ;a more interesting example can be found in Pioneer-vp.lisp
  51.  
  52. (setf vp (make-instance 'P8000-vp
  53.                :disk-format :CLV-E))
  54.  
  55. (vp-init vp)
  56.  
  57. (vp-play vp)
  58. (vp-stop vp)
  59. (vp-freeze vp)
  60. (vp-step vp)
  61.  
  62. (vp-current-frame vp)
  63.  
  64. (progn
  65.   (vp-seek vp 4500)
  66.   (vp-scan vp :speed-x 4))
  67.  
  68. (progn
  69.   (vp-seek vp 5000)
  70.   (vp-scan vp :direction :reverse :speed-x 4))
  71.  
  72. |#