@@ 267,8 267,8 @@ scsicap(Target *t, char lun, ulong *size, ulong *bsize)
s = scsiexec(t, SCSIread, cmd, sizeof(cmd), d, &nbytes);
if(s == STok) {
- *size = (d[0]<<24)|(d[1]<<16)|(d[2]<<8)|(d[3]<<0);
- *bsize = (d[4]<<24)|(d[5]<<16)|(d[6]<<8)|(d[7]<<0);
+ *size = nhgetl(d+0);
+ *bsize = nhgetl(d+4);
}
scsifree(d);
return s;
@@ 286,8 286,7 @@ scsibio(Target *t, char lun, int dir, void *b, long n, long bsize, long bno)
if(dir == SCSIread)
cmd[0] = 0x08;
cmd[1] = (lun<<5) | bno >> 16;
- cmd[2] = bno >> 8;
- cmd[3] = bno;
+ hnputs(cmd+2, bno);
cmd[4] = n;
cdbsiz = 6;
}
@@ 296,12 295,8 @@ scsibio(Target *t, char lun, int dir, void *b, long n, long bsize, long bno)
if(dir == SCSIread)
cmd[0] = 0x28;
cmd[1] = (lun<<5);
- cmd[2] = bno >> 24;
- cmd[3] = bno >> 16;
- cmd[4] = bno >> 8;
- cmd[5] = bno;
- cmd[7] = n>>8;
- cmd[8] = n;
+ hnputl(cmd+2, bno);
+ hnputs(cmd+7, n);
cdbsiz = 10;
}
nbytes = n*bsize;
@@ 403,8 398,7 @@ scsidiskinfo(Target *t, char lun, uchar *data)
memset(cmd, 0, sizeof(cmd));
cmd[0] = 0x43;
cmd[1] = lun<<5;
- cmd[7] = nbytes>>8;
- cmd[8] = nbytes>>0;
+ hnputs(cmd+7, nbytes);
d = scsialloc(nbytes);
if(d == 0)
@@ 429,8 423,7 @@ scsitrackinfo(Target *t, char lun, int track, uchar *data)
cmd[0] = 0xe5;
cmd[1] = lun<<5;
cmd[5] = track;
- cmd[7] = nbytes>>8;
- cmd[8] = nbytes>>0;
+ hnputs(cmd+7, nbytes);
d = scsialloc(nbytes);
if(d == 0)
@@ 464,9 457,7 @@ scsibufsize(Target *t, char lun, int size)
memset(d, 0, nbytes);
d[3] = 8;
- d[9] = size>>16;
- d[10] = size>>8;
- d[11] = size>>0;
+ hnputl(d+8, size);
s = scsiexec(t, SCSIwrite, cmd, sizeof(cmd), d, &nbytes);
scsifree(d);
@@ 483,14 474,8 @@ scsireadcdda(Target *t, char lun, void *b, long n, long bsize, long bno)
cmd[0] = 0xd8;
cmd[1] = (lun<<5);
- cmd[2] = bno >> 24;
- cmd[3] = bno >> 16;
- cmd[4] = bno >> 8;
- cmd[5] = bno;
- cmd[6] = n>>24;
- cmd[7] = n>>16;
- cmd[8] = n>>8;
- cmd[9] = n;
+ hnputl(cmd+2, bno);
+ hnputl(cmd+6, n);
nbytes = n*bsize;
s = scsiexec(t, SCSIread, cmd, sizeof(cmd), b, &nbytes);