taglinefilesource code
drvcmd538drivers/block/sbpcd.cstatic u_char drvcmd[10];
drvcmd896drivers/block/sbpcd.cfor (i=0;i<10;i++) drvcmd[i]=0;
drvcmd1113drivers/block/sbpcd.cdrvcmd[0]=CMDT_STATUS;
drvcmd1233drivers/block/sbpcd.cdrvcmd[0]=CMD1_READ_ERR;
drvcmd1239drivers/block/sbpcd.cdrvcmd[0]=CMD0_READ_ERR;
drvcmd1248drivers/block/sbpcd.cdrvcmd[0]=CMD2_READ_ERR;
drvcmd1255drivers/block/sbpcd.cdrvcmd[0]=CMDT_READ_ERR;
drvcmd1281drivers/block/sbpcd.cfor (i=0;i<10;i++) sprintf(&msgbuf[i*3]," %02X",drvcmd[i]);
drvcmd1298drivers/block/sbpcd.cfor (i=0;i<10;i++) OUT(CDo_command,drvcmd[i]);
drvcmd1302drivers/block/sbpcd.cif (drvcmd[0]==CMDT_READ_VER) sbp_sleep(100);
drvcmd1310drivers/block/sbpcd.cif (drvcmd[0]==CMDT_READ) return (0); /* handled elsewhere */
drvcmd1311drivers/block/sbpcd.cif (drvcmd[0]==CMDT_DISKINFO)
drvcmd1326drivers/block/sbpcd.cmsg(DBG_TEA,"cmd_out_T: data response with cmd_%02X !!!!!!!!!!!!!!!!!!!!\n", drvcmd[0]);
drvcmd1357drivers/block/sbpcd.cif (recursion>1) msg(DBG_TEA,"cmd_out_T READ_ERR recursion (%02X): %d !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n", drvcmd[0], recursion);
drvcmd1359drivers/block/sbpcd.cdrvcmd[0]=CMDT_READ_ERR;
drvcmd1376drivers/block/sbpcd.cif (drvcmd[0]==CMDT_READ) return (0); /* handled elsewhere */
drvcmd1379drivers/block/sbpcd.cmsg(DBG_TEA,"cmd_out_T: next CMDT_TRIES (%02X): %d.\n", drvcmd[0], ntries-1);
drvcmd1396drivers/block/sbpcd.csprintf(&msgbuf[i*3], " %02X", drvcmd[i]);
drvcmd1400drivers/block/sbpcd.cfor (i=0;i<7;i++) OUT(CDo_command,drvcmd[i]);
drvcmd1461drivers/block/sbpcd.cdrvcmd[0]=CMD0_SEEK;
drvcmd1463drivers/block/sbpcd.cdrvcmd[2]=(pos>>16)&0x00FF;
drvcmd1464drivers/block/sbpcd.cdrvcmd[3]=(pos>>8)&0x00FF;
drvcmd1465drivers/block/sbpcd.cdrvcmd[4]=pos&0x00FF;
drvcmd1471drivers/block/sbpcd.cdrvcmd[0]=CMD1_SEEK; /* same as CMD1_ and CMDL_ */
drvcmd1473drivers/block/sbpcd.cdrvcmd[1]=(pos>>16)&0x00FF;
drvcmd1474drivers/block/sbpcd.cdrvcmd[2]=(pos>>8)&0x00FF;
drvcmd1475drivers/block/sbpcd.cdrvcmd[3]=pos&0x00FF;
drvcmd1483drivers/block/sbpcd.cdrvcmd[0]=CMD2_SEEK;
drvcmd1485drivers/block/sbpcd.cdrvcmd[2]=(pos>>24)&0x00FF;
drvcmd1486drivers/block/sbpcd.cdrvcmd[3]=(pos>>16)&0x00FF;
drvcmd1487drivers/block/sbpcd.cdrvcmd[4]=(pos>>8)&0x00FF;
drvcmd1488drivers/block/sbpcd.cdrvcmd[5]=pos&0x00FF;
drvcmd1493drivers/block/sbpcd.cdrvcmd[0]=CMDT_SEEK;
drvcmd1495drivers/block/sbpcd.cdrvcmd[2]=(pos>>24)&0x00FF;
drvcmd1496drivers/block/sbpcd.cdrvcmd[3]=(pos>>16)&0x00FF;
drvcmd1497drivers/block/sbpcd.cdrvcmd[4]=(pos>>8)&0x00FF;
drvcmd1498drivers/block/sbpcd.cdrvcmd[5]=pos&0x00FF;
drvcmd1515drivers/block/sbpcd.cdrvcmd[0]=CMD0_SPINUP;
drvcmd1521drivers/block/sbpcd.cdrvcmd[0]=CMD1_SPINUP;
drvcmd1526drivers/block/sbpcd.cdrvcmd[0]=CMD2_TRAY_CTL;
drvcmd1527drivers/block/sbpcd.cdrvcmd[4]=0x01; /* "spinup" */
drvcmd1532drivers/block/sbpcd.cdrvcmd[0]=CMDT_TRAY_CTL;
drvcmd1533drivers/block/sbpcd.cdrvcmd[4]=0x03; /* "insert", it hopefully spins the drive up */
drvcmd1550drivers/block/sbpcd.cdrvcmd[0]=CMD1_SPINDOWN;
drvcmd1555drivers/block/sbpcd.cdrvcmd[0]=CMD2_TRAY_CTL;
drvcmd1556drivers/block/sbpcd.cdrvcmd[4]=0x02; /* "eject" */
drvcmd1561drivers/block/sbpcd.cdrvcmd[0]=CMDL_SPINDOWN;
drvcmd1562drivers/block/sbpcd.cdrvcmd[1]=1;
drvcmd1567drivers/block/sbpcd.cdrvcmd[0]=CMDT_TRAY_CTL;
drvcmd1568drivers/block/sbpcd.cdrvcmd[4]=0x02; /* "eject" */
drvcmd1580drivers/block/sbpcd.cdrvcmd[0]=CMDT_GETMODE;
drvcmd1581drivers/block/sbpcd.cdrvcmd[4]=response_count;
drvcmd1592drivers/block/sbpcd.cdrvcmd[0]=CMDT_SETMODE;
drvcmd1593drivers/block/sbpcd.cdrvcmd[1]=D_S[d].speed_byte;
drvcmd1594drivers/block/sbpcd.cdrvcmd[2]=D_S[d].frmsiz>>8;
drvcmd1595drivers/block/sbpcd.cdrvcmd[3]=D_S[d].frmsiz&0x0FF;
drvcmd1596drivers/block/sbpcd.cdrvcmd[4]=D_S[d].f_XA; /* 1: XA */
drvcmd1597drivers/block/sbpcd.cdrvcmd[5]=D_S[d].type_byte; /* 0, 1, 3 */
drvcmd1598drivers/block/sbpcd.cdrvcmd[6]=D_S[d].mode_xb_6;
drvcmd1599drivers/block/sbpcd.cdrvcmd[7]=D_S[d].mode_yb_7|D_S[d].volume_control;
drvcmd1600drivers/block/sbpcd.cdrvcmd[8]=D_S[d].mode_xb_8;
drvcmd1601drivers/block/sbpcd.cdrvcmd[9]=D_S[d].delay;
drvcmd1643drivers/block/sbpcd.cdrvcmd[0]=CMD1_SETMODE;
drvcmd1644drivers/block/sbpcd.cdrvcmd[1]=0x03;
drvcmd1645drivers/block/sbpcd.cdrvcmd[2]=speed;
drvcmd1646drivers/block/sbpcd.cdrvcmd[3]=x1;
drvcmd1647drivers/block/sbpcd.cdrvcmd[4]=x2;
drvcmd1652drivers/block/sbpcd.cdrvcmd[0]=CMD2_SETSPEED;
drvcmd1655drivers/block/sbpcd.cdrvcmd[2]=0xFF;
drvcmd1656drivers/block/sbpcd.cdrvcmd[3]=0xFF;
drvcmd1660drivers/block/sbpcd.cdrvcmd[2]=0;
drvcmd1661drivers/block/sbpcd.cdrvcmd[3]=150;
drvcmd1719drivers/block/sbpcd.cdrvcmd[0]=CMD1_SETMODE;
drvcmd1720drivers/block/sbpcd.cdrvcmd[1]=0x05;
drvcmd1721drivers/block/sbpcd.cdrvcmd[3]=control0;
drvcmd1722drivers/block/sbpcd.cdrvcmd[4]=value0;
drvcmd1723drivers/block/sbpcd.cdrvcmd[5]=control1;
drvcmd1724drivers/block/sbpcd.cdrvcmd[6]=value1;
drvcmd1735drivers/block/sbpcd.cdrvcmd[0]=CMD2_SETMODE;
drvcmd1736drivers/block/sbpcd.cdrvcmd[1]=0x0E;
drvcmd1737drivers/block/sbpcd.cdrvcmd[3]=control0;
drvcmd1738drivers/block/sbpcd.cdrvcmd[4]=value0;
drvcmd1739drivers/block/sbpcd.cdrvcmd[5]=control1;
drvcmd1740drivers/block/sbpcd.cdrvcmd[6]=value1;
drvcmd1748drivers/block/sbpcd.cdrvcmd[0]=CMDL_SETMODE;
drvcmd1749drivers/block/sbpcd.cdrvcmd[1]=0x03;
drvcmd1750drivers/block/sbpcd.cdrvcmd[4]=control0;
drvcmd1751drivers/block/sbpcd.cdrvcmd[5]=value0;
drvcmd1814drivers/block/sbpcd.cdrvcmd[0]=CMD0_SETMODE;
drvcmd1815drivers/block/sbpcd.cdrvcmd[1]=0x83;
drvcmd1816drivers/block/sbpcd.cdrvcmd[4]=control0;
drvcmd1817drivers/block/sbpcd.cdrvcmd[5]=value0;
drvcmd1860drivers/block/sbpcd.cdrvcmd[0]=CMD1_RESET;
drvcmd1866drivers/block/sbpcd.cdrvcmd[0]=CMD2_RESET;
drvcmd1944drivers/block/sbpcd.cdrvcmd[0]=CMDL_PLAY;
drvcmd1947drivers/block/sbpcd.cdrvcmd[1]=(i>>16)&0x00FF;
drvcmd1948drivers/block/sbpcd.cdrvcmd[2]=(i>>8)&0x00FF;
drvcmd1949drivers/block/sbpcd.cdrvcmd[3]=i&0x00FF;
drvcmd1950drivers/block/sbpcd.cdrvcmd[4]=(n>>16)&0x00FF;
drvcmd1951drivers/block/sbpcd.cdrvcmd[5]=(n>>8)&0x00FF;
drvcmd1952drivers/block/sbpcd.cdrvcmd[6]=n&0x00FF;
drvcmd1961drivers/block/sbpcd.cdrvcmd[0]=CMD1_PLAY_MSF;
drvcmd1967drivers/block/sbpcd.cdrvcmd[0]=CMD2_PLAY_MSF;
drvcmd1972drivers/block/sbpcd.cdrvcmd[0]=CMDT_PLAY_MSF;
drvcmd1978drivers/block/sbpcd.cdrvcmd[0]=CMD0_PLAY_MSF;
drvcmd1982drivers/block/sbpcd.cdrvcmd[j]=(pos_audio_start>>16)&0x00FF;
drvcmd1983drivers/block/sbpcd.cdrvcmd[j+1]=(pos_audio_start>>8)&0x00FF;
drvcmd1984drivers/block/sbpcd.cdrvcmd[j+2]=pos_audio_start&0x00FF;
drvcmd1985drivers/block/sbpcd.cdrvcmd[j+3]=(pos_audio_end>>16)&0x00FF;
drvcmd1986drivers/block/sbpcd.cdrvcmd[j+4]=(pos_audio_end>>8)&0x00FF;
drvcmd1987drivers/block/sbpcd.cdrvcmd[j+5]=pos_audio_end&0x00FF;
drvcmd2001drivers/block/sbpcd.cdrvcmd[0]=CMD1_PAU_RES;
drvcmd2002drivers/block/sbpcd.cif (pau_res!=1) drvcmd[1]=0x80;
drvcmd2007drivers/block/sbpcd.cdrvcmd[0]=CMD2_PAU_RES;
drvcmd2008drivers/block/sbpcd.cif (pau_res!=1) drvcmd[2]=0x01;
drvcmd2013drivers/block/sbpcd.cdrvcmd[0]=CMD0_PAU_RES;
drvcmd2014drivers/block/sbpcd.cif (pau_res!=1) drvcmd[1]=0x80;
drvcmd2025drivers/block/sbpcd.celse if (pau_res==1) drvcmd[0]=CMDT_PAUSE;
drvcmd2043drivers/block/sbpcd.cdrvcmd[0]=CMD1_LOCK_CTL;
drvcmd2044drivers/block/sbpcd.cif (lock==1) drvcmd[1]=0x01;
drvcmd2049drivers/block/sbpcd.cdrvcmd[0]=CMD2_LOCK_CTL;
drvcmd2050drivers/block/sbpcd.cif (lock==1) drvcmd[4]=0x01;
drvcmd2055drivers/block/sbpcd.cdrvcmd[0]=CMDL_LOCK_CTL;
drvcmd2056drivers/block/sbpcd.cif (lock==1) drvcmd[1]=0x01;
drvcmd2061drivers/block/sbpcd.cdrvcmd[0]=CMDT_LOCK_CTL;
drvcmd2062drivers/block/sbpcd.cif (lock==1) drvcmd[4]=0x01;
drvcmd2129drivers/block/sbpcd.cdrvcmd[0]=CMD1_TRAY_CTL;
drvcmd2134drivers/block/sbpcd.cdrvcmd[0]=CMD2_TRAY_CTL;
drvcmd2135drivers/block/sbpcd.cdrvcmd[1]=0x01;
drvcmd2136drivers/block/sbpcd.cdrvcmd[4]=0x03; /* "insert" */
drvcmd2141drivers/block/sbpcd.cdrvcmd[0]=CMDL_TRAY_CTL;
drvcmd2147drivers/block/sbpcd.cdrvcmd[0]=CMDT_TRAY_CTL;
drvcmd2148drivers/block/sbpcd.cdrvcmd[4]=0x03; /* "insert" */
drvcmd2165drivers/block/sbpcd.cdrvcmd[0]=CMD1_READSUBQ;
drvcmd2171drivers/block/sbpcd.cdrvcmd[0]=CMD2_READSUBQ;
drvcmd2172drivers/block/sbpcd.cdrvcmd[1]=0x02;
drvcmd2173drivers/block/sbpcd.cdrvcmd[3]=0x01;
drvcmd2179drivers/block/sbpcd.cdrvcmd[0]=CMD0_READSUBQ;
drvcmd2180drivers/block/sbpcd.cdrvcmd[1]=0x02;
drvcmd2190drivers/block/sbpcd.cdrvcmd[0]=CMDT_READSUBQ;
drvcmd2191drivers/block/sbpcd.cdrvcmd[1]=0x02;
drvcmd2192drivers/block/sbpcd.cdrvcmd[2]=0x40;
drvcmd2193drivers/block/sbpcd.cdrvcmd[3]=0x01;
drvcmd2194drivers/block/sbpcd.cdrvcmd[8]=response_count;
drvcmd2241drivers/block/sbpcd.cdrvcmd[0]=CMD1_GETMODE;
drvcmd2247drivers/block/sbpcd.cdrvcmd[0]=CMD0_GETMODE;
drvcmd2254drivers/block/sbpcd.cdrvcmd[0]=CMDT_GETMODE;
drvcmd2255drivers/block/sbpcd.cdrvcmd[4]=response_count;
drvcmd2295drivers/block/sbpcd.cdrvcmd[0]=CMD1_SETMODE;
drvcmd2296drivers/block/sbpcd.cdrvcmd[1]=0x00;
drvcmd2297drivers/block/sbpcd.cdrvcmd[2]=D_S[d].sense_byte;
drvcmd2298drivers/block/sbpcd.cdrvcmd[3]=(D_S[d].frame_size>>8)&0xFF;
drvcmd2299drivers/block/sbpcd.cdrvcmd[4]=D_S[d].frame_size&0xFF;
drvcmd2304drivers/block/sbpcd.cdrvcmd[0]=CMD0_SETMODE;
drvcmd2305drivers/block/sbpcd.cdrvcmd[1]=0x00;
drvcmd2306drivers/block/sbpcd.cdrvcmd[2]=(D_S[d].frame_size>>8)&0xFF;
drvcmd2307drivers/block/sbpcd.cdrvcmd[3]=D_S[d].frame_size&0xFF;
drvcmd2308drivers/block/sbpcd.cdrvcmd[4]=0x00;
drvcmd2338drivers/block/sbpcd.cdrvcmd[0]=CMD1_GETMODE;
drvcmd2339drivers/block/sbpcd.cdrvcmd[1]=0x05;
drvcmd2345drivers/block/sbpcd.cdrvcmd[0]=CMD2_GETMODE;
drvcmd2346drivers/block/sbpcd.cdrvcmd[1]=0x0E;
drvcmd2352drivers/block/sbpcd.cdrvcmd[0]=CMD0_GETMODE;
drvcmd2353drivers/block/sbpcd.cdrvcmd[1]=0x03;
drvcmd2470drivers/block/sbpcd.cdrvcmd[0]=CMD1_CAPACITY;
drvcmd2476drivers/block/sbpcd.cdrvcmd[0]=CMD2_CAPACITY;
drvcmd2482drivers/block/sbpcd.cdrvcmd[0]=CMD0_CAPACITY;
drvcmd2489drivers/block/sbpcd.cdrvcmd[0]=CMDT_DISKINFO;
drvcmd2490drivers/block/sbpcd.cdrvcmd[1]=0x02;
drvcmd2491drivers/block/sbpcd.cdrvcmd[6]=CDROM_LEADOUT;
drvcmd2492drivers/block/sbpcd.cdrvcmd[8]=response_count;
drvcmd2493drivers/block/sbpcd.cdrvcmd[9]=0x00;
drvcmd2524drivers/block/sbpcd.cdrvcmd[0]=CMD1_DISKINFO;
drvcmd2530drivers/block/sbpcd.cdrvcmd[0]=CMD0_DISKINFO;
drvcmd2541drivers/block/sbpcd.cdrvcmd[0]=CMD2_DISKINFO;
drvcmd2542drivers/block/sbpcd.cdrvcmd[1]=0x02;
drvcmd2543drivers/block/sbpcd.cdrvcmd[2]=0xAB;
drvcmd2544drivers/block/sbpcd.cdrvcmd[3]=0xFF; /* session */
drvcmd2552drivers/block/sbpcd.cdrvcmd[0]=CMDT_DISKINFO;
drvcmd2553drivers/block/sbpcd.cdrvcmd[1]=0x02;
drvcmd2554drivers/block/sbpcd.cdrvcmd[6]=CDROM_LEADOUT;
drvcmd2555drivers/block/sbpcd.cdrvcmd[8]=response_count;
drvcmd2556drivers/block/sbpcd.cdrvcmd[9]=0x00;
drvcmd2581drivers/block/sbpcd.cdrvcmd[0]=CMD2_DISKINFO;
drvcmd2582drivers/block/sbpcd.cdrvcmd[1]=0x02;
drvcmd2583drivers/block/sbpcd.cdrvcmd[2]=0xAB;
drvcmd2584drivers/block/sbpcd.cdrvcmd[3]=count;
drvcmd2594drivers/block/sbpcd.cdrvcmd[0]=CMD2_DISKINFO;
drvcmd2595drivers/block/sbpcd.cdrvcmd[1]=0x02;
drvcmd2596drivers/block/sbpcd.cdrvcmd[2]=0xAA;
drvcmd2597drivers/block/sbpcd.cdrvcmd[3]=0xFF;
drvcmd2636drivers/block/sbpcd.cdrvcmd[0]=CMD1_READTOC;
drvcmd2637drivers/block/sbpcd.cdrvcmd[2]=num;
drvcmd2644drivers/block/sbpcd.cdrvcmd[0]=CMD2_DISKINFO;
drvcmd2645drivers/block/sbpcd.cdrvcmd[1]=0x02;
drvcmd2646drivers/block/sbpcd.cdrvcmd[2]=num;
drvcmd2652drivers/block/sbpcd.cdrvcmd[0]=CMD0_READTOC;
drvcmd2653drivers/block/sbpcd.cdrvcmd[1]=0x02;
drvcmd2654drivers/block/sbpcd.cdrvcmd[2]=num;
drvcmd2664drivers/block/sbpcd.cdrvcmd[0]=CMDT_DISKINFO;
drvcmd2665drivers/block/sbpcd.cdrvcmd[1]=0x02;
drvcmd2666drivers/block/sbpcd.cdrvcmd[6]=num;
drvcmd2667drivers/block/sbpcd.cdrvcmd[8]=response_count;
drvcmd2668drivers/block/sbpcd.cdrvcmd[9]=0x00;
drvcmd2707drivers/block/sbpcd.cdrvcmd[0]=CMD0_PACKET;
drvcmd2708drivers/block/sbpcd.cdrvcmd[1]=response_count;
drvcmd2769drivers/block/sbpcd.cdrvcmd[0]=CMD1_READ_UPC;
drvcmd2771drivers/block/sbpcd.cdrvcmd[1]=(block>>16)&0xFF;
drvcmd2772drivers/block/sbpcd.cdrvcmd[2]=(block>>8)&0xFF;
drvcmd2773drivers/block/sbpcd.cdrvcmd[3]=block&0xFF;
drvcmd2780drivers/block/sbpcd.cdrvcmd[0]=CMD0_READ_UPC;
drvcmd2782drivers/block/sbpcd.cdrvcmd[2]=(block>>16)&0xFF;
drvcmd2783drivers/block/sbpcd.cdrvcmd[3]=(block>>8)&0xFF;
drvcmd2784drivers/block/sbpcd.cdrvcmd[4]=block&0xFF;
drvcmd2858drivers/block/sbpcd.cdrvcmd[0]=CMD1_MULTISESS;
drvcmd2872drivers/block/sbpcd.cdrvcmd[0]=CMDL_MULTISESS;
drvcmd2873drivers/block/sbpcd.cdrvcmd[1]=3;
drvcmd2874drivers/block/sbpcd.cdrvcmd[2]=1;
drvcmd2885drivers/block/sbpcd.cdrvcmd[0]=CMDT_DISKINFO;
drvcmd2886drivers/block/sbpcd.cdrvcmd[1]=0x02;
drvcmd2887drivers/block/sbpcd.cdrvcmd[6]=0;
drvcmd2888drivers/block/sbpcd.cdrvcmd[8]=response_count;
drvcmd2889drivers/block/sbpcd.cdrvcmd[9]=0x40;
drvcmd2921drivers/block/sbpcd.cdrvcmd[0]=CMD1_SUBCHANINF;
drvcmd2922drivers/block/sbpcd.cdrvcmd[1]=(frame>>16)&0xFF;
drvcmd2923drivers/block/sbpcd.cdrvcmd[2]=(frame>>8)&0xFF;
drvcmd2924drivers/block/sbpcd.cdrvcmd[3]=frame&0xFF;
drvcmd2925drivers/block/sbpcd.cdrvcmd[5]=(count>>8)&0xFF;
drvcmd2926drivers/block/sbpcd.cdrvcmd[6]=count&0xFF;
drvcmd2987drivers/block/sbpcd.cdrvcmd[0]=CMD0_READ_ERR; /* same as CMD1_ and CMDL_ */
drvcmd2992drivers/block/sbpcd.cdrvcmd[0]=CMD2_READ_ERR;
drvcmd3030drivers/block/sbpcd.cdrvcmd[0]=CMD0_READ_ERR; /* same as CMD1_ and CMDL_ */
drvcmd3038drivers/block/sbpcd.cdrvcmd[0]=CMD0_READ_VER; /* same as CMD1_ and CMDL_ */
drvcmd3101drivers/block/sbpcd.cdrvcmd[0]=CMD2_READ_ERR;
drvcmd3116drivers/block/sbpcd.cdrvcmd[0]=CMD2_READ_VER;
drvcmd3189drivers/block/sbpcd.cdrvcmd[0]=CMDT_READ_VER;
drvcmd3190drivers/block/sbpcd.cdrvcmd[4]=response_count;
drvcmd4174drivers/block/sbpcd.cdrvcmd[0]=CMD0_READ_XA; /* "read XA frames", old drives */
drvcmd4175drivers/block/sbpcd.cdrvcmd[1]=(block>>16)&0x000000ff;
drvcmd4176drivers/block/sbpcd.cdrvcmd[2]=(block>>8)&0x000000ff;
drvcmd4177drivers/block/sbpcd.cdrvcmd[3]=block&0x000000ff;
drvcmd4178drivers/block/sbpcd.cdrvcmd[4]=0;
drvcmd4179drivers/block/sbpcd.cdrvcmd[5]=read_audio.nframes; /* # of frames */
drvcmd4180drivers/block/sbpcd.cdrvcmd[6]=0;
drvcmd4184drivers/block/sbpcd.cdrvcmd[0]=CMD1_READ; /* "read frames", new drives */
drvcmd4185drivers/block/sbpcd.clba2msf(block,&drvcmd[1]); /* msf-bin format required */
drvcmd4186drivers/block/sbpcd.cdrvcmd[4]=0;
drvcmd4187drivers/block/sbpcd.cdrvcmd[5]=0;
drvcmd4188drivers/block/sbpcd.cdrvcmd[6]=read_audio.nframes; /* # of frames */
drvcmd4197drivers/block/sbpcd.cfor (i=0;i<7;i++) OUT(CDo_command,drvcmd[i]);
drvcmd4484drivers/block/sbpcd.cdrvcmd[0]=CMD0_READ_XA; /* "read XA frames", old drives */
drvcmd4485drivers/block/sbpcd.cdrvcmd[1]=(block>>16)&0x000000ff;
drvcmd4486drivers/block/sbpcd.cdrvcmd[2]=(block>>8)&0x000000ff;
drvcmd4487drivers/block/sbpcd.cdrvcmd[3]=block&0x000000ff;
drvcmd4488drivers/block/sbpcd.cdrvcmd[5]=D_S[d].sbp_read_frames;
drvcmd4492drivers/block/sbpcd.cdrvcmd[0]=CMD0_READ; /* "read frames", old drives */
drvcmd4495drivers/block/sbpcd.clba2msf(block,&drvcmd[1]); /* msf-bcd format required */
drvcmd4496drivers/block/sbpcd.cbin2bcdx(&drvcmd[1]);
drvcmd4497drivers/block/sbpcd.cbin2bcdx(&drvcmd[2]);
drvcmd4498drivers/block/sbpcd.cbin2bcdx(&drvcmd[3]);
drvcmd4502drivers/block/sbpcd.cdrvcmd[1]=(block>>16)&0x000000ff;
drvcmd4503drivers/block/sbpcd.cdrvcmd[2]=(block>>8)&0x000000ff;
drvcmd4504drivers/block/sbpcd.cdrvcmd[3]=block&0x000000ff;
drvcmd4506drivers/block/sbpcd.cdrvcmd[5]=D_S[d].sbp_read_frames;
drvcmd4507drivers/block/sbpcd.cdrvcmd[6]=(D_S[d].drv_type<drv_201)?0:2; /* flag "lba or msf-bcd format" */
drvcmd4512drivers/block/sbpcd.cdrvcmd[0]=CMD1_READ;
drvcmd4513drivers/block/sbpcd.clba2msf(block,&drvcmd[1]); /* msf-bin format required */
drvcmd4514drivers/block/sbpcd.cdrvcmd[6]=D_S[d].sbp_read_frames;
drvcmd4518drivers/block/sbpcd.cdrvcmd[0]=CMD2_READ;
drvcmd4519drivers/block/sbpcd.clba2msf(block,&drvcmd[1]); /* msf-bin format required */
drvcmd4520drivers/block/sbpcd.cdrvcmd[5]=D_S[d].sbp_read_frames;
drvcmd4521drivers/block/sbpcd.cdrvcmd[6]=0x02;
drvcmd4525drivers/block/sbpcd.cdrvcmd[0]=CMDT_READ;
drvcmd4526drivers/block/sbpcd.cdrvcmd[2]=(block>>24)&0x0ff;
drvcmd4527drivers/block/sbpcd.cdrvcmd[3]=(block>>16)&0x0ff;
drvcmd4528drivers/block/sbpcd.cdrvcmd[4]=(block>>8)&0x0ff;
drvcmd4529drivers/block/sbpcd.cdrvcmd[5]=block&0x0ff;
drvcmd4530drivers/block/sbpcd.cdrvcmd[7]=(D_S[d].sbp_read_frames>>8)&0x0ff;
drvcmd4531drivers/block/sbpcd.cdrvcmd[8]=D_S[d].sbp_read_frames&0x0ff;
drvcmd4535drivers/block/sbpcd.cfor (i=0;i<7;i++) OUT(CDo_command,drvcmd[i]);
drvcmd4536drivers/block/sbpcd.cif (famT_drive) for (i=7;i<10;i++) OUT(CDo_command,drvcmd[i]);
drvcmd4712drivers/block/sbpcd.cdrvcmd[0]=CMDT_READ_ERR;