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.
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.
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. |
Sample screenshots:
|
||||||
---|---|---|---|---|---|---|---|---|
CPU Emulator | Emulates the computer platform built in the course. Used to test and run programs written in either machine language or assembly. |
Sample screenshot:
|
||||||
VM Emulator | Emulates a typical stack-based virtual machine. Used to run and test programs written in the VM language. |
Sample screenshot:
|
||||||
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). |
Sample screenshots:
|
||||||
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:
|
||||||
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) |
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.
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. | ||
A Jack IDE | Download | |
Site design & construction by Yannai A. Gonczarowski