LC-3 and LC-3b Tools (Simulator, Assembler, IDE) - Ashley Wise
The complete professional suite of tools for the LC-3 and LC-3b languages created by a graduate student of Sanjay Patel. Prof. Patel is co-author of "Introduction to Computing Systems: From Bits and Gates to C and Beyond".
These tools have been in use at the University of Illinois at Urbana-Champaign (UIUC) since 2002.
Current Version: LC3Tools Version 1, AshIDE 1.14, Assembler 3.62, Simulator 1.61
Latest Release: October 13th, 2006 (Release History)
- Features and Screenshots
Highlights the features and capabilities of my Assembler, Simulator, and IDE package.
- Help And Usage Guide
A reference to all the LC-3 and LC-3b tools.
- AshIDE Archive [Windows, Solaris, Linux]
Graphical user interface for the LC-3 and LC-3b tools. As easy to use as a text editor with a compile button, yet as powerful and feature-rich as popular integrated development environments. Supports both LC-3 and LC-3b simultaneously. All of the sub-components are built in, so this is all you need to download. This archive includes the HTML Help and Ash Operating System.
- LC3IDE Archive [Windows, Solaris, Linux] LC-3 classses download this one
This version is the same as running AshIDE with the -lc3 option. All ".asm" and ".ah" files are assumed to be LC-3 language files by default.
- LC3bIDE Archive [Windows, Solaris, Linux] LC-3b classses download this one
This version is the same as running AshIDE with the -lc3b option. All ".asm" and ".ah" files are assumed to be LC-3b language files by default.
The following are sub-components and command-line versions of the tools, which can be downloaded separately if you need them:
- AshIDE [Windows, Solaris, Linux]
Graphical user interface for the LC-3 and LC-3b tools. As easy to use as a text editor with a compile button, yet as powerful and feature-rich as popular integrated development environments. Supports both LC-3 and LC-3b simultaneously. All of the sub-components are built in, so this is all you need to download.
- LC3IDE [Windows, Solaris, Linux]
This version is the same as running AshIDE with the -lc3 option. All ".asm" and ".ah" files are assumed to be LC-3 language files by default.
- LC3bIDE [Windows, Solaris, Linux]
This version is the same as running AshIDE with the -lc3b option. All ".asm" and ".ah" files are assumed to be LC-3b language files by default.
- Documentation Archive
Archive full of all the documentation. Includes PowerPoint and Word versions of the help files, sample code, and additional documentation for instructors/developers.
- Ash Operating System
Archive including the Ash Operating System for both LC-3 and LC-3b.
- LC3Assembler [Windows, Solaris, Linux]
Stand-alone command-line based assembler for LC-3.
- LC3bAssembler [Windows, Solaris, Linux]
Stand-alone command-line based assembler for LC-3b.
- LC3Simulator [Windows, Solaris, Linux]
Stand-alone command-line based simulator for LC-3. The assembler is built in, and does not need to be downloaded separately.
- LC3bSimulator [Windows, Solaris, Linux]
Stand-alone command-line based simulator for LC-3b. The assembler is built in, and does not need to be downloaded separately.
- AsmConvertLC3 [Windows, Solaris, Linux]
Stand-alone command-line utility to convert an assembly file written in older LC-3 syntax into my newer "asm3" syntax. This converter is built into the LC-3 IDE, assembler, and simulator, and is automatically run as necessary, completely transparent to the user, allowing you to seamlessly use older code with the newer tools.
- AsmConvert2to3 [Windows, Solaris, Linux]
Stand-alone command-line utility to convert an assembly file written in my older "asm2" syntax into my newer "asm3" syntax. If you've never written code in the older "asm2" syntax, then you don't need to worry about this utility.
- EndianCheck [Windows, Solaris, Linux]
Stand-alone command-line utility to check the endian-ness (big-endian or little-endian) of the platform you are currently running on. This check is built into the IDE, assembler, and simulator to prevent you from accidentally running a tool on a platform of a different endian-ness than it was built for. The code for the tools supports both big- and little-endian platforms, but the binary executable is built to support only one at a time (chosen via a compilation flag).
© Ashley Wise 2003