]>
Commit | Line | Data |
---|---|---|
1 | -- this script writes bytes 8 to 256 on the Legic MIM256 | |
2 | example = "Script writes to Legic Prime Tag from position 0x07 until 0xFF with the value 0x01" | |
3 | author = "Mosci" | |
4 | desc = | |
5 | [[ | |
6 | This is a script which writes value 0x01 to bytes from position 0x07 until 0xFF on a Legic Prime Tag (MIM256 or MIM1024) | |
7 | (created with 'hf legic save my_dump.hex') | |
8 | ||
9 | optional arguments : | |
10 | -h - Help text | |
11 | ||
12 | Examples : | |
13 | script run legic_buffer2card | |
14 | ]] | |
15 | ||
16 | local utils = require('utils') | |
17 | local getopt = require('getopt') | |
18 | --- | |
19 | -- This is only meant to be used when errors occur | |
20 | function oops(err) | |
21 | print("ERROR: ",err) | |
22 | return nil, err | |
23 | end | |
24 | --- | |
25 | -- Usage help | |
26 | function help() | |
27 | print(desc) | |
28 | print("Example usage") | |
29 | print(example) | |
30 | end | |
31 | -- | |
32 | -- simple loop-write from 0x07 to 0xff | |
33 | function main() | |
34 | ||
35 | -- parse arguments for the script | |
36 | for o, a in getopt.getopt(args, 'h') do | |
37 | if o == "h" then return help() end | |
38 | end | |
39 | ||
40 | local cmd = '' | |
41 | local i | |
42 | for i = 7, 255 do | |
43 | cmd = ('hf legic write 0x%02x 0x01'):format(i) | |
44 | print(cmd) | |
45 | core.clearCommandBuffer() | |
46 | core.console(cmd) | |
47 | ||
48 | -- got a 'cmd-buffer overflow' on my mac - so just wait a little | |
49 | -- works without that pause on my linux-box | |
50 | utils.Sleep(0.1) | |
51 | end | |
52 | end | |
53 | ||
54 | main() |