return 0;
if (!ctx && real_address_allowed()) {
addrbank *bank_data = &get_mem_bank (dataptr);
- if (!bank_data || !bank_data->check (dataptr, len))
+ if (!bank_data)
return 0;
- uae_u8 *buffer = bank_data->xlateaddr(dataptr);
- return cmd_readx(hfd, buffer, offset, len);
+ if (bank_data->check(dataptr, len)) {
+ uae_u8 *buffer = bank_data->xlateaddr(dataptr);
+ return cmd_readx(hfd, buffer, offset, len);
+ }
}
int total = 0;
while (len > 0) {
return 0;
if (!ctx && real_address_allowed()) {
addrbank *bank_data = &get_mem_bank (dataptr);
- if (!bank_data || !bank_data->check (dataptr, len))
+ if (!bank_data)
return 0;
- uae_u8 *buffer = bank_data->xlateaddr(dataptr);
- return cmd_writex(hfd, buffer, offset, len);
+ if (bank_data->check(dataptr, len)) {
+ uae_u8 *buffer = bank_data->xlateaddr(dataptr);
+ return cmd_writex(hfd, buffer, offset, len);
+ }
}
int total = 0;
while (len > 0) {