Mercurial > repos > blastem
comparison m68k.cpu @ 2499:d74d3998482c
Make some progress on compiling full emulator with new 68K core
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Tue, 30 Apr 2024 00:02:14 -0700 |
parents | dffda054d218 |
children | d44fe974fb85 |
comparison
equal
deleted
inserted
replaced
2498:dffda054d218 | 2499:d74d3998482c |
---|---|
13 typedef m68k_context *(*m68k_reset_handler)(m68k_context *context); | 13 typedef m68k_context *(*m68k_reset_handler)(m68k_context *context); |
14 void init_m68k_opts(m68k_options *opts, memmap_chunk * memmap, uint32_t num_chunks, uint32_t clock_divider, sync_fun sync_components, int_ack_fun int_ack); | 14 void init_m68k_opts(m68k_options *opts, memmap_chunk * memmap, uint32_t num_chunks, uint32_t clock_divider, sync_fun sync_components, int_ack_fun int_ack); |
15 m68k_context *init_68k_context(m68k_options * opts, m68k_reset_handler reset_handler); | 15 m68k_context *init_68k_context(m68k_options * opts, m68k_reset_handler reset_handler); |
16 void m68k_reset(m68k_context *context); | 16 void m68k_reset(m68k_context *context); |
17 void m68k_print_regs(m68k_context *context); | 17 void m68k_print_regs(m68k_context *context); |
18 void m68k_serialize(m68k_context *context, uint32_t pc, serialize_buffer *buf); | |
19 void m68k_deserialize(deserialize_buffer *buf, void *vcontext); | |
20 define NUM_MEM_AREAS 10 | |
21 define M68K_OPT_BROKEN_READ_MODIFY 1 | |
22 define INT_PENDING_SR_CHANGE 254 | |
23 define INT_PENDING_NONE 255 | |
24 define M68K_STATUS_TRACE 0x80 | |
25 define m68k_invalidate_code_range(context, start, end) | |
26 define m68k_options_free free | |
27 define m68k_handle_code_write(address, context) | |
28 define resume_68k(context) m68k_execute(context, context->cycles) | |
18 | 29 |
19 regs | 30 regs |
20 dregs 32 d0 d1 d2 d3 d4 d5 d6 d7 | 31 dregs 32 d0 d1 d2 d3 d4 d5 d6 d7 |
21 aregs 32 a0 a1 a2 a3 a4 a5 a6 a7 | 32 aregs 32 a0 a1 a2 a3 a4 a5 a6 a7 |
22 pc 32 | 33 pc 32 |
23 other_sp 32 | 34 other_sp 32 |
24 scratch1 32 | 35 scratch1 32 |
25 scratch2 32 | 36 scratch2 32 |
26 int_cycle 32 | 37 int_cycle 32 |
38 target_cycle 32 | |
39 wp_hit_address 32 | |
27 prefetch 16 | 40 prefetch 16 |
41 wp_hit_value 16 | |
42 wp_old_value 16 | |
28 int_priority 8 | 43 int_priority 8 |
29 int_num 8 | 44 int_num 8 |
30 int_pending 8 | 45 int_pending 8 |
31 int_pending_num 8 | 46 int_pending_num 8 |
32 int_ack 8 | 47 int_ack 8 |
35 xflag 8 | 50 xflag 8 |
36 nflag 8 | 51 nflag 8 |
37 zflag 8 | 52 zflag 8 |
38 vflag 8 | 53 vflag 8 |
39 cflag 8 | 54 cflag 8 |
55 wp_hit 8 | |
56 trace_pending 8 | |
57 system ptrvoid | |
40 reset_handler ptrvoid | 58 reset_handler ptrvoid |
41 mem_pointers ptrvoid 8 | 59 mem_pointers ptrvoid 10 |
42 | 60 |
43 flags | 61 flags |
44 register ccr | 62 register ccr |
45 X 4 carry xflag | 63 X 4 carry xflag |
46 N 3 sign nflag | 64 N 3 sign nflag |