On behalf of: 3298

Merge remote-tracking branch 'claudiobsd/master'
This commit is contained in:
claudiol 2018-05-07 17:29:09 -04:00
commit 91d85c5aec
4 changed files with 24 additions and 15 deletions

View file

@ -45,7 +45,7 @@
#include <signal.h>
#endif
#define DEBUG_GDB
//#define DEBUG_GDB
enum RSState {
RS_IDLE,
@ -455,7 +455,7 @@ static void gdb_read_byte(GDBState *s, int ch)
int i, csum;
char reply[1];
printf("%s: state %u, byte %02x (%c)\n", __FUNCTION__, s->state, ch, ch);
//printf("%s: state %u, byte %02x (%c)\n", __FUNCTION__, s->state, ch, ch);
fflush(stdout);
switch(s->state) {
@ -515,7 +515,7 @@ gdb_handlesig (CPUState *env, int sig)
s = &gdbserver_state;
printf("%s: sig: %u\n", __FUNCTION__, sig);
//printf("%s: sig: %u\n", __FUNCTION__, sig);
fflush(stdout);
/* disable single step if it was enabled */
@ -537,7 +537,7 @@ fflush(stdout);
{
int i;
printf("%s: read: %d\n", __FUNCTION__, n);
//printf("%s: read: %d\n", __FUNCTION__, n);
fflush(stdout);
for (i = 0; i < n; i++)
@ -573,7 +573,7 @@ gdb_poll (CPUState *env)
return 0;
}
printf("%s: revents: %08x\n", __FUNCTION__, pfd.revents);
//printf("%s: revents: %08x\n", __FUNCTION__, pfd.revents);
fflush(stdout);
if (pfd.revents & (POLLIN | POLLHUP))

22
main.c
View file

@ -25,6 +25,14 @@
#include "gdbstub.h"
static void *oom_check(void *ptr)
{
if (ptr == NULL) {
abort();
}
return ptr;
}
static x49gp_t *x49gp;
#ifdef QEMU_OLD // LD TEMPO HACK
@ -383,7 +391,7 @@ printf("%s:%u: x49gp: %p\n", __FUNCTION__, __LINE__, x49gp);
exit(1);
}
error = x49gp_modules_load(x49gp, argv[1]);
error = x49gp_modules_load(x49gp, argv[argc-1]);
if (error) {
if (error != -EAGAIN) {
exit(1);
@ -408,15 +416,17 @@ printf("%s:%u: x49gp: %p\n", __FUNCTION__, __LINE__, x49gp);
x49gp_mod_timer(x49gp->lcd_timer, x49gp_get_clock());
#if 0
gdbserver_start(1234);
gdb_handlesig(x49gp->env, 0);
#endif
if(argc>=3) {
if((argv[1][0]=='-')&&(argv[1][1]=='d')&&(argv[1][2]==0)) {
gdbserver_start(1234);
gdb_handlesig(x49gp->env, 0);
}
}
x49gp_main_loop(x49gp);
x49gp_modules_save(x49gp, argv[1]);
x49gp_modules_save(x49gp, argv[argc-1]);
x49gp_modules_exit(x49gp);

View file

@ -233,11 +233,9 @@ x49gp_main_loop_wait(x49gp_t *x49gp, int timeout)
{
// printf("%s: timeout: %d\n", __FUNCTION__, timeout);
#if 0
if (gdb_poll(x49gp->env)) {
gdb_handlesig(x49gp->env, 0);
} else
#endif
poll(NULL, 0, timeout);
if (x49gp->arm_idle != X49GP_ARM_OFF) {
@ -278,11 +276,9 @@ printf("PC %08x: SRAM %08x: %08x %08x %08x <%08x>\n", x49gp->env->regs[15], 0x08
* ((uint32_t *) &x49gp->sram[0x0a0c]) = 0x00000000;
}
#if 0
if (ret == EXCP_DEBUG) {
gdb_handlesig(x49gp->env, SIGTRAP);
}
#endif
if (x49gp->arm_idle != prev_idle) {
if (x49gp->arm_idle == X49GP_ARM_OFF) {

3
updatefw Executable file
View file

@ -0,0 +1,3 @@
rm flash-50g flash-noboot
make flash-50g