Jump to content
  • Advertisement
  • entries
    222
  • comments
    606
  • views
    590724

Further Brass development

Sign in to follow this  
benryves

710 views

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...
Sign in to follow this  


1 Comment


Recommended Comments

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.

Share this comment


Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!