/** * XBIOS remote control interface for Hatari * Call 255 */ static bool XBios_HatariControl(Uint32 Params) { const char *pText; pText = (const char *)STRAM_ADDR(STMemory_ReadLong(Params)); LOG_TRACE(TRACE_OS_XBIOS, "XBIOS 0x%02X HatariControl(%s) at PC 0x%X\n", HATARI_CONTROL_OPCODE, pText, M68000_GetPC()); if (!bXBiosCommands) return false; Control_ProcessBuffer(pText); Regs[REG_D0] = 0; return true; }
/** * NF_COMMAND - execute Hatari (cli / debugger) command * Stack arguments are: * - pointer to command string */ static bool nf_command(Uint32 stack, Uint32 subid, Uint32 *retval) { const char *buffer; Uint32 ptr; ptr = STMemory_ReadLong(stack); if ( !STMemory_CheckAreaType ( ptr, 1, ABFLAG_RAM | ABFLAG_ROM ) ) { M68000_BusError(ptr, BUS_ERROR_READ, BUS_ERROR_SIZE_BYTE, BUS_ERROR_ACCESS_DATA); return false; } buffer = (const char *)STMemory_STAddrToPointer ( ptr ); LOG_TRACE(TRACE_NATFEATS, "NF_COMMAND(0x%x \"%s\")\n", ptr, buffer); Control_ProcessBuffer(buffer); return true; }