void ram_device::device_start() { /* the device named 'ram' can get ram options from command line */ m_size = 0; if (strcmp(tag(), ":" RAM_TAG) == 0) { const char *ramsize_string = machine().options().ram_size(); if ((ramsize_string != NULL) && (ramsize_string[0] != '\0')) m_size = parse_string(ramsize_string); } /* if we didn't get a size yet, use the default */ if (m_size == 0) m_size = default_size(); /* allocate space for the ram */ m_pointer = auto_alloc_array(machine(), UINT8, m_size); /* reset ram to the default value */ memset(m_pointer, m_default_value, m_size); /* register for state saving */ save_item(NAME(m_size)); save_pointer(NAME(m_pointer), m_size); }
message_size_limits get_message_size_limits( const grpc_channel_args* channel_args) { message_size_limits lim; lim.max_send_size = default_size(channel_args, GRPC_DEFAULT_MAX_SEND_MESSAGE_LENGTH); lim.max_recv_size = default_size(channel_args, GRPC_DEFAULT_MAX_RECV_MESSAGE_LENGTH); for (size_t i = 0; i < channel_args->num_args; ++i) { if (strcmp(channel_args->args[i].key, GRPC_ARG_MAX_SEND_MESSAGE_LENGTH) == 0) { const grpc_integer_options options = {lim.max_send_size, -1, INT_MAX}; lim.max_send_size = grpc_channel_arg_get_integer(&channel_args->args[i], options); } if (strcmp(channel_args->args[i].key, GRPC_ARG_MAX_RECEIVE_MESSAGE_LENGTH) == 0) { const grpc_integer_options options = {lim.max_recv_size, -1, INT_MAX}; lim.max_recv_size = grpc_channel_arg_get_integer(&channel_args->args[i], options); } } return lim; }
void ram_device::device_validity_check(validity_checker &valid) const { const char *ramsize_string = NULL; int is_valid = FALSE; UINT32 specified_ram = 0; const char *gamename_option = NULL; /* verify default ram value */ if (default_size() == 0) mame_printf_error("Invalid default RAM option: %s\n", m_default_size); /* command line options are only parsed for the device named RAM_TAG */ if (tag() != NULL && strcmp(tag(), ":" RAM_TAG) == 0) { /* verify command line ram option */ ramsize_string = mconfig().options().ram_size(); gamename_option = mconfig().options().system_name(); if ((ramsize_string != NULL) && (ramsize_string[0] != '\0')) { specified_ram = parse_string(ramsize_string); if (specified_ram == 0) mame_printf_error("Cannot recognize the RAM option %s\n", ramsize_string); if (gamename_option != NULL && *gamename_option != 0 && strcmp(gamename_option, mconfig().gamedrv().name) == 0) { /* compare command line option to default value */ if (default_size() == specified_ram) is_valid = TRUE; /* verify extra ram options */ if (m_extra_options != NULL) { int j; int size = strlen(m_extra_options); char * const s = mame_strdup(m_extra_options); char * const e = s + size; char *p = s; for (j=0;j<size;j++) { if (p[j]==',') p[j]=0; } /* try to parse each option */ while(p <= e) { UINT32 option_ram_size = parse_string(p); if (option_ram_size == 0) mame_printf_error("Invalid RAM option: %s\n", p); if (option_ram_size == specified_ram) is_valid = TRUE; p += strlen(p); if (p == e) break; p += 1; } osd_free(s); } } else { /* if not for this driver then return ok */ is_valid = TRUE; } } else { /* not specifying the ramsize on the command line is valid as well */ is_valid = TRUE; } } else is_valid = TRUE; if (!is_valid) { astring output; output.catprintf("Cannot recognize the RAM option %s", ramsize_string); output.catprintf(" (valid options are %s", m_default_size); if (m_extra_options != NULL) output.catprintf(",%s).\n", m_extra_options); else output.catprintf(").\n"); mame_printf_error("%s", output.cstr()); mame_printf_warning("Setting value to default %s\n",m_default_size); astring error; mconfig().options().set_value(OPTION_RAMSIZE, m_default_size, OPTION_PRIORITY_CMDLINE, error); assert(!error); } }
void Slider::request(Requisition& req) const { Requirement default_size(22.0, fil, 22.0, 0.0); req.require(Dimension_X, default_size); req.require(Dimension_Y, default_size); }