Previous 199869 Revisions Next

r19721 Friday 21st December, 2012 at 22:52:12 UTC by Robbbert
Tim100 : fixed F4 display
[src/mess/drivers]tim100.c

trunk/src/mess/drivers/tim100.c
r19720r19721
6363
6464const gfx_layout tim100_charlayout =
6565{
66   16, 16,            /* 8x16 characters */
66   12, 16,            /* 8x16 characters */
6767   128,            /* 128 characters */
6868   1,            /* 1 bits per pixel */
6969   {0},            /* no bitplanes; 1 bit per pixel */
70   {0,1,2,3,4,5,6,7,0+0x4000,1+0x4000,2+0x4000,3+0x4000,4+0x4000,5+0x4000,6+0x4000,7+0x4000},
70   {0,1,2,3,4,5,0+0x4000,1+0x4000,2+0x4000,3+0x4000,4+0x4000,5+0x4000},
7171   {0 * 8, 1 * 8, 2 * 8, 3 * 8, 4 * 8, 5 * 8, 6 * 8, 7 * 8,
7272    8 * 8, 9 * 8, 10 * 8, 11 * 8, 12 * 8, 13 * 8, 14 * 8, 15 * 8},
7373   8*16            /* space between characters */
r19720r19721
8888}
8989
9090
91
91// this gets called via a (i8275_dack_w), so does nothing currently
92// once fixed, pixel count needs adjusting
9293static I8275_DISPLAY_PIXELS(tim100_display_pixels)
9394{
94   
9595   tim100_state *state = device->machine().driver_data<tim100_state>();
9696   int i;
9797   bitmap_rgb32 &bitmap = state->m_bitmap;
9898   const rgb_t *palette = palette_entry_list_raw(bitmap.palette());
9999   UINT8 *charmap = state->memregion("chargen")->base();
100   UINT8 pixels = charmap[(linecount & 7) + (charcode << 3)] ^ 0xff;
101   if (vsp) {
100   UINT8 pixels = charmap[(linecount & 15) + (charcode << 4)];
101   if (vsp)
102   {
102103      pixels = 0;
103104   }
104   if (lten) {
105   
106   if (lten)
107   {
105108      pixels = 0xff;
106109   }
107   if (rvv) {
110
111   if (rvv)
112   {
108113      pixels ^= 0xff;
109114   }
110   for(i=0;i<8;i++) {
115
116   for(i=0;i<8;i++) // 6 pixels
117   {
111118      bitmap.pix32(y, x + i) = palette[(pixels >> (7-i)) & 1 ? (hlgt ? 2 : 1) : 0];
112119   }
113   
114120}
115121
116122static const i8275_interface tim100_i8276_interface = {
117123   "screen",
118   16,
124   16, //12
119125   0,
120126   DEVCB_CPU_INPUT_LINE("maincpu", I8085_RST65_LINE),
121127   DEVCB_NULL,   
r19720r19721
140146
141147   MCFG_I8275_ADD   ( "i8276", tim100_i8276_interface)
142148   
143   MCFG_PALETTE_LENGTH(2)
144   MCFG_PALETTE_INIT(black_and_white)
149   MCFG_PALETTE_LENGTH(3)
145150   
146151   MCFG_I8251_ADD("uart_u17", default_i8251_interface)
147152   MCFG_I8251_ADD("uart_u18", default_i8251_interface)
r19720r19721
151156ROM_START( tim100 )
152157   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASEFF )
153158   ROM_LOAD( "tim 100 v.3.2.0.u16",   0x0000, 0x2000, CRC(4de9c8ad) SHA1(b0914d6e8d618e92a87b4b39c35391541251e8cc)) 
154   ROM_REGION( 0x2000, "chargen", ROMREGION_ERASEFF )
159   ROM_REGION( 0x2000, "chargen", ROMREGION_INVERT )
155160   ROM_SYSTEM_BIOS( 0, "212", "v 2.1.2" )
156161   ROMX_LOAD( "tim 100kg v.2.1.2.u12", 0x0000, 0x2000, CRC(faf5743c) SHA1(310b662e9535878210f8aaab3e2b846fade60642),ROM_BIOS(1))   
157162   ROM_SYSTEM_BIOS( 1, "220", "v 2.2.0" )

Previous 199869 Revisions Next


© 1997-2024 The MAME Team