ویرگول
ورودثبت نام
MirMuhamad jabbari
MirMuhamad jabbari
خواندن ۳ دقیقه·۴ سال پیش

برنامه نویسی پلتفرم قدیمی | mrp

مقدمه

تو دنیایی زندگی میکنیم که تکنولوژی روز به روز در حال پیشرفته ، از طرفی پلتفرم های قدیمی تر مثل ( جاوا ، سیمبین و ... ) در حال فراموش شدن هستند یا شاید برای نسل های جدید حتی به جستجو محدود بشه از طرفی این پلتفرم های قدیمی شاید برای برخی از برنامه نویسان جدید|قدیمی جالب باشه ، این مقدمه رو گفتم تا کارو با پلتفرم قدیمی که کمتر کسی میشناسه شروع کنیم ، خب ؟!! (امروز میخوام یکی از چالشهایی رو که خودم ، خودمو توش دعوت کردت براتون دستو پا شکسته توضیح بدم).?

پلتفرم mythroad | .mrp

شرکت mythroad یا SKYMOBI اون قدیم مدیما یسری از گوشی ها تو کوچه پس کوچه های یکی از کشورهای عزیزمون (چ) تولید میکردند و کیفتی خوبی داشتند یا دارند ? منم از گوشه پس گوشه های خونه یکی از این گوشی ها رو پیدا کردم (K900 TV Mobile) که زهوارش در رفته بود از طرفی جالب بود برام ببینم میشه کارای جالبی باهاش پیاده کرد یا ن! داخل پرانتز این گوشی حدودا برای 12-10 سال پیشه.


کالبدشکافی

K900 Tv Mobile
K900 Tv Mobile

دیدم الان دیگه وقتشه شروع کردم به کالبدشکافی?‍? چیپست داخلی mtk بود جالب شد بود گوشی رو جمع ، روشنش کردم. اولین جایی که رفتم بخش بازی گوشی بود ، دوتا بازی ساده (خونه سازی ، تاس ) بود ، یکم سرچ زدم چیز زیادی پیدا نشد رفتم سمت موتور جستجو عزیز Baidu نَ من میفهمیدم نَ اون میفهمید چی میخوام? اما من ول کن نبودم رفتم گوگل ترنسلت آوردم وسط حداقل اون مفهمید ولی پس و پیش? دیدم بجایی نمیرسه این کار ، ی رم انداختم تو اسلات ی چرخی زدم تو گوشی رفتم تو حافظه دیدم یه پوشه به اسم mythroad ساخته شده بود، اسم پوشه رو تو گوگل ، بینگ عزیز جستجو زدم چندتا بازی با چندتا فایل دیگه با فرمت mrp پیدا کردم ریختم داخل این پوشه هرکاری کردم فایلا باز نشد که نشد تا اینکه رفتم تو قسمت بازی ها دیدم چندتا بازی اضافه شده بود اجراشون کردم?.....


شروع برنامه نویسی mrp

ساختار
ساختار

اینجا بود که به خودم گفتم کاپیتان الان وقتشه اونم گفت صد در صد ، شروع کردم به جستجو تو موتورهای جستجو تا SDK شو پیدا کنم ، چیزی پیدا نشد ، یچیزایی هم پیدا شد که لاینسس میخواست از طرفی هم از طریق سرور باید اکتیو میشد که سرورش بعد این همه مدت جمع شده بود ، خلاصش کنم راهای زیادی رو رفتم نشد ک نشد ، گفتم کاپیتان این تو بمیری از اون تو بمیری ها نیست ، بحث حیثیت و آبرو وسطه? شروع کردم به مهندسی معکوس کامپایلر SDK ، بالاخره بخش کامپایل اوکی شد ولی برنامه های کامپایل شده اجرا نمی شدند ، یجای کار میلنگید ، تست های مختلفی رو انجام دادم تا اینکه دیدم هدر برنامه مشکل داره ، یدونه برنامه سالم رو مهندسی معکوس زدم فایل هدرشو برداشتم و برنامه جدید و با اون هدر کامپایل کردم به شکل عجیبی جواب داد ، چندتا برنامه دیگه رو کامپایل کردم واقعا کار کرد ، گفتم همینه!? (Yes , Do it)


پیشنیاز نوشتن برنامه ساده

برای شروع به یک سری از نرم افزار ها نیاز داریم که انتها این مطلب لینکشونو قرار میدم.

  • اولین بخش SKYSDK که همون اس دی کی پیش نیاز کامپایل کردن هست.
  • دومیش ARM Developer Suite (ADS1.2) این نرم افزار برای کامپایل میکروکنترلر های سری ARM استفاده میشه.
  • سومیش فایل های مهندسی معکوس شده mr_helper.mrp و mrpbuilder.NET.exe هست


نوشتن برنامه ساده

اولین فایلی که باید بسازیم شبیه فایل make هست ، خب یه فایل با اسم all.mpr می سازم ، از این فایل برای کامپایل کردن پروژه استفاده میکنیم که شامل (اسم ، نوع cpu ، مسیر کتابخونه های مورد نیاز و کدهای C یا C++ ) هست.

[information]
projectname=HelloWorld.mpr
filename=HelloWorld.mrp
appname=HelloWorld
appid=100000
version=1001
visible=1
cpu=3
vendor=M-CAP7AIN
description=Hello Iran
include=C:\Users\iDevice\Desktop\SKYSDK\include
config=mtk240
[config_mtk240]
output= HelloWorld.mrp
bmp_mode=normal
[files_mtk240]
file01 = demo.c
file02 = hellostr.bmp
file03 = xj.mid
[files]

دومین فایل demo.c که مجموعه کدهای اصلی برنامه تو این بخش قرار میگیره که مسیرش در فایل فوق اضافه شده.(برای این فایل ها از هر اسم استانداردی میشه استفاده کرد)


کامپایل کردن پروژه

خب حالا دیگه وقتشه از برنامه نوشته شده خروجی بگیریم و انتقالش بدیم به پوشه mythroad و از برنامه نوشته شده نهایت لذت رو ببریم.? (برای خروجی گرفتن به کامپایلر مسیر فایل کانفیگ رو میدیم)

&quot<DIR>\SKYSDK\compiler\mrpbuilder.NET.exe&quot all.mpr

وَ تمام ?.

فایل های مورد نیاز

https://github.com/M-CAP7AIN/mythroad_mrpbuilder
k900mrpmythroadmrpbuilderپلتفرم قدیمی
کاپیتان هستم ⚓ ، چندسالی هست که با نام کاربری M-CAP7AIN فعالیتم رو تو زمینه برنامه نویسی ، شبکه و امنیت شروع کردم و علاقمند به یادگیری تا جایی که جواب بده☺️ http://ictcaptain.blog.ir
شاید از این پست‌ها خوشتان بیاید