1
0
mirror of https://github.com/cc65/cc65.git synced 2024-05-28 16:41:40 +00:00

sim65 use error codes outside the simulated program's range for non-sim errors

This commit is contained in:
bbbradsmith 2023-05-07 16:51:12 -04:00
parent 7f0baff792
commit 2cb457b85f
3 changed files with 13 additions and 4 deletions

View File

@ -44,6 +44,13 @@ The simulator is called as follows:
--version Print the simulator version number
</verb></tscreen>
sim65 will exit with the error code of the simulated program,
which is limited to an 8-bit result 0-255.
An error in sim65, like bad arguments or an internal problem will exit with <tt/1/.
A timeout from <tt/-x/ will exist with <tt/2/.
<sect1>Command line options in detail<p>

View File

@ -49,10 +49,12 @@
#define SIM65_ERROR 0x7F
/* Does not use EXIT_FAILURE because it may overlap with test results. */
#define SIM65_ERROR -1
/* An error result for errors that are not part of the simulated test.
** Note that set simulated test can only return 8-bit errors 0-255.
*/
#define SIM65_ERROR_TIMEOUT 0x7E
#define SIM65_ERROR_TIMEOUT -2
/* An error result for max CPU instructions exceeded. */
extern int PrintCycles;

View File

@ -124,7 +124,7 @@ static unsigned PopParam (unsigned char Incr)
static void PVExit (CPURegs* Regs)
{
Print (stderr, 1, "PVExit ($%02X)\n", Regs->AC);
SimExit (Regs->AC);
SimExit (Regs->AC); /* Error code in range 0-255. */
}