trunk/src/mame/drivers/ddragon3.c
| r244666 | r244667 | |
| 1168 | 1168 | ROM_LOAD( "28.ic44", 0x0000, 0x0100, CRC(964329ef) SHA1(f26846571a16d27b726f689049deb0188103aadb) ) |
| 1169 | 1169 | ROM_END |
| 1170 | 1170 | |
| 1171 | ROM_START( ctribeo ) // only main program code differs from ctribe1 set |
| 1172 | ROM_REGION( 0x80000, "maincpu", 0 ) /* 64k for cpu code */ |
| 1173 | ROM_LOAD16_BYTE( "28a16-1.ic26", 0x00001, 0x20000, CRC(d108f36f) SHA1(af53fa441b9ddfc639abb573864a9b351633c6B7) ) |
| 1174 | ROM_LOAD16_BYTE( "28a15-1.ic25", 0x00000, 0x20000, CRC(3f5693a3) SHA1(2d4516506ad1d68ac45242fe149bba1b4b53eb45) ) |
| 1175 | ROM_LOAD16_BYTE( "28j17-0.104", 0x40001, 0x10000, CRC(8c2c6dbd) SHA1(b99b9be6e0bdc8340fedd258819c4df587926a84) ) |
| 1176 | /* No EVEN rom! */ |
| 1177 | |
| 1178 | ROM_REGION( 0x10000, "audiocpu", 0 ) /* 64k for sound cpu code */ |
| 1179 | ROM_LOAD( "28a10-0.ic89", 0x00000, 0x8000, CRC(4346de13) SHA1(67c6de90ba31a325f03e64d28c9391a315ee359c) ) |
| 1180 | |
| 1181 | ROM_REGION( 0x100000, "gfx1", 0 ) /* Background */ |
| 1182 | ROM_LOAD16_BYTE( "28j7-0.ic11", 0x000001, 0x40000, CRC(a8b773f1) SHA1(999e41dfeb3fb937da769c4a33bb29bf4076dc63) ) |
| 1183 | ROM_LOAD16_BYTE( "28j6-0.ic13", 0x000000, 0x40000, CRC(617530fc) SHA1(b9155ed0ae1437bf4d0b7a95e769bc05a820ecec) ) |
| 1184 | ROM_LOAD16_BYTE( "28j5-0.ic12", 0x080001, 0x40000, CRC(cef0a821) SHA1(c7a35048d5ebf3f09abf9d27f91d12adc03befeb) ) |
| 1185 | ROM_LOAD16_BYTE( "28j4-0.ic14", 0x080000, 0x40000, CRC(b84fda09) SHA1(3ae0c0ec6c398dea17e248b017ea3e2f6c3571e1) ) |
| 1186 | |
| 1187 | ROM_REGION( 0x400000, "gfx2", 0 ) /* Sprites */ |
| 1188 | ROM_LOAD( "28j3-0.ic77", 0x000000, 0x80000, CRC(1ac2a461) SHA1(17436f5dcf29041ca5f470dfae538e4fc12153cc) ) |
| 1189 | ROM_LOAD( "28a14-0.ic60", 0x080000, 0x10000, CRC(972faddb) SHA1(f2b211e8f8301667e6c9a3ce9612e39b16e66a67) ) |
| 1190 | ROM_LOAD( "28j2-0.ic78", 0x100000, 0x80000, CRC(8c796707) SHA1(7417ad0413083876ed65a8612845ccb0d2717530) ) |
| 1191 | ROM_LOAD( "28a13-0.ic61", 0x180000, 0x10000, CRC(eb3ab374) SHA1(db66cb7976c111fa76a3a211e96ad1d7b78ce0ad) ) |
| 1192 | ROM_LOAD( "28j1-0.ic97", 0x200000, 0x80000, CRC(1c9badbd) SHA1(d28f6d684d88448eaa3feae0bba2f5a836d89bd7) ) |
| 1193 | ROM_LOAD( "28a12-0.ic85", 0x280000, 0x10000, CRC(c602ac97) SHA1(44440739636b684c6dcac837f59664120c9ba5f3) ) |
| 1194 | ROM_LOAD( "28j0-0.ic98", 0x300000, 0x80000, CRC(ba73c49e) SHA1(830099027ede1f7c56bb0bf3cdef3018b92e0b87) ) |
| 1195 | ROM_LOAD( "28a11-0.ic86", 0x380000, 0x10000, CRC(4da1d8e5) SHA1(568e9e8d00f1b1ca27c28df5fc0ffc74ad91da7e) ) |
| 1196 | |
| 1197 | ROM_REGION( 0x040000, "oki", 0 ) /* ADPCM Samples */ |
| 1198 | ROM_LOAD( "28j9-0.ic83", 0x00000, 0x20000, CRC(f92a7f4a) SHA1(3717ef64876be9ada378b449749918ce9072073a) ) |
| 1199 | ROM_LOAD( "28j8-0.ic82", 0x20000, 0x20000, CRC(1a3a0b39) SHA1(8847530027cf4be03ffbc6d78dee97b459d03a04) ) |
| 1200 | |
| 1201 | ROM_REGION( 0x0100, "proms", 0 ) |
| 1202 | ROM_LOAD( "28.ic44", 0x0000, 0x0100, CRC(964329ef) SHA1(f26846571a16d27b726f689049deb0188103aadb) ) |
| 1203 | ROM_END |
| 1204 | |
| 1205 | |
| 1206 | |
| 1207 | |
| 1208 | |
| 1171 | 1209 | ROM_START( ctribej ) |
| 1172 | 1210 | ROM_REGION( 0x80000, "maincpu", 0 ) /* 64k for cpu code */ |
| 1173 | 1211 | ROM_LOAD16_BYTE( "28j16-02.26", 0x00001, 0x20000, CRC(658b8568) SHA1(899682f6ab28b184654c51c1169216974043f1b9) ) |
| r244666 | r244667 | |
| 1443 | 1481 | |
| 1444 | 1482 | GAME( 1990, ctribe, 0, ctribe, ctribe, driver_device, 0, ROT0, "Technos Japan", "The Combatribes (US)", GAME_SUPPORTS_SAVE ) |
| 1445 | 1483 | GAME( 1990, ctribe1, ctribe, ctribe, ctribe, driver_device, 0, ROT0, "Technos Japan", "The Combatribes (US set 1?)", GAME_SUPPORTS_SAVE ) |
| 1484 | GAME( 1990, ctribeo, ctribe, ctribe, ctribe, driver_device, 0, ROT0, "Technos Japan", "The Combatribes (US, older)", GAME_SUPPORTS_SAVE ) |
| 1446 | 1485 | GAME( 1990, ctribej, ctribe, ctribe, ctribe, driver_device, 0, ROT0, "Technos Japan", "The Combatribes (Japan)", GAME_SUPPORTS_SAVE ) |
| 1447 | 1486 | GAME( 1990, ctribeb, ctribe, ctribe, ctribeb, driver_device, 0, ROT0, "bootleg", "The Combatribes (bootleg set 1)", GAME_SUPPORTS_SAVE ) |
| 1448 | 1487 | GAME( 1990, ctribeb2, ctribe, ctribe, ctribeb, driver_device, 0, ROT0, "bootleg", "The Combatribes (bootleg set 2)", GAME_SUPPORTS_SAVE ) |
trunk/src/mame/drivers/raiden2.c
| r244666 | r244667 | |
| 2056 | 2056 | ROM_LOAD( "jj4b01__mmipal16l8bcn.u0341.jed", 0x0000, 0x288, NO_DUMP) |
| 2057 | 2057 | ROM_END |
| 2058 | 2058 | |
| 2059 | ROM_START( raiden2f ) // original board with serial # 12476 that matches raiden2nl set except the region and Audio CPU |
| 2060 | ROM_REGION( 0x200000, "maincpu", 0 ) /* v30 main cpu */ |
| 2061 | ROM_LOAD16_BYTE("1_u0211.bin", 0x000000, 0x80000, CRC(53be3dd0) SHA1(304d118423e4085eea3b883bd625d90d21bb2054) ) // == raiden2nl |
| 2062 | ROM_RELOAD(0x100000, 0x80000) |
| 2063 | ROM_LOAD16_BYTE("seibu2_u0212.bin", 0x000001, 0x80000, CRC(8dcd8a8d) SHA1(be0681d5867d8b4f5fb78946a896d89827a71e8e) ) |
| 2064 | ROM_RELOAD(0x100001, 0x80000) |
| 2059 | 2065 | |
| 2066 | ROM_REGION( 0x40000, "user2", 0 ) /* COPX */ |
| 2067 | ROM_LOAD( "copx-d2.u0313", 0x00000, 0x40000, CRC(a6732ff9) SHA1(c4856ec77869d9098da24b1bb3d7d58bb74b4cda) ) /* Soldered MASK ROM */ |
| 2068 | |
| 2069 | ROM_REGION( 0x20000, "audiocpu", ROMREGION_ERASEFF ) /* 64k code for sound Z80 */ |
| 2070 | ROM_LOAD( "seibu5_u1110.bin", 0x000000, 0x08000, CRC(f51a28f9) SHA1(7ae2e2ba0c8159a544a8fd2bb0c2c694ba849302) ) // == raiden2 |
| 2071 | ROM_CONTINUE(0x10000,0x8000) |
| 2072 | ROM_COPY( "audiocpu", 0, 0x018000, 0x08000 ) |
| 2073 | |
| 2074 | ROM_REGION( 0x020000, "gfx1", 0 ) /* chars */ |
| 2075 | ROM_LOAD( "7_u0724.bin", 0x000000, 0x020000, CRC(c9ec9469) SHA1(a29f480a1bee073be7a177096ef58e1887a5af24) ) /* PCB silkscreened FX0 */ |
| 2076 | |
| 2077 | ROM_REGION( 0x400000, "gfx2", 0 ) /* background gfx */ |
| 2078 | ROM_LOAD( "raiden_2_seibu_bg-1.u0714", 0x000000, 0x200000, CRC(e61ad38e) SHA1(63b06cd38db946ad3fc5c1482dc863ef80b58fec) ) /* Soldered MASK ROM */ |
| 2079 | ROM_LOAD( "raiden_2_seibu_bg-2.u075", 0x200000, 0x200000, CRC(a694a4bb) SHA1(39c2614d0effc899fe58f735604283097769df77) ) /* Soldered MASK ROM */ |
| 2080 | |
| 2081 | ROM_REGION32_LE( 0x800000, "gfx3", 0 ) /* sprite gfx (encrypted) */ |
| 2082 | ROM_LOAD32_WORD( "raiden_2_seibu_obj-1.u0811", 0x000000, 0x200000, CRC(ff08ef0b) SHA1(a1858430e8171ca8bab785457ef60e151b5e5cf1) ) /* Soldered MASK ROM */ |
| 2083 | ROM_LOAD32_WORD( "raiden_2_seibu_obj-2.u082", 0x000002, 0x200000, CRC(638eb771) SHA1(9774cc070e71668d7d1d20795502dccd21ca557b) ) /* Soldered MASK ROM */ |
| 2084 | ROM_LOAD32_WORD( "raiden_2_seibu_obj-3.u0837", 0x400000, 0x200000, CRC(897a0322) SHA1(abb2737a2446da5b364fc2d96524b43d808f4126) ) /* Soldered MASK ROM */ |
| 2085 | ROM_LOAD32_WORD( "raiden_2_seibu_obj-4.u0836", 0x400002, 0x200000, CRC(b676e188) SHA1(19cc838f1ccf9c4203cd0e5365e5d99ff3a4ff0f) ) /* Soldered MASK ROM */ |
| 2086 | |
| 2087 | ROM_REGION( 0x100000, "oki1", 0 ) /* ADPCM samples */ |
| 2088 | ROM_LOAD( "6_u1017.bin", 0x00000, 0x40000, CRC(fb0fca23) SHA1(4b2217b121a66c5ab6015537609cf908ffedaf86) ) /* PCB silkscreened VOICE1 */ |
| 2089 | |
| 2090 | ROM_REGION( 0x100000, "oki2", 0 ) /* ADPCM samples */ |
| 2091 | ROM_LOAD( "raiden_2_pcm.u1018", 0x00000, 0x40000, CRC(8cf0d17e) SHA1(0fbe0b1e1ca5360c7c8329331408e3d799b4714c) ) /* Soldered MASK ROM */ |
| 2092 | |
| 2093 | ROM_REGION( 0x10000, "pals", 0 ) /* PALS */ |
| 2094 | ROM_LOAD( "jj4b02__ami18cv8-15.u0342.jed", 0x0000, 0x288, NO_DUMP) |
| 2095 | ROM_LOAD( "jj4b01__mmipal16l8bcn.u0341.jed", 0x0000, 0x288, NO_DUMP) |
| 2096 | ROM_END |
| 2097 | |
| 2060 | 2098 | ROM_START( raiden2u ) |
| 2061 | 2099 | ROM_REGION( 0x200000, "maincpu", 0 ) /* v30 main cpu */ |
| 2062 | 2100 | ROM_LOAD16_BYTE("1.u0211", 0x000000, 0x80000, CRC(b16df955) SHA1(9b7fd85cf2f2c9fea657f3c38abafa93673b3933) ) |
| r244666 | r244667 | |
| 3022 | 3060 | GAME( 1993, raiden2j, raiden2, raiden2, raiden2, raiden2_state, raiden2, ROT270, "Seibu Kaihatsu", "Raiden II (Japan)", GAME_SUPPORTS_SAVE ) // rev 1 |
| 3023 | 3061 | GAME( 1993, raiden2i, raiden2, raiden2, raiden2, raiden2_state, raiden2, ROT270, "Seibu Kaihatsu", "Raiden II (Italy)", GAME_SUPPORTS_SAVE ) // rev 2 |
| 3024 | 3062 | GAME( 1993, raiden2nl, raiden2, raiden2, raiden2, raiden2_state, raiden2, ROT270, "Seibu Kaihatsu", "Raiden II (Holland)", GAME_SUPPORTS_SAVE ) |
| 3063 | GAME( 1993, raiden2f, raiden2, raiden2, raiden2, raiden2_state, raiden2, ROT270, "Seibu Kaihatsu", "Raiden II (France)", GAME_SUPPORTS_SAVE ) |
| 3025 | 3064 | |
| 3026 | 3065 | GAME( 1993, raiden2e, raiden2, raiden2, raiden2, raiden2_state, raiden2, ROT270, "Seibu Kaihatsu", "Raiden II (easy version, Korea?)", GAME_SUPPORTS_SAVE ) // rev 3 (Region 0x04) - Korea?, if regions are the same as RDX, no license or region message tho |
| 3027 | 3066 | GAME( 1993, raiden2ea, raiden2, raiden2, raiden2, raiden2_state, raiden2, ROT270, "Seibu Kaihatsu", "Raiden II (easy version, Japan?)", GAME_SUPPORTS_SAVE ) // rev 4 (Region 0x00) - Should be Japan, but the easy sets have no 'FOR USE IN JAPAN ONLY' display even when region is 00 |
trunk/src/mame/drivers/suna8.c
| r244666 | r244667 | |
| 18 | 18 | 89 Spark Man KRB-16 60136-081 T568009 Yes Encryption + Protection |
| 19 | 19 | 90 Star Fighter KRB-17 60484-0082 T568009 Yes Encryption + Protection |
| 20 | 20 | 91 Hard Head 2 ? ? T568009 - Encryption + Protection |
| 21 | | 92 Brick Zone ? ? Yes - Encryption + Protection |
| 21 | 92 Brick Zone KRB-19 70523-0084 Yes - Encryption + Protection |
| 22 | 22 | -------------------------------------------------------------------------------------- |
| 23 | 23 | |
| 24 | 24 | Notes: |
| r244666 | r244667 | |
| 128 | 128 | return decrypt; |
| 129 | 129 | } |
| 130 | 130 | |
| 131 | | DRIVER_INIT_MEMBER(suna8_state,brickzn) |
| 131 | DRIVER_INIT_MEMBER(suna8_state, brickzn_common) |
| 132 | 132 | { |
| 133 | 133 | m_decrypt = brickzn_decrypt(); |
| 134 | 134 | |
| 135 | // Non-banked opcodes |
| 136 | address_space &space = m_maincpu->space(AS_PROGRAM); |
| 137 | space.set_decrypted_region(0x0000, 0x7fff, m_decrypt); |
| 138 | |
| 139 | // Data banks: 00-0f normal data decryption, 10-1f alternate data decryption: |
| 140 | membank("bank1")->configure_entries(0, 16*2, memregion("maincpu")->base() + 0x10000, 0x4000); |
| 141 | // Opcode banks: 00-1f normal opcode decryption: |
| 142 | membank("bank1")->configure_decrypted_entries(0, 16, m_decrypt + 0x10000, 0x4000); |
| 143 | membank("bank1")->configure_decrypted_entries(16, 16, m_decrypt + 0x10000, 0x4000); |
| 144 | } |
| 145 | |
| 146 | DRIVER_INIT_MEMBER(suna8_state,brickzn) |
| 147 | { |
| 148 | DRIVER_INIT_CALL(brickzn_common); |
| 149 | |
| 135 | 150 | // !!!!!! PATCHES !!!!!! |
| 151 | // To do: ROM banking should be disabled here |
| 152 | m_decrypt[0x11cc] = 0x00; // LD ($C040),A -> NOP |
| 153 | m_decrypt[0x11cd] = 0x00; // LD ($C040),A -> NOP |
| 154 | m_decrypt[0x11ce] = 0x00; // LD ($C040),A -> NOP |
| 136 | 155 | |
| 156 | m_decrypt[0x335b] = 0xc9; // RET Z -> RET (to avoid: jp $C800) |
| 157 | |
| 158 | // NMI enable / source?? |
| 159 | m_decrypt[0x1442] = 0xc9; // HALT -> RET |
| 160 | m_decrypt[0x24C6] = 0x00; // HALT -> NOP |
| 161 | m_decrypt[0x25A4] = 0x00; // HALT -> NOP |
| 162 | } |
| 163 | |
| 164 | DRIVER_INIT_MEMBER(suna8_state,brickznv5) |
| 165 | { |
| 166 | DRIVER_INIT_CALL(brickzn_common); |
| 167 | |
| 168 | // !!!!!! PATCHES !!!!!! |
| 137 | 169 | // To do: ROM banking should be disabled here |
| 138 | 170 | m_decrypt[0x11bb] = 0x00; // LD ($C040),A -> NOP |
| 139 | 171 | m_decrypt[0x11bc] = 0x00; // LD ($C040),A -> NOP |
| r244666 | r244667 | |
| 145 | 177 | m_decrypt[0x1431] = 0xc9; // HALT -> RET |
| 146 | 178 | m_decrypt[0x24b5] = 0x00; // HALT -> NOP |
| 147 | 179 | m_decrypt[0x2593] = 0x00; // HALT -> NOP |
| 148 | | |
| 149 | | // Non-banked opcodes |
| 150 | | address_space &space = m_maincpu->space(AS_PROGRAM); |
| 151 | | space.set_decrypted_region(0x0000, 0x7fff, m_decrypt); |
| 152 | | |
| 153 | | // Data banks: 00-0f normal data decryption, 10-1f alternate data decryption: |
| 154 | | membank("bank1")->configure_entries(0, 16*2, memregion("maincpu")->base() + 0x10000, 0x4000); |
| 155 | | // Opcode banks: 00-1f normal opcode decryption: |
| 156 | | membank("bank1")->configure_decrypted_entries(0, 16, m_decrypt + 0x10000, 0x4000); |
| 157 | | membank("bank1")->configure_decrypted_entries(16, 16, m_decrypt + 0x10000, 0x4000); |
| 158 | 180 | } |
| 159 | 181 | |
| 160 | 182 | DRIVER_INIT_MEMBER(suna8_state,brickznv4) |
| 161 | 183 | { |
| 162 | | m_decrypt = brickzn_decrypt(); |
| 184 | DRIVER_INIT_CALL(brickzn_common); |
| 185 | |
| 163 | 186 | // !!!!!! PATCHES !!!!!! |
| 164 | | |
| 165 | 187 | // To do: ROM banking should be disabled here |
| 166 | 188 | m_decrypt[0x1190] = 0x00; // LD ($C040),A -> NOP |
| 167 | 189 | m_decrypt[0x1191] = 0x00; // LD ($C040),A -> NOP |
| r244666 | r244667 | |
| 173 | 195 | m_decrypt[0x1406] = 0xc9; // HALT -> RET |
| 174 | 196 | m_decrypt[0x2487] = 0x00; // HALT -> NOP |
| 175 | 197 | m_decrypt[0x256c] = 0x00; // HALT -> NOP |
| 176 | | |
| 177 | | // Non-banked opcodes |
| 178 | | address_space &space = m_maincpu->space(AS_PROGRAM); |
| 179 | | space.set_decrypted_region(0x0000, 0x7fff, m_decrypt); |
| 180 | | |
| 181 | | // Data banks: 00-0f normal data decryption, 10-1f alternate data decryption: |
| 182 | | membank("bank1")->configure_entries(0, 16*2, memregion("maincpu")->base() + 0x10000, 0x4000); |
| 183 | | // Opcode banks: 00-1f normal opcode decryption: |
| 184 | | membank("bank1")->configure_decrypted_entries(0, 16, m_decrypt + 0x10000, 0x4000); |
| 185 | | membank("bank1")->configure_decrypted_entries(16, 16, m_decrypt + 0x10000, 0x4000); |
| 186 | 198 | } |
| 187 | 199 | |
| 188 | 200 | |
| r244666 | r244667 | |
| 2526 | 2538 | |
| 2527 | 2539 | ROM_START( brickzn ) |
| 2528 | 2540 | ROM_REGION( 0x50000 + 0x40000, "maincpu", 0 ) /* Main Z80 Code */ |
| 2541 | ROM_LOAD( "P9.M7", 0x00000, 0x08000, CRC(bd7a3c01) SHA1(05fb2836f1c8d8818847ccb76e7b477f13a9929b) ) // V6.0 1992,3,16 |
| 2542 | ROM_LOAD( "P8.K7", 0x10000, 0x20000, CRC(ec3e266d) SHA1(4441a5ae88e51353f6d1eb22c00becb0a7ecea6e) ) |
| 2543 | ROM_LOAD( "P7.I7", 0x30000, 0x20000, CRC(4dd88631) SHA1(0dbcaf3420dad82c3ed94d231948fe69b044b786) ) |
| 2544 | |
| 2545 | ROM_REGION( 0x10000, "audiocpu", 0 ) /* Music Z80 Code */ |
| 2546 | ROM_LOAD( "10.O8", 0x00000, 0x10000, CRC(4eba8178) SHA1(9a214a1acacdc124529bc9dde73a8e884fc70293) ) // BRICK MUSIC XILINX PROGRAM 3020 1991,11,14 MUSIC PROGRAM V 2,0 1990.12.14 |
| 2547 | |
| 2548 | ROM_REGION( 0x10000, "pcm", 0 ) /* PCM Z80 Code */ |
| 2549 | ROM_LOAD( "11.N10", 0x00000, 0x10000, CRC(6c54161a) SHA1(ea216d9f45b441acd56b9fed81a83e3bfe299fbd) ) |
| 2550 | |
| 2551 | ROM_REGION( 0xc0000, "gfx1", ROMREGION_INVERT ) /* Sprites */ |
| 2552 | ROM_LOAD( "P5.M5", 0x00000, 0x20000, CRC(ca59e2f7) SHA1(dbb9f2b316a44f760768f0430798e0c4e9e8f3ff) ) |
| 2553 | ROM_LOAD( "P4.L5", 0x20000, 0x20000, CRC(cc8fb330) SHA1(fd263f65b81acbfc00fe339c461068ab160c04af) ) |
| 2554 | ROM_LOAD( "P3.K5", 0x40000, 0x20000, CRC(2e4f194b) SHA1(86da1a582ea274f2af96d3e3e2ac72bcaf3638cb) ) |
| 2555 | ROM_LOAD( "P2.I5", 0x60000, 0x20000, CRC(592d45ce) SHA1(8ce9236b7deba6cf00999680314ac04eff624a6d) ) |
| 2556 | ROM_LOAD( "P1.H5", 0x80000, 0x20000, CRC(7a6bb583) SHA1(ff7018c07182fce0ff6954bbe3b08fa5105f6be0) ) |
| 2557 | ROM_LOAD( "P6.H7", 0xa0000, 0x20000, CRC(bbf31081) SHA1(1fdbd0e0853082345225e18df340184a7a604b78) ) |
| 2558 | ROM_END |
| 2559 | |
| 2560 | |
| 2561 | ROM_START( brickznv5 ) |
| 2562 | ROM_REGION( 0x50000 + 0x40000, "maincpu", 0 ) /* Main Z80 Code */ |
| 2529 | 2563 | ROM_LOAD( "brickzon.009", 0x00000, 0x08000, CRC(1ea68dea) SHA1(427152a26b062c5e77089de49c1da69369d4d557) ) // V5.0 1992,3,3 |
| 2530 | 2564 | ROM_LOAD( "brickzon.008", 0x10000, 0x20000, CRC(c61540ba) SHA1(08c0ede591b229427b910ca6bb904a6146110be8) ) |
| 2531 | 2565 | ROM_LOAD( "brickzon.007", 0x30000, 0x20000, CRC(ceed12f1) SHA1(9006726b75a65455afb1194298bade8fa2207b4a) ) |
| r244666 | r244667 | |
| 2545 | 2579 | ROM_LOAD( "brickzon.006", 0xa0000, 0x20000, CRC(bbf31081) SHA1(1fdbd0e0853082345225e18df340184a7a604b78) ) |
| 2546 | 2580 | ROM_END |
| 2547 | 2581 | |
| 2582 | |
| 2548 | 2583 | ROM_START( brickznv4 ) |
| 2549 | 2584 | ROM_REGION( 0x50000 + 0x40000, "maincpu", 0 ) /* Main Z80 Code */ |
| 2550 | 2585 | ROM_LOAD( "39", 0x00000, 0x08000, CRC(043380bd) SHA1(7eea7cc7d754815df233879b4a9d3d88eac5b28d) ) // V3.0 1992,1,23 |
| r244666 | r244667 | |
| 2846 | 2881 | |
| 2847 | 2882 | GAME( 1991, hardhea2, 0, hardhea2, hardhea2, suna8_state, hardhea2, ROT0, "SunA", "Hard Head 2 (v2.0)", 0 ) |
| 2848 | 2883 | |
| 2849 | | GAME( 1992, brickzn, 0, brickzn, brickzn, suna8_state, brickzn, ROT90, "SunA", "Brick Zone (v5.0, Joystick)", 0 ) |
| 2884 | GAME( 1992, brickzn, 0, brickzn, brickzn, suna8_state, brickzn, ROT90, "SunA", "Brick Zone (v6.0, Joystick)", 0 ) |
| 2885 | GAME( 1992, brickznv5, brickzn, brickzn, brickzn, suna8_state, brickznv5, ROT90, "SunA", "Brick Zone (v5.0, Joystick)", 0 ) |
| 2850 | 2886 | GAME( 1992, brickznv4, brickzn, brickzn, brickzn, suna8_state, brickznv4, ROT90, "SunA", "Brick Zone (v4.0, Spinner)", 0 ) |
| 2851 | 2887 | GAME( 1992, brickzn11, brickzn, brickzn, brickzn, suna8_state, brickzn11, ROT90, "SunA", "Brick Zone (v1.1)", GAME_NOT_WORKING ) |
trunk/src/mess/drivers/hh_tms1k.c
| r244666 | r244667 | |
| 11 | 11 | |
| 12 | 12 | serial device etc. |
| 13 | 13 | -------------------------------------------------------------------- |
| 14 | | @MP0904A TMS0970 1977, Milton Bradley Comp IV |
| 14 | @CP0904A TMS0970 1977, Milton Bradley Comp IV |
| 15 | 15 | @MP0905B TMS0970 1977, Parker Brothers Codename Sector |
| 16 | | @MP0914 TMS1000 1979, Entex Baseball |
| 16 | @MP0914 TMS1000 1978, Entex Baseball 1 |
| 17 | 17 | @MP1030 TMS1100 1980, APF Mathemagician |
| 18 | 18 | @MP3226 TMS1000 1978, Milton Bradley Simon |
| 19 | 19 | @MP3403 TMS1100 1978, unknown |
| r244666 | r244667 | |
| 56 | 56 | #include "amaztron.lh" |
| 57 | 57 | #include "bankshot.lh" |
| 58 | 58 | #include "cnsector.lh" |
| 59 | #include "ebball.lh" |
| 59 | 60 | #include "elecdet.lh" |
| 60 | 61 | #include "comp4.lh" |
| 61 | 62 | #include "mathmagi.lh" |
| r244666 | r244667 | |
| 67 | 68 | #include "tandy12.lh" // clickable |
| 68 | 69 | #include "tc4.lh" |
| 69 | 70 | |
| 70 | | // test-layouts - use external artwork |
| 71 | | #include "ebball.lh" |
| 72 | 71 | |
| 73 | | |
| 74 | 72 | class hh_tms1k_state : public driver_device |
| 75 | 73 | { |
| 76 | 74 | public: |
| r244666 | r244667 | |
| 298 | 296 | m_display_maxy = maxy; |
| 299 | 297 | |
| 300 | 298 | // update current state |
| 299 | UINT32 mask = (1 << maxx) - 1; |
| 301 | 300 | for (int y = 0; y < maxy; y++) |
| 302 | | m_display_state[y] = (sety >> y & 1) ? setx : 0; |
| 301 | m_display_state[y] = (sety >> y & 1) ? (setx & mask) : 0; |
| 303 | 302 | |
| 304 | 303 | display_update(); |
| 305 | 304 | } |
| r244666 | r244667 | |
| 372 | 371 | |
| 373 | 372 | void hh_tms1k_state::mathmagi_display() |
| 374 | 373 | { |
| 374 | m_display_maxx = 8; |
| 375 | 375 | m_display_maxy = 11; |
| 376 | | m_display_maxx = 8; |
| 377 | 376 | |
| 378 | 377 | // R0-R7: 7seg leds |
| 379 | 378 | for (int y = 0; y < 8; y++) |
| 380 | 379 | { |
| 381 | 380 | m_7seg_mask[y] = 0x7f; |
| 382 | | m_display_state[y] = (m_r >> y & 1) ? ((m_o >> 1 & 0x7f) | (m_o << 7 & 0x80)) : 0; |
| 381 | m_display_state[y] = (m_r >> y & 1) ? (m_o >> 1) : 0; |
| 383 | 382 | } |
| 384 | 383 | |
| 385 | 384 | // R8: custom math symbols digit |
| r244666 | r244667 | |
| 536 | 535 | |
| 537 | 536 | void hh_tms1k_state::amaztron_display() |
| 538 | 537 | { |
| 538 | m_display_maxx = 8; |
| 539 | 539 | m_display_maxy = 3; |
| 540 | | m_display_maxx = 8; |
| 541 | 540 | |
| 542 | 541 | // R8,R9: select digit |
| 543 | 542 | for (int y = 0; y < 2; y++) |
| r244666 | r244667 | |
| 802 | 801 | |
| 803 | 802 | /*************************************************************************** |
| 804 | 803 | |
| 805 | | Entex Baseball |
| 804 | Entex Electronic Baseball (1) |
| 806 | 805 | * TMS1000NLP MP0914 (die labeled MP0914A) |
| 806 | |
| 807 | This is a handheld LED baseball game. One player controls the batter, the CPU |
| 808 | or other player controls the pitcher. Pitcher throw buttons are on a 'joypad' |
| 809 | obtained from a compartment in the back. Player scores are supposed to be |
| 810 | written down manually, the game doesn't save scores or innings (this annoyance |
| 811 | was resolved in the sequel). For more information, refer to the official manual. |
| 812 | |
| 813 | The overlay graphic is known to have 2 versions: one where the field players |
| 814 | are denoted by words ("left", "center", "short", etc), and an alternate one |
| 815 | with little guys drawn next to the LEDs. |
| 807 | 816 | |
| 808 | | NOTE!: MESS external artwork is recommended |
| 809 | 817 | |
| 810 | 818 | lamp translation table: led LDzz from game PCB = MESS lampyx: |
| 811 | 819 | |
| r244666 | r244667 | |
| 827 | 835 | // R8 is a 7seg |
| 828 | 836 | m_7seg_mask[8] = 0x7f; |
| 829 | 837 | |
| 830 | | display_matrix(7, 9, m_o, m_r); |
| 838 | display_matrix(7, 9, ~m_o, m_r); |
| 831 | 839 | } |
| 832 | 840 | |
| 833 | 841 | READ8_MEMBER(hh_tms1k_state::ebball_read_k) |
| r244666 | r244667 | |
| 859 | 867 | |
| 860 | 868 | static INPUT_PORTS_START( ebball ) |
| 861 | 869 | PORT_START("IN.0") // R1 |
| 862 | | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 ) |
| 863 | | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 ) |
| 864 | | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON3 ) |
| 870 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(2) PORT_NAME("P2 Change Up") |
| 871 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START ) PORT_NAME("Change Sides") |
| 872 | PORT_CONFNAME( 0x04, 0x04, "Pitcher" ) |
| 873 | PORT_CONFSETTING( 0x04, "Auto" ) |
| 874 | PORT_CONFSETTING( 0x00, "Manual" ) |
| 865 | 875 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) |
| 866 | 876 | |
| 867 | 877 | PORT_START("IN.1") // R2 |
| 868 | | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON4 ) |
| 878 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2) PORT_NAME("P2 Fast Ball") |
| 869 | 879 | PORT_BIT( 0x0e, IP_ACTIVE_HIGH, IPT_UNUSED ) |
| 870 | 880 | |
| 871 | 881 | PORT_START("IN.2") // R3 |
| 872 | | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON5 ) |
| 882 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON5 ) PORT_PLAYER(2) PORT_NAME("P2 Knuckler") |
| 873 | 883 | PORT_BIT( 0x0e, IP_ACTIVE_HIGH, IPT_UNUSED ) |
| 874 | 884 | |
| 875 | 885 | PORT_START("IN.3") // R4 |
| 876 | | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON6 ) |
| 886 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(2) PORT_NAME("P2 Curve") |
| 877 | 887 | PORT_BIT( 0x0e, IP_ACTIVE_HIGH, IPT_UNUSED ) |
| 878 | 888 | |
| 879 | 889 | PORT_START("IN.4") // R5 |
| 880 | | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON7 ) |
| 890 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON4 ) PORT_PLAYER(2) PORT_NAME("P2 Slider") |
| 881 | 891 | PORT_BIT( 0x0e, IP_ACTIVE_HIGH, IPT_UNUSED ) |
| 882 | 892 | |
| 883 | 893 | PORT_START("IN.5") // Vss! |
| 884 | 894 | PORT_BIT( 0x07, IP_ACTIVE_HIGH, IPT_UNUSED ) |
| 885 | | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON8 ) |
| 895 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_NAME("P1 Batter") |
| 886 | 896 | INPUT_PORTS_END |
| 887 | 897 | |
| 888 | 898 | static MACHINE_CONFIG_START( ebball, hh_tms1k_state ) |
| 889 | 899 | |
| 890 | 900 | /* basic machine hardware */ |
| 891 | | MCFG_CPU_ADD("maincpu", TMS1000, 350000) // RC osc. R=43K, C=47pf -> ~350kHz |
| 901 | MCFG_CPU_ADD("maincpu", TMS1000, 375000) // RC osc. R=43K, C=47pf -> ~375kHz |
| 892 | 902 | MCFG_TMS1XXX_READ_K_CB(READ8(hh_tms1k_state, ebball_read_k)) |
| 893 | 903 | MCFG_TMS1XXX_WRITE_R_CB(WRITE16(hh_tms1k_state, ebball_write_r)) |
| 894 | 904 | MCFG_TMS1XXX_WRITE_O_CB(WRITE16(hh_tms1k_state, ebball_write_o)) |
| r244666 | r244667 | |
| 1337 | 1347 | |
| 1338 | 1348 | WRITE16_MEMBER(hh_tms1k_state::cnsector_write_r) |
| 1339 | 1349 | { |
| 1350 | m_display_maxx = 8; |
| 1340 | 1351 | m_display_maxy = 7; |
| 1341 | | m_display_maxx = 8; |
| 1342 | 1352 | |
| 1343 | 1353 | // R0-R5: select digit (right-to-left) |
| 1344 | 1354 | for (int y = 0; y < 6; y++) |
| r244666 | r244667 | |
| 1545 | 1555 | |
| 1546 | 1556 | WRITE16_MEMBER(hh_tms1k_state::stopthief_write_r) |
| 1547 | 1557 | { |
| 1558 | m_display_maxx = 7; |
| 1548 | 1559 | m_display_maxy = 3; |
| 1549 | | m_display_maxx = 7; |
| 1550 | 1560 | |
| 1551 | 1561 | // R0-R2: select digit |
| 1552 | | UINT8 o = BITSWAP8(m_o,3,5,2,1,4,0,6,7); |
| 1562 | UINT8 o = BITSWAP8(m_o,3,5,2,1,4,0,6,7) & 0x7f; |
| 1553 | 1563 | for (int y = 0; y < m_display_maxy; y++) |
| 1554 | 1564 | { |
| 1555 | 1565 | m_7seg_mask[y] = 0x7f; |
| r244666 | r244667 | |
| 2284 | 2294 | CONS( 1979, amaztron, 0, 0, amaztron, amaztron, driver_device, 0, "Coleco", "Amaze-A-Tron", GAME_SUPPORTS_SAVE ) |
| 2285 | 2295 | CONS( 1981, tc4, 0, 0, tc4, tc4, driver_device, 0, "Coleco", "Total Control 4", GAME_SUPPORTS_SAVE ) |
| 2286 | 2296 | |
| 2287 | | CONS( 1979, ebball, 0, 0, ebball, ebball, driver_device, 0, "Entex", "Baseball (Entex)", GAME_SUPPORTS_SAVE | GAME_NOT_WORKING ) |
| 2297 | CONS( 1978, ebball, 0, 0, ebball, ebball, driver_device, 0, "Entex", "Electronic Baseball (Entex)", GAME_SUPPORTS_SAVE ) |
| 2288 | 2298 | |
| 2289 | 2299 | CONS( 1979, elecdet, 0, 0, elecdet, elecdet, driver_device, 0, "Ideal", "Electronic Detective", GAME_SUPPORTS_SAVE ) |
| 2290 | 2300 | |
trunk/src/mess/drivers/hh_ucom4.c
| r244666 | r244667 | |
| 6 | 6 | |
| 7 | 7 | |
| 8 | 8 | |
| 9 | | serial device etc |
| 10 | | ------------------------------------------ |
| 9 | serial device etc. |
| 10 | ----------------------------------------------- |
| 11 | 11 | @048 uPD552 1980, Tomy Tennis |
| 12 | 12 | *085 uPD650 1980, Roland TR-808 |
| 13 | 13 | 102 uPD553 1981, Bandai Block Out |
| r244666 | r244667 | |
| 86 | 86 | void tmtennis_set_clock(); |
| 87 | 87 | DECLARE_INPUT_CHANGED_MEMBER(tmtennis_difficulty_switch); |
| 88 | 88 | DECLARE_MACHINE_RESET(tmtennis); |
| 89 | |
| 90 | DECLARE_WRITE8_MEMBER(tmpacman_grid_w); |
| 91 | DECLARE_WRITE8_MEMBER(tmpacman_plate_w); |
| 92 | DECLARE_WRITE8_MEMBER(tmpacman_port_e_w); |
| 89 | 93 | |
| 90 | 94 | DECLARE_READ8_MEMBER(alnchase_input_r); |
| 91 | 95 | DECLARE_WRITE8_MEMBER(alnchase_display_w); |
| r244666 | r244667 | |
| 186 | 190 | m_display_maxy = maxy; |
| 187 | 191 | |
| 188 | 192 | // update current state |
| 193 | UINT32 mask = (1 << maxx) - 1; |
| 189 | 194 | for (int y = 0; y < maxy; y++) |
| 190 | | m_display_state[y] = (sety >> y & 1) ? setx : 0; |
| 195 | m_display_state[y] = (sety >> y & 1) ? (setx & mask) : 0; |
| 191 | 196 | |
| 192 | 197 | display_update(); |
| 193 | 198 | } |
| r244666 | r244667 | |
| 231 | 236 | |
| 232 | 237 | WRITE8_MEMBER(hh_ucom4_state::edracula_grid_w) |
| 233 | 238 | { |
| 234 | | // port C/D: vfd matrix grid |
| 239 | // ports C,D: vfd matrix grid |
| 235 | 240 | int shift = (offset - NEC_UCOM4_PORTC) * 4; |
| 236 | 241 | m_grid = (m_grid & ~(0xf << shift)) | (data << shift); |
| 237 | 242 | |
| r244666 | r244667 | |
| 240 | 245 | |
| 241 | 246 | WRITE8_MEMBER(hh_ucom4_state::edracula_plate_w) |
| 242 | 247 | { |
| 243 | | // port E/F/G/H/I01: vfd matrix plate |
| 248 | // ports E-H,I01: vfd matrix plate |
| 244 | 249 | int shift = (offset - NEC_UCOM4_PORTE) * 4; |
| 245 | 250 | m_plate = (m_plate & ~(0xf << shift)) | (data << shift); |
| 246 | 251 | |
| r244666 | r244667 | |
| 257 | 262 | |
| 258 | 263 | |
| 259 | 264 | static INPUT_PORTS_START( edracula ) |
| 260 | | PORT_START("IN.0") |
| 265 | PORT_START("IN.0") // port A |
| 261 | 266 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SELECT ) |
| 262 | 267 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START ) |
| 263 | 268 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON1 ) |
| 264 | 269 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) |
| 265 | 270 | |
| 266 | | PORT_START("IN.1") |
| 271 | PORT_START("IN.1") // port B |
| 267 | 272 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) |
| 268 | 273 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) |
| 269 | 274 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) |
| r244666 | r244667 | |
| 320 | 325 | |
| 321 | 326 | READ8_MEMBER(hh_ucom4_state::tmtennis_input_r) |
| 322 | 327 | { |
| 323 | | // port A/B: buttons |
| 328 | // ports A,B: buttons |
| 324 | 329 | return ~read_inputs(2) >> (offset*4); |
| 325 | 330 | } |
| 326 | 331 | |
| 327 | | WRITE8_MEMBER(hh_ucom4_state::tmtennis_port_e_w) |
| 332 | WRITE8_MEMBER(hh_ucom4_state::tmtennis_grid_w) |
| 328 | 333 | { |
| 329 | | // E0/E1: input mux |
| 330 | | // E2: speaker out |
| 331 | | // E3: N/C |
| 332 | | m_inp_mux = data & 3; |
| 333 | | m_speaker->level_w(data >> 2 & 1); |
| 334 | // ports G-I: vfd matrix grid |
| 335 | int shift = (offset - NEC_UCOM4_PORTG) * 4; |
| 336 | m_grid = (m_grid & ~(0xf << shift)) | (data << shift); |
| 337 | |
| 338 | display_matrix(12, 12, m_plate, m_grid); |
| 334 | 339 | } |
| 335 | 340 | |
| 336 | 341 | WRITE8_MEMBER(hh_ucom4_state::tmtennis_plate_w) |
| 337 | 342 | { |
| 338 | | // port C/D/F: vfd matrix plate |
| 343 | // ports C-F: vfd matrix plate |
| 339 | 344 | if (offset == NEC_UCOM4_PORTF) offset--; |
| 340 | 345 | int shift = (offset - NEC_UCOM4_PORTC) * 4; |
| 341 | 346 | m_plate = (m_plate & ~(0xf << shift)) | (data << shift); |
| r244666 | r244667 | |
| 343 | 348 | display_matrix(12, 12, m_plate, m_grid); |
| 344 | 349 | } |
| 345 | 350 | |
| 346 | | WRITE8_MEMBER(hh_ucom4_state::tmtennis_grid_w) |
| 351 | WRITE8_MEMBER(hh_ucom4_state::tmtennis_port_e_w) |
| 347 | 352 | { |
| 348 | | // port G/H/I: vfd matrix grid |
| 349 | | int shift = (offset - NEC_UCOM4_PORTG) * 4; |
| 350 | | m_grid = (m_grid & ~(0xf << shift)) | (data << shift); |
| 351 | | |
| 352 | | display_matrix(12, 12, m_plate, m_grid); |
| 353 | // E0,E1: input mux |
| 354 | // E2: speaker out |
| 355 | // E3: N/C |
| 356 | m_inp_mux = data & 3; |
| 357 | m_speaker->level_w(data >> 2 & 1); |
| 353 | 358 | } |
| 354 | 359 | |
| 355 | 360 | |
| 356 | | |
| 357 | 361 | /* Pro-Tennis physical button layout and labels is like this: |
| 358 | 362 | |
| 359 | 363 | [SERVE] [1] [2] [3] [3] [2] [1] [SERVE] |
| r244666 | r244667 | |
| 435 | 439 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25) |
| 436 | 440 | MACHINE_CONFIG_END |
| 437 | 441 | |
| 442 | |
| 443 | |
| 438 | 444 | /*************************************************************************** |
| 439 | 445 | |
| 440 | 446 | Tomy(tronic) Pac-Man (manufactured in Japan) |
| r244666 | r244667 | |
| 453 | 459 | |
| 454 | 460 | ***************************************************************************/ |
| 455 | 461 | |
| 462 | WRITE8_MEMBER(hh_ucom4_state::tmpacman_grid_w) |
| 463 | { |
| 464 | // ports C,D: vfd matrix grid |
| 465 | int shift = (offset - NEC_UCOM4_PORTC) * 4; |
| 466 | m_grid = (m_grid & ~(0xf << shift)) | (data << shift); |
| 467 | |
| 468 | display_matrix(19, 8, m_plate, m_grid); |
| 469 | } |
| 470 | |
| 471 | WRITE8_MEMBER(hh_ucom4_state::tmpacman_plate_w) |
| 472 | { |
| 473 | // ports E-I: vfd matrix plate |
| 474 | int shift = (offset - NEC_UCOM4_PORTE) * 4; |
| 475 | m_plate = (m_plate & ~(0xf << shift)) | (data << shift); |
| 476 | |
| 477 | display_matrix(19, 8, m_plate, m_grid); |
| 478 | } |
| 479 | |
| 480 | WRITE8_MEMBER(hh_ucom4_state::tmpacman_port_e_w) |
| 481 | { |
| 482 | // E1: speaker out |
| 483 | m_speaker->level_w(data >> 1 & 1); |
| 484 | |
| 485 | tmpacman_plate_w(space, offset, data); |
| 486 | } |
| 487 | |
| 488 | |
| 456 | 489 | static INPUT_PORTS_START( tmpacman ) |
| 490 | PORT_START("IN.0") // port A |
| 491 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_16WAY // 4 separate directional buttons, hence 16way |
| 492 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_16WAY |
| 493 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_16WAY |
| 494 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_16WAY |
| 495 | |
| 496 | PORT_START("IN.1") // port B |
| 497 | PORT_CONFNAME( 0x00, 0x00, DEF_STR( Difficulty ) ) |
| 498 | PORT_CONFSETTING( 0x00, "Amateur" ) |
| 499 | PORT_CONFSETTING( 0x01, "Professional" ) |
| 500 | PORT_BIT( 0x0e, IP_ACTIVE_HIGH, IPT_UNUSED ) |
| 457 | 501 | INPUT_PORTS_END |
| 458 | 502 | |
| 459 | 503 | |
| r244666 | r244667 | |
| 461 | 505 | |
| 462 | 506 | /* basic machine hardware */ |
| 463 | 507 | MCFG_CPU_ADD("maincpu", NEC_D553, XTAL_430kHz) |
| 508 | MCFG_UCOM4_READ_A_CB(IOPORT("IN.0")) |
| 509 | MCFG_UCOM4_READ_B_CB(IOPORT("IN.1")) |
| 510 | MCFG_UCOM4_WRITE_C_CB(WRITE8(hh_ucom4_state, tmpacman_grid_w)) |
| 511 | MCFG_UCOM4_WRITE_D_CB(WRITE8(hh_ucom4_state, tmpacman_grid_w)) |
| 512 | MCFG_UCOM4_WRITE_E_CB(WRITE8(hh_ucom4_state, tmpacman_port_e_w)) |
| 513 | MCFG_UCOM4_WRITE_F_CB(WRITE8(hh_ucom4_state, tmpacman_plate_w)) |
| 514 | MCFG_UCOM4_WRITE_G_CB(WRITE8(hh_ucom4_state, tmpacman_plate_w)) |
| 515 | MCFG_UCOM4_WRITE_H_CB(WRITE8(hh_ucom4_state, tmpacman_plate_w)) |
| 516 | MCFG_UCOM4_WRITE_I_CB(WRITE8(hh_ucom4_state, tmpacman_plate_w)) |
| 464 | 517 | |
| 518 | MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_ucom4_state, display_decay_tick, attotime::from_msec(1)) |
| 465 | 519 | MCFG_DEFAULT_LAYOUT(layout_tmpacman) |
| 466 | 520 | |
| 467 | 521 | /* no video! */ |
| r244666 | r244667 | |
| 492 | 546 | |
| 493 | 547 | ***************************************************************************/ |
| 494 | 548 | |
| 495 | | |
| 496 | | |
| 497 | 549 | READ8_MEMBER(hh_ucom4_state::alnchase_input_r) |
| 498 | 550 | { |
| 499 | 551 | // port A: buttons |
| r244666 | r244667 | |
| 504 | 556 | { |
| 505 | 557 | if (offset <= NEC_UCOM4_PORTE) |
| 506 | 558 | { |
| 507 | | // C/D/E0: vfd matrix grid |
| 559 | // ports C,D,E0: vfd matrix grid |
| 508 | 560 | int shift = (offset - NEC_UCOM4_PORTC) * 4; |
| 509 | 561 | m_grid = (m_grid & ~(0xf << shift)) | (data << shift); |
| 510 | 562 | |
| r244666 | r244667 | |
| 515 | 567 | |
| 516 | 568 | if (offset >= NEC_UCOM4_PORTE) |
| 517 | 569 | { |
| 518 | | // E23/F/G/H/I: vfd matrix plate |
| 570 | // ports F-I,E23: vfd matrix plate |
| 519 | 571 | int shift = (offset - NEC_UCOM4_PORTE) * 4; |
| 520 | 572 | m_plate = ((m_plate << 2 & ~(0xf << shift)) | (data << shift)) >> 2; |
| 521 | 573 | } |
| r244666 | r244667 | |
| 525 | 577 | |
| 526 | 578 | WRITE8_MEMBER(hh_ucom4_state::alnchase_port_e_w) |
| 527 | 579 | { |
| 528 | | alnchase_display_w(space, offset, data); |
| 529 | | |
| 530 | 580 | // E1: speaker out |
| 531 | 581 | m_speaker->level_w(data >> 1 & 1); |
| 582 | |
| 583 | alnchase_display_w(space, offset, data); |
| 532 | 584 | } |
| 533 | 585 | |
| 534 | 586 | /* physical button layout and labels is like this: |
trunk/src/mess/layout/ebball.lay
| r244666 | r244667 | |
| 4 | 4 | <!-- define elements --> |
| 5 | 5 | |
| 6 | 6 | <element name="static_black"><rect><color red="0.0" green="0.0" blue="0.0" /></rect></element> |
| 7 | <element name="disk_black"><disk><color red="0.0" green="0.0" blue="0.0" /></disk></element> |
| 8 | <element name="disk_green"><disk><color red="0.0" green="0.38" blue="0.15" /></disk></element> |
| 9 | <element name="static_white"><rect><color red="0.75" green="0.75" blue="0.75" /></rect></element> |
| 10 | <element name="disk_white"><disk><color red="0.75" green="0.75" blue="0.75" /></disk></element> |
| 11 | <element name="disk_white2"><disk><color red="0.85" green="0.85" blue="0.85" /></disk></element> |
| 7 | 12 | |
| 13 | <!-- background is dark-red, to hide the leds --> |
| 14 | |
| 15 | <element name="static_bg"><rect><color red="0.2" green="0.04" blue="0.05" /></rect></element> |
| 16 | <element name="disk_bg"><disk><color red="0.2" green="0.04" blue="0.05" /></disk></element> |
| 17 | |
| 18 | |
| 19 | <element name="field_guy"> |
| 20 | <rect><color red="0.0" green="0.38" blue="0.15" /></rect> |
| 21 | <text string=":-)"><color red="0.85" green="0.85" blue="0.85" /></text> |
| 22 | </element> |
| 23 | <element name="base_guy"> |
| 24 | <rect><color red="0.2" green="0.04" blue="0.05" /></rect> |
| 25 | <text string=":-)"><color red="0.85" green="0.85" blue="0.85" /></text> |
| 26 | </element> |
| 27 | <element name="pitcher"> |
| 28 | <rect><color red="0.2" green="0.04" blue="0.05" /></rect> |
| 29 | <text string=":-P"><color red="0.85" green="0.85" blue="0.85" /></text> |
| 30 | </element> |
| 31 | |
| 32 | <element name="text_s"><text string="S" align="1"><color red="0.95" green="0.95" blue="0.95" /></text></element> |
| 33 | <element name="text_b"><text string="B" align="1"><color red="0.95" green="0.95" blue="0.95" /></text></element> |
| 34 | <element name="text_o"><text string="O" align="1"><color red="0.95" green="0.95" blue="0.95" /></text></element> |
| 35 | |
| 36 | <element name="text_s2"> |
| 37 | <rect><color red="0.2" green="0.04" blue="0.05" /></rect> |
| 38 | <text string="S"><color red="0.95" green="0.95" blue="0.95" /></text> |
| 39 | </element> |
| 40 | <element name="text_b2"><text string="B"><color red="0.95" green="0.95" blue="0.95" /></text></element> |
| 41 | |
| 42 | <element name="text_single"><text string="1B"><color red="0.95" green="0.95" blue="0.95" /></text></element> |
| 43 | <element name="text_double"><text string="2B"><color red="0.95" green="0.95" blue="0.95" /></text></element> |
| 44 | <element name="text_triple"><text string="3B"><color red="0.95" green="0.95" blue="0.95" /></text></element> |
| 45 | |
| 46 | <element name="text_home"><text string="HOME" align="2"><color red="0.95" green="0.95" blue="0.95" /></text></element> |
| 47 | <element name="text_run"><text string="RUN" align="1"><color red="0.95" green="0.95" blue="0.95" /></text></element> |
| 48 | |
| 49 | <element name="text_score"><text string="SCORE"><color red="0.4" green="0.4" blue="0.4" /></text></element> |
| 50 | <element name="text_count"><text string="COUNT"><color red="0.4" green="0.4" blue="0.4" /></text></element> |
| 51 | |
| 52 | |
| 8 | 53 | <element name="digit" defstate="0"> |
| 9 | 54 | <led7seg><color red="1.0" green="0.20" blue="0.22" /></led7seg> |
| 10 | 55 | </element> |
| 56 | |
| 11 | 57 | <element name="led" defstate="0"> |
| 12 | 58 | <disk state="0"><color red="0.2" green="0.04" blue="0.05" /></disk> |
| 13 | 59 | <disk state="1"><color red="1.0" green="0.20" blue="0.22" /></disk> |
| 14 | 60 | </element> |
| 15 | 61 | |
| 16 | 62 | |
| 63 | |
| 17 | 64 | <!-- build screen --> |
| 18 | 65 | |
| 19 | | <view name="Test Layout"> |
| 20 | | <bounds left="0" right="64" top="0" bottom="64" /> |
| 66 | <view name="Internal Layout"> |
| 67 | <bounds left="0" right="100" top="0" bottom="114" /> |
| 21 | 68 | <bezel element="static_black"> |
| 22 | | <bounds left="0" right="64" top="0" bottom="64" /> |
| 69 | <bounds left="0" right="100" top="0" bottom="114" /> |
| 23 | 70 | </bezel> |
| 24 | 71 | |
| 25 | | <bezel name="digit8" element="digit"><bounds x="0" y="0" width="10" height="15" /></bezel> |
| 72 | <!-- outer bezel --> |
| 26 | 73 | |
| 27 | | <!-- 7*9 matrix --> |
| 74 | <bezel element="text_score"><bounds x="5.5" y="2" width="8" height="3" /></bezel> |
| 75 | <bezel element="text_count"><bounds x="86" y="2" width="8" height="3" /></bezel> |
| 28 | 76 | |
| 29 | | <bezel name="lamp0" element="led"><bounds x="0" y="20" width="1" height="1" /></bezel> |
| 30 | | <bezel name="lamp1" element="led"><bounds x="2" y="20" width="1" height="1" /></bezel> |
| 31 | | <bezel name="lamp2" element="led"><bounds x="4" y="20" width="1" height="1" /></bezel> |
| 32 | | <bezel name="lamp3" element="led"><bounds x="6" y="20" width="1" height="1" /></bezel> |
| 33 | | <bezel name="lamp4" element="led"><bounds x="8" y="20" width="1" height="1" /></bezel> |
| 34 | | <bezel name="lamp5" element="led"><bounds x="10" y="20" width="1" height="1" /></bezel> |
| 35 | | <bezel name="lamp6" element="led"><bounds x="12" y="20" width="1" height="1" /></bezel> |
| 77 | <bezel name="digit8" element="digit"><bounds x="5" y="7" width="8" height="12" /></bezel> |
| 36 | 78 | |
| 37 | | <bezel name="lamp10" element="led"><bounds x="0" y="22" width="1" height="1" /></bezel> |
| 38 | | <bezel name="lamp11" element="led"><bounds x="2" y="22" width="1" height="1" /></bezel> |
| 39 | | <bezel name="lamp12" element="led"><bounds x="4" y="22" width="1" height="1" /></bezel> |
| 40 | | <bezel name="lamp13" element="led"><bounds x="6" y="22" width="1" height="1" /></bezel> |
| 41 | | <bezel name="lamp14" element="led"><bounds x="8" y="22" width="1" height="1" /></bezel> |
| 42 | | <bezel name="lamp15" element="led"><bounds x="10" y="22" width="1" height="1" /></bezel> |
| 43 | | <bezel name="lamp16" element="led"><bounds x="12" y="22" width="1" height="1" /></bezel> |
| 79 | <bezel element="text_s"><bounds x="82.5" y="7.2" width="2" height="2.5" /></bezel> |
| 80 | <bezel name="lamp70" element="led"><bounds x="86" y="7" width="3" height="3" /></bezel> |
| 81 | <bezel name="lamp71" element="led"><bounds x="90" y="7" width="3" height="3" /></bezel> |
| 44 | 82 | |
| 45 | | <bezel name="lamp20" element="led"><bounds x="0" y="24" width="1" height="1" /></bezel> |
| 46 | | <bezel name="lamp21" element="led"><bounds x="2" y="24" width="1" height="1" /></bezel> |
| 47 | | <bezel name="lamp22" element="led"><bounds x="4" y="24" width="1" height="1" /></bezel> |
| 48 | | <bezel name="lamp23" element="led"><bounds x="6" y="24" width="1" height="1" /></bezel> |
| 49 | | <bezel name="lamp24" element="led"><bounds x="8" y="24" width="1" height="1" /></bezel> |
| 50 | | <bezel name="lamp25" element="led"><bounds x="10" y="24" width="1" height="1" /></bezel> |
| 51 | | <bezel name="lamp26" element="led"><bounds x="12" y="24" width="1" height="1" /></bezel> |
| 83 | <bezel element="text_b"><bounds x="82.5" y="11.2" width="2" height="2.5" /></bezel> |
| 84 | <bezel name="lamp60" element="led"><bounds x="86" y="11" width="3" height="3" /></bezel> |
| 85 | <bezel name="lamp61" element="led"><bounds x="90" y="11" width="3" height="3" /></bezel> |
| 86 | <bezel name="lamp62" element="led"><bounds x="94" y="11" width="3" height="3" /></bezel> |
| 52 | 87 | |
| 53 | | <bezel name="lamp30" element="led"><bounds x="0" y="26" width="1" height="1" /></bezel> |
| 54 | | <bezel name="lamp31" element="led"><bounds x="2" y="26" width="1" height="1" /></bezel> |
| 55 | | <bezel name="lamp32" element="led"><bounds x="4" y="26" width="1" height="1" /></bezel> |
| 56 | | <bezel name="lamp33" element="led"><bounds x="6" y="26" width="1" height="1" /></bezel> |
| 57 | | <bezel name="lamp34" element="led"><bounds x="8" y="26" width="1" height="1" /></bezel> |
| 58 | | <bezel name="lamp35" element="led"><bounds x="10" y="26" width="1" height="1" /></bezel> |
| 59 | | <bezel name="lamp36" element="led"><bounds x="12" y="26" width="1" height="1" /></bezel> |
| 88 | <bezel element="text_o"><bounds x="82.5" y="15.2" width="2" height="2.5" /></bezel> |
| 89 | <bezel name="lamp72" element="led"><bounds x="86" y="15" width="3" height="3" /></bezel> |
| 90 | <bezel name="lamp73" element="led"><bounds x="90" y="15" width="3" height="3" /></bezel> |
| 60 | 91 | |
| 61 | | <bezel name="lamp40" element="led"><bounds x="0" y="28" width="1" height="1" /></bezel> |
| 62 | | <bezel name="lamp41" element="led"><bounds x="2" y="28" width="1" height="1" /></bezel> |
| 63 | | <bezel name="lamp42" element="led"><bounds x="4" y="28" width="1" height="1" /></bezel> |
| 64 | | <bezel name="lamp43" element="led"><bounds x="6" y="28" width="1" height="1" /></bezel> |
| 65 | | <bezel name="lamp44" element="led"><bounds x="8" y="28" width="1" height="1" /></bezel> |
| 66 | | <bezel name="lamp45" element="led"><bounds x="10" y="28" width="1" height="1" /></bezel> |
| 67 | | <bezel name="lamp46" element="led"><bounds x="12" y="28" width="1" height="1" /></bezel> |
| 68 | 92 | |
| 69 | | <bezel name="lamp50" element="led"><bounds x="0" y="30" width="1" height="1" /></bezel> |
| 70 | | <bezel name="lamp51" element="led"><bounds x="2" y="30" width="1" height="1" /></bezel> |
| 71 | | <bezel name="lamp52" element="led"><bounds x="4" y="30" width="1" height="1" /></bezel> |
| 72 | | <bezel name="lamp53" element="led"><bounds x="6" y="30" width="1" height="1" /></bezel> |
| 73 | | <bezel name="lamp54" element="led"><bounds x="8" y="30" width="1" height="1" /></bezel> |
| 74 | | <bezel name="lamp55" element="led"><bounds x="10" y="30" width="1" height="1" /></bezel> |
| 75 | | <bezel name="lamp56" element="led"><bounds x="12" y="30" width="1" height="1" /></bezel> |
| 93 | <!-- board --> |
| 76 | 94 | |
| 77 | | <bezel name="lamp60" element="led"><bounds x="0" y="32" width="1" height="1" /></bezel> |
| 78 | | <bezel name="lamp61" element="led"><bounds x="2" y="32" width="1" height="1" /></bezel> |
| 79 | | <bezel name="lamp62" element="led"><bounds x="4" y="32" width="1" height="1" /></bezel> |
| 80 | | <bezel name="lamp63" element="led"><bounds x="6" y="32" width="1" height="1" /></bezel> |
| 81 | | <bezel name="lamp64" element="led"><bounds x="8" y="32" width="1" height="1" /></bezel> |
| 82 | | <bezel name="lamp65" element="led"><bounds x="10" y="32" width="1" height="1" /></bezel> |
| 83 | | <bezel name="lamp66" element="led"><bounds x="12" y="32" width="1" height="1" /></bezel> |
| 95 | <bezel element="disk_green"><bounds x="-5" y="25" width="110" height="110" /></bezel> |
| 96 | <bezel element="static_black"><bounds x="-10" y="75" width="120" height="65" /></bezel> |
| 97 | <bezel element="disk_bg"><bounds x="15" y="45" width="70" height="70" /></bezel> |
| 98 | <bezel element="static_black"><bounds x="0" y="85" width="100" height="40" /></bezel> |
| 99 | <bezel element="static_bg"><bounds x="15" y="75" width="70" height="26" /></bezel> |
| 100 | <bezel element="disk_bg"><bounds x="40" y="91" width="20" height="20" /></bezel> |
| 84 | 101 | |
| 85 | | <bezel name="lamp70" element="led"><bounds x="0" y="34" width="1" height="1" /></bezel> |
| 86 | | <bezel name="lamp71" element="led"><bounds x="2" y="34" width="1" height="1" /></bezel> |
| 87 | | <bezel name="lamp72" element="led"><bounds x="4" y="34" width="1" height="1" /></bezel> |
| 88 | | <bezel name="lamp73" element="led"><bounds x="6" y="34" width="1" height="1" /></bezel> |
| 89 | | <bezel name="lamp74" element="led"><bounds x="8" y="34" width="1" height="1" /></bezel> |
| 90 | | <bezel name="lamp75" element="led"><bounds x="10" y="34" width="1" height="1" /></bezel> |
| 91 | | <bezel name="lamp76" element="led"><bounds x="12" y="34" width="1" height="1" /></bezel> |
| 102 | <!-- top edge --> |
| 92 | 103 | |
| 93 | | <bezel name="lamp80" element="led"><bounds x="0" y="36" width="1" height="1" /></bezel> |
| 94 | | <bezel name="lamp81" element="led"><bounds x="2" y="36" width="1" height="1" /></bezel> |
| 95 | | <bezel name="lamp82" element="led"><bounds x="4" y="36" width="1" height="1" /></bezel> |
| 96 | | <bezel name="lamp83" element="led"><bounds x="6" y="36" width="1" height="1" /></bezel> |
| 97 | | <bezel name="lamp84" element="led"><bounds x="8" y="36" width="1" height="1" /></bezel> |
| 98 | | <bezel name="lamp85" element="led"><bounds x="10" y="36" width="1" height="1" /></bezel> |
| 99 | | <bezel name="lamp86" element="led"><bounds x="12" y="36" width="1" height="1" /></bezel> |
| 104 | <bezel element="disk_black"><bounds x="-1.3" y="44.7" width="10" height="10" /></bezel> |
| 105 | <bezel element="disk_black"><bounds x="91.3" y="44.7" width="10" height="10" /></bezel> |
| 106 | <bezel name="lamp43" element="led"><bounds x="2.2" y="48.2" width="3" height="3" /></bezel> |
| 107 | <bezel name="lamp50" element="led"><bounds x="94.8" y="48.2" width="3" height="3" /></bezel> |
| 108 | <bezel element="text_triple"><bounds x="2.2" y="44.5" width="3" height="2.5" /></bezel> |
| 109 | <bezel element="text_double"><bounds x="94.8" y="44.5" width="3" height="2.5" /></bezel> |
| 100 | 110 | |
| 101 | | <bezel name="lamp90" element="led"><bounds x="0" y="38" width="1" height="1" /></bezel> |
| 102 | | <bezel name="lamp91" element="led"><bounds x="2" y="38" width="1" height="1" /></bezel> |
| 103 | | <bezel name="lamp92" element="led"><bounds x="4" y="38" width="1" height="1" /></bezel> |
| 104 | | <bezel name="lamp93" element="led"><bounds x="6" y="38" width="1" height="1" /></bezel> |
| 105 | | <bezel name="lamp94" element="led"><bounds x="8" y="38" width="1" height="1" /></bezel> |
| 106 | | <bezel name="lamp95" element="led"><bounds x="10" y="38" width="1" height="1" /></bezel> |
| 107 | | <bezel name="lamp96" element="led"><bounds x="12" y="38" width="1" height="1" /></bezel> |
| 111 | <bezel element="disk_black"><bounds x="18.5" y="26.5" width="10" height="10" /></bezel> |
| 112 | <bezel element="disk_black"><bounds x="71.5" y="26.5" width="10" height="10" /></bezel> |
| 113 | <bezel name="lamp53" element="led"><bounds x="22" y="30" width="3" height="3" /></bezel> |
| 114 | <bezel name="lamp51" element="led"><bounds x="75" y="30" width="3" height="3" /></bezel> |
| 115 | <bezel element="text_single"><bounds x="22" y="26.3" width="3" height="2.5" /></bezel> |
| 116 | <bezel element="text_single"><bounds x="75" y="26.3" width="3" height="2.5" /></bezel> |
| 108 | 117 | |
| 118 | <bezel element="disk_white2"><bounds x="45" y="20" width="10" height="10" /></bezel> |
| 119 | <bezel element="disk_black"><bounds x="45.5" y="20.5" width="9" height="9" /></bezel> |
| 120 | <bezel name="lamp52" element="led"><bounds x="48.5" y="23.5" width="3" height="3" /></bezel> |
| 121 | <bezel element="text_home"><bounds x="36" y="21.5" width="8" height="2.5" /></bezel> |
| 122 | <bezel element="text_run"><bounds x="56.5" y="21.5" width="8" height="2.5" /></bezel> |
| 109 | 123 | |
| 124 | <!-- field --> |
| 125 | |
| 126 | <bezel element="field_guy"><bounds x="13" y="48.5" width="3" height="3" /></bezel> |
| 127 | <bezel element="disk_bg"><bounds x="12" y="52" width="5" height="5" /></bezel> |
| 128 | <bezel name="lamp42" element="led"><bounds x="13" y="53" width="3" height="3" /></bezel> |
| 129 | |
| 130 | <bezel element="field_guy"><bounds x="48.5" y="31.5" width="3" height="3" /></bezel> |
| 131 | <bezel element="disk_bg"><bounds x="47.5" y="35" width="5" height="5" /></bezel> |
| 132 | <bezel name="lamp41" element="led"><bounds x="48.5" y="36" width="3" height="3" /></bezel> |
| 133 | |
| 134 | <bezel element="field_guy"><bounds x="84" y="48.5" width="3" height="3" /></bezel> |
| 135 | <bezel element="disk_bg"><bounds x="83" y="52" width="5" height="5" /></bezel> |
| 136 | <bezel name="lamp40" element="led"><bounds x="84" y="53" width="3" height="3" /></bezel> |
| 137 | |
| 138 | <!-- pitcher --> |
| 139 | |
| 140 | <bezel element="pitcher"><bounds x="48.5" y="66.5" width="3" height="3" /></bezel> |
| 141 | <bezel element="static_white"><bounds x="46" y="71" width="0.5" height="18.5" /></bezel> |
| 142 | <bezel element="static_white"><bounds x="53.5" y="71" width="0.5" height="18.5" /></bezel> |
| 143 | |
| 144 | <bezel name="lamp23" element="led"><bounds x="48.5" y="70.5" width="3" height="3" /></bezel> |
| 145 | <bezel name="lamp0" element="led"><bounds x="48.5" y="76" width="3" height="3" /></bezel> |
| 146 | <bezel name="lamp1" element="led"><bounds x="48.5" y="81.5" width="3" height="3" /></bezel> |
| 147 | <bezel name="lamp2" element="led"><bounds x="48.5" y="87" width="3" height="3" /></bezel> |
| 148 | |
| 149 | <bezel name="lamp10" element="led"><bounds x="45" y="92.5" width="3" height="3" /></bezel> |
| 150 | <bezel name="lamp13" element="led"><bounds x="52" y="92.5" width="3" height="3" /></bezel> |
| 151 | |
| 152 | <!-- bases --> |
| 153 | |
| 154 | <bezel element="base_guy"><bounds x="70" y="58" width="3" height="3" /></bezel> |
| 155 | <bezel name="lamp30" element="led"><bounds x="70" y="62" width="3" height="3" /></bezel> |
| 156 | |
| 157 | <bezel element="base_guy"><bounds x="61" y="49" width="3" height="3" /></bezel> |
| 158 | <bezel name="lamp31" element="led"><bounds x="61" y="53" width="3" height="3" /></bezel> |
| 159 | |
| 160 | <bezel element="base_guy"><bounds x="36" y="49" width="3" height="3" /></bezel> |
| 161 | <bezel name="lamp32" element="led"><bounds x="36" y="53" width="3" height="3" /></bezel> |
| 162 | |
| 163 | <bezel element="base_guy"><bounds x="27" y="58" width="3" height="3" /></bezel> |
| 164 | <bezel name="lamp33" element="led"><bounds x="27" y="62" width="3" height="3" /></bezel> |
| 165 | |
| 166 | <bezel element="static_white"><bounds x="72" y="72" width="6" height="6" /></bezel> |
| 167 | <bezel element="static_bg"><bounds x="72.5" y="72.5" width="5" height="5" /></bezel> |
| 168 | <bezel name="lamp20" element="led"><bounds x="73.5" y="73.5" width="3" height="3" /></bezel> |
| 169 | |
| 170 | <bezel element="static_white"><bounds x="47" y="47" width="6" height="6" /></bezel> |
| 171 | <bezel element="static_bg"><bounds x="47.5" y="47.5" width="5" height="5" /></bezel> |
| 172 | <bezel name="lamp21" element="led"><bounds x="48.5" y="48.5" width="3" height="3" /></bezel> |
| 173 | |
| 174 | <bezel element="static_white"><bounds x="22" y="72" width="6" height="6" /></bezel> |
| 175 | <bezel element="static_bg"><bounds x="22.5" y="72.5" width="5" height="5" /></bezel> |
| 176 | <bezel name="lamp22" element="led"><bounds x="23.5" y="73.5" width="3" height="3" /></bezel> |
| 177 | |
| 178 | <!-- home --> |
| 179 | |
| 180 | <bezel element="static_white"><bounds x="47" y="97" width="6" height="3" /></bezel> |
| 181 | <bezel element="disk_white"><bounds x="47" y="97" width="6" height="6" /></bezel> |
| 182 | <bezel element="static_bg"><bounds x="47.5" y="97.5" width="5" height="2.51" /></bezel> |
| 183 | <bezel element="disk_bg"><bounds x="47.5" y="97.5" width="5" height="5" /></bezel> |
| 184 | |
| 185 | <bezel element="text_b2"><bounds x="42.5" y="108.3" width="3" height="2.5" /></bezel> |
| 186 | <bezel name="lamp11" element="led"><bounds x="42.5" y="98.5" width="3" height="3" /></bezel> |
| 187 | <bezel name="lamp12" element="led"><bounds x="42.5" y="104" width="3" height="3" /></bezel> |
| 188 | |
| 189 | <bezel element="text_s2"><bounds x="48.5" y="108.3" width="3" height="2.5" /></bezel> |
| 190 | <bezel name="lamp3" element="led"><bounds x="48.5" y="98.5" width="3" height="3" /></bezel> |
| 191 | <bezel name="lamp4" element="led"><bounds x="48.5" y="104" width="3" height="3" /></bezel> |
| 192 | |
| 193 | <bezel element="text_b2"><bounds x="54.5" y="108.3" width="3" height="2.5" /></bezel> |
| 194 | <bezel name="lamp14" element="led"><bounds x="54.5" y="98.5" width="3" height="3" /></bezel> |
| 195 | <bezel name="lamp15" element="led"><bounds x="54.5" y="104" width="3" height="3" /></bezel> |
| 196 | |
| 197 | |
| 110 | 198 | </view> |
| 111 | 199 | </mamelayout> |