# HG changeset patch # User reimar # Date 1185555581 0 # Node ID 565d08e0ee51e9ba125933bb2d753a50b8c74c2a # Parent 5982ecb1dcdfe25e1c73530f969c5616a935e37d Simplify NetBSD vcd_read code diff -r 5982ecb1dcdf -r 565d08e0ee51 stream/vcd_read_nbsd.h --- a/stream/vcd_read_nbsd.h Fri Jul 27 16:34:52 2007 +0000 +++ b/stream/vcd_read_nbsd.h Fri Jul 27 16:59:41 2007 +0000 @@ -3,6 +3,7 @@ #ifdef __NetBSD__ #include #endif +#include "libavutil/intreadwrite.h" #include #include @@ -155,33 +156,17 @@ struct scsireq sc; int lba = vcd_get_msf(vcd); int blocks; - int sector_type; - int sync, header_code, user_data, edc_ecc, error_field; - int sub_channel; int rc; blocks = 1; - sector_type = 5; /* mode2/form2 */ - sync = 0; - header_code = 0; - user_data = 1; - edc_ecc = 0; - error_field = 0; - sub_channel = 0; memset(&sc, 0, sizeof(sc)); sc.cmd[0] = 0xBE; - sc.cmd[1] = (sector_type) << 2; - sc.cmd[2] = (lba >> 24) & 0xff; - sc.cmd[3] = (lba >> 16) & 0xff; - sc.cmd[4] = (lba >> 8) & 0xff; - sc.cmd[5] = lba & 0xff; - sc.cmd[6] = (blocks >> 16) & 0xff; - sc.cmd[7] = (blocks >> 8) & 0xff; - sc.cmd[8] = blocks & 0xff; - sc.cmd[9] = (sync << 7) | (header_code << 5) | (user_data << 4) | - (edc_ecc << 3) | (error_field << 1); - sc.cmd[10] = sub_channel; + sc.cmd[1] = 5 << 2; // mode2/form2 + AV_WB32(&sc.cmd[2], lba); + AV_WB24(&sc.cmd[6], blocks); + sc.cmd[9] = 1 << 4; // user data only + sc.cmd[10] = 0; // no subchannel sc.cmdlen = 12; sc.databuf = (caddr_t) mem; sc.datalen = 2328;