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

« back to all changes in this revision

Viewing changes to mess/src/mess/video/aquarius.c

  • 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
 
/***************************************************************************
2
 
 
3
 
  aquarius.c
4
 
 
5
 
  Functions to emulate the video hardware of the aquarius.
6
 
 
7
 
***************************************************************************/
8
 
 
9
 
#include "emu.h"
10
 
#include "includes/aquarius.h"
11
 
 
12
 
 
13
 
 
14
 
static const rgb_t aquarius_colors[] =
15
 
{
16
 
        RGB_BLACK,                                      /* Black */
17
 
        MAKE_RGB(0xff, 0x00, 0x00),     /* Red */
18
 
        MAKE_RGB(0x00, 0xff, 0x00),     /* Green */
19
 
        MAKE_RGB(0xff, 0xff, 0x00),     /* Yellow */
20
 
        MAKE_RGB(0x00, 0x00, 0xff),     /* Blue */
21
 
        MAKE_RGB(0x7f, 0x00, 0x7f),     /* Violet */
22
 
        MAKE_RGB(0x7f, 0xff, 0xff),     /* Light Blue-Green */
23
 
        RGB_WHITE,                                      /* White */
24
 
        MAKE_RGB(0xc0, 0xc0, 0xc0),     /* Light Gray */
25
 
        MAKE_RGB(0x00, 0xff, 0xff),     /* Blue-Green */
26
 
        MAKE_RGB(0xff, 0x00, 0xff),     /* Magenta */
27
 
        MAKE_RGB(0x00, 0x00, 0x7f),     /* Dark Blue */
28
 
        MAKE_RGB(0xff, 0xff, 0x7f),     /* Light Yellow */
29
 
        MAKE_RGB(0x7f, 0xff, 0x7f),     /* Light Green */
30
 
        MAKE_RGB(0xff, 0x7f, 0x00),     /* Orange */
31
 
        MAKE_RGB(0x7f, 0x7f, 0x7f)      /* Dark Gray */
32
 
};
33
 
 
34
 
static const unsigned short aquarius_palette[] =
35
 
{
36
 
    0, 0, 1, 0, 2, 0, 3, 0, 4, 0, 5, 0, 6, 0, 7, 0, 8, 0, 9, 0,10, 0,11, 0,12, 0,13, 0,14, 0,15, 0,
37
 
    0, 1, 1, 1, 2, 1, 3, 1, 4, 1, 5, 1, 6, 1, 7, 1, 8, 1, 9, 1,10, 1,11, 1,12, 1,13, 1,14, 1,15, 1,
38
 
    0, 2, 1, 2, 2, 2, 3, 2, 4, 2, 5, 2, 6, 2, 7, 2, 8, 2, 9, 2,10, 2,11, 2,12, 2,13, 2,14, 2,15, 2,
39
 
    0, 3, 1, 3, 2, 3, 3, 3, 4, 3, 5, 3, 6, 3, 7, 3, 8, 3, 9, 3,10, 3,11, 3,12, 3,13, 3,14, 3,15, 3,
40
 
    0, 4, 1, 4, 2, 4, 3, 4, 4, 4, 5, 4, 6, 4, 7, 4, 8, 4, 9, 4,10, 4,11, 4,12, 4,13, 4,14, 4,15, 4,
41
 
    0, 5, 1, 5, 2, 5, 3, 5, 4, 5, 5, 5, 6, 5, 7, 5, 8, 5, 9, 5,10, 5,11, 5,12, 5,13, 5,14, 5,15, 5,
42
 
    0, 6, 1, 6, 2, 6, 3, 6, 4, 6, 5, 6, 6, 6, 7, 6, 8, 6, 9, 6,10, 6,11, 6,12, 6,13, 6,14, 6,15, 6,
43
 
    0, 7, 1, 7, 2, 7, 3, 7, 4, 7, 5, 7, 6, 7, 7, 7, 8, 7, 9, 7,10, 7,11, 7,12, 7,13, 7,14, 7,15, 7,
44
 
    0, 8, 1, 8, 2, 8, 3, 8, 4, 8, 5, 8, 6, 8, 7, 8, 8, 8, 9, 8,10, 8,11, 8,12, 8,13, 8,14, 8,15, 8,
45
 
    0, 9, 1, 9, 2, 9, 3, 9, 4, 9, 5, 9, 6, 9, 7, 9, 8, 9, 9, 9,10, 9,11, 9,12, 9,13, 9,14, 9,15, 9,
46
 
    0,10, 1,10, 2,10, 3,10, 4,10, 5,10, 6,10, 7,10, 8,10, 9,10,10,10,11,10,12,10,13,10,14,10,15,10,
47
 
    0,11, 1,11, 2,11, 3,11, 4,11, 5,11, 6,11, 7,11, 8,11, 9,11,10,11,11,11,12,11,13,11,14,11,15,11,
48
 
    0,12, 1,12, 2,12, 3,12, 4,12, 5,12, 6,12, 7,12, 8,12, 9,12,10,12,11,12,12,12,13,12,14,12,15,12,
49
 
    0,13, 1,13, 2,13, 3,13, 4,13, 5,13, 6,13, 7,13, 8,13, 9,13,10,13,11,13,12,13,13,13,14,13,15,13,
50
 
    0,14, 1,14, 2,14, 3,14, 4,14, 5,14, 6,14, 7,14, 8,14, 9,14,10,14,11,14,12,14,13,14,14,14,15,14,
51
 
    0,15, 1,15, 2,15, 3,15, 4,15, 5,15, 6,15, 7,15, 8,15, 9,15,10,15,11,15,12,15,13,15,14,15,15,15,
52
 
};
53
 
 
54
 
PALETTE_INIT( aquarius )
55
 
{
56
 
        int i;
57
 
 
58
 
        machine.colortable = colortable_alloc(machine, 16);
59
 
 
60
 
        for (i = 0; i < 16; i++)
61
 
                colortable_palette_set_color(machine.colortable, i, aquarius_colors[i]);
62
 
 
63
 
        for (i = 0; i < 512; i++)
64
 
                colortable_entry_set_value(machine.colortable, i, aquarius_palette[i]);
65
 
}
66
 
 
67
 
WRITE8_HANDLER( aquarius_videoram_w )
68
 
{
69
 
        aquarius_state *state = space->machine().driver_data<aquarius_state>();
70
 
        UINT8 *videoram = state->m_videoram;
71
 
        videoram[offset] = data;
72
 
        tilemap_mark_tile_dirty(state->m_tilemap, offset);
73
 
}
74
 
 
75
 
WRITE8_HANDLER( aquarius_colorram_w )
76
 
{
77
 
        aquarius_state *state = space->machine().driver_data<aquarius_state>();
78
 
        state->m_colorram[offset] = data;
79
 
        tilemap_mark_tile_dirty(state->m_tilemap, offset);
80
 
}
81
 
 
82
 
static TILE_GET_INFO(aquarius_gettileinfo)
83
 
{
84
 
        aquarius_state *state = machine.driver_data<aquarius_state>();
85
 
        UINT8 *videoram = state->m_videoram;
86
 
        int bank = 0;
87
 
        int code = videoram[tile_index];
88
 
        int color = state->m_colorram[tile_index];
89
 
        int flags = 0;
90
 
 
91
 
        SET_TILE_INFO(bank, code, color, flags);
92
 
}
93
 
 
94
 
VIDEO_START( aquarius )
95
 
{
96
 
        aquarius_state *state = machine.driver_data<aquarius_state>();
97
 
        state->m_tilemap = tilemap_create(machine, aquarius_gettileinfo, tilemap_scan_rows, 8, 8, 40, 25);
98
 
}
99
 
 
100
 
SCREEN_UPDATE( aquarius )
101
 
{
102
 
        aquarius_state *state = screen->machine().driver_data<aquarius_state>();
103
 
        tilemap_draw(bitmap, NULL, state->m_tilemap, 0, 0);
104
 
 
105
 
        return 0;
106
 
}