252 |
|
|
253 |
|
static void read_line(char *prompt) |
254 |
|
{ |
255 |
+ |
#ifdef HAVE_LIBREADLINE |
256 |
|
static char *line_read = NULL; |
257 |
|
|
258 |
|
if (line_read) { |
267 |
|
|
268 |
|
strncpy(in_ptr = input, line_read, INPUT_LENGTH); |
269 |
|
input[INPUT_LENGTH-1] = 0; |
270 |
+ |
#else |
271 |
+ |
fprintf(monout, prompt); |
272 |
+ |
fflush(monout); |
273 |
+ |
fgets(in_ptr = input, INPUT_LENGTH, monin); |
274 |
+ |
char *s = strchr(input, '\n'); |
275 |
+ |
if (s != NULL) |
276 |
+ |
*s = 0; |
277 |
+ |
#endif |
278 |
|
} |
279 |
|
|
280 |
|
|
832 |
|
fprintf(monout, "No variables defined\n"); |
833 |
|
else |
834 |
|
for (Variable *v=first_var; v; v=v->next) |
835 |
< |
fprintf(monout, "%s = %08lx\n", v->name, v->value); |
835 |
> |
fprintf(monout, "%s = %08x\n", v->name, v->value); |
836 |
|
|
837 |
|
} else if (mon_token == T_NAME) { |
838 |
|
char var_name[256]; |
925 |
|
} |
926 |
|
|
927 |
|
if (mon_token == T_END) { |
928 |
< |
fprintf(monerr, "Buffer size: %08lx bytes\n", mon_mem_size); |
928 |
> |
fprintf(monerr, "Buffer size: %08x bytes\n", mon_mem_size); |
929 |
|
return; |
930 |
|
} |
931 |
|
|
937 |
|
} |
938 |
|
|
939 |
|
if ((mem = (uint8 *)realloc(mem, size)) != NULL) |
940 |
< |
fprintf(monerr, "Buffer size: %08lx bytes\n", mon_mem_size = size); |
940 |
> |
fprintf(monerr, "Buffer size: %08x bytes\n", mon_mem_size = size); |
941 |
|
else |
942 |
|
fprintf(monerr, "Unable to reallocate buffer\n"); |
943 |
|
} |
979 |
|
read_func = mon_read_word; |
980 |
|
write_func = mon_write_word; |
981 |
|
break; |
982 |
+ |
default: |
983 |
+ |
abort(); |
984 |
+ |
break; |
985 |
|
} |
986 |
|
|
987 |
|
while (adr<=end_adr) { |
1151 |
|
while (!done) { |
1152 |
|
if (interactive) { |
1153 |
|
char prompt[16]; |
1154 |
< |
sprintf(prompt, "[%08lx]-> ", mon_dot_address); |
1154 |
> |
sprintf(prompt, "[%08x]-> ", mon_dot_address); |
1155 |
|
read_line(prompt); |
1156 |
|
} else { |
1157 |
|
if (argc == 0) { |