Пластиковые карты с открытой памятью. Востриков А.А - 96 стр.

UptoLike

96
Cnt:=0; Start_Time:=Cur_Time;
In_Buf.FT:=0;
While Abs(Cur_Time-Start_Time)<Time_Out Do
Begin
asm
mov dx, COMBase
add dx, 5
in al, dx
mov Got, 0
test al, $01
jz @1
mov Got, 1
mov dx, COMBase
in al, dx
mov Symb, al
@1:
end; { of asm }
If Got Then
Begin
RXBuf[Cnt]:=Symb;
Inc(Cnt);
End; { of If }
End; { of While }
If In_Buf.FT>$0F Then COMFrameLen:=In_Buf.FT
Else COMFrameLen:=64;
If Cnt<$10 Then Receive_Frame:=False
Else Receive_Frame:=CheckLinkCRC;
End; { of Receive_Frame }
Function Note_Address_Reset: Boolean;
{ Осуществить сброс адреса всех узлов}
Begin
COMFrameLen:=64; Note_Address_Reset:=False;
If Not Send_Frame(aftReset, Frame_NA, Frame_Cmd,
Frame_Status, Frame_Data) Then Exit
Else Note_Address_Reset:=True;
End; { of Note_Address_Reset }
Function No_Address_Request(Var Note_Type: Byte; Var Note_SN:
Longint): Boolean;
Продолжение прил.