home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ARM Club 3
/
TheARMClub_PDCD3.iso
/
hensa
/
memmanagement
/
a051_1
/
!Partition
/
Notes
< prev
next >
Wrap
Text File
|
1991-07-23
|
1KB
|
21 lines
A few notes about scatter lists.
Note that some of the stuff about filecore backgrounding in PRM is dubious/
and or wrong. It requires the address of the end of the done scatter list to
be placed in the info word at the beginning of the list. Bit 2 of the
descriptor block is ignored - backgrounding will happen iff buffers is
non-zero. It doesn't seem to pass errors up properly - just get "Filecore
error". NB preserve flags bit.
SCSIOp, contrary to the docs I have, does handle scatter lists if you set
bit 26 of R0. It even updates them piecemeal, with the correct granularity,
something which is necessary as filecore will extend them under our feet.
Note that internally to it, everything works via scatter lists and in the
background, so its no loss that we always use a scatter list. Other
differences from the docs: R4 is always the length of the entire transfer -
background calls return immediately. R4 is always returned as amount
UNtransferred. R0-R4 are set as on return during the callback. I would
preserve all regs in the callback.