src/mess/drivers/tektroni.c
| r9545 | r9546 | |
| 1 | | /*************************************************************************** |
| 2 | | |
| 3 | | Tektronix 4107A/4109A |
| 4 | | |
| 5 | | Skeleton driver. |
| 6 | | |
| 7 | | ****************************************************************************/ |
| 8 | | |
| 9 | | /* |
| 10 | | |
| 11 | | TODO: |
| 12 | | |
| 13 | | - everything |
| 14 | | |
| 15 | | */ |
| 16 | | |
| 17 | | #include "emu.h" |
| 18 | | #include "cpu/i86/i86.h" |
| 19 | | |
| 20 | | #define I80188_TAG "i80188" |
| 21 | | #define SCREEN_TAG "screen" |
| 22 | | |
| 23 | | class tek4107a_state : public driver_device |
| 24 | | { |
| 25 | | public: |
| 26 | | tek4107a_state(running_machine &machine, const driver_device_config_base &config) |
| 27 | | : driver_device(machine, config) { } |
| 28 | | }; |
| 29 | | |
| 30 | | /* Memory Maps */ |
| 31 | | |
| 32 | | static ADDRESS_MAP_START( tek4107a_mem, ADDRESS_SPACE_PROGRAM, 8 ) |
| 33 | | AM_RANGE(0xc0000, 0xfffff) AM_ROM AM_REGION(I80188_TAG, 0) |
| 34 | | ADDRESS_MAP_END |
| 35 | | |
| 36 | | static ADDRESS_MAP_START( tek4107a_io, ADDRESS_SPACE_IO, 8 ) |
| 37 | | ADDRESS_MAP_END |
| 38 | | |
| 39 | | /* Input Ports */ |
| 40 | | |
| 41 | | static INPUT_PORTS_START( tek4107a ) |
| 42 | | INPUT_PORTS_END |
| 43 | | |
| 44 | | /* Video */ |
| 45 | | |
| 46 | | static VIDEO_START( tek4107a ) |
| 47 | | { |
| 48 | | } |
| 49 | | |
| 50 | | static VIDEO_UPDATE( tek4107a ) |
| 51 | | { |
| 52 | | return 0; |
| 53 | | } |
| 54 | | |
| 55 | | static const gfx_layout tek4107a_charlayout = |
| 56 | | { |
| 57 | | 8, 15, |
| 58 | | RGN_FRAC(1,1), |
| 59 | | 1, |
| 60 | | { 0 }, |
| 61 | | { STEP8(0,1) }, |
| 62 | | { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8, 8*8, 9*8, 10*8, 11*8, 12*8, 13*8, 14*8 }, |
| 63 | | 16*8 |
| 64 | | }; |
| 65 | | |
| 66 | | static GFXDECODE_START( tek4107a ) |
| 67 | | GFXDECODE_ENTRY( "chargen", 0x0000, tek4107a_charlayout, 0, 1 ) |
| 68 | | GFXDECODE_END |
| 69 | | |
| 70 | | /* Machine Initialization */ |
| 71 | | |
| 72 | | static MACHINE_START( tek4107a ) |
| 73 | | { |
| 74 | | } |
| 75 | | |
| 76 | | static MACHINE_RESET( tek4107a ) |
| 77 | | { |
| 78 | | } |
| 79 | | |
| 80 | | /* Machine Driver */ |
| 81 | | |
| 82 | | static MACHINE_CONFIG_START( tek4107a, tek4107a_state ) |
| 83 | | /* basic machine hardware */ |
| 84 | | MDRV_CPU_ADD(I80188_TAG, I80188, 21000000) |
| 85 | | MDRV_CPU_PROGRAM_MAP(tek4107a_mem) |
| 86 | | MDRV_CPU_IO_MAP(tek4107a_io) |
| 87 | | |
| 88 | | MDRV_MACHINE_START(tek4107a) |
| 89 | | MDRV_MACHINE_RESET(tek4107a) |
| 90 | | |
| 91 | | /* video hardware */ |
| 92 | | MDRV_SCREEN_ADD(SCREEN_TAG, RASTER) |
| 93 | | MDRV_SCREEN_REFRESH_RATE(50) |
| 94 | | MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */ |
| 95 | | MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16) |
| 96 | | MDRV_SCREEN_SIZE(640, 480) |
| 97 | | MDRV_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1) |
| 98 | | |
| 99 | | MDRV_PALETTE_LENGTH(64) |
| 100 | | MDRV_VIDEO_START(tek4107a) |
| 101 | | MDRV_VIDEO_UPDATE(tek4107a) |
| 102 | | MDRV_GFXDECODE(tek4107a) |
| 103 | | MACHINE_CONFIG_END |
| 104 | | |
| 105 | | static MACHINE_CONFIG_DERIVED( tek4109a, tek4107a ) |
| 106 | | /* video hardware */ |
| 107 | | MDRV_PALETTE_LENGTH(4096) |
| 108 | | MACHINE_CONFIG_END |
| 109 | | |
| 110 | | /* ROMs */ |
| 111 | | |
| 112 | | ROM_START( tek4107a ) |
| 113 | | ROM_REGION( 0x40000, I80188_TAG, 0 ) |
| 114 | | ROM_LOAD16_BYTE( "160-2379-03.u60", 0x00000, 0x8000, NO_DUMP ) |
| 115 | | ROM_LOAD16_BYTE( "160-2380-03.u160", 0x00001, 0x8000, NO_DUMP ) |
| 116 | | ROM_LOAD16_BYTE( "160-2377-03.u70", 0x10000, 0x8000, NO_DUMP ) |
| 117 | | ROM_LOAD16_BYTE( "160-2378-03.u170", 0x10001, 0x8000, CRC(feac272f) SHA1(f2018dc9bb5bd6840b2843c709cbc24689054dc0) ) |
| 118 | | ROM_LOAD16_BYTE( "160-2375-03.u80", 0x20000, 0x8000, NO_DUMP ) |
| 119 | | ROM_LOAD16_BYTE( "160-2376-03.u180", 0x20001, 0x8000, CRC(35a44e75) SHA1(278c7f218105ad3473409b16a8d27a0b9f7a859e) ) |
| 120 | | ROM_LOAD16_BYTE( "160-2373-03.u90", 0x30000, 0x8000, CRC(d5e89b15) SHA1(d6eb1a0a684348a8194238d641528fb96fb29087) ) |
| 121 | | ROM_LOAD16_BYTE( "160-2374-03.u190", 0x30001, 0x8000, CRC(a3fef76e) SHA1(902845c4aa0cbc392b62c726ac746ca62567d91c) ) |
| 122 | | |
| 123 | | ROM_REGION( 0x1000, "chargen", 0 ) |
| 124 | | ROM_LOAD( "160-2381 v1.0.u855", 0x0000, 0x1000, CRC(ac7ca279) SHA1(4c9de06d1c346f83eb8d0d09a0eb32c40bd8014c) ) |
| 125 | | ROM_END |
| 126 | | |
| 127 | | ROM_START( tek4109a ) |
| 128 | | // another set with 160-32xx-03 v10.5 labels exists: http://picasaweb.google.com/glen.slick/Tektronix4107A#5300179291078507810 |
| 129 | | ROM_REGION( 0x40000, I80188_TAG, 0 ) |
| 130 | | ROM_LOAD16_BYTE( "160-3283-02 v8.2.u60", 0x00000, 0x8000, CRC(2a821db6) SHA1(b4d8b74bd9fe43885dcdc4efbdd1eebb96e32060) ) |
| 131 | | ROM_LOAD16_BYTE( "160-3284-02 v8.2.u160", 0x00001, 0x8000, CRC(ee567b01) SHA1(67b1b0648cfaa28d57473bcc45358ff2bf986acf) ) |
| 132 | | ROM_LOAD16_BYTE( "160-3281-02 v8.2.u70", 0x10000, 0x8000, CRC(e2713328) SHA1(b0bb3471539ef24d79b18d0e33bc148ed27d0ec4) ) |
| 133 | | ROM_LOAD16_BYTE( "160-3282-02 v8.2.u170", 0x10001, 0x8000, CRC(c109a4f7) SHA1(762019105c1f82200a9c99ccfcfd8ee81d2ac4fe) ) |
| 134 | | ROM_LOAD16_BYTE( "160-3279-02 v8.2.u80", 0x20000, 0x8000, CRC(00822078) SHA1(a82e61dafccbaea44e67efaa5940e52ec6d07d7d) ) |
| 135 | | ROM_LOAD16_BYTE( "160-3280-02 v8.2.u180", 0x20001, 0x8000, CRC(eec9f70f) SHA1(7b65336219f5fa0d11f8be2b37040b564a53c52f) ) |
| 136 | | ROM_LOAD16_BYTE( "160-3277-02 v8.2.u90", 0x30000, 0x8000, CRC(cf6ebc97) SHA1(298db473874c57bf4eec788818179748030a9ad8) ) |
| 137 | | ROM_LOAD16_BYTE( "160-3278-02 v8.2.u190", 0x30001, 0x8000, CRC(d6124cd1) SHA1(f826aee5ec07cf5ac369697d93def0259ad225bb) ) |
| 138 | | |
| 139 | | ROM_REGION( 0x1000, "chargen", 0 ) |
| 140 | | ROM_LOAD( "160-3087 v1.0.u855", 0x0000, 0x1000, CRC(97479528) SHA1(e9e15f1f64b3b6bd139accd51950bae71fdc2193) ) |
| 141 | | ROM_END |
| 142 | | |
| 143 | | /* System Drivers */ |
| 144 | | |
| 145 | | /* YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY FULLNAME FLAGS */ |
| 146 | | COMP( 1983, tek4107a, 0, 0, tek4107a, tek4107a, 0, "Tektronix", "Tektronix 4107A", GAME_NOT_WORKING | GAME_NO_SOUND ) |
| 147 | | COMP( 1983, tek4109a, tek4107a, 0, tek4109a, tek4107a, 0, "Tektronix", "Tektronix 4109A", GAME_NOT_WORKING | GAME_NO_SOUND ) |
src/mess/drivers/tek410x.c
| r0 | r9546 | |
| 1 | /*************************************************************************** |
| 2 | |
| 3 | Tektronix 4107A/4109A |
| 4 | |
| 5 | Skeleton driver. |
| 6 | |
| 7 | ****************************************************************************/ |
| 8 | |
| 9 | /* |
| 10 | |
| 11 | TODO: |
| 12 | |
| 13 | - everything |
| 14 | |
| 15 | */ |
| 16 | |
| 17 | #include "emu.h" |
| 18 | #include "cpu/i86/i86.h" |
| 19 | |
| 20 | #define I80188_TAG "i80188" |
| 21 | #define SCREEN_TAG "screen" |
| 22 | |
| 23 | class tek4107a_state : public driver_device |
| 24 | { |
| 25 | public: |
| 26 | tek4107a_state(running_machine &machine, const driver_device_config_base &config) |
| 27 | : driver_device(machine, config) { } |
| 28 | }; |
| 29 | |
| 30 | /* Memory Maps */ |
| 31 | |
| 32 | static ADDRESS_MAP_START( tek4107a_mem, ADDRESS_SPACE_PROGRAM, 8 ) |
| 33 | AM_RANGE(0xc0000, 0xfffff) AM_ROM AM_REGION(I80188_TAG, 0) |
| 34 | ADDRESS_MAP_END |
| 35 | |
| 36 | static ADDRESS_MAP_START( tek4107a_io, ADDRESS_SPACE_IO, 8 ) |
| 37 | ADDRESS_MAP_END |
| 38 | |
| 39 | /* Input Ports */ |
| 40 | |
| 41 | static INPUT_PORTS_START( tek4107a ) |
| 42 | INPUT_PORTS_END |
| 43 | |
| 44 | /* Video */ |
| 45 | |
| 46 | static VIDEO_START( tek4107a ) |
| 47 | { |
| 48 | } |
| 49 | |
| 50 | static VIDEO_UPDATE( tek4107a ) |
| 51 | { |
| 52 | return 0; |
| 53 | } |
| 54 | |
| 55 | static const gfx_layout tek4107a_charlayout = |
| 56 | { |
| 57 | 8, 15, |
| 58 | RGN_FRAC(1,1), |
| 59 | 1, |
| 60 | { 0 }, |
| 61 | { STEP8(0,1) }, |
| 62 | { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8, 8*8, 9*8, 10*8, 11*8, 12*8, 13*8, 14*8 }, |
| 63 | 16*8 |
| 64 | }; |
| 65 | |
| 66 | static GFXDECODE_START( tek4107a ) |
| 67 | GFXDECODE_ENTRY( "chargen", 0x0000, tek4107a_charlayout, 0, 1 ) |
| 68 | GFXDECODE_END |
| 69 | |
| 70 | /* Machine Initialization */ |
| 71 | |
| 72 | static MACHINE_START( tek4107a ) |
| 73 | { |
| 74 | } |
| 75 | |
| 76 | static MACHINE_RESET( tek4107a ) |
| 77 | { |
| 78 | } |
| 79 | |
| 80 | /* Machine Driver */ |
| 81 | |
| 82 | static MACHINE_CONFIG_START( tek4107a, tek4107a_state ) |
| 83 | /* basic machine hardware */ |
| 84 | MDRV_CPU_ADD(I80188_TAG, I80188, 21000000) |
| 85 | MDRV_CPU_PROGRAM_MAP(tek4107a_mem) |
| 86 | MDRV_CPU_IO_MAP(tek4107a_io) |
| 87 | |
| 88 | MDRV_MACHINE_START(tek4107a) |
| 89 | MDRV_MACHINE_RESET(tek4107a) |
| 90 | |
| 91 | /* video hardware */ |
| 92 | MDRV_SCREEN_ADD(SCREEN_TAG, RASTER) |
| 93 | MDRV_SCREEN_REFRESH_RATE(50) |
| 94 | MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */ |
| 95 | MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16) |
| 96 | MDRV_SCREEN_SIZE(640, 480) |
| 97 | MDRV_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1) |
| 98 | |
| 99 | MDRV_PALETTE_LENGTH(64) |
| 100 | MDRV_VIDEO_START(tek4107a) |
| 101 | MDRV_VIDEO_UPDATE(tek4107a) |
| 102 | MDRV_GFXDECODE(tek4107a) |
| 103 | MACHINE_CONFIG_END |
| 104 | |
| 105 | static MACHINE_CONFIG_DERIVED( tek4109a, tek4107a ) |
| 106 | /* video hardware */ |
| 107 | MDRV_PALETTE_LENGTH(4096) |
| 108 | MACHINE_CONFIG_END |
| 109 | |
| 110 | /* ROMs */ |
| 111 | |
| 112 | ROM_START( tek4107a ) |
| 113 | ROM_REGION( 0x40000, I80188_TAG, 0 ) |
| 114 | ROM_LOAD16_BYTE( "160-2379-03.u60", 0x00000, 0x8000, NO_DUMP ) |
| 115 | ROM_LOAD16_BYTE( "160-2380-03.u160", 0x00001, 0x8000, NO_DUMP ) |
| 116 | ROM_LOAD16_BYTE( "160-2377-03.u70", 0x10000, 0x8000, NO_DUMP ) |
| 117 | ROM_LOAD16_BYTE( "160-2378-03.u170", 0x10001, 0x8000, CRC(feac272f) SHA1(f2018dc9bb5bd6840b2843c709cbc24689054dc0) ) |
| 118 | ROM_LOAD16_BYTE( "160-2375-03.u80", 0x20000, 0x8000, NO_DUMP ) |
| 119 | ROM_LOAD16_BYTE( "160-2376-03.u180", 0x20001, 0x8000, CRC(35a44e75) SHA1(278c7f218105ad3473409b16a8d27a0b9f7a859e) ) |
| 120 | ROM_LOAD16_BYTE( "160-2373-03.u90", 0x30000, 0x8000, CRC(d5e89b15) SHA1(d6eb1a0a684348a8194238d641528fb96fb29087) ) |
| 121 | ROM_LOAD16_BYTE( "160-2374-03.u190", 0x30001, 0x8000, CRC(a3fef76e) SHA1(902845c4aa0cbc392b62c726ac746ca62567d91c) ) |
| 122 | |
| 123 | ROM_REGION( 0x1000, "chargen", 0 ) |
| 124 | ROM_LOAD( "160-2381 v1.0.u855", 0x0000, 0x1000, CRC(ac7ca279) SHA1(4c9de06d1c346f83eb8d0d09a0eb32c40bd8014c) ) |
| 125 | ROM_END |
| 126 | |
| 127 | ROM_START( tek4109a ) |
| 128 | // another set with 160-32xx-03 v10.5 labels exists: http://picasaweb.google.com/glen.slick/Tektronix4107A#5300179291078507810 |
| 129 | ROM_REGION( 0x40000, I80188_TAG, 0 ) |
| 130 | ROM_LOAD16_BYTE( "160-3283-02 v8.2.u60", 0x00000, 0x8000, CRC(2a821db6) SHA1(b4d8b74bd9fe43885dcdc4efbdd1eebb96e32060) ) |
| 131 | ROM_LOAD16_BYTE( "160-3284-02 v8.2.u160", 0x00001, 0x8000, CRC(ee567b01) SHA1(67b1b0648cfaa28d57473bcc45358ff2bf986acf) ) |
| 132 | ROM_LOAD16_BYTE( "160-3281-02 v8.2.u70", 0x10000, 0x8000, CRC(e2713328) SHA1(b0bb3471539ef24d79b18d0e33bc148ed27d0ec4) ) |
| 133 | ROM_LOAD16_BYTE( "160-3282-02 v8.2.u170", 0x10001, 0x8000, CRC(c109a4f7) SHA1(762019105c1f82200a9c99ccfcfd8ee81d2ac4fe) ) |
| 134 | ROM_LOAD16_BYTE( "160-3279-02 v8.2.u80", 0x20000, 0x8000, CRC(00822078) SHA1(a82e61dafccbaea44e67efaa5940e52ec6d07d7d) ) |
| 135 | ROM_LOAD16_BYTE( "160-3280-02 v8.2.u180", 0x20001, 0x8000, CRC(eec9f70f) SHA1(7b65336219f5fa0d11f8be2b37040b564a53c52f) ) |
| 136 | ROM_LOAD16_BYTE( "160-3277-02 v8.2.u90", 0x30000, 0x8000, CRC(cf6ebc97) SHA1(298db473874c57bf4eec788818179748030a9ad8) ) |
| 137 | ROM_LOAD16_BYTE( "160-3278-02 v8.2.u190", 0x30001, 0x8000, CRC(d6124cd1) SHA1(f826aee5ec07cf5ac369697d93def0259ad225bb) ) |
| 138 | |
| 139 | ROM_REGION( 0x1000, "chargen", 0 ) |
| 140 | ROM_LOAD( "160-3087 v1.0.u855", 0x0000, 0x1000, CRC(97479528) SHA1(e9e15f1f64b3b6bd139accd51950bae71fdc2193) ) |
| 141 | ROM_END |
| 142 | |
| 143 | /* System Drivers */ |
| 144 | |
| 145 | /* YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY FULLNAME FLAGS */ |
| 146 | COMP( 1983, tek4107a, 0, 0, tek4107a, tek4107a, 0, "Tektronix", "Tektronix 4107A", GAME_NOT_WORKING | GAME_NO_SOUND ) |
| 147 | COMP( 1983, tek4109a, tek4107a, 0, tek4109a, tek4107a, 0, "Tektronix", "Tektronix 4109A", GAME_NOT_WORKING | GAME_NO_SOUND ) |