trunk/src/emu/bus/vcs/dpc.c
| r242932 | r242933 | |
| 26 | 26 | { |
| 27 | 27 | m_oscillator = timer_alloc(TIMER_OSC); |
| 28 | 28 | m_oscillator->reset(); |
| 29 | |
| 30 | for (int i = 0; i < 8; i++) |
| 31 | { |
| 32 | save_item(NAME(m_df[i].top), i); |
| 33 | save_item(NAME(m_df[i].bottom), i); |
| 34 | save_item(NAME(m_df[i].low), i); |
| 35 | save_item(NAME(m_df[i].high), i); |
| 36 | save_item(NAME(m_df[i].flag), i); |
| 37 | save_item(NAME(m_df[i].music_mode), i); |
| 38 | save_item(NAME(m_df[i].osc_clk), i); |
| 39 | } |
| 40 | |
| 41 | save_item(NAME(m_movamt)); |
| 42 | save_item(NAME(m_latch_62)); |
| 43 | save_item(NAME(m_latch_64)); |
| 44 | save_item(NAME(m_dlc)); |
| 45 | save_item(NAME(m_shift_reg)); |
| 29 | 46 | } |
| 30 | 47 | |
| 31 | 48 | void dpc_device::device_reset() |
trunk/src/mame/drivers/tourtabl.c
| r242932 | r242933 | |
| 20 | 20 | : driver_device(mconfig, type, tag), |
| 21 | 21 | m_maincpu(*this, "maincpu") { } |
| 22 | 22 | |
| 23 | required_device<cpu_device> m_maincpu; |
| 24 | |
| 23 | 25 | DECLARE_WRITE8_MEMBER(tourtabl_led_w); |
| 24 | 26 | DECLARE_READ16_MEMBER(tourtabl_read_input_port); |
| 25 | 27 | DECLARE_READ8_MEMBER(tourtabl_get_databus_contents); |
| 26 | 28 | DECLARE_WRITE8_MEMBER(watchdog_w); |
| 27 | | required_device<cpu_device> m_maincpu; |
| 28 | 29 | }; |
| 29 | 30 | |
| 30 | 31 | |
| r242932 | r242933 | |
| 201 | 202 | ROM_END |
| 202 | 203 | |
| 203 | 204 | |
| 204 | | GAME( 1978, tourtabl, 0, tourtabl, tourtabl, driver_device, 0, ROT0, "Atari", "Tournament Table (set 1)", 0 ) |
| 205 | | GAME( 1978, tourtab2, tourtabl, tourtabl, tourtabl, driver_device, 0, ROT0, "Atari", "Tournament Table (set 2)", 0 ) |
| 205 | GAME( 1978, tourtabl, 0, tourtabl, tourtabl, driver_device, 0, ROT0, "Atari", "Tournament Table (set 1)", GAME_SUPPORTS_SAVE ) |
| 206 | GAME( 1978, tourtab2, tourtabl, tourtabl, tourtabl, driver_device, 0, ROT0, "Atari", "Tournament Table (set 2)", GAME_SUPPORTS_SAVE ) |
trunk/src/mame/video/tia.c
| r242932 | r242933 | |
| 430 | 430 | helper[0] = auto_bitmap_ind16_alloc(machine(), cx, TIA_MAX_SCREEN_HEIGHT); |
| 431 | 431 | helper[1] = auto_bitmap_ind16_alloc(machine(), cx, TIA_MAX_SCREEN_HEIGHT); |
| 432 | 432 | helper[2] = auto_bitmap_ind16_alloc(machine(), cx, TIA_MAX_SCREEN_HEIGHT); |
| 433 | |
| 434 | register_save_state(); |
| 433 | 435 | } |
| 434 | 436 | |
| 435 | 437 | |
| r242932 | r242933 | |
| 665 | 667 | |
| 666 | 668 | int tia_video_device::current_x() |
| 667 | 669 | { |
| 668 | | return 3 * ((machine().firstcpu->total_cycles() - frame_cycles) % 76) - 68; |
| 670 | return 3 * ((machine().device<cpu_device>("maincpu")->total_cycles() - frame_cycles) % 76) - 68; |
| 669 | 671 | } |
| 670 | 672 | |
| 671 | 673 | |
| 672 | 674 | int tia_video_device::current_y() |
| 673 | 675 | { |
| 674 | | return (machine().firstcpu->total_cycles() - frame_cycles) / 76; |
| 676 | return (machine().device<cpu_device>("maincpu")->total_cycles() - frame_cycles) / 76; |
| 675 | 677 | } |
| 676 | 678 | |
| 677 | 679 | |
| r242932 | r242933 | |
| 1010 | 1012 | |
| 1011 | 1013 | WRITE8_MEMBER( tia_video_device::WSYNC_w ) |
| 1012 | 1014 | { |
| 1013 | | int cycles = machine().firstcpu->total_cycles() - frame_cycles; |
| 1015 | int cycles = machine().device<cpu_device>("maincpu")->total_cycles() - frame_cycles; |
| 1014 | 1016 | |
| 1015 | 1017 | if (cycles % 76) |
| 1016 | 1018 | { |
| r242932 | r242933 | |
| 1051 | 1053 | { |
| 1052 | 1054 | if (data & 0x80) |
| 1053 | 1055 | { |
| 1054 | | paddle_start = machine().firstcpu->total_cycles(); |
| 1056 | paddle_start = machine().device<cpu_device>("maincpu")->total_cycles(); |
| 1055 | 1057 | } |
| 1056 | 1058 | if ( ! ( VBLANK & 0x40 ) ) { |
| 1057 | 1059 | INPT4 = 0x80; |
| r242932 | r242933 | |
| 1804 | 1806 | |
| 1805 | 1807 | READ8_MEMBER( tia_video_device::INPT_r ) |
| 1806 | 1808 | { |
| 1807 | | UINT64 elapsed = machine().firstcpu->total_cycles() - paddle_start; |
| 1809 | UINT64 elapsed = machine().device<cpu_device>("maincpu")->total_cycles() - paddle_start; |
| 1808 | 1810 | UINT16 input = TIA_INPUT_PORT_ALWAYS_ON; |
| 1809 | 1811 | if ( !m_read_input_port_cb.isnull() ) |
| 1810 | 1812 | { |
| r242932 | r242933 | |
| 2177 | 2179 | COLUBK = 0; |
| 2178 | 2180 | COLUPF = 0; |
| 2179 | 2181 | } |
| 2182 | |
| 2183 | |
| 2184 | void tia_video_device::register_save_state() |
| 2185 | { |
| 2186 | save_item(NAME(p0gfx.start_pixel)); |
| 2187 | save_item(NAME(p0gfx.start_drawing)); |
| 2188 | save_item(NAME(p0gfx.size)); |
| 2189 | save_item(NAME(p0gfx.skipclip)); |
| 2190 | save_item(NAME(p1gfx.start_pixel)); |
| 2191 | save_item(NAME(p1gfx.start_drawing)); |
| 2192 | save_item(NAME(p1gfx.size)); |
| 2193 | save_item(NAME(p1gfx.skipclip)); |
| 2194 | save_item(NAME(frame_cycles)); |
| 2195 | save_item(NAME(paddle_start)); |
| 2196 | save_item(NAME(horzP0)); |
| 2197 | save_item(NAME(horzP1)); |
| 2198 | save_item(NAME(horzM0)); |
| 2199 | save_item(NAME(horzM1)); |
| 2200 | save_item(NAME(horzBL)); |
| 2201 | save_item(NAME(motclkP0)); |
| 2202 | save_item(NAME(motclkP1)); |
| 2203 | save_item(NAME(motclkM0)); |
| 2204 | save_item(NAME(motclkM1)); |
| 2205 | save_item(NAME(motclkBL)); |
| 2206 | save_item(NAME(startP0)); |
| 2207 | save_item(NAME(startP1)); |
| 2208 | save_item(NAME(startM0)); |
| 2209 | save_item(NAME(startM1)); |
| 2210 | save_item(NAME(skipclipP0)); |
| 2211 | save_item(NAME(skipclipP1)); |
| 2212 | save_item(NAME(skipM0delay)); |
| 2213 | save_item(NAME(skipM1delay)); |
| 2214 | save_item(NAME(current_bitmap)); |
| 2215 | save_item(NAME(prev_x)); |
| 2216 | save_item(NAME(prev_y)); |
| 2217 | save_item(NAME(VSYNC)); |
| 2218 | save_item(NAME(VBLANK)); |
| 2219 | save_item(NAME(COLUP0)); |
| 2220 | save_item(NAME(COLUP1)); |
| 2221 | save_item(NAME(COLUBK)); |
| 2222 | save_item(NAME(COLUPF)); |
| 2223 | save_item(NAME(CTRLPF)); |
| 2224 | save_item(NAME(GRP0)); |
| 2225 | save_item(NAME(GRP1)); |
| 2226 | save_item(NAME(REFP0)); |
| 2227 | save_item(NAME(REFP1)); |
| 2228 | save_item(NAME(HMP0)); |
| 2229 | save_item(NAME(HMP1)); |
| 2230 | save_item(NAME(HMM0)); |
| 2231 | save_item(NAME(HMM1)); |
| 2232 | save_item(NAME(HMBL)); |
| 2233 | save_item(NAME(VDELP0)); |
| 2234 | save_item(NAME(VDELP1)); |
| 2235 | save_item(NAME(VDELBL)); |
| 2236 | save_item(NAME(NUSIZ0)); |
| 2237 | save_item(NAME(NUSIZ1)); |
| 2238 | save_item(NAME(ENAM0)); |
| 2239 | save_item(NAME(ENAM1)); |
| 2240 | save_item(NAME(ENABL)); |
| 2241 | save_item(NAME(CXM0P)); |
| 2242 | save_item(NAME(CXM1P)); |
| 2243 | save_item(NAME(CXP0FB)); |
| 2244 | save_item(NAME(CXP1FB)); |
| 2245 | save_item(NAME(CXM0FB)); |
| 2246 | save_item(NAME(CXM1FB)); |
| 2247 | save_item(NAME(CXBLPF)); |
| 2248 | save_item(NAME(CXPPMM)); |
| 2249 | save_item(NAME(RESMP0)); |
| 2250 | save_item(NAME(RESMP1)); |
| 2251 | save_item(NAME(PF0)); |
| 2252 | save_item(NAME(PF1)); |
| 2253 | save_item(NAME(PF2)); |
| 2254 | save_item(NAME(INPT4)); |
| 2255 | save_item(NAME(INPT5)); |
| 2256 | save_item(NAME(prevGRP0)); |
| 2257 | save_item(NAME(prevGRP1)); |
| 2258 | save_item(NAME(prevENABL)); |
| 2259 | save_item(NAME(HMOVE_started)); |
| 2260 | save_item(NAME(HMOVE_started_previous)); |
| 2261 | save_item(NAME(HMP0_latch)); |
| 2262 | save_item(NAME(HMP1_latch)); |
| 2263 | save_item(NAME(HMM0_latch)); |
| 2264 | save_item(NAME(HMM1_latch)); |
| 2265 | save_item(NAME(HMBL_latch)); |
| 2266 | save_item(NAME(REFLECT)); |
| 2267 | save_item(NAME(NUSIZx_changed)); |
| 2268 | } |
trunk/src/mess/drivers/a2600.c
| r242932 | r242933 | |
| 209 | 209 | if ( supported_screen_heights[i] != m_current_screen_height ) |
| 210 | 210 | { |
| 211 | 211 | m_current_screen_height = supported_screen_heights[i]; |
| 212 | | // machine.first_screen()->configure(228, m_current_screen_height, &visarea[i], HZ_TO_ATTOSECONDS( MASTER_CLOCK_NTSC ) * 228 * m_current_screen_height ); |
| 212 | // m_screen->configure(228, m_current_screen_height, &visarea[i], HZ_TO_ATTOSECONDS( MASTER_CLOCK_NTSC ) * 228 * m_current_screen_height ); |
| 213 | 213 | } |
| 214 | 214 | } |
| 215 | 215 | } |
| r242932 | r242933 | |
| 226 | 226 | if ( supported_screen_heights[i] != m_current_screen_height ) |
| 227 | 227 | { |
| 228 | 228 | m_current_screen_height = supported_screen_heights[i]; |
| 229 | | // machine.first_screen()->configure(228, m_current_screen_height, &visarea[i], HZ_TO_ATTOSECONDS( MASTER_CLOCK_PAL ) * 228 * m_current_screen_height ); |
| 229 | // m_screen->configure(228, m_current_screen_height, &visarea[i], HZ_TO_ATTOSECONDS( MASTER_CLOCK_PAL ) * 228 * m_current_screen_height ); |
| 230 | 230 | } |
| 231 | 231 | } |
| 232 | 232 | } |
| r242932 | r242933 | |
| 316 | 316 | |
| 317 | 317 | /* Banks may have changed, reset the cpu so it uses the correct reset vector */ |
| 318 | 318 | m_maincpu->reset(); |
| 319 | |
| 320 | save_item(NAME(m_current_screen_height)); |
| 319 | 321 | } |
| 320 | 322 | |
| 321 | 323 | |
| r242932 | r242933 | |
| 541 | 543 | #define rom_a2600p rom_a2600 |
| 542 | 544 | |
| 543 | 545 | /* YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY FULLNAME */ |
| 544 | | CONS( 1977, a2600, 0, 0, a2600, a2600, driver_device, 0, "Atari", "Atari 2600 (NTSC)" , 0) |
| 545 | | CONS( 1978, a2600p, a2600, 0, a2600p, a2600, driver_device, 0, "Atari", "Atari 2600 (PAL)", 0) |
| 546 | CONS( 1977, a2600, 0, 0, a2600, a2600, driver_device, 0, "Atari", "Atari 2600 (NTSC)" , GAME_SUPPORTS_SAVE ) |
| 547 | CONS( 1978, a2600p, a2600, 0, a2600p, a2600, driver_device, 0, "Atari", "Atari 2600 (PAL)", GAME_SUPPORTS_SAVE ) |