trunk/src/mess/video/odyssey2.c
| r20209 | r20210 | |
| 34 | 34 | const UINT8 odyssey2_colors[] = |
| 35 | 35 | { |
| 36 | 36 | /* Background,Grid Dim */ |
| 37 | | 0x00, 0x00, 0x00, // 0x00,0x00,0x00, // i r g b |
| 38 | | 0x00, 0x00, 0xAA, // 0x00,0x00,0xFF, /* Blue */ // i r g B |
| 39 | | 0x00, 0xAA, 0x00, // 0x00,0x80,0x00, /* DK Green */ // i r G b |
| 40 | | 0x00, 0xAA, 0xAA, // 0xff,0x9b,0x60, // i r G B |
| 41 | | 0xAA, 0x00, 0x00, // 0xCC,0x00,0x00, /* Red */ // i R g b |
| 42 | | 0xAA, 0x00, 0xAA, // 0xa9,0x80,0xff, // i R g B |
| 43 | | 0xAA, 0xAA, 0x00, // 0x82,0xfd,0xdb, // i R G b |
| 44 | | 0xAA, 0xAA, 0xAA, // 0xFF,0xFF,0xFF, // i R G B |
| 37 | 0x00,0x00,0x00, // i r g b |
| 38 | 0x00,0x00,0xFF, /* Blue */ // i r g B |
| 39 | 0x00,0x80,0x00, /* DK Green */ // i r G b |
| 40 | 0xff,0x9b,0x60, // i r G B |
| 41 | 0xCC,0x00,0x00, /* Red */ // i R g b |
| 42 | 0xa9,0x80,0xff, // i R g B |
| 43 | 0x82,0xfd,0xdb, // i R G b |
| 44 | 0xFF,0xFF,0xFF, // i R G B |
| 45 | 45 | |
| 46 | 46 | /* Background,Grid Bright */ |
| 47 | | 0x55, 0x55, 0x55, // 0x80,0x80,0x80, // I r g b |
| 48 | | 0x55, 0x55, 0xFF, // 0x50,0xAE,0xFF, /* Blue */ // I r g B |
| 49 | | 0x55, 0xFF, 0x55, // 0x00,0xFF,0x00, /* Dk Green */ // I r G b |
| 50 | | 0x55, 0xFF, 0xFF, // 0x82,0xfb,0xdb, /* Lt Grey */ // I r G B |
| 51 | | 0xFF, 0x55, 0x55, // 0xEC,0x02,0x60, /* Red */ // I R g b |
| 52 | | 0xFF, 0x55, 0xFF, // 0xa9,0x80,0xff, /* Violet */ // I R g B |
| 53 | | 0xFF, 0xFF, 0x55, // 0xff,0x9b,0x60, /* Orange */ // I R G b |
| 54 | | 0xFF, 0xFF, 0xFF, // 0xFF,0xFF,0xFF, // I R G B |
| 47 | 0x80,0x80,0x80, // I r g b |
| 48 | 0x50,0xAE,0xFF, /* Blue */ // I r g B |
| 49 | 0x00,0xFF,0x00, /* Dk Green */ // I r G b |
| 50 | 0x82,0xfb,0xdb, /* Lt Grey */ // I r G B |
| 51 | 0xEC,0x02,0x60, /* Red */ // I R g b |
| 52 | 0xa9,0x80,0xff, /* Violet */ // I R g B |
| 53 | 0xff,0x9b,0x60, /* Orange */ // I R G b |
| 54 | 0xFF,0xFF,0xFF, // I R G B |
| 55 | 55 | |
| 56 | 56 | /* Character,Sprite colors */ |
| 57 | 57 | 0x80,0x80,0x80, /* Dark Grey */ // I r g b |
| r20209 | r20210 | |
| 241 | 241 | } |
| 242 | 242 | |
| 243 | 243 | |
| 244 | | WRITE8_MEMBER(odyssey2_state::lum_write) |
| 245 | | { |
| 246 | | m_lum = ( data & 0x01 ) << 3; |
| 247 | | } |
| 248 | | |
| 249 | | |
| 250 | | WRITE16_MEMBER(odyssey2_state::scanline_postprocess) |
| 251 | | { |
| 252 | | int vpos = data; |
| 253 | | bitmap_ind16 *bitmap = m_i8244->get_bitmap(); |
| 254 | | |
| 255 | | // apply external LUM setting |
| 256 | | for ( int x = i8244_device::START_ACTIVE_SCAN; x < i8244_device::END_ACTIVE_SCAN; x++ ) |
| 257 | | { |
| 258 | | bitmap->pix16( vpos, x ) |= ( m_lum ^ 0x08 ); |
| 259 | | } |
| 260 | | } |
| 261 | | |
| 262 | | |
| 263 | 244 | READ8_MEMBER(odyssey2_state::t1_read) |
| 264 | 245 | { |
| 265 | 246 | if ( m_screen->vpos() > m_start_vpos && m_screen->vpos() < m_start_vblank ) |
| r20209 | r20210 | |
| 273 | 254 | } |
| 274 | 255 | |
| 275 | 256 | |
| 276 | | READ8_MEMBER(odyssey2_state::t1_read_g7400) |
| 277 | | { |
| 278 | | if ( m_i8244->vblank() || m_i8244->hblank() ) |
| 279 | | { |
| 280 | | return 1; |
| 281 | | } |
| 282 | | return 0; |
| 283 | | } |
| 284 | | |
| 285 | | |
| 286 | 257 | void odyssey2_state::i824x_scanline(int vpos) |
| 287 | 258 | { |
| 288 | 259 | UINT8 collision_map[160]; |