SC123 (tm) Computer System


home

What is SC123?


Overview:

SC123 (SC123A) is an Educational Computer with its own architecture (ISA) and computer organization. SC123 is a computer emulator written in Java. This software is the property of Dr. Robert Silverman. The system was conceived and architected by Dr. Robert Silverman, currently in Computer Science Department at California State University Stanislaus (CSUS). This software is provided “as is”.


Use in the classroom:

SC123 has been used to teach computer architecture, assembly language programming, computer organization, and principles of programming languages.


Assembly language programming tool:

SC123 ID3E is a tool to teach programming in assembly language. The ID3E consists of editor, customizable assembler, debugger, and includes it's own execution engine, all accessible within a GUI-based Integrated Development Environment.


Computer hardware architecture and organization:

The computer has very simple hardware architecture and organization and can be used to teach courses on computer organization (for computer scientists) or computer architecture (for computer engineers).


Execution engine:

The execution engine does execute the actual machine instructions unlike executing the assembly instructions as many emulators do. What this means is that the emulator is "faithful" to the hardware.


Software Architecture:

This software was designed using modern object oriented architectural principles. Great deal of effort was expanded to build high quality software system.

The SC123 instructions were designed using the following language design principles: small instruction set, regularity, simplicity, and orthogonality. The address space is linear. It has basic IO capability via inport and outport but can be programmed to communicate with multiple IO devices. It has four standard addressing modes, and one jump addressing mode.

How to download this software and how much does it cost?

The license to use this software for education purpose is free. Instructors and students are encouraged to contact me.

Current Stable Version of SC123A

The following version was compiled with JDK 6.0 and will run with Java 6.0.

Download the file sc123v02.00.04.zip

The <name> is the name of the file without the .zip extension.

Current testing Version of SC123A

The following version was compiled with JDK 6.0 and will run with Java 6.0.

Download the file sc123v02.00.06x.zip

The <name> is the name of the file without the .zip extension.

Download the 06x version.

Install it in clean directory.


***If your SC123 crashes in any way, here are some options you have now.

Restart SC123, or use the SC123 installed in CS lab on the computers in the last two rows.

How to install this software on Windows/Linux/UNIX/MAC OS X/anything with Java. (One of many ways.)

To check your computer's Java version, do:

>java -version

Verify/Obtain Java 1.6. (a.k.a. 6.0).

Download version of SC123 for 6.0 .

Create a clean directory called SC123 anywhere on your machine.

Dump the <name>.zip file in the SC123 dir.

>cd SC123

>unzip <name>.zip

You should see <name> directory.

>cd <name>

In this directory you should see rrsilver and WrkSpace directories and several assist files and AAAREADME.txt.

To execute (try both):

>java -cp . rrsilver.sc123.scsystem.SCSystem

>java rrsilver.sc123.scsystem.SCSystem

The ID3E should come up.

See AAAREADME.txt if bad things happen.

To use:

After the ID3E starts, you will see four tabs on the bottom.

Click on the Tab Welcome and read it.

Click on the Tab Manual. Follow its directions to set your WrkSpace to point to the existing WrkSpace directory that you got in the install file. Push the “set config as default” button.

In the WrkSpace directory you should see some sample programs.

Known bugs:

The variable names must be at least 2 char long.

Documentation:

(1) User Manual Documentation:

The IDE has built in User Manual.

(2) Assembly Language Manual Documentation:

(3) There are sample programs in the WrkSpace directory.

This version or some previous version installation was tested on:

Linux with Java 1.5, 6.0; Windows XP with Java 1.5 and 6.0; Mac OS X 1.5, 6.0, UNIX 1.5, 6.0.

But it should work on other systems with JDK 6.0.

We will continually update this software as time permits.

If you find bug, send me email to: rsilverman@csustan.edu using the following form.

(1)

Subject: sc123; foundbug

//all lower case, no space in “foundbug”

(2)

Explain what were you doing and what happened in 5 sentences (or more if you need).

For example:

(editing) Blah blah.

(assembling) I was assembling a program and the SC123 crashed. (If you think it is problem with assembling your program, send me the source code (SC123 source code) file.)

(executing) I was single stepping through executable and SC123 crashed or became unresponsive. I repeated the experiment 3 times, and it happened 3 times. OR I repeated the experiment 3 times, and it did not happen again. (Report the problem even if it happened just once but you were not able to reproduce.)

(3)

Please include (as attachment) the log file which is located in the WrkSpace dir.

(4)

Your email message should have at least a basic signature.

e.g.

Nancy Smith, professor, Baruch College, NY.

Joe Smith, undergraduate student, SJSU, California.


All information on this website is copyrighted by Robert R. Silverman, 2002, ... current date. No part of this system or information presented here can be reproduced using any means, such as: book print, physical, electronic, chemical, biological, mathematical, telepathic, or other not yet discovered means without the explicit permission by Dr. Robert R. Silverman, CSU Stanislaus, rsilverman@csustan.edu An explicit permission is given to all my students to copy this material as needed for educational noncommercial purpose.