Previous 15994 Revisions Next

r12973 Wednesday 3rd October, 2001 at 03:32:34 UTC by Robbbert
UNIOR - fixed scrolling
[src/mess/drivers]unior.c

src/mess/drivers/unior.c
r12972r12973
44
55        12/05/2009 Skeleton driver.
66
7    Some info obtained from EMU-80.
8    There are no manuals, diagrams, or anything else available afaik.
9    The entire driver is guesswork.
10
711The monitor will only allow certain characters to be typed, thus the
812modifier keys appear to do nothing. There is no need to use the enter
913key; using spacebar and the correct parameters is enough.
r12972r12973
2226M
2327
2428ToDo:
25- Everything
26- Fix scrolling
29- All devices
30- Beeper
31- Cassette
2732
2833****************************************************************************/
2934#define ADDRESS_MAP_MODERN
r12972r12973
4247   DECLARE_WRITE8_MEMBER(unior_4c_w);
4348   DECLARE_READ8_MEMBER(unior_4c_r);
4449   DECLARE_READ8_MEMBER(unior_4d_r);
45   DECLARE_WRITE8_MEMBER(cursor_pos_w);
50   DECLARE_WRITE8_MEMBER(unior_50_w);
51   DECLARE_WRITE8_MEMBER(unior_60_w);
4652   UINT8 *m_p_vram;
4753   UINT8 *m_p_videoram;
4854   UINT8 *m_p_chargen;
r12972r12973
7379   m_p_vram[offset] = data;
7480}
7581
76WRITE8_MEMBER( unior_state::cursor_pos_w )
82WRITE8_MEMBER( unior_state::unior_50_w )
7783{
84   if (data)
85      memcpy(m_p_vram, m_p_vram+80, 24*80);
86}
87
88WRITE8_MEMBER( unior_state::unior_60_w )
89{
7890   static UINT8 ctrl=0;
7991   if (offset)
8092      ctrl = 0; // port 61 - reset ctrl
r12972r12973
88100   }
89101}
90102     
91
92103static ADDRESS_MAP_START( unior_mem, AS_PROGRAM, 8, unior_state )
93104   ADDRESS_MAP_UNMAP_HIGH
94105   AM_RANGE(0x0000, 0xf7af) AM_RAM
r12972r12973
99110static ADDRESS_MAP_START( unior_io, AS_IO, 8, unior_state )
100111   ADDRESS_MAP_UNMAP_HIGH
101112   ADDRESS_MAP_GLOBAL_MASK(0xff)
113   AM_RANGE(0x30, 0x3f) AM_NOP // dma data
102114   AM_RANGE(0x4c, 0x4c) AM_READWRITE(unior_4c_r,unior_4c_w)
103115   AM_RANGE(0x4d, 0x4d) AM_READ(unior_4d_r)
104   AM_RANGE(0x60, 0x61) AM_WRITE(cursor_pos_w)
116   AM_RANGE(0x50, 0x50) AM_WRITE(unior_50_w)
117   AM_RANGE(0x60, 0x61) AM_WRITE(unior_60_w)
105118ADDRESS_MAP_END
106119
107120/* Input ports */

Previous 15994 Revisions Next


© 1998-2018 The MESS Team