Previous 199869 Revisions Next

r32844 Monday 20th October, 2014 at 19:21:33 UTC by Wilbert Pol
Merge branch 'master' of https://github.com/mamedev/mame
[hash]megadriv.xml vsmile_cart.xml
[src/emu/video]upd7220.c upd7220.h
[src/mess/drivers]compis.c
[src/mess/includes]compis.h
[src/mess/video]x68k.c
[src/osd/windows]winos.c

trunk/hash/megadriv.xml
r241355r241356
1733817338
1733917339   <software name="madden98">
1734017340      <description>Madden NFL 98 (USA)</description>
17341      <year>1997</year>
17342      <publisher>Electronic Arts</publisher>
17343      <part name="cart" interface="megadriv_cart">
17344         <dataarea name="rom" width="16" endianness="big" size="2097152">
17345            <rom name="madden nfl 98 (usa).bin" size="2097152" crc="e051ea62" sha1="761e0903798a8d0ad9e7ab72e6d2762fc9d366d2" offset="0x000000"/>
17346         </dataarea>
17347      </part>
17348   </software>
17349
17341      <year>1997</year>
17342      <publisher>Electronic Arts</publisher>
17343      <part name="cart" interface="megadriv_cart">
17344         <feature name="slot" value="rom_sram"/>
17345         <dataarea name="rom" width="16" endianness="big" size="2097152">
17346            <rom name="madden nfl 98 (usa).bin" size="2097152" crc="e051ea62" sha1="761e0903798a8d0ad9e7ab72e6d2762fc9d366d2" offset="0x000000"/>
17347         </dataarea>
17348         <dataarea name="sram" size="65536"> <!-- Size to be confirmed. It does not work without SRAM. -->
17349         </dataarea>
17350      </part>
17351   </software>
17352 
1735017353   <software name="madoumon">
1735117354      <description>Madou Monogatari I (Jpn)</description>
1735217355      <year>1996</year>
r241355r241356
1966019663
1966119664   <software name="nhl98">
1966219665      <description>NHL 98 (USA)</description>
19663      <year>1997</year>
19664      <publisher>Electronic Arts</publisher>
19665      <part name="cart" interface="megadriv_cart">
19666         <dataarea name="rom" width="16" endianness="big" size="2097152">
19667            <rom name="nhl 98 (usa).bin" size="2097152" crc="7b64cd98" sha1="6771e9b660bde010cf28656cafb70f69249a3591" offset="0x000000"/>
19668         </dataarea>
19669      </part>
19670   </software>
19671
19666      <year>1997</year>
19667      <publisher>Electronic Arts</publisher>
19668      <part name="cart" interface="megadriv_cart">
19669         <feature name="slot" value="rom_sram"/>
19670         <dataarea name="rom" width="16" endianness="big" size="2097152">
19671            <rom name="nhl 98 (usa).bin" size="2097152" crc="7b64cd98" sha1="6771e9b660bde010cf28656cafb70f69249a3591" offset="0x000000"/>
19672         </dataarea>
19673         <dataarea name="sram" size="65536"> <!-- Size to be confirmed. It does not work without SRAM. -->
19674         </dataarea>
19675      </part>
19676   </software>
19677 
1967219678   <software name="nhlasp03" cloneof="nhlas">
1967319679      <description>NHL All-Star Hockey '95 (Prototype, 19941201-B)</description>
1967419680      <year>1994</year>
r241355r241356
3069230698
3069330699   <software name="nhlpa2k3" cloneof="nhl98">
3069430700      <description>NHLPA 2003 (Rus)</description>
30695      <year>199?</year>
30696      <publisher>&lt;unknown&gt;</publisher>
30697      <part name="cart" interface="megadriv_cart">
30698         <dataarea name="rom" width="16" endianness="big" size="2097152">
30699            <rom name="nhlpa 2003 (unl).bin" size="2097152" crc="4591571b" sha1="4e6dd50d0f671b89c4ce3f7d1a63ecb68208dc8e" offset="0x000000"/>
30700         </dataarea>
30701      </part>
30702   </software>
30703
30701      <year>199?</year>
30702      <publisher>&lt;unknown&gt;</publisher>
30703      <part name="cart" interface="megadriv_cart">
30704         <feature name="slot" value="rom_sram"/>
30705         <dataarea name="rom" width="16" endianness="big" size="2097152">
30706            <rom name="nhlpa 2003 (unl).bin" size="2097152" crc="4591571b" sha1="4e6dd50d0f671b89c4ce3f7d1a63ecb68208dc8e" offset="0x000000"/>
30707         </dataarea>
30708         <dataarea name="sram" size="65536"> <!-- Size to be confirmed. It does not work without SRAM. -->
30709         </dataarea>
30710      </part>
30711   </software>
30712 
3070430713   <software name="pcarib" cloneof="unchartd">
3070530714      <description>Pirates of the Caribbean (Rus)</description>
3070630715      <year>199?</year>
trunk/hash/vsmile_cart.xml
r241355r241356
1111
1212
1313V.Reader:                     80-28****
14V.Smile Motion:               80-08****
15V.Smile Smartbook Software:   80-089***
16V.Smile:                      80-092***
14V.Smile Motion:               80-08****  (Smartridges are orange)
15V.Smile Smartbook Software:   80-089***  (Smartridges are red)
16V.Smile:                      80-092***  (Smartridges are purple, some are gray because of plastic defects)
17
18Addons (w/ yellow Smartridges)
19V.Smile Smart Keyboard    80-091440
20V.Smile PC Pal            80-03600
21V.Smile Art Studio        80-67000
22V.Smile Jamming Gym Class 80-91320
23
24- Not compatible with V.Smile games, left as documentation
1725V.Flash (V.Smile Pro):        80-093***
1826
1927
r241355r241356
859380-084604(GER)  | Cinderella - Lernen im Märchenland
869480-084624(GER)  | Findet Nemo - Nemos Unterwasserabenteuer
8795
96
889780-089000(US)   | Spider-Man &amp; Friends Where is Hulk?
899880-089020(US)   | Toy Story 2
9080-089040(US)   | Dora the Explorer
9980-089040(US)   | Dora's Fix It Adventure
10080-089060(US)   | Scooby-Doo! - A Night of Fright is no Delight
91101
9210280-090000(US)   | Up
9310380-090000(GER)  | Oben
r241355r241356
10511580-092004(GER)  | Abenteuer im ABC Park
10611680-092020(US)   | The Adventures of Little Red Riding Hood
10711780-092024(GER)  | Entdecke die Welt von Rotkäppchen
10880-092060(US)   | Winnie The Pooh: Honey Hunt
11880-092060(US)   | Winnie The Pooh: The Honey Hunt
10911980-092064(GER)  | Winnie Puuh - Die Honigjagd
11012080-092080(US)   | Mickey Mouse - Mickey's Magical Adventures
11112180-092087(SPA)  | Mickey - La Aventura Magica de Mickey
11212280-092084(GER)  | Micky - Mickys magisches Abenteuer
11312380-092100(US)   | The Lion King: Simba's Big Adventure
11412480-092104(GER)  | Der König der Löwen - Simbas großes Abenteuer
11580-092120(US)   | The Little Mermaid
12580-092120(US)   | The Little Mermaid - Ariel's Majestic Journey
11612680-092124(GER)  | Arielle die Meerjungfrau - Arielles aufregendes Abenteuer
11712780-092127(SPA)  | La Sirenita - El Vieje Fantástico de Ariel
11812880-092140(US)   | Spider-Man & Friends - Secret Missions
r241355r241356
12913980-092264(GER)  | Elmo's großes Abenteuer
13014080-092265(FRA)  | Le Monde d'ELMO - Les Grandes Decouvertes D'Elmo
13114180-092280(US)   | Dora The Explorer
13280-092300(US)   | Bob the Builder: Bob's busy day
14280-092300(US)   | Bob the Builder: Bob's Busy Day
13314380-092304(GER)  | Bob der Baumeister - Achtung Baustelle
13414480-092320(US)   | The Wiggles - It's Wiggle Time!
13514580-092340(US)   | Thomas The Tank: Engines Working Together
14680-092340-101(US)   | Thomas The Tank: Engines Working Together (ALT)
13614780-092360(US)   | Zayzoo My Alien Classmate
14880-092360-101(US)   | Zayzoo - An Earth Adventure
14980-092380(US)   | Barney - The Land of Make Believe
13715080-092384(GER)  | Barney - Erlebnis-Reise
13815180-092400(US)   | Blue's Clues Collection Day
13915280-092420(US)   | Finding Nemo
r241355r241356
14315680-092480(US)   | Batman: Gotham City Rescue
14415780-092500(US)   | Whiz Kid Wheels
14515880-092520(US)   | Spider-Man & Friends Doc Ock's Challenge
14680-092540(US)   | Noddy
15980-092540(US)   | Noddy - Detective for a Day
14716080-092544(GER)  | Noddy
14816180-092564(GER)  | 101 Dalmatiner
14980-092580(US)   | Backyardigans
15080-092600(US)   | Shrek 2
16280-092580(US)   | Backyardigans - Viking Voyage
16380-092600(US)   | Shrek - Dragon's Tale
15116480-092620(US)   | Lil' Bratz - Friends, Fashion and Fun
15280-092640(US)   | Superman
16580-092640(US)   | Superman - The Greatest Hero
15316680-092660(US)   | Cars: Rev It Up In Radiator Springs
15416780-092662(NL)   | Cars - Spektakel in Radiator Springs
16880-092666(SPA)  | Cars: Acelera El Motor En Radiador Springs
15516980-092664(GER)  | Cars
15617080-092820(US)   | Soccer
15717180-092824(GER)  | Fußball Schule
r241355r241356
16117580-092882(NL)   | Ratatouille
16217680-092884(GER)  | Ratatouille - Remys neue Rezepte
16317780-092885(FRA)  | Ratatouille - Les nouvelles recettes de Rémy
16480-092900(US)   | Go Diego Go
17880-092900(US)   | Go Diego Go - Save the Animal Familes!
16517980-092920(US)   | Cranium - Partyland Park
16680-092960(US)   | Kung Fu Panda
18080-092960(US)   | Kung Fu Panda - Path of the Panda
16718180-092980(US)   | Little Einsteins
168182
16918380-093000(US)   | The Crystal Ball Adventure
trunk/src/emu/video/upd7220.c
r241355r241356
3333    - honor visible area
3434    - wide mode (32-bit access)
3535    - light pen
36    - dad and mask are the same, in figd dad is shifted every step and when msb or lsb are 1 ead is advanced in x dir
3637
3738*/
3839
r241355r241356
120121#define UPD7220_SR_HBLANK_ACTIVE        0x40
121122#define UPD7220_SR_LIGHT_PEN_DETECT     0x80
122123
123#define UPD7220_MODE_S                  0x01
124124#define UPD7220_MODE_REFRESH_RAM        0x04
125#define UPD7220_MODE_I                  0x08
126125#define UPD7220_MODE_DRAW_ON_RETRACE    0x10
127126#define UPD7220_MODE_DISPLAY_MASK       0x22
128127#define UPD7220_MODE_DISPLAY_MIXED      0x00
129128#define UPD7220_MODE_DISPLAY_GRAPHICS   0x02
130129#define UPD7220_MODE_DISPLAY_CHARACTER  0x20
131130#define UPD7220_MODE_DISPLAY_INVALID    0x22
131#define UPD7220_MODE_INTERLACE_MASK     0x09
132#define UPD7220_MODE_INTERLACE_NONE     0x00
133#define UPD7220_MODE_INTERLACE_INVALID  0x01
134#define UPD7220_MODE_INTERLACE_REPEAT   0x08
135#define UPD7220_MODE_INTERLACE_ON       0x09
132136
137
133138static const int x_dir[8] = { 0, 1, 1, 1, 0,-1,-1,-1};
134139static const int y_dir[8] = { 1, 1, 0,-1,-1,-1, 0, 1};
135140
r241355r241356
366371
367372inline void upd7220_device::recompute_parameters()
368373{
374   int horiz_mult;
369375   /* TODO: assume that the pitch also controls number of horizontal pixels in a single cell */
370   int horiz_mult = ((m_pitch == 40) ? 16 : 8);
371   int horiz_pix_total = (m_hs + m_hbp + m_aw + m_hfp) * horiz_mult;
376   // horiz_mult = 4 if both mixed and interlace?
377   if(((m_mode & UPD7220_MODE_DISPLAY_MASK) == UPD7220_MODE_DISPLAY_MIXED) ||
378            ((m_mode & UPD7220_MODE_INTERLACE_MASK) == UPD7220_MODE_INTERLACE_ON))
379      horiz_mult = 8;
380   else
381      horiz_mult = 16;
382
383   int horiz_pix_total = (m_hs + m_hbp + m_hfp + m_aw) * horiz_mult;
372384   int vert_pix_total = m_vs + m_vbp + m_al + m_vfp;
373385
374386   //printf("%d %d %d %d\n",m_hs,m_hbp,m_aw,m_hfp);
r241355r241356
377389   if (horiz_pix_total == 0 || vert_pix_total == 0) //bail out if screen params aren't valid
378390      return;
379391
380   attoseconds_t refresh = HZ_TO_ATTOSECONDS(clock() * horiz_mult) * horiz_pix_total * vert_pix_total;
392   attoseconds_t refresh = HZ_TO_ATTOSECONDS(clock() * 8) * horiz_pix_total * vert_pix_total;
381393
382394   rectangle visarea;
383395
r241355r241356
419431   m_figs.m_d1 = 0x0008;
420432   m_figs.m_d2 = 0x0000;
421433   m_figs.m_dm = 0x0000;
434   m_figs.m_gd = 0;
422435}
423436
424437
r241355r241356
479492
480493   result = 0;
481494
495   if(((m_mode & UPD7220_MODE_DISPLAY_MASK) == UPD7220_MODE_DISPLAY_GRAPHICS) || m_figs.m_gd)
496      result = BITSWAP8(m_pr[1],0,1,2,3,4,5,6,7) | (BITSWAP8(m_pr[2],0,1,2,3,4,5,6,7) << 8);
497   else
498      result = m_pr[1] | (m_pr[2] << 8);
499
482500   switch(type)
483501   {
484502      case 0:
485         result = (m_pr[1] & 0xff);
486         result |= (m_pr[2] << 8);
487503         result &= m_mask;
488504         break;
489505      case 2:
490         result = (m_pr[1] & 0xff);
491506         result &= (m_mask & 0xff);
492507         break;
493508      case 3:
494         result = (m_pr[1] << 8);
509         result <<= 8;
495510         result &= (m_mask & 0xff00);
496511         break;
497512   }
r241355r241356
760775
761776void upd7220_device::draw_pixel(int x, int y, int xi, UINT16 tile_data)
762777{
763   UINT32 addr = (y * m_pitch * 2 + (x >> 3)) & 0x3ffff;
778   UINT32 addr = ((y * m_pitch * 2) + (x >> 3)) & 0x3ffff;
764779   UINT8 data = readbyte(addr);
765780   UINT8 new_pixel = (xi & 8 ? tile_data >> 8 : tile_data & 0xff) & (0x80 >> (xi & 7));
766781   new_pixel = new_pixel ? (0xff & (0x80 >> (x & 7))) : 0;
r241355r241356
797812   UINT16 pattern = (m_ra[8]) | (m_ra[9]<<8);
798813   int line_step = 0;
799814
800   LOG(("uPD7220 line check: %d %d %02x %08x %d %d\n",x,y,m_figs.m_dir,m_ead,m_figs.m_d1,m_figs.m_dc));
815   LOG(("uPD7220 line check: %d %d %02x %08x %d %d %d\n",x,y,m_figs.m_dir,m_ead,m_figs.m_d1,m_figs.m_dc,m_bitmap_mod));
801816
802817   line_size = m_figs.m_dc;
803818
r241355r241356
815830   x += (line_step*line_x_step[m_figs.m_dir]);
816831   y += (line_step*line_y_step[m_figs.m_dir]);
817832
818   m_ead = (x >> 4) + (y * m_pitch);
833   m_ead = (x >> 4) + (y * (m_pitch >> m_figs.m_gd));
819834   m_dad = x & 0x0f;
820835}
821836
r241355r241356
880895         break;
881896   }
882897
883   m_ead = (x >> 4) + (y * m_pitch);
898   m_ead = (x >> 4) + (y * (m_pitch >> m_figs.m_gd));
884899   m_dad = x & 0x0f;
885900}
886901
r241355r241356
935950      y+=rect_y_dir[rect_dir];
936951   }
937952
938   m_ead = (x >> 4) + (y * m_pitch);
953   m_ead = (x >> 4) + (y * (m_pitch >> m_figs.m_gd));
939954   m_dad = x & 0x0f;
940955
941956}
r241355r241356
975990      }
976991   }
977992
978   m_ead = (x >> 4) + (y * m_pitch);
993   m_ead = (x >> 4) + (y * (m_pitch >> m_figs.m_gd));
979994   m_dad = (x & 0xf);
980995}
981996
r241355r241356
10371052{
10381053   UINT8 data;
10391054   int flag;
1055   UINT16 eff_pitch = m_pitch >> m_figs.m_gd;
10401056
10411057   dequeue(&data, &flag);
10421058
r241355r241356
12031219
12041220         m_ead = (upper_addr << 16) | (m_pr[2] << 8) | m_pr[1];
12051221
1206         //LOG(("uPD7220 '%s' EAD: %06x\n", tag(), m_ead));
1222         LOG(("uPD7220 '%s' EAD: %06x\n", tag(), m_ead));
12071223
12081224         if(m_param_ptr == 4)
12091225         {
12101226            m_dad = m_pr[3] >> 4;
1211            //LOG(("uPD7220 '%s' DAD: %01x\n", tag(), m_dad));
1227            LOG(("uPD7220 '%s' DAD: %01x\n", tag(), m_dad));
12121228         }
12131229      }
12141230      break;
r241355r241356
12461262
12471263      if (m_param_ptr == 3 || (m_param_ptr == 2 && m_cr & 0x10))
12481264      {
1249         //printf("%02x = %02x %02x (%c) %04x\n",m_cr,m_pr[2],m_pr[1],m_pr[1],EAD);
1265         LOG(("%02x = %02x %02x (%c) %06x %04x\n",m_cr,m_pr[2],m_pr[1],m_pr[1]?m_pr[1]:' ',m_ead,m_figs.m_dc));
12501266         fifo_set_direction(FIFO_WRITE);
12511267
12521268         write_vram((m_cr & 0x18) >> 3,m_cr & 3);
r241355r241356
12801296         m_figs.m_dc = (m_pr[2]) | (m_figs.m_dc & 0x3f00);
12811297
12821298      if (m_param_ptr == 4)
1299      {
12831300         m_figs.m_dc = (m_pr[2]) | ((m_pr[3] & 0x3f) << 8);
1301         m_figs.m_gd = (m_pr[3] & 0x40) && ((m_mode & UPD7220_MODE_DISPLAY_MASK) == UPD7220_MODE_DISPLAY_MIXED);
1302      }
12841303
12851304      if (m_param_ptr == 6)
12861305         m_figs.m_d = (m_pr[4]) | ((m_pr[5] & 0x3f) << 8);
r241355r241356
12981317
12991318   case COMMAND_FIGD: /* figure draw start */
13001319      if(m_figs.m_figure_type == 0)
1301         draw_pixel(((m_ead % m_pitch) << 4) | (m_dad & 0xf),(m_ead / m_pitch),m_dad,(m_ra[8]) | (m_ra[9]<<8));
1320         draw_pixel(((m_ead % eff_pitch) << 4) | (m_dad & 0xf),(m_ead / eff_pitch),m_dad,(m_ra[8]) | (m_ra[9]<<8));
13021321      else if(m_figs.m_figure_type == 1)
1303         draw_line(((m_ead % m_pitch) << 4) | (m_dad & 0xf),(m_ead / m_pitch));
1322         draw_line(((m_ead % eff_pitch) << 4) | (m_dad & 0xf),(m_ead / eff_pitch));
13041323      else if(m_figs.m_figure_type == 4)
1305         draw_arc(((m_ead % m_pitch) << 4) | (m_dad & 0xf),(m_ead / m_pitch));
1324         draw_arc(((m_ead % eff_pitch) << 4) | (m_dad & 0xf),(m_ead / eff_pitch));
13061325      else if(m_figs.m_figure_type == 8)
1307         draw_rectangle(((m_ead % m_pitch) << 4) | (m_dad & 0xf),(m_ead / m_pitch));
1326         draw_rectangle(((m_ead % eff_pitch) << 4) | (m_dad & 0xf),(m_ead / eff_pitch));
13081327      else
13091328         logerror("uPD7220 '%s' Unimplemented command FIGD %02x\n", tag(),m_figs.m_figure_type);
13101329
r241355r241356
13141333
13151334   case COMMAND_GCHRD: /* graphics character draw and area filling start */
13161335      if(m_figs.m_figure_type == 2)
1317         draw_char(((m_ead % m_pitch) << 4) | (m_dad & 0xf),(m_ead / m_pitch));
1336         draw_char(((m_ead % eff_pitch) << 4) | (m_dad & 0xf),(m_ead / eff_pitch));
13181337      else
13191338         logerror("uPD7220 '%s' Unimplemented command GCHRD %02x\n", tag(),m_figs.m_figure_type);
13201339
r241355r241356
15681587            addr = ((sad << 1) & 0x3ffff) + (y * m_pitch * 2);
15691588
15701589            if (!m_display_cb.isnull())
1571               draw_graphics_line(bitmap, addr, y + bsy/((m_pitch == 40)+1), wd);
1590               draw_graphics_line(bitmap, addr, y + (bsy >> !im), wd);
15721591         }
15731592      }
15741593      else
trunk/src/emu/video/upd7220.h
r241355r241356
209209      UINT8 m_dir;                // figs param 0: drawing direction
210210      UINT8 m_figure_type;        // figs param 1: figure type
211211      UINT16 m_dc;                // figs param 2:
212      UINT8  m_gd;                // mixed mode only
212213      UINT16 m_d;                 // figs param 3:
213214      UINT16 m_d1;                // figs param 4:
214215      UINT16 m_d2;                // figs param 5:
trunk/src/mess/drivers/compis.c
r241355r241356
100100      if (offset < 2)
101101         return m_crtc->read(space, offset & 0x01);
102102      else
103         // monochrome only, hblank? vblank?
104         if(offset == 2)
105         {
106            switch(m_unk_video)
107            {
108               case 0x04:
109                  m_unk_video = 0x44;
110                  break;
111               case 0x44:
112                  m_unk_video = 0x64;
113                  break;
114               default:
115                  m_unk_video = 0x04;
116                  break;
117            }
118            return m_unk_video;
119         }
120      else
103121         return 0;
104122   }
105123   else
r241355r241356
115133{
116134   if (ACCESSING_BITS_0_7)
117135   {
136      // 0x336 is likely the color plane register
118137      if (offset < 2) m_crtc->write(space, offset & 0x01, data);
138
119139   }
120140   else
121141   {
r241355r241356
221241}
222242
223243
224//-------------------------------------------------
225//  vram_r -
226//-------------------------------------------------
227
228READ8_MEMBER( compis_state::vram_r )
229{
230   return m_video_ram[offset];
231}
232
233
234//-------------------------------------------------
235//  vram_w -
236//-------------------------------------------------
237
238WRITE8_MEMBER( compis_state::vram_w )
239{
240   m_video_ram[offset] = data;
241}
242
243
244
245244//**************************************************************************
246245//  ADDRESS MAPS
247246//**************************************************************************
r241355r241356
253252static ADDRESS_MAP_START( compis_mem, AS_PROGRAM, 16, compis_state )
254253   ADDRESS_MAP_UNMAP_HIGH
255254   AM_RANGE(0x00000, 0x1ffff) AM_RAM
256   AM_RANGE(0x40000, 0x5ffff) AM_READWRITE8(vram_r, vram_w, 0xffff)
257255   AM_RANGE(0x60000, 0x63fff) AM_MIRROR(0x1c000) AM_DEVICE(I80130_TAG, i80130_device, rom_map)
258256   AM_RANGE(0xe0000, 0xeffff) AM_MIRROR(0x10000) AM_ROM AM_REGION(I80186_TAG, 0)
259257ADDRESS_MAP_END
r241355r241356
265263
266264static ADDRESS_MAP_START( compis2_mem, AS_PROGRAM, 16, compis_state )
267265   ADDRESS_MAP_UNMAP_HIGH
268   AM_RANGE(0x00000, 0x3ffff) AM_RAM
269   AM_RANGE(0x40000, 0x5ffff) AM_READWRITE8(vram_r, vram_w, 0xffff)
270   AM_RANGE(0x60000, 0xbffff) AM_RAM
266   AM_RANGE(0x00000, 0xbffff) AM_RAM
271267   AM_RANGE(0xe0000, 0xeffff) AM_MIRROR(0x10000) AM_ROM AM_REGION(I80186_TAG, 0)
272268ADDRESS_MAP_END
273269
r241355r241356
317313//-------------------------------------------------
318314
319315static ADDRESS_MAP_START( upd7220_map, AS_0, 8, compis_state )
320   ADDRESS_MAP_GLOBAL_MASK(0x1ffff)
321   AM_RANGE(0x00000, 0x1ffff) AM_RAM AM_SHARE("video_ram")
316   ADDRESS_MAP_GLOBAL_MASK(0x7fff)
317   AM_RANGE(0x00000, 0x7fff) AM_RAM AM_SHARE("video_ram")
322318ADDRESS_MAP_END
323319
324320
r241355r241356
455451
456452UPD7220_DISPLAY_PIXELS_MEMBER( compis_state::hgdc_display_pixels )
457453{
458   UINT8 i,gfx = m_video_ram[address];
454   UINT8 i,gfx = m_video_ram[(address & 0x7fff)];
459455   const pen_t *pen = m_palette->pens();
460456
461457   for(i=0; i<8; i++)
462      bitmap.pix32(y, x + i) = pen[BIT(gfx, i)];
458      bitmap.pix32(y, x + i) = pen[BIT(gfx, 7 - i)];
463459}
464460
465461
trunk/src/mess/includes/compis.h
r241355r241356
103103   DECLARE_WRITE16_MEMBER( isbx1_cs_w );
104104   DECLARE_READ16_MEMBER( isbx1_dack_r );
105105   DECLARE_WRITE16_MEMBER( isbx1_dack_w );
106   DECLARE_READ8_MEMBER( vram_r );
107   DECLARE_WRITE8_MEMBER( vram_w );
108106
109107   DECLARE_READ8_MEMBER( compis_irq_callback );
110108
r241355r241356
125123   DECLARE_WRITE_LINE_MEMBER(write_centronics_select);
126124
127125   int m_tmr0;
126   int m_unk_video;
128127
129128   UPD7220_DISPLAY_PIXELS_MEMBER( hgdc_display_pixels );
130129};
trunk/src/mess/video/x68k.c
r241355r241356
890890void x68k_state::x68k_draw_gfx(bitmap_rgb32 &bitmap,rectangle cliprect)
891891{
892892   int priority, scanline, pixel;
893   bool gfxblend;
893   bool gfxblend=false;
894894   //rectangle rect;
895895   //int xscr,yscr;
896896   //int gpage;
trunk/src/osd/windows/winos.c
r241355r241356
66
77#define WIN32_LEAN_AND_MEAN
88#include <windows.h>
9#include <stdlib.h>
910
1011// MAME headers
1112#include "osdcore.h"


Previous 199869 Revisions Next


© 1997-2024 The MAME Team