A project was initiated at the Oak Ridge Y-12 Plant to implement software geometric error compensation within a PC-based machine tool controller from Manufacturing Data Systems, Inc. This project may be the first in which this type of compensation system was implemented in a commercially available machine tool controller totally in software. Previous implementations typically required using an external computer and hardware to interface through the position feedback loop of the controller because direct access to the controller software was not available. The test-bed machine for this project was a 2-axis Excello 921 T-base lathe. A mathematical error model of the lathe was created using homogeneous transformation matrices to relate the positions of the machine's slides to each other and to a world reference system. Equations describing the effects of the geometric errors were derived from the model. A software architecture was developed to support geometric error compensation for machine tools with up to 3 linear axes. Rotary axes were not supported in this implementation, but the developed architecture would not preclude their support in the future. Specific implementations will be dependent upon the configuration of the machine tool. A laser measuring system from Automated Precision, Inc. was used to characterize the lathe's geometric errors as functions of axis position and direction of motion. Multiple data files generated by the laser system were combined into a single Error File that was read at system startup and used by the compensation system to provide real-time position adjustments to the axis servos. A Renishaw Ballbar was used to evaluate the compensation system. Static positioning tests were conducted in an attempt to observe improved positioning accuracy with the compensation system enabled. These tests gave inconsistent results due to the lathe's inability to position the tool repeatably. The development of the architecture and compensation template will provide a baseline platform for investigating other types of error compensation in the future.