blob: 3c3984e56c89ce90792f6dd016bf67159589d89b (
plain) (
blame)
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
|
// license:BSD-3-Clause
// copyright-holders:David Haywood
#ifndef MAME_MACHINE_68307TMU_H
#define MAME_MACHINE_68307TMU_H
#pragma once
#include "68307.h"
class m68307_cpu_device::m68307_timer
{
public:
struct single_timer
{
uint16_t regs[0x8];
bool enabled;
emu_timer *mametimer;
};
single_timer singletimer[2];
emu_timer *wd_mametimer;
m68307_cpu_device *parent;
void write_tmr(uint16_t data, uint16_t mem_mask, int which);
void write_trr(uint16_t data, uint16_t mem_mask, int which);
void write_ter(uint16_t data, uint16_t mem_mask, int which);
uint16_t read_tcn(uint16_t mem_mask, int which);
bool timer_int_pending(int which) const;
void init(m68307_cpu_device *device);
void reset();
TIMER_CALLBACK_MEMBER(timer0_callback);
TIMER_CALLBACK_MEMBER(timer1_callback);
TIMER_CALLBACK_MEMBER(wd_timer_callback);
};
#endif // MAME_MACHINE_68307TMU_H
|