So, I've decided to get back into ASM programming and learn more about my computer and all, and so I start reading some tutorials around the web on 16bit ASM stuff. I write this into masm:

.model small

Message db "Hello World!$" ; message to be display

_main proc
mov dx,OFFSET Message ; offset of Message is in DX
mov ax,SEG Message ; segment of Message is in AX
mov ds,ax ; DS:DX points to string

mov ah,9 ; function 9 - display string
int 21h ; call dos service
mov ax,4c00h ; return to dos DOS
int 21h

_main endp
END _main ;end here

and what do I get? I get an error on the line "mov ax, seg Message" The error is supposably a "symbol type conflict." I have no idea what this is or how to fix it. I get errors on this line in TASM and NASM too :(

Any help would be appreciated VERY much!
Posted on 2003-08-16 17:25:59 by Samith
Try with mov ax, @data rather than with mov ax,SEG Message
Posted on 2003-08-16 18:45:31 by lingo12
Like, just write the line out as "mov ax, @data" or is there something more to it?
Posted on 2003-08-16 19:25:42 by Samith
Posted on 2003-08-16 20:19:58 by lingo12
Thank you! That was a great link and finally I can see what was wrong with my code :)
Posted on 2003-08-17 09:44:40 by Samith
Dammit, I can't download the 16 bit linker off the MS site. I get some 425 error. Is there anywhere else that I can download a 16 bit linker or anything?
Posted on 2003-08-17 10:18:06 by Samith
Posted on 2003-08-17 10:39:13 by roaknog
Woohoo, thank's a ton :D
Posted on 2003-08-17 10:50:47 by Samith