Commit graph

49 commits

Author SHA1 Message Date
iceman1001
5a08545794 ADD: added a compiling flag -DHAS_512_FLASH i common/Makefile.common, to be used for PM3 devices with 512KB. Original commit from @hewitt 2016-10-07 00:12:09 +02:00
iceman1001
62577a62ae FIX: Much of my added extra legic code is commented away now.
FIX: the gcc6.1.1 warning broke my gcc 4.8.4 build env..
2016-09-26 20:21:31 +02:00
iceman1001
fada2feaf7 ADD: @ikarus / @pwpiwi solution to stop treating GCC 6.1.1 warnings like errors. Should compile fine now on GCC6.1.1 2016-09-26 20:02:40 +02:00
iceman1001
87342aadbc CHG: adjusted timing according to @sentinel 's traces 2016-09-14 16:18:04 +02:00
iceman1001
ad493abc2a CHG: changed to the new flasher command. 2016-04-21 10:32:06 +02:00
iceman1001
ff4ff94b25 DEL: Removed old comment, after I've been compiling and testing all -W parameters in it. Didn't find any new warnings. Which is good. 2016-03-01 06:58:32 +01:00
iceman1001
1d0ccbe04b ADD: added the "hf snoop" patch original from @Enio, rearranged by @Etmatrix.
ADD:  added the "t55x7" refactoring by @marshmellow42
2015-10-27 21:47:21 +01:00
iceman1001
9783989b40 ADD: pwpiwi 's FPGA compress 2015-06-25 12:22:34 +02:00
iceman1001
7c99b4f782 CHG: Added the parameters -fdata-sections -ffunction-sections to common/Makefile.common for making the .elf filesize smaller.
REF: https://github.com/Proxmark/proxmark3/issues/83
2015-03-30 16:27:07 +02:00
iceman1001
0ec548dc21 Merge branch 'master' of https://github.com/Proxmark/proxmark3
Conflicts:
	armsrc/lfops.c
	client/cmddata.c
	client/cmdlf.c
	client/cmdlft55xx.c
	client/cmdlft55xx.h
	client/scripts/test_t55x7_bi.lua
2015-03-24 11:45:31 +01:00
iceman1001
b1db38e1b7 ADD: piwi's compiler flags -O2 2015-03-18 20:29:58 +01:00
iceman1001
64d1b4efc9 Merge branch 'master' of https://github.com/Proxmark/proxmark3
Conflicts:
	armsrc/Makefile
	armsrc/appmain.c
	armsrc/apps.h
	armsrc/epa.c
	armsrc/iclass.c
	armsrc/iso14443a.c
	armsrc/iso14443a.h
	armsrc/iso15693.c
	armsrc/lfops.c
	armsrc/mifarecmd.c
	armsrc/mifareutil.c
	armsrc/mifareutil.h
	armsrc/string.h
	armsrc/util.h
	bootrom/bootrom.c
	client/Makefile
	client/cmddata.c
	client/cmddata.h
	client/cmdhf.c
	client/cmdhf14a.c
	client/cmdhf14b.c
	client/cmdhf15.c
	client/cmdhficlass.c
	client/cmdhfmf.c
	client/cmdhfmfu.c
	client/cmdlf.c
	client/cmdlfem4x.c
	client/cmdlfhid.c
	client/cmdlfhitag.c
	client/cmdlfio.c
	client/cmdmain.c
	client/data.h
	client/flash.c
	client/graph.c
	client/graph.h
	client/loclass/elite_crack.c
	client/loclass/fileutils.c
	client/lualibs/commands.lua
	client/lualibs/html_dumplib.lua
	client/lualibs/mf_default_keys.lua
	client/lualibs/utils.lua
	client/mifarehost.c
	client/nonce2key/crapto1.c
	client/proxmark3.c
	client/scripting.c
	client/scripts/tnp3dump.lua
	client/scripts/tnp3sim.lua
	client/scripts/tracetest.lua
	common/Makefile.common
	common/cmd.c
	common/cmd.h
	common/lfdemod.c
	common/lfdemod.h
	common/usb_cdc.c
	common/usb_cdc.h
	include/usb_cmd.h
2015-01-29 21:39:33 +01:00
iceman1001
23b598ee23 CHG: Minor code clean up.
ADD: crc16.c - new crc16_ccitt calc.
2015-01-07 20:40:22 +01:00
iceman1001
f6c18637ca chg: LF t55xx trace
new:  LF t55xx info
2014-10-06 19:42:50 +02:00
iceman1001
f38a152863 First check in. 2014-09-11 23:23:46 +02:00
roel@libnfc.org
28fdb04fd8 Finally, rewrote bootrom and flasher program, much faster now 2013-02-28 15:11:52 +00:00
roel@libnfc.org
902cb3c00b major USB update 2012-12-04 23:39:18 +00:00
dn337t@gmail.com
18d4eec685 removed commented out CFLAGS setting (probably committed by mistake) 2012-07-03 12:14:46 +00:00
dekoninggans@gmail.com
5f60ac5716 Changed arm-eabi- to arm-none-eabi (new convention) 2012-06-28 13:56:21 +00:00
roel@libnfc.org
245e844e80 fix temp changes 2011-09-05 11:48:08 +00:00
roel@libnfc.org
38c4979dae fix compiling under MAC OSX 2011-09-05 11:44:45 +00:00
adam@algroup.co.uk
bd84638614 create target for binary file archive (linux version) 2010-05-09 12:17:42 +00:00
yobibe
b38742c92c Fix small issue in make help 2010-03-29 10:36:26 +00:00
izsh@fail0verflow.com
e7227419e5 Don't modify the PATH to prevent from mixing multiple arm-eabi compilers in the PATH 2010-03-04 00:33:05 +00:00
adam@algroup.co.uk
09c1ce4bdd put arm-eabi compiler back on path for those that have followed devkitpro installation instructions 2010-02-27 09:05:03 +00:00
marcansoft
98540684df Link using gcc and get rid of the LIBGCC stuff
GCC knows how to find libgcc, and the proper way to link C code is to
use gcc, not ld.
2010-02-26 14:03:03 +00:00
izsh@fail0verflow.com
a63deed172 common/Makefile.common: Revert the DEVKITARM change. Just need to put the cross compiler in the path. No need to hardcode for a given distribution and a given version. 2010-02-26 13:06:07 +00:00
adam@algroup.co.uk
30351384b6 correct paths for devkitPro Linux development environment 2010-02-22 12:36:42 +00:00
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
c062856a74 But let people override CROSS if they reall want to ;) 2010-02-20 21:32:09 +00:00
marcansoft
272e55ca64 Switch compiler to arm-eabi instead of arm-elf
Non-EABI has been deprecated for a while and in fact won't build
with interworking support these days. Configuring the latest
gcc/binutils for arm-eabi works out of the box, so use that.
2010-02-20 21:28:29 +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
roel@libnfc.org
6c5ad03860 mifare usb update 2009-12-30 00:18:35 +00:00
henryk@ploetzli.ch
a665f74081 Use the interworking version of libgcc.a 2009-12-22 16:40:03 +00:00
bushing
d5be6f7cd4 fix OS detection, libgcc detection 2009-12-22 12:50:34 +00:00
d18c7db
6949aca9fa Pushed standard AT91 defines into main code 2009-09-29 12:13:41 +00:00
henryk@ploetzli.ch
d4086fe2b7 Re-enable -Wall 2009-09-06 19:19:38 +00:00
henryk@ploetzli.ch
64b8119836 Add make targets for flashing (Windows version untested) 2009-09-05 22:45:53 +00:00
henryk@ploetzli.ch
83288efc7d Remove unused code from hitag2.c
Mark intermittently used code in iso15693.c as attribute unused
Change CFLAGS to -Werror to enforce warning free code
2009-09-05 22:17:18 +00:00
henryk@ploetzli.ch
4f3bd9738f Fix mkversion.pl for the case where the global svn revision is different from the last changed revision 2009-09-01 22:56:07 +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
db335b3de0 Make objcopy call less verbose
Add master Makefile
2009-08-30 22:35:12 +00:00
henryk@ploetzli.ch
4271e82d56 Only re-compile version.c as often as necessary
Make bootrom version information pointer a proper symbol (with hacky ld strangeness workaround)
2009-08-29 06:14:28 +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
e73e717239 Add Makefile for fpga directory (Windows codepath is untested, in any case, go.bat is still there)
Retire rbt2c.pl, instead use objcopy to directly convert the .bit file into an .o that can be linked with the flash image
Rename armsrc/fpga.c to armsrc/fpgaloader.c (since there is now a new fpga.o, created from fpga.bit)
Remove fpgaimg.c from subversion, add fpga.bit
Instead of creating fpgaimage.elf and osimage.elf separately, now create a joined fullimage.elf 
  first (obsoleting ldscript-full), then extract only the fpga and os sections with objcopy
  (This creates unspecific warnings about an empty segment, need to investigate)
Implement a rudimentary .bit parser in the firmware, use that to locate the bitstream in the new
  fpgaimage (which is just a plain copy of the fpga.bit file) and send it to the FPGA
  The code will check the format that's in flash and fall back to the legacy format
2009-08-27 23:29:49 +00:00
henryk@ploetzli.ch
2bfed17db2 Add a common linker script with the memory map for the complete project
Use the correct physical addresses in the memory map, and instead translate the addresses during postprocessing with objcopy
2009-08-27 16:07:35 +00:00
henryk@ploetzli.ch
8652988d62 Merge linker scripts in bootrom to have a single linker script for the bootloader proper (previously known as bootrom-merged.s19)
Remove the now unnecessary files (merge-srec.pl, ldscript-ram-jtag)
Note that this drops the dependency on perl for bootrom build, so end-users who don't touch the FPGA bitstream will not need perl anymore
2009-08-27 04:25:34 +00:00
henryk@ploetzli.ch
0fc0fca583 Move most rules to Makefile.common
Add automatic dependency generation
Compile ISO14443 files in ARM mode, as was the case with the Linux Makefile before
2009-08-26 17:34:19 +00:00
henryk@ploetzli.ch
7e931bbd32 Consolidate Linux/Windows Makefiles into one, see http://www.proxmark.org/forum/topic/312/consolidating-makefile/
+ Needs GNU make for Windows, a new release of the Windows development environment will follow
 + Is based on the Windows Makefile, so will build everything in Thumb mode, doesn't have flash commands (yet)
2009-08-26 11:17:05 +00:00