Overview

Top  Previous  Next

The EXPL Development System is a special version of EXPL (Embedded XPL) designed to make it easy to write and debug programs. The development system has a number of special features that make program development and debugging easier.

 

1. Integrated Editor, Compiler and Runtime System. The program is a complete Integrated Development Environment (IDE) that includes all the tools necessary to edit, test and run XPL programs:

 

Editor. The development system combines a copy of the Xedit editor with the XPL0 compiler and the I2L runtime system. This means that you can write, test and run XPL programs all from the same program.

 

Error/Warning List. XPL compiler errors, warnings and I2L runtime errors are displayed in a separate message list. After a compile, the most significant error is highlighted in the code, and the cursor is placed at the exact point in the code where the compiler found the error. Also, clicking on any item in the list highlights the corresponding location in the code. This makes it quick and easy to find and fix problems.

 

Intrinsic List. The program can display a list of all available intrinsics inside the editor. The intrinsic list is alphabetized and does incremental search, narrowing your choices as more characters are typed in. The intrinsic display includes dummy arguments so you can see which parameters are expected. Hitting Enter inserts the prototype into the code text.

 

2. Stand-Alone Programs. In addition to running a program inside the IDE, the development system can generate stand-alone, exe-file versions of the program that run independently of the IDE and development tools.

 

3. VGA Simulator. The output is sent to a simulated VGA screen. The VGA screen simulates 61 standard VGA and VESA modes including fonts, character attributes, aspect ratios, colors and resolutions.

 

4. Standard Intrinsics. This version of EXPL implements 61 of the standard XPL0 intrinsics. Fifteen standard intrinsics are not implemented. These include DOS-specific Intrinsics, low-level functions and some dangerous operations. The lost functionality has been replaced with the extended intrinsics, which are more general purpose, more powerful and easier to use.

 

5. Extended Intrinsics. The Extended Intrinsics are designed to extend or replace the standard Intrinsics with more device-independent, general-purpose functions. One of the design goals of this project was to make XPL0 a more adaptable language that would work under any operating system or environment. This meant developing a new set of intrinsics that could be substituted for the low-level DOS calls and assembly language subroutines that were often used to do specialized or CPU intensive tasks. These include provisions for high speed graphic functions such as bitmap allocation and manipulation and reading and playing audio files. They also include intrinsics for manipulating fonts, reading the command line, reading the system time, and interacting with the mouse. Because these intrinsics involve no DOS-specific constructs, they can be adapted to any operating system or hardware environment. Programs that have been modified to use these new intrinsics will run in virtually any environment without modification.

 

6. Debugger. This version includes a full-function debugger that enables you to single step through programs, set breakpoints, and watch variable values. In addition, you can view the contents of bitmaps at run time, view subroutine traces, send print statements to a separate window and see a disassembled view of the I2L code.