From e788fec496470c24fbbbb18f98eb9b28edb8e0e4 Mon Sep 17 00:00:00 2001 From: Carsten Larsen Date: Fri, 15 Jan 2021 00:21:28 +0100 Subject: [PATCH] ARexx only instance --- src/system/program_amiga.cpp | 12 ++++++++++-- src/system/program_amiga.h | 1 + 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/system/program_amiga.cpp b/src/system/program_amiga.cpp index 5a6173ed..1d9d7972 100644 --- a/src/system/program_amiga.cpp +++ b/src/system/program_amiga.cpp @@ -71,7 +71,7 @@ static struct GfxBase *GfxBase = nullptr; static struct LocaleBase *LocaleBase = nullptr; static struct IntuitionBase *IntuitionBase = nullptr; -#define ARGS_FORMAT "SHELL/S,NOANSI/S,INPUT/F" +#define ARGS_FORMAT "SHELL/S,NOANSI/S,AREXX/S,INPUT/F" #if defined(AOS3) #define RDPTR LONG * @@ -90,6 +90,7 @@ AmigaProgram::AmigaProgram() rdargs = nullptr; args.shell = FALSE; args.noansi = FALSE; + args.arexx = FALSE; args.input = nullptr; Console = nullptr; } @@ -179,7 +180,14 @@ void AmigaProgram::Start() AmigaARexx *arexx = new AmigaARexx(); arexx->Start(); - Console->Start(); + if (args.arexx) + { + Wait(SIGBREAKF_CTRL_C); + } + else + { + Console->Start(); + } arexx->Stop(); delete arexx; diff --git a/src/system/program_amiga.h b/src/system/program_amiga.h index 1896311b..fb39f8ed 100644 --- a/src/system/program_amiga.h +++ b/src/system/program_amiga.h @@ -37,6 +37,7 @@ struct amathargs { long shell; long noansi; + long arexx; char* input; };