;**********************************************************
;*                                                        *
;*                    W A I T S T                         *
;*                                                        *
;*     Function: Put a processor in the halt state till   *
;*               the first APPC request comes.            *
;*                                                        *
;*                                                        *
;* CopyRight 1995. Nicholas Poljakov all rights reserved. *
;*                                                        *
;**********************************************************
;
.MODEL large
.CODE
 PUBLIC _waitst, _lupost
_waitst PROC
     jmp wst
save db  22 dup (?)
_lupost db 0
wst:
     mov  bx, offset save
     mov  cs:[bx], ax
     inc  bx
     inc  bx
     mov  cs:[bx], bx
     inc  bx
     inc  bx
     mov  cs:[bx], cx
     inc  bx
     inc  bx
     mov  cs:[bx], dx
     inc  bx
     inc  bx
     mov  cs:[bx], si
     inc  bx
     inc  bx
     mov  cs:[bx], di
     inc  bx
     inc  bx
     mov  cs:[bx], ds
     inc  bx
     inc  bx
     mov  cs:[bx], es
     inc  bx
     inc  bx
     mov  cs:[bx], ss
     inc  bx
     inc  bx
     mov  cs:[bx], sp
     inc  bx
     inc  bx
     pushf
     pop  cx
     mov  cs:[bx], cx
     mov  _lupost,0
retry:
;     mov  ah, 11
;     int  21h
     cmp  _lupost,1
     jne  retry
;
     mov  bx, offset save
     mov  ax, cs:[bx]
     inc  bx
     inc  bx
     mov  bx, cs:[bx]
     inc  bx
     inc  bx
     mov  cx, cs:[bx]
     inc  bx
     inc  bx
     mov  dx, cs:[bx]
     inc  bx
     inc  bx
     mov  si, cs:[bx]
     inc  bx
     inc  bx
     mov  di, cs:[bx]
     inc  bx
     inc  bx
     mov  ds, cs:[bx]
     inc  bx
     inc  bx
     mov  es, cs:[bx]
     inc  bx
     inc  bx
     mov  ss, cs:[bx]
     inc  bx
     inc  bx
     mov  sp, cs:[bx]
     inc  bx
     inc  bx
     mov  cx, cs:[bx]
     push cx
     popf
     ret
_waitst ENDP
     END

