Commit graph

743 commits

Author SHA1 Message Date
marcansoft
bd20f8f478 Add license headers to armsrc/bootrom/common stuff
I have kept whatever copyright notices exist. Please add your own
copyright notice if you have made any nontrivial changes or additions to
the code. There are several files without any attribution, currently.
2010-02-21 00:12:52 +00:00
marcansoft
f7e3ed8287 Clean up data types, some header cleanup, etc. 2010-02-20 22:51:00 +00:00
marcansoft
8419248d2d More CRLF -> LF conversion 2010-02-20 22:50:30 +00:00
marcansoft
e30c654b19 More en masse cleanup (whitespace/newlines/headers/etc) 2010-02-20 21:57:20 +00:00
izsh@fail0verflow.com
5e174a511b marcan's patch until he gets commit access. Remove C library's includes from the firmware side since it's not available anyway and not used 2010-02-20 03:07:55 +00:00
d18c7db
3ec3a4724e Removed hackish usb.h file, re-added Info.plist 2010-02-19 23:24:49 +00:00
d18c7db
393c3ef933 Attempt at getting the windows client to at least compile without bombing out with errors, may not be fully usable, e.g. plot window doesn't come up, etc 2010-02-18 08:24:26 +00:00
adam@algroup.co.uk
8e220a9126 put legic back in the system and add rumpletux's fast legic / prng code from forum 2010-02-05 08:18:02 +00:00
izsh.f0f
7fe9b0b742 Client cleanup and restructuring. Stage 1...
Next Step is refactoring some of the giant functions which are
just copy/paste of some other ones with just a few line changes,
removing unnecessary 'goto' etc.

The MS Windows version is broken with this commit but will be fixed
soon. Everything can't be done all at once :P

The commands are now hierarchical, for example:
"hf 14a read" vs. "hf 14b read".
You can also request help:
"hf help", "data help", "hf 15 help" etc.

Indents are now space-based, not tab-based anymore. Hopefully
no one will be trolling about it, considering the suicide-prone work
being done here ;)

client/cmdhw.c, client/proxusb.c, client/cmdhw.h, client/proxusb.h,
client/cmdmain.c, client/cmdlfhid.c, client/cmdmain.h, client/cmdlfhid.h,
client/data.c, client/data.h, client/cmdhf.c, client/cmdlf.c,
client/cmdhf.h, client/cmdhf15.c, client/cmdhf14b.c, client/cmdlf.h,
client/cmdhf15.h, client/cmdhf14b.h, client/cmddata.c, client/cmddata.h,
client/ui.c, client/cmdparser.c, client/cmdlfti.c, client/ui.h,
client/cmdlfem4x.c, client/cmdparser.h, client/cmdlfti.h, client/cmdlfem4x.h,
client/graph.c, client/graph.h, client/cmdhf14a.c, client/cmdhf14a.h,
client/cmdhflegic.c, client/cmdhflegic.c: New files.

client/cli.c, client/flasher.c, client/snooper.c, client/proxmark3.c,
client/proxmark3.h, client/Makefile: Update accordingly.

client/flash.h, client/flash.c, client/proxgui.cpp: Cosmetic changes.

client/translate.h, client/command.c, client/gui.c,
client/usb.c, client/prox.h: Remove.

include/usb_cmd.h (CMD_ACQUIRE_RAW_ADC_SAMPLES_ISO_14443_SIM): Remove dead cmd.

common/crc16.h: New file.
common/crc16.c: Modify accordingly.
common/iso14443crc.h: New file.
common/iso14443_crc.c: Rename to
common/iso14443crc.c: and modify accordingly.

armsrc/lfops.c, armsrc/iso14443.c,
armsrc/iso14443a.c: include .h files from
the common directory instead of including the c files.

common/Makefile.common, armsrc/Makefile: Modify accordingly.
2010-02-04 01:27:07 +00:00
daniel.boteanu
1eb7596aad Added hitune command for continuously measuring HF antenna tuning 2010-01-09 14:59:42 +00:00
henryk@ploetzli.ch
4ab6281664 Make the bootrom correctly nack in case of flash write error (e.g. due to lock bits) 2010-01-01 14:56:25 +00:00
roel@libnfc.org
6c5ad03860 mifare usb update 2009-12-30 00:18:35 +00:00
bushing
1dea88f976 fix some ARM build fail 2009-12-22 12:48:33 +00:00
bushing
3a8464f067 change usb_cmd struct to be more sane
wean ourselves off translate.h
2009-12-22 12:34:24 +00:00
henryk@ploetzli.ch
68d9d60a4d Add generic CRC calculation code 2009-11-25 20:41:41 +00:00
edouard@lafargue.name
c86cc30801 Added the new SRIX4K reading routine, thanks to jonor. Regression tested against SRI512 tags,
but I do not have SRIX4K tags to test this with.
2009-11-23 09:34:57 +00:00
henryk@ploetzli.ch
dcc10e5e31 Add basic communication shell for Legic RF in reader mode. Needs the new receive function of hi_read_tx. 2009-11-06 15:37:53 +00:00
henryk@ploetzli.ch
a7247d858b Add basic LEGIC RF communication in tag simulation mode 2009-10-12 11:47:39 +00:00
henryk@ploetzli.ch
bb4d2cca76 Add defines for TIMER_CLOCK? 2009-10-12 11:46:50 +00:00
henryk@ploetzli.ch
5fc8250f7f Add command to manually set ADC mux source 2009-10-09 15:57:07 +00:00
d18c7db
6949aca9fa Pushed standard AT91 defines into main code 2009-09-29 12:13:41 +00:00
henryk@ploetzli.ch
5d32e2bf60 Rename at91sam7s512.h for case sensitive filesystems 2009-09-28 11:29:17 +00:00
d18c7db
aafd94b868 Change over to standard AT91 header file 2009-09-27 20:46:47 +00:00
henryk@ploetzli.ch
8fcbf652da New bootrom
+ Add common area at end of RAM to communicate between main os and bootrom
+ Lower stack end to make room for common area
+ Implement CMD_DEVICE_INFO in both OS and bootrom to give information about the current state and supported features
+ Allow hands-free firmware update: When CMD_START_FLASH is received over USB in OS mode, the device will reset and enter the bootrom
  Pressing the button in hands-free update mode takes precedence: releasing the button will immediately abort firmware update and 
  perform a reset. Do not press the button.
+ Require each flash sequence to be preceded by a CMD_START_FLASH to set up the boundaries for the following flash sequence
  Not compatible with linux flasher before SVN revision 200
  Currently no compatible flasher for Windows. WINDOWS USERS: DO NOT UPDATE YOUR BOOTROM YET
+ Protect bootrom flash area unless magic unlock sequence is given in CMD_START_FLASH
2009-09-01 14:44:38 +00:00
henryk@ploetzli.ch
a5b1ba2023 New flash tool, needs to be ported to Windows.
+ [f]ast is gone, current mode will be autodetected
+ uses hands-free firmware update if supported by the bootrom (to be committed)
+ uses new bootrom safety features against accidental misflashes (to be committed)
+ supports S19 files with base address 0x0 or base address 0x100000
+ supports old bootroms which expect 0x0 and new bootroms which expect 0x100000 (to be committed)
+ new argument style: first argument is comma-separated (no spaces!) list of partition names, remaining arguments are file names
  os and fpga may be abbreviated, bootrom must be given in full
  Examples:   ./flasher os ../armsrc/obj/osimage.s19
              ./flasher bootrom,o,f ../bootrom/obj/bootrom.s19 ../armsrc/obj/osimage.s19 ../armsrc/obj/fpgaimage.s19
2009-09-01 14:35:13 +00:00
henryk@ploetzli.ch
d5d42c0a4b Add defines for reset type 2009-09-01 05:00:33 +00:00
henryk@ploetzli.ch
0fa9ca5b53 Add command and code for bidirectional LF emulation of Hitag2. Should be extended for other types of tags 2009-08-28 21:56:43 +00:00
henryk@ploetzli.ch
aae8787c03 Add defines for the timer/counter peripheral 2009-08-28 21:53:54 +00:00
henryk@ploetzli.ch
8a6aec16d8 Implement version information storage and retrieval for the bootrom and the osimage.
Use perl to create the version information (thereby re-creating the perl dependency and adding an svn dependency) but fall back in case of missing perl or svn
2009-08-28 06:40:44 +00:00
henryk@ploetzli.ch
ba8a80b30c Add version command 2009-08-28 00:37:28 +00:00
skamkar
50722269b6 detect usb or no usb for standalone mode [ryan] 2009-08-08 07:42:51 +00:00
d18c7db
7381e8f2f2 Added tiread command to demod TI tags on the PM3 2009-08-06 12:53:06 +00:00
d18c7db
9bea179a71 added tiwrite command, split LF code from appmain into lfops.c 2009-07-25 11:47:43 +00:00
skamkar
ec130f9c59 part of readmem function 2009-07-13 08:24:04 +00:00
adam@algroup.co.uk
7f3480429b add 'detectreader' command - listen for external reader fields 2009-07-07 17:19:42 +00:00
adam@algroup.co.uk
846225d575 #defines for ADC channels so we can see what's what 2009-07-06 16:40:03 +00:00
adam@algroup.co.uk
959baa89f7 send LF commands to TAG (locomread) 2009-07-04 16:45:17 +00:00
adam@algroup.co.uk
f23e056d95 added 'buffclear' - when you absolutely positivley must clear every bit in the room 2009-07-03 10:17:52 +00:00
adam@algroup.co.uk
0673512814 enable flashing from linux 2009-06-28 22:13:04 +00:00
edouard@lafargue.name
aa4d9d9b73 - Added new Makefile.linux in bootrom directory
- Cleaned up Makefile.linux in armsrc directory
- Added Linux toolchain build script in tools directory
- Made LCD support optional (disabled by default) in armsrc
- Small formatting changes
2009-04-25 21:19:59 +00:00
edouard@lafargue.name
fb25b48308 Added a new function to read ISO14443-B ST Microelectronics SRI512 memory tags.
I have a problem with CRC though: sometimes it works, sometimes not, I have no
clue why, I must be doing something wrong with the CRC calculation routine...
2009-04-16 08:37:24 +00:00
edouard@lafargue.name
30f2a7d38f Added LF frequency adjustments from d18c7db, cleaned up code,
typo fixes in iso14443a code, added the missing "tools" directory,
added initial elements for online/offline detection for commands.
2009-04-15 08:09:06 +00:00
edouard@lafargue.name
6658905f18 Initial commit for the firmware. Used the 20090306_ela version as baseline.
It is identical to the popular 20081211, with the doob addition (20090301), a
linux client, and two additional commands for LF analysis. Let me know if
you find issues here!
2009-04-09 06:43:20 +00:00