Tools

Tools & Toys

EDITOR
The editor for MASM32 is qeditor.exe. It is to your advantage to set up the file associations in File Manager so that you can start an ASM file by double clicking on it in either File Manager or Explorer. Depending on how the individual computer is set up, this can sometimes be a problem in that Explorer will pass variable command line parameters enclosed in different formats. The best solution is to run "Options" in Explorer and set the options as follows,

1. Select "Show All Files"

2. Select "Display the full MS-DOS path in the title bar"

3. Do not select "Hide MS-DOS file extensions for file types that are registered"

4. Select "Include description bar for right and left pains"

The editor comes pre-configured to build all of the example code and Iczelion's tutorials directly from the editor. The "PROJECT" menu has the range of build option on it to select and it support both GUI and CONSOLE applications.

CODE GENERATOR
Prostart.Exe is the code generator supplied with MASM32. It will build working EXE files as a starter to a project. It has various options for the included components in the source code. Prostart.Exe is a very useful learning tool in that it writes correct API based code for Window based applications. This code can be used for starting an application, for prototyping code without having to manually write the startup code and also for testing ideas quickly.

You will need to create a directory for a new project, select this directory and then choose the options you need for the project. You can create the project directly from Prostart.Exe and test it to see if it does what you require. Projects written by Prostart.Exe are designed to build directly from the editor and they can also be built from the batch file that Prostart.Exe creates.

EXAMPLE CODE
MASM32 comes with a range of example code to help in designing components of a project file. It is in the EXAMPLE1, EXAMPLE2 & EXAMPLE3 directories of MASM32.

TUTORIAL CODE
Iczelion has made his set of tutorials available to MASM32 and has modified them to work in MASM32. Each tutorial is in its own directory which is off the directory ICZTUTES in MASM32.

NOTE : The tutorial code and the example code are different styles written by different people and they are for slightly different purposes. Iczelion's tutorials are designed as learning examples as well as for the value of the code where the main example code is designed as reference examples. make sure you understand the code design of both before you mix the source code as you can sometimes get compatibility problems if you cut and paste from one code design to another.

LIBRARIES
MASM32 has its own library in the M32LIB directory which has full source code and a pre-built batch file to build the library again if it has been modified or added to. You can use the batch file MAKE.BAT as an example of how to build your own libraries.

You start with a seperate directory and when you write a library module, you copy it to the directory where you want to build the library. Create an INCLUDE file that has the prototype for each function in each library module and then make a batch file of the same style as the MAKE.BAT batch file which will build the library for you. You can then use the include file and the library in your own programs

To facilitate the process of writing library modules, the editor has an option on the TOOLS menu to "Create Library Module". This is a plug in DLL that put a library module skeleton directly into the editor so you can easily write new modules of your own design.

Together with MACROS, libraries are very powerful methods of making re-usable code that is fast, efficient and reliable to use at the application level. Combinations of libraries and MACROS allow the assembler language programmer to effectively design their own language that can be written as fast as a normal high level language but without the bad habits and bloat that most modern high level languages suffer from.