RosAsm Text   ..



Either ' or '' as delimiter (as you wish, but not mixed):


[My_Text: b$ 'One day, One hand, one foot', 0]                  ; right

         

[My_Text: b$ 'One's day, One's hand, one's foot', 0]            ; wrong

         

[My_Text: b$ ''One's day, One's hand, one's foot'', 0]            ; right

         

[My_Text: b$ 'She told me ''One day, One hand, one foot'' ', 0] ; right

         

         

Differences between single and double quotes


Single quotes text cannot include CR/LF, double quotes can. The consequence of this is that you must consider single quotes as the standard feature (perfect control of open text errors) and double quotes as an alternate feature (bad control -RosAsm might not find error in some cases-) useful only for  solving problems like upper examples.


 Double quotes are useful too if you mean to include CR/LF in text declaration without having to write some 'B$ 13 10'.  Once again, be aware that, with double quotes, RosAsm  will be unable to detect open text errors in some cases. I will not modify this because flexibility and ease of use is much more important in my opinion than security.



Text expressions in code


mov eax 'abcd'


does what you mean (al = 'a' / ah = 'b' / ...). No need to reverse reading order.


Avoid using 'text' for values direct computations:


mov eax 'abcd'-'1234'   ; Doesn't work (maybe later...)

mov eax 'abcd'+'1234'   ; should work...



Tabs


In RosAsm edition, Tabs are now fully reserved for Indentation. If you want a true Tab inside Text Data, insert ASCII 9 bytes:


[TabbedText:  B§  'abcde',  9,  'abcde',  0]


~~~~~~~