| Menu Option | Shortcut | Description | 
|---|
| File | New | Ctl-x k | Flushes the current circuit and begins a new one.   A dialog box will prompt for a new circuit file and top-level block name. | 
| Open... | Ctl-x Ctl-f | Flushes the current circuit and reads a new circuit from a file. | 
| Open Library... | Ctl-x Ctl-l | Reads library modules from a file.   The modules will be marked as library modules.   Only
modules that to not supersede a current non-library module will be loaded. | 
| Save | Ctl-x Ctl-s | Saves the current circuit to the current file.   If there is no current file, TkGate
will prompt for a file name. | 
| Save... | Ctl-x Ctl-w | Prompts for a file name and saves the circuit.   The specified file name will become
the new current file. | 
| Print... | Ctl-x Ctl-p | Prints a schematic diagram.   Schematics can be printed directly to the printer
or to a file. | 
| Options... | Ctl-x o | Brings up a dialog box allowing TkGate options to be set. | 
| Quit | Ctl-x Ctl-c | Exits TkGate. | 
| Edit | Cut | Ctl-w | Cuts the selected gates and inserts them into the cut buffer. | 
| Copy | Ctl-x x | Copies the selected gates into the cut buffer. | 
| Paste | Ctl-y | Pastes the contents of the cut buffer.   If a mark is set, the gates will be
pasted at the mark postion.   If no mark is set, the original position of the
gates in the cut buffer will be used. | 
| Select All | Ctl-x a | Selects all gates. | 
| Find... | Ctl-f | Searches for a gate or wire containing a substring. | 
| Align Vert. | | | Positions the selected gates such that they are vertically aligned. | 
| Align Horz. | - | Positions the selected gates such that they are horizontally aligned. | 
| Tool | Move/Connect | F1 | Enables move/connect mode. | 
| Delete Gate | F2 | Enables delete gate mode. | 
| Cut Wire | F3 | Enables cut wire mode. | 
| Invert | F4 | Enables invert port mode. | 
| Bit Width | F5 | Enables set bit width mode. | 
| Rot 0 | Ctl-F1 | Sets rotation for new gates to 0. | 
| Rot 90 | Ctl-F2 | Sets rotation for new gates to 90. | 
| Rot 180 | Ctl-F3 | Sets rotation for new gates to 180. | 
| Rot 270 | Ctl-F4 | Sets rotation for new gates to 270. | 
| Circuit | Circuit Properties... | Ctl-x E | Sets global properties of a circuit. | 
| Criticl Path... | Ctl-x r | List the critical paths of a circuit. | 
| Simulate | Begin Simulation | Ctl-s b | Starts a simulation. | 
| Run | Ctl-s g | Puts the simulator into continuous simulation mode. | 
| Pause | Ctl-s s | Puts the simulator into single-step mode. | 
| Step Epoch(s) | space | Steps the simulator a fixed number of epochs.   The step size can
be set in the TkGate options box. | 
| Step Cycle | tab | Steps the simulator a fixed number of clock cycles plus a fixed number of epochs.   The number of cycles and the overstep can be set in the TkGate
options box. | 
| Breakpoint... | Ctl-s k | Creates a condition which will cause the simulator to transition from continuous simulation
mode to single step mode. | 
| Exec. Script... | Ctl-s x | Reads simulation commands from a script file. | 
| Load Memory... | Ctl-s l | Loads a memory(ies) from a file. | 
| Dump Memory... | Ctl-s d | Dumps a memory to a file. | 
| Module | Open | > | Opens the currently selected module instance. | 
| Close | < | Closes the current module and makes the next module up on the module stack the current
module.   Also exits from "module interface" mode. | 
| Set Interface | Ctl-b s | Makes the interface of the currently selected module instance the default module interface. | 
| Edit Interfaces... | Ctl-b e | Enters a mode allowing module interfaces for all module types to be edited. | 
| New... | Ctl-b n | Creates a new module definition. | 
| Delete... | Ctl-b d | Deletes a module definition. | 
| Copy... | Ctl-b c | Copies a module definition to another module. | 
| Rename... | Ctl-b r | Renames a module defintion. | 
| Claim... | Ctl-b l | Convert a library module to a user module. | 
| Gate | Add Input | [ | Adds an input to the currently selected gate.   If the gate is a module instance,
a special cursor will appear and you can select the position for the port. | 
| Add Output | ] | Adds an output to the currently selected gate.   If the gate is a module instance,
a special cursor will appear and you can select the position for the port. | 
| Add Bidir | - | Adds an inout to the currently selected gate.   If the gate is a module instance,
a special cursor will appear and you can select the position for the port. | 
| Change Type | @ | Changes the type (input, output or inout) of a port on a module instance. | 
| Anchor Selected | Ctl-x f | Sets the anchor bit of all selected gates.   Anchored gates can not be moved with the mouse. | 
| Unanchor Selected | Ctl-x u | Unsets the anchor bit of all selected gates. | 
| Properties... | E | Edit properties of the selected gate. | 
| Replicate | Ctl-v | Make multiple replicas of a gate. | 
| Delete | del | Delete the selected gate(s). | 
| Make | I/O | Switch | s | Make a switch. | 
| Dip Switch | d | Make a dip switch. | 
| Ground | g | Make a constant logic 0 element. | 
| Vdd | v | Make a constant logic 1 element. | 
| Wire Merge | w | Make a wire merge element. | 
| LED | l | Single bit LED | 
| LED Bar | l[n] | LED Bar Graph | 
| 7-Seg. LED (HEX) | Lh | 7-Segment LED with hexidecimal encoding | 
| 7-Seg. LED (DEC) | Ld | 7-Segment LED with decimal encoding. | 
| 7-Seg. LED (Direct) | Ls | 7-Segment LED with direct encoding. | 
| Clock | c | Make a clock. | 
| Tty | T | Make a tty. | 
| Gate | AND | a | Make a AND gate. | 
| NAND | A | Make a NAND gate. | 
| OR | o | Make an OR gate. | 
| NOR | O | Make a NOR gate. | 
| XOR | x | Make an XOR gate. | 
| XNOR | X | Make an XNOR gate. | 
| Buffer | b | Make a buffer. | 
| Inverter | i | Make an inverter. | 
| Tri-Buffer | t | Make a tri-state buffer. | 
| NMOS | Ctl-t n | Make a NMOS transistor. | 
| PMOS | Ctl-t p | Make a PMOS transistor. | 
| Reduction | AND | Ctl-r a | Make a reduction AND gate. | 
| NAND | Ctl-r A | Make a reduction NAND gate. | 
| OR | Ctl-r o | Make a reduction OR gate. | 
| NOR | Ctl-r O | Make a reduction NOR gate. | 
| XOR | Ctl-r x | Make a reduction XOR gate. | 
| XNOR | Ctl-r X | Make a reduction XNOR gate. | 
| MSI | 2-1 Multiplexor | m | Make a 2-1 multiplexor. | 
| 4-1 Multiplexor | M 4 | Make a 4-1 multiplexor. | 
| 8-1 Multiplexor | M 8 | Make an 8-1 multiplexor. | 
| 1-2 Decoder | D 2 | Make a 1-2 decoder. | 
| 1-4 Decoder | D 4 | Make a 1-4 decoder. | 
| 1-8 Decoder | D 8 | Make a 1-8 decoder. | 
| ALU | Adder | + | Make an adder. | 
| Multiplier | * | Make a multiplier. | 
| Divider | / | Make a divider. | 
| Left Shift | S L | Make a left shifter. | 
| Right Shift | S R | Make a right shifter. | 
| Arith. Right Shift | S A | Make an arithmetic right shifter. | 
| Roll | S O | Make a roll shifter. | 
| Memory | Register | r | Make a register. | 
| RAM | R | Make a random access memory. | 
| ROM | u | Make a read-only memory. | 
| Module | Module Instance | B | Make a module instance. | 
| Module Input | } | Make a module input port. | 
| Module Output | { | Make a module output port. | 
| Module InOut | = | Make a module inout port. | 
| Comment | C | Make a comment. | 
| Frame | F | Make a frame box. |