Hi Cajun
I know the program is messy and there are other ways off doing things. But i'm going to tidy it up once I've got all the bugs out.
The program is below:-
' These two declarations for the inpout32.dll are for getting data from the
' parallel port, Inp, and sending data to the parallel port, Out.
Private Declare Function Inp Lib "inpout32.dll" _
Alias "Inp32" (ByVal PortAddress As Integer) As Integer
Private Declare Sub Out Lib "inpout32.dll" _
Alias "Out32" (ByVal PortAddress As Integer, ByVal Value As Integer)
' Declare the variables for the Port Address and the Value to send to the port
Dim PortAddress As String
' public declaration
Dim bDelay As Boolean
' Declare the Color variables for LED Colors
Dim Green As String
Dim Red As String
Dim Clear As String
Dim Blue As String
Dim Black As String
Dim Purple As String
Dim Orange As String
Private Sub Form_Load()
' The Port Address is the HEX address of Your parallel port. You find this
' by going to your device manager and clicking on the Resources tab for your
' parallel port. &H378 is the default but if yours isn't change it below.
PortAddress = &H378
bDelay = False ' Initialize it to false
Green = vbGreen
Red = vbRed
Clear = vbWhite
Blue = vbBlue
Black = vbBlack
Purple = 8388736
Orange = 33023
Call Timer2_Timer
End Sub
Private Sub Clear_LEDS()
Out PortAddress, &H0
LED1.FillColor = Black
LED2.FillColor = Black
LED3.FillColor = Black
LED4.FillColor = Black
LED5.FillColor = Black
LED6.FillColor = Black
LED7.FillColor = Black
LED8.FillColor = Black
End Sub
Private Sub Stop_Click()
Out PortAddress, &H0
Unload PPortLC1
Dim frmPPortLC1 As PPortLC1
Set frmPPortLC1 = New PPortLC1
frmPPortLC1.Show vbModal, Me
End Sub
Public Sub LEDColors_Click() 'openform.LEDColors'
Dim frmLedColours As LEDColors
Set frmLedColours = New LEDColors
frmLedColours.Show vbModal, Me
End Sub
Public Sub Speed_Click() 'openform.SpeedSetup'
Out PortAddress, &H0
Dim frmSpeedSetup As SpeedSetup
Set frmSpeedSetup = New SpeedSetup
frmSpeedSetup.Show vbModal, Me
End Sub
Private Sub ExitCmd_Click()
Out PortAddress, &H0
End
End Sub
Private Sub Timer1_Timer()
Static Temp As Integer
Temp = Temp + 1
Do While DoEvents()
If Temp Mod 2 = 0 Then Exit Do
Loop
End Sub
Private Sub SetDelay() ' Use Different Name
T1 = 10
Timer3.Interval = T1
Timer3.Enabled = False
End Sub
Private Sub Test_Click()
'Call SetDelay
'Out PortAddress, &H2
'LED2.FillColor = Red
'bDelay = True
'Timer3.Enabled = True
'Do While (bDelay = True)
'DoEvents
'Loop
'LED2.FillColor = Black
'Do
Call SetDelay
Out PortAddress, &H1
LED1.FillColor = Red
LED1.FillColor = Black
Out PortAddress, &H2
LED2.FillColor = Red
LED2.FillColor = Black
bDelay = True
Timer3.Enabled = True
Do While (bDelay = True)
DoEvents
Loop
End Sub
Private Sub Timer3_Timer()
Timer3.Enabled = False
bDelay = False
End Sub
Private Sub Timer2_Timer()
Clock.Text = Format(Now, "hh:mm:ss am/pm"

End Sub
Private Sub P1S4_Click()
P1S4.BackColor = Green
Open "c:\Program Files\PPortLC1\Data\Speed.ini" For Input As #1
Input #1, T1
Close #1
Do
Call Clear_LEDS
Out PortAddress, &H1
LED1.FillColor = Green
Timer1.Interval = T1
Timer1_Timer
LED1.FillColor = Black
Out PortAddress, &H2
LED2.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
LED2.FillColor = Black
Out PortAddress, &H4
LED3.FillColor = Clear
Timer1.Interval = T1
Timer1_Timer
LED3.FillColor = Black
Out PortAddress, &H8
LED4.FillColor = Blue
Timer1.Interval = T1
Timer1_Timer
LED4.FillColor = Black
Loop While DoEvents
End Sub
Private Sub P1S8_Click()
P1S8.BackColor = Green
Open "c:\Program Files\PPortLC1\Data\Speed.ini" For Input As #1
Input #1, T1
Close #1
Do
Call Clear_LEDS
Out PortAddress, &H1
LED1.FillColor = Green
Timer1.Interval = T1
Timer1_Timer
LED1.FillColor = Black
Out PortAddress, &H2
LED2.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
LED2.FillColor = Black
Out PortAddress, &H4
LED3.FillColor = Clear
Timer1.Interval = T1
Timer1_Timer
LED3.FillColor = Black
Out PortAddress, &H8
LED4.FillColor = Blue
Timer1.Interval = T1
Timer1_Timer
LED4.FillColor = Black
Out PortAddress, &H10
LED5.FillColor = Green
Timer1.Interval = T1
Timer1_Timer
LED5.FillColor = Black
Out PortAddress, &H20
LED6.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
LED6.FillColor = Black
Out PortAddress, &H40
LED7.FillColor = Clear
Timer1.Interval = T1
Timer1_Timer
LED7.FillColor = Black
Out PortAddress, &H80
LED8.FillColor = Blue
Timer1.Interval = T1
Timer1_Timer
LED8.FillColor = Black
Loop While DoEvents
End Sub
Private Sub Pairs_Click()
Pairs.BackColor = Green
Open "c:\Program Files\PPortLC1\Data\Speed.ini" For Input As #1
Input #1, T1
Close #1
Do
Call Clear_LEDS
Out PortAddress, &H3
LED1.FillColor = Green
LED2.FillColor = Green
Timer1.Interval = T1
Timer1_Timer
LED1.FillColor = Black
LED2.FillColor = Black
Out PortAddress, &HC
LED3.FillColor = Red
LED4.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
LED3.FillColor = Black
LED4.FillColor = Black
Out PortAddress, &H30
LED5.FillColor = Clear
LED6.FillColor = Clear
Timer1.Interval = T1
Timer1_Timer
LED5.FillColor = Black
LED6.FillColor = Black
Out PortAddress, &HC0
LED7.FillColor = Blue
LED8.FillColor = Blue
Timer1.Interval = T1
Timer1_Timer
LED7.FillColor = Black
LED8.FillColor = Black
Loop While DoEvents
End Sub
Private Sub RolloverPairs_Click()
RolloverPairs.BackColor = Green
Open "c:\Program Files\PPortLC1\Data\Speed.ini" For Input As #1
Input #1, T1
Close #1
Do
Call Clear_LEDS
Out PortAddress, &H3
LED1.FillColor = Red
LED2.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
LED1.FillColor = Black
Out PortAddress, &H6
LED3.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
LED2.FillColor = Black
Out PortAddress, &HC
LED4.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
LED3.FillColor = Black
Out PortAddress, &H18
LED5.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
LED4.FillColor = Black
Out PortAddress, &H30
LED6.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
LED5.FillColor = Black
Out PortAddress, &H60
LED7.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
LED6.FillColor = Black
Out PortAddress, &HC0
LED8.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
LED7.FillColor = Black
Out PortAddress, &H81
LED1.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
LED8.FillColor = Black
Loop While DoEvents
End Sub
Private Sub Triple_Click()
Triple.BackColor = Green
Open "c:\Program Files\PPortLC1\Data\Speed.ini" For Input As #1
Input #1, T1
Close #1
Do
Call Clear_LEDS
Out PortAddress, &H7
LED1.FillColor = Green
LED2.FillColor = Green
LED3.FillColor = Green
Timer1.Interval = T1
Timer1_Timer
LED1.FillColor = Black
LED2.FillColor = Black
LED3.FillColor = Black
Out PortAddress, &H38
LED4.FillColor = Red
LED5.FillColor = Red
LED6.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
LED4.FillColor = Black
LED5.FillColor = Black
LED6.FillColor = Black
Out PortAddress, &HC1
LED7.FillColor = Clear
LED8.FillColor = Clear
LED1.FillColor = Clear
Timer1.Interval = T1
Timer1_Timer
LED7.FillColor = Black
LED8.FillColor = Black
LED1.FillColor = Black
Out PortAddress, &HE
LED2.FillColor = Blue
LED3.FillColor = Blue
LED4.FillColor = Blue
Timer1.Interval = T1
Timer1_Timer
LED2.FillColor = Black
LED3.FillColor = Black
LED4.FillColor = Black
Out PortAddress, &H70
LED5.FillColor = Green
LED6.FillColor = Green
LED7.FillColor = Green
Timer1.Interval = T1
Timer1_Timer
LED5.FillColor = Black
LED6.FillColor = Black
LED7.FillColor = Black
Out PortAddress, &H83
LED8.FillColor = Red
LED1.FillColor = Red
LED2.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
LED8.FillColor = Black
LED1.FillColor = Black
LED2.FillColor = Black
Out PortAddress, &H1C
LED3.FillColor = Clear
LED4.FillColor = Clear
LED5.FillColor = Clear
Timer1.Interval = T1
Timer1_Timer
LED3.FillColor = Black
LED4.FillColor = Black
LED5.FillColor = Black
Out PortAddress, &HE0
LED6.FillColor = Blue
LED7.FillColor = Blue
LED8.FillColor = Blue
Timer1.Interval = T1
Timer1_Timer
LED6FillColor = Black
LED7.FillColor = Black
LED8.FillColor = Black
Loop While DoEvents
End Sub
Private Sub TripRoll_Click()
TripRoll.BackColor = Green
Open "c:\Program Files\PPortLC1\Data\Speed.ini" For Input As #1
Input #1, T1
Close #1
Do
Call Clear_LEDS
Out PortAddress, &H7
LED1.FillColor = Green
LED2.FillColor = Green
LED3.FillColor = Green
Timer1.Interval = T1
Timer1_Timer
LED1.FillColor = Black
Out PortAddress, &HE
LED4.FillColor = Green
Timer1.Interval = T1
Timer1_Timer
LED2.FillColor = Black
Out PortAddress, &H1C
LED5.FillColor = Green
Timer1.Interval = T1
Timer1_Timer
LED3.FillColor = Black
Out PortAddress, &H38
LED6.FillColor = Green
Timer1.Interval = T1
Timer1_Timer
LED4.FillColor = Black
Out PortAddress, &H70
LED7.FillColor = Green
Timer1.Interval = T1
Timer1_Timer
LED5.FillColor = Black
Out PortAddress, &HE0
LED8.FillColor = Green
Timer1.Interval = T1
Timer1_Timer
LED6.FillColor = Black
Out PortAddress, &HC1
LED1.FillColor = Green
Timer1.Interval = T1
Timer1_Timer
LED7.FillColor = Black
Out PortAddress, &H83
LED2.FillColor = Green
Timer1.Interval = T1
Timer1_Timer
LED8.FillColor = Black
Loop While DoEvents
End Sub
Private Sub OutToInSeq_Click()
OutToInSeq.BackColor = Green
Open "c:\Program Files\PPortLC1\Data\Speed.ini" For Input As #1
Input #1, T1
Close #1
Do
Call Clear_LEDS
Out PortAddress, &H81
LED1.FillColor = Blue
LED8.FillColor = Blue
Timer1.Interval = T1
Timer1_Timer
LED1.FillColor = Black
LED8.FillColor = Black
Out PortAddress, &H42
LED2.FillColor = Blue
LED7.FillColor = Blue
Timer1.Interval = T1
Timer1_Timer
LED2.FillColor = Black
LED7.FillColor = Black
Out PortAddress, &H24
LED3.FillColor = Blue
LED6.FillColor = Blue
Timer1.Interval = T1
Timer1_Timer
LED3.FillColor = Black
LED6.FillColor = Black
Out PortAddress, &H18
LED4.FillColor = Blue
LED5.FillColor = Blue
Timer1.Interval = T1
Timer1_Timer
LED4.FillColor = Black
LED5.FillColor = Black
Loop While DoEvents
End Sub
Private Sub InToOutSeq_Click()
InToOutSeq.BackColor = Green
Open "c:\Program Files\PPortLC1\Data\Speed.ini" For Input As #1
Input #1, T1
Close #1
Do
Call Clear_LEDS
Out PortAddress, &H18
LED4.FillColor = Blue
LED5.FillColor = Blue
Timer1.Interval = T1
Timer1_Timer
LED4.FillColor = Black
LED5.FillColor = Black
Out PortAddress, &H24
LED3.FillColor = Blue
LED6.FillColor = Blue
Timer1.Interval = T1
Timer1_Timer
LED3.FillColor = Black
LED6.FillColor = Black
Out PortAddress, &H42
LED2.FillColor = Blue
LED7.FillColor = Blue
Timer1.Interval = T1
Timer1_Timer
LED2.FillColor = Black
LED7.FillColor = Black
Out PortAddress, &H81
LED1.FillColor = Blue
LED8.FillColor = Blue
Timer1.Interval = T1
Timer1_Timer
LED1.FillColor = Black
LED8.FillColor = Black
Loop While DoEvents
End Sub
Private Sub CrossOver_Click()
CrossOver.BackColor = Green
Open "c:\Program Files\PPortLC1\Data\Speed.ini" For Input As #1
Input #1, T1
Close #1
Do
Call Clear_LEDS
Out PortAddress, &H81
LED1.FillColor = Blue
LED8.FillColor = Blue
Timer1.Interval = T1
Timer1_Timer
LED1.FillColor = Black
LED8.FillColor = Black
Out PortAddress, &H42
LED2.FillColor = Blue
LED7.FillColor = Blue
Timer1.Interval = T1
Timer1_Timer
LED2.FillColor = Black
LED7.FillColor = Black
Out PortAddress, &H24
LED3.FillColor = Blue
LED6.FillColor = Blue
Timer1.Interval = T1
Timer1_Timer
LED3.FillColor = Black
LED6.FillColor = Black
Out PortAddress, &H18
LED4.FillColor = Blue
LED5.FillColor = Blue
Timer1.Interval = T1
Timer1_Timer
LED4.FillColor = Black
LED5.FillColor = Black
Out PortAddress, &H18
LED4.FillColor = Blue
LED5.FillColor = Blue
Timer1.Interval = T1
Timer1_Timer
LED4.FillColor = Black
LED5.FillColor = Black
Out PortAddress, &H24
LED3.FillColor = Blue
LED6.FillColor = Blue
Timer1.Interval = T1
Timer1_Timer
LED3.FillColor = Black
LED6.FillColor = Black
Out PortAddress, &H42
LED2.FillColor = Blue
LED7.FillColor = Blue
Timer1.Interval = T1
Timer1_Timer
LED2.FillColor = Black
LED7.FillColor = Black
Out PortAddress, &H81
LED1.FillColor = Blue
LED8.FillColor = Blue
Timer1.Interval = T1
Timer1_Timer
LED1.FillColor = Black
LED8.FillColor = Black
Loop While DoEvents
End Sub
Private Sub PlusOne_Click()
PlusOne.BackColor = Green
Open "c:\Program Files\PPortLC1\Data\Speed.ini" For Input As #1
Input #1, T1
Close #1
Do
Call Clear_LEDS
Out PortAddress, &H1
LED1.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
Out PortAddress, &H2
LED2.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
Out PortAddress, &H4
LED3.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
Out PortAddress, &H8
LED4.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
Out PortAddress, &H10
LED5.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
Out PortAddress, &H20
LED6.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
Out PortAddress, &H40
LED7.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
Out PortAddress, &H80
LED8.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
Loop While DoEvents
End Sub
Private Sub MinusOne_Click()
MinusOne.BackColor = Green
Open "c:\Program Files\PPortLC1\Data\Speed.ini" For Input As #1
Input #1, T1
Close #1
Do
Call Clear_LEDS
Out PortAddress, &H80
LED8.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
Out PortAddress, &H40
LED7.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
Out PortAddress, &H20
LED6.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
Out PortAddress, &H10
LED5.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
Out PortAddress, &H8
LED4.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
Out PortAddress, &H4
LED3.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
LED2.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
Out PortAddress, &H2
LED1.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
Loop While DoEvents
End Sub
Private Sub PlusMinus1_Click()
PlusMinus1.BackColor = Green
Open "c:\Program Files\PPortLC1\Data\Speed.ini" For Input As #1
Input #1, T1
Close #1
Do
Call Clear_LEDS
Out PortAddress, &H1
LED1.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
Out PortAddress, &H2
LED2.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
Out PortAddress, &H4
LED3.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
Out PortAddress, &H8
LED4.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
Out PortAddress, &H10
LED5.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
Out PortAddress, &H20
LED6.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
Out PortAddress, &H40
LED7.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
Out PortAddress, &H80
LED8.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
LED8.FillColor = Black
Out PortAddress, &H7F
LED7.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
LED7.FillColor = Black
Out PortAddress, &H3F
LED6.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
LED6.FillColor = Black
Out PortAddress, &H1F
LED5.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
LED5.FillColor = Black
Out PortAddress, &HF
LED4.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
LED4.FillColor = Black
Out PortAddress, &H7
LED3.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
LED3.FillColor = Black
Out PortAddress, &H3
LED2.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
LED2.FillColor = Black
Out PortAddress, &H1
LED1.FillColor = Red
Timer1.Interval = T1
Timer1_Timer
LED1.FillColor = Black
Out PortAddress, &H0
Loop While DoEvents
End Sub
Thanks for all your help
Gary