Read-only archive of the Armageddon Games Forums Archive (2000–2026) · About this archive

Documentation project

7 replies · 2,777 views · Started 23 May 2010

I'm working on a project at the moment, and it involves ZASM. However, currently, the documentation is... shall we say, less than adequate.

To remedy this, I propose that we gang up, and anyone who knows anything about ZASM join in and help document everything.

I've started a new page on the wiki with a list of all the instructions and registers. I will copy some stuff from the old page, but there is quite a bit stuff missing (both in terms of instructions and documentation), as the old page is 2 and a half years old.

If you don't have a wiki account, please post here instead, and I'll work on putting it in the wiki.

Thanks, guys!

I know I'm 3 months late for this thread (only just noticed it), and you probably don't need my help seeing as you have access to the source as well, but I know my way around ffscript.cpp fairly well if there are any commands which you're not sure of.

Why are you doing this exactly though?

Yeah, I do have access to the source, but that just trades one problem (not knowing how ZASM works) with another (having to make SAN checks against Codethulhu).

I was writing a compiler for a BASIC style language that targeted ZASM. I've since stopped working on it, but I may pick it up again at some point. (or, more likely, start over again now that I understand how AST syntax trees work)

Yeah, I'm just looking back through at some of the things I hadn't messed with before (the stack pointer, loada, seta), and it's making me want to claw my eyes out...

As in it breaks BASIC down into ZASM? Surely there are assembly languages that aren't as offensive as ZASM that you could use?
I have a kind of vague understanding of how the AST works, enough to do some stuff with ZScript but nothing too complex.

Also, you wouldn't happen to be any good with Bison would you?

The idea of the project was to build a replacement for ZScript with things like structs and native strings and goodly stuff like that. Therefore, the answer is no 😃

Also, no. I've tried toying around with those types of parser generators, but I suck at them. Ironically, I find it easier to roll my own parser/lexer/etc.

Oh wow, that'd be pretty awesome.

Ah ok, you usually seem to know what you're talking about so I was hoping you might be able to help me with something but nevermind.

Joe123 wrote:you usually seem to know what you're talking about


You don't know me very well then! 😉

But, hey, you can still try me. I'm available on IRC and MSN, if you want to chat. Just drop me a PM or something.

OK thanks, I might well do that some time.

Thinking about it, ZASM could even support dynamic memory without being changed at all if it were broken down to from a different language.