I am quite new regarding the assembly and I am trying to work with a program. So whenever I try to compile it, I get the error for the line, as listed under the comments in the code.
I am wondering if anyone has any ideas why NASM detects this errors when I am defining some things for the rest of the assembly code?
Maybe it has to do something with how the main is defined?
P.S. I listed just the first part of the code, since the program is quite long.
Thank you for the help
.xlist ;attempt to define a local label before any non-local labels
include stdlib.a ; parser: instruction expected
includelib stdlib.lib ; parser: instruction expected
.list
.286
dseg segment para public 'data'
; Unknown section attribute 'public' ignored on declaration of section `para'
h word ?
i word ?
cseg segment para public 'code'
assume cs:cseg, ds:dseg
Main
In NASM a label starting with dot is called a local label. It is appended to the last global label, for example,
L:
.l2: ; it is really L.l2
So you cannot have a local label before any global ones