1. What the disappoints points on D [draft]

    Ok, after i tried a good project on D, i have some disappoint points.

    1- GC, huge memory

    2- constructors not auto inherited into derived classes

    3- Paths to the sources, same as old languages, compiler can not find the sub-path

    Add all d files to compiler command, or you can use file @yourconfig to put it there
    Add Paths -Iyourpath to the compiler
    For packages add the parent path for your package with -I

    4- Debugging in Windows, GDB not supported

  2. Android AVD not started, Wrong path

    I installed Android SDK in Windows and added new Virtual Device, but when i run that image i get this error

    Starting emulator for AVD ‘ATOM’
    PANIC: Could not open: C:\Documents and Settings\Zaher\.android/avd/ATOM.ini

    I looked up to my images i found it in


    After searching on internet i found the solution


    Add new envirement  ANDROID_SDK_HOME and set it to your real path that include .android like this


    And have fun.

  3. Messages MsgBox in MiniLib

    We finished adding MsgBox.pp and GUIMsgBox.pp in minilib

    Both units for Pascal language, FreePascal and Lazaurs, but not worked for Delphi (sorry 😛 ).

    Only you need to add MsgBox to your uses in the unit to use it, but you need to add GUIMsgBox once in the whale project, or it will work as console application.

    Useing by call Msg.Yes or Msg.OK for example, there is many other calls, like Msg.Input or Msg.Password to ask for password.

    If you not use GUIMsgBox for Lazarus, it will work as console or you can switch to console even if GUIMsgBox is used, by calling Msg.Switch(‘CONSOLE’);

    Msg.Yes(‘Do you want to save?’)
    Mean Yes/No but the default button is Yes

    Msg.No(‘Do you want to save?’)
    Mean Yes/No but the default button is No

  4. Windows users, do not use AutoCrlf in git

    If you are using git to fetch or modify your codes on Windows, do not enable this feature.
    If it is enabled, the source code fetched as CRLF and commited as LF, that was good, but most of editors handle (Unix EOL) LF, so you not need to fetch it as (Window EOL) CRLF.

    If you are like to use LF in your PHP code in windows and keep it as it in the original code repo, do not enable it.

    If you already enabled it, do not change before commit your work and push it, after that, change it to false, then revert all your code, git now fetch the files as LF.

    EOL = End of Line.

  5. We started new project MiniEdit

    We started the new project MiniEdit based on old one LightPHPEdit but on Lazarus/FreePascal to make it work on Linux.
    MiniEdit is open source editor, simple and fast one work as portable application.
    It is editor with code highlighter made for PHP but i work on it to use Pascal projects, so it need time to make it.
    Now i am working on addons for it (internal addons) to integrate Debug and SCM(SVN and GIT) tools.

    Download the source from github.com

  6. ANN: minibidi.c was ported to minibidi.pp

    We have ported the minibidi.c to FreePascal minibidi.pp with some modifications to be workable with Pascal, in minilib project.

    This file process the Unicode Arabic characters to make Joining/Shaping and make it Right To Left readable, in another hand it is prepare the string variable (widestring) to be printed in Right To Left, it is like FriBidi but more simple and in Pascal.

    The original file written by Ahmad Khalifa from arabeyes.org, i published it with same license.

    Also we port cp864 CodePage and added to unicodes directory, it is useful to convert a Unicode string (widestring) to that old code page cp864.

    cp864 used by most POS printers (thermal) and Customer Display, now with minibidi.pp you can proceess the string to be printed in Right To Left order and then convert it to cp864 codepage then print it to ESCPOS printers.

    This an example how to print to ESCPOS printer

    Used it with Terminal Display


    The code still need more work, but until now it is usable for me 🙂


  7. خوارزمية تفقيط الأرقام Arabic Figure Numbers

    خوارزمية تفقيط الأرقام وحدتي Units دلفي Delphi واحدة عادية تحتاج إلى اسم المعدود فقط و الأخرى معقدة تحتاج لمعلومات التذكير و التأنيث و المثنى و الجمع
    الوحدتين مكتوبة للدلفي الإصدار 7

    [تنصل من المسؤولية]
    البرامج التي يتم تنزيلها من الموقع تستخدم كما هي و على مسؤوليتك الخاصة، بدون ضمانات أو كفالة بأي شكل من الأشكال و لسنا مسؤولين عن أية تعديلات أو أخطاء ناجمة عن استعمالها، ولسنا ملزمين عن تطوير و أضافات على أي من مكونات البرنامج، إذا كنت غير موافق فلا تنزل البرنامج أو المصدر، و بمجرد تنزيلك إياها يعني موافقتك.

    يحوي المجلد demos أمثلة عن كيفية استعمالها في VB6 و الـ Excel و PHP
    في المجلد bin قم بتسجيل المكتبة ArFigures.dll لكي تعمل أمثلة الفيجوال بيسك و الاكسل بتشغيل الملف register.bat

    الملف يحتوي على المثال و نسخة exe منه للتجريب.