Alt text
Wt7SB41784F247Q91W5zPUnfebd733PJ.png
0b44N96P03y8CHg3zyi5k49670ciq81v.jpg
409862x9q17cO84h7WMmV73e7I0y8710.png
qQmwm66lT80r91Xj22i6GNYe2804k9jL.jpg
1627Wqt045q7nWO0Kt9257U0903g5hii.jpg
6VG93zZTu6k44Ka30y04654BHu4T648S.jpg
82A6HS6dD78054nq08Gix879m314007v.jpg

Clipper

Hier een stukje programmacode in Clipper.
Alle commando’s enz staan in een Do While lus.
S is de start toets.
Bij E50 = 1 en iets verder  Loc_E50 = 1 gaat de E50 rijden.
E50 = 1 wordt opgehoogd met 1 en heeft dan de waarde 2 totdat de E50 over Reedcontact 13 rijdt,
Dan wordt E50 = 2 opgehoogd met 1 enz.
 
Het programma weet dan dus ook precies waar de trein rijdt.
 
*Start
Do While .T.
    keuze = inkey()
    if keuze = 27
       exit
    endif
 if keuze = 115                   && (S) Start
      Ronde = 1
      E50 = 1
      E94 = 11
      E103 = 11
      Stap_Licht = 0
      @ 18,52 say "            "
      @ 19,54 say "        "
      Loop  = 0
      Loop1 = 0
      Meting = time()
      Snelh1 = Secs(time())
 endif
 
if E50 = 1                          && Spoor 9 naar 23
      E50 = E50 + 1
      Stap9u = 0
      Spoor9u = 1                && Spoor 9
      Stap_E50 = 0
      Loc_E50 = 1               && Rijden
      Spoor_E50 = 9
   endif
 
   if E50 = 2 .AND. Reed [13] = 1  
      Command_5 = "Reed 13 "
      Reed [13] = 0
      E50 = E50 + 1
      r = saystring(1256,552,4,0,1,"w")  &&   Rood       Sein 9
   endif
 
   if E50 = 3 .AND. Reed [19] = 1  
      Command_5 = "Reed 19 "
      Reed [19] = 0
      E50 = E50 + 1
      Stap1911 = 0
      Spoor1911 = 1             && Reed 19  Via Reed 11
      V200 = 1                      && Rij
   endif
 
 
Do trein
Do wissel
Do reedcontact
enz.
 
EndDo
 
Bij de routine "Do trein" gaat de trein rijden d.m.v.  het commando XLok (P50X)
 
Trein
 
If Spoor_E50 = 9
     Snelh_E50 = 25
 Endif
 
Locdata [3] = 50              && E50
Locdata [5] = Snelh_E50    
Richting [1] = 1                && Voorruit
F0 = Licht                        && Licht Aan of uit
F1 = 0                              && Licht Dimmen Aan of uit
F2 = 0
F4 = Licht                        && Binnenverlichting Aan of uit
Data1 =  Loc(Hex(Locdata [3]),Locdata[5],Locdata[6])    && Data inlezen (Loc,Speed,Data6)
Command_5 = "        "
 
 
Loc(Hex(Locdata [3]),Locdata[5],Locdata[6])   
Deze functie springt naar de assembly routine XLok