+++ /dev/null
-# Copyright (C) 2009 Ubixum, Inc.
-#
-# This library is free software; you can redistribute it and/or
-#
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
-from time import sleep
-from fx2 import fx2
-
-f=fx2.fx2()
-
-# use this functions 1st
-
-def openfx2(vid=0x04b4,pid=0x0082,idx=0):
- f.open(vid,pid,idx)
-
-def reset_device(reset):
- print reset and "Put device in reset" or "Set device to run"
- write_ram (0xe600,reset and '\x01' or '\x00', 1)
-
-def write_ram(addr,data,length):
- transferred=0
- while(transferred<length):
- this_transfer_size=length-transferred>1024 and 1024 or length-transferred
- buf=data[transferred:]
- ret=f.do_usb_command( buf,
- 0x40,
- 0xa0,
- addr+transferred, 0,
- this_transfer_size )
- if (ret>0):
- print "wrote %d bytes" % ret
- transferred+=ret
- else:
- print "Error: %d" % ret
- return
-
-def reset_bix(filename):
- """
- Use this function to reset your firmware. You'll need to reopen the device afterward.
- """
- reset_device(True)
- bix=open(filename).read()
- print "loading bix file of length: %d" % len(bix)
- write_ram( 0, bix,len(bix) );
- reset_device(False)
- f.close()
-