|
SC123 (tm) Computer System |
|
|
|
What is SC123?
Overview: SC123 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. This software is provided for free to my students “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 SC123 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. It also has memory mapped IO which current supports a function simulated printer. It is expected that instructor will first teach in and out instruction, but later can teach writing basic device driver for the printer. |
|
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 SC123.
The following version was compiled with JDK 7.x and will run with Java 7.x. We added IODevice simulation so we can write IO device drivers. In January 2012, we also changed the direction of growth of the stack. Read the manual in the IDE, old subroutine programs may have to be rewritten because of new stack direction. Current version file v20130116.zip The <name> is the name of the file without the .zip extension. Download the version. Install it in a clean directory. Sample programs are included in WrkSpaceSchool directory inside the zip.
Documentation: If you want to do some programming, read this. (1) User Manual Documentation: The IDE has built in User Manual. (2) Assembly Language Manual SC123AssemblyManualv20130120.pdf (3) There are sample programs in the workspace included with the SC123 IDE.
Note that SC123 in the CS Lab is updated once in the beginning of semester so this version here is probably newer. |
|
Experimental version: Download the version. Install it in a 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 proper version of Java. Download proper version of Java. 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 WrkSpaceSchool directories and several assist files and AAAREADME.txt. The WrkSpaceSchool contains some sample programs. To execute: >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 WrkSpaceSchool to point to the existing WrkSpaceSchool directory that you got in the install file. Push the “set config as default” button. In the WrkSpaceSchool directory you should see some sample programs. |
|
Known problems: none |
|
|
|
|
|
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. |
|
|
|
|