@ECHO 'string' ; Write Message @ERROR 'string' ; Generate an Error @WARNING 'string' ; Generate a Warning .ADDMODEL name (item1) (item2)..; Add a model ; (item) ; (segName bits limit fill round write) ; segName = settings for this segment ; bits = segment bits ; limit = segment size limit ; fill = fill segment ; round = round segment ; write = ON / OFF .ADDRELOC value ; Add a value to the ; Relocation list ALIAS newName targetName ; Create an Alias .ALIAS newName targetName ; (see ALIAS) ALIASCHAR 'n' 't' ; Create an Alias Character .ALIASCHAR 'n' 't' ; (see ALIASCHAR) (name) ARRAY type value, count; Create an array .BLOCKSIZE value ; Change Block Size of the ; active Output File .DEFINE name ; Define an identifier DELETE name ; Deletes an Identifier .DELETE name ; (see DELETE) .DISK item ; "DISK"-Object ; (items) ; FILEEXISTS targetEquate 'filename' ; GETDIR targetEquate ; GETDISKDIR targetEquate driveID (name) DB values ; Define Byte (name) DW values ; Define Word (name) DD values ; Define Double-word (name) DQ values ; Define Quad-word (name) DF values ; Define 48-bit (name) DP values ; Define 48-bit (name) DT values ; Define TenByte .DYNARRAY item ; "DYNAMIC ARRAY"-Object ; (items) ; NEW objName VALUE/STRING/NAME size ; SETLENGTH objName size ; GETLENGTH objName targetEquate ; GETTYPE objName targetEquate ; SETITEM objName index value/'string'/name ; GETITEM objName index targetEquate ; GETNAME objName index ECHO 'string' ; Write Message END (label) ; Ends the current source (name) ENDM ; End of macro (name) ENDO ; End of object (name) ENDP ; End of procedure (name) ENDS ; End of section name EQU value ; Create a number Equate name EQUS 'string' ; Create a string Equate ERROR 'string' ; Generate an Error EXITM ; Leave Macro EXITO ; Leave Object .EXT 'ext' ; Change File Extension ; of the active Output .FILE item ; "FILE"-Object ; (items) ; NEW objName 'filename' ; OPEN objName 'filename' READ/WRITE ; CLOSE objName ; SEEK objName position ; GETPOS objName targetEquate ; GETLEN objName targetEquate ; GETMODE objName targetEquate ; GETERROR objName targetEquate ; ISEOF objName targetEquate ; WRITE objName item2 ; (item2) ; VALUE type value ; STRING 'string' ; STRINGLN 'string' ; BLOCK type dynArray startIndex count ; READ objName item3 ; (item3) ; VALUE type targetEquate ; STRING targetEquate ; BLOCK type dynArray startIndex count .FILL value ; Fill segment .FILLSEG value ; Fill segment ; (after assembling) .FIXINSTRPREFIXES ; Auto-set instruction prefixes 66h and 67h .GEN item ; "Generator"-Object ; (items) ; VALUE type value ; TEXT 'string' ; RELADDRESS type name (operator value) ; MEMADDRESS type name (operator value) ; SEGOFFSET type segname (operator value) ; SEGSIZE type segname (operator value) ; GETRELOCITEM index targetEquate ; GETRELOCLEN targetEquate ; GETPROCESSORVALUE targetEquate ; GETREGCODE regName targetEquate ; GETREGVALUE regName targetEquate .GET item ; "Get"-Object ; (items) ; PARAMETER targetEquate paramIndex ; PARAMCOUNT targetEquate ; MAINSOURCE targetEquate ; INITDATASOURCE targetEquate ; ENDDATASOURCE targetEquate ; OUTPUTFILE targetEquate ; MAJORVERSION targetEquate ; MINORVERSION targetEquate ; BUILD targetEquate ; RELEASE targetEquate ; DATE targetEquate ; TIME targetEquate ; CURRENTFILE targetEquate ; EXTRACTFILEDIR targetEquate 'filename' ; EXTRACTFILEEXT targetEquate 'filename' ; EXTRACTFILENAME targetEquate 'filename' ; EXTRACTFILEPATH targetEquate 'filename' ; ARRAYCOUNT targetEquate array INCLUDE 'filename' ; Include another source file .INCLUDE 'filename' ; (See INCLUDE) .INSTRDUMP 'filename' ; Dump instruction list to a file .HEADER 'name' identname (ptn) ; Create header .HEADERITEM hdrName item ; Add Item to Header ; (items) ; TEXT 'string' ; BYTE value ; WORD value ; DWORD value ; QWORD value ; FARPTR value ; TENBYTE value ; RELOCTBL type (BYTE, WORD, ...) ; ROUND value ; FILL value ; MEMO alpha-variable (A-Z) ; WRITEMEMO type alpha1 (operator alpha2) ; GETSEGSIZE type segment ; GETSEGOFFSET type segment ; WRITE type item2 (operator value) ; (items2) ; BLOCKCNT ; LASTBLOCKSIZE ; RELOCCNT ; SIZE ; STACK .LIMIT value ; Limit segment size name MACRO (params) ; Create a Macro MACRO name (params) ; Create a Macro MODEL name ; Set MODEL .MODEL name ; (see MODEL) .MODRM item ; "MODR/M"-Object ; (items) ; RESET ; GETRETURNVALUE targetEquate ; GENSTANDARD ; GENDIGIT ; GENSPECIAL ; SETTABLE name ; SETBITS value ; SETREG name ; SETREG1 name ; SETREG2 name ; SETREG3 name ; CLEARTABLE ; CLEARREG ; CLEARREG1 ; CLEARREG2 ; CLEARREG3 ; SETBRACKETCODE value(0-6) ; SETDIGIT value ; SETVALUE value .MODRMDATA tblName regs bits bracketCode values ; Add ModR/M Data to Table .MODRMTBL tblName columns ; Create ModR/M Table name OBJECT stdParam ((params)) ; Create an Object OBJECT name stdparam ((params)) ; Create an object ORG value ; Set ORG .ORG value ; (see ORG) .OUTPUT 'name' identname 'ext' headerName blockSize limit fill round (pattern) ; Create Output .OUTLIMIT value ; Set size limit of the ; active Output .OUTFILL value ; Fill the Output to ; requested size .OUTROUND value ; Round the Output .PARSER item ; "PARSER"-Object ; (items) ; SET stringEquate ; GETITEM dynArray index ; GETPARAM paramIndex ; SETPOS value ; NEXTCHAR ; SKIPBLANK ; IGNORECHAR value ; GETNAME ; GETNUMBER type targetEquate ; GETCALC targetEquate ; GETOPR targetEquate ; GETSTRING targetEquate ; GETBASICSTRING targetEquate ; GETNUM targetEquate ; NAMETOEQU targetEquate ; ISENDLINE targetEquate ; GETPOS targetEquate ; GETLEN targetEquate ; GETCHAR targetEquate ; GETCHARAT position targetEquate (name) PROC ; Create a Procedure PROC name ; Create a Procedure .PROCESSOR name value ; Create processor .REG name code ; Create a register .REGTABLE tblName reg1, reg2,.. ; Create a register table .REMOVEINSTRPREFIXES ; Remove instruction prefixes 66h / 67h .RESETFILLPATTERNPOS ; Reset the Segments ; Fill Pattern Position .ROUND value ; Rounds the segment .ROUNDSEG value ; Rounds segment ; (after assembling) .RUNINSTR name (params) ; Runs instruction SECTION sectionName useSegment ; Create a section (name) SECTION useSegment ; Create a section SEGMENT 'name' identname (ptn) ; Create a segment .SEGMENT 'name' identname (ptn) ; (see SEGMENT) .SEGREG name code value ; Create a segment register STACK value ; Set stack memory .STACK value ; (see STACK) .STRING item ; "STRING"-Object ; (items) ; SET targetEquate 'string' ; TOUPPER stringEquate ; TOLOWER stringEquate TERMINATE (NOBUILD) ; Stops assembling ; NOBUILD = Don't build output WARNING 'string' ; Generate a Warning