1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
|
/*********************************************************************
generic.h
Generic simple machine functions.
Copyright Nicola Salmoria and the MAME Team.
Visit http://mamedev.org for licensing and usage restrictions.
*********************************************************************/
#pragma once
#ifndef __MACHINE_GENERIC_H__
#define __MACHINE_GENERIC_H__
/***************************************************************************
CONSTANTS
***************************************************************************/
/* total # of coin counters */
#define COIN_COUNTERS 8
/* memory card actions */
#define MEMCARD_CREATE 0
#define MEMCARD_INSERT 1
#define MEMCARD_EJECT 2
/***************************************************************************
FUNCTION PROTOTYPES
***************************************************************************/
/* ----- initialization ----- */
/* set up all the common systems */
void generic_machine_init(running_machine &machine);
/* ----- tickets ----- */
/* return the number of tickets dispensed */
int get_dispensed_tickets(running_machine &machine);
/* increment the number of dispensed tickets */
void increment_dispensed_tickets(running_machine &machine, int delta);
/* ----- coin counters ----- */
/* write to a particular coin counter (clocks on active high edge) */
void coin_counter_w(running_machine &machine, int num, int on);
/* return the coin count for a given coin */
int coin_counter_get_count(running_machine &machine, int num);
/* enable/disable coin lockout for a particular coin */
void coin_lockout_w(running_machine &machine, int num, int on);
/* return current lockout state for a particular coin */
int coin_lockout_get_state(running_machine &machine, int num);
/* enable/disable global coin lockout */
void coin_lockout_global_w(running_machine &machine, int on);
/* ----- NVRAM management ----- */
/* load NVRAM from a file */
void nvram_load(running_machine &machine);
/* save NVRAM to a file */
void nvram_save(running_machine &machine);
/* ----- memory card management ----- */
/* create a new memory card with the given index */
int memcard_create(running_machine &machine, int index, int overwrite);
/* "insert" a memory card with the given index and load its data */
int memcard_insert(running_machine &machine, int index);
/* "eject" a memory card and save its data */
void memcard_eject(running_machine &machine);
/* returns the index of the current memory card, or -1 if none */
int memcard_present(running_machine &machine);
/* ----- miscellaneous bits & pieces ----- */
/* set the status of an LED */
void set_led_status(running_machine &machine, int num, int value);
/* ----- interrupt enable and vector helpers ----- */
ATTR_DEPRECATED void generic_pulse_irq_line(device_t *device, int irqline, int cycles);
ATTR_DEPRECATED INTERRUPT_GEN( irq2_line_hold );
#endif /* __MACHINE_GENERIC_H__ */
|