# Example GDB script # # There are several ways to execute a GDB script: # --command=FILE Execute GDB commands from FILE. (program argument) # .gdbinit (auto-startup script for newer GDB versions) # gdb.ini (auto-startup script for older GDB versions) # source FILE (at GDB prompt) # show something echo GP32 JTAG flash program loader\n # connect & reset target remote localhost:8888 monitor reset # initialize registers that were captured in simple .gxb program monitor long 0x14000000 = 0x11111110 monitor long 0x14000004 = 0x00000400 monitor long 0x14000008 = 0x00000f00 monitor long 0x1400000c = 0x00001110 monitor long 0x14000010 = 0x00001110 monitor long 0x14000014 = 0x00001110 monitor long 0x14000018 = 0x00001110 monitor long 0x1400001c = 0x00018000 monitor long 0x14000020 = 0x00018000 monitor long 0x14000024 = 0x00890543 monitor long 0x14000028 = 0x00000016 monitor long 0x1400002c = 0x00000020 monitor long 0x14000030 = 0x00000020 monitor long 0x14400000 = 0x00004c00 monitor long 0x14400008 = 0xfdffbbfb monitor long 0x14400010 = 0x00000400 monitor long 0x14600000 = 0x00000000 monitor long 0x14600004 = 0x00000000 monitor long 0x14600008 = 0x00000000 monitor long 0x14600018 = 0x00000000 monitor long 0x14600020 = 0x00000000 monitor long 0x14600024 = 0x00000000 monitor long 0x14600028 = 0x00000000 monitor long 0x14600038 = 0x00000000 monitor long 0x14600040 = 0x0c7b3900 monitor long 0x14600044 = 0x75508010 monitor long 0x14600048 = 0x50d00048 monitor long 0x14600058 = 0x00000004 monitor long 0x14600060 = 0x752001ac monitor long 0x14600064 = 0x0c7b2800 monitor long 0x14600068 = 0x50c00100 monitor long 0x14600078 = 0x00000002 monitor long 0x14800000 = 0x007d07d0 monitor long 0x14800004 = 0x00069032 monitor long 0x14800008 = 0x00058042 monitor long 0x1480000c = 0x00004768 monitor long 0x14800010 = 0x00000004 monitor long 0x14800014 = 0x00000003 monitor long 0x14a00000 = 0x01d80479 monitor long 0x14a00004 = 0x014fc081 monitor long 0x14a00008 = 0x0030ef02 monitor long 0x14a0000c = 0x00000004 monitor long 0x14a00010 = 0x00140700 monitor long 0x14a00014 = 0x06200000 monitor long 0x14a00018 = 0x00012c00 monitor long 0x14a0001c = 0x000000f0 monitor long 0x14a00020 = 0x00000000 monitor long 0x14a00024 = 0x00000000 monitor long 0x14a00028 = 0x00000000 monitor long 0x14a0002c = 0x0000a5a5 monitor long 0x14a00030 = 0x0ba5da65 monitor long 0x14a00034 = 0x000a5a5f monitor long 0x14a00038 = 0x00000d6b monitor long 0x14a0003c = 0x0eb7b5ed monitor long 0x14a00040 = 0x00007dbe monitor long 0x14a00044 = 0x0007ebdf monitor long 0x14a00048 = 0x07fdfbfe monitor long 0x14a0004c = 0x00000000 monitor long 0x14a00050 = 0x00000000 monitor long 0x15000000 = 0x00000003 monitor long 0x15000004 = 0x00000000 monitor long 0x15000008 = 0x00000000 monitor long 0x1500000c = 0x00000000 monitor char 0x15000020 = 0x00 monitor char 0x15000024 = 0x00 monitor long 0x15000028 = 0x00000036 monitor long 0x15004000 = 0x00000000 monitor long 0x15004004 = 0x00000000 monitor long 0x15004008 = 0x00000000 monitor long 0x1500400c = 0x00000000 monitor char 0x15004020 = 0x00 monitor char 0x15004024 = 0x00 monitor long 0x15004028 = 0x00000000 monitor long 0x15100000 = 0x00006333 monitor long 0x15100004 = 0x00030033 monitor long 0x15100008 = 0x005a2909 monitor long 0x1510000c = 0x00000014 monitor long 0x15100010 = 0x00000000 monitor long 0x15100018 = 0x00000028 monitor long 0x1510001c = 0x00000000 monitor long 0x15100024 = 0x00000000 monitor long 0x15100028 = 0x00000000 monitor long 0x15100030 = 0x00000000 monitor long 0x15100034 = 0x00000000 monitor long 0x1510003c = 0x00002961 monitor long 0x15200140 = 0x00000000 monitor long 0x15200144 = 0x00000020 monitor long 0x1520014c = 0x0000002a monitor long 0x15200154 = 0x0000000a monitor long 0x15200160 = 0x00000000 monitor long 0x15200164 = 0x00000002 monitor long 0x1520016c = 0x000000ef monitor long 0x15200180 = 0x00000000 monitor long 0x15200184 = 0x00000008 monitor long 0x15200190 = 0x00000000 monitor long 0x15200194 = 0x00000008 monitor long 0x152001a0 = 0x000000c0 monitor long 0x152001a4 = 0x00000008 monitor long 0x152001a8 = 0x00000000 monitor long 0x152001b0 = 0x00000080 monitor long 0x152001b4 = 0x00000008 monitor long 0x152001b8 = 0x00000000 monitor long 0x152001c0 = 0x00000001 monitor long 0x152001c4 = 0x00000001 monitor long 0x152001c8 = 0x00000040 monitor long 0x152001cc = 0x00000100 monitor long 0x15300000 = 0x00000000 monitor long 0x15300004 = 0x00008000 monitor long 0x15300008 = 0x00005c16 monitor long 0x15400000 = 0x00000000 monitor long 0x15400004 = 0x00000000 monitor long 0x15400008 = 0x00000000 monitor long 0x1540000c = 0x00000000 monitor long 0x15508000 = 0x0000010e monitor long 0x15508004 = 0x00000089 monitor long 0x15508008 = 0x000000a5 monitor long 0x1550800c = 0x00000a00 monitor short 0x15508010 = 0x0000 monitor long 0x15600000 = 0x000004ff monitor long 0x15600004 = 0x00000000 monitor long 0x15600008 = 0x00005555 monitor long 0x1560000c = 0x0000ff22 monitor long 0x15600010 = 0x00000000 monitor long 0x15600014 = 0xaaaaaaaa monitor long 0x15600018 = 0x00000117 monitor long 0x1560001c = 0x0000ffff monitor long 0x15600020 = 0x000150aa monitor long 0x15600024 = 0x000007ff monitor long 0x15600028 = 0x0000000f monitor long 0x1560002c = 0x00540560 monitor long 0x15600030 = 0x000007cb monitor long 0x15600034 = 0x00000e00 monitor long 0x15600038 = 0x00000aaa monitor long 0x1560003c = 0x0000007f monitor long 0x15600040 = 0x0000003f monitor long 0x15600044 = 0x00003caa monitor long 0x15600048 = 0x000003fd monitor long 0x1560004c = 0x0000006f monitor long 0x15600050 = 0x00000000 monitor long 0x15600054 = 0x00000000 monitor long 0x15600058 = 0x00000700 monitor char 0x15700040 = 0x00 monitor char 0x15700044 = 0x00 monitor char 0x15700050 = 0x00 monitor char 0x15700054 = 0x00 monitor char 0x15700058 = 0x00 monitor char 0x1570005c = 0x00 monitor char 0x15700060 = 0x01 monitor char 0x15700064 = 0x01 monitor char 0x15700068 = 0x00 monitor char 0x1570006c = 0x00 monitor char 0x15700070 = 0x27 monitor char 0x15700074 = 0x06 monitor char 0x15700078 = 0x3f monitor char 0x1570007c = 0x3f monitor char 0x15700080 = 0x07 monitor char 0x15700084 = 0x1f monitor char 0x15700088 = 0xff monitor long 0x15800000 = 0x00003fc4 monitor long 0x15900000 = 0x00000000 monitor long 0x15900008 = 0x00000004 monitor long 0x1590000c = 0x00000000 monitor long 0x15900010 = 0x00000000 monitor char 0x15a00000 = 0x00 monitor char 0x15a00004 = 0x00 monitor char 0x15a00008 = 0x00 monitor char 0x15a00014 = 0x00 monitor short 0x15a00018 = 0x0000 monitor char 0x15a00030 = 0x00 monitor short 0x15a00034 = 0x00000000 monitor char 0x15a0003c = 0x00 # display test #monitor long 0x0C400000 = 0xFFFFFFFF #monitor long 0x0C400004 = 0x00000000 #monitor long 0x0C400008 = 0xFFFFFFFF #monitor long 0x0C40000C = 0x00000000 #monitor long 0x0C400010 = 0xFFFFFFFF #monitor long 0x0C400014 = 0x00000000 #monitor long 0x0C400018 = 0xFFFFFFFF #monitor long 0x0C40001C = 0x00000000 # test memory #monitor long 0x0C000000 = 0x12345678 #echo \nNext value should be 0x12345678, not 0x12125656 (memory setup check)\n #x 0x0C000000 # load and run load C:\Dev\GP32\Projects\FlashTool\FlashTool.elf monitor runfrom 0x0C000000 # quit gdb quit