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
|
/***************************************************************************
dsp32.h
Interface file for the portable DSP32 emulator.
Written by Aaron Giles
***************************************************************************/
#pragma once
#ifndef __DSP32_H__
#define _DSP32_H
#include "cpuintrf.h"
/***************************************************************************
COMPILE-TIME DEFINITIONS
***************************************************************************/
/***************************************************************************
REGISTER ENUMERATION
***************************************************************************/
enum
{
/* CAU */
DSP32_PC=1,
DSP32_R0,DSP32_R1,DSP32_R2,DSP32_R3,
DSP32_R4,DSP32_R5,DSP32_R6,DSP32_R7,
DSP32_R8,DSP32_R9,DSP32_R10,DSP32_R11,
DSP32_R12,DSP32_R13,DSP32_R14,DSP32_R15,
DSP32_R16,DSP32_R17,DSP32_R18,DSP32_R19,
DSP32_R20,DSP32_R21,DSP32_R22,
DSP32_PIN,DSP32_POUT,DSP32_IVTP,
/* DAU */
DSP32_A0,DSP32_A1,DSP32_A2,DSP32_A3,
DSP32_DAUC,
/* PIO */
DSP32_PAR,DSP32_PDR,DSP32_PIR,DSP32_PCR,
DSP32_EMR,DSP32_ESR,DSP32_PCW,DSP32_PIOP,
/* SIO */
DSP32_IBUF,DSP32_ISR,DSP32_OBUF,DSP32_OSR,
DSP32_IOC
};
/***************************************************************************
INTERRUPT CONSTANTS
***************************************************************************/
#define DSP32_IRQ0 0 /* IRQ0 */
#define DSP32_IRQ1 1 /* IRQ1 */
/***************************************************************************
CONFIGURATION
***************************************************************************/
#define DSP32_OUTPUT_PIF 0x01
typedef struct _dsp32_config dsp32_config;
struct _dsp32_config
{
void (*output_pins_changed)(UINT32 pins); /* a change has occurred on an output pin */
};
/***************************************************************************
PUBLIC FUNCTIONS
***************************************************************************/
extern CPU_GET_INFO( dsp32c );
#define CPU_DSP32C CPU_GET_INFO_NAME( dsp32c )
extern void dsp32c_pio_w(const device_config *device, int reg, int data);
extern int dsp32c_pio_r(const device_config *device, int reg);
#endif /* __DSP32_H__ */
|