@Override
    public String cpu_info(Object context, int regnum) {
    /*TODO*///const char *m6809_info(void *context, int regnum)
    /*TODO*///{
    /*TODO*///	static char buffer[16][47+1];
    /*TODO*///	static int which = 0;
    /*TODO*///	m6809_Regs *r = context;
    /*TODO*///
    /*TODO*///	which = ++which % 16;
    /*TODO*///    buffer[which][0] = '\0';
    /*TODO*///	if( !context )
    /*TODO*///		r = &m6809;
    /*TODO*///
        switch( regnum )
        {
    		case CPU_INFO_NAME: return "M6809";
    		case CPU_INFO_FAMILY: return "Motorola 6809";
    		case CPU_INFO_VERSION: return "1.1";
    		case CPU_INFO_FILE: return "m6809.java";
    		case CPU_INFO_CREDITS: return "Copyright (C) John Butler 1997";
    /*TODO*///		case CPU_INFO_REG_LAYOUT: return (const char*)m6809_reg_layout;
    /*TODO*///		case CPU_INFO_WIN_LAYOUT: return (const char*)m6809_win_layout;
    /*TODO*///
    /*TODO*///		case CPU_INFO_FLAGS:
    /*TODO*///			sprintf(buffer[which], "%c%c%c%c%c%c%c%c",
    /*TODO*///				r->cc & 0x80 ? 'E':'.',
    /*TODO*///				r->cc & 0x40 ? 'F':'.',
    /*TODO*///                r->cc & 0x20 ? 'H':'.',
    /*TODO*///                r->cc & 0x10 ? 'I':'.',
    /*TODO*///                r->cc & 0x08 ? 'N':'.',
    /*TODO*///                r->cc & 0x04 ? 'Z':'.',
    /*TODO*///                r->cc & 0x02 ? 'V':'.',
    /*TODO*///                r->cc & 0x01 ? 'C':'.');
    /*TODO*///            break;
    /*TODO*///		case CPU_INFO_REG+M6809_PC: sprintf(buffer[which], "PC:%04X", r->pc.w.l); break;
    /*TODO*///		case CPU_INFO_REG+M6809_S: sprintf(buffer[which], "S:%04X", r->s.w.l); break;
    /*TODO*///		case CPU_INFO_REG+M6809_CC: sprintf(buffer[which], "CC:%02X", r->cc); break;
    /*TODO*///		case CPU_INFO_REG+M6809_U: sprintf(buffer[which], "U:%04X", r->u.w.l); break;
    /*TODO*///		case CPU_INFO_REG+M6809_A: sprintf(buffer[which], "A:%02X", r->d.b.h); break;
    /*TODO*///		case CPU_INFO_REG+M6809_B: sprintf(buffer[which], "B:%02X", r->d.b.l); break;
    /*TODO*///		case CPU_INFO_REG+M6809_X: sprintf(buffer[which], "X:%04X", r->x.w.l); break;
    /*TODO*///		case CPU_INFO_REG+M6809_Y: sprintf(buffer[which], "Y:%04X", r->y.w.l); break;
    /*TODO*///		case CPU_INFO_REG+M6809_DP: sprintf(buffer[which], "DP:%02X", r->dp.b.h); break;
    /*TODO*///		case CPU_INFO_REG+M6809_NMI_STATE: sprintf(buffer[which], "NMI:%X", r->nmi_state); break;
    /*TODO*///		case CPU_INFO_REG+M6809_IRQ_STATE: sprintf(buffer[which], "IRQ:%X", r->irq_state[M6809_IRQ_LINE]); break;
    /*TODO*///		case CPU_INFO_REG+M6809_FIRQ_STATE: sprintf(buffer[which], "FIRQ:%X", r->irq_state[M6809_FIRQ_LINE]); break;
    	}