Previous 15994 Revisions Next

r6591 Wednesday 9th December, 2009 at 09:01:04 UTC by Miodrag Milanović
[VECTOR4] Hooked terminal
[src/mess/drivers]vector4.c

src/mess/drivers/vector4.c
r6590r6591
88
99#include "driver.h"
1010#include "cpu/z80/z80.h"
11#include "machine/terminal.h"
1112
13static UINT8 received_char = 0;
14
15static WRITE8_HANDLER(vector_terminal_w)
16{
17   const device_config   *devconf = devtag_get_device(space->machine, "terminal");
18   terminal_write(devconf,0,data);
19}
20
21static READ8_HANDLER(vector_terminal_status_r)
22{
23   if (received_char!=0) return 3; // char received
24   return 1; // ready
25}
26
27static READ8_HANDLER(vector_terminal_r)
28{
29   UINT8 retVal = received_char;
30   received_char = 0;
31   return retVal;
32}
33
1234static ADDRESS_MAP_START(vector4_mem, ADDRESS_SPACE_PROGRAM, 8)
1335   ADDRESS_MAP_UNMAP_HIGH
1436   AM_RANGE(0x0000, 0xdfff) AM_RAM
1537   AM_RANGE(0xe000, 0xefff) AM_ROM
1638   AM_RANGE(0xf000, 0xf7ff) AM_RAM
1739   AM_RANGE(0xf800, 0xf8ff) AM_ROM
18   AM_RANGE(0xf900, 0xffff) AM_RAM
40   AM_RANGE(0xfc00, 0xffff) AM_RAM
1941ADDRESS_MAP_END
2042
2143static ADDRESS_MAP_START( vector4_io , ADDRESS_SPACE_IO, 8)
2244   ADDRESS_MAP_UNMAP_HIGH
45   ADDRESS_MAP_GLOBAL_MASK(0xff)
46   AM_RANGE(0x02, 0x02) AM_READWRITE(vector_terminal_r,vector_terminal_w)
47   AM_RANGE(0x03, 0x03) AM_READ(vector_terminal_status_r)
2348ADDRESS_MAP_END
2449
2550/* Input ports */
2651INPUT_PORTS_START( vector4 )
52   PORT_INCLUDE(generic_terminal)
2753INPUT_PORTS_END
2854
2955
3056static MACHINE_RESET(vector4)
3157{   
58   received_char = 0;
3259   cpu_set_reg(cputag_get_cpu(machine, "maincpu"), Z80_PC, 0xe000);
3360}
3461
35static VIDEO_START( vector4 )
62static WRITE8_DEVICE_HANDLER( vector4_kbd_put )
3663{
64   received_char = data;
3765}
3866
39static VIDEO_UPDATE( vector4 )
67static GENERIC_TERMINAL_INTERFACE( vector4_terminal_intf )
4068{
41    return 0;
42}
69   DEVCB_HANDLER(vector4_kbd_put)
70};
4371
72
4473static MACHINE_DRIVER_START( vector4 )
4574    /* basic machine hardware */
4675    MDRV_CPU_ADD("maincpu",Z80, XTAL_4MHz)
r6590r6591
5079    MDRV_MACHINE_RESET(vector4)
5180   
5281    /* video hardware */
53    MDRV_SCREEN_ADD("screen", RASTER)
54    MDRV_SCREEN_REFRESH_RATE(50)
55    MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
56    MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
57    MDRV_SCREEN_SIZE(640, 480)
58    MDRV_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
59    MDRV_PALETTE_LENGTH(2)
60    MDRV_PALETTE_INIT(black_and_white)
61
62    MDRV_VIDEO_START(vector4)
63    MDRV_VIDEO_UPDATE(vector4)
82    MDRV_IMPORT_FROM( generic_terminal )
83   MDRV_GENERIC_TERMINAL_ADD(TERMINAL_TAG,vector4_terminal_intf)
6484MACHINE_DRIVER_END
6585
66static SYSTEM_CONFIG_START(vector4)
67SYSTEM_CONFIG_END
68
6986/* ROM definition */
7087ROM_START( vector4 )
7188    ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASEFF )
72    ROM_LOAD( "vg-em-43.bin", 0xe000, 0x1000, CRC(29a0fcee) SHA1(ca44de527f525b72f78b1c084c39aa6ce21731b5))
73//  ROM_LOAD( "vg40cl_ihl.bin", 0xe000, 0x0400, CRC(dcaf79e6) SHA1(63619ddb12ff51e5862902fb1b33a6630f555ad7))
74//  ROM_LOAD( "vg40ch_ihl.bin", 0xe400, 0x0400, CRC(3ff97d70) SHA1(b401e49aa97ac106c2fd5ee72d89e683ebe34e34))
75//  ROM_LOAD( "vg-zcb50.bin", 0xe000, 0x1000, CRC(22d692ce) SHA1(cbb21b0acc98983bf5febd59ff67615d71596e36))
89   ROM_SYSTEM_BIOS( 0, "v4c", "ver 4.0c" )
90    ROMX_LOAD( "vg40cl_ihl.bin", 0xe000, 0x0400, CRC(dcaf79e6) SHA1(63619ddb12ff51e5862902fb1b33a6630f555ad7), ROM_BIOS(1))   
91   ROMX_LOAD( "vg40ch_ihl.bin", 0xe400, 0x0400, CRC(3ff97d70) SHA1(b401e49aa97ac106c2fd5ee72d89e683ebe34e34), ROM_BIOS(1))
92   ROM_SYSTEM_BIOS( 1, "v43", "ver 4.3" )
93    ROMX_LOAD( "vg-em-43.bin",   0xe000, 0x1000, CRC(29a0fcee) SHA1(ca44de527f525b72f78b1c084c39aa6ce21731b5), ROM_BIOS(2))
94   ROM_SYSTEM_BIOS( 2, "v5", "ver 5.0" )
95   ROMX_LOAD( "vg-zcb50.bin",   0xe000, 0x1000, CRC(22d692ce) SHA1(cbb21b0acc98983bf5febd59ff67615d71596e36), ROM_BIOS(3))
7696    ROM_LOAD( "mfdc.bin", 0xf800, 0x0100, CRC(d82a40d6) SHA1(cd1ef5fb0312cd1640e0853d2442d7d858bc3e3b))
7797ROM_END
7898
7999/* Driver */
80100
81/*    YEAR  NAME    PARENT  COMPAT   MACHINE    INPUT    INIT    CONFIG COMPANY   FULLNAME       FLAGS */
82COMP( ????, vector4,  0,       0,    vector4,    vector4,     0,       vector4,      "Vector Graphics",   "Vector 4",      GAME_NOT_WORKING)
101/*    YEAR  NAME    PARENT  COMPAT   MACHINE    INPUT    INIT    CONFIG    COMPANY               FULLNAME       FLAGS */
102COMP( ????, vector4,  0,       0,    vector4,    vector4,   0,     0,      "Vector Graphics",   "Vector 4",      GAME_NOT_WORKING)
83103

Previous 15994 Revisions Next


© 1998-2018 The MESS Team