139
static READ8_HANDLER( dsw0_r )
141
return fix_input0(input_port_read(space->machine(), "DSW1"), input_port_read(space->machine(), "DSW2"));
144
static READ8_HANDLER( dsw1_r )
146
return fix_input1(input_port_read(space->machine(), "DSW1"), input_port_read(space->machine(), "DSW2"));
149
static READ8_HANDLER( input0_r )
151
return fix_input0(input_port_read(space->machine(), "BUTTONS"), input_port_read(space->machine(), "SERVICE"));
154
static READ8_HANDLER( input1_r )
156
return fix_input1(input_port_read(space->machine(), "BUTTONS"), input_port_read(space->machine(), "SERVICE"));
159
static READ8_HANDLER( readFF )
132
READ8_MEMBER(tceptor_state::dsw0_r)
134
return fix_input0(ioport("DSW1")->read(), ioport("DSW2")->read());
137
READ8_MEMBER(tceptor_state::dsw1_r)
139
return fix_input1(ioport("DSW1")->read(), ioport("DSW2")->read());
142
READ8_MEMBER(tceptor_state::input0_r)
144
return fix_input0(ioport("BUTTONS")->read(), ioport("SERVICE")->read());
147
READ8_MEMBER(tceptor_state::input1_r)
149
return fix_input1(ioport("BUTTONS")->read(), ioport("SERVICE")->read());
152
READ8_MEMBER(tceptor_state::readFF)
164
157
/*******************************************************************/
166
static ADDRESS_MAP_START( m6809_map, AS_PROGRAM, 8 )
159
static ADDRESS_MAP_START( m6809_map, AS_PROGRAM, 8, tceptor_state )
167
160
AM_RANGE(0x0000, 0x17ff) AM_RAM
168
AM_RANGE(0x1800, 0x1bff) AM_RAM_WRITE(tceptor_tile_ram_w) AM_BASE_MEMBER(tceptor_state, m_tile_ram)
169
AM_RANGE(0x1c00, 0x1fff) AM_RAM_WRITE(tceptor_tile_attr_w) AM_BASE_MEMBER(tceptor_state, m_tile_attr)
170
AM_RANGE(0x2000, 0x3fff) AM_RAM_WRITE(tceptor_bg_ram_w) AM_BASE_MEMBER(tceptor_state, m_bg_ram) // background (VIEW RAM)
171
AM_RANGE(0x4000, 0x43ff) AM_DEVREADWRITE("namco", namcos1_cus30_r, namcos1_cus30_w)
161
AM_RANGE(0x1800, 0x1bff) AM_RAM_WRITE(tceptor_tile_ram_w) AM_SHARE("tile_ram")
162
AM_RANGE(0x1c00, 0x1fff) AM_RAM_WRITE(tceptor_tile_attr_w) AM_SHARE("tile_attr")
163
AM_RANGE(0x2000, 0x3fff) AM_RAM_WRITE(tceptor_bg_ram_w) AM_SHARE("bg_ram") // background (VIEW RAM)
164
AM_RANGE(0x4000, 0x43ff) AM_DEVREADWRITE_LEGACY("namco", namcos1_cus30_r, namcos1_cus30_w)
172
165
AM_RANGE(0x4800, 0x4800) AM_WRITENOP // 3D scope left/right?
173
166
AM_RANGE(0x4f00, 0x4f00) AM_READNOP // unknown
174
167
AM_RANGE(0x4f01, 0x4f01) AM_READ_PORT("PEDAL") // analog input (accel)
176
169
AM_RANGE(0x4f03, 0x4f03) AM_READ_PORT("STICKY") // analog input (up/down)
177
170
AM_RANGE(0x4f00, 0x4f03) AM_WRITENOP // analog input control?
178
171
AM_RANGE(0x5000, 0x5006) AM_WRITE(tceptor_bg_scroll_w) // bg scroll
179
AM_RANGE(0x6000, 0x7fff) AM_RAM AM_SHARE("share1") AM_BASE_MEMBER(tceptor_state, m_m68k_shared_ram) // COM RAM
172
AM_RANGE(0x6000, 0x7fff) AM_RAM AM_SHARE("m68k_shared_ram") // COM RAM
180
173
AM_RANGE(0x8000, 0x8000) AM_WRITE(m6809_irq_disable_w)
181
174
AM_RANGE(0x8800, 0x8800) AM_WRITE(m6809_irq_enable_w)
182
175
AM_RANGE(0x8000, 0xffff) AM_ROM
186
static ADDRESS_MAP_START( m6502_a_map, AS_PROGRAM, 8 )
179
static ADDRESS_MAP_START( m6502_a_map, AS_PROGRAM, 8, tceptor_state )
187
180
AM_RANGE(0x0000, 0x00ff) AM_RAM AM_SHARE("share2")
188
181
AM_RANGE(0x0100, 0x01ff) AM_RAM
189
182
AM_RANGE(0x0200, 0x02ff) AM_RAM
190
183
AM_RANGE(0x0300, 0x030f) AM_RAM
191
AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w)
184
AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE_LEGACY("ymsnd", ym2151_r, ym2151_w)
192
185
AM_RANGE(0x3000, 0x30ff) AM_RAM AM_SHARE("share3")
193
186
AM_RANGE(0x3c01, 0x3c01) AM_WRITEONLY
194
187
AM_RANGE(0x8000, 0xffff) AM_ROM
198
static ADDRESS_MAP_START( m6502_b_map, AS_PROGRAM, 8 )
191
static ADDRESS_MAP_START( m6502_b_map, AS_PROGRAM, 8, tceptor_state )
199
192
AM_RANGE(0x0000, 0x00ff) AM_RAM AM_SHARE("share2")
200
193
AM_RANGE(0x0100, 0x01ff) AM_RAM
201
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("dac", voice_w) // voice data
194
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE_LEGACY("dac", voice_w) // voice data
202
195
AM_RANGE(0x5000, 0x5000) AM_WRITEONLY // voice ctrl??
203
196
AM_RANGE(0x8000, 0xffff) AM_ROM
207
static ADDRESS_MAP_START( m68k_map, AS_PROGRAM, 16 )
200
static ADDRESS_MAP_START( m68k_map, AS_PROGRAM, 16, tceptor_state )
208
201
AM_RANGE(0x000000, 0x00ffff) AM_ROM // M68K ERROR 1
209
202
AM_RANGE(0x100000, 0x10ffff) AM_ROM // not sure
210
203
AM_RANGE(0x200000, 0x203fff) AM_RAM // M68K ERROR 0
211
204
AM_RANGE(0x300000, 0x300001) AM_WRITEONLY
212
AM_RANGE(0x400000, 0x4001ff) AM_WRITEONLY AM_BASE_MEMBER(tceptor_state, m_sprite_ram)
213
AM_RANGE(0x500000, 0x51ffff) AM_WRITE(namco_road16_w)
205
AM_RANGE(0x400000, 0x4001ff) AM_WRITEONLY AM_SHARE("sprite_ram")
206
AM_RANGE(0x500000, 0x51ffff) AM_WRITE_LEGACY(namco_road16_w)
214
207
AM_RANGE(0x600000, 0x600001) AM_WRITE(m68k_irq_enable_w) // not sure
215
AM_RANGE(0x700000, 0x703fff) AM_READWRITE(m68k_shared_word_r, m68k_shared_word_w) AM_SHARE("share1")
208
AM_RANGE(0x700000, 0x703fff) AM_READWRITE(m68k_shared_word_r, m68k_shared_word_w) AM_SHARE("m68k_shared_ram")
219
static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8 )
220
AM_RANGE(0x0000, 0x001f) AM_READWRITE(m6801_io_r, m6801_io_w)
212
static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, tceptor_state )
213
AM_RANGE(0x0000, 0x001f) AM_READWRITE_LEGACY(m6801_io_r, m6801_io_w)
221
214
AM_RANGE(0x0080, 0x00ff) AM_RAM
222
AM_RANGE(0x1000, 0x13ff) AM_DEVREADWRITE("namco", namcos1_cus30_r, namcos1_cus30_w)
215
AM_RANGE(0x1000, 0x13ff) AM_DEVREADWRITE_LEGACY("namco", namcos1_cus30_r, namcos1_cus30_w)
223
216
AM_RANGE(0x1400, 0x154d) AM_RAM
224
217
AM_RANGE(0x17c0, 0x17ff) AM_RAM
225
218
AM_RANGE(0x2000, 0x20ff) AM_RAM AM_SHARE("share3")