VDU 23,22,640;512;8,16,16,128+8 : REM Select UTF-8 mode *FONT Times New Roman, 20 PRINT "Arabic:" arabic1$ = "هنا مثال يمكنك من الكتابة من اليمين" arabic2$ = "الى اليسار باللغة العربية" VDU 23,16,2;0;0;0;13 : REM Select right-to-left printing PRINT FNarabic(arabic1$) ' FNarabic(arabic2$) VDU 23,16,0;0;0;0;13 : REM Select left-to-right printing PRINT '"Hebrew:" hebrew$ = "זוהי הדגמה של כתיבת טקסט בעברית מימין לשמאל" VDU 23,16,2;0;0;0;13 : REM Select right-to-left printing PRINT hebrew$ VDU 23,16,0;0;0;0;13 : REM Select left-to-right printing END REM!Eject DEF FNarabic(A$) LOCAL A%, B%, L%, O%, P%, U%, B$ A$ += CHR$0 FOR A% = !^A$ TO !^A$+LENA$-1 IF ?A%<&80 OR ?A%>=&C0 THEN L% = O% : O% = P% : P% = U% U% = ((?A% AND &3F) << 6) + (A%?1 AND &3F) IF ?A%<&80 U% = 0 CASE TRUE OF WHEN U%=&60C OR U%=&61F: U% = 0 WHEN U%<&622: WHEN U%<&626: U% = &01+2*(U%-&622) WHEN U%<&628: U% = &09+4*(U%-&626) WHEN U%<&62A: U% = &0F+4*(U%-&628) WHEN U%<&62F: U% = &15+4*(U%-&62A) WHEN U%<&633: U% = &29+2*(U%-&62F) WHEN U%<&63B: U% = &31+4*(U%-&633) WHEN U%<&641: WHEN U%<&648: U% = &51+4*(U%-&641) WHEN U%<&64B: U% = &6D+2*(U%-&648) ENDCASE IF P% IF P%<&80 THEN B% = P% IF O%=&5D IF P%<&5 B% += &74 IF O%=&5D IF P%=&7 B% += &72 IF O%=&5D IF P%=&D B% += &6E IF B%>P% B$=LEFT$(B$,LENB$-3) : O% = L% IF U% IF P%>7 IF P%<>&D IF P%<>&13 IF P%<>&29 IF P%<>&2B IF P%<>&2D IF P%<>&2F IF P%<>&6D IF P%<>&6F B% += 2 IF O% IF O%>7 IF O%<>&D IF O%<>&13 IF O%<>&29 IF O%<>&2B IF O%<>&2D IF O%<>&2F IF O%<>&6D IF O%<>&6F B% += 1 B$ = LEFT$(LEFT$(B$))+CHR$&EF+CHR$(&BA+(B%>>6))+CHR$(&80+(B%AND&3F)) ENDIF ENDIF B$ += CHR$?A% NEXT = LEFT$(B$)