$regfile = "m32def.dat"
$crystal = 8000000
$hwstack = 100
$swstack = 100
$framesize = 100
'$sim
'************** Alle Ports als Eingang oder Ausgang definieren ****************
Ddra = &B11111111
Ddrb = &B00010000
Ddrc = &B11000111
Ddrd = &B01111111
'******* Alle Ports auf 0 bzw. 1 setzen für definierten Anfangszustände *******
'Bei Eingängen durch 1 den Pulldownwiderstand aktivieren
Porta = &B11111111
Portb = &B00011111
Portc = &B00000111
Portd = &B01001111
'******************** Übersicht Speicherbereiche Variablen ********************
'Dim as Bit = 0 bis 1
'Dim as Byte = 0 bis 255
'Dim as Integer = -32768 bis +32767
'Dim as Word = 0 bis 65535
'Dim as Long = -2147483648 bis 2147483647
'Dim as Single = 1,5 x 10^-45 bis 3,4 x 10^38
'Dim as Double = 5,0 x 10^-324 bis 1,7 x 10^308
'Dim as String = 254 Zeichen
'****************************** Übersicht IO **********************************
'In / Out Pin Typ Signalname
'PA0 40 O Attiny 861A PB4 SW3
'PA1 41 O Attiny 861A PB5 SW2
'PA2 42 O Attiny 861A PB6 SW1
'PA3 43 O Attiny 861A PA3 SW8
'PA4 44 O Attiny 861A PA4 SW7
'PA5 45 O Attiny 861A PA5 SW6
'PA6 46 O Attiny 861A PA6 SW5
'PA7 47 O Attiny 861A PA7 SW4
'PB0 1 I Tasten 1-2-3
'PB1 2 I Tasten 4-5-6
'PB2 3 I Tasten 7-8-9
'PB3 4 I Tasten *-0-#
'PB4 5 O Tasten 1-4-7-*
'PB5 6 I frei
'PB6 7 I frei
'PB7 8 I frei
'PD7 21 I frei
'PC0 22 O Volume 1 39k
'PC1 23 O Volume 2 70k
'PC2 24 O Volume 3 330k
'PC3 25 I frei
'PC4 26 I frei
'PC5 27 I Voice
'PC6 28 O Magnetschloss
'PC7 29 O Klingel
'PD0 14 O Tasten 3-6-9-#
'PD1 15 O Tasten 2-5-8-0
'PD2 16 O Verstärker
'PD3 17 O LED Stripe blau
'PD4 18 O LED rot lock
'PD5 19 O LED grün unlock
'PD6 20 O LED Taster
'*************************** Variablen declarieren ****************************
Dim Zeichen As Byte
Dim Menge As Byte
Dim Numsp As String * 10
Dim Code1 As String * 10
Dim Code2 As String * 10
Dim Code3 As String * 10
Dim Code4 As String * 10
Dim Zeit1 As Integer
Dim Wartezeit As Integer
Dim File As Byte
Dim I As Integer
Dim J As Integer
Dim K As Bit
Dim L As Integer
Dim Falsch As Byte
Dim Volume As Byte
Dim Mute As Byte
Declare Sub Voice
Numsp = ""
Menge = 4
Zeichen = 0
Zeit1 = 0
File = 0
Volume = 3
Mute = 1
'==============================================================================
'==============================================================================
'==============================================================================
'****************************** Hauptprogramm *********************************
Portd.2 = 1
Portd.3 = 1
Portd.6 = 1
'Schleife Zahlenschloss
Anfang:
Code1 = "1234" ' Ralf
Code2 = "5678" ' Frau
Code3 = "4321" ' Tochter
Code4 = "8765" ' Sohn
I = 0
J = 0
'Led Lock rot
Portd.4 = 0
Waitms 20
'Tastaturspeiseports alle setzen, damit geprüft werden kann, ob alle
'Tasten Losgelassen wurden.
Portb.4 = 0
Portd.0 = 0
Portd.1 = 0
'Prüfung losgelassen?
If Pinb.0 = 0 Or Pinb.1 = 0 Or Pinb.2 = 0 Or Pinb.3 = 0 Then
Goto Anfang
End If
'*********** Schleife Tastenfeld mit Abschaltung Voice nach xx min ************
Do
'Zeile 1 mit Tasten 1-4-7-*
Portb.4 = 0
Portd.0 = 1
Portd.1 = 1
If Pinb.0 = 0 And Pinb.1 = 1 And Pinb.2 = 1 And Pinb.3 = 1 Then
Portb.4 = 1
Goto Nummer1
Elseif Pinb.0 = 1 And Pinb.1 = 0 And Pinb.2 = 1 And Pinb.3 = 1 Then
Portb.4 = 1
Goto Nummer4
Elseif Pinb.0 = 1 And Pinb.1 = 1 And Pinb.2 = 0 And Pinb.3 = 1 Then
Portb.4 = 1
Goto Nummer7
Elseif Pinb.0 = 1 And Pinb.1 = 1 And Pinb.2 = 1 And Pinb.3 = 0 Then
Portb.4 = 1
Goto Nummerstern
End If
'Zeile 1 mit Tasten 2-5-8-0
Portb.4 = 1
Portd.0 = 1
Portd.1 = 0
If Pinb.0 = 0 And Pinb.1 = 1 And Pinb.2 = 1 And Pinb.3 = 1 Then
Goto Nummer2
Portd.1 = 1
Elseif Pinb.0 = 1 And Pinb.1 = 0 And Pinb.2 = 1 And Pinb.3 = 1 Then
Portd.1 = 1
Goto Nummer5
Elseif Pinb.0 = 1 And Pinb.1 = 1 And Pinb.2 = 0 And Pinb.3 = 1 Then
Portd.1 = 1
Goto Nummer8
Elseif Pinb.0 = 1 And Pinb.1 = 1 And Pinb.2 = 1 And Pinb.3 = 0 Then
Portd.1 = 1
Goto Nummer0
End If
'Zeile 1 mit Tasten 3-6-9-#
Portb.4 = 1
Portd.0 = 0
Portd.1 = 1
If Pinb.0 = 0 And Pinb.1 = 1 And Pinb.2 = 1 And Pinb.3 = 1 Then
Portd.0 = 1
Goto Nummer3
Elseif Pinb.0 = 1 And Pinb.1 = 0 And Pinb.2 = 1 And Pinb.3 = 1 Then
Portd.0 = 1
Goto Nummer6
Elseif Pinb.0 = 1 And Pinb.1 = 1 And Pinb.2 = 0 And Pinb.3 = 1 Then
Portd.0 = 1
Goto Nummer9
Elseif Pinb.0 = 1 And Pinb.1 = 1 And Pinb.2 = 1 And Pinb.3 = 0 Then
Portd.0 = 1
Goto Nummerraute
End If
'Dimmung LED Stripe nach Zeit oder bei Spache
If Numsp = "" And Zeit1 < 1 Then
Portd.3 = 0
Elseif Pinc.5 = 1 And Zeichen > 3 Then
Portd.3 = 0
If Rnd(20) = 5 Then
Portd.3 = 1
End If
End If
'Dimmung Taster nach Zeit1 auf und abdimmen
If Numsp = "" And Zeit1 < 1 Then
Portd.6 = 0
End If
If J < 2900 And K = 0 Then
J = J + 4
Else
K = 1
End If
If J > 4 And K = 1 Then
J = J - 4
Else
K = 0
End If
Waitus J
Portd.6 = 1
L = 3000 - J
Waitus L
Portd.3 = 1
Waitus 150
'damit Taster bis nahezu ß dimmt
Portd.6 = 0
Waitus 50
'rote LED Lebenszeichen
I = I + 1
If I = 1000 And Numsp = "" Then
'LED lock rot
Portd.4 = 1
Elseif I = 1010 Then
Portd.4 = 0
Elseif I = 1100 And Numsp = "" Then
Portd.4 = 1
Elseif I = 1110 Then
Portd.4 = 0
Elseif I = 1200 And Numsp = "" Then
'LED unlock grün
Portd.5 = 1
Elseif I > 1210 Then
Portd.5 = 0
I = 0
End If
'Abschaltung Voicemodul nach Zeit 30s siehe Sub Voice
If Zeit1 < 1 Then
Portd.2 = 1
Mute = 1
Falsch = 0
Else
Zeit1 = Zeit1 - 1
End If
'Zaehler Wartezeit bis zur vollständigen Eingabe
If Zeichen > 0 Then
Wartezeit = Wartezeit + 1
End If
If Wartezeit > 3000 Then '3000 x 3ms = 9s
Numsp = ""
Zeichen = 0
Wartezeit = 0
File = Rnd(9) + 101
Call Voice
End If
Loop
'==============================================================================
'==============================================================================
'==============================================================================
'************************ Nummerneingabeauswertung ****************************
Nummer1:
Numsp = Numsp + "1"
If Mid(code1 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 1
Elseif Mid(code2 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 11
Elseif Mid(code3 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 21
Elseif Mid(code4 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 31
Else
File = Rnd(9) + 121
End If
Call Voice
Zeichen = Zeichen + 1
If Zeichen < Menge Then
Goto Anfang
Else
Goto Auswertung
End If
Nummer2:
Numsp = Numsp + "2"
If Mid(code1 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 1
Elseif Mid(code2 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 11
Elseif Mid(code3 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 21
Elseif Mid(code4 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 31
Else
File = Rnd(9) + 121
End If
Call Voice
Zeichen = Zeichen + 1
If Zeichen < Menge Then
Goto Anfang
Else
Goto Auswertung
End If
Nummer3:
Numsp = Numsp + "3"
If Mid(code1 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 1
Elseif Mid(code2 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 11
Elseif Mid(code3 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 21
Elseif Mid(code4 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 31
Else
File = Rnd(9) + 121
End If
Call Voice
Zeichen = Zeichen + 1
If Zeichen < Menge Then
Goto Anfang
Else
Goto Auswertung
End If
Nummer4:
Numsp = Numsp + "4"
If Mid(code1 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 1
Elseif Mid(code2 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 11
Elseif Mid(code3 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 21
Elseif Mid(code4 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 31
Else
File = Rnd(9) + 121
End If
Call Voice
Zeichen = Zeichen + 1
If Zeichen < Menge Then
Goto Anfang
Else
Goto Auswertung
End If
Nummer5:
Numsp = Numsp + "5"
If Mid(code1 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 1
Elseif Mid(code2 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 11
Elseif Mid(code3 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 21
Elseif Mid(code4 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 31
Else
File = Rnd(9) + 121
End If
Call Voice
Zeichen = Zeichen + 1
If Zeichen < Menge Then
Goto Anfang
Else
Goto Auswertung
End If
Nummer6:
Numsp = Numsp + "6"
If Mid(code1 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 1
Elseif Mid(code2 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 11
Elseif Mid(code3 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 21
Elseif Mid(code4 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 31
Else
File = Rnd(9) + 121
End If
Call Voice
Zeichen = Zeichen + 1
If Zeichen < Menge Then
Goto Anfang
Else
Goto Auswertung
End If
Nummer7:
Numsp = Numsp + "7"
If Mid(code1 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 1
Elseif Mid(code2 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 11
Elseif Mid(code3 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 21
Elseif Mid(code4 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 31
Else
File = Rnd(9) + 121
End If
Call Voice
Zeichen = Zeichen + 1
If Zeichen < Menge Then
Goto Anfang
Else
Goto Auswertung
End If
Nummer8:
Numsp = Numsp + "8"
If Mid(code1 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 1
Elseif Mid(code2 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 11
Elseif Mid(code3 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 21
Elseif Mid(code4 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 31
Else
File = Rnd(9) + 121
End If
Call Voice
Zeichen = Zeichen + 1
If Zeichen < Menge Then
Goto Anfang
Else
Goto Auswertung
End If
Nummer9:
Numsp = Numsp + "9"
If Mid(code1 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 1
Elseif Mid(code2 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 11
Elseif Mid(code3 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 21
Elseif Mid(code4 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 31
Else
File = Rnd(9) + 121
End If
Call Voice
Zeichen = Zeichen + 1
If Zeichen < Menge Then
Goto Anfang
Else
Goto Auswertung
End If
Nummer0:
Numsp = Numsp + "0"
If Mid(code1 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 1
Elseif Mid(code2 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 11
Elseif Mid(code3 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 21
Elseif Mid(code4 , 1 , 1) = Mid(numsp , 1 , 1) Then
File = Rnd(9) + 31
Else
File = Rnd(9) + 121
End If
Call Voice
Zeichen = Zeichen + 1
If Zeichen < Menge Then
Goto Anfang
Else
Goto Auswertung
End If
Nummerstern:
Numsp = Numsp + "*"
If Mute = 1 Then
Mute = 0
Else
Mute = 1
End If
Goto Anfang
Nummerraute:
File = Rnd(9) + 111
Numsp = ""
Zeichen = 0
Falsch = 0
Wartezeit = 0
I = 0
Call Voice
For I = 1 To 8
'LED lock rot
Portd.4 = 1
'LED unlock grün
Portd.5 = 1
Waitms 300
Portd.4 = 0
Portd.5 = 0
Waitms 80
I = I + 1
Next
Goto Anfang
'***************************** Codeauswertung *********************************
Auswertung:
Waitms 500
If Numsp = Code1 Then
File = Rnd(9) + 41
Call Voice
Goto Unlock
Elseif Numsp = Code2 Then
File = Rnd(9) + 51
Call Voice
Goto Unlock
Elseif Numsp = Code3 Then
File = Rnd(9) + 61
Call Voice
Goto Unlock
Elseif Numsp = Code4 Then
File = Rnd(9) + 71
Call Voice
Goto Unlock
Else
Goto Lock
End If
Goto Unlock
'******************************** Oeffnen *************************************
Unlock:
Numsp = ""
Zeichen = 0
Falsch = 0
Wartezeit = 0
If Pinc.5 = 1 Then
'LED Stripe
Portd.3 = 0
End If
I = 0
'Led Lock rot
Portd.4 = 0
'Magnetschlosss
Portc.6 = 1
'LED unlock grün
Portd.5 = 1
For I = 1 To 10000
'LED Stripe
If Rnd(20) = 5 Then
Portd.3 = 1
Else
Portd.3 = 0
End If
Waitus 200
'LED Stripe
Portd.3 = 1
Waitus 20
I = I + 1
Next
Portc.6 = 0
Portd.5 = 0
Portd.3 = 0
Mute = 1
Goto Anfang
'******************************* Verriegeln ***********************************
Lock:
Mute = 1
Numsp = ""
Zeichen = 0
Wartezeit = 0
'Led Lock rot
Portd.4 = 1
'Wenn zum dritten mal falscher Code, dann Klingel ansteuern
Falsch = Falsch + 1
If Falsch > 2 Then
File = Rnd(9) + 91
Call Voice
'Schleife für blinkenden LED Stripe und Taster LED
For I = 1 To 10
'Taster LED
Portd.6 = 1
'LED Stripe
Portd.3 = 0
Waitms 300
Portd.6 = 0
Waitms 300
I = I + 1
Next
'Klingel
Portc.7 = 1
Portd.3 = 1
Waitms 500
Portc.7 = 0
Falsch = 0
Else
File = Rnd(9) + 81
Call Voice
'Schleife für blinkendes LED Stripe
For I = 1 To 10
'LED Stripe
Portd.3 = 0
Waitms 300
Portd.3 = 1
Waitms 300
I = I + 1
Next
End If
I = 0
'Led Lock rot
Portd.4 = 0
'Taster LED
Portd.6 = 1
'LED Stripe
Portd.3 = 0
Goto Anfang
End
'==============================================================================
'==============================================================================
'==============================================================================
'*************************** Unterprogramm Voice ******************************
' Programm 8 bit decoder für sound
'PA0 40 O Attiny 861A PB4 SW3
'PA1 41 O Attiny 861A PB5 SW2
'PA2 42 O Attiny 861A PB6 SW1
'PA3 43 O Attiny 861A PA3 SW8
'PA4 44 O Attiny 861A PA4 SW7
'PA5 45 O Attiny 861A PA5 SW6
'PA6 46 O Attiny 861A PA6 SW5
'PA7 47 O Attiny 861A PA7 SW4
'File 1-10 = Tastenecho Ralf
'File 11-20 = Tastenecho Frau
'File 21-30 = Tastenecho Tochter
'File 31-40 = Tastenecho Sohn
'File 41-50 = Code1 ok
'File 51-60 = Code2 ok
'File 61-70 = Code3 ok
'File 71-80 = Code4 ok
'File 81-90 = Code falsch
'File 91-100 = Code 3x hintereinander falsch + Klingel
'File 101-110 = Zeitüberschreitung Eingabe
'File 111-120 = Reset Eingabe
'File 121-130 = Tastenecho allgemein
'File 131-140 = frei
'File 141-150 = frei
'File 151-160 = frei
'File 161-170 = frei
'File 171-180 = frei
'File 181-190 = frei
'File 191-200 = frei
'File 201-210 = frei
'File 211-220 = frei
'File 221-230 = frei
'File 231-240 = frei
'File 241-250 = frei
Sub Voice
'Ausschaltzeit Verstärker definieren 10000 x 3ms = 30s
Zeit1 = 10000
'Vertärker ein
If Mute = 0 Then
Portd.2 = 1
Else
Portd.2 = 0
End If
'Benutzerlautstärke setzen
Volume = 3
If File > 0 And File < 11 Then
Volume = 2
Elseif File > 40 And File < 51 Then
Volume = 2 'Ralf
Elseif File > 10 And File < 21 Then
Volume = 2
Elseif File > 50 And File < 61 Then
Volume = 2 'Frau
Elseif File > 20 And File < 31 Then
Volume = 2
Elseif File > 60 And File < 71 Then
Volume = 2 'Tochter
Elseif File > 30 And File < 41 Then
Volume = 1
Elseif File > 70 And File < 81 Then
Volume = 1 'Sohn
Elseif File > 80 And File < 91 Then
Volume = 3 'Code falsch
Elseif File > 90 And File < 101 Then
Volume = 4 'Code 3x falsch
Elseif File > 100 And File < 130 Then
Volume = 2 'Rest
End If
If Volume = 1 Then
' 330k 70k 39k 33k
Portc = &B00000000 '33k
Elseif Volume = 2 Then
Portc = &B00000001 '69k
Elseif Volume = 3 Then
Portc = &B00000010 '103k
Elseif Volume = 4 Then
Portc = &B00000011 '172k
Elseif Volume = 5 Then
Portc = &B00000100 '363k
Elseif Volume = 6 Then
Portc = &B00000101 '402k
Elseif Volume = 7 Then
Portc = &B00000111 '470k
End If
If File = 1 Then
' 8-16-32-64-128-1-2-4 Reihenfolge von &B11111111 und 0 = aktiv
Porta = &B11111011
Elseif File = 2 Then
Porta = &B11111101
Elseif File = 3 Then
Porta = &B11111001
Elseif File = 4 Then
Porta = &B11111110
Elseif File = 5 Then
Porta = &B11111010
Elseif File = 6 Then
Porta = &B11111100
Elseif File = 7 Then
Porta = &B11111000
Elseif File = 8 Then
Porta = &B01111111
Elseif File = 9 Then
Porta = &B01111011
Elseif File = 10 Then
Porta = &B01111101
Elseif File = 11 Then
Porta = &B01111001
Elseif File = 12 Then
Porta = &B01111110
Elseif File = 13 Then
Porta = &B01111001
Elseif File = 14 Then
Porta = &B01111100
Elseif File = 15 Then
Porta = &B01111000
Elseif File = 16 Then
Porta = &B10111111
Elseif File = 17 Then
Porta = &B10111011
Elseif File = 18 Then
Porta = &B10111101
Elseif File = 19 Then
Porta = &B10111001
Elseif File = 20 Then
Porta = &B10111110
Elseif File = 21 Then
Porta = &B10111010
Elseif File = 22 Then
Porta = &B10111100
Elseif File = 23 Then
Porta = &B10111000
Elseif File = 24 Then
Porta = &B00111111
Elseif File = 25 Then
Porta = &B00111011
Elseif File = 26 Then
Porta = &B00111101
Elseif File = 27 Then
Porta = &B00111001
Elseif File = 28 Then
Porta = &B00111110
Elseif File = 29 Then
Porta = &B00111010
Elseif File = 30 Then
Porta = &B00111100
Elseif File = 31 Then
Porta = &B00111000
Elseif File = 32 Then
Porta = &B11011111
Elseif File = 33 Then
Porta = &B11011011
Elseif File = 34 Then
Porta = &B11011101
Elseif File = 35 Then
Porta = &B11011001
Elseif File = 36 Then
Porta = &B11011110
Elseif File = 37 Then
Porta = &B11011010
Elseif File = 38 Then
Porta = &B11011100
Elseif File = 39 Then
Porta = &B11011000
Elseif File = 40 Then
Porta = &B01011111
Elseif File = 41 Then
Porta = &B01011011
Elseif File = 42 Then
Porta = &B01011101
Elseif File = 43 Then
Porta = &B01011001
Elseif File = 44 Then
Porta = &B01011110
Elseif File = 45 Then
Porta = &B01011010
Elseif File = 46 Then
Porta = &B01011100
Elseif File = 47 Then
Porta = &B01011000
Elseif File = 48 Then
Porta = &B10011111
Elseif File = 49 Then
Porta = &B10011011
Elseif File = 50 Then
Porta = &B10011101
Elseif File = 51 Then
Porta = &B10011001
Elseif File = 52 Then
Porta = &B10011110
Elseif File = 53 Then
Porta = &B10011010
Elseif File = 54 Then
Porta = &B10011100
Elseif File = 55 Then
Porta = &B10011000
Elseif File = 56 Then
Porta = &B00011111
Elseif File = 57 Then
Porta = &B00011011
Elseif File = 58 Then
Porta = &B00011101
Elseif File = 59 Then
Porta = &B00011001
Elseif File = 60 Then
Porta = &B00011110
Elseif File = 61 Then
Porta = &B00011010
Elseif File = 62 Then
Porta = &B00011100
Elseif File = 63 Then
Porta = &B00011000
Elseif File = 64 Then
Porta = &B11101111
Elseif File = 65 Then
Porta = &B11101011
Elseif File = 66 Then
Porta = &B11101101
Elseif File = 67 Then
Porta = &B11101001
Elseif File = 68 Then
Porta = &B11101110
Elseif File = 69 Then
Porta = &B11101010
Elseif File = 70 Then
Porta = &B11101100
Elseif File = 71 Then
Porta = &B11101000
Elseif File = 72 Then
Porta = &B01101111
Elseif File = 73 Then
Porta = &B01101011
Elseif File = 74 Then
Porta = &B01101101
Elseif File = 75 Then
Porta = &B01101001
Elseif File = 76 Then
Porta = &B01101110
Elseif File = 77 Then
Porta = &B01101010
Elseif File = 78 Then
Porta = &B01101100
Elseif File = 79 Then
Porta = &B01101000
Elseif File = 80 Then
Porta = &B10101111
Elseif File = 81 Then
Porta = &B10101011
Elseif File = 82 Then
Porta = &B10101101
Elseif File = 83 Then
Porta = &B10101001
Elseif File = 84 Then
Porta = &B10101110
Elseif File = 85 Then
Porta = &B10101010
Elseif File = 86 Then
Porta = &B10101100
Elseif File = 87 Then
Porta = &B10101000
Elseif File = 88 Then
Porta = &B00101111
Elseif File = 89 Then
Porta = &B00101011
Elseif File = 90 Then
Porta = &B00101101
Elseif File = 91 Then
Porta = &B00101001
Elseif File = 92 Then
Porta = &B00101110
Elseif File = 93 Then
Porta = &B00101010
Elseif File = 94 Then
Porta = &B00101100
Elseif File = 95 Then
Porta = &B00101000
Elseif File = 96 Then
Porta = &B11001111
Elseif File = 97 Then
Porta = &B11001011
Elseif File = 98 Then
Porta = &B11001101
Elseif File = 99 Then
Porta = &B11001001
Elseif File = 100 Then
Porta = &B11001110
Elseif File = 101 Then
Porta = &B11001010
Elseif File = 102 Then
Porta = &B11001100
Elseif File = 103 Then
Porta = &B11001000
Elseif File = 104 Then
Porta = &B01001111
Elseif File = 105 Then
Porta = &B01001011
Elseif File = 106 Then
Porta = &B01001101
Elseif File = 107 Then
Porta = &B01001001
Elseif File = 108 Then
Porta = &B01001110
Elseif File = 109 Then
Porta = &B01001010
Elseif File = 110 Then
Porta = &B01001100
Elseif File = 111 Then
Porta = &B01001000
Elseif File = 112 Then
Porta = &B10001111
Elseif File = 113 Then
Porta = &B10001011
Elseif File = 114 Then
Porta = &B10001101
Elseif File = 115 Then
Porta = &B10001001
Elseif File = 116 Then
Porta = &B10001110
Elseif File = 117 Then
Porta = &B10001010
Elseif File = 118 Then
Porta = &B10001100
Elseif File = 119 Then
Porta = &B10001000
Elseif File = 120 Then
Porta = &B00001111
Elseif File = 121 Then
Porta = &B00001011
Elseif File = 122 Then
Porta = &B00001101
Elseif File = 123 Then
Porta = &B00001001
Elseif File = 124 Then
Porta = &B00001110
Elseif File = 125 Then
Porta = &B00001010
Elseif File = 126 Then
Porta = &B00001100
Elseif File = 127 Then
Porta = &B00001000
Elseif File = 128 Then
Porta = &B11110111
Elseif File = 129 Then
Porta = &B11110011
Elseif File = 130 Then
Porta = &B11110101
Elseif File = 131 Then
Porta = &B11110001
Elseif File = 132 Then
Porta = &B11110110
Elseif File = 133 Then
Porta = &B11110010
Elseif File = 134 Then
Porta = &B11110100
Elseif File = 135 Then
Porta = &B11110000
Elseif File = 136 Then
Porta = &B01110111
Elseif File = 137 Then
Porta = &B01110011
Elseif File = 138 Then
Porta = &B01110101
Elseif File = 139 Then
Porta = &B01110001
Elseif File = 140 Then
Porta = &B01110110
Elseif File = 141 Then
Porta = &B01110010
Elseif File = 142 Then
Porta = &B01110100
Elseif File = 143 Then
Porta = &B01110000
Elseif File = 144 Then
Porta = &B10110111
Elseif File = 145 Then
Porta = &B10110011
Elseif File = 146 Then
Porta = &B10110101
Elseif File = 147 Then
Porta = &B10110001
Elseif File = 148 Then
Porta = &B10110110
Elseif File = 149 Then
Porta = &B10110010
Elseif File = 150 Then
Porta = &B10110100
Elseif File = 151 Then
Porta = &B10110000
Elseif File = 152 Then
Porta = &B00110111
Elseif File = 153 Then
Porta = &B00110011
Elseif File = 154 Then
Porta = &B00110101
Elseif File = 155 Then
Porta = &B00110001
Elseif File = 156 Then
Porta = &B00110110
Elseif File = 157 Then
Porta = &B00110010
Elseif File = 58 Then
Porta = &B00110100
Elseif File = 159 Then
Porta = &B00110000
Elseif File = 160 Then
Porta = &B11010111
Elseif File = 161 Then
Porta = &B11010011
Elseif File = 162 Then
Porta = &B11010101
Elseif File = 163 Then
Porta = &B11010001
Elseif File = 164 Then
Porta = &B11010110
Elseif File = 165 Then
Porta = &B11010010
Elseif File = 166 Then
Porta = &B11010100
Elseif File = 167 Then
Porta = &B11010000
Elseif File = 168 Then
Porta = &B01010111
Elseif File = 169 Then
Porta = &B01010011
Elseif File = 170 Then
Porta = &B01010101
Elseif File = 171 Then
Porta = &B01010001
Elseif File = 172 Then
Porta = &B01010110
Elseif File = 173 Then
Porta = &B01010010
Elseif File = 174 Then
Porta = &B01010100
Elseif File = 175 Then
Porta = &B01010000
Elseif File = 176 Then
Porta = &B10010111
Elseif File = 177 Then
Porta = &B10010011
Elseif File = 178 Then
Porta = &B10010101
Elseif File = 179 Then
Porta = &B10010001
Elseif File = 180 Then
Porta = &B10010110
Elseif File = 181 Then
Porta = &B10010010
Elseif File = 182 Then
Porta = &B10010100
Elseif File = 183 Then
Porta = &B10010000
Elseif File = 184 Then
Porta = &B00010111
Elseif File = 185 Then
Porta = &B00010011
Elseif File = 186 Then
Porta = &B00010101
Elseif File = 187 Then
Porta = &B00010001
Elseif File = 188 Then
Porta = &B00010110
Elseif File = 189 Then
Porta = &B00010010
Elseif File = 190 Then
Porta = &B00010100
Elseif File = 191 Then
Porta = &B00010000
Elseif File = 192 Then
Porta = &B11100111
Elseif File = 193 Then
Porta = &B11100011
Elseif File = 194 Then
Porta = &B11100101
Elseif File = 195 Then
Porta = &B11100001
Elseif File = 196 Then
Porta = &B11100110
Elseif File = 197 Then
Porta = &B11100010
Elseif File = 198 Then
Porta = &B11100100
Elseif File = 199 Then
Porta = &B11100000
Elseif File = 200 Then
Porta = &B01100111
Elseif File = 201 Then
Porta = &B01100011
Elseif File = 202 Then
Porta = &B01100101
Elseif File = 203 Then
Porta = &B01100001
Elseif File = 204 Then
Porta = &B01100110
Elseif File = 205 Then
Porta = &B01100010
Elseif File = 206 Then
Porta = &B01100100
Elseif File = 207 Then
Porta = &B01100000
Elseif File = 208 Then
Porta = &B10100111
Elseif File = 209 Then
Porta = &B10100011
Elseif File = 210 Then
Porta = &B10100101
Elseif File = 211 Then
Porta = &B10100001
Elseif File = 212 Then
Porta = &B10100110
Elseif File = 213 Then
Porta = &B10100010
Elseif File = 214 Then
Porta = &B10100100
Elseif File = 215 Then
Porta = &B10100000
Elseif File = 216 Then
Porta = &B00100111
Elseif File = 217 Then
Porta = &B00100011
Elseif File = 218 Then
Porta = &B00100101
Elseif File = 219 Then
Porta = &B00100001
Elseif File = 220 Then
Porta = &B00100110
Elseif File = 221 Then
Porta = &B00100010
Elseif File = 222 Then
Porta = &B00100100
Elseif File = 223 Then
Porta = &B00100000
Elseif File = 224 Then
Porta = &B11000111
Elseif File = 225 Then
Porta = &B11000011
Elseif File = 226 Then
Porta = &B11000101
Elseif File = 227 Then
Porta = &B11000001
Elseif File = 228 Then
Porta = &B11000110
Elseif File = 229 Then
Porta = &B11000010
Elseif File = 230 Then
Porta = &B11000100
Elseif File = 231 Then
Porta = &B11000000
Elseif File = 232 Then
Porta = &B01000111
Elseif File = 233 Then
Porta = &B01000011
Elseif File = 234 Then
Porta = &B01000101
Elseif File = 235 Then
Porta = &B01000001
Elseif File = 236 Then
Porta = &B01000110
Elseif File = 237 Then
Porta = &B01000010
Elseif File = 238 Then
Porta = &B01000100
Elseif File = 239 Then
Porta = &B01000000
Elseif File = 240 Then
Porta = &B10000111
Elseif File = 241 Then
Porta = &B10000011
Elseif File = 242 Then
Porta = &B10000101
Elseif File = 243 Then
Porta = &B10000001
Elseif File = 244 Then
Porta = &B10000110
Elseif File = 245 Then
Porta = &B10000010
Elseif File = 246 Then
Porta = &B10000100
Elseif File = 247 Then
Porta = &B10000000
Elseif File = 248 Then
Porta = &B00000111
Elseif File = 249 Then
Porta = &B00000011
Elseif File = 250 Then
Porta = &B00000101
Elseif File = 251 Then
Porta = &B00000001
Elseif File = 252 Then
Porta = &B00000110
Elseif File = 253 Then
Porta = &B00000010
Elseif File = 254 Then
Porta = &B00000100
Elseif File = 255 Then
Porta = &B00000000
End If
Waitms 100
Porta = &B11111111
End Sub