0

In my infinite wisdom I wrote the assembly source code to my "QK-1" z80 computer emulator thing in Google docs.

On my High school managed Google Account. Which was EOL'ed after I graduated. (And people wonder why I call myself stupid.)

The whole binary blob is less then 1KiB in size, so it didn't take me very long to recreate the (equivalent) source code using Ghidra.

After some time mucking about inside vim, I cleaned everything up and got back my misplaced source code! Nice!

What ISN'T nice is that z80asm doesn't like the source code file. Running "z80asm ./baserom.z80"

./baserom.z80:463: error: unable to resolve reference: *** 1 error found ***

No, your eyes are not deceiving you, z80asm erroneously thinks some white space is a label or something.

The error message IS printing something: Two spaces. But, I can't figure out WHY it thinks that's a label. I've looked through the source file, and I can't figure it out.

The file in question: https://drive.google.com/file/d/1m0OAdSYj50_Z0fA9CZVr45FSWP6Z7nAO/view?usp=sharing

1 Answer 1

0

So it looks like z80asm has a slight bug.

If an instruction isn't fully typed (eg, "ld a,") it gives this "Unable to resolve reference" error.

In my case, it was "RST". I didn't specify a reset offset.

What it SHOULD do is error out about invalid syntax! That would be a much more useful error.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .