src/mess/drivers/savia84.c
| r0 | r10293 | |
| 1 | /*************************************************************************** |
| 2 | |
| 3 | Savia 84 |
| 4 | |
| 5 | More data at : |
| 6 | http://www.nostalcomp.cz/pdfka/savia84.pdf |
| 7 | |
| 8 | 05/02/2011 Skeleton driver. |
| 9 | |
| 10 | ****************************************************************************/ |
| 11 | |
| 12 | #include "emu.h" |
| 13 | #include "cpu/z80/z80.h" |
| 14 | #include "machine/i8255a.h" |
| 15 | |
| 16 | class savia84_state : public driver_device |
| 17 | { |
| 18 | public: |
| 19 | savia84_state(running_machine &machine, const driver_device_config_base &config) |
| 20 | : driver_device(machine, config) { } |
| 21 | |
| 22 | }; |
| 23 | |
| 24 | static ADDRESS_MAP_START(savia84_mem, ADDRESS_SPACE_PROGRAM, 8) |
| 25 | ADDRESS_MAP_UNMAP_HIGH |
| 26 | AM_RANGE( 0x0000, 0x03ff ) AM_ROM |
| 27 | ADDRESS_MAP_END |
| 28 | |
| 29 | static ADDRESS_MAP_START( savia84_io , ADDRESS_SPACE_IO, 8) |
| 30 | ADDRESS_MAP_UNMAP_HIGH |
| 31 | ADDRESS_MAP_GLOBAL_MASK(0x03) |
| 32 | AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ppi8255", i8255a_r, i8255a_w) |
| 33 | ADDRESS_MAP_END |
| 34 | |
| 35 | /* Input ports */ |
| 36 | INPUT_PORTS_START( savia84 ) |
| 37 | INPUT_PORTS_END |
| 38 | |
| 39 | |
| 40 | static MACHINE_RESET(savia84) |
| 41 | { |
| 42 | } |
| 43 | |
| 44 | static VIDEO_START( savia84 ) |
| 45 | { |
| 46 | } |
| 47 | |
| 48 | static VIDEO_UPDATE( savia84 ) |
| 49 | { |
| 50 | return 0; |
| 51 | } |
| 52 | |
| 53 | static WRITE8_DEVICE_HANDLER (savia84_8255_porta_w ) |
| 54 | { |
| 55 | } |
| 56 | |
| 57 | static WRITE8_DEVICE_HANDLER (savia84_8255_portb_w ) |
| 58 | { |
| 59 | } |
| 60 | |
| 61 | static WRITE8_DEVICE_HANDLER (savia84_8255_portc_w ) |
| 62 | { |
| 63 | } |
| 64 | |
| 65 | static READ8_DEVICE_HANDLER (savia84_8255_portc_r ) |
| 66 | { |
| 67 | return 0xff; |
| 68 | } |
| 69 | |
| 70 | |
| 71 | I8255A_INTERFACE( savia84_ppi8255_interface ) |
| 72 | { |
| 73 | DEVCB_NULL, |
| 74 | DEVCB_NULL, |
| 75 | DEVCB_HANDLER(savia84_8255_portc_r), |
| 76 | DEVCB_HANDLER(savia84_8255_porta_w), |
| 77 | DEVCB_HANDLER(savia84_8255_portb_w), |
| 78 | DEVCB_HANDLER(savia84_8255_portc_w) |
| 79 | }; |
| 80 | |
| 81 | static MACHINE_CONFIG_START( savia84, savia84_state ) |
| 82 | /* basic machine hardware */ |
| 83 | MCFG_CPU_ADD("maincpu",Z80, XTAL_4MHz / 2) |
| 84 | MCFG_CPU_PROGRAM_MAP(savia84_mem) |
| 85 | MCFG_CPU_IO_MAP(savia84_io) |
| 86 | |
| 87 | MCFG_MACHINE_RESET(savia84) |
| 88 | |
| 89 | /* video hardware */ |
| 90 | MCFG_SCREEN_ADD("screen", RASTER) |
| 91 | MCFG_SCREEN_REFRESH_RATE(50) |
| 92 | MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */ |
| 93 | MCFG_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16) |
| 94 | MCFG_SCREEN_SIZE(640, 480) |
| 95 | MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1) |
| 96 | MCFG_PALETTE_LENGTH(2) |
| 97 | MCFG_PALETTE_INIT(black_and_white) |
| 98 | |
| 99 | MCFG_VIDEO_START(savia84) |
| 100 | MCFG_VIDEO_UPDATE(savia84) |
| 101 | |
| 102 | MCFG_I8255A_ADD( "ppi8255", savia84_ppi8255_interface ) |
| 103 | MACHINE_CONFIG_END |
| 104 | |
| 105 | /* ROM definition */ |
| 106 | ROM_START( savia84 ) |
| 107 | ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASEFF ) |
| 108 | ROM_LOAD("savia84_1kb.bin", 0x0000, 0x0400, CRC(23a5c15e) SHA1(7e769ed8960d8c591a25cfe4effffcca3077c94b)) // 2758 ROM - 1KB |
| 109 | ROM_COPY("maincpu", 0x0000, 0x2000, 0x0400) |
| 110 | ROM_END |
| 111 | |
| 112 | /* Driver */ |
| 113 | |
| 114 | /* YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY FULLNAME FLAGS */ |
| 115 | COMP( 1984, savia84, 0, 0, savia84, savia84, 0, "<unknown>", "Savia 84", GAME_NOT_WORKING | GAME_NO_SOUND) |
| 116 | |