]> git.zerfleddert.de Git - proxmark3-svn/blobdiff - armsrc/appmain.c
Some more tinkering with a generic 13.56MHz reader, still not finished
[proxmark3-svn] / armsrc / appmain.c
index cfde4fbb63733bf87d257eed430e1fd9a2e36c64..3f309520ef6bf991b8d5640c53d176abf51a8a14 100644 (file)
@@ -356,6 +356,8 @@ void SendVersion(void)
 
        FpgaGatherVersion(temp, sizeof(temp));
        DbpString(temp);
 
        FpgaGatherVersion(temp, sizeof(temp));
        DbpString(temp);
+       // Send Chip ID
+       cmd_send(CMD_ACK,*(AT91C_DBGU_CIDR),0,0,NULL,0);
 }
 
 #ifdef WITH_LF
 }
 
 #ifdef WITH_LF
@@ -780,12 +782,24 @@ void UsbPacketReceived(uint8_t *packet, int len)
                case CMD_MIFARE_READBL:
                        MifareReadBlock(c->arg[0], c->arg[1], c->arg[2], c->d.asBytes);
                        break;
                case CMD_MIFARE_READBL:
                        MifareReadBlock(c->arg[0], c->arg[1], c->arg[2], c->d.asBytes);
                        break;
+               case CMD_MIFAREU_READBL:
+                       MifareUReadBlock(c->arg[0],c->d.asBytes);
+                       break;
+               case CMD_MIFAREU_READCARD:
+                       MifareUReadCard(c->arg[0],c->d.asBytes);
+                        break;
                case CMD_MIFARE_READSC:
                        MifareReadSector(c->arg[0], c->arg[1], c->arg[2], c->d.asBytes);
                        break;
                case CMD_MIFARE_WRITEBL:
                        MifareWriteBlock(c->arg[0], c->arg[1], c->arg[2], c->d.asBytes);
                        break;
                case CMD_MIFARE_READSC:
                        MifareReadSector(c->arg[0], c->arg[1], c->arg[2], c->d.asBytes);
                        break;
                case CMD_MIFARE_WRITEBL:
                        MifareWriteBlock(c->arg[0], c->arg[1], c->arg[2], c->d.asBytes);
                        break;
+               case CMD_MIFAREU_WRITEBL_COMPAT:
+                       MifareUWriteBlock(c->arg[0], c->d.asBytes);
+                        break;
+               case CMD_MIFAREU_WRITEBL:
+                        MifareUWriteBlock_Special(c->arg[0], c->d.asBytes);
+                        break;
                case CMD_MIFARE_NESTED:
                        MifareNested(c->arg[0], c->arg[1], c->arg[2], c->d.asBytes);
                        break;
                case CMD_MIFARE_NESTED:
                        MifareNested(c->arg[0], c->arg[1], c->arg[2], c->d.asBytes);
                        break;
@@ -866,7 +880,7 @@ void UsbPacketReceived(uint8_t *packet, int len)
                        LED_D_OFF(); // LED D indicates field ON or OFF
                        break;
 
                        LED_D_OFF(); // LED D indicates field ON or OFF
                        break;
 
-               case CMD_DOWNLOAD_RAW_ADC_SAMPLES_125K: {
+               case CMD_DOWNLOAD_RAW_ADC_SAMPLES_125K:
 //                     UsbCommand n;
 //                     if(c->cmd == CMD_DOWNLOAD_RAW_ADC_SAMPLES_125K) {
 //                             n.cmd = CMD_DOWNLOADED_RAW_ADC_SAMPLES_125K;
 //                     UsbCommand n;
 //                     if(c->cmd == CMD_DOWNLOAD_RAW_ADC_SAMPLES_125K) {
 //                             n.cmd = CMD_DOWNLOADED_RAW_ADC_SAMPLES_125K;
@@ -888,7 +902,7 @@ void UsbPacketReceived(uint8_t *packet, int len)
                        // Trigger a finish downloading signal with an ACK frame
                        cmd_send(CMD_ACK,0,0,0,0,0);
                        LED_B_OFF();
                        // Trigger a finish downloading signal with an ACK frame
                        cmd_send(CMD_ACK,0,0,0,0,0);
                        LED_B_OFF();
-               } break;
+                       break;
 
                case CMD_DOWNLOADED_SIM_SAMPLES_125K: {
                        uint8_t *b = (uint8_t *)BigBuf;
 
                case CMD_DOWNLOADED_SIM_SAMPLES_125K: {
                        uint8_t *b = (uint8_t *)BigBuf;
Impressum, Datenschutz