This really is an important feature, I had to work around this some time ago and it can get pretty annoying fairly soon.
The minimal syntax typically supported is:
label: db 'f','o','o' label: db "mystring",0A,0D,'$'
i.e. single quotes for single bytes, and double quotes for multiple bytes.
The built-in assembler is not especially good at handling those "pseudo instructions" (i.e. macros etc): http://www.tortall.net/projects/yasm/manual/html/nasm-pseudop.html
db 0x55 ; just the byte 0x55 db 0x55,0x56,0x57 ; three bytes in succession db 'a',0x55 ; character constants are OK db 'hello',13,10,'$' ; so are string constants dw 0x1234 ; 0x34 0x12 dw 'a' ; 0x61 0x00 (it's just a number) dw 'ab' ; 0x61 0x62 (character constant) dw 'abc' ; 0x61 0x62 0x63 0x00 (string) dd 0x12345678 ; 0x78 0x56 0x34 0x12 dd 1.234567e20 ; floating-point constant dq 0x123456789abcdef0 ; eight byte constant dq 1.234567e20 ; double-precision float dt 1.234567e20 ; extended-precision float
source: http://www.nasm.us/doc/nasmdoc3.html
There are suggestions to replace the assembler with a more feature-complete solution: https://bugs.launchpad.net/gnusim8085/+bug/579336
This really is an important feature, I had to work around this some time ago and it can get pretty annoying fairly soon.
The minimal syntax typically supported is:
label: db 'f','o','o' ,0A,0D, '$'
label: db "mystring"
i.e. single quotes for single bytes, and double quotes for multiple bytes.
The built-in assembler is not especially good at handling those "pseudo instructions" (i.e. macros etc): www.tortall. net/projects/ yasm/manual/ html/nasm- pseudop. html
http://
db 0x55 ; just the byte 0x55
db 0x55,0x56,0x57 ; three bytes in succession
db 'a',0x55 ; character constants are OK
db 'hello',13,10,'$' ; so are string constants
dw 0x1234 ; 0x34 0x12
dw 'a' ; 0x61 0x00 (it's just a number)
dw 'ab' ; 0x61 0x62 (character constant)
dw 'abc' ; 0x61 0x62 0x63 0x00 (string)
dd 0x12345678 ; 0x78 0x56 0x34 0x12
dd 1.234567e20 ; floating-point constant
dq 0x123456789abcdef0 ; eight byte constant
dq 1.234567e20 ; double-precision float
dt 1.234567e20 ; extended-precision float
source: http:// www.nasm. us/doc/ nasmdoc3. html
There are suggestions to replace the assembler with a more feature-complete solution: https:/ /bugs.launchpad .net/gnusim8085 /+bug/579336