Searching for a new cross-assembler

Page 1/2
| 2

By Metalion

Paragon (1622)

Metalion's picture

28-11-2016, 20:04

Allright ... I've been using AsMsx for the last 8 years, but right now I'm fed up with that random "undefined label" / "syntax error" bug. I've been struggling with it for about an hour now, and it's so much wasted time ! It's too bad, because I liked that little MSX-tuned cross-assembler. But I think it's time to forget it and move on ...

So I've looked here and there :

  • sjasm : seems nice but I'm unable to make it work, it keeps outputting errors everywhere
  • tniasm : the macro version is not freeware
  • zasm : no binaries for windows

What else are you suggesting ?

Login or register to post comments

By santiontanon

Paragon (1757)

santiontanon's picture

28-11-2016, 20:39

I have not tried the other ones, but I used Grauw's Glass throughout the development of Transball, and it worked really well for me Smile

By jltursan

Prophet (2619)

jltursan's picture

28-11-2016, 20:58

Strange what you say about sjasm...I've been using it for years now (mostly 0.39) and never found anything specially awkward with it. Pair it with some modern & advanced editor like Notepad++ and you can make wonders Smile

My vote goes to sjAsm!
Glass could be also an interesting piece of software, of course. Being Java, why not try to integrate it with a nice editor and create a nice MSX RAD environment? Smile

By Metalion

Paragon (1622)

Metalion's picture

28-11-2016, 21:56

Well I tried sjasm and couldn't make it work ... It kept making errors on its own pseudo-ops.
For example "defpage 1, 4000h, 4000h" was making a "unknown instruction: 1, 4000h, 4000h".
I read the online manual several times but couldn't find why.

By ricbit

Champion (438)

ricbit's picture

29-11-2016, 00:29

I'm in love with sjasmplus, mainly because it works with whatever syntax you throw at him. Easy to port legacy code from other assemblers.

By ARTRAG

Enlighted (6923)

ARTRAG's picture

29-11-2016, 08:00

Same here, sjam and sjasm plus are excellent.
Metalion, commands have to start with a space or tab or will be interpreted as labels

By Latok

msx guru (3925)

Latok's picture

29-11-2016, 08:38

Glass works great for me Smile

By theNestruo

Champion (411)

theNestruo's picture

29-11-2016, 10:20

If you really like AsMSX there is no need to abandon it just because of the random "undefined label" errors. I have no solution for the problem, but a practical work-around:
Place the random NOPs that solve the issue in the ROM header: they won't affect the output (same size, same binary), and they will always be in the same point for commenting/uncommenting them easily.

	.page	1
rom_start:
	.db	"AB"		; ID ("AB")
	.dw	INIT		; INIT
	nop			; (random nops make asmsx happy)
	nop
	nop
	.org	rom_start + $10	; STATEMENT, DEVICE, TEXT, Reserved

By Metalion

Paragon (1622)

Metalion's picture

29-11-2016, 13:33

ARTRAG wrote:

Same here, sjam and sjasm plus are excellent.
Metalion, commands have to start with a space or tab or will be interpreted as labels

Allright, I didn't know that. I guess I'll give it another try, then. But, unless I'm mistaken, it's not clear in the manual. I dropped it after trying to make it work for 10 minutes.

theNestruo wrote:

If you really like AsMSX there is no need to abandon it just because of the random "undefined label" errors. I have no solution for the problem, but a practical work-around

I know, and usually, a single "nop" here and there deals with it.
But this time, I got stuck for almost an hour !
I got fed up with it. Even if later, a "REPT / nop / ENDR" solved the problem ...

So let's say that AsMSX is officially on probation ... Wink
Even if AsMSX still lacks an important feature : user defined macros.

If I'm stuck again, I think I'll move to Glass.

By NYYRIKKI

Enlighted (6016)

NYYRIKKI's picture

29-11-2016, 13:27

I also use sjasm, but then again I write very simple asm... I've not bothered to teach my self even what commands like "defpage" actually do Smile

Page 1/2
| 2