anchor.diff:  (defmethod get-object-event ((object sup:simple-irq))
     (sup::simple-irq-event object))
   
  +(defmethod name ((object sup:simple-irq))
  +  `(:irq ,(sup:simple-irq-irq object)))
  +
   (defmethod print-object ((object sup:simple-irq) stream)
     (print-unreadable-object (object stream :type t :identity t)
       (format stream ":Irq ~A :Pending ~A :Masked ~A"
  
positive.code: 
  (defmethod print-object ((object semaphore) stream)
    (print-unreadable-object (object stream :type t :identity t)
      (when (semaphore-name object)
        (format stream "~A " (semaphore-name object)))
      (format stream "~A" (semaphore-value object))
      (when (semaphore-limit object)
        (format stream "/~A" (semaphore-limit object)))))
  
negative.code: (defmethod get-object-event ((object sup:irq-fifo))
    (sup::irq-fifo-data-available object))
  
  (defmethod name ((object sup:irq-fifo))
    (sup:irq-fifo-name object))
  
  (defmethod print-object ((object sup:irq-fifo) stream)
    (print-unreadable-object (object stream :type t :identity t)
      (format stream "~A" (sup:irq-fifo-name object))))
  
  (defmethod get-object-event ((object sup:thread))
    (sup::thread-join-event object))
  
  (defmethod name ((object sup:thread))
    (sup:thread-name object))
  
  ;;;; Semaphore.
  
  