News:

Masm32 SDK description, downloads and other helpful links
Message to All Guests
NB: Posting URL's See here: Posted URL Change

Main Menu

HJWasm Releases

Started by johnsa, January 16, 2016, 08:24:52 AM

Previous topic - Next topic

johnsa

Quote from: Vortex on January 30, 2016, 06:38:05 AM
Hello johnsa and habran,

First of all, many thanks for your nice work. Any plan later to add import libraries to your website terraspace.co.uk?

Import libraries for? (Sorry early in the morning and I'm not fully awake yet :) )

Vortex

Hello johnsa,

I mean, a batch file or a tool to create the import libraries from module definition files. You could convert a set of import libraries to .def files.
The purpose is to supply HJWASM with include files and import libraries.

habran

As far as I remember you are the one who can do that, can't you?
Cod-Father

TWell

WinInc208 already have those?

habran

You are right TWell, but maybe Vortex meant something else.
Cod-Father

GoneFishing

Quote from: johnsa on January 30, 2016, 08:26:46 PM
...
I can from my side now report a completely successful build using both Visual C and GCC (I no longer have warnings about truncation.
...

Travis GCC  build #11 still reports one warning:
Quote
directiv.c: In function 'IncBinDirective':
directiv.c:269:8: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]

see https://travis-ci.org/Terraspace/HJWasm/jobs/105851593

TWell

Sure,
linux users without wine needs pe-coff implib tool for cross compiling.

johnsa

Quote from: GoneFishing on January 30, 2016, 10:04:59 PM
Quote from: johnsa on January 30, 2016, 08:26:46 PM
...
I can from my side now report a completely successful build using both Visual C and GCC (I no longer have warnings about truncation.
...

Travis GCC  build #11 still reports one warning:
Quote
directiv.c: In function 'IncBinDirective':
directiv.c:269:8: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]

see https://travis-ci.org/Terraspace/HJWasm/jobs/105851593

I can live with that one.. ? (I don't even capture the return value).

johnsa

Quote from: Vortex on January 30, 2016, 09:03:37 PM
Hello johnsa,

I mean, a batch file or a tool to create the import libraries from module definition files. You could convert a set of import libraries to .def files.
The purpose is to supply HJWASM with include files and import libraries.

Do you mean to include wininc with hjwasm (but instead of just the asm include files you want the lib's too?)

GoneFishing

Quote from: johnsa on January 31, 2016, 12:22:32 AM
[...
I can live with that one.. ? (I don't even capture the return value).

Me too ... but no warnings at all sounds so exciting  ;)
Today I take my day off and what about you ?

johnsa

Quote from: johnsa on January 31, 2016, 12:22:32 AM
Quote from: GoneFishing on January 30, 2016, 10:04:59 PM
Quote from: johnsa on January 30, 2016, 08:26:46 PM
...
I can from my side now report a completely successful build using both Visual C and GCC (I no longer have warnings about truncation.
...

Travis GCC  build #11 still reports one warning:
Quote
directiv.c: In function 'IncBinDirective':
directiv.c:269:8: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]

see https://travis-ci.org/Terraspace/HJWasm/jobs/105851593

I can live with that one.. ? (I don't even capture the return value).

I fixed it anyway, build should be clean now. :)

GoneFishing

Yeah  :t
https://travis-ci.org/Terraspace/HJWasm/jobs/105877377

[EDIT] ... Cheers !!! ...

johnsa

Anyone on 64bit linux (and can/wants to test the hjwasm executable):

I've added the Travis-CI GCC x64 build to continuous deployment via S3, and the link directly to the executable is now on the website.
http://www.terraspace.co.uk/hjwasm.html

Habran has also extended the contents of the usertype file and that is uploaded too (v1.1)

GoneFishing

Quotefile ./hjwasm
./hjwasm: ELF 64-bit LSB  executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=db10ed3597322da02cab0a05f1b3be3c77dddd83, stripped

Quote./hjwasm  -elf64 simple.asm
HJWasm v2.13, Jan 30 2016, Masm-compatible assembler.
Portions Copyright (c) 1992-2002 Sybase, Inc. All Rights Reserved.
Source code is available under the Sybase Open Watcom Public License.

simple.asm: 9442 lines, 3 passes, 58426 ms, 0 warnings, 0 errors

Quote./hjwasm  -?
HJWasm v2.13, Jan 30 2016, Masm-compatible assembler.
Portions Copyright (c) 1992-2002 Sybase, Inc. All Rights Reserved.
Source code is available under the Sybase Open Watcom Public License.

   HJWasm [options] asm-file [options] [asm-file] ... [@env_var]

options:
-<0|1|..|10>[p]      Set CPU: 0=8086 (default), 1=80186, 2=80286, 3=80386,
                     4=80486, 5=Pentium, 6=PPro, 7=P2, 8=P3, 9=P4, 10=x86-64;
                     <p> allows privileged instructions
-c                   Assemble without linking (always set)
-C<p|u|x>            Set OPTION CASEMAP: p=NONE, u=ALL, x=NOTPUBLIC (default)
-D<name>[=text]      Define text macro
-e<number>           Set error limit number (default=50)
-EP                  Output preprocessed listing to stdout
-eq                  don't display error messages
-Fd[=<file_name>]    Write import definition file
-Fi<file_name>       Force <file_name> to be included
-Fl[=<file_name>]    Write listing file
-Fo<file_name>       Set object file name
-Fw<file_name>       Set errors file name
-FPi                 80x87 instructions with emulation fixups
-FPi87               80x87 instructions (default)
-fpc                 Disallow floating-point instructions (.NO87)
-fp<n>               Set FPU, <n> is: 0=8087 (default), 2=80287, 3=80387
-G<c|d|r|z>          Use Pascal, C, Fastcall or Stdcall calling convention
-I<directory>        Add directory to list of include directories
-m<t|s|c|m|l|h|f>    Set memory model:
                     (Tiny, Small, Compact, Medium, Large, Huge, Flat)
-nc=<name>           Set class name of code segment
-n<d|m|t>=<name>     Set name of d)ata segment, m)odule or t)ext segment
-q, -nologo          Don't display version and copyright information
-Sa                  Maximize source listing
-safeseh             Assert all exception handlers are declared
-Sf                  Generate first pass listing
-Sg                  Display generated code in listing
-Sn                  Suppress symbol-table listing
-Sx                  List false conditionals
-w                   Same as /W0 /WX
-W<number>           Set warning level number (default=2, max=4)
-WX                  Treat all warnings as errors
-X                   Ignore INCLUDE environment path
-zcm                 C names are decorated with '_' prefix (default)
-zcw                 No name decoration for C symbols
-Zd                  Add line number debug info (OMF & COFF only)
-Zf                  Make all symbols public
-zf<0|1>             Set FASTCALL type: 0=MS VC style (default),
                     1=OW register calling convention
-Zg                  Generated code is to exactly match Masm's one
-Zi[0|1|2|3]         Add symbolic debug info (OMF & COFF): 0=globals
                     1= +locals, 2= +types (default), 3= +constants
-zlc                 No OMF records about data in code
-zld                 No OMF records about far call optimization
-zl<f|p|s>           Suppress items in COFF symbol table: f=no .file entry,
                     p=no static procs, s=no auxiliary entries for sections
-Zm                  Masm v5.1 compatibility
-Zne                 Disable syntax extensions not supported by Masm
-Zp[n]               Set structure alignment, n=<1|2|4|8|16|32>
-Zs                  Perform syntax check only
-zt<0|1|2>           Set STDCALL symbol decoration: 0=No name decoration,
                     1=No '@size' suffix for functions, 2=Full (default)
-Zv8                 Enable Masm v8+ PROC visibility
-zze                 No name decoration for exported symbols
-zzs                 Store decorated name of start address (COFF only)
@env_var             Environment variable or file containing further commands
output formats:     
-bin                 plain binary file
-coff                COFF object file
-elf                 32-bit ELF object file
-elf64               64-bit ELF object file
-mz                  DOS MZ binary file
-omf                 OMF object file (default)
-pe                  PE binary file, 32/64-bit
-win64               64-bit COFF object file

johnsa

Well that looks promising :)