' *** RailwayLicht *** ' (c) 2012, gps $regfile = "m8def.dat" : $crystal = 8000000 : $hwstack = 64 $swstack = 64 : $framesize = 64 ' ** PortC out: 0...2 = letterdelen ' ** PortD out: 0...7 = BOURMANG ' ** PortB out: 0...7 = ES RUSSES Const Shownum = 36 Dim A As Word , Lp(4) As Word , Lrt As Byte , Ptt As Byte , Ppt As Byte Dim L1(3) As Byte , L2(3) As Byte Dim Pst As Byte , Pp As Byte , Pn As Byte , Pct As Byte , Pbt As Byte ' *** Initialisatie: Gosub Initall ' *** HOOFDLUS *** Do For A = 1 To 8 '32ms show-beeld tonen Portc = 1 : Portd = L1(1) : Portb = L2(1) : Waitms 1 : Portb = 0 : Portd = 0 Portc = 2 : Portd = L1(2) : Portb = L2(2) : Waitms 1 : Portb = 0 : Portd = 0 Portc = 4 : Portd = L1(3) : Portb = L2(3) : Waitms 1 : Portb = 0 : Portd = 0 Waitms 1 : Next : Incr Ptt : If Ptt > Lp(4) Then Gosub Initnowbeeld : If Pbt > Lp(1) Then Gosub Initnowcycl : If Pct > Lp(3) Then Gosub Initpat : Incr Pst : If Pst > Shownum Then Gosub Initshow End If : End If : End If Loop Initall: Config Portc = Output : Config Portd = Output : Config Portb = Output Initshow: Pst = 0 Initpat: Pn = Lookup(pst , Showdata) : A = Pn * 4 : Pct = 0 For Lrt = 1 To 4 : Lp(lrt) = Lookup(a , Patdata) : Incr A : Next : Initnowcycl: Pbt = 0 : Incr Pct Initnowbeeld: Pp = Lp(2) + Pbt : Ptt = 0 : A = Pp * 6 : Incr Pbt For Lrt = 1 To 3 : L1(lrt) = Lookup(a , Lichtdata) : Incr A : Next : For Lrt = 1 To 3 : L2(lrt) = Lookup(a , Lichtdata) : Incr A : Next : Return End Showdata: Data 00 , 05 , 01 , 02 , 09 , 15 , 10 , 00 , 11 , 03 Data 05 , 04 , 09 , 05 , 06 , 08 , 05 , 07 , 12 , 05 Data 13 , 14 , 04 , 17 , 16 , 19 , 10 , 11 , 00 , 08 Data 18 , 00 , 12 , 20 , 02 , 21 Patdata: ' Pat len offs cycl tempo Data 001% , 000% , 5% , 5% ' 00 ' FLASH Data 001% , 001% , 5% , 5% ' 01 ' BLACK Data 003% , 002% , 5% , 5% ' 02 ' R1R Data 003% , 005% , 5% , 5% ' 03 ' R1L Data 003% , 008% , 5% , 5% ' 04 ' R2R Data 003% , 011% , 5% , 5% ' 05 ' R2L Data 018% , 014% , 5% , 5% ' 06 ' APPEAR Data 039% , 032% , 5% , 5% ' 07 ' OPBOUW3 Data 008% , 071% , 5% , 5% ' 08 ' SHIFT2R Data 008% , 079% , 5% , 5% ' 09 ' SHIFT3L Data 008% , 087% , 5% , 5% ' 10 ' SHIFT1R Data 016% , 095% , 5% , 5% ' 11 ' SHIFT4R Data 015% , 111% , 5% , 5% ' 12 ' WAVE2 Data 022% , 126% , 5% , 5% ' 13 ' WAVE3 Data 002% , 148% , 5% , 5% ' 14 ' HOP2 Data 002% , 150% , 5% , 5% ' 15 ' HOP4 Data 003% , 152% , 5% , 5% ' 16 ' HOP3 Data 050% , 155% , 5% , 5% ' 17 ' MIDGROW2 Data 012% , 205% , 5% , 5% ' 18 ' WORDGROW Data 026% , 217% , 5% , 5% ' 19 ' WORDWIS Data 019% , 243% , 5% , 5% ' 20 ' WORDSGROW Data 013% , 262% , 5% , 5% ' 21 ' GROWL Data 112% , 275% , 5% , 5% ' 22 ' SPEL1 Data 062% , 387% , 5% , 5% ' 23 ' SPEL2 Data 044% , 449% , 5% , 5% ' 24 ' SPEL3 Data 038% , 493% , 5% , 5% ' 25 ' SPEL4 Data 150% , 531% , 5% , 5% ' 26 ' BOUW2 Data 117% , 681% , 5% , 5% ' 27 ' WORDSIDE Lichtdata: ' BOURMANG, ESRUSSES Data 255 , 255 , 255 , 255 , 255 , 255 ' FLASH Data 0 , 0 , 0 , 0 , 0 , 0 ' BLACK Data 255 , 0 , 0 , 255 , 0 , 0 ' R1R Data 0 , 255 , 0 , 0 , 255 , 0 Data 0 , 0 , 255 , 0 , 0 , 255 Data 0 , 0 , 255 , 0 , 0 , 255 ' R1L Data 0 , 255 , 0 , 0 , 255 , 0 Data 255 , 0 , 0 , 255 , 0 , 0 Data 255 , 255 , 0 , 255 , 255 , 0 ' R2R Data 0 , 255 , 255 , 0 , 255 , 255 Data 255 , 0 , 255 , 255 , 0 , 255 Data 255 , 255 , 0 , 255 , 255 , 0 ' R2L Data 255 , 0 , 255 , 255 , 0 , 255 Data 0 , 255 , 255 , 0 , 255 , 255 Data 1 , 0 , 0 , 0 , 0 , 0 ' APPEAR Data 3 , 1 , 0 , 0 , 0 , 0 Data 7 , 3 , 1 , 0 , 0 , 0 Data 15 , 7 , 3 , 0 , 0 , 0 Data 31 , 15 , 7 , 0 , 0 , 0 Data 63 , 31 , 15 , 0 , 0 , 0 Data 127 , 63 , 31 , 0 , 0 , 0 Data 255 , 127 , 63 , 0 , 0 , 0 'en zo voort ...