I finally fix bug causes broken code section in symbian binaries. Some motherfucker move out of loop pointer increment. Maybe there was some “bomb” for other developers who unaffiled with nokia? It was so heavy to find…
There was another bug: sizeof(char*) in visual studio compiler have 4 bytes but in mingw – 8! Hehe, correctness binary not affected that bug.
There some things need be done:
- rewrite binary generator logic because one test failes and debugger cant help
- Write more tests
- Print variables in writable static data section
Stable release out after 4 month fixing runtime and compile-time failures. Grab source code here and build as x32(x64 version not tested).
There remains small bug – garbadge 8bit bit gap between export and import sections. Also –e32dump still displays raw data for some fields.
Well, I succesfully build pys60 on early bugfix state. Testcases succeeded and I want investigate why abld so slow on big projects.
Anyway my main goal – port symbian to rasberry pi. Why? It has open gpu driver with manufacture documentation.
elf2e32 : Error: E1065: ‘…’ : ‘…’ Import relocation does not refer to code segment.
That happened because elf2e32 can’t handle pointer to functions with external linkage. This bug present from S60_5th_Edition_SDK_v1.0 and later. Solution – get from previous SDK. S60_3rd_FP2_SDK_v1.1 has working copy.
inline bool CEikMenuPaneItem::IsScaleableText(const TDesC& aText) const
return (aText.Locate(TChar(KScaleableTextSeparator)) != KErrNotFound);
inline TBool CEikMenuPaneItem::IsScaleableText(const TDesC& aText) const
return (aText.Locate(TChar(KScaleableTextSeparator)) == KErrNotFound ? EFalse : ETrue);