X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=sim%2Fucsim%2Fsim.src%2Fsimcl.h;h=7dc2b796853525cf7a547e189a0e83156f8ad9d3;hb=90f4aedaef8a2310573eef905f95c671f84e5cde;hp=21a83a3db62194ae775aea367070722e2834de31;hpb=0ad8c78844ada3a7591fc0b355c19c06c4a069b0;p=fw%2Fsdcc diff --git a/sim/ucsim/sim.src/simcl.h b/sim/ucsim/sim.src/simcl.h index 21a83a3d..7dc2b796 100644 --- a/sim/ucsim/sim.src/simcl.h +++ b/sim/ucsim/sim.src/simcl.h @@ -1,5 +1,5 @@ /* - * Simulator of microcontrollers (simcl.h) + * Simulator of microcontrollers (sim.src/simcl.h) * * Copyright (C) 1999,99 Drotos Daniel, Talker Bt. * @@ -25,8 +25,8 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /*@1@*/ -#ifndef SIMCL_HEADER -#define SIMCL_HEADER +#ifndef SIM_SIMCL_HEADER +#define SIM_SIMCL_HEADER #include @@ -36,6 +36,9 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA // cmd #include "newcmdcl.h" +// gui +#include "guicl.h" + // local #include "uccl.h" #include "argcl.h" @@ -44,53 +47,35 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA class cl_sim: public cl_base { public: + class cl_app *app; int state; // See SIM_XXXX int argc; char **argv; - class cl_commander *cmd; + //class cl_commander_base *cmd; class cl_uc *uc; - class cl_cmdset *cmdset; - //class cl_console *frozen_console; + class cl_gui *gui; - char *accept_args; - class cl_ustrings *in_files; - class cl_list *arguments; + //char *accept_args; + //class cl_list *arguments; public: - cl_sim(char *more_args, int iargc, char *iargv[]); - //cl_sim(class cl_uc *auc); - ~cl_sim(void); + cl_sim(class cl_app *the_app); + virtual ~cl_sim(void); virtual int init(void); - virtual int proc_arguments(int argc, char *argv[]); - virtual int proc_arg(char arg, char *optarg); - - virtual class cl_commander *mk_commander(void); virtual class cl_uc *mk_controller(void); - virtual class cl_cmdset *mk_cmdset(void); - virtual void build_cmd_set(void); - virtual class cl_cmd_arg *mk_cmd_int_arg(long long i); - virtual class cl_cmd_arg *mk_cmd_sym_arg(char *s); - virtual class cl_cmd_arg *mk_cmd_str_arg(char *s); - virtual class cl_cmd_arg *mk_cmd_bit_arg(class cl_cmd_arg *sfr, - class cl_cmd_arg *bit); - - int arg_avail(char name); - int arg_avail(char *name); - virtual long long get_iarg(char sname, char *lname); - virtual char *get_sarg(char sname, char *lname); - virtual double get_farg(char sname, char *lname); - virtual void *get_parg(char sname, char *lname); + virtual void build_cmdset(class cl_cmdset *cmdset); + + virtual class cl_uc *get_uc(void) { return(uc); } + // messages from app to handle and broadcast + //virtual void mem_cell_changed(class cl_address_space *m, t_addr addr); + virtual int main(void); - virtual int do_cmd(char *cmd, class cl_console *console); - virtual void start(class cl_console *con); + virtual void start(class cl_console_base *con); virtual void stop(int reason); - - // Obsolete, for old commander - //public: - //FILE *cmd_out(void); - //FILE *cmd_in(void); + virtual void stop(class cl_ev_brk *brk); + virtual int step(void); };