comparison backend.h @ 1595:360d5bab199f

Update controller config when changed in UI without restart
author Michael Pavone <pavone@retrodev.com>
date Fri, 06 Jul 2018 17:39:59 -0700
parents 1f745318f10a
children b7ecd0d6a77b 49a52c737bf0
comparison
equal deleted inserted replaced
1594:137dbd05ceab 1595:360d5bab199f
38 struct deferred_addr *next; 38 struct deferred_addr *next;
39 code_ptr dest; 39 code_ptr dest;
40 uint32_t address; 40 uint32_t address;
41 } deferred_addr; 41 } deferred_addr;
42 42
43 typedef enum { 43 #include "memmap.h"
44 READ_16,
45 READ_8,
46 WRITE_16,
47 WRITE_8
48 } ftype;
49
50 #define MMAP_READ 0x01
51 #define MMAP_WRITE 0x02
52 #define MMAP_CODE 0x04
53 #define MMAP_PTR_IDX 0x08
54 #define MMAP_ONLY_ODD 0x10
55 #define MMAP_ONLY_EVEN 0x20
56 #define MMAP_FUNC_NULL 0x40
57 #define MMAP_BYTESWAP 0x80
58 #define MMAP_AUX_BUFF 0x100
59 #define MMAP_READ_CODE 0x200
60
61 typedef uint16_t (*read_16_fun)(uint32_t address, void * context);
62 typedef uint8_t (*read_8_fun)(uint32_t address, void * context);
63 typedef void * (*write_16_fun)(uint32_t address, void * context, uint16_t value);
64 typedef void * (*write_8_fun)(uint32_t address, void * context, uint8_t value);
65
66 typedef struct {
67 uint32_t start;
68 uint32_t end;
69 uint32_t mask;
70 uint32_t aux_mask;
71 uint16_t ptr_index;
72 uint16_t flags;
73 void * buffer;
74 read_16_fun read_16;
75 write_16_fun write_16;
76 read_8_fun read_8;
77 write_8_fun write_8;
78 } memmap_chunk;
79
80 #include "system.h" 44 #include "system.h"
81 45
82 typedef struct { 46 typedef struct {
83 uint32_t flags; 47 uint32_t flags;
84 native_map_slot *native_code_map; 48 native_map_slot *native_code_map;