Brass - 1.0.5.3 update [06/02/2014]

One suite to code them all. An complete IDE and assembler for all your z80 projects!

Moderators: benryves, kv83

Post Reply
User avatar
Jim e
Calc King
Posts: 2457
Joined: Sun 26 Dec, 2004 5:27 am
Location: SXIOPO = Infinite lives for both players
Contact:

Post by Jim e »

That sounds good, if you add a way to manipulate the data you should also consider word size.

I see the manual says intelhex has been added, so how close to real app creation is brass?
Image
User avatar
benryves
Maxcoderz Staff
Posts: 3087
Joined: Thu 16 Dec, 2004 10:06 pm
Location: Croydon, England
Contact:

Post by benryves »

Jim e wrote:That sounds good, if you add a way to manipulate the data you should also consider word size.
Not sure what you mean by 'word size'... but start/end indices and a rule to apply to each byte has been added.
I see the manual says intelhex has been added, so how close to real app creation is brass?
I know nothing about creating apps still, I keep forgetting to copy Dwedit's app stuff to disk so I can take it home with me. Those output formats have not been very rigidly tested, but they should work. :| *crosses fingers*

Anyway: http://benryves.com/bin/brass/
Ternaries have been added, allowing for more complex expressions than ever before. :)
User avatar
Jim e
Calc King
Posts: 2457
Joined: Sun 26 Dec, 2004 5:27 am
Location: SXIOPO = Infinite lives for both players
Contact:

Post by Jim e »

benryves wrote:Not sure what you mean by 'word size'...
You said you considered adding expressions that would affect each byte but if the values are all 16bit, that may not work so well, but then again I'm not entirely sure how you were going to handle that.

I know dwedit app devkit shows how to do multi-page apps, and I believe floppusmaximus wrote signing utility(maybe not sure).
Image
User avatar
benryves
Maxcoderz Staff
Posts: 3087
Joined: Thu 16 Dec, 2004 10:06 pm
Location: Croydon, England
Contact:

Post by benryves »

Jim e wrote:
benryves wrote:Not sure what you mean by 'word size'...
You said you considered adding expressions that would affect each byte but if the values are all 16bit, that may not work so well, but then again I'm not entirely sure how you were going to handle that.
Fair point, I currently do it on each byte, not each word. *muses* If you can think of a sensible way to handle it, do let me know!

I have Dwedit's app pack on disk (finally!) so should be able to start picking that apart tonight and seeing what makes apps tick :)
User avatar
benryves
Maxcoderz Staff
Posts: 3087
Joined: Thu 16 Dec, 2004 10:06 pm
Location: Croydon, England
Contact:

Post by benryves »

Just a quick note - I accidentally uploaded a "broken" build of Brass (I had fixed a glitch where it silently fails if you define a label twice, but not copied the right EXE to disk). It's still 1.0.0.6, but the correct 1.0.0.6 :)
User avatar
benryves
Maxcoderz Staff
Posts: 3087
Joined: Thu 16 Dec, 2004 10:06 pm
Location: Croydon, England
Contact:

Post by benryves »

I really hope I haven't broken anything... 1.0.0.7 has a completely rewritten macro preprocessor.
http://benryves.com/bin/brass/macro_demo.asm is an example of the way the new macro system can be used.
User avatar
Timendus
Calc King
Posts: 1729
Joined: Sun 23 Jan, 2005 12:37 am
Location: Netherlands
Contact:

Post by Timendus »

Wow, you already added it :o
You're incredible :D
I'll play with this as soon as I have some time to spend on the API!
http://clap.timendus.com/ - The Calculator Link Alternative Protocol
http://api.timendus.com/ - Make your life easier, leave the coding to the API
http://vera.timendus.com/ - The calc lover's OS
User avatar
benryves
Maxcoderz Staff
Posts: 3087
Joined: Thu 16 Dec, 2004 10:06 pm
Location: Croydon, England
Contact:

Post by benryves »

I have uncovered a bug in the macro preprocessor. It only appears to affect macros defined through environment variables, and I will be looking into it. Just to warn you!
User avatar
benryves
Maxcoderz Staff
Posts: 3087
Joined: Thu 16 Dec, 2004 10:06 pm
Location: Croydon, England
Contact:

Post by benryves »

Damn, damn, damn - I found out where the bug was, but only forgot to copy the blasted EXE file, didn't I?
If you are creating a non-argumented macro, like this:

Code: Select all

#define SOMETHING

; Defined for this

#ifdef SOMETHING
#endif
...do not put any comments on the same line as the macro definition. I shall upload a properly working build tomorrow.
User avatar
benryves
Maxcoderz Staff
Posts: 3087
Joined: Thu 16 Dec, 2004 10:06 pm
Location: Croydon, England
Contact:

Post by benryves »

1.0.0.8 fixes the above macro glitch. Get it here.
KevinJB
Calc Wizard
Posts: 501
Joined: Sat 28 May, 2005 5:34 am
Location: Chesapeake, Virginia
Contact:

Post by KevinJB »

Great stuff, will have to throw TASM out finally
And stop breaking all shareware niceties :P? Never!
09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0
KevinJB | RevSoft
User avatar
benryves
Maxcoderz Staff
Posts: 3087
Joined: Thu 16 Dec, 2004 10:06 pm
Location: Croydon, England
Contact:

Post by benryves »

Brass 1.0.0.9
  • For-loops, allowing you to assemble blocks of code multiple times.
  • File operations for binary read access to files to let you do your own thing to them.
  • Shift-operator bugfixed.
User avatar
Timendus
Calc King
Posts: 1729
Joined: Sun 23 Jan, 2005 12:37 am
Location: Netherlands
Contact:

Post by Timendus »

Nice! I wonder how useful those options will be though :)
http://clap.timendus.com/ - The Calculator Link Alternative Protocol
http://api.timendus.com/ - Make your life easier, leave the coding to the API
http://vera.timendus.com/ - The calc lover's OS
User avatar
benryves
Maxcoderz Staff
Posts: 3087
Joined: Thu 16 Dec, 2004 10:06 pm
Location: Croydon, England
Contact:

Post by benryves »

Timendus wrote:Nice! I wonder how useful those options will be though :)
I've been writing a fast tilemapper which uses a lot of unrolled shift loops, and I have a sprite routine that does the same thing twice, once with AND (mask) and once with OR (picture) and so have used the loops for that as well. They've been very useful. ;)
The file operations; probably less-so, but they were easy to implement and offer some fairly powerful functionality.
User avatar
benryves
Maxcoderz Staff
Posts: 3087
Joined: Thu 16 Dec, 2004 10:06 pm
Location: Croydon, England
Contact:

Post by benryves »

Latenite users: Get thee a Brass XML help file.
Copy it into the "Help" folder in Latenite (should have lots of other XML files in it) then open a project, go File->Project Properties, Help, and tick the box next to "brass.xml".
Post Reply