Registering buttons
Before you can use a .BTN file you must first "register" it using the "Button Register" tool, which displays all possible .BTN files to the left and all registered .BTN files to the right. Why bother? Well, it appears that the bitmap memory on the MX-1000 is quite limited. The Register tool will only allow you to have a total of 31 buttons, no matter what their individual sizes. In addition, 8 are "System Buttons" and cannot be changed or removed – so don’t plan on adding galleries of favorite channel logos. Although there does not appear to be a specific size limit on buttons (other than the maximum size of the screen), I discovered that there is indeed a semi-enforced limit on the total amount of space available, which can be discovered by attempting to download the file. Each time you do that the file is compiled – and if you’ve used too much bitmap space the program will simply crash. One other "gotcha" – when registering buttons, don’t double-click on a button you want to add. Instead, use the proper "import" button. If you double-click the button will be added, but in an unusable state where you will not be able to delete it later.
Advanced editing
Although the screen is 160x240 pixels, some of that cannot be edited. The space available for modification is actually 160x207 pixels, minus a small notch on the bottom right that contains the permanent "Last Page" button. The resolution and physical screen size is big enough for four rows of buttons – five if you use the space beside "Last Page", up to 3 buttons wide. If you want text labels that aren’t part of a button you can use the "Text Tool", which can place text anywhere on the screen. Although still limited to 14 characters per instance, you can create as many text objects as you want. In addition, the entire screen background is customizable using the same paint tools as in the Button Designer. The MX-1000 will even create automatic transparent backgrounds for all corners of a button by "masking out" the color white when it is against the file’s edge. This is also an ingenious way to create a true reversible button image (for when it’s pressed) without the need of a fifth color or entire second image.
Before...
After!
Modifying the "Main" page can be a little more work. Since you’re stuck with 12 devices and 3 macros whether you want them or not, you cannot add or remove buttons from view. To hide them you can assign a smaller image, then drop them behind another button. If you want to relabel a device you must do that before moving its matching button from the original position – otherwise your text change will not take effect for the actual device (although later changes will be reflected when you download to the remote). Although you can’t do much on the "Main" page, you can customize the "Main1" page as much as you like. This makes me think that the "Main1" page should be the only page on the remote – having two, one editable, one not, seems redundant.
Usability
This brings me to actually using MXOP. Overall the package seems quite promising, although I found stability poor with frequent unpredictable "subscript out of range errors". Placing buttons temporarily over other buttons can have undesirable effects on their text labels. But as long as you save often and to different filenames you should encounter no lasting problems. MXOP itself seems to be fairly slow between each operation – and this appears to be because it reloads both the main file and all .BTN files on a regular basis.