Compatible with:
DOS Maximite CMM MM150 MM170 MM+ MMX Picromite ArmiteL4
Armite F4 ArmiteH7 Picomite CMM2
Syntax:
LIST [file$]
LIST ALL [file$]
LIST FILES [fspec$] [, sort]
LIST COMMANDS
LIST FUNCTIONS
LIST PAGES
LIST PROFILE [CSV]
Description:
LIST [file$]
LIST ALL [file$]
List a program on the serial console.
LIST on its own will list the program with a pause at every screen full.
LIST ALL will list the program without pauses. This is useful if you wish to
transfer the program in the Maximite to a terminal emulator on a PC that has the
ability to capture its input stream to a file.
In most cases the filename 'file$' is required however if EDIT file$ or RUN
file$ has been used previously the "current program name" will have
been set and in that case LIST will default to using that filename.
Devices without a file system do not accept 'file$' and will LIST the current
loaded file.
LIST FILES [fspec$] [, sort] CMM2 only
This replaces the FILES command used on other devices.
Lists files in the current directory on the SD card.
'fspec$' (if specified) can contain search wildcards. Question marks (?) will
match any character and an asterisk (*) will match any number of characters.
If omitted, all files will be listed.
For example:
* Find all entries
*.TXT Find all entries with an extension of TXT
E*.* Find all entries starting with E
X?X.* Find all three letter file names starting and ending with X
‘sort’ specifies the sort order as follows:
size by ascending size
time by ascending time/date
name by file name (default if not specified)
type by file extension
LIST COMMANDS
LIST FUNCTIONS
CMM2, Arrmites, Picromite only
Lists all valid commands or functions
LIST PAGES
CMM2 only
Lists the start address, width, height, and size of all the video pages for the
current mode.
In addition it shows whether for specific modes lines are duplicated in order to
support the video output format.
LIST PROFILE [CSV]
CMM2 only
If OPTION PROFILING ON is set, program profiling is turned on.
This is a permanent option but it defaults to OFF whenever new firmware is
loaded.
With profiling on you will see a performance impact of about 5% caused by the
profiling data collection which happens at the MMBasic statement level. In
addition you will see a reduction in available variable RAM of 512KB.
Note that profiling and OPTION RAM are mutually incompatible.
With profiling enabled you can run your programs as usual and you should see no
change in behaviour other than as mentioned above.
You can see the way the program has run using the commands LIST PROFILE and LIST
PROFILE CSV
There are 5 comma-separated fields in the output
The first field is the number of times a given statement has been run
The second field is the average time in Microseconds taken to execute the
statement
The third field is the crunched statement as stored in memory. This is quoted to
make it easier to load into excel etc.
The fourth field is the filename in which the statement appears. This is blank
if the statement is in the main program, otherwise it gives the filename of the
include file in which the statement is to be found
The fifth and final field gives the line number of the statement in the source
file.
When LIST PROFILE CSV is used a file is created in the same directory as the
main program with the .BAS extension replaced with .CSV
LIST PROFILE can only be used at the command line
LIST PROFILE CSV can be used in a program allowing you to create and rename
multiple files while a program is running if required
A program can test if OPTION PROFILING is enabled using
MM.INFO$(OPTION PROFILING)
This returns a string "On" or "Off"
Last edited: 23 January, 2021