Software

The book's software (also known as the TECS software suite) contains all the tools necessary to complete all the projects described in the book. This section describes this software and gives links for downloading it to your computer.

Compatibility: The book's software can run as is on both Windows and Unix.

Terms of use: The book's software can be used freely and is protected by the GNU GPL (General Public License).
 
Tutorials: Each software tool is accompanied by a detailed tutorial, available in the Study Plan section of this site.

Source code: is available. If you wish to inspect/modify/extend the source code, you can download it below.

Download the book's software Version 2.5 (400K). After downloading, put this zip file in an empty directory on your computer and extract its contents as is, without changing the directories structure. In order to use our software tools, your computer must be equipped with a Java Run-time Environment, version 1.3.1 or later. The JRE, also called J2RE, can be downloaded freely from many sites including http://www.javasoft.com/. For best performance, download the latest available version.

Having any problems with our software?
Please consult our Help page.

About the Software

Below are brief descriptions and screen shots of the tools contained in the book's software suite.

Hardware Simulator Simulates and tests gates and chips implemented in HDL (Hardware Description Language). Used to construct hardware projects.

Hardware Simulator Tutorial: PowerPoint Format Portable Document Format

Sample screenshots:
Simulating a Xor gate Running a test script Simulating the topmost Computer chip
CPU Emulator Emulates the computer platform built in the course. Used to test and run programs written in either machine language or assembly.

CPU Emulator Tutorial: PowerPoint Format Portable Document Format

Sample screenshot:
Running a program that draws a rectangle on the computer screen
VM Emulator Emulates a typical stack-based virtual machine. Used to run and test programs written in the VM language.

VM Emulator Tutorial: PowerPoint Format Portable Document Format

Sample screenshot:
Running a simple program
Assembler Translates programs from assembly language to machine language. The resulting code can be executed directly on the Computer chip (in the hardware simulator), or emulated on the CPU emulator (which is much quicker).

Assembler Tutorial: PowerPoint Format Portable Document Format

Sample screenshots:
Assembling Using a compare file
Compiler Translates from Jack (a simple Java-like language described in Chapter 9) into VM code. The resulting code can run on the VM emulator, or translated further by the VM translator + assembler into binary code that can run on the hardware simulator or on the CPU emulator. No sample screenshots available
(This is not a graphical application)
Operating system A collection of libraries supporting math, I/O, graphics, string, memory management, etc. Sample screenshots:
Some programs using the OS, running on the computer built in the course
Text Comparer Checks if two input text files are identical. Used in various projects. This tool is only available for Windows; on Unix use "diff". No sample screenshots available
(This is not a graphical application)

Source Code

If you wish to inspect, modify, or extend the book's software, you can download its source code Version 2.5 (500K)

Before compiling the source code on your computer, read this Readme.txt file. You will need a Java compiler such as the one found in the JDK (Java Development Kit) which can be downloaded freely from many sites including http://www.javasoft.com/.

For details on what's new in the current version of the software (somewhat technical but useful for porting old modifications to the current version), read this ChangeLog.txt file.

If you wish to share your software extensions with others, please contact us. We'll be glad to put a link to it from here.

Additional Software

The software listed below is not included in the software suite and is unsupported by us. If you have written some software which may be useful to other visitors of this site, please let us know. We'll be glad to add it to this list.

Helps editing and debugging programs in the Jack language. It is based on a commercial tool called Edit Plus which can be used freely for 30 days, requiring a $30 payment later.

Jack IDE tutorial : PowerPoint Format Portable Document Format

A Jack IDE Download

Site design & construction by Yannai A. Gonczarowski