~ubuntu-branches/debian/sid/mame/sid

« back to all changes in this revision

Viewing changes to mess/src/mess/includes/mc1000.h

  • Committer: Package Import Robot
  • Author(s): Jordi Mallach, Jordi Mallach, Emmanuel Kasper
  • Date: 2011-12-19 22:56:27 UTC
  • mfrom: (0.1.2)
  • Revision ID: package-import@ubuntu.com-20111219225627-ub5oga1oys4ogqzm
Tags: 0.144-1
[ Jordi Mallach ]
* Fix syntax errors in DEP5 copyright file (lintian).
* Use a versioned copyright Format specification field.
* Update Vcs-* URLs.
* Move transitional packages to the new metapackages section, and make
  them priority extra.
* Remove references to GNU/Linux and MESS sources from copyright.
* Add build variables for s390x.
* Use .xz tarballs as it cuts 4MB for the upstream sources.
* Add nplayers.ini as a patch. Update copyright file to add CC-BY-SA-3.0.

[ Emmanuel Kasper ]
* New upstream release. Closes: #651538.
* Add Free Desktop compliant png icons of various sizes taken from
  the hydroxygen iconset
* Mess is now built from a new source package, to avoid possible source
  incompatibilities between mame and the mess overlay.
* Mame-tools are not built from the mame source package anymore, but
  from the mess source package

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#ifndef __MC1000__
2
 
#define __MC1000__
3
 
 
4
 
#define ADDRESS_MAP_MODERN
5
 
 
6
 
#include "emu.h"
7
 
#include "cpu/z80/z80.h"
8
 
#include "imagedev/cassette.h"
9
 
#include "video/m6847.h"
10
 
#include "sound/ay8910.h"
11
 
#include "machine/ctronics.h"
12
 
#include "machine/rescap.h"
13
 
#include "machine/ram.h"
14
 
 
15
 
#define SCREEN_TAG              "screen"
16
 
#define Z80_TAG                 "u13"
17
 
#define AY8910_TAG              "u21"
18
 
#define MC6845_TAG              "mc6845"
19
 
#define MC6847_TAG              "u19"
20
 
#define CENTRONICS_TAG  "centronics"
21
 
 
22
 
#define MC1000_MC6845_VIDEORAM_SIZE             0x800
23
 
#define MC1000_MC6847_VIDEORAM_SIZE             0x1800
24
 
 
25
 
class mc1000_state : public driver_device
26
 
{
27
 
public:
28
 
        mc1000_state(const machine_config &mconfig, device_type type, const char *tag)
29
 
                : driver_device(mconfig, type, tag),
30
 
                  m_maincpu(*this, Z80_TAG),
31
 
                  m_vdg(*this, MC6847_TAG),
32
 
                  m_crtc(*this, MC6845_TAG),
33
 
                  m_centronics(*this, CENTRONICS_TAG),
34
 
                  m_cassette(*this, CASSETTE_TAG),
35
 
                  m_ram(*this, RAM_TAG)
36
 
        { }
37
 
 
38
 
        required_device<cpu_device> m_maincpu;
39
 
        required_device<device_t> m_vdg;
40
 
        optional_device<device_t> m_crtc;
41
 
        required_device<device_t> m_centronics;
42
 
        required_device<cassette_image_device> m_cassette;
43
 
        required_device<device_t> m_ram;
44
 
 
45
 
        virtual void machine_start();
46
 
        virtual void machine_reset();
47
 
 
48
 
        virtual bool screen_update(screen_device &screen, bitmap_t &bitmap, const rectangle &cliprect);
49
 
 
50
 
        DECLARE_READ8_MEMBER( printer_r );
51
 
        DECLARE_WRITE8_MEMBER( printer_w );
52
 
        DECLARE_WRITE8_MEMBER( mc6845_ctrl_w );
53
 
        DECLARE_WRITE8_MEMBER( mc6847_attr_w );
54
 
        DECLARE_WRITE_LINE_MEMBER( fs_w );
55
 
        DECLARE_WRITE_LINE_MEMBER( hs_w );
56
 
        DECLARE_READ8_MEMBER( videoram_r );
57
 
        DECLARE_WRITE8_MEMBER( keylatch_w );
58
 
        DECLARE_READ8_MEMBER( keydata_r );
59
 
 
60
 
        void bankswitch();
61
 
 
62
 
        /* cpu state */
63
 
        int m_ne555_int;
64
 
 
65
 
        /* memory state */
66
 
        int m_rom0000;
67
 
        int m_mc6845_bank;
68
 
        int m_mc6847_bank;
69
 
 
70
 
        /* keyboard state */
71
 
        int m_keylatch;
72
 
 
73
 
        /* video state */
74
 
        int m_hsync;
75
 
        int m_vsync;
76
 
        UINT8 *m_mc6845_video_ram;
77
 
        UINT8 *m_mc6847_video_ram;
78
 
        UINT8 m_mc6847_attr;
79
 
};
80
 
 
81
 
#endif