1 #ifndef UAE_MMAN_H
2 #define UAE_MMAN_H
3 
4 #include "uae/types.h"
5 #ifdef FSUAE
6 #include "uae/limits.h"
7 #include "uae/memory.h"
8 #endif
9 
10 #define MAX_SHMID 256
11 
12 typedef int uae_key_t;
13 
14 /* One shmid data structure for each shared memory segment in the system. */
15 struct uae_shmid_ds {
16 	uae_key_t key;
17 	uae_u32 size;
18 	uae_u32 rosize;
19 	void *addr;
20 	TCHAR name[MAX_PATH];
21 	void *attached;
22 	int mode;
23 	void *natmembase;
24 	bool fake;
25 	int maprom;
26 };
27 
28 void *uae_shmat(addrbank *ab, int shmid, void *shmaddr, int shmflg);
29 int uae_shmdt(const void *shmaddr);
30 int uae_shmget(uae_key_t key, size_t size, int shmflg, const TCHAR *name);
31 int uae_shmctl(int shmid, int cmd, struct uae_shmid_ds *buf);
32 
33 #define UAE_IPC_PRIVATE 0x01
34 #define UAE_IPC_RMID    0x02
35 #define UAE_IPC_CREAT   0x04
36 #define UAE_IPC_STAT    0x08
37 
38 #endif /* UAE_MMAN_H */
39