bool
cl_cmd_arg::as_address(class cl_uc *uc)
{
- bool b= get_address(uc, &(value.address));
- return(b);
+ return(get_address(uc, &(value.address)));
}
bool
bool
cl_cmd_arg::as_memory(class cl_uc *uc)
{
- value.memory= uc->mem(s_value);
- return(value.memory != 0);
+ value.memory.memory= uc->memory(s_value);
+ value.memory.address_space= 0;
+ value.memory.memchip= 0;
+ if (value.memory.memory)
+ {
+ if (value.memory.memory->is_chip())
+ value.memory.memchip=
+ dynamic_cast<class cl_memory_chip *>(value.memory.memory);
+ if (value.memory.memory->is_address_space())
+ value.memory.address_space=
+ dynamic_cast<class cl_address_space *>(value.memory.memory);
+ }
+ return(value.memory.memory != 0);
}
bool
bool
cl_cmd_int_arg::get_bit_address(class cl_uc *uc, // input
- class cl_mem **mem, // outputs
+ class cl_address_space **mem, // outputs
t_addr *mem_addr,
t_mem *bit_mask)
{
bool
cl_cmd_sym_arg::get_bit_address(class cl_uc *uc, // input
- class cl_mem **mem, // outputs
+ class cl_address_space **mem, // outputs
t_addr *mem_addr,
t_mem *bit_mask)
{
struct name_entry *ne;
- if ((ne= get_name_entry(uc->bit_tbl(),
- get_svalue(),
- uc)) == NULL)
+ ne= get_name_entry(uc->bit_tbl(), get_svalue(), uc);
+ if (ne == NULL)
return(DD_FALSE);
if (mem)
*mem= uc->bit2mem(ne->addr, mem_addr, bit_mask);
cl_cmd_str_arg::cl_cmd_str_arg(/*class cl_uc *iuc,*/ char *str):
cl_cmd_arg(/*iuc,*/ str)
-{}
+{
+}
/* Bit */
bool
cl_cmd_bit_arg::get_bit_address(class cl_uc *uc, // input
- class cl_mem **mem, // outputs
+ class cl_address_space **mem, // outputs
t_addr *mem_addr,
t_mem *bit_mask)
{
if (mem)
- *mem= uc->mem(MEM_SFR);
+ {
+ *mem= uc->address_space(MEM_SFR_ID);
+ if (!*mem)
+ return(DD_FALSE);
+ }
if (mem_addr)
{
if (!sfr ||
* Program arguments
*----------------------------------------------------------------------------
*/
-
+/*
cl_prg_arg::cl_prg_arg(char sn, char *ln, long lv):
cl_arg(lv)
{
if (long_name)
free(long_name);
}
-
+*/
/*
* List of arguments
*----------------------------------------------------------------------------
*/
-
+/*
int
cl_arguments::arg_avail(char nam)
{
}
return(0);
}
-
+*/
/* End of arg.cc */