anchor.diff:    (defconstant fd-max-events 10)
     (defconstant fionread 1074030207)
   
  +  ;; For WaitForSingleObject
  +  (defconstant +wait-failed+ -1) ; #xffffffff
  +  (defconstant +wait-object-0+ 0)
  +  (defconstant +wait-timeout+ 258)
  +
     (sb-alien:define-alien-type ws-socket sb-alien:unsigned-int)
   
     (sb-alien:define-alien-type nil
  
positive.code: 
    (defun wait-for-input-internal (wait-list &key timeout)
      (when (waiting-required (wait-list-waiters wait-list))
        (maybe-wsa-error
         (wait-for-single-object (wait-list-%wait wait-list) (truncate (* 1000 timeout)))
         wait-list))
      (update-ready-and-state-slots (wait-list-waiters wait-list)))
  
    (defun map-network-events (func network-events)
  
negative.code:                      (listen (socket-stream socket)))
                  (%ready-p socket))
              (setf (state socket) :READ)
            (sb-alien:with-alien ((network-events (sb-alien:struct wsa-network-events)))
              (let ((rv (wsa-enum-network-events (os-socket-handle socket) 0 network-events)))
                (if (zerop rv)
                    (map-network-events #'(lambda (err-code)
                                            (if (zerop err-code)
                                                (setf (%ready-p socket) t
                                                      (state socket) :READ)
                                              (raise-usock-err err-code socket)))
                                        network-events)
                  (maybe-wsa-error rv socket)))))))
  
    (defun %setup-wait-list (wait-list)
      (setf (wait-list-%wait wait-list) (wsa-event-create))
  