Table Of ContentTHE
PROGRAMMER'S
GUIDTEO S CSI
TheP rogrammGeuri'dse
toS CSI
BriaSna wert
...
.......
ADDSIONW-ESLEY
Ani mproifAn dtd ison LWoegnsmlaenIy,n c.
ReadingM,a sscahuestt• sH arl,oE wnglnad• MenlPoa rkC,a loirnfia
Bekrel,eC yailofrnia• D onM illOsn,t ar• iSoyd ney
Bonn• A msetrda•m T oky•o M exicCoiy t
Manyo ft hed esignatuisoenbdsy m anufactuarnedsr esl letrods i stingtuhiespihrr o ducts
arec laimaesdt rademarWkhse.r et hosdee signataipopnesai rnt hibso oka,n dA ddison
Weslewya sa waroef a t rademacrlka itmh,ed esignathiaovnbese epnr intienid n itciaapli
tallettoerra sl cla pitlaelt ters.
Thea uthoarn dp ublishhaevre t akecna rie np reparatoifto hni bso okb,u tm aken o
expresosrei dm pliweadr ranotfay n yk inadn da ssumneo r esponsifboierlr irtoyor ros m is
sionNso. l iabiilsia tsys umefdo irn cideonrtc aoln sequendtaimaagle isnc onnectwiiotnh
ora risionugto ft heu seo ft hei nformaotri opnr ograms contained herein.
Thep ublisohffeerr dsi scouonntt sh ibso okw heno rderienqd u antfiotsryp ecisaall eFso.r
morei nformaptlieoancs oen tact:
CorporaGtoev,e rnmenatn,d S peciSaall eDse partment
AddisoWne sleLyo ngman
OneJ acoWba y
ReadinMga,s sachus0eI t8t6s7
Copyrig©h It9 98b yB riaSna wert
LibraorfCy o ngrCeastsa loging-in-Publication Data
SawerBtr,i an
Thep rogrammegru'isdt eoS CSIIB riaSna wert.
p. em.
Includbeisb liograrpehfiecraelna cnedis n dex.
ISBN0 -20I-I8538-5
I.M icrocomputers-Progra2m.Cm oimnpgu.t ienrt erface3s.S. C SI
(Computbeurs )I .T itle.
QA7 6.6.S2I99 98
004.6'4--dc2I 97-44773
CIP
Allr ighrtess ervNeod p.a rotf t hipsu blicamtaiyob ne r eproducsetdo,r ienda retrieval
systeomr,t ransmititnae ndyf, o rmo,r b ya nym eanse,l ectromneicch,a nicpahlo,t ocopy
ingr,e cordionrgo ,t herwiwsiet,l 1t0huetp riocro nseonftt hep ublishPerri.n tiendt he
UniteSdt atoefsA mericPau.b lisshiemdu ltaneionuC salnya da.
ISBN0:- 20I-I8538-5
Texptr intoenda cid-fpraepee r
I2 3 4 5 9-6M A7-- 082 0 1009998
Firpsrti ntiFnegb,r uaIr9y9 8
Thibso oki sl ovindgeldyi cattoem dy w ifeM ary.
Thanyko uf ory ouern dleesnsc ourageamnedns tu pport.
Conetnst
Preface
Xlll
InteAnuddeide nce
Xlll
HowT hiBsoo kI sOr ganized XIV
WhaYtou W ilNle ed XV
Acknowledgments xvi
Abuott hAeu thors xvn
Inrtdouction xix
Chapt1e r An OverovfSi CeSwTI e cnhology
ThSe CSSIo tliuon 1
SCS1I - 2
SCS1IF -eatsu re 4
InteelnDltevi igces 4
Mulatsikt1i1n0g 4
SyncohnroDuasat T rnafser 4
MultDiepvlieTc yeep so n Sai nlgnlteae clef 5
ThBeri tohfS CSI-2 5
v
vi Contesn t
NewF eatsiu nSr eCSI-2 5
FasStC SI 5
WidSeC SI 6
Fast SWCiSdIe 6
Quuee1d1 P0 rocesses 6
NewC ommaSnedt s 7
ImporveSdC S1IF -eatures 7
DaatP arRietyq iured 7
MessSaugppeo rRteq uired 7
TerminPaotwoPerrr o vibdyIe ndi tiator7
SCSIo-nt3 hH eo rizon 8
Fasta-n2Fd0a stS-C4S0I 8
SeriSaClS SIt daanrds 9
FibCrhaen ln e 10
SreiSatla anrdAdrc ihteec tur 10
P/394 II
LayeArrceihdt uercet 11
Pluagn Pdl aSyC SI 12
Chapt2e r SCSFIu dnamentals 15
SCSTIr acntsniasoa:nO veirevw 15
Chapt3e r SCISP hases 17
SCSPIh ases 18
BuFsr ee 18
Arbirtation 18
Selection 19
Reselection 19
MessOaguet 19
Command 20
DaatI na nDda atO ut 20
Status 21
MessIang e 21
PhaSseeq uence 22
Chapt4e r SCISM essages 23
MesgseTa ypes 24
The IdeMnetsifys age 24
ExtenMdeesgdse as 25
SyncohnroDuasat T rnasfReerq uest 25
WidDea atT rnasfReerq uest 26
Contetns vii
OthCeorm moMne sgseas 27
NoO peration 27
Abort 28
BuDse ivcRee set 28
Disconnect 28
IgnoWrideRe e dsuie 28
QueTuageM essages 29
SimpQluee Tuage 29
HeaodfQ ueTuage 29
OrdeQrueedT uage 30
Chapt5e r SCISC ommansd 31
CommnadS rtuucrte 31
OperatCioodne s 32
LogiUcniaNtlum ber 32
CommaPnadar mest er 32
CotnrFoile ld 32
ParamLesittesr 33
ByteO rder 33
MandaStCorSCyIo mmands 33
TestUn iRtea dy 34
Iniqruy 34
ExapmlIeo:m eZgiaDp r ive 37
OptiCoonmamla nds 38
DeivcTey pep-eiScfiCco mmnads 39
ModSee lect 39
ModSee nse 40
ModSee nDsaeatF ormat 41
ExampIloem:eZ giaDp ri ve 42
Readainndg tWirnig 44
Read 45
Write 45
OthCeormm ands 46
Chapt6e r StatSuesn,,sa endE rrors 47
Sattsu 48
Status Codes 48
SenDsaet a 49
SenKseey 51
UniAttt ention 52
AdditiSoennaCsloe d es 52
ExapmlIeo:m eZgiaDp r ive 52
viii Conetnst
Chapt7e r ASPIT:h eA dvanScCeSdI
ProgmrmainIgn taecref 55
WhaItAs S PI? 56
WhyS houIUl sdAe S PI? 56
ASPCIo ncepts 57
Adapetra nDde viAcdede rssing 57
IssunigS CSCIo mmasn d 58
BuildtihnSegC SRIe qeusBtl ock 58
SendiannSg R Bt ot hAeSP !M anager 60
Waitfionra gnS RBt oC omplete 60
ProcesRsetiunrngSe tda Itfnuosr mation6 3
Adapteprec-ifiScPr poerties 64
Concnteitnotg hA eS PM/an ager 64
ASIPC ommnads 69
HosAtdp aetrI nqyu( iSrC IHNAQ UIRY) 71
GeDte ivcTeye p( SC_GDEETV__YTPE) 76
ExceueSt CSCIo mmand
(SC_EXEC_SCSI_CMD) 78
AboSrRtB( S_CA BO_RSTR B) 83
ResSeCtSD Ie vi(cS_eCR ESEDTE_V ) 86
RescaSnC SBIu (sS C_RESCAN_USSC)S I8_9B
Ge/tSTemite otus( SC_GETSEETO_UTITMS) 90
ASPEIr raonrSd at tus Codes 93
ASP/S RBS ta(tSuR:_sBS tatus) 93
SSP ENDING 94
SSC OMP 94
SSE RR 94
SSI NVALCIMDD 95
- -
SSI NVALID HA 95
- -
SSN O DEVICE 95
SSI NVALSIRDB 95
- -
SSF AILED/ NIT 95
- -
SSA SPI/S B USY 95
- - -
SSB UFFERT OO BIG 96
- - -
SSB UFFERA LIGN 96
- -
SSS ECURITVYI OLIAOTN 96
- -
SSA BORTED 96
SSA BORTF AIL 96
- -
SSN O ASP! 96
SSI LLEGMAOLD E 96
- -
SSM ISMATCHCEODM PONENTS 97
- -
SSN O ADAPETRS 97
Conetnst ix
SSI NUSFFICIREENSTO URCES 97
HosAtd apSttear(t SuRs_HB a Stat) 97
HASATTO K 97
HASATTS ELT O 97
HASATTD O DU 98
HASATTB US FREE 98
- -
HASATTP HASEER R 98
- -
HASATTTI MEOUT 99
HASATTC OMMANDT IEMOUT 99
- -
HASATTM ESSAGREE EJCT 99
-
HASATTB US RESET 99
- -
HASATTP ARITEYR ROR 99
- -
HASATT R_E QUESTS_E NSEA I_LFED 99
TaregDt eivcSeat tu(sSR _BTa rgStat) 99
AdditAiSoPnfIaoW lri nF3u2n ctions 100
Chapt8e r Low-LeSvCeSlPI ro grmmaing
wtihS CRIPTS 130
Woriknwgih tS CRIPTS 130
AnO vervoifSe CRwI TPS 140
SCRIPITnSsc ttriuons 150
LogiOcpaelr aatnodr sCi otnidosntasl T1e70
EmbeddSiCRnIgP TiSnC Code 170
ChangRiunnig-m TPea armeetrs 190
Patching 190
TahlIen diArdedecrsts ing 101
DeteicntSgC RIPPTorSg raCmo pmletion1 21
PollfiorCn ogm ptlieon 131
HardwIanrtee rornCu oppmtl etion 131
IniailztaitainoHdno ukseeeipng 141
PCB/I OFSu nicotns 141
InitiSaClSiCIzo inntRgreg oilss t er 181
SmaplCeo de 191
GenieScrC RIPCToSd e 102
Chapt9e r SCSTIa rgeotd-PeMr orgamming 172
Haradrwe 182
HanlndigS CSPIh ases 192
TagreMto-dAeP I 163
AdapItneiqrru (yT SPI_CMpDt l_enArjdoa)1 93
AttcahL UN T(SP_CI M D_A ttacUhNL) 114