Previous 199869 Revisions Next

r19101 Thursday 22nd November, 2012 at 04:31:24 UTC by R. Belmont
esq5505: VFX-SD used some of those same ROMs (nw)
[src/mess/drivers]esq5505.c

trunk/src/mess/drivers/esq5505.c
r19100r19101
109109   DECLARE_DRIVER_INIT(eps);
110110   DECLARE_DRIVER_INIT(common);
111111   DECLARE_DRIVER_INIT(sq1);
112   DECLARE_DRIVER_INIT(sd1);
112   DECLARE_DRIVER_INIT(denib);
113113   DECLARE_INPUT_CHANGED_MEMBER(key_stroke);
114114};
115115
r19100r19101
327327
328328        if (state->m_bCalibSecondByte)
329329        {
330//            printf("KPC second byte %02x\n", data);
331330            if (data == 0xfd)   // calibration request
332331            {
333332                duart68681_rx_data(state->m_duart, 1, (UINT8)(FPTR)0xff);   // this is the correct response for "calibration OK"
r19100r19101
539538    PORT_BIT(0x0100, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_L) PORT_CHAR('l') PORT_CHAR('L') PORT_CHANGED_MEMBER(DEVICE_SELF, esq5505_state, key_stroke, 0x48)
540539    PORT_BIT(0x0200, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_Q) PORT_CHAR('q') PORT_CHAR('Q') PORT_CHANGED_MEMBER(DEVICE_SELF, esq5505_state, key_stroke, 0x49)
541540    PORT_BIT(0x0400, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_W) PORT_CHAR('w') PORT_CHAR('W') PORT_CHANGED_MEMBER(DEVICE_SELF, esq5505_state, key_stroke, 0x4a)
542    PORT_BIT(0x0800, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_B) PORT_CHAR('e') PORT_CHAR('E') PORT_CHANGED_MEMBER(DEVICE_SELF, esq5505_state, key_stroke, 0x4b)
543    PORT_BIT(0x1000, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_Q) PORT_CHAR('r') PORT_CHAR('R') PORT_CHANGED_MEMBER(DEVICE_SELF, esq5505_state, key_stroke, 0x4c)
544    PORT_BIT(0x2000, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_W) PORT_CHAR('t') PORT_CHAR('T') PORT_CHANGED_MEMBER(DEVICE_SELF, esq5505_state, key_stroke, 0x4d)
545    PORT_BIT(0x4000, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_E) PORT_CHAR('y') PORT_CHAR('Y') PORT_CHANGED_MEMBER(DEVICE_SELF, esq5505_state, key_stroke, 0x4e)
546    PORT_BIT(0x8000, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_R) PORT_CHAR('u') PORT_CHAR('U') PORT_CHANGED_MEMBER(DEVICE_SELF, esq5505_state, key_stroke, 0x4f)
541    PORT_BIT(0x0800, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_E) PORT_CHAR('e') PORT_CHAR('E') PORT_CHANGED_MEMBER(DEVICE_SELF, esq5505_state, key_stroke, 0x4b)
542    PORT_BIT(0x1000, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_R) PORT_CHAR('r') PORT_CHAR('R') PORT_CHANGED_MEMBER(DEVICE_SELF, esq5505_state, key_stroke, 0x4c)
543    PORT_BIT(0x2000, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_T) PORT_CHAR('t') PORT_CHAR('T') PORT_CHANGED_MEMBER(DEVICE_SELF, esq5505_state, key_stroke, 0x4d)
544    PORT_BIT(0x4000, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_Y) PORT_CHAR('y') PORT_CHAR('Y') PORT_CHANGED_MEMBER(DEVICE_SELF, esq5505_state, key_stroke, 0x4e)
545    PORT_BIT(0x8000, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_U) PORT_CHAR('u') PORT_CHAR('U') PORT_CHANGED_MEMBER(DEVICE_SELF, esq5505_state, key_stroke, 0x4f)
547546
548547    PORT_START("KEY1")
549548    PORT_BIT(0x0001, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_Z) PORT_CHAR('z') PORT_CHAR('Z') PORT_CHANGED_MEMBER(DEVICE_SELF, esq5505_state, key_stroke, 0x0)
r19100r19101
552551INPUT_PORTS_END
553552
554553ROM_START( vfx )
555    ROM_REGION(0x20000, "osrom", 0)
554    ROM_REGION(0x40000, "osrom", 0)
556555    ROM_LOAD16_BYTE( "vfx210b-low.bin",  0x000000, 0x010000, CRC(c51b19cd) SHA1(2a125b92ffa02ae9d7fb88118d525491d785e87e) )
557556    ROM_LOAD16_BYTE( "vfx210b-high.bin", 0x000001, 0x010000, CRC(59853be8) SHA1(8e07f69d53f80885d15f624e0b912aeaf3212ee4) )
558557
r19100r19101
560559    ROM_LOAD( "u14.bin",  0x000000, 0x080000, NO_DUMP ) // type 234000 on the schematic
561560    ROM_LOAD( "u15.bin",  0x080000, 0x080000, NO_DUMP )
562561    ROM_LOAD( "u16.bin",  0x100000, 0x080000, NO_DUMP )
562
563    ROM_REGION(0x80000, "nibbles", ROMREGION_ERASE00)
563564ROM_END
564565
565566ROM_START( vfxsd )
r19100r19101
568569    ROM_LOAD16_BYTE( "vfxsd_200_upper.bin", 0x000001, 0x010000, CRC(9a40efa2) SHA1(e38a2a4514519c1573361cb1526139bfcf94e45a) )
569570
570571    ROM_REGION(0x200000, "waverom", ROMREGION_ERASE00)
571    ROM_LOAD( "u54.bin",  0x000000, 0x010000, NO_DUMP )
572    ROM_LOAD( "u55.bin",  0x010000, 0x010000, NO_DUMP )
573    ROM_LOAD( "u56.bin",  0x020000, 0x010000, NO_DUMP )
574    ROM_LOAD( "u57.bin",  0x030000, 0x080000, NO_DUMP )
575    ROM_LOAD( "u58.bin",  0x038000, 0x080000, NO_DUMP )
576    ROM_LOAD( "u59.bin",  0x040000, 0x010000, NO_DUMP )
577    ROM_LOAD( "u60.bin",  0x050000, 0x080000, NO_DUMP )
572    ROM_LOAD16_BYTE( "u57.bin", 0x000001, 0x080000, CRC(85592299) SHA1(1aa7cf612f91972baeba15991d9686ccde01599c) )
573    ROM_LOAD16_BYTE( "u58.bin", 0x100001, 0x080000, CRC(c0055975) SHA1(5a22f1d5e437c6277eb0cfb1ff1b3f8dcdea1cc6) )
578574
579575    ROM_REGION(0x200000, "waverom2", ROMREGION_ERASE00)
576
577    ROM_REGION(0x80000, "nibbles", 0)
578    ROM_LOAD( "u60.bin", 0x000000, 0x080000, CRC(c3ddaf95) SHA1(44a7bd89cd7e82952cc5100479e110c385246559) )
580579ROM_END
581580
582581ROM_START( sd1 )
r19100r19101
591590    ROM_REGION(0x200000, "waverom2", ROMREGION_ERASE00) // BS=1 region (16-bit)
592591
593592    ROM_REGION(0x80000, "nibbles", 0)
594    ROM_LOAD( "u36.bin",      0x000000, 0x080000, CRC(c3ddaf95) SHA1(44a7bd89cd7e82952cc5100479e110c385246559) )
593    ROM_LOAD( "u36.bin", 0x000000, 0x080000, CRC(c3ddaf95) SHA1(44a7bd89cd7e82952cc5100479e110c385246559) )
595594ROM_END
596595
597596ROM_START( sd132 )
r19100r19101
606605    ROM_REGION(0x200000, "waverom2", ROMREGION_ERASE00) // BS=1 region (16-bit)
607606
608607    ROM_REGION(0x80000, "nibbles", ROMREGION_ERASE00)
609    ROM_LOAD( "u36.bin",      0x000000, 0x080000, CRC(c3ddaf95) SHA1(44a7bd89cd7e82952cc5100479e110c385246559) )
608    ROM_LOAD( "u36.bin", 0x000000, 0x080000, CRC(c3ddaf95) SHA1(44a7bd89cd7e82952cc5100479e110c385246559) )
610609ROM_END
611610
612611
r19100r19101
618617    ROM_REGION(0x200000, "waverom", 0)
619618    ROM_LOAD16_BYTE( "sq1-u25.bin",  0x000001, 0x080000, CRC(26312451) SHA1(9f947a11592fd8420fc581914bf16e7ade75390c) )
620619    ROM_LOAD16_BYTE( "sq1-u26.bin",  0x100001, 0x080000, CRC(2edaa9dc) SHA1(72fead505c4f44e5736ff7d545d72dfa37d613e2) )
620
621    ROM_REGION(0x80000, "nibbles", ROMREGION_ERASE00)
621622ROM_END
622623
623624ROM_START( eps )
r19100r19101
626627    ROM_LOAD16_BYTE( "eps-h.bin",    0x000001, 0x008000, CRC(d8747420) SHA1(460597751386eb5f08465699b61381c4acd78065) )
627628
628629    ROM_REGION(0x200000, "waverom", ROMREGION_ERASE00)  // EPS-16 has no ROM sounds
630
631    ROM_REGION(0x80000, "nibbles", ROMREGION_ERASE00)
629632ROM_END
630633
631634DRIVER_INIT_MEMBER(esq5505_state,common)
r19100r19101
657660    m_system_type = SQ1;
658661}
659662
660DRIVER_INIT_MEMBER(esq5505_state,sd1)
663DRIVER_INIT_MEMBER(esq5505_state,denib)
661664{
662665    UINT8 *pNibbles = (UINT8 *)machine().root_device().memregion("nibbles")->base();
663666    UINT8 *pBS0 = (UINT8 *)machine().root_device().memregion("waverom")->base();
r19100r19101
675678   }
676679}
677680
678CONS( 1988, eps,   0, 0, eps,   vfx, esq5505_state, eps,    "Ensoniq", "EPS", GAME_NOT_WORKING )   // custom VFD: one alphanumeric 22-char row, one graphics-capable row (alpha row can also do bar graphs)
679CONS( 1989, vfx,   0, 0, vfx,   vfx, esq5505_state, common, "Ensoniq", "VFX", GAME_NOT_WORKING )       // 2x40 VFD
680CONS( 1989, vfxsd, 0, 0, vfxsd, vfx, esq5505_state, common, "Ensoniq", "VFX-SD", GAME_NOT_WORKING )    // 2x40 VFD
681CONS( 1990, sd1,   0, 0, vfxsd, vfx, esq5505_state, sd1,    "Ensoniq", "SD-1", GAME_NOT_WORKING )      // 2x40 VFD
682CONS( 1990, sd132, sd1, 0, vfx32, vfx, esq5505_state, sd1,    "Ensoniq", "SD-1 32", GAME_NOT_WORKING )   // 2x40 VFD
683CONS( 1990, sq1,   0, 0, sq1,   vfx, esq5505_state, sq1,    "Ensoniq", "SQ-1", GAME_NOT_WORKING )      // LCD of some sort
681CONS( 1988, eps,   0, 0,   eps,   vfx, esq5505_state, eps,    "Ensoniq", "EPS", GAME_NOT_WORKING )   // custom VFD: one alphanumeric 22-char row, one graphics-capable row (alpha row can also do bar graphs)
682CONS( 1989, vfx,   0, 0,   vfx,   vfx, esq5505_state, common, "Ensoniq", "VFX", GAME_NOT_WORKING )       // 2x40 VFD
683CONS( 1989, vfxsd, 0, 0,   vfxsd, vfx, esq5505_state, denib,  "Ensoniq", "VFX-SD", GAME_NOT_WORKING )    // 2x40 VFD
684CONS( 1990, sd1,   0, 0,   vfxsd, vfx, esq5505_state, denib,  "Ensoniq", "SD-1", GAME_NOT_WORKING )      // 2x40 VFD
685CONS( 1990, sd132, sd1, 0, vfx32, vfx, esq5505_state, denib,  "Ensoniq", "SD-1 32", GAME_NOT_WORKING )   // 2x40 VFD
686CONS( 1990, sq1,   0, 0,   sq1,   vfx, esq5505_state, sq1,    "Ensoniq", "SQ-1", GAME_NOT_WORKING )      // LCD of some sort
684687

Previous 199869 Revisions Next


© 1997-2024 The MAME Team