blob: b2537d8ba6369ee74f40886ceb6108cdced5ccc3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
require_relative './microboot'
if ARGV[0]
if ARGV[0].end_with? '.hex'
puts "parsing input file as intel hex"
test_data = HexProgram.new(open ARGV[0]).binary
else
puts "parsing input file as raw binary"
test_data = open(ARGV[0]).read
end
else
raise "Pass intel hex or raw binary as argument to script"
end
#test_data += ("\xFF" * 64)
puts "Plug in programmable device now: (waiting)"
sleep 0.25 while MicroBoot.all.length == 0
ubootable = MicroBoot.all.first
puts "Attached to device: #{ubootable.inspect}"
#puts "Attempting to write '#{test_data.inspect}' to first thinklet's program memory"
#puts "Bytes: #{test_data.bytes.to_a.inspect}"
sleep(0.25) # some time to think?
puts "Attempting to write supplied program in to device's memory"
ubootable.program = test_data
puts "Great! Starting program..."
ubootable.finished # let thinklet know it can go do other things now if it likes
puts "All done!"
|