# HG changeset patch # User Mike Pavone # Date 1367200423 25200 # Node ID df8a36bf5e1db8d23cb24d6d4bd046c4ec34e222 # Parent 2f069a0b487e8662c463bfcd843bc060643857fb Implement cycle limit in Z80 core. diff -r 2f069a0b487e -r df8a36bf5e1d transz80.c --- a/transz80.c Sun Apr 28 14:32:45 2013 -0700 +++ b/transz80.c Sun Apr 28 18:53:43 2013 -0700 @@ -22,10 +22,13 @@ init_z80_context(&context, &opts); //cartridge ROM context.mem_pointers[0] = z80_ram; - context.target_cycle = 0x7FFFFFFF; + context.sync_cycle = context.target_cycle = 0x7FFFFFFF; //work RAM context.mem_pointers[1] = context.mem_pointers[2] = NULL; z80_reset(&context); - z80_run(&context); + for(;;) + { + z80_run(&context); + } return 0; } diff -r 2f069a0b487e -r df8a36bf5e1d z80_to_x86.h --- a/z80_to_x86.h Sun Apr 28 14:32:45 2013 -0700 +++ b/z80_to_x86.h Sun Apr 28 18:53:43 2013 -0700 @@ -37,6 +37,11 @@ uint8_t * mem_pointers[ZNUM_MEM_AREAS]; uint8_t iff1; uint8_t iff2; + uint16_t scratch1; + uint16_t scratch2; + void * extra_pc; + uint32_t sync_cycle; + uint32_t int_cycle; native_map_slot * static_code_map; native_map_slot * banked_code_map; void * options;