Dim Bit1(0 To 7) As Integer
Dim Bit2(0 To 7) As Integer
Dim Bit3(0 To 7) As Integer
Dim Bit4(0 To 7) As Integer
Dim Titulo1(0 To 7) As String
Dim Titulo2(0 To 7) As String
Dim Titulo3(0 To 7) As String
Dim Titulo4(0 To 7) As String
Dim Puerto As Integer
Dim Delay As Long
Private Sub ARCSAL_Click()
'Finaliza el programa
End
End Sub
Private Sub BOR1_Click()
'Borra la memoria.
Open App.Path + "\MEMORIA1.INI" For Output As #1
Print #1, Chr$(27)
Close
'Cambia los títulos de la memoria.
CAR1.Caption = "Memoria &1 - Vacía"
SAV1.Caption = "Memoria &1 - Vacía"
BOR1.Caption = "Memoria &1 - Vacía"
'Desactiva las opciones de Menú.
BOR1.Enabled = False
CAR1.Enabled = False
End Sub
Private Sub BOR2_Click()
'Borra la memoria.
Open App.Path + "\MEMORIA2.INI" For Output As #1
Print #1, Chr$(27)
Close
'Cambia los títulos de la memoria.
CAR2.Caption = "Memoria &2 - Vacía"
SAV2.Caption = "Memoria &2 - Vacía"
BOR2.Caption = "Memoria &2 - Vacía"
'Desactiva las opciones de Menú.
BOR2.Enabled = False
CAR2.Enabled = False
End Sub
Private Sub BOR3_Click()
'Borra la memoria.
Open App.Path + "\MEMORIA3.INI" For Output As #1
Print #1, Chr$(27)
Close
'Cambia los títulos de la memoria.
CAR3.Caption = "Memoria &3 - Vacía"
SAV3.Caption = "Memoria &3 - Vacía"
BOR3.Caption = "Memoria &3 - Vacía"
'Desactiva las opciones de Menú.
BOR3.Enabled = False
CAR3.Enabled = False
End Sub
Private Sub BOR4_Click()
'Borra la memoria.
Open App.Path + "\MEMORIA4.INI" For Output As #1
Print #1, Chr$(27)
Close
'Cambia los títulos de la memoria.
CAR4.Caption = "Memoria &4 - Vacía"
SAV4.Caption = "Memoria &4 - Vacía"
BOR4.Caption = "Memoria &4 - Vacía"
'Desactiva las opciones de Menú.
BOR4.Enabled = False
CAR4.Enabled = False
End Sub
Private Sub BOR5_Click()
'Borra la memoria.
Open App.Path + "\MEMORIA5.INI" For Output As #1
Print #1, Chr$(27)
Close
'Cambia los títulos de la memoria.
CAR5.Caption = "Memoria &5 - Vacía"
SAV5.Caption = "Memoria &5 - Vacía"
BOR5.Caption = "Memoria &5 - Vacía"
'Desactiva las opciones de Menú.
BOR5.Enabled = False
CAR5.Enabled = False
End Sub
Private Sub CAR1_Click()
Dim Ciclo As Integer
'Coloca el reloj en el puntero.
Screen.MousePointer = 11
'Graba la memoria.
Open App.Path + "\MEMORIA1.INI" For Input As #1
Input #1, Temp
For Ciclo = 0 To 7
Input #1, X
Bit1(Ciclo) = X
If X = False Then Mod1(Ciclo).Picture = LoadPicture(App.Path + "\llave0.bmp")
If X = True Then Mod1(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Input #1, X
Bit2(Ciclo) = X
If X = False Then Mod2(Ciclo).Picture = LoadPicture(App.Path + "\llave0.bmp")
If X = True Then Mod2(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Input #1, X
Bit3(Ciclo) = X
If X = False Then Mod3(Ciclo).Picture = LoadPicture(App.Path + "\llave0.bmp")
If X = True Then Mod3(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Input #1, X
Bit4(Ciclo) = X
If X = False Then Mod4(Ciclo).Picture = LoadPicture(App.Path + "\llave0.bmp")
If X = True Then Mod4(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Next Ciclo
Close
'Envia los nuevos parametros a la plaqueta.
For Ciclo = 1 To 4
Envia (Ciclo)
Next Ciclo
'Restaura el puntero.
Screen.MousePointer = 0
End Sub
Private Sub CAR2_Click()
Dim Ciclo As Integer
'Coloca el reloj en el puntero.
Screen.MousePointer = 11
'Graba la memoria.
Open App.Path + "\MEMORIA2.INI" For Input As #1
Input #1, Temp
For Ciclo = 0 To 7
Input #1, X
Bit1(Ciclo) = X
If X = False Then Mod1(Ciclo).Picture = LoadPicture(App.Path + "\llave0.bmp")
If X = True Then Mod1(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Input #1, X
Bit2(Ciclo) = X
If X = False Then Mod2(Ciclo).Picture = LoadPicture(App.Path + "\llave0.bmp")
If X = True Then Mod2(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Input #1, X
Bit3(Ciclo) = X
If X = False Then Mod3(Ciclo).Picture = LoadPicture(App.Path + "\llave0.bmp")
If X = True Then Mod3(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Input #1, X
Bit4(Ciclo) = X
If X = False Then Mod4(Ciclo).Picture = LoadPicture(App.Path + "\llave0.bmp")
If X = True Then Mod4(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Next Ciclo
Close
'Envia los nuevos parametros a la plaqueta.
For Ciclo = 1 To 4
Envia (Ciclo)
Next Ciclo
'Restaura el puntero.
Screen.MousePointer = 0
End Sub
Private Sub CAR3_Click()
Dim Ciclo As Integer
'Coloca el reloj en el puntero.
Screen.MousePointer = 11
'Graba la memoria.
Open App.Path + "\MEMORIA3.INI" For Input As #1
Input #1, Temp
For Ciclo = 0 To 7
Input #1, X
Bit1(Ciclo) = X
If X = False Then Mod1(Ciclo).Picture = LoadPicture(App.Path + "\llave0.bmp")
If X = True Then Mod1(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Input #1, X
Bit2(Ciclo) = X
If X = False Then Mod2(Ciclo).Picture = LoadPicture(App.Path + "\llave0.bmp")
If X = True Then Mod2(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Input #1, X
Bit3(Ciclo) = X
If X = False Then Mod3(Ciclo).Picture = LoadPicture(App.Path + "\llave0.bmp")
If X = True Then Mod3(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Input #1, X
Bit4(Ciclo) = X
If X = False Then Mod4(Ciclo).Picture = LoadPicture(App.Path + "\llave0.bmp")
If X = True Then Mod4(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Next Ciclo
Close
'Envia los nuevos parametros a la plaqueta.
For Ciclo = 1 To 4
Envia (Ciclo)
Next Ciclo
'Restaura el puntero.
Screen.MousePointer = 0
End Sub
Private Sub CAR4_Click()
Dim Ciclo As Integer
'Coloca el reloj en el puntero.
Screen.MousePointer = 11
'Graba la memoria.
Open App.Path + "\MEMORIA4.INI" For Input As #1
Input #1, Temp
For Ciclo = 0 To 7
Input #1, X
Bit1(Ciclo) = X
If X = False Then Mod1(Ciclo).Picture = LoadPicture(App.Path + "\llave0.bmp")
If X = True Then Mod1(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Input #1, X
Bit2(Ciclo) = X
If X = False Then Mod2(Ciclo).Picture = LoadPicture(App.Path + "\llave0.bmp")
If X = True Then Mod2(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Input #1, X
Bit3(Ciclo) = X
If X = False Then Mod3(Ciclo).Picture = LoadPicture(App.Path + "\llave0.bmp")
If X = True Then Mod3(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Input #1, X
Bit4(Ciclo) = X
If X = False Then Mod4(Ciclo).Picture = LoadPicture(App.Path + "\llave0.bmp")
If X = True Then Mod4(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Next Ciclo
Close
'Envia los nuevos parametros a la plaqueta.
For Ciclo = 1 To 4
Envia (Ciclo)
Next Ciclo
'Restaura el puntero.
Screen.MousePointer = 0
End Sub
Private Sub CAR5_Click()
Dim Ciclo As Integer
'Coloca el reloj en el puntero.
Screen.MousePointer = 11
'Graba la memoria.
Open App.Path + "\MEMORIA5.INI" For Input As #1
Input #1, Temp
For Ciclo = 0 To 7
Input #1, X
Bit1(Ciclo) = X
If X = False Then Mod1(Ciclo).Picture = LoadPicture(App.Path + "\llave0.bmp")
If X = True Then Mod1(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Input #1, X
Bit2(Ciclo) = X
If X = False Then Mod2(Ciclo).Picture = LoadPicture(App.Path + "\llave0.bmp")
If X = True Then Mod2(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Input #1, X
Bit3(Ciclo) = X
If X = False Then Mod3(Ciclo).Picture = LoadPicture(App.Path + "\llave0.bmp")
If X = True Then Mod3(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Input #1, X
Bit4(Ciclo) = X
If X = False Then Mod4(Ciclo).Picture = LoadPicture(App.Path + "\llave0.bmp")
If X = True Then Mod4(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Next Ciclo
Close
'Envia los nuevos parametros a la plaqueta.
For Ciclo = 1 To 4
Envia (Ciclo)
Next Ciclo
'Restaura el puntero.
Screen.MousePointer = 0
End Sub
Private Sub CFGDLY_Click()
X = Val(InputBox("Iteraciones del ciclo For/Next ?", "Delay...", Trim(Str(Delay))))
If X = 0 Then Exit Sub
Delay = X
Open App.Path + "\DELAY.INI" For Output As #1
Print #1, Delay
Close
End Sub
Private Sub Envia(Modulo As Integer)
'Calcula el valor a enviar.
Dato = 0
If Modulo = 1 Then
If Bit1(0) = True Then Dato = Dato + 128
If Bit1(1) = True Then Dato = Dato + 64
If Bit1(2) = True Then Dato = Dato + 32
If Bit1(3) = True Then Dato = Dato + 16
If Bit1(4) = True Then Dato = Dato + 8
If Bit1(5) = True Then Dato = Dato + 4
If Bit1(6) = True Then Dato = Dato + 2
If Bit1(7) = True Then Dato = Dato + 1
Latch = 10 'Establece el dato para latch.
End If
If Modulo = 2 Then
If Bit2(0) = True Then Dato = Dato + 128
If Bit2(1) = True Then Dato = Dato + 64
If Bit2(2) = True Then Dato = Dato + 32
If Bit2(3) = True Then Dato = Dato + 16
If Bit2(4) = True Then Dato = Dato + 8
If Bit2(5) = True Then Dato = Dato + 4
If Bit2(6) = True Then Dato = Dato + 2
If Bit2(7) = True Then Dato = Dato + 1
Latch = 9 'Establece el dato para latch.
End If
If Modulo = 3 Then
If Bit3(0) = True Then Dato = Dato + 128
If Bit3(1) = True Then Dato = Dato + 64
If Bit3(2) = True Then Dato = Dato + 32
If Bit3(3) = True Then Dato = Dato + 16
If Bit3(4) = True Then Dato = Dato + 8
If Bit3(5) = True Then Dato = Dato + 4
If Bit3(6) = True Then Dato = Dato + 2
If Bit3(7) = True Then Dato = Dato + 1
Latch = 15 'Establece el dato para latch.
End If
If Modulo = 4 Then
If Bit4(0) = True Then Dato = Dato + 128
If Bit4(1) = True Then Dato = Dato + 64
If Bit4(2) = True Then Dato = Dato + 32
If Bit4(3) = True Then Dato = Dato + 16
If Bit4(4) = True Then Dato = Dato + 8
If Bit4(5) = True Then Dato = Dato + 4
If Bit4(6) = True Then Dato = Dato + 2
If Bit4(7) = True Then Dato = Dato + 1
Latch = 3 'Establece el dato para latch.
End If
'Coloca el dato en el puerto.
Out Puerto, Dato
'Espera que los datos se establezcan.
For Ciclo = 1 To Delay
Next Ciclo
'Activa el latch correspondiente.
Out Puerto + 2, Latch
'Espera que los datos se establezcan.
For Ciclo = 1 To Delay
Next Ciclo
'Desactiva el latch.
Out Puerto + 2, 11
End Sub
Private Sub Form_Load()
'Coloca el reloj en el puntero.
Screen.MousePointer = 11
Dim Ciclo As Integer
'Lee el puerto paralelo a usar.
Open App.Path + "\PUERTO.INI" For Input As #1
Input #1, X
Close
If X = 1 Then Puerto = &H378: LPT1.Checked = True
If X = 2 Then Puerto = &H278: LPT2.Checked = True
If X = 3 Then Puerto = &H3BC: LPT3.Checked = True
'Lee el delay para los latch's.
Open App.Path + "\DELAY.INI" For Input As #1
Input #1, Delay
Close
'Carga los títulos de las teclas.
Open App.Path + "\TITULOS.INI" For Input As #1
Line Input #1, Temp 'Saltea las líneas de encabezado.
Line Input #1, Temp
For Ciclo = 0 To 7
Line Input #1, Temp: Titulo1(Ciclo) = Temp
Line Input #1, Temp: Titulo2(Ciclo) = Temp
Line Input #1, Temp: Titulo3(Ciclo) = Temp
Line Input #1, Temp: Titulo4(Ciclo) = Temp
Next Ciclo
Close
'Activa las memorias disponibles.
Open App.Path + "\MEMORIA1.INI" For Input As #1
Line Input #1, Titulo
Close
If Titulo = Chr(27) Then
CAR1.Enabled = False
BOR1.Enabled = False
Else
CAR1.Caption = Titulo
SAV1.Caption = Titulo
BOR1.Caption = Titulo
End If
Open App.Path + "\MEMORIA2.INI" For Input As #1
Line Input #1, Titulo
Close
If Titulo = Chr(27) Then
CAR2.Enabled = False
BOR2.Enabled = False
Else
CAR2.Caption = Titulo
SAV2.Caption = Titulo
BOR2.Caption = Titulo
End If
Open App.Path + "\MEMORIA3.INI" For Input As #1
Line Input #1, Titulo
Close
If Titulo = Chr(27) Then
CAR3.Enabled = False
BOR3.Enabled = False
Else
CAR3.Caption = Titulo
SAV3.Caption = Titulo
BOR3.Caption = Titulo
End If
Open App.Path + "\MEMORIA4.INI" For Input As #1
Line Input #1, Titulo
Close
If Titulo = Chr(27) Then
CAR4.Enabled = False
BOR4.Enabled = False
Else
CAR4.Caption = Titulo
SAV4.Caption = Titulo
BOR4.Caption = Titulo
End If
Open App.Path + "\MEMORIA5.INI" For Input As #1
Line Input #1, Titulo
Close
If Titulo = Chr(27) Then
CAR5.Enabled = False
BOR5.Enabled = False
Else
CAR5.Caption = Titulo
SAV5.Caption = Titulo
BOR5.Caption = Titulo
End If
'Carga la memoria de arranque.
Open App.Path + "\ARRANQUE.INI" For Input As #1
For Ciclo = 0 To 7
Input #1, X
Bit1(Ciclo) = X
If X = True Then Mod1(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Input #1, X
Bit2(Ciclo) = X
If X = True Then Mod2(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Input #1, X
Bit3(Ciclo) = X
If X = True Then Mod3(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Input #1, X
Bit4(Ciclo) = X
If X = True Then Mod4(Ciclo).Picture = LoadPicture(App.Path + "\llave1.bmp")
Next Ciclo
Close
For Ciclo = 1 To 4
Call Envia(Ciclo)
Next Ciclo
'Restaura el puntero.
Screen.MousePointer = 0
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
'Limpia el display.
Display = ""
End Sub
Private Sub LPT1_Click()
'Coloca el reloj en el puntero.
Screen.MousePointer = 11
'Tilda el item.
LPT1.Checked = True
LPT2.Checked = False
LPT3.Checked = False
'Guarda la configuración.
Open App.Path + "\PUERTO.INI" For Output As #1
Print #1, 1
Close
'Establece el puerto a utilizar.
Puerto = &H378
'Restaura el puntero.
Screen.MousePointer = 0
End Sub
Private Sub LPT2_Click()
'Coloca el reloj en el puntero.
Screen.MousePointer = 11
'Tilda el item.
LPT1.Checked = False
LPT2.Checked = True
LPT3.Checked = False
'Guarda la configuración.
Open App.Path + "\PUERTO.INI" For Output As #1
Print #1, 2
Close
'Establece el puerto a utilizar.
Puerto = &H278
'Restaura el puntero.
Screen.MousePointer = 0
End Sub
Private Sub LPT3_Click()
'Coloca el reloj en el puntero.
Screen.MousePointer = 11
'Tilda el item.
LPT1.Checked = False
LPT2.Checked = False
LPT3.Checked = True
'Guarda la configuración.
Open App.Path + "\PUERTO.INI" For Output As #1
Print #1, 3
Close
'Establece el puerto a utilizar.
Puerto = &H3BC
'Restaura el puntero.
Screen.MousePointer = 0
End Sub
Private Sub MEMARR_Click()
'Coloca el reloj en el puntero.
Screen.MousePointer = 11
'Guarda la conf. de arranque.
Open App.Path + "\ARRANQUE.INI" For Output As #1
For Ciclo = 0 To 7
Print #1, Bit1(Ciclo)
Print #1, Bit2(Ciclo)
Print #1, Bit3(Ciclo)
Print #1, Bit4(Ciclo)
Next Ciclo
Close
'Restaura el puntero.
Screen.MousePointer = 0
End Sub
Private Sub Mod1_MouseDown(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
'Si pulsa el 2do. botón permite definir el título de la tecla.
If Button = 2 Then
Temp = Trim(InputBox("Título de la tecla " + Trim(Str(Index + 1)), "Módulo 1", Titulo1(Index)))
If Temp = "" Then Exit Sub
Titulo1(Index) = Temp
Display = Temp
Exit Sub
End If
'Si esta la llave apagada la enciende.
If Bit1(Index) = False Then
Bit1(Index) = True
Mod1(Index).Picture = LoadPicture(App.Path + "\llave1.bmp")
Call Envia(1)
Exit Sub
End If
End Sub
Private Sub Mod1_MouseMove(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
'Coloca el título de la tecla en el display.
Display = Titulo1(Index)
End Sub
Private Sub Mod2_MouseDown(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
'Si pulsa el 2do. botón permite definir el título de la tecla.
If Button = 2 Then
Temp = Trim(InputBox("Título de la tecla " + Trim(Str(Index + 1)), "Módulo 2", Titulo2(Index)))
If Temp = "" Then Exit Sub
Titulo2(Index) = Temp
Display = Temp
Exit Sub
End If
'Si esta la llave encendida la apaga.
If Bit1(Index) = True Then
Bit1(Index) = False
Mod1(Index).Picture = LoadPicture(App.Path + "\llave0.bmp")
Call Envia(1)
Exit Sub
End If
End Sub
Private Sub Mod2_MouseMove(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
'Coloca el título de la tecla en el display.
Display = Titulo2(Index)
End Sub
Private Sub Mod3_MouseDown(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
'Si pulsa el 2do. botón permite definir el título de la tecla.
If Button = 2 Then
Temp = Trim(InputBox("Título de la tecla " + Trim(Str(Index + 1)), "Módulo 3", Titulo3(Index)))
If Temp = "" Then Exit Sub
Titulo3(Index) = Temp
Display = Temp
Exit Sub
End If
'Si esta la llave apagada la enciende.
If Bit2(Index) = False Then
Bit2(Index) = True
Mod2(Index).Picture = LoadPicture(App.Path + "\llave1.bmp")
Call Envia(2)
Exit Sub
End If
End Sub
Private Sub Mod3_MouseMove(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
'Coloca el título de la tecla en el display.
Display = Titulo3(Index)
End Sub
Private Sub Mod4_MouseDown(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
'Si pulsa el 2do. botón permite definir el título de la tecla.
If Button = 2 Then
Temp = Trim(InputBox("Título de la tecla " + Trim(Str(Index + 1)), "Módulo 4", Titulo4(Index)))
If Temp = "" Then Exit Sub
Titulo4(Index) = Temp
Display = Temp
Exit Sub
End If
'Si esta la llave encendida la apaga.
If Bit2(Index) = True Then
Bit2(Index) = False
Mod2(Index).Picture = LoadPicture(App.Path + "\llave0.bmp")
Call Envia(2)
Exit Sub
End If
End Sub
Private Sub Mod4_MouseMove(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
'Coloca el título de la tecla en el display.
Display = Titulo4(Index)
End Sub
Private Sub SAV1_Click()
'Obtiene el título de la memoria.
If CAR1.Enabled = False Then Titulo = "" Else Titulo = SAV1.Caption
Temp = Trim(InputBox("Título de la memoria 1", "Guardar memoria...", Titulo))
'Cancela si no le pone título.
If Temp = "" Then
MsgBox "Para almacenar una memoria es necesario definirle un título...", 16, "MEMORIA NO GUARDADA"
Exit Sub
End If
'Coloca el reloj en el puntero.
Screen.MousePointer = 11
'Graba la memoria.
Open App.Path + "\MEMORIA1.INI" For Output As #1
Print #1, Temp
For Ciclo = 0 To 7
Print #1, Bit1(Ciclo)
Print #1, Bit2(Ciclo)
Print #1, Bit3(Ciclo)
Print #1, Bit4(Ciclo)
Next Ciclo
Close
'Activa las opciones del menú.
BOR1.Enabled = True
CAR1.Enabled = True
'Cambia los títulos de las opciones.
CAR1.Caption = Temp
SAV1.Caption = Temp
BOR1.Caption = Temp
'Restaura el puntero.
Screen.MousePointer = 0
End Sub
Private Sub SAV2_Click()
'Obtiene el título de la memoria.
If CAR2.Enabled = False Then Titulo = "" Else Titulo = SAV2.Caption
Temp = Trim(InputBox("Título de la memoria 2", "Guardar memoria...", Titulo))
'Cancela si no le pone título.
If Temp = "" Then
MsgBox "Para almacenar una memoria es necesario definirle un título...", 16, "MEMORIA NO GUARDADA"
Exit Sub
End If
'Coloca el reloj en el puntero.
Screen.MousePointer = 11
'Graba la memoria.
Open App.Path + "\MEMORIA2.INI" For Output As #1
Print #1, Temp
For Ciclo = 0 To 7
Print #1, Bit1(Ciclo)
Print #1, Bit2(Ciclo)
Print #1, Bit3(Ciclo)
Print #1, Bit4(Ciclo)
Next Ciclo
Close
'Activa las opciones del menú.
BOR2.Enabled = True
CAR2.Enabled = True
'Cambia los títulos de las opciones.
CAR2.Caption = Temp
SAV2.Caption = Temp
BOR2.Caption = Temp
'Restaura el puntero.
Screen.MousePointer = 0
End Sub
Private Sub SAV3_Click()
'Obtiene el título de la memoria.
If CAR3.Enabled = False Then Titulo = "" Else Titulo = SAV3.Caption
Temp = Trim(InputBox("Título de la memoria 3", "Guardar memoria...", Titulo))
'Cancela si no le pone título.
If Temp = "" Then
MsgBox "Para almacenar una memoria es necesario definirle un título...", 16, "MEMORIA NO GUARDADA"
Exit Sub
End If
'Coloca el reloj en el puntero.
Screen.MousePointer = 11
'Graba la memoria.
Open App.Path + "\MEMORIA3.INI" For Output As #1
Print #1, Temp
For Ciclo = 0 To 7
Print #1, Bit1(Ciclo)
Print #1, Bit2(Ciclo)
Print #1, Bit3(Ciclo)
Print #1, Bit4(Ciclo)
Next Ciclo
Close
'Activa las opciones del menú.
BOR3.Enabled = True
CAR3.Enabled = True
'Cambia los títulos de las opciones.
CAR3.Caption = Temp
SAV3.Caption = Temp
BOR3.Caption = Temp
'Restaura el puntero.
Screen.MousePointer = 0
End Sub
Private Sub SAV4_Click()
'Obtiene el título de la memoria.
If CAR4.Enabled = False Then Titulo = "" Else Titulo = SAV4.Caption
Temp = Trim(InputBox("Título de la memoria 4", "Guardar memoria...", Titulo))
'Cancela si no le pone título.
If Temp = "" Then
MsgBox "Para almacenar una memoria es necesario definirle un título...", 16, "MEMORIA NO GUARDADA"
Exit Sub
End If
'Coloca el reloj en el puntero.
Screen.MousePointer = 11
'Graba la memoria.
Open App.Path + "\MEMORIA4.INI" For Output As #1
Print #1, Temp
For Ciclo = 0 To 7
Print #1, Bit1(Ciclo)
Print #1, Bit2(Ciclo)
Print #1, Bit3(Ciclo)
Print #1, Bit4(Ciclo)
Next Ciclo
Close
'Activa las opciones del menú.
BOR4.Enabled = True
CAR4.Enabled = True
'Cambia los títulos de las opciones.
CAR4.Caption = Temp
SAV4.Caption = Temp
BOR4.Caption = Temp
'Restaura el puntero.
Screen.MousePointer = 0
End Sub
Private Sub SAV5_Click()
'Obtiene el título de la memoria.
If CAR5.Enabled = False Then Titulo = "" Else Titulo = SAV5.Caption
Temp = Trim(InputBox("Título de la memoria 5", "Guardar memoria...", Titulo))
'Cancela si no le pone título.
If Temp = "" Then
MsgBox "Para almacenar una memoria es necesario definirle un título...", 16, "MEMORIA NO GUARDADA"
Exit Sub
End If
'Coloca el reloj en el puntero.
Screen.MousePointer = 11
'Graba la memoria.
Open App.Path + "\MEMORIA5.INI" For Output As #1
Print #1, Temp
For Ciclo = 0 To 7
Print #1, Bit1(Ciclo)
Print #1, Bit2(Ciclo)
Print #1, Bit3(Ciclo)
Print #1, Bit4(Ciclo)
Next Ciclo
Close
'Activa las opciones del menú.
BOR5.Enabled = True
CAR5.Enabled = True
'Cambia los títulos de las opciones.
CAR5.Caption = Temp
SAV5.Caption = Temp
BOR5.Caption = Temp
'Restaura el puntero.
Screen.MousePointer = 0
End Sub
Private Sub SAVTIT_Click()
'Coloca el reloj en el puntero.
Screen.MousePointer = 11
'Genera el archivo de títulos.
Open App.Path + "\TITULOS.INI" For Output As #1
Print #1, "Este archivo contiene los títulos de las llaves."
Print #1, "Debe medir si o si 34 líneas incluyendo estas dos."
For Ciclo = 0 To 7
Print #1, Titulo1(Ciclo)
Print #1, Titulo2(Ciclo)
Print #1, Titulo3(Ciclo)
Print #1, Titulo4(Ciclo)
Next Ciclo
Close
'Restaura el puntero.
Screen.MousePointer = 0
End Sub