BASIC is the
Best
Approach to
Simple and
Intelligent
Coding. MasmBasic is a library that allows to use BASIC syntax
in assembler, i.e. it is not a "separate" language but rather a library of macros and routines,
fully compatible with
the latest Masm32 SDK (version 11),
MASM (version 6.15 or higher) and
UAsm, and thoroughly tested on Windows XP, 7, 8 and 10.
While MasmBasic is pretty stable (and pretty fast - typically
twice as fast as C), it is still
Assembler, therefore the usual disclaimers apply - do not use for military purposes, in hospitals and anywhere else where buggy applications could cause damage. You have been warned
To install the library, double-click SetupMasmBasic.exe in the attached archive (see step-by-step instructions).Note that some AntiVirus programmes don't like it - see
Latest batch of unsound AV scanners for reasons.
For an overview of the over 500 powerful available functions, see \Masm32\MasmBasic\MbGuide.rtf (after extracting the archive, of course) or see the (incomplete)
MasmBasic Quick Reference online. See also
A guide to the RichMasm editor.
3 March 2023: Updated archive attached below, now with
Json$(), RichMasm support for the Masm64 SDK,
SetWatch,
StackWalk,
StringBuild,
FastMath,
Say "Hello World",
ArrayIndex(array, match),
_Local x$="Hello World",
better UTF-8 support,
MemState for finding leaks,
MapView control,
Math symbols in RichMasm,
PrintRtf, dual 32/64-bit examples in File/New Masm source menu, and a
64-bit version of the deb macro. Older changes:
For_ each x$ in My$(), improved
Switch_;
GetFiles returns UTF8 now; WebCam,
GetProcessArray(), new GSL lib,
Choose, fast
MemSet,
Instr_() and
Sinus() added, GuiTextBox improved.
Data and
Read , float counters are valid in For_ ... Next, and xmm regs are preserved for all MasmBasic commands. Note that simple Windows API calls can trash them on 64-bit versions of Windows.
Latest additions: GuiXX functions, Split$, Join$, Filter$, commandline to Files$(), GfCallback, true Unicode, also in file I/O;
UnzipFile, ArraySet,
SetReg64 for 64-bit registry settings,
ArrayMerge,
Age(),
GetRegArrays, unsigned LONGLONG in
Str$(), ShEx,
xls interface,
ArraySet,
ArrayPlot, AddWin$, WritePipe, Plugins,
IsFolder(),
wOpen,
FileOpen$/FileSave$, also as Unicode versions, Extract$,
Dialogs, COM support (CoInvoke, GuidsEqual(), IUnknown, VARIANT, ...), improved ANSI and Unicode commandline macros CL$()/wCL$(),
improved xHelp,
Launch$(),
Try/Catch/Finally, ...
Installation hints for Windows 8 ... 10 (on Win7 & XP it's simpler):
- click on SetupMasmBasic
DayMonthYear.zip below
- depending on your browser and zip application, choose open in xyZip or Save as...
- if it doesn't open in 7-zip or WinZip or whatever, locate the zip file and open it
- once you see SetupMasmBasic.exe, open it (double-click or select and Enter)
- you should see an extraction dialog, and shortly after a box "Windows Protected Your PC - Windows SmartScreen prevented..."
- do NOT click OK; instead, click on the tiny green link "More info"
- you will see Program SetupMasmBasic.exe and "unknown publisher"; click "Run Anyway"
- the screen will darken, and you see a box "Do you want to allow .. changes to your computer?"
- click Yes
- you should see now a big box "MasmBasic - a fast library..." with a EULA; read it, then click "Accept & Install"
** if anything goes wrong, have a look at our AV Software sh*t list subforum, then disable your antivirus for the \Masm32 folder and try again; if that doesn't help, reply to this thread **