#Include CARDUTIL.DEF #Include COMMERR.DEF ComPort=101 Declare Command &H94 &HA4 SEL(S$,Disable Le) Declare Command &H94 &HB2 RD(Lc=0,S$) Declare Sub AFF(P$) Public P$ As String CLS:Print"TELEBILLETTIQUE (c)2008 Patrick GUEULLE" Call WaitForCard ResetCard (P$):Call CheckSW1SW2 Print:Print Print"ATR (Hist.) : "; FOR F=1 TO Len(P$) M=ASC(MID$(P$,F,1)) M$=HEX$(M):IF Len(M$)=1 Then M$="0"+M$ PRINT M$;" "; NEXT F Print:Print P$="1TIC.ICA" Call SEL(P1P2=&H0400,P$,Disable Le) Print "Informations titulaire (ENV) : ":Print P$=Chr$(&H20)+Chr$(&H00)+Chr$(&H20)+Chr$(&H01) Call SEL(P1P2=&H0800,P$,Disable Le):Call CheckSW1SW2 P$="":Call RD(P1P2=&H0104,P$,Le=29) Call AFF(P$) Print:Print"--- RETOUR A LA LIGNE pour voir le journal ---" Input Z$:CLS Print "Journal de transport : ":Print P$=Chr$(&H20)+Chr$(&H00)+Chr$(&H20)+Chr$(&H10) Call SEL(P1P2=&H0800,P$,Disable Le):Call CheckSW1SW2 For R=1 To 3 P$="":Call RD(P1=R,P2=&H04,P$,Le=29) Call AFF(P$) Next R Print:Print"--- RETOUR A LA LIGNE pour voir les contrats ---" Input Z$:CLS Print "Contrats 1 : ":Print P$=Chr$(&H20)+Chr$(&H00)+Chr$(&H20)+Chr$(&H20) Call SEL(P1P2=&H0800,P$,Disable Le):Call CheckSW1SW2 For R=1 To 4 P$="":Call RD(P1=R,P2=&H04,P$,Le=29) Call AFF(P$) Next R Print"Contrats 2 :":Print P$=Chr$(&H20)+Chr$(&H00)+Chr$(&H20)+Chr$(&H30) Call SEL(P1P2=&H0800,P$,Disable Le):Call CheckSW1SW2 P$="":Call RD(P1P2=&H0104,P$,Le=29) Call AFF(P$) Print:Print"--- RETOUR A LA LIGNE pour voir les compteurs ---" Input Z$:CLS Print"Compteurs :":Print FOR C=&H2A To &H2D P$=Chr$(&H20)+Chr$(&H00)+Chr$(&H20)+Chr$(C) Call SEL(P1P2=&H0800,P$,Disable Le):Call CheckSW1SW2 P$="":Call RD(P1P2=&H0104,P$,Le=29) Call AFF(P$) Next C Print:Print"--- RETOUR A LA LIGNE pour voir le reste ---" Input Z$:CLS Print"Evenements speciaux :":Print P$=Chr$(&H20)+Chr$(&H00)+Chr$(&H20)+Chr$(&H40) Call SEL(P1P2=&H0800,P$,Disable Le):Call CheckSW1SW2 P$="":Call RD(P1P2=&H0104,P$,Le=29) Call AFF(P$) Print"Comportement et fidelite :":Print P$=Chr$(&H20)+Chr$(&H00)+Chr$(&H20)+Chr$(&H50) Call SEL(P1P2=&H0800,P$,Disable Le):Call CheckSW1SW2 P$="":Call RD(P1P2=&H0104,P$,Le=29) Call AFF(P$) Print:Call WaitForNoCard Sub AFF(P$) FOR F=1 To Len(P$) M=ASC(MID$(P$,F,1)) M$=HEX$(M):IF Len(M$)=1 Then M$="0"+M$ Print M$;" "; If F=16 Then Print NEXT F Print:Print End Sub