START:
       JNB CARDET,$       ; ignore already started bit stream
       MOV R1,#9          ; 9 bits! 
K0:
       JB CARDET,$        ; wait for start condition
       MOV R0,#(BITTIM/2)
K1:
       DJNZ R0,$          ; 1/2 dimension
       MOV C,RXBIT        ; read bit
       RLC A
       MOV R0,#(BITTIM)
       DJNZ R1,K1         ; read 9 bits
       JNC START          ; compare 9th bit: should be 1
       CJNE A,#0x58,START