MasmBasic was updated, version 8 May features some improvements under the hood, inter alia building a library has become a lot faster because it will no longer do a full rebuild (unless you use Shift F6).
As a side effect, RichMasm now supports the conversion of a library folder into a single source (the MasmBasic library is indeed one fat 2.2 MB file containing 33 modules). To test this feature, extract the attached files to a folder of your choice, then either drag a folder over the exe, or open a DOS prompt and type e.g.
BuildTheLibSource.exe \Masm32\m32libSoon after, RichMasm will show you more or less this:
include TestFile.asm
OxPT_LibName \fullpath\MyLib
OPT_DelTmp 0
OPT_DelObj 0
OPT_Tgt rml ; RichMasmLibrary
OPT_Linker link ; polink does not recognise certain options
OPT_Arg1 "Hello coder, how are you?" ; for testing
LibMod AA: a2dw
; #########################################################################
; --------------------------------------
; This procedure was written by Iczelion
; --------------------------------------
.386
.model flat, stdcall ; 32 bit memory model
... etc ...
Hit F6 and watch the library being built. By default, it will be named BuildLib.lib - move it wherever you need it, the little TestFile.asm includes it "as is", i.e. as BuildLib.lib
What is the advantage of one big source file, instead of 237 tiny modules? It surely is a matter of taste, but, for example, you can search the source for
mov e*, 0 to do a bit of maintenance (Intel says xor reg32, reg32 is the right thing to do). Plus comfortable navigation, highlighting of critical parts, etc - it's not meant for bare metal purists :P