can anyone help me with a code in VB6 to PES file viewing ?
already started the code , but without success



'On Error Resume Next

Dim bytes() As Byte
Dim singleByte As Byte
Dim Colour(36) As String
Colour(1) = RGB(0, 0, 255)
Colour(2) = RGB(255, 0, 0)
Colour(3) = RGB(51, 140, 38)
Colour(4) = RGB(0, 200, 200)
Colour(5) = RGB(204, 153, 153)
Colour(6) = RGB(102, 230, 100)
Colour(7) = RGB(230, 255, 102)
Colour(8) = RGB(204, 0, 102)
Colour(9) = RGB(153, 51, 102)
Colour(10) = RGB(0, 153, 0)
Colour(11) = RGB(0, 0, 153)
Colour(12) = RGB(204, 51, 255)
Colour(13) = RGB(205, 205, 0)
Colour(14) = RGB(255, 193, 37)
Colour(15) = RGB(56, 142, 142)
Colour(16) = RGB(0, 206, 209)
Colour(17) = RGB(255, 165, 0)
Colour(18) = RGB(186, 85, 211)
Colour(19) = RGB(218, 112, 214)
Colour(20) = RGB(220, 92, 215)
Colour(21) = RGB(125, 157, 62)
Colour(22) = RGB(241, 156, 187)
Colour(23) = RGB(255, 191, 0)
Colour(24) = RGB(127, 255, 212)
Colour(25) = RGB(8, 232, 222)
Colour(26) = RGB(0, 221, 221)
Colour(27) = RGB(255, 153, 102)
Colour(28) = RGB(172, 225, 175)
Colour(29) = RGB(223, 255, 0)
Colour(30) = RGB(155, 221, 255)
Colour(31) = RGB(140, 146, 172)
Colour(32) = RGB(205, 0, 204)
Colour(33) = RGB(150, 200, 162)
Colour(34) = RGB(204, 204, 255)
Colour(35) = RGB(32, 178, 170)
Dim Color As Integer
Color = 1
CommonDialog1.Filter = "All intEmpFileNbrs brother (*.pes)|*.pes|"
CommonDialog1.FilterIndex = 2
CommonDialog1.ShowOpen
intEmpFileNbrlocation = CommonDialog1.intEmpFileNbrName
Dim intEmpintEmpFileNbrNbr As Integer
intEmpFileNbr = FreeintEmpFileNbr
Open intEmpFileNbrlocation For Binary Access Read As #intEmpFileNbr
Dim count As Long
count = LOF(intEmpFileNbr)




Dim val_1 As Byte
Dim val_2 As Byte
Dim val_3 As Byte
Dim numColors As Integer
ReDim bytes(4)
Get intEmpFileNbr, , bytes
pecstart = intEmpFileNbr
imageWidth = 1000
imageHeight = 1000
Seek intEmpFileNbr, pecstart + 48
Get intEmpFileNbr, , numColors
numColors = numColors + 1
For x = 0 To numColors
Get intEmpFileNbr, , singleByte
Colour(x) = singleByte

Next
Seek intEmpFileNbr, pecstart + 532
thisPartIsDone = True
prevx = 0
prevy = 0
maxx = 0
minX = 0
maxY = 0
minY = 0
colorNum = -1
colorIndex = 0
tempStitches = Array()
'Do While Not thisPartIsDone And 1000
Do While Not thisPartIsDone And EOF(intEmpFileNbr)
Index = intEmpFileNbr
i = Index
For i = 0 To count
Get intEmpFileNbr, i, val_1
i = i + 1
Get intEmpFileNbr, i, val_2
i = i + 1

Next










If val_1 = 255 And val_2 = 0 Then
thisPartIsDone = True
curBlock = stitchBlock
Stitches = tempStitches
stitchesTotal = (tempStitches)
colorNum = colorNum + 1
colorIndex = Colour(colorNum)
colorIndex = colorIndex
Color = (colorIndex)
blocks = curBlock

ElseIf val_1 = 254 And val_2 = 176 Then
curBlock = stitchBlock
Stitches = tempStitches
stitchesTotal = (tempStitches)
colorNum = colorNum + 1
colorIndex = Colour(colorNum)
colorIndex = colorIndex
Color = (colorIndex)
blocks = curBlock
tempStitches = Array()

Get intEmpFileNbr, , singleByte
Else
deltaX = 0
deltaY = 0
If (val_1 And 128) = 128 Then
deltaX = ((val_1 & 15) * 256) + val_2
If (deltaX And 2048) = 2048 Then
deltaX = deltaX - 4096
End If
Get intEmpFileNbr, , val_2
ElseIf (val_1 >= 64) Then
val_1 = val_1 - 128
End If
If (val_2 And 128) = 128 Then
val_2 = ((val_2 & 15) * 256) + val_3 ' over flow
If (val_2 And 2048) = 2048 Then
val_2 = val_2 - 4096
End If
ElseIf (val_2 >= 64) Then
val_2 = val_2 - 128
End If
prevx = prevx + val_1
prevy = prevy + val_2
List1.AddItem prevx
List1.AddItem prevy
tempStitches = Point(prevx, prevy)

If prevx > maxx Then
maxx = prevx
ElseIf prevx < minX Then
minX = prevx
End If
If prevy > maxY Then
maxY = prevy
ElseIf prevy < minY Then
minY = prevy
End If
End If
Picture1.Line (prevx, prevy)-(x, y), Colour(Color)
Loop
imageWidth = maxx - minX

Similar Threads: