Further Brass development

Published April 28, 2006
Advertisement
One of my ongoing projects is Brass, a Z80 assembler.

The newest release adds all sort of goodness, especially nested modules - for example:
.nestmodules.local.module Animals    .module Cat        Legs = 4    .endmodule    .echo "Humans have ", Human.Legs, " legs.\n"    .module Human        Legs = 2        .module Brother            Age = 17            .echo "My sister is ", Animals.Human.Sister.Age, " years old.\n"        .endmodule        .module Sister            Age = 21            .global                Arms = 2            .endglobal        .endmodule    .endmodule    .module Spider        Legs = 8        .echo "A spider has ", Legs, " legs.\n"    .endmodule.endmodule.echo "Cats have ", Animals.Cat.Legs, " legs.\n".echo "My brother is ", Animals.Human.Brother.Age, " years old.\n".echo "My sister has ", Arms, " arms (global!)\n"

It also now allows for unsquished binaries (where each byte is expanded to two ASCII characters - the hexadecimal representation of the byte. This is used in native TI-83 programs).

I'm trying to unify (to some extent) 82, 83 and 83+ programming (as the hardware is fairly standard between them) - hopefully, fairly carefully written source code should be able to be assembled to 82, 83 and 83+ binaries for a variety of shells with a single keypress from Latenite. TI haven't made this easy with large inconsistency between system call names and variable names...
Previous Entry DOOM Source
0 likes 1 comments

Comments

Scet
Yeah I think you've moved far enough from assembly that it can no longer be called a "Z80 assembler". Mabye "macro assembler" or something else less corny.
April 28, 2006 01:40 PM
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Advertisement