PDA

View Full Version : برنامه ای که تعدادی از کلیدهای کیبورد را فارسی کند



vahid alibeygi
شنبه 23 اردیبهشت 1385, 08:57 صبح
vahidonly2000@yahoo.com

mzjahromi
شنبه 23 اردیبهشت 1385, 09:19 صبح
اگه راهنمائی می خوای روش کار اینه
سورس فارسی ساز تحت داس (http://www.barnamenevis.org/forum/showthread.php?t=40459)
ولی اگه می خوای دوستان واسه ات برنامه بنویسن.....:متفکر:

raha_hakhamanesh
چهارشنبه 27 اردیبهشت 1385, 09:12 صبح
با سلام
با احترام به نوشته دوست عزیزمان
خدمت شما عرض کنم برای تبدیل کلیدهای کی بورد به فارسی اصول کار به شرح زیر است
ابتدا بایستی جدول بیت مپ رو برای فونت های فارسی ایجاد کنید برای این کار می تونید از نرم افزار های فونت ساز تحت ویندوز استفاده کنید قدیما ما از کاغذ شطرنجی استفاده می کردیم
مثلا برا حرف ش در مختصات 8*8 این اعداد بدست می آیند ( به ترتیب از چپ به راست )
04h,0AH,00H,95H,9FH,90H,90H,F0H
خوب این اعداد طی 8 بایت حرف ش را ایجاد می کنند (می تونید سایر فونتها رو ایجاد کنید یا از دوستان تهیه کنید اگر پیدا نشد به خودم بگید ) حالا بایستی این کاراکتر جدید رو بزاریم جای کاراکتر A برای این کار شماره کاراکتر جایگزین رو انتخاب می کنیم برای این مثال اگر به حروف انگلیسی نیاز نبود جای کارکتر 65 یعنی A در غیر اینصورت به جای کاراکترهای توسعه یافته یعنی 169برای حرف شین .
خوب برای همه کاراکترها این کارها رو باید انجام بدین ولی پیشنهاد می کنم همه رو توی یک بافر مثل آریه 8*32 قرار بدین و یک دفعه اونها رو جایگزین کنید.
تا اینجا کاراکتر ها رو ساختیم برای جایگزینی دستورات زیر لازم است
MOV AH,11H
MOV AL,00H
MOV BH,08H
MOV BL,00H
MOV CX,01H
MOV DX,65
LEA BP,TABLE
MOV ES,DS
AH شماره تابع جایگزینی فونت
AL شماره زیر تابع
BH سایز فونت( 8*8)
BL حتما بایستی صفر باشد
CX تعداد کاراکتر جایگزینی (اگر خواستید مثلا 20تا کد رو جایگزین کنید برابر 20 می شود)
DX شماره کدی که قرار است جایگزین شود (در این مثال 65)
ES:BP آدرس بافر است که BPرا برابر محلی که فونت جدید را ساخته و ذخیره کرده اید (همون آرایه 8 بایتی ) و ES هم برابر با آدرس دیتا سگمنت یا همون DS قرار بدین .
بعد از این کارها اگه کاراکتر A فشار بدین برای شما کاراکتر شین چاپ می شود .
به امید موفقیت