Hi All,
I’m trying with win1394.exe, which is using 1394diag.sys. And also writing
my own program to recv and send data between two PCs connected 1394.
Do you know how can we decide about the ranges we give to
AllocateAddressRange?
pallocateAddressRange->Required1394Offset.Off_High = WHAT VALUE;
pallocateAddressRange->Required1394Offset.Off_Low = WHAT VALUE;
In CSR architecture-
Start address location of initial register space is at FFFF F000 0000 (h)
(top 256 MB block of address space)
0-512 Byte= CSR Architecture
512 Byte -1Kbyte = Serial Bus
1Kbyte -2Kbyte =Rom Space
Above three create initial node space, following these (rest) is Initial
units space.
My question are:
--Which area should I allocate using allocateAddressRange to setup
AsyncRead and AsyncWrite?
--Default values of these two parameters are 1 and 0, but these are not
working. Does somebody know some working values for these parameters?
I’m doing exactly this–
-
Have 1394DIAG.SYS installed for Microsoft_PC
-
On Machine B, allocate an addresss range using defaults and make a note
of the addressoffset.High and addressoffset.Low.
default addressoffset.High and addressoffset.Low are 0.
If I do not put any values, win1394.exe fills these vaules
as addressoffset.High=0x2 and addressoffset.Low=0x100.
but AsyncRead fails in step 4.
I tried with addressoffset.High=0x1 and addressoffset.Low=0x0,
these are default values used in async loopback, but getting
the same ERROR_IO_DEVICE(Exit AsyncRead = 1117) in step 4.
-
On Machine A, do an async write to offset.High and offset.Low and don't
check Use Bus and Node numbers so 1394DIAG.SYS fills those in for you -
To read from Machine B then do an Async Read and chose the offset.high
and offset.low and check Use Bus and node number and set node to zero and
read should succeed
It fails and return ERROR_IO_DEVICE(Exit AsyncRead = 1117)
Thanks in advance,
Sanjeev