- MMT - MMT - MMT - MMT - MMT - MMT - MMT - MMT - MMT - MMT - MMT - MMT - MMT - Technical Documentation for MMT Version 1.00 ³ by Carl Allain ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ 1995Ä02Ä14 ÚÄÄÄÙ ÄÄÄÄÄÄÄÄÄÄÄÙ ÍÍÍÍÍÍÍÍ MMT MODE ÍÍÍÍÍÍÍÍ This documentation describes in detail the capabilities of MMT while it is in MMT mode. MMT graphic and sound capabilities are valid only in this mode of operation. MMT will switch into MMT mode when it receives the following command while it is in ANSI mode: Escape character (ASCII code 27) + "[{" This command is an ANSI-like command because it begins with the escape character and the "[" character. Thus, the command is a sequence of 3 characters terminated with the "{" character. ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ MMT GRAPHIC CAPABILITIES ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ MMT offers 3 concurrent display pages in memory. The first one (page 0) is the visual page from which the video card perform its refresh cycles. The user can see the visual page at all times. The second page (page 1) is hidden and can be used to construct complex graphics witiout the user knowing what is going on. The third can be used the same way, but is normally reserved for storing sprites representing characters or small pictures. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ SUGGESTED TECHNIQUE FOR DRAWING COMPLEX GRAPHICS: ³ ³ ³ ³ Page 1 (hidden) or Page 2 (font) Page 0 (visible) ³ ³ ³ ³ ÚÄÄÄÄÄÄÄ¿ ÚÄÄÄÄÄÄÄ¿ ³ ³ ³ /\_/\ ³ ³ /\_/\ ³ ³ ³ ³ HELLO ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ> ³ HELLO ³ ³ ³ ³ ÄÄÄÄÄ ³ ³ ÄÄÄÄÄ ³ ³ ³ ÀÄÄÄÄÄÄÄÙ ÀÄÄÄÄÄÄÄÙ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ DRAWING TEXT ÄÄÄÄÄÄÄÄÄÄÄÄ At any time, there is a text box in the visual page. All characters that are not part of an MMT command are displayed automatically in this text box. The text box will scroll if necessary to fit incoming characters into its boundaries. The upper left corner of the text box is (0,0) and the lower right corner varies with the text box size. The largest text box is (0,0)-(319,199) (assumed by default) and the smallest text box you MUST use is a 1x1 character text box (exact size depends on the size of the current font used). However, inside the current text box, some characters of the ASCII set are not necessary displayed or have a special meaning for MMT. Those are standard control characters of the ASCII set: CHARACTER WITH AN ASCII CODE OF 7 : BELL CHARACTER CHARACTER WITH AN ASCII CODE OF 8 : BACKSPACE CHARACTER CHARACTER WITH AN ASCII CODE OF 10 : LINE FEED CHARACTER CHARACTER WITH AN ASCII CODE OF 12 : FORM FEED CHARACTER CHARACTER WITH AN ASCII CODE OF 13 : CARRIAGE RETURN CHARACTER *NOTE* Those characters are treated differently when displayed outside (or maybe inside) the current text box with the WriteStrXY, CopyIcons and CopySprites commands. All characters will be drawn using the current font table when using these commands except for the backspace character with the WriteStr command. *IMPORTANT* To draw text, you must prepare MMT before doing so. MMT must be told to use a font table, and the font itself must be somewhere in the font page (page 2). A standard font is loaded by default by MMT when it is entering MMT mode, with the corresponding font table. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ SUGGESTED TECHNIQUES FOR DRAWING TEXT (OR SPRITES/ICONS): ³ ³ ³ ³ Page 2 (font) Page 0 (visible) ³ ³ ³ ³ ÚÄÄÄÄÄÄÄ¿ ³ ³ ³ ABCDE ³ ÚÄÄÄÄÄÄÄ¿ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³ ÀÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄ> B ³ ³ ³ ÀÄÄÄÄÄÄÄÙ ³ ³ ³ ³ ÀÄÄÄÄÄÄÄÙ ³ ³ ³ ³ *OR* ³ ³ ³ ³ Page 2 (font) Page 1 (hidden) Page 0 (visible) ³ ³ ³ ³ ÚÄÄÄÄÄÄÄ¿ ³ ³ ³ ABCDE ³ ÚÄÄÄÄÄÄÄ¿ ÚÄÄÄÄÄÄÄ¿ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³ ÀÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÅÄ> B ³ ÄÄÄÄÄÄÄÄ> ³ B ³ ³ ³ ÀÄÄÄÄÄÄÄÙ ³ ³ ³ ³ ³ ³ ÀÄÄÄÄÄÄÄÙ ÀÄÄÄÄÄÄÄÙ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ COLORS ÄÄÄÄÄÄ MMT can handle one color palette in memory, called the current palette. This palette is made of 256 color entries (0Ä255). Each entry is Made of 3 basic color elements: red, green and blue (RGB), varying from 0 to 255. The default current palette is the standard VGA color palette. You should try to use the same colors indexes 0Ä15 at all times to provide constant colors you can use for diaplaying text. You can modify these color indexes if you really want to (watch color index 15 which is reserved for the mouse color and color index 0, reserved for the current background color usen when clearing a page with the ClearPage command. FONTS ÄÄÄÄÄ MMT can handle one font table in memory. A font table is made of 256 entries (0Ä255) which normally represents upper left and lower right coordinates of sprites/icons. Each font table entry is thus made of 4 elements: X1 (0-319), Y1 (0-199), X2 (X1-319) and Y2 (Y2-199). (X1, Y1) is the upper left corner of the sprite and (X2, Y2) is its lower right corner. Those sprites/icons may represent a set of multicolor or monochrome bit-mapped characters. Two standard font tables are provided with MMT. Those are the 8X8.FTT and 8X16.FTT files located in the fonts directory. Since all standard fonts are using 8x8 pixels or 8x16 pixels monochrome fonts, only those two font tables are needed to use all standard fonts. The .IMG files storing the fonts themselves are using color index 1 to indicate a colored pixel and color index 0 to indicate a transparent pixel. By using a font table and part of the font page for storing the actual bit-mapped font used, MMT can handle any bit-mapped font of any size, multicolor or not. *IMPORTANT* All characters within a font must be drawn in samll virtual squares of the same size (same width and same height) in order for MMT to use them correctly. *NOTE* MMT comes with some ready-to-work fonts. these are located in the fonts directory. The following standard MMT fonts are 8x8 fonts while all the others are 8x16 fonts: 3270-8.IMG 8X8.IMG 8X8ITAL.IMG APLS6.IMG APLS7.IMG APLS8.IMG BLCKSNSF.IMG FONTASY.IMG PC8.IMG SMALL.IMG SMEGA88.IMG SMVGA88.IMG STRETCH.IMG SUPER.IMG TECHTYPE.IMG THIN8X8.IMG TINYTYPE.IMG FILES USED BY MMT ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ MMT SCRIPT FILE (.MMT): Contains MMT commands and text. Size is variable. You can tell MMT to execute such a file with the RunScriptFile command. MMT PALETTE FILE (.PAL): Contains one palette as described earlier. Size is 768 bytes. MMT FONT TABLE FILE (.FTT): Contains one font table as described earlier. Size is 2048 bytes. MMT IMAGE FILE (.IMG): Contains one compressed image derived from the .PCX graphic files compression sheme. The image is preceded by a 4 byte header describing the height (1-320) and width (1-200) of the image. Size is variable, but cannot exceed 64K. MMT MUSIC FILE (.GDM) Contains both music and digitalized samples. MMT ANSI MODE FONTS (.BMF) Contains a complete ANSI mode text font. ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ MMT SCRIPT EXPLAINED ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ Ä A script command string is a character string up to 80 characters in length, beginning with a "{" and ending with a "}". The script command itself is what is left between those two characters. - A script command string can be places anywhere in a file or in a character stream. Ä The first character of all script commands represent the command code of the command script to perform. Each MMT command has a unique command code. Ä All numeric script commands elements are in base-36 notation for compactness and are field delimited (padded with zeros if necessary). Base-36 notation uses all digits and letters (0-9, A-Z) to represent numbers. The file BASE36.DOC provides a conversion table from decimal numbers to base-36 numbers. Letters used in a base-36 number must be in UPPERCASE in order to be processed by MMT. ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ SCRIPT COMMANDS ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ The following commands will use this command format to provide all the command elements required for it. Ex: {0122333} ³³ÃÙÃÄÙ ³³³ ÀÄÄ PARAMETER 3 ³³ÀÄÄÄÄ PARAMETER 2 ³ÀÄÄÄÄÄ PARAMETER 1 ÀÄÄÄÄÄÄ COMMAND CODE All numeric parameters range are expressed using base-36 notation. MMT_QUERYCONFIG ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {0} ³ À MMT COMMAND CODE This command is used to get an important part of the configuration of the remote computer. MMT will send back a string like "MMT100TT115138" in response to this command (the string is terminated by a carriage return character). We will now give the meaning for the many parts of this response string. MMT11123455677<Ù ÃÄÙÃÄÙ³³³ÃÙ³ÃÙ ³ ³ ³³³³ ³ÀÄ INTERCHARACTER DELAY IN MS TO USE IN MMT MODE ³ ³ ³³³³ ÀÄÄ REMOTE COMPUTER CPU TYPE ³ ³ ³³³ÀÄÄÄÄ REMOTE COMPUTER PLAYBACK RATE FOR MUSIC ³ ³ ³³ÀÄÄÄÄÄ REMOTE COMPUTER SOUND CARD TYPE ³ ³ ³ÀÄÄÄÄÄÄ T OR F DEPENDING IF THE REMOTE UART FIFO IS ENABLED ³ ³ ÀÄÄÄÄÄÄÄ T OR F DEPENDING IF THE REMOTE SYSTEM USES A MOUSE ³ ÀÄÄÄÄÄÄÄÄÄÄ MMT VERSION RUNNING ON THE REMOTE COMPUTER ÀÄÄÄÄÄÄÄÄÄÄÄÄÄ MMT SIGNATURE The 3 important elements of the response string are: 1) The MMT version running on the remote computer. Software running on the host computer may use certain features of MMT that are only available beginning with a specific version. This information can be used to know if the remote system supports the commands you intend to use during the MMT mode session. A value of "100" for this field means "Version 1.00". 2) Knowing if the remote computer has mouse capability may be important for some software running on the host system. The software may depend on a remote mouse capability to accomplish some kind of action or may be necessary for the remote user to provide a response to a question. A "T" (true) in this field means the remote system has mouse capability. Any other value may be considered as false. 3) Software running on the host system must respect at all times the intercharacter delay returned in the last part of this response string. Otherwise, commands sent to the remote system will not be processed with enough time and character losses will result in some garbage on the remote system. This especially true while the remote system is playing music on a SoundBlaster sound card without UART fifo buffering. A value of "20" means the host system must wait at least 20 miliseconds between each character sent to the remote system to avoid major problems. The numeric parameters of the response string are not in base-36. They use the decimal notation. MMT_ACTIVEPAGE ÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {12} ³³ ³À P1 (0-2) ÀÄ MMT COMMAND CODE This command is used to set the active page to P1. All graphic commands will be performed in the active page by default. MMT_GRAPHCOLOR ÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {211} ³ÃÙ ³ÀÄ C1 (00Ä73) ÀÄÄ MMT COMMAND CODE This command is used to set current graph color to C1. All graphic commands will be performed using current graph color by default. MMT_LINE ÄÄÄÄÄÄÄÄ FORMAT : {311223344} ³ÃÙÃÙÃÙÃÙ ³³ ³ ³ ÀÄ Y2 (Y1Ä5J) ³³ ³ ÀÄÄÄ X2 (X1Ä8V) ³³ ÀÄÄÄÄÄ Y1 (00Ä5J) ³ÀÄÄÄÄÄÄÄ X1 (00Ä8V) ÀÄÄÄÄÄÄÄÄ MMT COMMAND CODE This command is used to draw a line from the point (X1,Y1) to (X2,Y2) using current graph color in active page. MMT_RECTANGLE ÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {411223344} ³ÃÙÃÙÃÙÃÙ ³³ ³ ³ ÀÄ Y2 (Y1Ä5J) ³³ ³ ÀÄÄÄ X2 (X1Ä8V) ³³ ÀÄÄÄÄÄ Y1 (00Ä5J) ³ÀÄÄÄÄÄÄÄ X1 (00Ä8V) ÀÄÄÄÄÄÄÄÄ MMT COMMAND CODE This command is used to draw a rectangle using current graph color in active page. Upper left and lower right corners are (X1,Y1) and (X2,Y2). MMT_FILLEDBOX ÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {511223344} ³ÃÙÃÙÃÙÃÙ ³³ ³ ³ ÀÄ Y2 (Y1Ä5J) ³³ ³ ÀÄÄÄ X2 (X1Ä8V) ³³ ÀÄÄÄÄÄ Y1 (00Ä5J) ³ÀÄÄÄÄÄÄÄ X1 (00Ä8V) ÀÄÄÄÄÄÄÄÄ MMT COMMAND CODE This command is used to draw a filled box using current graph color in active page. Upper left and lower right corners are (X1,Y1) and (X2,Y2). MMT_FILLPOLY ÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {61122} ³ÃÙÃÙ ³³ ÀÄ Y1 (00Ä5J) ³ÀÄÄÄ X1 (00Ä8V) ÀÄÄÄÄ MMT COMMAND CODE This command is used to fill a polygon delimited region of active page previously drawn using current graph color with current graph color. Initial filling coordinates are (X1,Y1). MMT_POINT ÄÄÄÄÄÄÄÄÄ FORMAT : {71122} ³ÃÙÃÙ ³³ ÀÄ Y1 (00Ä5J) ³ÀÄÄÄ X1 (00Ä8V) ÀÄÄÄÄ MMT COMMAND CODE Draw a point using current color on active page at (X1, Y1). MMT_CLEARPAGE ÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {8} ³ À MMT COMMAND CODE This command is used to active page P1 using color index 0 of current palette (background color). MMT_COPYPAGE ÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {912} ³³³ ³³À P2 (0Ä2,P2<>P1) ³ÀÄ P1 (0Ä2) ÀÄÄ MMT COMMAND CODE This command is used to copy page P1 to P2. MMT_COPYSPRITE ÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {A12334455667788} ³³³ÃÙÃÙÃÙÃÙÃÙÃÙ ³³³³ ³ ³ ³ ³ ÀÄ Y3 (00Ä5J) ³³³³ ³ ³ ³ ÀÄÄÄ X3 (00Ä8V) ³³³³ ³ ³ ÀÄÄÄÄÄ Y2 (Y1Ä5J) ³³³³ ³ ÀÄÄÄÄÄÄÄ X2 (X1Ä8V) ³³³³ ÀÄÄÄÄÄÄÄÄÄ Y1 (00Ä5J) ³³³ÀÄÄÄÄÄÄÄÄÄÄÄ X1 (00Ä8V) ³³ÀÄÄÄÄÄÄÄÄÄÄÄÄ P2 (0Ä2,P2<>P1) ³ÀÄÄÄÄÄÄÄÄÄÄÄÄÄ P1 (0Ä2) ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄ MMT COMMAND CODE This command is used to copy a rectangular region (X1,Y1)Ä(X2,Y2) from page P1 to (X3,Y3)Ä(X3+X2ÄX1,Y3+Y2ÄY1) in page 02. Only pixels with a color index greater than zero (>0) are copied during the process. MMT_COPYICON ÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {B12334455667788} ³³³ÃÙÃÙÃÙÃÙÃÙÃÙ ³³³³ ³ ³ ³ ³ ÀÄ Y3 (00Ä5J) ³³³³ ³ ³ ³ ÀÄÄÄ X3 (00Ä8V) ³³³³ ³ ³ ÀÄÄÄÄÄ Y2 (Y1Ä5J) ³³³³ ³ ÀÄÄÄÄÄÄÄ X2 (X1Ä8V) ³³³³ ÀÄÄÄÄÄÄÄÄÄ Y1 (00Ä5J) ³³³ÀÄÄÄÄÄÄÄÄÄÄÄ X1 (00Ä8V) ³³ÀÄÄÄÄÄÄÄÄÄÄÄÄ P2 (0Ä2,P2<>P1) ³ÀÄÄÄÄÄÄÄÄÄÄÄÄÄ P1 (0Ä2) ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄ MMT COMMAND CODE This command is used to copy a rectangular region (X1,Y1)Ä(X2,Y2) from page P1 to (X3,Y3)Ä(Y3+Y2ÄY1) in page P2. All pixels are copied during the process. MMT_COPYSPRITES ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {C1122STRING} ³ÃÙÃÙÃÄ//ÄÙ ³³ ³ ÀÄÄÄÄÄ S1 (1Ä68 CHARACTERS) ³³ ÀÄÄÄÄÄÄÄ Y1 (00Ä5J) ³ÀÄÄÄÄÄÄÄÄÄ X1 (00Ä8V) ÀÄÄÄÄÄÄÄÄÄÄ MMT COMMAND CODE This command is used to copy one or more sprites from font page to visual page. MMT will be looking up in the current font table for each character of S1 to determine their source coordinates in font page. coordinates X1 and Y1 are updated after each sprite is copied. This command is normally used to draw multicolor and/or transparent characters. MMT_COPYICONS ÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {D1122STRING} ³ÃÙÃÙÃÄ//ÄÙ ³³ ³ ÀÄÄÄÄÄ S1 (1Ä71 CHARACTERS) ³³ ÀÄÄÄÄÄÄÄ Y1 (00Ä5J) ³ÀÄÄÄÄÄÄÄÄÄ X1 (00Ä8V) ÀÄÄÄÄÄÄÄÄÄÄ MMT COMMAND CODE This command is used to copy one or more icons from font page to visual page. MMT will be looking up in the current font table for each character of S1 to determine their source coordinates in font page. coordinates X1 and Y1 are updated after each icon is copied. This command is normally used to draw multicolor and/or transparent characters. MMT_QUERYFILE ÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {EDIRECTORY\FILENAME.EXT} ³ÃÄÄÄÄÄÄÄÄÄ//ÄÄÄÄÄÄÄÄÄÙ ³ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ F1 (1Ä77 CHARACTERS) ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ MMT COMMAND CODE This command is used to determine if the file \MMT\F1 exists on the remote computer hard disk. MMT will send back "T" (true) or "F" (false) in response to this command. MMT_LOADIMAGE ÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {F1122DIRECTORY\FILENAME} ³ÃÙÃÙÃÄÄÄÄÄÄÄ//ÄÄÄÄÄÄÄÙ ³³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ F1 (1Ä71 CHARACTERS) ³³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Y1 (00Ä5J) ³ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ X1 (00Ä8V) ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ MMT COMMAND CODE This command is used to load the image file \MMT\F1.IMG from the remote computer hard disk at coordinates (X1,Y1) in current page. The .IMG extension will be added by to the filename by MMT. MMT_LOADFONTTABLE ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {GDIRECTORY\FILENAME} ³ÃÄÄÄÄÄÄÄÄ//ÄÄÄÄÄÄÙ ³ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ F1 (1-77 CHARACTERS) ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ MMT COMMAND CODE This command is used to load the font file \MMT\F1.FTT from the remote computer hard disk and use it immediately as the current font table. The .FTT extension will be added to the filename by MMT. MMT_DEFINETEXTBOX ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {H11223344} ³ÃÙÃÙÃÙÃÙ ³³ ³ ³ ÀÄ Y2 (Y1Ä5J) ³³ ³ ÀÄÄÄ X2 (X1Ä8V) ³³ ÀÄÄÄÄÄ Y1 (00Ä5J) ³ÀÄÄÄÄÄÄÄ X1 (00Ä8V) ÀÄÄÄÄÄÄÄÄ MMT COMMAND CODE This command defines a rectangular text box for diaplaying incoming characters during the MMT session. Upper left and lower right corners of the text box are (X1,Y1) and (X2,Y2). All characters that are not part of an MMT command (plus those contained in an invalid command) will be displayed in the text box in visual page, using the current font table for drawing characters with current text foreground and background colors. The current text box is automatically cleared using current text box background color and the cursor is moved to (0,0) relative to the upper left corner of the text box. MMT_LOCATE ÄÄÄÄÄÄÄÄÄÄ FORMAT : {I1122} ³ÃÙÃÙ ³³ ÀÄ Y1 (00Ä5J) ³ÀÄÄÄ X1 (00Ä8V) ÀÄÄÄÄ MMT COMMAND CODE Move the text cursor position to (X1,Y1) in the current text box. Those coordinates are relative to the upper left corner of the current text box and must fit within its boundaries to be accepted. MMT_TEXTFOREGROUND ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {J11} ³ÃÙ ³ÀÄ C1 (00Ä73) ÀÄÄ MMT COMMAND CODE This command is used to set the current text foreground color to color index C1 of the current palette. Text box characters are drawn using current text foreground and background colors. MMT_TEXTBACKGROUND ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {K11} ³ÃÙ ³ÀÄ C1 (00Ä73) ÀÄÄ MMT COMMAND CODE This command is used to set the current text background color to color index C1 of the current palette. Text box characters are drawn using current text foreground and background colors. MMT_WRITESTRXY ÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {L1122STRING} ³ÃÙÃÙÃÄ//ÄÙ ³³ ³ ÀÄÄÄÄÄ S1 (1Ä69 CHARACTERS) ³³ ÀÄÄÄÄÄÄÄ Y1 (00Ä5J) ³ÀÄÄÄÄÄÄÄÄÄ X1 (00Ä8V) ÀÄÄÄÄÄÄÄÄÄÄ MMT COMMAND CODE This command is used to write the string S1 in active page beginning at the absolute cursor position (X1,Y1) using current text foreground and background colors. No automatic scrolling occurs and the current cursor position within the current text box is not modified by this command. This command is normally used to display text outside the current text box without affecting it. Text is drawn using coordinates specified in the current font table. MMT_LOADPALETTE ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {MDIRECTORY\FILENAME} ³ÃÄÄÄÄÄÄÄ//ÄÄÄÄÄÄÄÙ ³ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ F1 (1-77 CHARACTERS) ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ MMT COMMAND CODE This command is used to load the palette file \MMT\F1.PAL from the remote computer hard disk and use it imnmediatly as the current palette. The .PAL extension will be added to the filename by MMT. MMT_COLORINDEX ÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {N11223344} ³ÃÙÃÙÃÙÃÙ ³³ ³ ³ ÀÄ B1 (00-73) ³³ ³ ÀÄÄÄ G1 (00Ä73) ³³ ÀÄÄÄÄÄ R1 (00Ä73) ³ÀÄÄÄÄÄÄÄ C1 (00Ä73) ÀÄÄÄÄÄÄÄÄ MMT COMMAND CODE This command is used to modify a particular color index of the current palette. After this command is issued, color index C1 will be composed of the RGB entrues R1, G1 and B1 respectively. MMT_CLEARPALETTE ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {O} ³ À MMT COMMAND CODE This command is used to clear all RGB entries of all color indexes of the current palette instantly. MMT_DEFINEMOUSEBOX ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {P112233445} ³ÃÙÃÙÃÙÃÙ³ ³³ ³ ³ ³ À C1 (ANY CHARACTER) ³³ ³ ³ ÀÄÄ Y2 (Y1Ä5J) ³³ ³ ÀÄÄÄÄ X2 (X1Ä8V) ³³ ÀÄÄÄÄÄÄ Y1 (00Ä5J) ³ÀÄÄÄÄÄÄÄÄ X1 (00Ä8V) ÀÄÄÄÄÄÄÄÄÄ MMT COMMAND CODE This command is used to define a rectangular mouse region from upper left corner (X1,Y1) to lower right corner (X2,Y2). Coordinates are absolute. If the user clicks this region with mouse left button, MMT will send back the character C1 (response character) as if it were entered from the keyboard. MMT_CLEARMOUSEBOXES ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {Q} ³ À MMT COMMAND CODE This command is used to clear all previously defined mouse boxes. MMT_CLEARMOUSEBOX ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {R1} ³³ ³À C1 (ANY CHARACTER) ÀÄ MMT COMMAND CODE This command is used to clear the mouse box with response character C1. MMT_MOUSEICON ÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {S1} ³³ ³À N1 (0-1) ÀÄ MMT COMMAND CODE This command is used to modify the current mouse cursor according to the following table: N1 = 0 -> ARROW (DEFAULT) N1 = 1 -> MMT SYMBOL MMT_LOADMUSIC ÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {TDIRECTORY\FILENAME} ³ÃÄÄÄÄÄÄÄ//ÄÄÄÄÄÄÄÙ ³ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ F1 (1-77 CHARACTERS) ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ MMT COMMAND CODE This command is used to load the music file \MMT\F1.GDM from the remote computer hard disk and make it the current music module. The .GDM extension will be added to the filename by MMT. MMT_STARTMUSIC ÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {U} ³ À MMT COMMAND CODE This command is used to start the current music module (previously loaded with the LoadMusic command). The music will loop until stopped. MMT_STOPMUSIC ÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {V} ³ À MMT COMMAND CODE This command is used to stop the currently playing music module. MMT_PLAYSAMPLE ÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {W112} ³ÃÙ³ ³³ À R1 (5ÄK) ³ÀÄÄ N1 (00-73) ÀÄÄÄ MMT COMMAND CODE This command is used to play sample N1 at sampling rate R1. R1 is expressed in kilohertz (KHZ). MMT_RUNSCRIPTFILE ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {XDIRECTORY\FILENAME} ³ÃÄÄÄÄÄÄÄ//ÄÄÄÄÄÄÄÙ ³ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ F1 (1-77 CHARACTERS) ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ MMT COMMAND CODE This command is used to order MMT to execute the script file \MMT\F1.MMT from the remote computer hard disk. The .MMT extension will be added to the filename by MMT. MMT_QUITMMTMODE ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FORMAT : {Y} ³ À MMT COMMAND CODE This command is used to order MMT to return to ANSI mode and stop processing MMT commands. ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ FOR PROGRAMMERS ONLY ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ If you would like to make a door or an utility that uses MMT, or if want to know all the secrets behind MMT, I have written a more complete and detailed documentation for MMT. This documentation will be available for free at PowerLine BBS (514) 723-6848 if the demand is high enough. The documentation may also be available in french (en fran‡ais!). ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ CONTACTING THE AUTHOR ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ You can Email me at: PowerLine BBS (514) 723-6848 FidoNet Address 1:167/812 Adresse FrancoMedia 101:170/202 Carl Allain 6720 Molson Montreal, Quebec H1Y 3C7 CANADA (514) 727-1367 (voice for serious people) - MMT - MMT - MMT - MMT - MMT - MMT - MMT - MMT - MMT - MMT - MMT - MMT - MMT -