- Timestamp:
- 01/18/12 17:28:47 (12 years ago)
- Location:
- branches/sc8in1
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/sc8in1/csctapi/ifd_sc8in1.c
r6255 r6257 24 24 #include "icc_async.h" 25 25 26 static int32_t mcrReadStatus(struct s_reader *reader, BYTE*status);26 static int32_t mcrReadStatus(struct s_reader *reader, unsigned char *status); 27 27 28 28 static int32_t sc8in1_command(struct s_reader * reader, unsigned char * buff, 29 uint16_t lenwrite, uint16_t lenread, uint8_t enableEepromWrite, BYTErestoreBaudrate) {29 uint16_t lenwrite, uint16_t lenread, uint8_t enableEepromWrite, unsigned char restoreBaudrate) { 30 30 struct termios termio, termiobackup; 31 31 … … 49 49 // enable EEPROM write 50 50 if (enableEepromWrite) { 51 BYTEeepromBuff[3];51 unsigned char eepromBuff[3]; 52 52 eepromBuff[0] = 0x70; 53 53 eepromBuff[1] = 0xab; … … 109 109 110 110 if (reader->sc8in1_config->mcr_type) { 111 BYTEbuff[2];111 unsigned char buff[2]; 112 112 if (mcrReadStatus(reader, &buff[0])) { 113 113 return (-1); … … 128 128 } 129 129 130 static int32_t mcrReadStatus(struct s_reader *reader, BYTE*status) {130 static int32_t mcrReadStatus(struct s_reader *reader, unsigned char *status) { 131 131 unsigned char buff[2]; 132 132 buff[0] = 0x3f; … … 138 138 } 139 139 140 static int32_t mcrReadType(struct s_reader *reader, BYTE*type) {140 static int32_t mcrReadType(struct s_reader *reader, unsigned char *type) { 141 141 unsigned char buff[1]; 142 142 buff[0] = 0x74; … … 147 147 } 148 148 149 static int32_t mcrReadVersion(struct s_reader *reader, BYTE*version) {149 static int32_t mcrReadVersion(struct s_reader *reader, unsigned char *version) { 150 150 unsigned char buff[1]; 151 151 buff[0] = 0x76; … … 156 156 } 157 157 158 static int32_t mcrReadSerial(struct s_reader *reader, BYTE*serial) {158 static int32_t mcrReadSerial(struct s_reader *reader, unsigned char *serial) { 159 159 unsigned char buff[2]; 160 160 buff[0] = 0x6e; … … 166 166 } 167 167 168 static int32_t mcrWriteDisplayRaw(struct s_reader *reader, BYTEdata[7]) {168 static int32_t mcrWriteDisplayRaw(struct s_reader *reader, unsigned char data[7]) { 169 169 unsigned char buff[8]; 170 170 buff[0] = 0x64; … … 175 175 } 176 176 177 static int32_t mcrWriteDisplayAscii(struct s_reader *reader, BYTE data, BYTEtimeout) {177 static int32_t mcrWriteDisplayAscii(struct s_reader *reader, unsigned char data, unsigned char timeout) { 178 178 unsigned char buff[3]; 179 179 buff[0] = 0x61; … … 185 185 } 186 186 187 static int32_t mcrWriteClock(struct s_reader *reader, BYTE saveClock, BYTEclock[2]) {187 static int32_t mcrWriteClock(struct s_reader *reader, unsigned char saveClock, unsigned char clock[2]) { 188 188 unsigned char buff[3]; 189 189 buff[0] = 0x63; … … 200 200 } 201 201 202 static int32_t mcrReadClock(struct s_reader *reader, BYTE*clock) {202 static int32_t mcrReadClock(struct s_reader *reader, unsigned char *clock) { 203 203 unsigned char buff[2]; 204 204 buff[0] = 0x67; … … 210 210 } 211 211 212 static int32_t mcrWriteTimeout(struct s_reader *reader, BYTEtimeout[2]) {212 static int32_t mcrWriteTimeout(struct s_reader *reader, unsigned char timeout[2]) { 213 213 unsigned char buff[3]; 214 214 buff[0] = 0x6f; … … 220 220 } 221 221 222 static int32_t mcrReadTimeout(struct s_reader *reader, BYTE*timeout) {222 static int32_t mcrReadTimeout(struct s_reader *reader, unsigned char *timeout) { 223 223 unsigned char buff[2]; 224 224 buff[0] = 0x72; … … 230 230 } 231 231 232 static int32_t mcrSelectSlot(struct s_reader *reader, BYTEslot) {232 static int32_t mcrSelectSlot(struct s_reader *reader, unsigned char slot) { 233 233 // Select slot for MCR device. 234 234 // Parameter slot is from 1-8 … … 243 243 static int32_t mcrHelloOscam(struct s_reader *reader) { 244 244 // Display "OSCam" on MCR display 245 BYTEhelloOscam[5] = {'O', 'S', 'C', 'a', 'm'};245 unsigned char helloOscam[5] = {'O', 'S', 'C', 'a', 'm'}; 246 246 return MCR_DisplayText(reader, &helloOscam[0], 5, 100); 247 247 } … … 434 434 #ifdef WITH_DEBUG 435 435 gettimeofday(&tv_mid,0); 436 longelapsed = (tv_mid.tv_sec-tv_start.tv_sec)*1000000 + tv_mid.tv_usec-tv_start.tv_usec;436 uint32_t elapsed = (tv_mid.tv_sec-tv_start.tv_sec)*1000000 + tv_mid.tv_usec-tv_start.tv_usec; 437 437 cs_debug_mask(D_DEVICE, "SC8in1 Selectslot Phase1 in %ums", elapsed/1000); 438 438 #endif … … 448 448 #ifdef WITH_DEBUG 449 449 gettimeofday(&tv_end,0); 450 longelapsed = (tv_end.tv_sec-tv_start.tv_sec)*1000000 + tv_end.tv_usec-tv_start.tv_usec;450 uint32_t elapsed = (tv_end.tv_sec-tv_start.tv_sec)*1000000 + tv_end.tv_usec-tv_start.tv_usec; 451 451 cs_debug_mask(D_DEVICE, "SC8in1 Selectslot in %ums", elapsed/1000); 452 452 #endif … … 469 469 470 470 // check for a MCR device and how many slots it has. 471 BYTEmcrType[1]; mcrType[0] = 0;471 unsigned char mcrType[1]; mcrType[0] = 0; 472 472 if ( ! mcrReadType(reader, &mcrType[0]) ) { 473 473 if (mcrType[0] == 4 || mcrType[0] == 8) { … … 475 475 cs_log("SC8in1: MCR%u detected for device %s", reader->sc8in1_config->mcr_type, reader->device); 476 476 477 BYTEversion[1]; version[0] = 0;477 unsigned char version[1]; version[0] = 0; 478 478 if ( ! mcrReadVersion(reader, &version[0])) { 479 cs_log("SC8in1: Version %u for device %s", ( BYTE)version[0], reader->device);480 } 481 482 BYTEserial[2]; serial[0] = 0; serial[1] = 0;479 cs_log("SC8in1: Version %u for device %s", (unsigned char)version[0], reader->device); 480 } 481 482 unsigned char serial[2]; serial[0] = 0; serial[1] = 0; 483 483 if ( ! mcrReadSerial(reader, &serial[0])) { 484 484 cs_log("SC8in1: Serial %u for device %s", (uint16_t)serial[0], reader->device); … … 486 486 487 487 //now work-around the problem that timeout of MCR has to be 0 in case of USB 488 BYTEtimeout[2]; timeout[0] = 0; timeout[1] = 0;488 unsigned char timeout[2]; timeout[0] = 0; timeout[1] = 0; 489 489 retval = mcrReadTimeout(reader, &timeout[0]); 490 490 if (retval) { … … 558 558 559 559 //set clockspeeds for all slots 560 BYTEclockspeed[2];560 unsigned char clockspeed[2]; 561 561 memcpy(&clockspeed, &sc8in1_clock, 2); 562 562 if (mcrWriteClock(reader, 0, clockspeed)) { -
branches/sc8in1/globals.h
r6255 r6257 1026 1026 int32_t current_slot; 1027 1027 unsigned char cardstatus; 1028 BYTEmcr_type;1028 unsigned char mcr_type; 1029 1029 CS_MUTEX_LOCK sc8in1_lock; 1030 1030 struct s_sc8in1_display *display; 1031 1031 CS_MUTEX_LOCK sc8in1_display_lock; 1032 BYTEdisplay_running;1032 unsigned char display_running; 1033 1033 }; 1034 1034
Note:
See TracChangeset
for help on using the changeset viewer.