A newer version of Max is available. Click here to access the latest version of this document.

The Max Object

The Max object can be accessed as a property of a jsthis object (see jsthis Properties in the Global Methods Guide). It is intended to provide control over the application environment.

Max Properties

apppath [String]


The pathname of the Max application

arch [String]


The currently running Max architecture ('x64' or 'x86').

frontpatcher [Patcher]


The Patcher object of the frontmost patcher window, or a nil value if no patcher window is visible. You can traverse the list of open patcher windows with the next property of a Wind object.

isplugin [Number]


1 if the js object is within a plug-in; note that this would be 1 if the js object was within a plug-in loaded into the vst~ object in Max.

isruntime [Number]


1 if the currently executing Max application environment does not allow editing, 0 if it does.

loadbangdisabled [Number]


1 if the user has disabled loadbang for the currently loading patch. If your object implements a loadbang method, it can test this property and choose to do nothing if it is true.

os [String]


The name of the platform (e.g., “windows” or “macintosh”)

osversion [String]


The current OS version number.

time [Number]


The current scheduler time in milliseconds - will be a floating-point value.

version [String]


The version of the Max application, in the following form: "451"

Max Modifier Key Properties

cmdkeydown [Number]


1 if the command (Macintosh) or control (Windows) key is currently held down

ctrlkeydown [Number]


1 if the control key is currently held down

optionkeydown [Number]


1 if the option (Macintosh) or alt (Windows) key is currently held down

shiftkeydown [Number]


1 if the shift key is currently held down

Max Methods

The Max object can be accessed as a property of a jsthis object (see jsthis Properties above). Any message you can send to the max object using the semicolon notation in a message box can be invoked within Javascript using Javascript syntax. For example, the following in a message box:

; max preempt 1

This can be expressed in Javascript as:


For a list of current messages that can be sent to the Max object, refer to the Messages to Max Guide.

See Also

Name Description
JavaScript Usage JavaScript Usage