#include "c:\miniide\hcs12.inc" step1 equ $FA step2 equ $F8 step3 equ $F9 step4 equ $F1 step5 equ $F5 step6 equ $F4 step7 equ $F6 step8 equ $F2 half_step movb #$FF,DDRP ; configure PTP for output movb #step1,PTP bsr delay10ms movb #step2,PTP bsr delay10ms movb #step3,PTP bsr delay10ms movb #step4,PTP bsr delay10ms movb #step5,PTP bsr delay10ms movb #step6,PTP bsr delay10ms movb #step7,PTP bsr delay10ms movb #step8,PTP bsr delay10ms movb #step1,PTP bsr delay10ms rts ; the following subroutine waits for 10 ms delay10ms movb #$90,TSCR1 ; enable TCNT & fast flags clear movb #$06,TSCR2 ; configure prescale factor to 64 movb #$01,TIOS ; enable OC0 ldd TCNT addd #3750 ; start an output compare operation std TC0 ; with 10 ms time delay10ms wait_lp2 brclr TFLG1,$01,wait_lp2 rts end