Previous 199869 Revisions Next

r19955 Sunday 30th December, 2012 at 21:56:29 UTC by Wilbert Pol
(MESS) g7400: Let's start displaying some things. (nw)
[src/mess/drivers]odyssey2.c
[src/mess/includes]odyssey2.h
[src/mess/video]ef9341_chargen.h* odyssey2.c

trunk/src/mess/includes/odyssey2.h
r19954r19955
136136   UINT8   m_ef934x_ext_char_ram[1024];
137137   bool   m_g7400;
138138
139   inline UINT16 ef9340_get_c_addr();
139   inline UINT16 ef9340_get_c_addr(UINT8 x, UINT8 y);
140   inline UINT16 ef9340_get_c_addr() { return ef9340_get_c_addr( m_ef9340.X, m_ef9340.Y ); };
140141   inline void ef9340_inc_c();
141142   // Calculate the external chargen address for a character and slice
142143   inline UINT16 external_chargen_address(UINT8 b, UINT8 slice);
143144
144145   void i824x_scanline(int vpos);
145   void er9340_scanline(int vpos);
146   void ef9340_scanline(int vpos);
146147
147148   /* timers */
148149   static const device_timer_id TIMER_LINE = 0;
trunk/src/mess/video/odyssey2.c
r19954r19955
1212
1313#include "emu.h"
1414#include "includes/odyssey2.h"
15#include "video/ef9341_chargen.h"
1516
1617
1718#define COLLISION_SPRITE_0         0x01
r19954r19955
6061   0x50,0xAE,0xFF,   /* Blue */
6162   0xa9,0x80,0xff,   /* Violet */
6263   0x82,0xfb,0xdb,   /* Lt Grey */
63   0xff,0xff,0xff    /* White */
64   0xff,0xff,0xff,   /* White */
65
66   /* EF9340/EF9341 colors */
67   0x00, 0x00, 0x00,
68   0x00, 0x00, 0xFF,
69   0x00, 0xFF, 0x00,
70   0x00, 0xFF, 0xFF,
71   0xFF, 0x00, 0x00,
72   0xFF, 0x00, 0xFF,
73   0xFF, 0xFF, 0x00,
74   0xFF, 0xFF, 0xFF
6475};
6576
6677static const UINT8 o2_shape[0x40][8]={
r19954r19955
134145{
135146   int i;
136147
137   for ( i = 0; i < 24; i++ )
148   for ( i = 0; i < 32; i++ )
138149   {
139150      palette_set_color_rgb( machine(), i, odyssey2_colors[i*3], odyssey2_colors[i*3+1], odyssey2_colors[i*3+2] );
140151   }
r19954r19955
554565      case TIMER_LINE:
555566         // handle i824x line timer
556567         i824x_scanline(vpos);
568         if ( m_g7400 )
569         {
570            ef9340_scanline(vpos);
571         }
557572         break;
558573
559574      case TIMER_HBLANK:
r19954r19955
708723    Thomson EF9340/EF9341 extra chips in the g7400
709724 */
710725
711UINT16 odyssey2_state::ef9340_get_c_addr()
726UINT16 odyssey2_state::ef9340_get_c_addr(UINT8 x, UINT8 y)
712727{
713   if ( ( m_ef9340.Y & 0x0C ) == 0x0C )
728   if ( ( y & 0x0c ) == 0x0c )
714729   {
715      return 0x318 | ( ( m_ef9340.X & 0x38 ) << 2 ) | ( m_ef9340.X & 0x07 );
730      return 0x318 | ( ( x & 0x38 ) << 2 ) | ( x & 0x07 );
716731   }
717   if ( m_ef9340.X & 0x20 )
732   if ( x & 0x20 )
718733   {
719      return 0x300 | ( ( m_ef9340.Y & 0x07 ) << 5 ) | ( m_ef9340.Y & 0x18 ) | ( m_ef9340.X & 0x07 );
734      return 0x380 | ( ( y & 0x07 ) << 5 ) | ( y & 0x18 ) | ( x & 0x07 );
720735   }
721   return ( m_ef9340.Y << 5 ) | m_ef9340.X;
736   return y << 5 | x;
722737}
723738
724739
r19954r19955
849864   }
850865}
851866
867
852868UINT8 odyssey2_state::ef9341_r( UINT8 command, UINT8 b )
853869{
854870   UINT8   data = 0xFF;
r19954r19955
880896}
881897
882898
883void odyssey2_state::er9340_scanline(int vpos)
899void odyssey2_state::ef9340_scanline(int vpos)
884900{
885901   if ( vpos < m_start_vpos )
886902   {
r19954r19955
889905
890906   if ( vpos < m_start_vblank )
891907   {
908      int y = vpos - m_start_vpos;
909      int y_row, slice;
910
911      if ( y < 10 )
912      {
913         // Displaying service row
914         y_row = 31;
915         slice = y;
916      }
917      else
918      {
919         // Displaying regular row
920         y_row = (y - 10) / 10;
921         slice = (y - 10) % 10;
922      }
923      for ( int x = 0; x < 40; x++ )
924      {
925         UINT16 addr = ef9340_get_c_addr( x, y_row );
926         UINT8 a = m_ef934x_ram_a[addr];
927         UINT8 b = m_ef934x_ram_b[addr];
928         UINT8 fg = 24;
929         UINT8 bg = 24;
930         UINT8 char_data = 0x00;
931
932         if ( a & 0x80 )
933         {
934            // Graphics
935         }
936         else
937         {
938            // Alphannumeric
939            if ( b & 0x80 )
940            {
941               // Special (DEL or Extension)
942            }
943            else
944            {
945               // Normal
946               char_data = ef9341_char_set[0][b & 0x7f][slice];
947               fg = 24 + ( a & 0x07 );
948            }
949         }
950
951         for ( int i = 0; i < 8; i++ )
952         {
953            m_tmp_bitmap.pix16(vpos, I824X_START_ACTIVE_SCAN*2 + x*8 + i ) = (char_data & 0x80) ? fg : bg;
954            char_data <<= 1;
955         }
956      }
892957   }
893958}
894959
trunk/src/mess/video/ef9341_chargen.h
r0r19955
1static const UINT8 ef9341_char_set[2][128][10] = {
2   // Alphanumeric character set (128 characters)
3   {
4      { 0x00,0x38,0x44,0x40,0x20,0x10,0x00,0x10,0x00,0x00 },
5      { 0x00,0x10,0x28,0x00,0x38,0x44,0x7c,0x44,0x00,0x00 },
6      { 0x00,0x08,0x10,0x3c,0x20,0x30,0x20,0x3c,0x00,0x00 },
7      { 0x00,0x08,0x14,0x10,0x38,0x10,0x24,0x3c,0x00,0x00 },
8      { 0x00,0x10,0x38,0x50,0x38,0x14,0x54,0x38,0x10,0x00 },
9      { 0x00,0x38,0x44,0x40,0x40,0x40,0x44,0x38,0x10,0x20 },
10      { 0x00,0x28,0x28,0x7c,0x28,0x7c,0x28,0x28,0x00,0x00 },
11      { 0x00,0x20,0x18,0x00,0x38,0x44,0x7c,0x44,0x00,0x00 },
12      { 0x00,0x20,0x18,0x00,0x44,0x44,0x44,0x38,0x00,0x00 },
13      { 0x00,0x10,0x08,0x3c,0x20,0x30,0x20,0x3c,0x00,0x00 },
14      { 0x00,0x3c,0x50,0x50,0x58,0x50,0x50,0x3c,0x00,0x00 },
15      { 0x00,0x08,0x14,0x3c,0x20,0x30,0x20,0x3c,0x00,0x00 },
16      { 0x00,0x00,0x10,0x20,0x7f,0x20,0x10,0x00,0x00,0x00 },
17      { 0x00,0x10,0x38,0x54,0x10,0x10,0x10,0x10,0x10,0x10 },
18      { 0x00,0x00,0x08,0x04,0xfe,0x04,0x08,0x00,0x00,0x00 },
19      { 0x10,0x10,0x10,0x10,0x10,0x10,0x54,0x38,0x10,0x00 },
20      { 0x00,0x18,0x24,0x18,0x00,0x00,0x00,0x00,0x00,0x00 },
21      { 0x00,0x10,0x10,0x7c,0x10,0x10,0x00,0x7c,0x00,0x00 },
22      { 0x00,0x08,0x10,0x38,0x44,0x7c,0x40,0x38,0x00,0x00 },
23      { 0x00,0x28,0x00,0x38,0x44,0x7c,0x40,0x38,0x00,0x00 },
24      { 0x00,0x28,0x00,0x30,0x10,0x10,0x10,0x38,0x00,0x00 },
25      { 0x00,0x00,0x00,0x38,0x40,0x40,0x40,0x38,0x10,0x20 },
26      { 0x00,0x10,0x28,0x00,0x44,0x44,0x4c,0x34,0x00,0x00 },
27      { 0x00,0x20,0x10,0x34,0x4c,0x44,0x4c,0x34,0x00,0x00 },
28      { 0x00,0x00,0x10,0x00,0x7c,0x00,0x10,0x00,0x00,0x00 },
29      { 0x00,0x20,0x10,0x38,0x44,0x7c,0x40,0x38,0x00,0x00 },
30      { 0x00,0x00,0x00,0x3c,0x52,0x5e,0x50,0x3e,0x00,0x00 },
31      { 0x00,0x10,0x28,0x38,0x44,0x7c,0x40,0x38,0x00,0x00 },
32      { 0x00,0x40,0xc0,0x40,0x44,0x4c,0x14,0x3e,0x04,0x00 },
33      { 0x00,0x40,0xc0,0x40,0x4c,0x52,0x04,0x08,0x1e,0x00 },
34      { 0x00,0xe0,0x20,0x40,0x24,0xcc,0x14,0x3e,0x04,0x00 },
35      { 0x00,0x10,0x28,0x00,0x38,0x44,0x44,0x38,0x00,0x00 },
36      { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 },
37      { 0x00,0x10,0x10,0x10,0x10,0x10,0x00,0x10,0x00,0x00 },
38      { 0x00,0x28,0x28,0x28,0x00,0x00,0x00,0x00,0x00,0x00 },
39      { 0x00,0x28,0x00,0x3c,0x20,0x30,0x20,0x3c,0x00,0x00 },
40      { 0x00,0x10,0x28,0x34,0x4c,0x44,0x4c,0x34,0x00,0x00 },
41      { 0x00,0x60,0x64,0x08,0x10,0x20,0x4c,0x0c,0x00,0x00 },
42      { 0x00,0x20,0x50,0x50,0x20,0x54,0x48,0x34,0x00,0x00 },
43      { 0x00,0x10,0x10,0x20,0x00,0x00,0x00,0x00,0x00,0x00 },
44      { 0x00,0x08,0x10,0x20,0x20,0x20,0x10,0x08,0x00,0x00 },
45      { 0x00,0x20,0x10,0x08,0x08,0x08,0x10,0x20,0x00,0x00 },
46      { 0x00,0x10,0x54,0x38,0x10,0x38,0x54,0x10,0x00,0x00 },
47      { 0x00,0x00,0x10,0x10,0x7c,0x10,0x10,0x00,0x00,0x00 },
48      { 0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x40,0x00 },
49      { 0x00,0x00,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,0x00 },
50      { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x00 },
51      { 0x01,0x02,0x02,0x04,0x08,0x10,0x20,0x20,0x40,0x80 },
52      { 0x00,0x10,0x28,0x44,0x44,0x44,0x28,0x10,0x00,0x00 },
53      { 0x00,0x10,0x30,0x10,0x10,0x10,0x10,0x10,0x00,0x00 },
54      { 0x00,0x38,0x44,0x04,0x18,0x20,0x40,0x7c,0x00,0x00 },
55      { 0x00,0x7c,0x04,0x08,0x18,0x04,0x44,0x38,0x00,0x00 },
56      { 0x00,0x08,0x18,0x28,0x48,0x7c,0x08,0x08,0x00,0x00 },
57      { 0x00,0x7c,0x40,0x78,0x04,0x04,0x44,0x38,0x00,0x00 },
58      { 0x00,0x18,0x20,0x40,0x78,0x44,0x44,0x38,0x00,0x00 },
59      { 0x00,0x7c,0x04,0x08,0x10,0x20,0x20,0x20,0x00,0x00 },
60      { 0x00,0x38,0x44,0x44,0x38,0x44,0x44,0x38,0x00,0x00 },
61      { 0x00,0x38,0x44,0x44,0x3c,0x04,0x04,0x38,0x00,0x00 },
62      { 0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00 },
63      { 0x00,0x00,0x00,0x20,0x00,0x00,0x20,0x20,0x40,0x00 },
64      { 0x00,0x04,0x08,0x10,0x20,0x10,0x08,0x04,0x00,0x00 },
65      { 0x00,0x00,0x00,0x7c,0x00,0x7c,0x00,0x00,0x00,0x00 },
66      { 0x00,0x40,0x20,0x10,0x08,0x10,0x20,0x40,0x00,0x00 },
67      { 0x00,0x38,0x44,0x04,0x08,0x10,0x00,0x10,0x00,0x00 },
68      { 0x00,0x38,0x44,0x5c,0x54,0x5c,0x40,0x38,0x00,0x00 },
69      { 0x00,0x38,0x44,0x44,0x44,0x7c,0x44,0x44,0x00,0x00 },
70      { 0x00,0x78,0x44,0x44,0x78,0x44,0x44,0x78,0x00,0x00 },
71      { 0x00,0x38,0x44,0x40,0x40,0x40,0x44,0x38,0x00,0x00 },
72      { 0x00,0x78,0x44,0x44,0x44,0x44,0x44,0x78,0x00,0x00 },
73      { 0x00,0x7c,0x40,0x40,0x70,0x40,0x40,0x7c,0x00,0x00 },
74      { 0x00,0x7c,0x40,0x40,0x70,0x40,0x40,0x40,0x00,0x00 },
75      { 0x00,0x38,0x44,0x40,0x40,0x4c,0x44,0x3c,0x00,0x00 },
76      { 0x00,0x44,0x44,0x44,0x7c,0x44,0x44,0x44,0x00,0x00 },
77      { 0x00,0x38,0x10,0x10,0x10,0x10,0x10,0x38,0x00,0x00 },
78      { 0x00,0x1c,0x08,0x08,0x08,0x08,0x48,0x30,0x00,0x00 },
79      { 0x00,0x44,0x48,0x50,0x60,0x50,0x48,0x44,0x00,0x00 },
80      { 0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x7c,0x00,0x00 },
81      { 0x00,0x44,0x6c,0x54,0x44,0x44,0x44,0x44,0x00,0x00 },
82      { 0x00,0x44,0x44,0x64,0x54,0x4c,0x44,0x44,0x00,0x00 },
83      { 0x00,0x38,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00 },
84      { 0x00,0x78,0x44,0x44,0x78,0x40,0x40,0x40,0x00,0x00 },
85      { 0x00,0x38,0x44,0x44,0x44,0x54,0x48,0x34,0x00,0x00 },
86      { 0x00,0x78,0x44,0x44,0x78,0x50,0x48,0x44,0x00,0x00 },
87      { 0x00,0x38,0x44,0x40,0x38,0x04,0x44,0x38,0x00,0x00 },
88      { 0x00,0x7c,0x10,0x10,0x10,0x10,0x10,0x10,0x00,0x00 },
89      { 0x00,0x44,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00 },
90      { 0x00,0x44,0x44,0x44,0x28,0x28,0x10,0x10,0x00,0x00 },
91      { 0x00,0x44,0x44,0x44,0x54,0x54,0x54,0x28,0x00,0x00 },
92      { 0x00,0x44,0x44,0x28,0x10,0x28,0x44,0x44,0x00,0x00 },
93      { 0x00,0x44,0x44,0x28,0x10,0x10,0x10,0x10,0x00,0x00 },
94      { 0x00,0x7c,0x04,0x08,0x10,0x20,0x40,0x7c,0x00,0x00 },
95      { 0x00,0x1c,0x10,0x10,0x10,0x10,0x10,0x1c,0x00,0x00 },
96      { 0x80,0x40,0x40,0x20,0x10,0x08,0x04,0x04,0x02,0x01 },
97      { 0x00,0x38,0x08,0x08,0x08,0x08,0x08,0x38,0x00,0x00 },
98      { 0x00,0x10,0x28,0x00,0x30,0x10,0x10,0x38,0x00,0x00 },
99      { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff },
100      { 0x00,0x00,0x00,0x00,0xff,0x00,0x00,0x00,0x00,0x00 },
101      { 0x00,0x00,0x00,0x34,0x4c,0x44,0x4c,0x34,0x00,0x00 },
102      { 0x00,0x40,0x40,0x78,0x44,0x44,0x44,0x78,0x00,0x00 },
103      { 0x00,0x00,0x00,0x38,0x40,0x40,0x40,0x38,0x00,0x00 },
104      { 0x00,0x04,0x04,0x3c,0x44,0x44,0x44,0x3c,0x00,0x00 },
105      { 0x00,0x00,0x00,0x38,0x44,0x7c,0x40,0x38,0x00,0x00 },
106      { 0x00,0x18,0x24,0x20,0x70,0x20,0x20,0x20,0x00,0x00 },
107      { 0x00,0x00,0x00,0x3c,0x44,0x44,0x3c,0x04,0x24,0x18 },
108      { 0x00,0x40,0x40,0x58,0x64,0x44,0x44,0x44,0x00,0x00 },
109      { 0x00,0x10,0x00,0x30,0x10,0x10,0x10,0x38,0x00,0x00 },
110      { 0x00,0x08,0x00,0x18,0x08,0x08,0x08,0x08,0x48,0x30 },
111      { 0x00,0x20,0x20,0x24,0x28,0x30,0x28,0x24,0x00,0x00 },
112      { 0x00,0x30,0x10,0x10,0x10,0x10,0x10,0x38,0x00,0x00 },
113      { 0x00,0x00,0x00,0x68,0x54,0x54,0x54,0x54,0x00,0x00 },
114      { 0x00,0x00,0x00,0x58,0x64,0x44,0x44,0x44,0x00,0x00 },
115      { 0x00,0x00,0x00,0x38,0x44,0x44,0x44,0x38,0x00,0x00 },
116      { 0x00,0x00,0x00,0x78,0x44,0x44,0x44,0x78,0x40,0x40 },
117      { 0x00,0x00,0x00,0x3c,0x44,0x44,0x44,0x3c,0x04,0x04 },
118      { 0x00,0x00,0x00,0x58,0x64,0x40,0x40,0x40,0x00,0x00 },
119      { 0x00,0x00,0x00,0x38,0x40,0x38,0x04,0x78,0x00,0x00 },
120      { 0x00,0x20,0x20,0x38,0x20,0x20,0x20,0x18,0x00,0x00 },
121      { 0x00,0x00,0x00,0x44,0x44,0x44,0x4c,0x34,0x00,0x00 },
122      { 0x00,0x00,0x00,0x44,0x44,0x28,0x28,0x10,0x00,0x00 },
123      { 0x00,0x00,0x00,0x44,0x44,0x54,0x54,0x28,0x00,0x00 },
124      { 0x00,0x00,0x00,0x44,0x28,0x10,0x28,0x44,0x00,0x00 },
125      { 0x00,0x00,0x00,0x44,0x44,0x4c,0x34,0x04,0x44,0x38 },
126      { 0x00,0x00,0x00,0x7c,0x08,0x10,0x20,0x7c,0x00,0x00 },
127      { 0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80 },
128      { 0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10 },
129      { 0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01 },
130      { 0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 },
131      { 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff }
132   },
133
134   {
135      // Separated semi-graphic character set (64 characters)
136      { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 },
137      { 0x70,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 },
138      { 0x07,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 },
139      { 0x77,0x77,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 },
140      { 0x00,0x00,0x00,0x70,0x70,0x70,0x00,0x00,0x00,0x00 },
141      { 0x70,0x70,0x00,0x70,0x70,0x70,0x00,0x00,0x00,0x00 },
142      { 0x07,0x07,0x00,0x70,0x70,0x70,0x00,0x00,0x00,0x00 },
143      { 0x77,0x77,0x00,0x70,0x70,0x70,0x00,0x00,0x00,0x00 },
144      { 0x00,0x00,0x00,0x07,0x07,0x07,0x00,0x00,0x00,0x00 },
145      { 0x70,0x70,0x00,0x07,0x07,0x07,0x00,0x00,0x00,0x00 },
146      { 0x07,0x07,0x00,0x07,0x07,0x07,0x00,0x00,0x00,0x00 },
147      { 0x77,0x77,0x00,0x07,0x07,0x07,0x00,0x00,0x00,0x00 },
148      { 0x00,0x00,0x00,0x77,0x77,0x77,0x00,0x00,0x00,0x00 },
149      { 0x70,0x70,0x00,0x77,0x77,0x77,0x00,0x00,0x00,0x00 },
150      { 0x07,0x07,0x00,0x77,0x77,0x77,0x00,0x00,0x00,0x00 },
151      { 0x77,0x77,0x00,0x77,0x77,0x77,0x00,0x00,0x00,0x00 },
152      { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x70,0x00 },
153      { 0x70,0x70,0x00,0x00,0x00,0x00,0x00,0x70,0x70,0x00 },
154      { 0x07,0x07,0x00,0x00,0x00,0x00,0x00,0x70,0x70,0x00 },
155      { 0x77,0x77,0x00,0x00,0x00,0x00,0x00,0x70,0x70,0x00 },
156      { 0x00,0x00,0x00,0x70,0x70,0x70,0x00,0x70,0x70,0x00 },
157      { 0x70,0x70,0x00,0x70,0x70,0x70,0x00,0x70,0x70,0x00 },
158      { 0x07,0x07,0x00,0x70,0x70,0x70,0x00,0x70,0x70,0x00 },
159      { 0x77,0x77,0x00,0x70,0x70,0x70,0x00,0x70,0x70,0x00 },
160      { 0x00,0x00,0x00,0x07,0x07,0x07,0x00,0x70,0x70,0x00 },
161      { 0x70,0x70,0x00,0x07,0x07,0x07,0x00,0x70,0x70,0x00 },
162      { 0x07,0x07,0x00,0x07,0x07,0x07,0x00,0x70,0x70,0x00 },
163      { 0x77,0x77,0x00,0x07,0x07,0x07,0x00,0x70,0x70,0x00 },
164      { 0x00,0x00,0x00,0x77,0x77,0x77,0x00,0x70,0x70,0x00 },
165      { 0x70,0x70,0x00,0x77,0x77,0x77,0x00,0x70,0x70,0x00 },
166      { 0x07,0x07,0x00,0x77,0x77,0x77,0x00,0x70,0x70,0x00 },
167      { 0x77,0x77,0x00,0x77,0x77,0x77,0x00,0x70,0x70,0x00 },
168      { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x07,0x00 },
169      { 0x70,0x70,0x00,0x00,0x00,0x00,0x00,0x07,0x07,0x00 },
170      { 0x07,0x07,0x00,0x00,0x00,0x00,0x00,0x07,0x07,0x00 },
171      { 0x77,0x77,0x00,0x00,0x00,0x00,0x00,0x07,0x07,0x00 },
172      { 0x00,0x00,0x00,0x70,0x70,0x70,0x00,0x07,0x07,0x00 },
173      { 0x70,0x70,0x00,0x70,0x70,0x70,0x00,0x07,0x07,0x00 },
174      { 0x07,0x07,0x00,0x70,0x70,0x70,0x00,0x07,0x07,0x00 },
175      { 0x77,0x77,0x00,0x70,0x70,0x70,0x00,0x07,0x07,0x00 },
176      { 0x00,0x00,0x00,0x07,0x07,0x07,0x00,0x07,0x07,0x00 },
177      { 0x70,0x70,0x00,0x07,0x07,0x07,0x00,0x07,0x07,0x00 },
178      { 0x07,0x07,0x00,0x07,0x07,0x07,0x00,0x07,0x07,0x00 },
179      { 0x77,0x77,0x00,0x07,0x07,0x07,0x00,0x07,0x07,0x00 },
180      { 0x00,0x00,0x00,0x77,0x77,0x77,0x00,0x07,0x07,0x00 },
181      { 0x70,0x70,0x00,0x77,0x77,0x77,0x00,0x07,0x07,0x00 },
182      { 0x07,0x07,0x00,0x77,0x77,0x77,0x00,0x07,0x07,0x00 },
183      { 0x77,0x77,0x00,0x77,0x77,0x77,0x00,0x07,0x07,0x00 },
184      { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x77,0x77,0x00 },
185      { 0x70,0x70,0x00,0x00,0x00,0x00,0x00,0x77,0x77,0x00 },
186      { 0x07,0x07,0x00,0x00,0x00,0x00,0x00,0x77,0x77,0x00 },
187      { 0x77,0x77,0x00,0x00,0x00,0x00,0x00,0x77,0x77,0x00 },
188      { 0x00,0x00,0x00,0x70,0x70,0x70,0x00,0x77,0x77,0x00 },
189      { 0x70,0x70,0x00,0x70,0x70,0x70,0x00,0x77,0x77,0x00 },
190      { 0x07,0x07,0x00,0x70,0x70,0x70,0x00,0x77,0x77,0x00 },
191      { 0x77,0x77,0x00,0x70,0x70,0x70,0x00,0x77,0x77,0x00 },
192      { 0x00,0x00,0x00,0x07,0x07,0x07,0x00,0x77,0x77,0x00 },
193      { 0x70,0x70,0x00,0x07,0x07,0x07,0x00,0x77,0x77,0x00 },
194      { 0x07,0x07,0x00,0x07,0x07,0x07,0x00,0x77,0x77,0x00 },
195      { 0x77,0x77,0x00,0x07,0x07,0x07,0x00,0x77,0x77,0x00 },
196      { 0x00,0x00,0x00,0x77,0x77,0x77,0x00,0x77,0x77,0x00 },
197      { 0x70,0x70,0x00,0x77,0x77,0x77,0x00,0x77,0x77,0x00 },
198      { 0x07,0x07,0x00,0x77,0x77,0x77,0x00,0x77,0x77,0x00 },
199      { 0x77,0x77,0x00,0x77,0x77,0x77,0x00,0x77,0x77,0x00 },
200
201      // Mosaic semi-graphic character set (64 characters)
202      { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 },
203      { 0xf0,0xf0,0xf0,0x00,0x00,0x00,0x00,0x00,0x00,0x00 },
204      { 0x0f,0x0f,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00 },
205      { 0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00 },
206      { 0x00,0x00,0x00,0xf0,0xf0,0xf0,0xf0,0x00,0x00,0x00 },
207      { 0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0x00,0x00,0x00 },
208      { 0x0f,0x0f,0x0f,0xf0,0xf0,0xf0,0xf0,0x00,0x00,0x00 },
209      { 0xff,0xff,0xff,0xf0,0xf0,0xf0,0xf0,0x00,0x00,0x00 },
210      { 0x00,0x00,0x00,0x0f,0x0f,0x0f,0x0f,0x00,0x00,0x00 },
211      { 0xf0,0xf0,0xf0,0x0f,0x0f,0x0f,0x0f,0x00,0x00,0x00 },
212      { 0x0f,0x0f,0x0f,0x0f,0x0f,0x0f,0x0f,0x00,0x00,0x00 },
213      { 0xff,0xff,0xff,0x0f,0x0f,0x0f,0x0f,0x00,0x00,0x00 },
214      { 0x00,0x00,0x00,0xff,0xff,0xff,0xff,0x00,0x00,0x00 },
215      { 0xf0,0xf0,0xf0,0xff,0xff,0xff,0xff,0x00,0x00,0x00 },
216      { 0x0f,0x0f,0x0f,0xff,0xff,0xff,0xff,0x00,0x00,0x00 },
217      { 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00 },
218      { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xf0,0xf0 },
219      { 0xf0,0xf0,0xf0,0x00,0x00,0x00,0x00,0xf0,0xf0,0xf0 },
220      { 0x0f,0x0f,0x0f,0x00,0x00,0x00,0x00,0xf0,0xf0,0xf0 },
221      { 0xff,0xff,0xff,0x00,0x00,0x00,0x00,0xf0,0xf0,0xf0 },
222      { 0x00,0x00,0x00,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0 },
223      { 0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0 },
224      { 0x0f,0x0f,0x0f,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0 },
225      { 0xff,0xff,0xff,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0 },
226      { 0x00,0x00,0x00,0x0f,0x0f,0x0f,0x0f,0xf0,0xf0,0xf0 },
227      { 0xf0,0xf0,0xf0,0x0f,0x0f,0x0f,0x0f,0xf0,0xf0,0xf0 },
228      { 0x0f,0x0f,0x0f,0x0f,0x0f,0x0f,0x0f,0xf0,0xf0,0xf0 },
229      { 0xff,0xff,0xff,0x0f,0x0f,0x0f,0x0f,0xf0,0xf0,0xf0 },
230      { 0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xf0,0xf0,0xf0 },
231      { 0xf0,0xf0,0xf0,0xff,0xff,0xff,0xff,0xf0,0xf0,0xf0 },
232      { 0x0f,0x0f,0x0f,0xff,0xff,0xff,0xff,0xf0,0xf0,0xf0 },
233      { 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf0,0xf0,0xf0 },
234      { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0f,0x0f,0x0f },
235      { 0xf0,0xf0,0xf0,0x00,0x00,0x00,0x00,0x0f,0x0f,0x0f },
236      { 0x0f,0x0f,0x0f,0x00,0x00,0x00,0x00,0x0f,0x0f,0x0f },
237      { 0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x0f,0x0f,0x0f },
238      { 0x00,0x00,0x00,0xf0,0xf0,0xf0,0xf0,0x0f,0x0f,0x0f },
239      { 0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0x0f,0x0f,0x0f },
240      { 0x0f,0x0f,0x0f,0xf0,0xf0,0xf0,0xf0,0x0f,0x0f,0x0f },
241      { 0xff,0xff,0xff,0xf0,0xf0,0xf0,0xf0,0x0f,0x0f,0x0f },
242      { 0x00,0x00,0x00,0x0f,0x0f,0x0f,0x0f,0x0f,0x0f,0x0f },
243      { 0xf0,0xf0,0xf0,0x0f,0x0f,0x0f,0x0f,0x0f,0x0f,0x0f },
244      { 0x0f,0x0f,0x0f,0x0f,0x0f,0x0f,0x0f,0x0f,0x0f,0x0f },
245      { 0xff,0xff,0xff,0x0f,0x0f,0x0f,0x0f,0x0f,0x0f,0x0f },
246      { 0x00,0x00,0x00,0xff,0xff,0xff,0xff,0x0f,0x0f,0x0f },
247      { 0xf0,0xf0,0xf0,0xff,0xff,0xff,0xff,0x0f,0x0f,0x0f },
248      { 0x0f,0x0f,0x0f,0xff,0xff,0xff,0xff,0x0f,0x0f,0x0f },
249      { 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x0f,0x0f },
250      { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff },
251      { 0xf0,0xf0,0xf0,0x00,0x00,0x00,0x00,0xff,0xff,0xff },
252      { 0x0f,0x0f,0x0f,0x00,0x00,0x00,0x00,0xff,0xff,0xff },
253      { 0xff,0xff,0xff,0x00,0x00,0x00,0x00,0xff,0xff,0xff },
254      { 0x00,0x00,0x00,0xf0,0xf0,0xf0,0xf0,0xff,0xff,0xff },
255      { 0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0xf0,0xff,0xff,0xff },
256      { 0x0f,0x0f,0x0f,0xf0,0xf0,0xf0,0xf0,0xff,0xff,0xff },
257      { 0xff,0xff,0xff,0xf0,0xf0,0xf0,0xf0,0xff,0xff,0xff },
258      { 0x00,0x00,0x00,0x0f,0x0f,0x0f,0x0f,0xff,0xff,0xff },
259      { 0xf0,0xf0,0xf0,0x0f,0x0f,0x0f,0x0f,0xff,0xff,0xff },
260      { 0x0f,0x0f,0x0f,0x0f,0x0f,0x0f,0x0f,0xff,0xff,0xff },
261      { 0xff,0xff,0xff,0x0f,0x0f,0x0f,0x0f,0xff,0xff,0xff },
262      { 0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff },
263      { 0xf0,0xf0,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff },
264      { 0x0f,0x0f,0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff },
265      { 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff }
266   }
267};
268
trunk/src/mess/drivers/odyssey2.c
r19954r19955
202202   MCFG_SCREEN_UPDATE_DRIVER(odyssey2_state, screen_update_odyssey2)
203203
204204   MCFG_GFXDECODE( odyssey2 )
205   MCFG_PALETTE_LENGTH(24)
205   MCFG_PALETTE_LENGTH(32)
206206
207207   /* sound hardware */
208208   MCFG_SPEAKER_STANDARD_MONO("mono")
r19954r19955
231231   MCFG_SCREEN_UPDATE_DRIVER(odyssey2_state, screen_update_odyssey2)
232232
233233   MCFG_GFXDECODE( odyssey2 )
234   MCFG_PALETTE_LENGTH(24)
234   MCFG_PALETTE_LENGTH(32)
235235
236236   /* sound hardware */
237237   MCFG_SPEAKER_STANDARD_MONO("mono")
r19954r19955
261261   MCFG_VIDEO_START_OVERRIDE(odyssey2_state,g7400)
262262
263263   MCFG_GFXDECODE( odyssey2 )
264   MCFG_PALETTE_LENGTH(24)
264   MCFG_PALETTE_LENGTH(32)
265265
266266   /* sound hardware */
267267   MCFG_SPEAKER_STANDARD_MONO("mono")

Previous 199869 Revisions Next


© 1997-2024 The MAME Team