Code:
$regfile = "m8def.dat"
$crystal = 8000000
$framesize = 256
$swstack = 256
$hwstack = 256
Config Portb = Output
Config Portd.6 = Output
Portd.6 = 0
Config Portd.7 = Output
Portd.7 = 0
Dim Umdrehung As Word
Dim Spaltenzeit As Byte
Dim A As Byte
Dim X As Byte
Dim X_7 As Byte
Dim I As Byte
Dim L As Byte
Dim Anzeige As String * 30
Dim Zeichen As String * 1
Dim Zeichenasc As Byte
Dim Spalte(150) As Byte
Dim Laenge As Byte
Dim Spalten As Byte
Dim Index As Word
Dim Stelle As Byte
Dim Spalteanz As Byte
Dim Spalteleer As Byte
Dim Spalteleer_7 As Byte
Config Int0 = Falling
On Int0 Int0isr
Enable Int0
Config Portd.2 = Input
Portd.2 = 1
Config Timer0 = Timer , Prescale = 64
On Timer0 Timer0isr
Enable Timer0
Config Timer1 = Timer , Prescale = 8
On Timer1 Timer1isr
Enable Timer1
Enable Interrupts
Start Timer0
Start Timer1
Anzeige = "Roman Sutter"
Portd.6 = 1
Portb.7 = 0
Do
Spalteleer = 133
Incr L
Zeichen = Mid(anzeige , L , 1)
Laenge = Len(anzeige)
Spalten = Laenge * 7
Zeichenasc = Asc(zeichen)
If Zeichen = " " Then
For I = 1 To 7
Incr Stelle
Spalte(stelle) = 255
Next I
End If
If Zeichenasc >= 65 And Zeichenasc <= 90 Then
Index = Zeichenasc - 65
Index = Index * 5
For I = 1 To 5
Incr Stelle
Spalte(stelle) = Lookup(index , Abc_gross)
Incr Index
Next I
Incr Stelle
Spalte(stelle) = 255
Incr Stelle
Spalte(stelle) = 255
End If
If Zeichenasc >= 97 And Zeichenasc <= 122 Then
Index = Zeichenasc - 97
Index = Index * 5
For I = 1 To 5
Incr Stelle
Spalte(stelle) = Lookup(index , Abc_klein)
Incr Index
Next I
Incr Stelle
Spalte(stelle) = 255
Incr Stelle
Spalte(stelle) = 255
End If
If Zeichenasc >= 48 And Zeichenasc <= 57 Then
Index = Zeichenasc - 48
Index = Index * 5
For I = 1 To 5
Incr Stelle
Spalte(stelle) = Lookup(index , 123)
Incr Index
Next I
Incr Stelle
Spalte(stelle) = 255
Incr Stelle
Spalte(stelle) = 255
End If
Loop Until L = Laenge
Do
nop
Loop
Int0isr:
Waitms 5
Umdrehung = Timer1
Umdrehung = Umdrehung / 1200
Spaltenzeit = Umdrehung
Timer1 = 0
Timer0 = 0
A = 0
Spalteanz = 0
If X <> Spalten Then
Spalteleer = Spalteleer - 7
Spalteleer_7 = Spalteleer + 7
If Spalteleer = X_7 Then
Spalteleer = 133
X = X + 7
X_7 = X + 7
End If
Else
Portd.6 = 0
Portd.7 = 1
End If
Return
Timer0isr:
Load Timer0 , Spaltenzeit
Incr A
If A > X Then
If A > Spalteleer Then
If A > Spalteleer_7 And A > X_7 And A > Spalteanz Then
Portb = 255
Else
Incr Spalteanz
Portb = Spalte(spalteanz)
End If
Else
Portb = 255
End If
Else
Incr Spalteanz
Portb = Spalte(spalteanz)
End If
Return
Timer1isr:
Return
Abc_gross:
Data &B10000001 , &B01101111 , &B01101111 , &B01101111 , &B10000001
Data &B00000001 , &B01101101 , &B01101101 , &B01101101 , &B10010011
Data &B11000111 , &B10111011 , &B01111101 , &B01111101 , &B01111101
Data &B00000001 , &B01111101 , &B01111101 , &B10111011 , &B11000111
Data &B00000001 , &B01101101 , &B01101101 , &B01111101 , &B01111101
Data &B00000001 , &B01101111 , &B01101111 , &B01111111 , &B01111111
Data &B10000011 , &B01111101 , &B01101101 , &B01101101 , &B01100011
Data &B00000001 , &B11101111 , &B11101111 , &B11101111 , &B00000001
Data &B11111111 , &B01111101 , &B00000001 , &B01111101 , &B11111111
Data &B11111011 , &B01111101 , &B00000001 , &B01111111 , &B11111111
Data &B00000001 , &B11101111 , &B11010111 , &B10111011 , &B01111101
Data &B00000001 , &B11111101 , &B11111101 , &B11111101 , &B11111101
Data &B00000001 , &B10111111 , &B11001111 , &B10111111 , &B00000001
Data &B00000001 , &B11011111 , &B11101111 , &B11110111 , &B00000001
Data &B10000011 , &B01111101 , &B01111101 , &B01111101 , &B10000011
Data &B00000001 , &B01101111 , &B01101111 , &B01101111 , &B10011111
Data &B10000011 , &B01111101 , &B01110101 , &B01111011 , &B10000101
Data &B00000001 , &B01101111 , &B01100111 , &B01101011 , &B10011101
Data &B10011101 , &B01101101 , &B01101101 , &B01101101 , &B01110011
Data &B01111111 , &B01111111 , &B00000001 , &B01111111 , &B01111111
Data &B00000011 , &B11111101 , &B11111101 , &B11111101 , &B00000011
Data &B00000111 , &B11111011 , &B11111101 , &B11111011 , &B00000111
Data &B00000011 , &B11111101 , &B11100011 , &B11111101 , &B00000011
Data &B00111001 , &B11010111 , &B11101111 , &B11010111 , &B00111001
Data &B00011111 , &B11101111 , &B11110001 , &B11101111 , &B00011111
Data &B01111001 , &B01110101 , &B01101101 , &B01011101 , &B00111101
Abc_klein:
Data &B11111011 , &B11010101 , &B11010101 , &B11010101 , &B11100001
Data &B00000001 , &B11110101 , &B11101101 , &B11101101 , &B11110011
Data &B11100011 , &B11011101 , &B11011101 , &B11011101 , &B11111011
Data &B11110011 , &B11101101 , &B11101101 , &B11110101 , &B00000001
Data &B11100011 , &B11010101 , &B11010101 , &B11010101 , &B11100111
Data &B11101111 , &B10000001 , &B01101111 , &B01111111 , &B10111111
Data &B11001111 , &B10110101 , &B10110101 , &B10110101 , &B10000011
Data &B00000001 , &B11101111 , &B11011111 , &B11011111 , &B11100001
Data &B11111111 , &B11111111 , &B10100001 , &B11111111 , &B11111111
Data &B11111011 , &B11111101 , &B11011101 , &B01000011 , &B11111111
Data &B00000001 , &B11110111 , &B11101011 , &B11011101 , &B11111111
Data &B11111111 , &B01111101 , &B00000001 , &B11111101 , &B11111111
Data &B11000001 , &B11011111 , &B11100111 , &B11011111 , &B11100001
Data &B11000001 , &B11101111 , &B11011111 , &B11011111 , &B11100001
Data &B11100011 , &B11011101 , &B11011101 , &B11011101 , &B11100011
Data &B11000001 , &B11010111 , &B11010111 , &B11010111 , &B11101111
Data &B11101111 , &B11010111 , &B11010111 , &B11100111 , &B11000001
Data &B11000001 , &B11101111 , &B11011111 , &B11011111 , &B11101111
Data &B11101101 , &B11010101 , &B11010101 , &B11010101 , &B11111011
Data &B11011111 , &B00000011 , &B11011101 , &B11111101 , &B11111011
Data &B11000011 , &B11111101 , &B11111101 , &B11111011 , &B11000001
Data &B11000111 , &B11111011 , &B11111101 , &B11111011 , &B11000111
Data &B11000011 , &B11111101 , &B11110011 , &B11111101 , &B11000011
Data &B11011101 , &B11101011 , &B11110111 , &B11101011 , &B11011101
Data &B11001111 , &B11110101 , &B11110101 , &B11110101 , &B11000011
Data &B11011101 , &B11011001 , &B11010101 , &B11001101 , &B11011101
123:
viel spass damit
Lesezeichen