Turned sim65 into a lightweight cc65 execution environment.

The sim65 source code has been a construction site for over a decade.
I was looking for a simple cc65 program execution environment for
regression tests. So I decided to re-purpose sim65 for that task by
removing about everything but the 6502 emulation.

There's no memory mapped i/o emulation whatsoever. Rather exit(),
open(), close(), read() and write() calls are supported by mapping
them through a thin paravirtualization layer to the corresponding
host os functions.

Note: The sim65 6502 emulation provides means to switch between
6502 and 65C02 emulation but currently there are no actual 65C02
opcodes implemented.
This commit is contained in:
Oliver Schmidt
2013-05-20 20:20:14 +02:00
parent 753aa29b15
commit 3a028fb621
42 changed files with 3316 additions and 9482 deletions

View File

@@ -38,20 +38,6 @@
/*****************************************************************************/
/* Data */
/*****************************************************************************/
/* Forwards */
struct ChipInstance;
/* Memory size of the CPU */
extern unsigned MemSize;
/*****************************************************************************/
/* Code */
/*****************************************************************************/
@@ -73,12 +59,6 @@ unsigned MemReadZPWord (unsigned char Addr);
* overflow.
*/
void MemAssignChip (const struct ChipInstance* CI, unsigned Addr, unsigned Range);
/* Assign a chip instance to memory locations */
const struct ChipInstance* MemGetChip (unsigned Addr);
/* Get the chip that is located at the given address (may return NULL). */
void MemInit (void);
/* Initialize the memory subsystem */