Ion channel transitions between conducting (open) and non-conducting (closed) states are often described in terms of a chemical kinetic model, where the rate constants describing the transitions between states can be derived by analysing a data record and measuring channel dwell times. In this paper, a menu-driven program for IBM-compatible microcomputers, SIMSTATE, is described which permits simulations of one or more channels according to a user-specified set of transition rates. Rates can be constant, voltage- or ligand-activated, exhibit co-operativity, or dependent on the calcium concentration resulting from the opening of one or more nearby Ca channels. To illustrate the functionality of SIMSTATE, open and closed events are simulated for a well-known Ca channel model and an example of co-operative gating is examined. Furthermore, the control of a Ca-dependent K channel by a nearby Ca channel, which also opens and closes according to a user-specified transition rates, is described. Potential uses for SIMSTATE as a tool for theoretical analysis, education and experimental design are discussed.