Changeset 35
- Timestamp:
- 11/28/04 14:57:48 (18 years ago)
- Files:
-
- trunk/freebob/src/avdevice.cpp (modified) (2 diffs)
- trunk/freebob/src/avdevicemusicsubunit.cpp (modified) (1 diff)
- trunk/freebob/src/avdevicesubunit.cpp (modified) (1 diff)
- trunk/freebob/src/avdevicesubunit.h (modified) (1 diff)
- trunk/freebob/src/debugmodule.h (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/freebob/src/avdevice.cpp
r31 r35 132 132 case 0x01: // audio subunit 133 133 tmpAvDeviceSubunit=new AvDeviceAudioSubunit(this,subunit_id); 134 if (tmpAvDeviceSubunit) { // test code 135 //tmpAvDeviceSubunit->printOutputPlugConnections(); 136 } 134 137 break; 135 138 case 0x0C: // music subunit … … 139 142 tmpAvDeviceSubunit2.printMusicPlugInfo(); 140 143 tmpAvDeviceSubunit2.printMusicPlugConfigurations(); 144 tmpAvDeviceSubunit2.printOutputPlugConnections(); 141 145 tmpAvDeviceSubunit2.test(); 142 146 } trunk/freebob/src/avdevicemusicsubunit.cpp
r27 r35 35 35 quadlet_t *response; 36 36 37 unsigned char opcr=0;38 39 debugPrint(DEBUG_LEVEL_SUBUNIT,"AvDeviceMusicSubunit: Serial bus iso output plug connections:\n");40 for( opcr=0;opcr<0x1E;opcr++) {37 unsigned char ipcr=0; 38 39 debugPrint(DEBUG_LEVEL_SUBUNIT,"AvDeviceMusicSubunit: Input Select status (iso channels):\n"); 40 for(ipcr=0;ipcr<0x1E;ipcr++) { 41 41 request[0] = AVC1394_CTYPE_STATUS | ((iTarget & 0x1F) << 19) | ((iId & 0x07) << 16) 42 | (0x1 A<< 8) | 0xFF;42 | (0x1B << 8) | 0xFF; 43 43 //request[1] = ((iTarget & 0x1F) << 27) | ((iId & 0x07) << 24) | 0x00FF7F; 44 request[1]=0xFFFEFF00 | opcr; 45 response = cParent->avcExecuteTransaction(request, 2, 4); 44 request[1]=0xFFFFFFFF; 45 request[2]= (ipcr<<24)| 0xFFFEFF; 46 response = cParent->avcExecuteTransaction(request, 3, 4); 47 46 48 if ((response != NULL) && ((response[0]&0xFF000000)==0x0C000000)) { 47 unsigned char output_status=(response[ 0]&0xE0) >> 5;48 unsigned char conv=(response[0]&0x10) >> 4;49 unsigned char signal_status=(response[0]&0x0F);49 unsigned char output_status=(response[1]&0xF0000000) >> 28; 50 unsigned char output_plug=(response[1]&0xFF); 51 unsigned char input_plug=((response[2]>>24)&0xFF); 50 52 51 unsigned int signal_source=((response[1]>>16)&0xFFFF);52 unsigned int signal_destination=((response[ 1])&0xFFFF);53 debugPrint(DEBUG_LEVEL_SUBUNIT," oPCR %d: output_status=%d,conv=%d,signal_status=%d,signal_source=0x%04X,signal_destination=0x%04X\n",opcr,output_status,conv,signal_status,signal_source,signal_destination);53 unsigned int node_id=((response[1]>>8)&0xFFFF); 54 unsigned int signal_destination=((response[2]>>8)&0xFFFF); 55 debugPrint(DEBUG_LEVEL_SUBUNIT," iPCR %d: output_status=0x%01X,node_id=%02d,output_plug=0x%02X,input_plug=0x%02X,signal_destination=0x%04X\n",ipcr,output_status,node_id,output_plug,input_plug,signal_destination); 54 56 } 55 57 } 56 debugPrint(DEBUG_LEVEL_SUBUNIT,"AvDeviceMusicSubunit: Serial bus external output plug connections:\n"); 57 for(opcr=0x80;opcr<0x9E;opcr++) { 58 request[0] = AVC1394_CTYPE_STATUS | ((iTarget & 0x1F) << 19) | ((iId & 0x07) << 16) 59 | (0x1A << 8) | 0xFF; 60 //request[1] = ((iTarget & 0x1F) << 27) | ((iId & 0x07) << 24) | 0x00FF7F; 61 request[1]=0xFFFEFF00 | opcr; 62 response = cParent->avcExecuteTransaction(request, 2, 4); 63 if ((response != NULL) && ((response[0]&0xFF000000)==0x0C000000)) { 64 unsigned char output_status=(response[0]&0xE0) >> 5; 65 unsigned char conv=(response[0]&0x10) >> 4; 66 unsigned char signal_status=(response[0]&0x0F); 67 68 unsigned int signal_source=((response[1]>>16)&0xFFFF); 69 unsigned int signal_destination=((response[1])&0xFFFF); 70 debugPrint(DEBUG_LEVEL_SUBUNIT," oPCR %02X: output_status=%d,conv=%d,signal_status=%d,signal_source=0x%04X,signal_destination=0x%04X\n",opcr,output_status,conv,signal_status,signal_source,signal_destination); 71 } 72 } 58 } 73 59 74 } 60 75 61 void AvDeviceMusicSubunit::printMusicPlugConfigurations() { 76 62 unsigned char byte; trunk/freebob/src/avdevicesubunit.cpp
r31 r35 30 30 } 31 31 32 void AvDeviceSubunit::printOutputPlugConnections() { 33 unsigned char byte; 34 quadlet_t request[6]; 35 quadlet_t *response; 36 37 unsigned char opcr=0; 38 39 debugPrint(DEBUG_LEVEL_SUBUNIT,"AvDeviceSubunit: Serial bus iso output plug connections:\n"); 40 for(opcr=0;opcr<0x1E;opcr++) { 41 request[0] = AVC1394_CTYPE_STATUS | ((iTarget & 0x1F) << 19) | ((iId & 0x07) << 16) 42 | (0x1A << 8) | 0xFF; 43 //request[1] = ((iTarget & 0x1F) << 27) | ((iId & 0x07) << 24) | 0x00FF7F; 44 request[1]=0xFFFEFF00 | opcr; 45 response = cParent->avcExecuteTransaction(request, 2, 4); 46 if ((response != NULL) && ((response[0]&0xFF000000)==0x0C000000)) { 47 unsigned char output_status=(response[0]&0xE0) >> 5; 48 unsigned char conv=(response[0]&0x10) >> 4; 49 unsigned char signal_status=(response[0]&0x0F); 50 51 unsigned int signal_source=((response[1]>>16)&0xFFFF); 52 unsigned int signal_destination=((response[1])&0xFFFF); 53 debugPrint(DEBUG_LEVEL_SUBUNIT," oPCR %d: output_status=%d,conv=%d,signal_status=%d,signal_source=0x%04X,signal_destination=0x%04X\n",opcr,output_status,conv,signal_status,signal_source,signal_destination); 54 } 55 } 56 debugPrint(DEBUG_LEVEL_SUBUNIT,"AvDeviceSubunit: Serial bus external output plug connections:\n"); 57 for(opcr=0x80;opcr<0x9E;opcr++) { 58 request[0] = AVC1394_CTYPE_STATUS | ((iTarget & 0x1F) << 19) | ((iId & 0x07) << 16) 59 | (0x1A << 8) | 0xFF; 60 //request[1] = ((iTarget & 0x1F) << 27) | ((iId & 0x07) << 24) | 0x00FF7F; 61 request[1]=0xFFFEFF00 | opcr; 62 response = cParent->avcExecuteTransaction(request, 2, 4); 63 if ((response != NULL) && ((response[0]&0xFF000000)==0x0C000000)) { 64 unsigned char output_status=(response[0]&0xE0) >> 5; 65 unsigned char conv=(response[0]&0x10) >> 4; 66 unsigned char signal_status=(response[0]&0x0F); 67 68 unsigned int signal_source=((response[1]>>16)&0xFFFF); 69 unsigned int signal_destination=((response[1])&0xFFFF); 70 debugPrint(DEBUG_LEVEL_SUBUNIT," oPCR %02X: output_status=%d,conv=%d,signal_status=%d,signal_source=0x%04X,signal_destination=0x%04X\n",opcr,output_status,conv,signal_status,signal_source,signal_destination); 71 } 72 } 73 74 } 32 75 33 76 AvDeviceSubunit::AvDeviceSubunit(AvDevice *parent, unsigned char target, unsigned char id) trunk/freebob/src/avdevicesubunit.h
r27 r35 34 34 35 35 virtual void test(); 36 void printOutputPlugConnections(); 36 37 37 38 protected: trunk/freebob/src/debugmodule.h
r33 r35 37 37 #define DEBUG_LEVEL_MODERATE (DEBUG_LEVEL_INFO | DEBUG_LEVEL_DEVICE | DEBUG_LEVEL_SUBUNIT) 38 38 39 #define DEBUG_LEVEL DEBUG_LEVEL_MODERATE 39 #define DEBUG_LEVEL DEBUG_LEVEL_MODERATE 40 40 41 41 #define DEBUG … … 44 44 #define debugError(format, args...) fprintf( stderr, "%s %s %d: " format, __FILE__, __FUNCTION__, __LINE__, ##args ) 45 45 // #define debugPrint(Level, format, args...) if(DEBUG_LEVEL & Level) { int idebug=Level; while(idebug) {printf(" "); idebug=idebug>>1;} printf( format, ##args ); } 46 #define debugPrint(Level, format, args...) if(DEBUG_LEVEL >=Level) printf("DEBUG %s %s %d :" format, __FILE__, __FUNCTION__, __LINE__, ##args );46 #define debugPrint(Level, format, args...) if(DEBUG_LEVEL & Level) printf("DEBUG %s %s %d :" format, __FILE__, __FUNCTION__, __LINE__, ##args ); 47 47 48 48 #else