Courseware

= = toc =Downloads= =Running JSim= First, you'll need to install a Java system. The Sun Java Runtime Environment, Standard Edition (J2SE), can be downloaded from Sun's official site. On Linux, you'll want to change your PATH environment variable so that the "java" command is on your search path. On Windows and OS X, double-clicking any of the 50.002 jar files will run the program (assuming you've installed the Sun Java environment).
 * 50002.tgz
 * 50002.zip

Once you've installed a Java environment and downloaded the 50.002 files (see "Downloads" above), you can run JSim using the following command:

You may have to specify complete pathnames for "java" and "jsim.jar" depending on your current search path and working directory. Each of the arguments is explained below.
 * **-jar jsim.jar** adds the java archive to the list of files Java examines when trying to find classes.  contains the classes used by jsim for displaying/editing netlists, running simulations and browsing the results. If you get an error of the form "", the Java runtime didn't find the jsim.jar file -- try giving its full pathname, e.g.,  or whatever is appropriate for your installation.
 * **-Xms8m -Xmx32m** sets the minimum heap size to 8MB and the maximum heap size to 32MB. Starting JSim with a generous heap allocation avoids a lot of garbage collection overhead the first time your circuit is processed. If you run out of memory, try specifying the **-no-local-names** option when running JSim. This will greatly reduce the size of the node name hashtable JSim constructs when processing the netlist. The downside of using this option is that nodes can only be referred to by using their name in the (sub)circuit where they were first defined.
 * **-reporterrors** asks JSim to provide a backtrace whenever it encounters an internal error. In the unlikely event an error occurs, it would be very helpful if you can email this backtrace to oka_kurniawan@sutd.edu.sg.
 * **file...** are optional arguments specifying one or more JSim netlist files.

=Display Problem on High-DPI Windows= If you use Windows with High-DPI, the application may display the icons and text to be too small. To solve this problem, check the solution given in Resource page.

=Editting Netlist=

The netlist editor built into JSim is based on the JTextArea class in Swing. Many people find the editing facilities provided by this class to be underwhelming and prefer to use an external editor. We provide jsim.tmlanguage and jsim.el inside 50002 package for users of SublimeText and Emacs.

jsim.tmlanguage defines the syntax higlighting in SublimeText. To enable it, follow the instruction on this page.
 * For SublimeText Users**

[|jsim.el] defines a new major mode for EMACS useful for editing JSim netlists. You can invoke the mode automatically when reading in a ".jsim" file by adding the following to your .emacs file:
 * For Emacs Users**

=Submitting Checkoff=
 * 1) To submit a checkoff from JSim, BSim, and TMSim, you will need to complete running the simulation successfully.
 * 2) Click the checkoff button (it's a button with a green color check mark)
 * 3) Enter your SUTD student ID and password.
 * 4) Enter the person your are collaborating with in the "Collaboration" field.
 * 5) Click to Submit.