Hello. I have a pretty weird problem with TASM ideal mode. If I'm not mistaken, this program should work:
http://www.lumental.com/ta.txt
However, when I compile it, I get these errors:
**Error** ta.asm(18) Symbol already different kind: POSVALTYPE
**Error** ta.asm(22) Undefined symbol: POINT
I've read the instructions for "paradigm assembler", which is supposed to be a TASM 5.0 clone, and it looks like the code "should" work. Anyone know the source of these errors?
More info: If I just declare a structure with simple members and access those simple members, it all works fine. But if I ever try to have a member of a type created by a typedef or another struc, the assembler gives these unexpected errors. If I try to access a member of a type created by typedef or a struc by using indirection (pointer to the struc), it gives the error "ID not member of structure", even though it very clearly is.
Aren't nested structs supposed to be possible in ideal mode? I just spent the last 2 days converting all of my ASM code to ideal mode just so that I can do this. Please help me Obi Wan Kenobe. You're my only hope.
http://www.lumental.com/ta.txt
However, when I compile it, I get these errors:
**Error** ta.asm(18) Symbol already different kind: POSVALTYPE
**Error** ta.asm(22) Undefined symbol: POINT
I've read the instructions for "paradigm assembler", which is supposed to be a TASM 5.0 clone, and it looks like the code "should" work. Anyone know the source of these errors?
More info: If I just declare a structure with simple members and access those simple members, it all works fine. But if I ever try to have a member of a type created by a typedef or another struc, the assembler gives these unexpected errors. If I try to access a member of a type created by typedef or a struc by using indirection (pointer to the struc), it gives the error "ID not member of structure", even though it very clearly is.
Aren't nested structs supposed to be possible in ideal mode? I just spent the last 2 days converting all of my ASM code to ideal mode just so that I can do this. Please help me Obi Wan Kenobe. You're my only hope.
here it works without problems, my tasm is:
i got it with the borland compiler i bought, if i remember correctly.
but, the .exe it generated had no entrypoint, so i added:
around the code in the codeseg.
good luck :)
Turbo Assembler Version 5.3 Copyright (c) 1988, 2000 Inprise Corporation
i got it with the borland compiler i bought, if i remember correctly.
but, the .exe it generated had no entrypoint, so i added:
start:
end start
around the code in the codeseg.
good luck :)
This one assembled with LzAsm:
model flat
public start
Struc PosType
Row dw ?
Col dw ?
Ends PosType
Union PosValType
Pos PosType ?
Val dd ?
Ends PosValType
dataseg
Point PosValType ?
codeseg
start:
mov [Point.Pos.Row], bx ; OK: Move BX to Row component of Point
END start
Thanks! I downloaded TASM 5.3 from the Borland website (by downloading the builder 6 C++ trial), and it works perfectly. Unfortunately, lzasm doesn't seem to be available from what seems to be its home page (file not found).