Пример #1
0
    patcher.nopout((0x8034ab8 + 0x2))
    patcher.nopout((0x8034ace))
    patcher.nopout((0x8034ace + 0x2))
    patcher.nopout((0x8049f9a))
    patcher.nopout((0x8049f9a + 0x2))
    patcher.nopout((0x804a820))
    patcher.nopout((0x804a820 + 0x2))
    patcher.nopout((0x804aae4))
    patcher.nopout((0x804aae4 + 0x2))
    patcher.nopout((0x804af70))
    patcher.nopout((0x804af70 + 0x2))
    patcher.nopout((0x804b9fc))
    patcher.nopout((0x804b9fc + 0x2))

    #Marks the version as "md380tools"
    patcher.setwstring(0x080d0b6c, "MD380Tools Ver.")

    #Fix some bad grammar
    patcher.setwstring(0x080f9a94, "No Fix")

    #Change the manufacturer string. *Never Worked...*
    #    patcher.setstring(0x080f9588,
    #                      "Travis Goodspeed KK4VCZ");
    #Change the device name.
    patcher.setstring(0x080d0eb4, "Patched MD-380/390G")

    # freeing ~200k for code patches
    patcher.ffrange(0x0809bda8, 0x80d0614)

    #This mirrors the RESET vector to 0x080C020, for use in booting.
    patcher.setword(0x0800C020, patcher.getword(0x0800C004), 0x00000000)
Пример #2
0
    patcher.nopout((0x8034ab8 + 0x2))
    patcher.nopout((0x8034ace))
    patcher.nopout((0x8034ace + 0x2))
    patcher.nopout((0x8049f9a))
    patcher.nopout((0x8049f9a + 0x2))
    patcher.nopout((0x804a820))
    patcher.nopout((0x804a820 + 0x2))
    patcher.nopout((0x804aae4))
    patcher.nopout((0x804aae4 + 0x2))
    patcher.nopout((0x804af70))
    patcher.nopout((0x804af70 + 0x2))
    patcher.nopout((0x804b9fc))
    patcher.nopout((0x804b9fc + 0x2))

    # Marks the version as "md380tools"
    patcher.setwstring(0x080d0b6c,
                       "MD380Tools Ver.")

    # Fix some bad grammar
    patcher.setwstring(0x080f9a94,
                       "No Fix")

    # Change the manufacturer string. *Never Worked...*
    #    patcher.setstring(0x080f9588,
    #                      "Travis Goodspeed KK4VCZ");
    # Change the device name.
    patcher.setstring(0x080d0eb4,
                      "Patched MD-380/390G")

    # freeing ~200k for code patches
    patcher.ffrange(0x0809bda8, 0x80d0614)
Пример #3
0
    patcher.ffrange(0x0809aee8, 0x080cf754)

    # This mirrors the RESET vector to 0x080C020, for use in booting.
    patcher.setword(0x0800C020, patcher.getword(0x0800C004), 0x00000000)

    # This makes RESET point to our stub below.
    patcher.setword(0x0800C004, 0x0809af00 + 1)

    # This stub calls the target RESET vector,
    # if it's not FFFFFFFF.
    patcher.sethword(0x0809af00, 0x4840)
    patcher.sethword(0x0809af02, 0x2100)
    patcher.sethword(0x0809af04, 0x3901)
    patcher.sethword(0x0809af06, 0x4508)
    patcher.sethword(0x0809af08, 0xd100)
    patcher.sethword(0x0809af0a, 0x483c)
    patcher.sethword(0x0809af0c, 0x4700)

    # Stores the RESET handler for our stub.
    patcher.setword(0x0809affc, patcher.getword(0x0800C020), 0xFFFFFFFF)

    # Marks the version as "md380tools"
    patcher.setwstring(0x080cfcac, "MD380Tools Ver.")

    # Change the manufacturer string.
    patcher.setstring(0x080f86c8, "Travis Goodspeed KK4VCZ")
    # Change the device name.
    patcher.setstring(0x080cfff4, "Patched MD380")

    patcher.export("patched.img")
Пример #4
0
    patcher.setword(0x0800C004,
                    0x0809af00 + 1)

    # This stub calls the target RESET vector,
    # if it's not FFFFFFFF.
    patcher.sethword(0x0809af00, 0x4840)
    patcher.sethword(0x0809af02, 0x2100)
    patcher.sethword(0x0809af04, 0x3901)
    patcher.sethword(0x0809af06, 0x4508)
    patcher.sethword(0x0809af08, 0xd100)
    patcher.sethword(0x0809af0a, 0x483c)
    patcher.sethword(0x0809af0c, 0x4700)

    # Stores the RESET handler for our stub.
    patcher.setword(0x0809affc,
                    patcher.getword(0x0800C020),
                    0xFFFFFFFF)

    # Marks the version as "md380tools"
    patcher.setwstring(0x080cfcac,
                       "MD380Tools Ver.")

    # Change the manufacturer string.
    patcher.setstring(0x080f86c8,
                      "Travis Goodspeed KK4VCZ")
    # Change the device name.
    patcher.setstring(0x080cfff4,
                      "Patched MD380")

    patcher.export("patched.img")
Пример #5
0
    #             0x0809cf04      0139           subs r1, 1
    #             0x0809cf06      0845           cmp r0, r1
    #         ,=< 0x0809cf08      00d1           bne 0x809cf0c
    #         |   0x0809cf0a      3c48           ldr r0, [pc, 0xf0]          ; [0x809cffc:4]=0x80fa969 
    #         `-> 0x0809cf0c      0047           bx r0
    # [0x0809cf00]> 

    
    #Stores the RESET handler for our stub.
    patcher.setword(0x809cffc,
                    patcher.getword(0x0800C020),
                    0xFFFFFFFF);
    
    
    #Marks the version as "md380tools"
    patcher.setwstring(0x080d14d8,
                      "MD380Tools Ver.");
    
    #Change the manufacturer string.
    patcher.setstring(0x080f9e4c,
                      "Travis Goodspeed KK4VCZ");
    #Change the device name.
    patcher.setstring(0x080d1820,
                      "Patched MD380");
    
    #Fixes a typo in 2.032.  Unneeded in 2.034.
    patcher.setwstring(0x080d17e8,
                      "Repeater Slot"); #was 'Repeatar Slot'
    
    patcher.export("patched.img");
    
Пример #6
0
    patcher.sethword(0x0809cf06, 0x4508)
    patcher.sethword(0x0809cf08, 0xd100)
    patcher.sethword(0x0809cf0a, 0x483c)
    patcher.sethword(0x0809cf0c, 0x4700)
    # [0x0809cf00]> pd 7
    #             0x0809cf00      4048           ldr r0, [pc, 0x100]         ; [0x809d004:4]=-1
    #             0x0809cf02      0021           movs r1, 0
    #             0x0809cf04      0139           subs r1, 1
    #             0x0809cf06      0845           cmp r0, r1
    #         ,=< 0x0809cf08      00d1           bne 0x809cf0c
    #         |   0x0809cf0a      3c48           ldr r0, [pc, 0xf0]          ; [0x809cffc:4]=0x80fa969
    #         `-> 0x0809cf0c      0047           bx r0
    # [0x0809cf00]>

    #Stores the RESET handler for our stub.
    patcher.setword(0x809cffc, patcher.getword(0x0800C020), 0xFFFFFFFF)

    #Marks the version as "md380tools"
    patcher.setwstring(0x080d14d8, "MD380Tools Ver.")

    #Change the manufacturer string.
    patcher.setstring(0x080f9e4c, "Travis Goodspeed KK4VCZ")
    #Change the device name.
    patcher.setstring(0x080d1820, "Patched MD380")

    #Fixes a typo in 2.032.  Unneeded in 2.034.
    patcher.setwstring(0x080d17e8, "Repeater Slot")
    #was 'Repeatar Slot'

    patcher.export("experiment.img")
Пример #7
0
    patcher.nopout((0x8034ab8 + 0x2))
    patcher.nopout((0x8034ace))
    patcher.nopout((0x8034ace + 0x2))
    patcher.nopout((0x8049f9a))
    patcher.nopout((0x8049f9a + 0x2))
    patcher.nopout((0x804a820))
    patcher.nopout((0x804a820 + 0x2))
    patcher.nopout((0x804aae4))
    patcher.nopout((0x804aae4 + 0x2))
    patcher.nopout((0x804af70))
    patcher.nopout((0x804af70 + 0x2))
    patcher.nopout((0x804b9fc))
    patcher.nopout((0x804b9fc + 0x2))

    # Marks the version as "md380tools"
    patcher.setwstring(0x080d0b6c,
                       "MD380Tools 2.0")

    # Fix some bad grammar
    patcher.setwstring(0x080f9a94,
                       "No SatFix")

    # Change the manufacturer string. *Never Worked...*
    #    patcher.setstring(0x080f9588,
    #                      "Travis Goodspeed KK4VCZ");
    # Change the device name.
    patcher.setstring(0x080d0eb4,
                      "Patched MD-380/390G")

    # remove volume screen (S13.020 using different address, keep offset in mind!)
    # patcher.nopout((0x08020D92))
    # patcher.nopout((0x08020D92 + 0x2))
Пример #8
0
    #             0x0809cf04      0139           subs r1, 1
    #             0x0809cf06      0845           cmp r0, r1
    #         ,=< 0x0809cf08      00d1           bne 0x809cf0c
    #         |   0x0809cf0a      3c48           ldr r0, [pc, 0xf0]          ; [0x809cffc:4]=0x80fa969 
    #         `-> 0x0809cf0c      0047           bx r0
    # [0x0809cf00]> 

    
    #Stores the RESET handler for our stub.
    patcher.setword(0x809cffc,
                    patcher.getword(0x0800C020),
                    0xFFFFFFFF);
    
    
    #Marks the version as "md380tools"
    patcher.setwstring(0x080d14d8,
                      "MD380Tools Ver.");
    
    #Change the manufacturer string.
    patcher.setstring(0x080f9e4c,
                      "Travis Goodspeed KK4VCZ");
    #Change the device name.
    patcher.setstring(0x080d1820,
                      "Patched MD380");
    
    #Fixes a typo in 2.032.  Unneeded in 2.034.
    patcher.setwstring(0x080d17e8,
                      "Repeater Slot"); #was 'Repeatar Slot'
    
    patcher.export("patched.img");
    
Пример #9
0
    patcher.nopout((0x8034a8c))
    patcher.nopout((0x8034a8c + 0x2))
    patcher.nopout((0x8034aa2))
    patcher.nopout((0x8034aa2 + 0x2))
    patcher.nopout((0x8034ab8))
    patcher.nopout((0x8034ab8 + 0x2))
    patcher.nopout((0x8034ace))
    patcher.nopout((0x8034ace + 0x2))
    patcher.nopout((0x8049f9a))
    patcher.nopout((0x8049f9a + 0x2))
    patcher.nopout((0x804a820))
    patcher.nopout((0x804a820 + 0x2))
    patcher.nopout((0x804aae4))
    patcher.nopout((0x804aae4 + 0x2))
    patcher.nopout((0x804af70))
    patcher.nopout((0x804af70 + 0x2))
    patcher.nopout((0x804b9fc))
    patcher.nopout((0x804b9fc + 0x2))

    #Marks the version as "md380tools"
    patcher.setwstring(0x080d0b6c, "MD380Tools Ver.")

    #     #Change the manufacturer string.
    #     patcher.setstring(0x080f86c8,
    #                       "Travis Goodspeed KK4VCZ");
    #     #Change the device name.
    #     patcher.setstring(0x080cfff4,
    #                       "Patched MD380");

    patcher.export("patched.img")
Пример #10
0
    patcher.nopout((0x8034a8c+0x2))
    patcher.nopout((0x8034aa2))
    patcher.nopout((0x8034aa2+0x2))
    patcher.nopout((0x8034ab8))
    patcher.nopout((0x8034ab8+0x2))
    patcher.nopout((0x8034ace))
    patcher.nopout((0x8034ace+0x2))
    patcher.nopout((0x8049f9a))
    patcher.nopout((0x8049f9a+0x2))
    patcher.nopout((0x804a820))
    patcher.nopout((0x804a820+0x2))
    patcher.nopout((0x804aae4))
    patcher.nopout((0x804aae4+0x2))
    patcher.nopout((0x804af70))
    patcher.nopout((0x804af70+0x2))
    patcher.nopout((0x804b9fc))
    patcher.nopout((0x804b9fc+0x2))

    #Marks the version as "md380tools"
    patcher.setwstring(0x080d0b6c,
                       "MD380Tools Ver.");

#     #Change the manufacturer string.
#     patcher.setstring(0x080f86c8,
#                       "Travis Goodspeed KK4VCZ");
#     #Change the device name.
#     patcher.setstring(0x080cfff4,
#                       "Patched MD380");

    patcher.export("patched.img")