* sim/ucsim/cmd.src/newcmdposix.cc, sim/ucsim/cmd.src/newcmdposixcl.h,
[fw/sdcc] / sim / ucsim / sim.src / simcl.h
index 21a83a3db62194ae775aea367070722e2834de31..7dc2b796853525cf7a547e189a0e83156f8ad9d3 100644 (file)
@@ -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 <stdio.h>
 
@@ -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);
 };