Previous 199869 Revisions Next

r17718 Saturday 8th September, 2012 at 10:22:41 UTC by Curt Coder
(MESS) mos7360: Refactored to use an rgb32 bitmap. (nw)
[src/mess/audio]mos7360.c mos7360.h

trunk/src/mess/audio/mos7360.c
r17717r17718
9696   return (int)(d * clock());
9797}
9898
99static const UINT8 PALETTE[] =
99static const rgb_t PALETTE[] =
100100{
101101/* black, white, red, cyan */
102102/* purple, green, blue, yellow */
r17717r17718
104104/* light violett, light green, light blue, light yellow */
105105/* these 16 colors are 8 times here in different luminance (dark..light) */
106106/* taken from digitized tv screenshot */
107  0x06, 0x01, 0x03, 0x2b, 0x2b, 0x2b, 0x67, 0x0e, 0x0f, 0x00, 0x3f, 0x42,
108  0x57, 0x00, 0x6d, 0x00, 0x4e, 0x00, 0x19, 0x1c, 0x94, 0x38, 0x38, 0x00,
109  0x56, 0x20, 0x00, 0x4b, 0x28, 0x00, 0x16, 0x48, 0x00, 0x69, 0x07, 0x2f,
110  0x00, 0x46, 0x26, 0x06, 0x2a, 0x80, 0x2a, 0x14, 0x9b, 0x0b, 0x49, 0x00,
107  MAKE_RGB(0x06, 0x01, 0x03), MAKE_RGB(0x2b, 0x2b, 0x2b), MAKE_RGB(0x67, 0x0e, 0x0f), MAKE_RGB(0x00, 0x3f, 0x42),
108  MAKE_RGB(0x57, 0x00, 0x6d), MAKE_RGB(0x00, 0x4e, 0x00), MAKE_RGB(0x19, 0x1c, 0x94), MAKE_RGB(0x38, 0x38, 0x00),
109  MAKE_RGB(0x56, 0x20, 0x00), MAKE_RGB(0x4b, 0x28, 0x00), MAKE_RGB(0x16, 0x48, 0x00), MAKE_RGB(0x69, 0x07, 0x2f),
110  MAKE_RGB(0x00, 0x46, 0x26), MAKE_RGB(0x06, 0x2a, 0x80), MAKE_RGB(0x2a, 0x14, 0x9b), MAKE_RGB(0x0b, 0x49, 0x00),
111111
112  0x00, 0x03, 0x02, 0x3d, 0x3d, 0x3d, 0x75, 0x1e, 0x20, 0x00, 0x50, 0x4f,
113  0x6a, 0x10, 0x78, 0x04, 0x5c, 0x00, 0x2a, 0x2a, 0xa3, 0x4c, 0x47, 0x00,
114  0x69, 0x2f, 0x00, 0x59, 0x38, 0x00, 0x26, 0x56, 0x00, 0x75, 0x15, 0x41,
115  0x00, 0x58, 0x3d, 0x15, 0x3d, 0x8f, 0x39, 0x22, 0xae, 0x19, 0x59, 0x00,
112  MAKE_RGB(0x00, 0x03, 0x02), MAKE_RGB(0x3d, 0x3d, 0x3d), MAKE_RGB(0x75, 0x1e, 0x20), MAKE_RGB(0x00, 0x50, 0x4f),
113  MAKE_RGB(0x6a, 0x10, 0x78), MAKE_RGB(0x04, 0x5c, 0x00), MAKE_RGB(0x2a, 0x2a, 0xa3), MAKE_RGB(0x4c, 0x47, 0x00),
114  MAKE_RGB(0x69, 0x2f, 0x00), MAKE_RGB(0x59, 0x38, 0x00), MAKE_RGB(0x26, 0x56, 0x00), MAKE_RGB(0x75, 0x15, 0x41),
115  MAKE_RGB(0x00, 0x58, 0x3d), MAKE_RGB(0x15, 0x3d, 0x8f), MAKE_RGB(0x39, 0x22, 0xae), MAKE_RGB(0x19, 0x59, 0x00),
116116
117  0x00, 0x03, 0x04, 0x42, 0x42, 0x42, 0x7b, 0x28, 0x20, 0x02, 0x56, 0x59,
118  0x6f, 0x1a, 0x82, 0x0a, 0x65, 0x09, 0x30, 0x34, 0xa7, 0x50, 0x51, 0x00,
119  0x6e, 0x36, 0x00, 0x65, 0x40, 0x00, 0x2c, 0x5c, 0x00, 0x7d, 0x1e, 0x45,
120  0x01, 0x61, 0x45, 0x1c, 0x45, 0x99, 0x42, 0x2d, 0xad, 0x1d, 0x62, 0x00,
117  MAKE_RGB(0x00, 0x03, 0x04), MAKE_RGB(0x42, 0x42, 0x42), MAKE_RGB(0x7b, 0x28, 0x20), MAKE_RGB(0x02, 0x56, 0x59),
118  MAKE_RGB(0x6f, 0x1a, 0x82), MAKE_RGB(0x0a, 0x65, 0x09), MAKE_RGB(0x30, 0x34, 0xa7), MAKE_RGB(0x50, 0x51, 0x00),
119  MAKE_RGB(0x6e, 0x36, 0x00), MAKE_RGB(0x65, 0x40, 0x00), MAKE_RGB(0x2c, 0x5c, 0x00), MAKE_RGB(0x7d, 0x1e, 0x45),
120  MAKE_RGB(0x01, 0x61, 0x45), MAKE_RGB(0x1c, 0x45, 0x99), MAKE_RGB(0x42, 0x2d, 0xad), MAKE_RGB(0x1d, 0x62, 0x00),
121121
122  0x05, 0x00, 0x02, 0x56, 0x55, 0x5a, 0x90, 0x3c, 0x3b, 0x17, 0x6d, 0x72,
123  0x87, 0x2d, 0x99, 0x1f, 0x7b, 0x15, 0x46, 0x49, 0xc1, 0x66, 0x63, 0x00,
124  0x84, 0x4c, 0x0d, 0x73, 0x55, 0x00, 0x40, 0x72, 0x00, 0x91, 0x33, 0x5e,
125  0x19, 0x74, 0x5c, 0x32, 0x59, 0xae, 0x59, 0x3f, 0xc3, 0x32, 0x76, 0x00,
122  MAKE_RGB(0x05, 0x00, 0x02), MAKE_RGB(0x56, 0x55, 0x5a), MAKE_RGB(0x90, 0x3c, 0x3b), MAKE_RGB(0x17, 0x6d, 0x72),
123  MAKE_RGB(0x87, 0x2d, 0x99), MAKE_RGB(0x1f, 0x7b, 0x15), MAKE_RGB(0x46, 0x49, 0xc1), MAKE_RGB(0x66, 0x63, 0x00),
124  MAKE_RGB(0x84, 0x4c, 0x0d), MAKE_RGB(0x73, 0x55, 0x00), MAKE_RGB(0x40, 0x72, 0x00), MAKE_RGB(0x91, 0x33, 0x5e),
125  MAKE_RGB(0x19, 0x74, 0x5c), MAKE_RGB(0x32, 0x59, 0xae), MAKE_RGB(0x59, 0x3f, 0xc3), MAKE_RGB(0x32, 0x76, 0x00),
126126
127  0x02, 0x01, 0x06, 0x84, 0x7e, 0x85, 0xbb, 0x67, 0x68, 0x45, 0x96, 0x96,
128  0xaf, 0x58, 0xc3, 0x4a, 0xa7, 0x3e, 0x73, 0x73, 0xec, 0x92, 0x8d, 0x11,
129  0xaf, 0x78, 0x32, 0xa1, 0x80, 0x20, 0x6c, 0x9e, 0x12, 0xba, 0x5f, 0x89,
130  0x46, 0x9f, 0x83, 0x61, 0x85, 0xdd, 0x84, 0x6c, 0xef, 0x5d, 0xa3, 0x29,
127  MAKE_RGB(0x02, 0x01, 0x06), MAKE_RGB(0x84, 0x7e, 0x85), MAKE_RGB(0xbb, 0x67, 0x68), MAKE_RGB(0x45, 0x96, 0x96),
128  MAKE_RGB(0xaf, 0x58, 0xc3), MAKE_RGB(0x4a, 0xa7, 0x3e), MAKE_RGB(0x73, 0x73, 0xec), MAKE_RGB(0x92, 0x8d, 0x11),
129  MAKE_RGB(0xaf, 0x78, 0x32), MAKE_RGB(0xa1, 0x80, 0x20), MAKE_RGB(0x6c, 0x9e, 0x12), MAKE_RGB(0xba, 0x5f, 0x89),
130  MAKE_RGB(0x46, 0x9f, 0x83), MAKE_RGB(0x61, 0x85, 0xdd), MAKE_RGB(0x84, 0x6c, 0xef), MAKE_RGB(0x5d, 0xa3, 0x29),
131131
132  0x02, 0x00, 0x0a, 0xb2, 0xac, 0xb3, 0xe9, 0x92, 0x92, 0x6c, 0xc3, 0xc1,
133  0xd9, 0x86, 0xf0, 0x79, 0xd1, 0x76, 0x9d, 0xa1, 0xff, 0xbd, 0xbe, 0x40,
134  0xdc, 0xa2, 0x61, 0xd1, 0xa9, 0x4c, 0x93, 0xc8, 0x3d, 0xe9, 0x8a, 0xb1,
135  0x6f, 0xcd, 0xab, 0x8a, 0xb4, 0xff, 0xb2, 0x9a, 0xff, 0x88, 0xcb, 0x59,
132  MAKE_RGB(0x02, 0x00, 0x0a), MAKE_RGB(0xb2, 0xac, 0xb3), MAKE_RGB(0xe9, 0x92, 0x92), MAKE_RGB(0x6c, 0xc3, 0xc1),
133  MAKE_RGB(0xd9, 0x86, 0xf0), MAKE_RGB(0x79, 0xd1, 0x76), MAKE_RGB(0x9d, 0xa1, 0xff), MAKE_RGB(0xbd, 0xbe, 0x40),
134  MAKE_RGB(0xdc, 0xa2, 0x61), MAKE_RGB(0xd1, 0xa9, 0x4c), MAKE_RGB(0x93, 0xc8, 0x3d), MAKE_RGB(0xe9, 0x8a, 0xb1),
135  MAKE_RGB(0x6f, 0xcd, 0xab), MAKE_RGB(0x8a, 0xb4, 0xff), MAKE_RGB(0xb2, 0x9a, 0xff), MAKE_RGB(0x88, 0xcb, 0x59),
136136
137  0x02, 0x00, 0x0a, 0xc7, 0xca, 0xc9, 0xff, 0xac, 0xac, 0x85, 0xd8, 0xe0,
138  0xf3, 0x9c, 0xff, 0x92, 0xea, 0x8a, 0xb7, 0xba, 0xff, 0xd6, 0xd3, 0x5b,
139  0xf3, 0xbe, 0x79, 0xe6, 0xc5, 0x65, 0xb0, 0xe0, 0x57, 0xff, 0xa4, 0xcf,
140  0x89, 0xe5, 0xc8, 0xa4, 0xca, 0xff, 0xca, 0xb3, 0xff, 0xa2, 0xe5, 0x7a,
137  MAKE_RGB(0x02, 0x00, 0x0a), MAKE_RGB(0xc7, 0xca, 0xc9), MAKE_RGB(0xff, 0xac, 0xac), MAKE_RGB(0x85, 0xd8, 0xe0),
138  MAKE_RGB(0xf3, 0x9c, 0xff), MAKE_RGB(0x92, 0xea, 0x8a), MAKE_RGB(0xb7, 0xba, 0xff), MAKE_RGB(0xd6, 0xd3, 0x5b),
139  MAKE_RGB(0xf3, 0xbe, 0x79), MAKE_RGB(0xe6, 0xc5, 0x65), MAKE_RGB(0xb0, 0xe0, 0x57), MAKE_RGB(0xff, 0xa4, 0xcf),
140  MAKE_RGB(0x89, 0xe5, 0xc8), MAKE_RGB(0xa4, 0xca, 0xff), MAKE_RGB(0xca, 0xb3, 0xff), MAKE_RGB(0xa2, 0xe5, 0x7a),
141141
142  0x01, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xf6, 0xf2, 0xd1, 0xff, 0xff,
143  0xff, 0xe9, 0xff, 0xdb, 0xff, 0xd3, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xa3,
144  0xff, 0xff, 0xc1, 0xff, 0xff, 0xb2, 0xfc, 0xff, 0xa2, 0xff, 0xee, 0xff,
145  0xd1, 0xff, 0xff, 0xeb, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xed, 0xff, 0xbc
142  MAKE_RGB(0x01, 0x01, 0x01), MAKE_RGB(0xff, 0xff, 0xff), MAKE_RGB(0xff, 0xf6, 0xf2), MAKE_RGB(0xd1, 0xff, 0xff),
143  MAKE_RGB(0xff, 0xe9, 0xff), MAKE_RGB(0xdb, 0xff, 0xd3), MAKE_RGB(0xfd, 0xff, 0xff), MAKE_RGB(0xff, 0xff, 0xa3),
144  MAKE_RGB(0xff, 0xff, 0xc1), MAKE_RGB(0xff, 0xff, 0xb2), MAKE_RGB(0xfc, 0xff, 0xa2), MAKE_RGB(0xff, 0xee, 0xff),
145  MAKE_RGB(0xd1, 0xff, 0xff), MAKE_RGB(0xeb, 0xff, 0xff), MAKE_RGB(0xff, 0xf8, 0xff), MAKE_RGB(0xed, 0xff, 0xbc)
146146};
147147
148148
r17717r17718
321321   m_timer2 = timer_alloc(TIMER_ID_2);
322322   m_timer3 = timer_alloc(TIMER_ID_3);
323323
324   // initialize palette
325   initialize_palette();
326
327324   // allocate screen bitmap
328325   m_screen->register_screen_bitmap(m_bitmap);
329326
r17717r17718
445442
446443
447444//-------------------------------------------------
448//  initialize_palette - initialize palette
449//-------------------------------------------------
450
451void mos7360_device::initialize_palette()
452{
453   int i;
454
455   for (i = 0; i < sizeof(PALETTE) / 3; i++)
456      palette_set_color_rgb(machine(), i, PALETTE[i * 3], PALETTE[i * 3 + 1], PALETTE[i * 3 + 2]);
457}
458
459
460//-------------------------------------------------
461445//  sound_stream_update - handle update requests for
462446//  our sound stream
463447//-------------------------------------------------
r17717r17718
526510      else
527511         code = read_ram(m_chargenaddr + ch * 8 + y);
528512
529      m_bitmap.pix16(y + yoff, 0 + xoff) = color[code >> 7];
530      m_bitmap.pix16(y + yoff, 1 + xoff) = color[(code >> 6) & 1];
531      m_bitmap.pix16(y + yoff, 2 + xoff) = color[(code >> 5) & 1];
532      m_bitmap.pix16(y + yoff, 3 + xoff) = color[(code >> 4) & 1];
533      m_bitmap.pix16(y + yoff, 4 + xoff) = color[(code >> 3) & 1];
534      m_bitmap.pix16(y + yoff, 5 + xoff) = color[(code >> 2) & 1];
535      m_bitmap.pix16(y + yoff, 6 + xoff) = color[(code >> 1) & 1];
536      m_bitmap.pix16(y + yoff, 7 + xoff) = color[code & 1];
513      m_bitmap.pix32(y + yoff, 0 + xoff) = PALETTE[color[code >> 7]];
514      m_bitmap.pix32(y + yoff, 1 + xoff) = PALETTE[color[(code >> 6) & 1]];
515      m_bitmap.pix32(y + yoff, 2 + xoff) = PALETTE[color[(code >> 5) & 1]];
516      m_bitmap.pix32(y + yoff, 3 + xoff) = PALETTE[color[(code >> 4) & 1]];
517      m_bitmap.pix32(y + yoff, 4 + xoff) = PALETTE[color[(code >> 3) & 1]];
518      m_bitmap.pix32(y + yoff, 5 + xoff) = PALETTE[color[(code >> 2) & 1]];
519      m_bitmap.pix32(y + yoff, 6 + xoff) = PALETTE[color[(code >> 1) & 1]];
520      m_bitmap.pix32(y + yoff, 7 + xoff) = PALETTE[color[code & 1]];
537521   }
538522}
539523
r17717r17718
548532      else
549533         code = read_ram(m_chargenaddr + ch * 8 + y);
550534
551      m_bitmap.pix16(y + yoff, 0 + xoff) =
552         m_bitmap.pix16(y + yoff, 1 + xoff) = m_multi[code >> 6];
553      m_bitmap.pix16(y + yoff, 2 + xoff) =
554         m_bitmap.pix16(y + yoff, 3 + xoff) = m_multi[(code >> 4) & 3];
555      m_bitmap.pix16(y + yoff, 4 + xoff) =
556         m_bitmap.pix16(y + yoff, 5 + xoff) = m_multi[(code >> 2) & 3];
557      m_bitmap.pix16(y + yoff, 6 + xoff) =
558         m_bitmap.pix16(y + yoff, 7 + xoff) = m_multi[code & 3];
535      m_bitmap.pix32(y + yoff, 0 + xoff) =
536         m_bitmap.pix32(y + yoff, 1 + xoff) = PALETTE[m_multi[code >> 6]];
537      m_bitmap.pix32(y + yoff, 2 + xoff) =
538         m_bitmap.pix32(y + yoff, 3 + xoff) = PALETTE[m_multi[(code >> 4) & 3]];
539      m_bitmap.pix32(y + yoff, 4 + xoff) =
540         m_bitmap.pix32(y + yoff, 5 + xoff) = PALETTE[m_multi[(code >> 2) & 3]];
541      m_bitmap.pix32(y + yoff, 6 + xoff) =
542         m_bitmap.pix32(y + yoff, 7 + xoff) = PALETTE[m_multi[code & 3]];
559543   }
560544}
561545
r17717r17718
567551   {
568552      code = read_ram(m_bitmapaddr + ch * 8 + y);
569553     
570      m_bitmap.pix16(y + yoff, 0 + xoff) = m_c16_bitmap[code >> 7];
571      m_bitmap.pix16(y + yoff, 1 + xoff) = m_c16_bitmap[(code >> 6) & 1];
572      m_bitmap.pix16(y + yoff, 2 + xoff) = m_c16_bitmap[(code >> 5) & 1];
573      m_bitmap.pix16(y + yoff, 3 + xoff) = m_c16_bitmap[(code >> 4) & 1];
574      m_bitmap.pix16(y + yoff, 4 + xoff) = m_c16_bitmap[(code >> 3) & 1];
575      m_bitmap.pix16(y + yoff, 5 + xoff) = m_c16_bitmap[(code >> 2) & 1];
576      m_bitmap.pix16(y + yoff, 6 + xoff) = m_c16_bitmap[(code >> 1) & 1];
577      m_bitmap.pix16(y + yoff, 7 + xoff) = m_c16_bitmap[code & 1];
554      m_bitmap.pix32(y + yoff, 0 + xoff) = PALETTE[m_c16_bitmap[code >> 7]];
555      m_bitmap.pix32(y + yoff, 1 + xoff) = PALETTE[m_c16_bitmap[(code >> 6) & 1]];
556      m_bitmap.pix32(y + yoff, 2 + xoff) = PALETTE[m_c16_bitmap[(code >> 5) & 1]];
557      m_bitmap.pix32(y + yoff, 3 + xoff) = PALETTE[m_c16_bitmap[(code >> 4) & 1]];
558      m_bitmap.pix32(y + yoff, 4 + xoff) = PALETTE[m_c16_bitmap[(code >> 3) & 1]];
559      m_bitmap.pix32(y + yoff, 5 + xoff) = PALETTE[m_c16_bitmap[(code >> 2) & 1]];
560      m_bitmap.pix32(y + yoff, 6 + xoff) = PALETTE[m_c16_bitmap[(code >> 1) & 1]];
561      m_bitmap.pix32(y + yoff, 7 + xoff) = PALETTE[m_c16_bitmap[code & 1]];
578562   }
579563}
580564
r17717r17718
586570   {
587571      code = read_ram(m_bitmapaddr + ch * 8 + y);
588572     
589      m_bitmap.pix16(y + yoff, 0 + xoff) =
590         m_bitmap.pix16(y + yoff, 1 + xoff) = m_bitmapmulti[code >> 6];
591      m_bitmap.pix16(y + yoff, 2 + xoff) =
592         m_bitmap.pix16(y + yoff, 3 + xoff) = m_bitmapmulti[(code >> 4) & 3];
593      m_bitmap.pix16(y + yoff, 4 + xoff) =
594         m_bitmap.pix16(y + yoff, 5 + xoff) = m_bitmapmulti[(code >> 2) & 3];
595      m_bitmap.pix16(y + yoff, 6 + xoff) =
596         m_bitmap.pix16(y + yoff, 7 + xoff) = m_bitmapmulti[code & 3];
573      m_bitmap.pix32(y + yoff, 0 + xoff) =
574         m_bitmap.pix32(y + yoff, 1 + xoff) = PALETTE[m_bitmapmulti[code >> 6]];
575      m_bitmap.pix32(y + yoff, 2 + xoff) =
576         m_bitmap.pix32(y + yoff, 3 + xoff) = PALETTE[m_bitmapmulti[(code >> 4) & 3]];
577      m_bitmap.pix32(y + yoff, 4 + xoff) =
578         m_bitmap.pix32(y + yoff, 5 + xoff) = PALETTE[m_bitmapmulti[(code >> 2) & 3]];
579      m_bitmap.pix32(y + yoff, 6 + xoff) =
580         m_bitmap.pix32(y + yoff, 7 + xoff) = PALETTE[m_bitmapmulti[code & 3]];
597581   }
598582}
599583
600#ifndef memset16
601static void *memset16 (void *dest, int value, size_t size)
602{
603   register int i;
604
605   for (i = 0; i < size; i++)
606      ((short *) dest)[i] = value;
607   return dest;
608}
609#endif
610
611584void mos7360_device::draw_cursor(int ybegin, int yend, int yoff, int xoff, int color)
612585{
613586   int y;
614587
615588   for (y = ybegin; y <= yend; y++)
616589   {
617      memset16(&m_bitmap.pix16(yoff + y, xoff), color, 8);
590      for (int x = 0; x < 8; x++)
591      {
592         m_bitmap.pix32(y + yoff, x + xoff) = PALETTE[color];   
593      }
618594   }
619595}
620596
r17717r17718
638614   if (!SCREENON)
639615   {
640616      for (line = first; (line < last) && (line < m_bitmap.height()); line++)
641         memset16(&m_bitmap.pix16(line), 0, m_bitmap.width());
617      {
618         for (int x = 0; x < m_bitmap.width(); x++)
619         {
620            m_bitmap.pix32(line, x) = PALETTE[0];   
621         }
622      }
642623      return;
643624   }
644625
r17717r17718
653634      end = m_y_begin + YPOS;
654635   {
655636      for (line = first; line < end; line++)
656         memset16(&m_bitmap.pix16(line), FRAMECOLOR, m_bitmap.width());
637      {
638         for (int x = 0; x < m_bitmap.width(); x++)
639         {
640            m_bitmap.pix32(line, x) = PALETTE[FRAMECOLOR];   
641         }
642      }
657643   }
658644   if (LINES25)
659645      vline = line - m_y_begin - YPOS;
r17717r17718
745731
746732      for (i = ybegin; i <= yend; i++)
747733      {
748         memset16(&m_bitmap.pix16(yoff + i), FRAMECOLOR, xbegin);
749         memset16(&m_bitmap.pix16(yoff + i, xend), FRAMECOLOR, m_bitmap.width() - xend);
734         for (int x = 0; x < xbegin; x++)
735         {
736            m_bitmap.pix32(yoff + i, x) = PALETTE[FRAMECOLOR];   
737         }
738
739         for (int x = xend; x < m_bitmap.width(); x++)
740         {
741            m_bitmap.pix32(yoff + i, x) = PALETTE[FRAMECOLOR];
742         }
750743      }
751744   }
752745
r17717r17718
757750
758751   for (; line < end; line++)
759752   {
760      memset16(&m_bitmap.pix16(line), FRAMECOLOR, m_bitmap.width());
753      for (int x = 0; x < m_bitmap.width(); x++)
754      {
755         m_bitmap.pix32(line, x) = PALETTE[FRAMECOLOR];   
756      }
761757   }
762758}
763759
r17717r17718
11381134//  update_screen - update screen
11391135//-------------------------------------------------
11401136
1141UINT32 mos7360_device::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
1137UINT32 mos7360_device::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
11421138{
11431139   copybitmap(bitmap, m_bitmap, 0, 0, 0, 0, cliprect);
11441140
trunk/src/mess/audio/mos7360.h
r17717r17718
5050   MCFG_SCREEN_SIZE(336, 216) \
5151   MCFG_SCREEN_VISIBLE_AREA(0, 336 - 1, 0, 216 - 1) \
5252   MCFG_SCREEN_UPDATE_DEVICE(_tag, mos7360_device, screen_update) \
53   MCFG_PALETTE_LENGTH(128) \
5453   MCFG_DEVICE_ADD(_tag, MOS7360, _clock) \
5554   MCFG_DEVICE_CONFIG(_config) \
5655   MCFG_DEVICE_ADDRESS_MAP(AS_0, _videoram_map)
r17717r17718
125124
126125   UINT8 bus_r();
127126
128   UINT32 screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
127   UINT32 screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
129128
130129   // horrible crap code
131130   WRITE_LINE_MEMBER( rom_switch_w );
r17717r17718
161160   inline UINT8 read_ram(offs_t offset);
162161   inline UINT8 read_rom(offs_t offset);
163162
164   void initialize_palette();
165163   void draw_character(int ybegin, int yend, int ch, int yoff, int xoff, UINT16 *color);
166164   void draw_character_multi(int ybegin, int yend, int ch, int yoff, int xoff);
167165   void draw_bitmap(int ybegin, int yend, int ch, int yoff, int xoff);
r17717r17718
182180   UINT8 m_reg[0x20];
183181   UINT8 m_last_data;
184182
185   bitmap_ind16 m_bitmap;
183   bitmap_rgb32 m_bitmap;
186184
187185   int m_rom;
188186

Previous 199869 Revisions Next


© 1997-2024 The MAME Team