home *** CD-ROM | disk | FTP | other *** search
- %TITLE "Display DOS command-line parameters"
-
- IDEAL
- DOSSEG
- MODEL small
- STACK 256
-
- DATASEG
-
- exitCode db 0
- string db 20 DUP (?)
- s1 db 'Number of parameters = ', 0
-
-
- CODESEG
-
- ;---------- from PARAMS.obj
- EXTRN ParamCount:proc, GetParams:proc, GetOneParam:proc
-
- ;---------- from BINASC.obj, STRINGS.obj, STRIO.obj
- EXTRN BinToAscDec:proc, NewLine:proc, StrWrite:proc
- EXTRN BinToAscHex:proc, StrUpper:proc
-
- Start:
- mov ax,@data
- mov es,ax
- call GetParams
- call NewLine
- mov di,offset s1
- call StrWrite
- call ParamCount
- mov ax,dx
- mov cx,1
- mov di, offset string
- call BinToAscDec
- call StrWrite
- call NewLine
- xor cx,cx
- @@10:
- call ParamCount
- cmp cx,dx
- je Exit
- push cx
- call GetOneParam
- call StrUpper
- call StrWrite
- call NewLine
- pop cx
- inc cx
- jmp @@10
- Exit:
- mov ah,04Ch
- mov al,[exitCode]
- int 21h
-
- END Start