src/mess/drivers/czk80.c
| r0 | r8945 | |
| 1 | /*************************************************************************** |
| 2 | |
| 3 | CZK-80 |
| 4 | |
| 5 | 30/08/2010 Skeleton driver |
| 6 | |
| 7 | On main board there are Z80A CPU, Z80A PIO, Z80A DART and Z80A CTC |
| 8 | there is 8K ROM and XTAL 16MHz |
| 9 | FDC board contains Z80A DMA and NEC 765A (XTAL on it is 8MHZ) |
| 10 | Mega board contains 74LS612 and memory chips |
| 11 | |
| 12 | ****************************************************************************/ |
| 13 | |
| 14 | #include "emu.h" |
| 15 | #include "cpu/z80/z80.h" |
| 16 | |
| 17 | static UINT8 *czk80_ram; |
| 18 | |
| 19 | static ADDRESS_MAP_START(czk80_mem, ADDRESS_SPACE_PROGRAM, 8) |
| 20 | ADDRESS_MAP_UNMAP_HIGH |
| 21 | AM_RANGE(0x0000, 0xffff) AM_RAM AM_BASE(&czk80_ram) |
| 22 | ADDRESS_MAP_END |
| 23 | |
| 24 | static ADDRESS_MAP_START( czk80_io, ADDRESS_SPACE_IO, 8 ) |
| 25 | ADDRESS_MAP_GLOBAL_MASK(0xff) |
| 26 | ADDRESS_MAP_END |
| 27 | |
| 28 | /* Input ports */ |
| 29 | INPUT_PORTS_START( czk80 ) |
| 30 | INPUT_PORTS_END |
| 31 | |
| 32 | static MACHINE_RESET(czk80) |
| 33 | { |
| 34 | UINT8* bios = memory_region(machine, "maincpu") + 0xe000; |
| 35 | |
| 36 | memcpy(czk80_ram,bios, 0x2000); |
| 37 | memcpy(czk80_ram+0xe000,bios, 0x2000); |
| 38 | } |
| 39 | |
| 40 | static VIDEO_START( czk80 ) |
| 41 | { |
| 42 | } |
| 43 | |
| 44 | static VIDEO_UPDATE( czk80 ) |
| 45 | { |
| 46 | return 0; |
| 47 | } |
| 48 | |
| 49 | static MACHINE_DRIVER_START( czk80 ) |
| 50 | /* basic machine hardware */ |
| 51 | MDRV_CPU_ADD("maincpu", Z80, XTAL_16MHz / 4) |
| 52 | MDRV_CPU_PROGRAM_MAP(czk80_mem) |
| 53 | MDRV_CPU_IO_MAP(czk80_io) |
| 54 | |
| 55 | MDRV_MACHINE_RESET(czk80) |
| 56 | |
| 57 | /* video hardware */ |
| 58 | MDRV_SCREEN_ADD("screen", RASTER) |
| 59 | MDRV_SCREEN_REFRESH_RATE(60) |
| 60 | MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */ |
| 61 | MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16) |
| 62 | MDRV_SCREEN_SIZE(256, 192) /* border size not accurate */ |
| 63 | MDRV_SCREEN_VISIBLE_AREA(0, 256 - 1, 0, 192 - 1) |
| 64 | |
| 65 | MDRV_PALETTE_LENGTH(2) |
| 66 | MDRV_PALETTE_INIT(black_and_white) |
| 67 | |
| 68 | MDRV_VIDEO_START(czk80) |
| 69 | MDRV_VIDEO_UPDATE(czk80) |
| 70 | MACHINE_DRIVER_END |
| 71 | |
| 72 | |
| 73 | /* ROM definition */ |
| 74 | ROM_START( czk80 ) |
| 75 | ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASEFF ) |
| 76 | ROM_LOAD( "czk80.rom", 0xe000, 0x2000, CRC(7081b7c6) SHA1(13f75b14ea73b252bdfa2384e6eead6e720e49e3)) |
| 77 | ROM_END |
| 78 | |
| 79 | /* Driver */ |
| 80 | |
| 81 | /* YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY FULLNAME FLAGS */ |
| 82 | COMP( 198?, czk80, 0, 0, czk80, czk80, 0, "<unknown>", "CZK-80", GAME_NOT_WORKING | GAME_NO_SOUND) |