Author Topic: HJWasm 2.25 release  (Read 6427 times)

johnsa

  • Member
  • ****
  • Posts: 893
    • Uasm
HJWasm 2.25 release
« on: April 06, 2017, 01:34:51 AM »
Ok,

Grab 2.25 from the site or Github.

New features and updates:

1) Fixed another 16byte alignment issue for stackbase RSP.
2) Optimised some internal hashing, character validation and file buffering in the assembler, has reduced assembly times by about 5%
3) Added OPTION REDZONE:{yes/no} support for SystemV ABI to enable or disable this optimisation.
4) Added a full OO system and language extension set through the new macro engine. (This will be documented shortly).

jj2007

  • Member
  • *****
  • Posts: 13957
  • Assembly is fun ;-)
    • MasmBasic
Re: HJWasm 2.25 release
« Reply #1 on: April 06, 2017, 01:55:52 AM »
Fine for my 32-bit sources, but with my 64-bit code templates I get a namespace conflict:
Error A2143: Symbol redefinition: INTERFACE

The offending line is from WinExtra.inc: INTERFACE equ IDirectDraw

See http://www.masmforum.com/board/index.php?topic=1647.msg12669#msg12669 for its usage.

That must have been introduced with version 2.25, because 2.24 of 4 April works fine.

johnsa

  • Member
  • ****
  • Posts: 893
    • Uasm
Re: HJWasm 2.25 release
« Reply #2 on: April 06, 2017, 02:00:56 AM »
Run it with -nomlib

INTERFACE has become a reserved word.
-nomlib will disable that, if you don't need it.

Or you could rename INTERFACE equ IDirectDraw to DDINTERFACE equ IDirectDraw ?

Also how is the speed now? It should be even a touch better than before.

jj2007

  • Member
  • *****
  • Posts: 13957
  • Assembly is fun ;-)
    • MasmBasic
Re: HJWasm 2.25 release
« Reply #3 on: April 06, 2017, 02:07:34 AM »
Speed is fine, although my timings are not very exact. About 5%, as you wrote above.

aw27

  • Guest
Re: HJWasm 2.25 release
« Reply #4 on: April 06, 2017, 02:34:34 AM »
Grab 2.25 from the site or Github.
It works now for what I got here.

powershadow

  • Regular Member
  • *
  • Posts: 20
Re: HJWasm 2.25 release
« Reply #5 on: April 06, 2017, 06:58:27 PM »
If include file not found, I get "Error A2168: General Failure", without any explanation.
Previous (2.24) version shows "Error A2106" for all not found files and even try's to compile the source.

Update: Even after correcting the path i got the same error, 2.24 compile this source fine.
Tested on Hjwasm32.

johnsa

  • Member
  • ****
  • Posts: 893
    • Uasm
Re: HJWasm 2.25 release
« Reply #6 on: April 06, 2017, 07:29:23 PM »
Will check it out.

johnsa

  • Member
  • ****
  • Posts: 893
    • Uasm
Re: HJWasm 2.25 release
« Reply #7 on: April 06, 2017, 08:21:35 PM »
powershadow, please try the version on the site (package) now. Still 2.25 dated 6th of April.

powershadow

  • Regular Member
  • *
  • Posts: 20
Re: HJWasm 2.25 release
« Reply #8 on: April 07, 2017, 05:58:16 AM »
powershadow, please try the version on the site (package) now. Still 2.25 dated 6th of April.
Error A2168: General Failure - fixed. But i can't compile all this new oop stuff. I get "Error A2209:Syntax error: CLASS" The same error for all new reserved words: "CLASS","CMETHOD","CSTATIC"... Maybe need some additional options for compile?
Would be great if in 'Samples' directory was samples for all new features since 2.22. :t

johnsa

  • Member
  • ****
  • Posts: 893
    • Uasm
Re: HJWasm 2.25 release
« Reply #9 on: April 07, 2017, 05:56:58 PM »
It looks like it needs some solid examples, noted from the other thread too.

I'm going to make a quick example of the OO stuff in action and add it to the samples, I will also supply it separately.

You're right too, we need to update the samples to include some examples of all the new features, I'm on it! :)

johnsa

  • Member
  • ****
  • Posts: 893
    • Uasm
Re: HJWasm 2.25 release
« Reply #10 on: April 07, 2017, 07:50:52 PM »
There was a small bug in the $DELETE implementation which I've fixed. The new packages are up on the site and Git, dated 7th April.
The packages now include a new sample oo1.asm which demonstrates a few of the new features and using the OO layer.

powershadow

  • Regular Member
  • *
  • Posts: 20
Re: HJWasm 2.25 release
« Reply #11 on: April 08, 2017, 03:42:44 AM »
OO stuff only for x64? Because x32 totally don't understand it.

johnsa

  • Member
  • ****
  • Posts: 893
    • Uasm
Re: HJWasm 2.25 release
« Reply #12 on: April 08, 2017, 03:57:41 AM »
Correct. The whole macro lib feature is only for 64bit. We didn't look to implement anything for 32bit, a) because there is such a wealth of existing 32bit stuff to use in various includes and libraries and b)
64bit isn't just the future .. it's the present so why go back to 32bit :)

coder

  • Member
  • **
  • Posts: 95
Re: HJWasm 2.25 release
« Reply #13 on: April 08, 2017, 07:50:59 AM »
64bit isn't just the future .. it's the present so why go back to 32bit :)

Yeah! That's the spirit bro!  :greenclp:

Adamanteus

  • Member
  • **
  • Posts: 249
    • LLC "AMS"
Re: HJWasm 2.25 release
« Reply #14 on: April 11, 2017, 02:05:32 AM »
 Nice and unique, but a little unfixing consistency, so till it is not new keywords - maybe better to have abilities to turn them off by macro-order number ?!