PCM-9588 User Manual 88
clc
mov cx,0800h
Chk_I2c_OK:
in al,dx ;get status
NEWIODELAY
out dx,al ;clear status
NEWIODELAY
test al, 02H ;termination of command ?
jnz short Clear_final
and al, NOT 40H;mask INUSE bit
or al,al ;status OK ?
jz short Clear_final
test al,04h ;device error
jnz short SMBus_Err
loop short Chk_I2c_OK
;SMbus error due to timeout
SMBus_Err:
stc
ret
Clear_final:
clc
ret
CT_Chk_SMBus_ReadyEndp
;;===============================================================
Delay5msprocnear
push cx
mov cx, 1000
@@:
NEWIODELAY
loop short @B
pop cx
ret
Delay5ms ENDP
Phoenix_debuger proc near
pushf
push cx
push offset PhdebugRetAddr
push cs