Previous 15994 Revisions Next

r5372 Saturday 8th August, 2009 at 15:15:13 UTC by Miodrag Milanović
[PYL601] Graphics mode support
[src/mess/drivers]pyl601.c

src/mess/drivers/pyl601.c
r5371r5372
280280
281281   int column, bit,i;
282282   UINT8 data;
283   UINT16  *p = BITMAP_ADDR16(bitmap, y, 0);
284
285283   if (BIT(video_mode,5)==0) {
286284      for (column = 0; column < x_count; column++)
287285      {
r5371r5372
304302      }
305303   } else {
306304      for ( i = 0; i < x_count; i++ )
307         {     
308            UINT16 offset = i  + (y * 64);
309            UINT8 data = mess_ram[ offset + 0xf000];
310            *p = (data >> 7); p++;
311            *p = (data >> 6); p++;
312            *p = (data >> 5); p++;
313            *p = (data >> 4); p++;
314            *p = (data >> 3); p++;
315            *p = (data >> 2); p++;
316            *p = (data >> 1); p++;
317            *p = (data >> 0); p++;
305      {     
306         UINT8 data = mess_ram[(((ma+i) << 3) | (ra & 0x07)) & 0xffff];
307         for (bit = 0; bit < 8; bit++)
308         {
309            *BITMAP_ADDR16(bitmap, y, (i * 8) + bit) = BIT(data, 7) ? 1 : 0;     
310            data <<= 1;
318311         }
319     
312      }     
320313   }
321314}
322315
r5371r5372
324317{
325318   UINT8 *charrom = memory_region(device->machine, "gfx1");
326319
327   int column, bit;
320   int column, bit,i;
328321   UINT8 data;
329322   if (BIT(video_mode,5)==0) {
330323      for (column = 0; column < x_count; column++)
r5371r5372
346339            data <<= 1;
347340         }
348341      }
342   } else {
343      for ( i = 0; i < x_count; i++ )
344      {     
345         UINT8 data = mess_ram[(((ma+i) << 3) | (ra & 0x07)) & 0xffff];
346         for (bit = 0; bit < 8; bit++)
347         {
348            *BITMAP_ADDR16(bitmap, y, (i * 8) + bit) = BIT(data, 7) ? 1 : 0;     
349            data <<= 1;
350         }
351      }     
349352   }
350353}
351354

Previous 15994 Revisions Next


© 1998-2018 The MESS Team