User’s Guide
21020285 D
Chapter 4 Command Operation
Example ‘C’ Routines for Command List
Page 4 - 25
{
/* First: check to see if the list is full */
if ( (clist
→
pbin +1) % NPB == clist
→
pbout)
{
/* If the list is full, then handle_full_list */
/* This may be a function call that waits for an open entry or you could
choose to return an error. */
if (!handle_full_list(pb,clist))
return;}
/* Second: put the Parameter Block into the next available location in the list
*/
clist
→
pblist[clist
→
pbin] = pb;
/* Third: increment the Parameter Block IN index */
clist
→
pbin = (clist
→
pbin + 1) % NPB;
/* Next issue a Command List Channel Attention */
/* This is a separate function called to issue a
Command List Channel Attention. */
issue_cl_channel_atn();
} /* put_parameter_block */
/
*________________________________________________________________
* get_status_block - Read a Status Block returned in the Command List
*_______________________________________________________________*
/
status_block get_status_block(clist)
command_list *clist;
(
status_block tsb;
/* First: check to see if a Status Block is available */
if (clist
→
sbout == clist
→
sbin)
{
/* If the list is empty there are no blocks to read. Check the adapter
* Status Port for any error conditions, and return.
*/
/*This routine could check the Status Port for 11H error code
(no active command list.) */
handle_empty_sb_list(clist);
return(EMPTY);
}
/* Second: read the Status Block into a temporary value so that it can be
returned at the end of the function.
*/
tsb = clist
→
sblist[clist
→
sbout];
/* Third: increment the Status Block OUT index. */
clist
→
sbout = (clist
→
sbout + 1) % NSB;
/* Next: return with the Status Block. */
return (tsb);
} /* get_status_block
Summary of Contents for Rimfire 3880
Page 1: ...Rimfire 3880 SCSI Host Bus Adapter User s Guide Ciprico Inc Publication No 21020285 D...
Page 2: ......
Page 4: ...21020285 D User s Guide...
Page 25: ...2 H a r d w a r e E s s e n t i a l s...
Page 42: ...21020285 D User s Guide Chapter 2 Hardware Essentials Page 2 18 Descriptions of Port Usage...
Page 43: ...3 H a r d w a r e I n s t a l l a t i o n...
Page 59: ...4 C o m m a n d O p e r a t i o n...
Page 85: ...5 I n i t i a t o r M o d e P a s s t h r o u g h C o m m a n d s...
Page 103: ...6 T a r g e t M o d e P a s s t h r o u g h C o m m a n d s...
Page 125: ...7 B o a r d c o n t r o l C o m m a n d s...
Page 175: ...8 D e t a i l s o f U s a g e...
Page 193: ...A E r r o r C o d e s...
Page 201: ...B C a b l e s a n d C o n n e c t o r s...
Page 206: ...21020285 D User s Guide Appendix B Cables and Connectors Page B 6 VMEbus Connector Pinouts...
Page 207: ...C S p e c i f i c a t i o n s...
Page 210: ...21020285 D User s Guide Appendix C Specifications Page C 4 Specifications...
Page 211: ...D D e f a u l t s...
Page 216: ...21020285 D User s Guide Appendix D Defaults Page D 6 HardwareDefaults...
Page 217: ...E D e s i g n D i f f e r e n c e s...
Page 229: ......
Page 230: ...21020285 D...