trunk/src/mess/drivers/ie15.c
r241510 | r241511 | |
387 | 387 | } |
388 | 388 | } |
389 | 389 | |
390 | | static ADDRESS_MAP_START(ie15_mem, AS_PROGRAM, 8, ie15_state) |
| 390 | static ADDRESS_MAP_START( ie15_mem, AS_PROGRAM, 8, ie15_state ) |
391 | 391 | ADDRESS_MAP_UNMAP_HIGH |
392 | | AM_RANGE( 0x0000, 0x0fff ) AM_ROM |
| 392 | AM_RANGE(0x0000, 0x0fff) AM_ROM |
393 | 393 | ADDRESS_MAP_END |
394 | 394 | |
395 | | static ADDRESS_MAP_START(ie15_io, AS_IO, 8, ie15_state) |
| 395 | static ADDRESS_MAP_START( ie15_io, AS_IO, 8, ie15_state ) |
396 | 396 | ADDRESS_MAP_UNMAP_HIGH |
397 | 397 | AM_RANGE(000, 000) AM_READ(mem_r) AM_WRITE(mem_w) // 00h W: memory request, R: memory data [6.1.2.2] |
398 | 398 | AM_RANGE(001, 001) AM_READ(serial_rx_ready_r) AM_WRITENOP // 01h W: memory latch [6.1.2.2] |
r241510 | r241511 | |
568 | 568 | if (y >= IE15_DISP_VERT) return; |
569 | 569 | |
570 | 570 | if (!m_video.enable || (y < IE15_STATUSLINE && m_video.line25)) { |
571 | | copybitmap( m_tmpbmp, m_offbmp, 0, 0, 0, y, m_tmpclip ); |
| 571 | copybitmap(m_tmpbmp, m_offbmp, 0, 0, 0, y, m_tmpclip); |
572 | 572 | } else { |
573 | | draw_scanline( &m_tmpbmp.pix16(y), m_video.ptr2, y%11 ); |
| 573 | draw_scanline(&m_tmpbmp.pix16(y), m_video.ptr2, y%11); |
574 | 574 | } |
575 | 575 | } |
576 | 576 | |
r241510 | r241511 | |
608 | 608 | |
609 | 609 | static MACHINE_CONFIG_START( ie15, ie15_state ) |
610 | 610 | /* Basic machine hardware */ |
611 | | MCFG_CPU_ADD("maincpu", IE15, XTAL_30_8MHz / 10) |
| 611 | MCFG_CPU_ADD("maincpu", IE15, XTAL_30_8MHz/10) |
612 | 612 | MCFG_CPU_PROGRAM_MAP(ie15_mem) |
613 | 613 | MCFG_CPU_IO_MAP(ie15_io) |
614 | 614 | MCFG_TIMER_DRIVER_ADD_PERIODIC("scantimer", ie15_state, scanline_callback, attotime::from_hz(50*28*11)) |
r241510 | r241511 | |
617 | 617 | /* Video hardware */ |
618 | 618 | MCFG_SCREEN_ADD("screen", RASTER) |
619 | 619 | MCFG_SCREEN_UPDATE_DRIVER(ie15_state, screen_update) |
620 | | MCFG_SCREEN_RAW_PARAMS(XTAL_30_8MHz/2,IE15_TOTAL_HORZ,IE15_HORZ_START, |
621 | | IE15_HORZ_START+IE15_DISP_HORZ,IE15_TOTAL_VERT,IE15_VERT_START, |
| 620 | MCFG_SCREEN_RAW_PARAMS(XTAL_30_8MHz/2, IE15_TOTAL_HORZ, IE15_HORZ_START, |
| 621 | IE15_HORZ_START+IE15_DISP_HORZ, IE15_TOTAL_VERT, IE15_VERT_START, |
622 | 622 | IE15_VERT_START+IE15_DISP_VERT); |
| 623 | |
623 | 624 | MCFG_SCREEN_PALETTE("palette") |
624 | 625 | |
625 | 626 | MCFG_GFXDECODE_ADD("gfxdecode", "palette", ie15) |
626 | 627 | MCFG_PALETTE_ADD_MONOCHROME_GREEN("palette") |
627 | 628 | |
628 | | MCFG_DEFAULT_LAYOUT( layout_ie15 ) |
| 629 | MCFG_DEFAULT_LAYOUT(layout_ie15) |
629 | 630 | |
630 | 631 | /* Devices */ |
631 | 632 | MCFG_DEVICE_ADD("keyboard", IE15_KEYBOARD, 0) |
r241510 | r241511 | |
636 | 637 | |
637 | 638 | MCFG_SPEAKER_STANDARD_MONO("mono") |
638 | 639 | MCFG_SOUND_ADD("beeper", BEEP, 0) |
639 | | MCFG_SOUND_ROUTE(ALL_OUTPUTS,"mono",0.15) |
| 640 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15) |
640 | 641 | MACHINE_CONFIG_END |
641 | 642 | |
642 | 643 | |
643 | 644 | /* ROM definition */ |
644 | 645 | ROM_START( ie15 ) |
645 | | ROM_REGION( 0x1000, "maincpu", ROMREGION_ERASE00 ) |
| 646 | ROM_REGION(0x1000, "maincpu", ROMREGION_ERASE00) |
646 | 647 | ROM_DEFAULT_BIOS("5chip") |
647 | 648 | ROM_SYSTEM_BIOS(0, "5chip", "5-chip firmware (newer)") |
648 | | ROMX_LOAD( "dump1.bin", 0x0000, 0x1000, CRC(14b82284) SHA1(5ac4159fbb1c3b81445605e26cd97a713ae12b5f),ROM_BIOS(1) ) |
| 649 | ROMX_LOAD("dump1.bin", 0x0000, 0x1000, CRC(14b82284) SHA1(5ac4159fbb1c3b81445605e26cd97a713ae12b5f), ROM_BIOS(1)) |
649 | 650 | ROM_SYSTEM_BIOS(1, "6chip", "6-chip firmware (older)") |
650 | | ROMX_LOAD( "dump5.bin", 0x0000, 0x1000, CRC(01f2e065) SHA1(2b72dc0594e38a528400cd25aed0c47e0c432895),ROM_BIOS(2) ) |
| 651 | ROMX_LOAD("dump5.bin", 0x0000, 0x1000, CRC(01f2e065) SHA1(2b72dc0594e38a528400cd25aed0c47e0c432895), ROM_BIOS(2)) |
651 | 652 | |
652 | | ROM_REGION( 0x1000, "video", ROMREGION_ERASE00 ) |
| 653 | ROM_REGION(0x1000, "video", ROMREGION_ERASE00) |
653 | 654 | |
654 | | ROM_REGION( 0x0800, "chargen", ROMREGION_ERASE00 ) |
655 | | ROM_LOAD( "chargen-15ie.bin", 0x0000, 0x0800, CRC(ed16bf6b) SHA1(6af9fb75f5375943d5c0ce9ed408e0fb4621b17e) ) |
| 655 | ROM_REGION(0x0800, "chargen", ROMREGION_ERASE00) |
| 656 | ROM_LOAD("chargen-15ie.bin", 0x0000, 0x0800, CRC(ed16bf6b) SHA1(6af9fb75f5375943d5c0ce9ed408e0fb4621b17e)) |
656 | 657 | ROM_END |
657 | 658 | |
658 | 659 | /* Driver */ |
659 | 660 | |
660 | | /* YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY FULLNAME FLAGS */ |
| 661 | /* YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY FULLNAME FLAGS */ |
661 | 662 | COMP( 1980, ie15, 0, 0, ie15, ie15, driver_device, 0, "USSR", "15IE-00-013", 0) |