ورود

View Full Version : کند بودن نوشبن در صفحه نمایش



poorya.pzm
جمعه 06 دی 1387, 12:04 عصر
سلام
من دارم یک ادیتور متن با اسمبلی می نویسم ,ورودی رو با ah=10h و int 16h میگیرم و کرسر رو با ah=02h و int 10h تغییر میدم ,خروجی رو با هر چی چاپ کنم مثل : ah=0eh و int 10h یا int 21h یا حتی نوشتن توی رم نمایش بازهم delay داره جوری که به چشم راحت دیده می شه , برای ورودی int21 رو هم استفاده کردم بازم همینجوریه , البته از VMware استفاده می کنم اما کسایی هم که برنامه رو بهشون دادم گفتن کنده , اگر راهنمایی کنین ممنون میشم چون واقعا گیج شدم. مرسی

Open-Source
جمعه 06 دی 1387, 12:18 عصر
اگه میتونی به جای استفاده از وقفه ها از اعمال تغییر مستقیم روی مانیتور استفاده کن فکر کنم سرعت بالا تر میره.

poorya.pzm
جمعه 06 دی 1387, 12:27 عصر
سلام
همین کارو کردم اما بازهم کنده اینم کد نوشتن ,نگاه کنین جایی اشتباه نکردم, با تشکر

MOV AX,0B800H
MOV ES,AX
MOV AH,DH
MOV AL,80
MUL AH
MOV DH,0
ADD AX,DX
MOV SI,AX
SHL SI,1
MOV AL,BYTE PTR[BP+4]
MOV BYTE PTR ES:[SI],AL
INC SI
MOV BYTE PTR ES:[SI],07H
MOV AX,[BP+6]
INC AL
MOV DX,AX
MOV AH,02H
INT 10H

poorya.pzm
جمعه 06 دی 1387, 12:29 عصر
اون int 10h برای جلوبردن کرسره

Open-Source
جمعه 06 دی 1387, 14:29 عصر
من که مشکلی توی این کد نمیبینم.(نگاه سطحی)
الان بعد از کامپایل این کد چه مشکلی داری؟؟؟؟
یعنی باز هم کنده؟؟؟

poorya.pzm
جمعه 06 دی 1387, 15:18 عصر
سلام
اره هنوزم کنده , البته برای هر کاراکتر 2 بار کرسر رو با int10 تغییر میدم , دلیلش اینه؟ اگر اینه چه جوری می تونم کرسر رو با استفاده از رم نمایش مستقیما تغییر بدم؟

poorya.pzm
جمعه 06 دی 1387, 17:00 عصر
سلام
بالاخره فهمیدم راهش چیه , روششو اینجا می گذارم تا کسی مثل خودم 2 روز معطلش نشه , من از ah=10h ,int16h برای گرفتن کلید استفاده می کردم چون هم منتظر کلید می موند هم کلیدهای توسعه یافته رو تشخیص می داد , اما تاخیرش زیاد بود الان ah=1 همون وقفه رو توی یک حلقه بدونه تاخیر گذاشتم که فقط زمانی که کلید بود بیاد بیرون و اون موقع با ah=10h کلیدو می گیرم .
البته یک مشکل کوچیک داره که بعضی از کلیدها مثل f11 و f12 رو تشخیص نمی ده اما با بقیه f ها مشکل نداره.