nidud / asmc Goto Github PK
View Code? Open in Web Editor NEWMasm compatible assembler
License: GNU General Public License v2.0
Masm compatible assembler
License: GNU General Public License v2.0
Hi Nidud,
Thanks for maintaining Asmc. Testing the latest release with the include files coming with the Masm32 SDK :
G:\asmc-master>bin\asmc.exe /Zi /Zf /Zd Test.asm
Asmc Macro Assembler Version 2.34.39
Copyright (C) The Asmc Contributors. All Rights Reserved.
Assembling: Test.asm
***********
ASCII build
***********
\masm32\include\winextra.inc(1871) : error A2157: missing right parenthesis
\masm32\include\winextra.inc(1871): Included by
\masm32\include\windows.inc(26889): Included by
Test.asm(5): Main line code
\masm32\include\winextra.inc(1871) : error A2008: syntax error : IS_VALIDSTATEBITS
\masm32\include\winextra.inc(1871): Included by
\masm32\include\windows.inc(26889): Included by
Test.asm(5): Main line code
The empty line in winextra.inc is the offending one :
ELSE
SHARD_PATH equ SHARD_PATHA
ENDIF
<----- Empty line 1871
SHARD_PIDL equ 00000001h
SHCDF_UPDATEITEM equ 00000001h
The error message is reported in the Masm Forum.
Hi Nidud,
Poasm v12 can assemble the code below without any issues :
.386
.model flat,stdcall
option casemap:none
OutputText PROTO C :DWORD,:VARARG
ALIAS <OutputText>=<printf>
END
printf is exported by msvcrt.lib The purpose is to map the new symbol OutputText to the printf function.
Trying to assemble with asmc :
asmc.exe /coff Alias.asm
Asmc Macro Assembler Version 2.34.50
Copyright (C) The Asmc Contributors. All Rights Reserved.
Assembling: Alias.asm
Alias.asm(7) : error A2005: symbol redefinition : OutputText
Hi
asmc -?
does not work under linux (no matches found: -?) but asmc -h
(Manjaro linux zsh) idk for win
And thank you for this...seems that GTK apps are much easier to write now :)
Assembling: src/tokenize.asm
gcc -Wl,-pie,-z,now,-z,noexecstack -s -o asmc64 *.o
Assembling: src/typeid.asm
/usr/bin/ld: assemble.o: in function `SetMasm510':
assemble.asm:(.text+0xb5e): undefined reference to `Tokenize'
/usr/bin/ld: data.o:(.text+0x1c8): undefined reference to `Tokenize'
/usr/bin/ld: data.o:(.text+0x1e6): undefined reference to `Tokenize'
/usr/bin/ld: data.o:(.text+0x365): undefined reference to `Tokenize'
/usr/bin/ld: data.o:(.text+0x407): undefined reference to `Tokenize'
/usr/bin/ld: data.o:(.text+0x5bf): more undefined references to `Tokenize' follow
/usr/bin/ld: macro.o: in function `StoreMacro':
macro.asm:(.text+0x6b5): undefined reference to `GetToken'
/usr/bin/ld: macro.asm:(.text+0x708): undefined reference to `GetToken'
/usr/bin/ld: macro.asm:(.text+0x7c1): undefined reference to `GetToken'
/usr/bin/ld: macro.asm:(.text+0x9b2): undefined reference to `GetToken'
/usr/bin/ld: mem2mem.o: in function `mem2mem':
mem2mem.asm:(.text+0x703): undefined reference to `Tokenize'
/usr/bin/ld: mem2mem.asm:(.text+0x787): undefined reference to `Tokenize'
/usr/bin/ld: new.o:(.text+0x3f6): undefined reference to `Tokenize'
/usr/bin/ld: parser.o: in function `ParseLine':
parser.asm:(.text+0x346b): undefined reference to `Tokenize'
/usr/bin/ld: parser.asm:(.text+0x34cd): undefined reference to `Tokenize'
/usr/bin/ld: parser.o:parser.asm:(.text+0x4026): more undefined references to `Tokenize' follow
collect2: error: ld returned 1 exit status
make: *** [makefile:58: asmc64] Error 1
Assembling: src/types.asm
Assembling: src/undef.asm
gcc -Wl,-pie,-z,now,-z,noexecstack -s -o asmc *.o
Using GCC 11.4.1. It builds with 13.1 though.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.