It seems odd to be sending data that way, but if you say it works, then ....
Code:
lp      VAR BYTE
TempB   VAR BYTE
BitLoop VAR BYTE

    FOR lp = 0 TO 2
        LOOKUP lp,[$23,$01,$AE],TempB
        FOR BitLoop = 0 to 7
            PORTB.5 = TempB.0[BitLoop]
            pauseus 660
        NEXT BitLoop
    next lp
return