'---------------------For  MODULE File  *.bas -----------------
        
'-------------------- For 16bit -------------
Declare Function PSBOXIO Lib "WPSDLL16.DLL" (ByVal did As Integer,
          ByVal comp As Integer, ByVal area As Integer, ByVal no As Integer,
          ByVal id As Integer, ByVal PortNo As Integer,
          ByVal sw As Integer,dat As Integer) As Integer

'--------------------- For 32bit -------------
Declare Function PSBOXIO Lib "WPSDLL32.DLL" (ByVal did As Integer,
          ByVal comp As Integer, ByVal area As Integer, ByVal no As Integer,
          ByVal id As Integer, ByVal PortNo As Integer,
          ByVal sw As Integer, dat As Integer) As Integer

'--------------DATA `@-----------------------------------------------
Dim did, comp, area, no, id, sw, PortNo, ret, dat As Integer
did = &H1111
comp = &H2222
area = &H1234
sw=0
id = 0
dat = 0    
'---------------------For FORM File --------------------------
sub Check_port()

    no = 0	'For Speed check no=0    
    ret = 0
    For i = 0 To 2
        If (i = 2) Then i = 4
    	ret = PSBOXIO(did, comp, area, no, id, i,sw,dat)
        If ret = 0 Or (ret >= 2 And ret <= 5) Then
        	Call Cechk_box(i)
        	Exit Sub
        End If
    Next i
    Print "ERROR STATUS ="; ret
End Sub

Sub Cechk_box (PortNo)
    no = 1	'Check Box number 1
    id = 0
    ret = 0
    dat = 0
    ret = PSBOXIO(did, comp, area, no, id, PortNo, sw, dat)
    If (ret = 0) Then
        Print "BOX DATA : "; Hex$(dat)
    Else
        Print "ERROR STATUS"; ret
    End If
End Sub
