VERSION 5.00
Begin VB.Form VRASDISP 
   Caption         =   "SOLRAS Display"
   ClientHeight    =   7380
   ClientLeft      =   60
   ClientTop       =   345
   ClientWidth     =   10365
   LinkTopic       =   "Form1"
   ScaleHeight     =   492
   ScaleMode       =   3  'Pixel
   ScaleWidth      =   691
   StartUpPosition =   3  'Windows Default
   Begin VB.FileListBox File1 
      Height          =   2040
      Left            =   6120
      Pattern         =   "*.SSS"
      TabIndex        =   17
      Top             =   4680
      Visible         =   0   'False
      Width           =   1455
   End
   Begin VB.CommandButton SELECT 
      Caption         =   "SELECT"
      Height          =   375
      Left            =   6360
      TabIndex        =   14
      Top             =   6960
      Width           =   1095
   End
   Begin VB.CommandButton EXIT 
      Caption         =   "EXIT"
      Height          =   375
      Left            =   9120
      TabIndex        =   13
      Top             =   6960
      Width           =   1095
   End
   Begin VB.CommandButton CONTINUE 
      Caption         =   "DRAW NEXT"
      Height          =   375
      Left            =   7680
      TabIndex        =   12
      Top             =   6960
      Width           =   1215
   End
   Begin VB.PictureBox Intensity 
      Height          =   360
      Left            =   5880
      ScaleHeight     =   20
      ScaleMode       =   3  'Pixel
      ScaleWidth      =   255
      TabIndex        =   2
      Top             =   240
      Width           =   3885
   End
   Begin VB.PictureBox Lo 
      Height          =   2460
      Left            =   840
      ScaleHeight     =   160
      ScaleMode       =   3  'Pixel
      ScaleWidth      =   600
      TabIndex        =   1
      Top             =   3840
      Width           =   9060
   End
   Begin VB.PictureBox Hi 
      Height          =   2460
      Left            =   840
      ScaleHeight     =   160
      ScaleMode       =   3  'Pixel
      ScaleWidth      =   600
      TabIndex        =   0
      Top             =   960
      Width           =   9060
   End
   Begin VB.Label Label12 
      Caption         =   "FREQ  (MHz)"
      Height          =   495
      Left            =   120
      TabIndex        =   21
      Top             =   4920
      Width           =   495
   End
   Begin VB.Label Label11 
      Caption         =   "FREQ  (MHz)"
      Height          =   495
      Left            =   120
      TabIndex        =   20
      Top             =   1920
      Width           =   495
   End
   Begin VB.Label Label7 
      Caption         =   "0                                    127                                     255"
      Height          =   255
      Left            =   5880
      TabIndex        =   19
      Top             =   600
      Width           =   3975
   End
   Begin VB.Label Date 
      BeginProperty Font 
         Name            =   "MS Sans Serif"
         Size            =   9.75
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      ForeColor       =   &H00FFFFFF&
      Height          =   375
      Left            =   240
      TabIndex        =   18
      Top             =   6960
      Width           =   2775
   End
   Begin VB.Label Info 
      BeginProperty Font 
         Name            =   "MS Sans Serif"
         Size            =   9.75
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      ForeColor       =   &H00FFFFFF&
      Height          =   255
      Left            =   1200
      TabIndex        =   16
      Top             =   255
      Width           =   3495
   End
   Begin VB.Label Label10 
      Caption         =   "SOLRAS"
      BeginProperty Font 
         Name            =   "Times New Roman"
         Size            =   12
         Charset         =   0
         Weight          =   700
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      ForeColor       =   &H000000FF&
      Height          =   375
      Left            =   120
      TabIndex        =   15
      Top             =   240
      Width           =   975
   End
   Begin VB.Label Label9 
      Caption         =   "INTENSITY       SCALE"
      Height          =   375
      Left            =   4920
      TabIndex        =   11
      Top             =   240
      Width           =   975
   End
   Begin VB.Label Label8 
      Caption         =   "LOCAL TIME (HOURS)"
      Height          =   255
      Left            =   4200
      TabIndex        =   10
      Top             =   6660
      Width           =   1695
   End
   Begin VB.Label TimeLabel 
      BeginProperty Font 
         Name            =   "Courier"
         Size            =   9.75
         Charset         =   0
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   255
      Left            =   600
      TabIndex        =   9
      Top             =   6450
      Width           =   9255
   End
   Begin VB.Label Label6 
      Caption         =   "50"
      Height          =   255
      Left            =   600
      TabIndex        =   8
      Top             =   6120
      Width           =   255
   End
   Begin VB.Label Label5 
      Caption         =   "100"
      Height          =   255
      Left            =   480
      TabIndex        =   7
      Top             =   3840
      Width           =   375
   End
   Begin VB.Label Label4 
      Caption         =   "120"
      Height          =   255
      Left            =   480
      TabIndex        =   6
      Top             =   3240
      Width           =   375
   End
   Begin VB.Label Label3 
      Caption         =   "220"
      Height          =   255
      Left            =   480
      TabIndex        =   5
      Top             =   960
      Width           =   375
   End
   Begin VB.Label Label2 
      Caption         =   "Lo-Band"
      Height          =   255
      Left            =   840
      TabIndex        =   4
      Top             =   3600
      Width           =   735
   End
   Begin VB.Label Label1 
      Caption         =   "Hi-Band"
      Height          =   255
      Left            =   840
      TabIndex        =   3
      Top             =   720
      Width           =   735
   End
End
Attribute VB_Name = "VRASDISP"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
'PROGRAM  VRASDISP  -  VB SOLRAS Display

Public rec$, site$, filnam$
Public colr$, colg$, colb$
Public minr%, min10%, minrange%, init%, hr%

Private Sub Form_Load()

 site$ = "LEARMONTH"
 Call SRSLUT
End Sub
Private Sub CONTINUE_Click()
 If filnam$ <> "" Then
    If init% = 1 Then
      If Not EOF(1) Then                    'get initial time record
        rec$ = Input$(164, #1)
        Call GetTimeSpec
        minrange% = minr%
        Call DisplayRecord
      End If
      init% = 0
    End If
    Call TimeAxisLabel
    Do While Not EOF(1)
      rec$ = Input$(164, #1)                'read next record
      If rec$ <> "" Then
        Call GetTimeSpec
        If minr% <> minrange% Then Exit Do
        Call DisplayRecord
      End If
    Loop
    minrange% = minr%
 End If
End Sub

Private Sub DisplayRecord()
  it% = min10% * 2
  For i% = 3 To 83
    j% = (i% - 3) * 2
    clr% = Asc(Mid$(colr$, (Asc(Mid$(rec$, i%, 1)) + 1), 1))
    clg% = Asc(Mid$(colg$, (Asc(Mid$(rec$, i%, 1)) + 1), 1))
    clb% = Asc(Mid$(colb$, (Asc(Mid$(rec$, i%, 1)) + 1), 1))
    Lo.PSet (it%, 160 - j%), RGB(clr%, clg%, clb%)
    Lo.PSet (it% + 1, 160 - j%), RGB(clr%, clg%, clb%)
    Lo.PSet (it%, 159 - j%), RGB(clr%, clg%, clb%)
    Lo.PSet (it% + 1, 159 - j%), RGB(clr%, clg%, clb%)
  Next i%
  For i% = 84 To 164
    j% = (i% - 84) * 2
    clr% = Asc(Mid$(colr$, (Asc(Mid$(rec$, i%, 1)) + 1), 1))
    clg% = Asc(Mid$(colg$, (Asc(Mid$(rec$, i%, 1)) + 1), 1))
    clb% = Asc(Mid$(colb$, (Asc(Mid$(rec$, i%, 1)) + 1), 1))
    Hi.PSet (it%, 160 - j%), RGB(clr%, clg%, clb%)
    Hi.PSet (it% + 1, 160 - j%), RGB(clr%, clg%, clb%)
    Hi.PSet (it%, 159 - j%), RGB(clr%, clg%, clb%)
    Hi.PSet (it% + 1, 159 - j%), RGB(clr%, clg%, clb%)
  Next i%

End Sub


Private Sub EXIT_Click()
  End
End Sub

Private Sub File1_Click()
  Close #1
  filnam$ = File1.filename
  File1.Visible = False
  File1.Hidden = True
  Call intenscale
  Open filnam$ For Binary As #1
  Info.Caption = site$ + "     " + filnam$
  Date.Caption = "DATE   " + Mid$(filnam$, 3, 2) + "/" + Mid$(filnam$, 5, 2) _
        + "/" + Mid$(filnam$, 7, 2)
  init% = 1
 End Sub

Private Sub intenscale()
  For i% = 0 To 255
    clr% = Asc(Mid$(colr$, i% + 1, 1))
    clg% = Asc(Mid$(colg$, i% + 1, 1))
    clb% = Asc(Mid$(colb$, i% + 1, 1))
  Intensity.Line (i%, 0)-(i%, 20), RGB(clr%, clg%, clb%)
  Next i%
End Sub

Private Sub GetTimeSpec()
 tms% = Asc(Left$(rec$, 1)) + 256 * Asc(Mid$(rec$, 2, 1))
 hr% = tms% \ 600
 If tms% Mod 600 > 299 Then minr% = 1 Else minr% = 0
 min10% = tms% Mod 300
End Sub



Private Sub TimeAxisLabel()
  
  For i% = 0 To 600 Step 20
    leng% = 3: c% = 0
    If i% Mod 100 = 0 Then leng% = 5: c% = 200
    If i% Mod 200 = 0 Then leng% = 7: c% = 255
    VRASDISP.Line (58 + i%, 421)-(58 + i%, 421 + leng%), RGB(c%, c%, c%)
  Next i%
 If minrange% = 0 Then
   lmin% = 0
 Else
   lmin% = 30
 End If
   ltim% = 10000 + hr% * 100 + lmin%
   blanks$ = "                     "
 TimeLabel.Caption = Right$(Str$(ltim%), 4) + blanks$ + Right$(Str$(ltim% + 10), 4) _
      + blanks$ + Right$(Str$(ltim% + 20), 4)

End Sub




Private Sub SRSLUT()
Dim lr%(0 To 255)
Dim lg%(0 To 255)
Dim lb%(0 To 255)
Dim mst(8)
msl = 255 / ((256 - 4) / 4)
mst(0) = (256 - 4) / 8
mst(1) = (256 - 4) / 8 + (256 - 4) / 16
For k = 2 To 8
  mst(k) = (256 - 4) * k / 8
Next k
For n = 0 To 255
    If n < mst(0) Then
      lr%(n) = n * msl
      lg%(n) = n * msl
      lb%(n) = n * msl
    End If
    If n >= mst(0) And n < mst(1) Then
      lr%(n) = 127 - (n - mst(0)) * msl
      lg%(n) = 127 - (n - mst(0)) * msl
      lb%(n) = 127 + (n - mst(0)) * msl
    End If
    If n >= mst(1) And n < mst(2) Then
      lr%(n) = 64 + (n - mst(1)) * msl
      lg%(n) = 64 + (n - mst(1)) * msl
      lb%(n) = 191 + (n - mst(1)) * msl
    End If
    If n >= mst(2) And n < mst(3) Then
      lr%(n) = 127 + (n - mst(2)) * msl
      lg%(n) = 127 + (n - mst(2)) * msl
      lb%(n) = 255 - (n - mst(2)) * msl
    End If
    If n >= mst(3) And n < mst(4) Then
      lr%(n) = 255
      lg%(n) = 255 - (n - mst(3)) * msl
      lb%(n) = 127
    End If
    If n >= mst(4) And n < mst(5) Then
      lr%(n) = 255 - (n - mst(4)) * msl
      lg%(n) = 127 + (n - mst(4)) * msl
      lb%(n) = 127
    End If
    If n >= mst(5) And n < mst(6) Then
      lr%(n) = 127 + (n - mst(5)) * msl
      lg%(n) = 255 - (n - mst(5)) * msl
      lb%(n) = 127 + (n - mst(5)) * msl
    End If
    If n >= mst(6) And n < mst(7) Then
      lr%(n) = 255 - (n - mst(6)) * msl
      lg%(n) = 127 + (n - mst(6)) * msl
      lb%(n) = 255
    End If
    If n >= mst(7) And n < mst(8) Then
      lr%(n) = 127 + (n - mst(7)) * msl
      lg%(n) = 255
      lb%(n) = 255
    End If
    If n >= mst(8) Then
      lr%(n) = 255
      lg%(n) = 255
      lb%(n) = 255
    End If
Next n
colr$ = ""
colg$ = ""
colb$ = ""
For i% = 0 To 255
  colr$ = colr$ + Chr$(lr%(i%))
  colg$ = colg$ + Chr$(lg%(i%))
  colb$ = colb$ + Chr$(lb%(i%))
Next i%
End Sub


Private Sub SELECT_Click()
  File1.Visible = True
  File1.Hidden = False
End Sub


