ArmDebugger
ArmDebugger is a powerful debugger for Siemens phones by Chaos.
- ArmDebugger 0.7.9 M2.rar — the latest version by Dimadze with ELKA/NSG fixes.
- Thread on forum.allsiemens.com
For more information, read the README.txt in the archive or the discussion on the forum.
CGSN Patch
To use the debugger, you need to install a special patch called the CGSN Patch. This patch implements a special protocol for the debugger to work via the serial port. The patch can be automatically generated using ArmDebugger.
Follow these steps:
- Run
ArmDebugger.exe - Open
Tools -> Generate CGSN Patch - Select your
fullflash.bin - Apply the generated patch using V-Klay
Configuration Examples
If your phone is not yet defined in devices.ini, you need to create your own config section.
This is usually done by copying the section for a similar model and replacing MallocAddress with the correct address of the malloc() function.
Example for NSG/ELKA
EL71, E71, M72 (proto), CL61 (proto), C0F1 (proto), C81, M81, S68
You need to replace:
SIEMENS:C81:51— with your model and firmware versionSiemens C81 fw51— with your model and firmware versionMallocAddress = 0xA0094B5C— with the correctmalloc()address
[SIEMENS:C81:51]
Name = Siemens C81 fw51
BootROMaddress = 0x400000;
BootROMsize = 0x100000;
FlashAddress = 0xa0000000;
FlashSize = 0x04000000;
IntRAM1address = 0x0;
IntRAM1size = 0x4000;
IntRAM2address = 0x80000;
IntRAM2size = 0x18000;
ExtRAMaddress = 0xa8000000;
ExtRAMsize = 0x01000000;
VMalloc1address=0xaA000000
VMalloc1size=0x01000000
VMalloc2address=0xaB000000
VMalloc2size=0x01000000
VMalloc3address=0xaC000000
VMalloc3size=0x01000000
VMalloc4address=0xaD000000
VMalloc4size=0x01000000
MiscSpaceaddress=0xc0000000
MiscSpacesize=0x00100000
IOaddress = 0xf0000000
IOsize = 0x10000000
UseRAM = 0x89000
MallocAddress = 0xA0094B5C ; CHANGE THIS
MallocPages = 100
Example for old NSG
S75, SL75
You need to replace:
SIEMENS:S75:52— with your model and firmware versionSiemens S75 fw52— with your model and firmware versionMallocAddress = 0xA0094B5C— with the correctmalloc()addressFlashSize = 0x04000000— with the required FLASH size (e.g.,0x6000000for SL75)
[SIEMENS:S75:52]
Name = Siemens S75 fw52
BootROMaddress = 0x400000
BootROMsize = 0x100000
FlashAddress = 0xa0000000
FlashSize = 0x04000000
IntRAM1address = 0x0
IntRAM1size = 0x4000
IntRAM2address = 0x80000
IntRAM2size = 0x18000
ExtRAMaddress = 0xa8000000
ExtRAMsize = 0x01000000
IOaddress = 0xf0000000
IOsize = 0x10000000
UseRAM = 0x89000
MallocAddress = 0xA0094B5C ; CHANGE THIS
MallocPages = 300
Example for SG
S75, SL75, CX75, M75, SK65, CX70, C65, CX65, M65, S65, SL65, ME75, CF75, C75, C72
You need to replace:
SIEMENS:C75:22— with your model and firmware versionSiemens C75 fw22— with your model and firmware versionMallocAddress = 0xA0203C24— with the correctmalloc()addressFlashSize = 0x2000000— with the required FLASH size (e.g.,0x4000000for SK65)ExtRAMsize = 0x800000— with the required RAM size (e.g.,0x1000000for SK65 or CX75)
[SIEMENS:C75:22]
Name = Siemens C75 fw22
BootROMaddress = 0x400000
BootROMsize = 0x400000
FlashAddress = 0xa0000000
FlashSize = 0x2000000
IntRAM1address = 0x0
IntRAM1size = 0x18000
IntRAM2address = 0x80000
IntRAM2size = 0x18000
ExtRAMaddress = 0xa8400000
ExtRAMsize = 0x800000
IOaddress = 0xf0000000;
IOsize = 0x10000000;
UseRAM = 0x8e004;
MallocAddress=0xA0203C24 ; CHANGE THIS
MallocPages = 50