Previous 199869 Revisions Next

r30659 Sunday 25th May, 2014 at 11:44:11 UTC by Miodrag Milanović
remove unused parameters (nw)
[src/mame/drivers]coolridr.c cv1k.c firebeat.c goodejan.c gunpey.c raiden2.c sengokmj.c wyvernf0.c
[src/mame/includes]raiden2.h tubep.h
[src/mame/video]argus.c fuukifg2.c gaelco3d.c hng64.c konamigx.c seta.c
[src/mess/drivers]besta.c nakajies.c x1.c
[src/mess/includes]x1.h

trunk/src/mame/drivers/gunpey.c
r30658r30659
228228   TIMER_DEVICE_CALLBACK_MEMBER(gunpey_scanline);
229229   TIMER_CALLBACK_MEMBER(blitter_end);
230230   void gunpey_irq_check(UINT8 irq_type);
231   UINT8 draw_gfx(running_machine &machine, bitmap_ind16 &bitmap,const rectangle &cliprect,int count,UINT8 scene_gradient);
231   UINT8 draw_gfx(bitmap_ind16 &bitmap,const rectangle &cliprect,int count,UINT8 scene_gradient);
232232   UINT16 m_vram_bank;
233233   UINT16 m_vreg_addr;
234234
r30658r30659
273273   m_blit_buffer = auto_alloc_array(machine(), UINT16, 512*512);
274274}
275275
276UINT8 gunpey_state::draw_gfx(running_machine &machine, bitmap_ind16 &bitmap,const rectangle &cliprect,int count,UINT8 scene_gradient)
276UINT8 gunpey_state::draw_gfx(bitmap_ind16 &bitmap,const rectangle &cliprect,int count,UINT8 scene_gradient)
277277{
278278   int x,y;
279279   int bpp_sel;
r30658r30659
582582      {
583583         for(count = start_offs;count<end_offs;count+=0x10/2)
584584         {
585            end_mark = draw_gfx(screen.machine(), bitmap,cliprect,count,scene_gradient);
585            end_mark = draw_gfx(bitmap,cliprect,count,scene_gradient);
586586
587587            if(end_mark == 0x80)
588588               break;
trunk/src/mame/drivers/cv1k.c
r30658r30659
226226
227227UINT32 cv1k_state::screen_update_cv1k(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
228228{
229   epic12_device::set_delay_scale(m_blitter, screen.machine().root_device().ioport(":BLITRATE")->read());
229   epic12_device::set_delay_scale(m_blitter, ioport(":BLITRATE")->read());
230230
231231   m_blitter->draw_screen(bitmap,cliprect);
232232   return 0;
trunk/src/mame/drivers/sengokmj.c
r30658r30659
107107   DECLARE_WRITE16_MEMBER(layer_en_w);
108108   DECLARE_WRITE16_MEMBER(layer_scroll_w);
109109
110   void draw_sprites(running_machine &machine, bitmap_ind16 &bitmap,const rectangle &cliprect,int pri);
110   void draw_sprites(bitmap_ind16 &bitmap,const rectangle &cliprect,int pri);
111111   virtual void video_start();
112112   UINT32 screen_update_sengokmj(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
113113};
r30658r30659
244244   SET_TILE_INFO_MEMBER(4, tile, color, 0);
245245}
246246
247void sengokmj_state::draw_sprites(running_machine &machine, bitmap_ind16 &bitmap,const rectangle &cliprect,int pri)
247void sengokmj_state::draw_sprites(bitmap_ind16 &bitmap,const rectangle &cliprect,int pri)
248248{
249249   int offs,fx,fy,x,y,color,sprite;
250250   int dx,dy,ax,ay;
r30658r30659
311311   m_sc3_tilemap->set_scrolly(0, (0) & 0x1ff );
312312
313313   if(SEIBU_CRTC_ENABLE_SC0) { m_sc0_tilemap->draw(screen, bitmap, cliprect, 0,0); }
314   if(SEIBU_CRTC_ENABLE_SPR) { draw_sprites(screen.machine(), bitmap,cliprect, 2); }
314   if(SEIBU_CRTC_ENABLE_SPR) { draw_sprites(bitmap,cliprect, 2); }
315315   if(SEIBU_CRTC_ENABLE_SC2) { m_sc2_tilemap->draw(screen, bitmap, cliprect, 0,0); }
316   if(SEIBU_CRTC_ENABLE_SPR) { draw_sprites(screen.machine(), bitmap,cliprect, 1); }
316   if(SEIBU_CRTC_ENABLE_SPR) { draw_sprites(bitmap,cliprect, 1); }
317317   if(SEIBU_CRTC_ENABLE_SC1) { m_sc1_tilemap->draw(screen, bitmap, cliprect, 0,0); }
318   if(SEIBU_CRTC_ENABLE_SPR) { draw_sprites(screen.machine(), bitmap,cliprect, 0); }
318   if(SEIBU_CRTC_ENABLE_SPR) { draw_sprites(bitmap,cliprect, 0); }
319319   if(SEIBU_CRTC_ENABLE_SC3) { m_sc3_tilemap->draw(screen, bitmap, cliprect, 0,0); }
320   if(SEIBU_CRTC_ENABLE_SPR) { draw_sprites(screen.machine(), bitmap,cliprect, 3); }
320   if(SEIBU_CRTC_ENABLE_SPR) { draw_sprites(bitmap,cliprect, 3); }
321321
322322   return 0;
323323}
trunk/src/mame/drivers/coolridr.c
r30658r30659
925925UINT32 coolridr_state::screen_update_coolridr1(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
926926{
927927#if 0
928   if (screen.machine().input().code_pressed_once(KEYCODE_W))
928   if (machine().input().code_pressed_once(KEYCODE_W))
929929   {
930930      debug_randompal++;
931931      popmessage("%02x",debug_randompal);
932932   }
933   if (screen.machine().input().code_pressed_once(KEYCODE_Q))
933   if (machine().input().code_pressed_once(KEYCODE_Q))
934934   {
935935      debug_randompal--;
936936      popmessage("%02x",debug_randompal);
trunk/src/mame/drivers/goodejan.c
r30658r30659
118118   UINT16 m_layer_en;
119119   UINT16 m_scrollram[6];
120120   void seibucrtc_sc0bank_w(UINT16 data);
121   void draw_sprites(running_machine &machine, bitmap_ind16 &bitmap,const rectangle &cliprect,int pri);
121   void draw_sprites(bitmap_ind16 &bitmap,const rectangle &cliprect,int pri);
122122   virtual void video_start();
123123   UINT32 screen_update_goodejan(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
124124};
r30658r30659
296296   SET_TILE_INFO_MEMBER(4, tile, color, 0);
297297}
298298
299void goodejan_state::draw_sprites(running_machine &machine, bitmap_ind16 &bitmap,const rectangle &cliprect,int pri)
299void goodejan_state::draw_sprites(bitmap_ind16 &bitmap,const rectangle &cliprect,int pri)
300300{
301301   int offs,fx,fy,x,y,color,sprite;
302302   int dx,dy,ax,ay;
r30658r30659
364364   m_sc3_tilemap->set_scrolly(0, (0) & 0x1ff );
365365
366366   if(SEIBU_CRTC_ENABLE_SC0) { m_sc0_tilemap->draw(screen, bitmap, cliprect, 0,0); }
367   if(SEIBU_CRTC_ENABLE_SPR) { draw_sprites(screen.machine(), bitmap,cliprect, 2); }
367   if(SEIBU_CRTC_ENABLE_SPR) { draw_sprites(bitmap,cliprect, 2); }
368368   if(SEIBU_CRTC_ENABLE_SC2) { m_sc2_tilemap->draw(screen, bitmap, cliprect, 0,0); }
369   if(SEIBU_CRTC_ENABLE_SPR) { draw_sprites(screen.machine(), bitmap,cliprect, 1); }
369   if(SEIBU_CRTC_ENABLE_SPR) { draw_sprites(bitmap,cliprect, 1); }
370370   if(SEIBU_CRTC_ENABLE_SC1) { m_sc1_tilemap->draw(screen, bitmap, cliprect, 0,0); }
371   if(SEIBU_CRTC_ENABLE_SPR) { draw_sprites(screen.machine(), bitmap,cliprect, 0); }
371   if(SEIBU_CRTC_ENABLE_SPR) { draw_sprites(bitmap,cliprect, 0); }
372372   if(SEIBU_CRTC_ENABLE_SC3) { m_sc3_tilemap->draw(screen, bitmap, cliprect, 0,0); }
373   if(SEIBU_CRTC_ENABLE_SPR) { draw_sprites(screen.machine(), bitmap,cliprect, 3); }
373   if(SEIBU_CRTC_ENABLE_SPR) { draw_sprites(bitmap,cliprect, 3); }
374374
375375   return 0;
376376}
trunk/src/mame/drivers/firebeat.c
r30658r30659
603603{
604604   bitmap.fill(0, cliprect);
605605
606   if ((core_strnicmp(screen.machine().system().name, "popn", 4) == 0) || (core_strnicmp(screen.machine().system().name, "bm3", 3) == 0))
606   if ((core_strnicmp(machine().system().name, "popn", 4) == 0) || (core_strnicmp(machine().system().name, "bm3", 3) == 0))
607607   {
608608      gcu_exec_display_list( bitmap, cliprect, chip, 0x1f80000);
609609   }
r30658r30659
633633   if (m_tick >= 5)
634634   {
635635      m_tick = 0;
636      if (screen.machine().input().code_pressed(KEYCODE_0))
636      if (machine().input().code_pressed(KEYCODE_0))
637637      {
638638         m_layer++;
639639         if (m_layer > 2)
r30658r30659
643643      }
644644
645645      /*
646      if (screen.machine().input().code_pressed_once(KEYCODE_9))
646      if (machine().input().code_pressed_once(KEYCODE_9))
647647      {
648648          FILE *file = fopen("vram0.bin", "wb");
649649          int i;
trunk/src/mame/drivers/raiden2.c
r30658r30659
514514}
515515
516516
517UINT8 raiden2_state::cop_calculate_collsion_detection(running_machine &machine)
517UINT8 raiden2_state::cop_calculate_collsion_detection()
518518{
519519   static UINT8 res;
520520
r30658r30659
689689
690690      /* do the math */
691691      cop_take_hit_box_params(0);
692      cop_hit_status = cop_calculate_collsion_detection(space.machine());
692      cop_hit_status = cop_calculate_collsion_detection();
693693      break;
694694
695695   case 0xb900:
r30658r30659
699699
700700      /* do the math */
701701      cop_take_hit_box_params(1);
702      cop_hit_status = cop_calculate_collsion_detection(space.machine());
702      cop_hit_status = cop_calculate_collsion_detection();
703703      break;
704704
705705   default:
r30658r30659
722722
723723/* SPRITE DRAWING (move to video file) */
724724
725void raiden2_state::draw_sprites(running_machine &machine, bitmap_ind16 &bitmap, const rectangle &cliprect ,int pri_mask )
725void raiden2_state::draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect ,int pri_mask )
726726{
727727   UINT16 *source = sprites + sprites_cur_start/2 - 4;
728728
r30658r30659
10301030   //if (!machine().input().code_pressed(KEYCODE_S))
10311031   {
10321032      if (!(raiden2_tilemap_enable & 0x10))
1033         draw_sprites(machine(), bitmap, cliprect, 0);
1033         draw_sprites(bitmap, cliprect, 0);
10341034   }
10351035
10361036   //if (!machine().input().code_pressed(KEYCODE_A))
trunk/src/mame/drivers/wyvernf0.c
r30658r30659
237237   int layers_ctrl = -1;
238238
239239#ifdef MAME_DEBUG
240if (screen.machine().input().code_pressed(KEYCODE_Z))
240if (machine().input().code_pressed(KEYCODE_Z))
241241{
242242   int msk = 0;
243   if (screen.machine().input().code_pressed(KEYCODE_Q))   msk |= 1;
244   if (screen.machine().input().code_pressed(KEYCODE_W))   msk |= 2;
245   if (screen.machine().input().code_pressed(KEYCODE_A))   msk |= 4;
246   if (screen.machine().input().code_pressed(KEYCODE_S))   msk |= 8;
243   if (machine().input().code_pressed(KEYCODE_Q))   msk |= 1;
244   if (machine().input().code_pressed(KEYCODE_W))   msk |= 2;
245   if (machine().input().code_pressed(KEYCODE_A))   msk |= 4;
246   if (machine().input().code_pressed(KEYCODE_S))   msk |= 8;
247247   if (msk != 0) layers_ctrl &= msk;
248248
249249   popmessage("fg:%02x %02x bg:%02x %02x ROM:%02x RAM:%02x",
trunk/src/mame/includes/tubep.h
r30658r30659
111111protected:
112112   virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr);
113113};
114
115
116/*----------- defined in video/tubep.c -----------*/
117void tubep_vblank_end(running_machine &machine);
trunk/src/mame/includes/raiden2.h
r30658r30659
134134   UINT16 cop_hit_status;
135135   INT16 cop_hit_val_x,cop_hit_val_y,cop_hit_val_z,cop_hit_val_unk;
136136
137   void draw_sprites(running_machine &machine, bitmap_ind16 &bitmap, const rectangle &cliprect ,int pri_mask );
138   UINT8 cop_calculate_collsion_detection(running_machine &machine);
137   void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect ,int pri_mask );
138   UINT8 cop_calculate_collsion_detection();
139139   void cop_take_hit_box_params(UINT8 offs);
140140
141141   DECLARE_WRITE16_MEMBER(cop_sort_lookup_hi_w);
trunk/src/mame/video/konamigx.c
r30658r30659
807807         if (width>512) // vsnetscr case
808808            pixeldouble_output = 1;
809809
810         K053936GP_0_zoom_draw(screen.machine(), bitmap, cliprect, sub1, l, k, alpha, pixeldouble_output, m_k053936_0_ctrl_16, m_k053936_0_linectrl_16, m_k053936_0_ctrl, m_k053936_0_linectrl, m_palette);
810         K053936GP_0_zoom_draw(machine(), bitmap, cliprect, sub1, l, k, alpha, pixeldouble_output, m_k053936_0_ctrl_16, m_k053936_0_linectrl_16, m_k053936_0_ctrl, m_k053936_0_linectrl, m_palette);
811811      }
812812      else
813813      {
814         screen.machine().device<k053250_device>("k053250_1")->draw(bitmap, cliprect, vcblk[4]<<l, 0, screen.priority(), 0);
814         machine().device<k053250_device>("k053250_1")->draw(bitmap, cliprect, vcblk[4]<<l, 0, screen.priority(), 0);
815815      }
816816   }
817817}
r30658r30659
883883         }
884884      }
885885      else
886         screen.machine().device<k053250_device>("k053250_2")->draw(bitmap, cliprect, vcblk[5]<<l, 0, screen.priority(), 0);
886         machine().device<k053250_device>("k053250_2")->draw(bitmap, cliprect, vcblk[5]<<l, 0, screen.priority(), 0);
887887   }
888888}
889889
trunk/src/mame/video/fuukifg2.c
r30658r30659
216216
217217#ifdef MAME_DEBUG
218218#if 0
219if (screen.machine().input().code_pressed(KEYCODE_X))
219if (machine().input().code_pressed(KEYCODE_X))
220220{   /* Display some info on each sprite */
221221   char buf[40];
222222   sprintf(buf, "%Xx%X %X",xnum,ynum,(attr>>6)&3);
trunk/src/mame/video/hng64.c
r30658r30659
13411341   // press in sams64_2 attract mode for a nice debug screen from the game
13421342   // not sure how functional it is, and it doesn't appear to test everything (rowscroll modes etc.)
13431343   // but it could be useful
1344   if ( screen.machine().input().code_pressed_once(KEYCODE_L) )
1344   if ( machine().input().code_pressed_once(KEYCODE_L) )
13451345   {
13461346      address_space &space = m_maincpu->space(AS_PROGRAM);
13471347      space.write_byte(0x2f27c8, 0x2);
trunk/src/mame/video/gaelco3d.c
r30658r30659
348348
349349void gaelco3d_state::gaelco3d_render(screen_device &screen)
350350{
351   gaelco3d_state *state = screen.machine().driver_data<gaelco3d_state>();
352351   /* wait for any queued stuff to complete */
353352   m_poly->wait("Time to render");
354353
r30658r30659
359358}
360359#endif
361360
362   state->m_polydata_count = 0;
363   state->m_lastscan = -1;
361   m_polydata_count = 0;
362   m_lastscan = -1;
364363}
365364
366365
trunk/src/mame/video/seta.c
r30658r30659
850850
851851   flip ^= m_tilemaps_flip;
852852
853   screen.machine().tilemap().set_flip_all(flip ? (TILEMAP_FLIPX|TILEMAP_FLIPY) : 0 );
853   machine().tilemap().set_flip_all(flip ? (TILEMAP_FLIPX|TILEMAP_FLIPY) : 0 );
854854
855855   x_0     =   m_vctrl_0[ 0/2 ];
856856   y_0     =   m_vctrl_0[ 2/2 ];
trunk/src/mame/video/argus.c
r30658r30659
893893#else
894894void argus_state::valtric_draw_mosaic(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
895895{
896   argus_state *state = screen.machine().driver_data<argus_state>();
897896   int step = 0x10 - (m_valtric_mosaic & 0x0f);
898897
899898   if (step == 1)
trunk/src/mess/includes/x1.h
r30658r30659
217217   TIMER_DEVICE_CALLBACK_MEMBER(x1_keyboard_callback);
218218   DECLARE_WRITE_LINE_MEMBER(fdc_drq_w);
219219
220   void x1_draw_pixel(running_machine &machine, bitmap_rgb32 &bitmap,int y,int x,UINT16 pen,UINT8 width,UINT8 height);
221   void draw_fgtilemap(running_machine &machine, bitmap_rgb32 &bitmap,const rectangle &cliprect);
222   void draw_gfxbitmap(running_machine &machine, bitmap_rgb32 &bitmap,const rectangle &cliprect, int plane,int pri);
223   UINT8 check_prev_height(running_machine &machine,int x,int y,int x_size);
224   UINT8 check_line_valid_height(running_machine &machine,int y,int x_size,int height);
220   void x1_draw_pixel(bitmap_rgb32 &bitmap,int y,int x,UINT16 pen,UINT8 width,UINT8 height);
221   void draw_fgtilemap(bitmap_rgb32 &bitmap,const rectangle &cliprect);
222   void draw_gfxbitmap(bitmap_rgb32 &bitmap,const rectangle &cliprect, int plane,int pri);
223   UINT8 check_prev_height(int x,int y,int x_size);
224   UINT8 check_line_valid_height(int y,int x_size,int height);
225225
226226   int priority_mixer_pri(int color);
227227   void cmt_command( UINT8 cmd );
trunk/src/mess/drivers/besta.c
r30658r30659
2020      if(VERBOSE_DBG>=N) \
2121      { \
2222         if( M ) \
23            logerror("%11.6f: %-24s",machine.time().as_double(),(char*)M ); \
23            logerror("%11.6f: %-24s",machine().time().as_double(),(char*)M ); \
2424         logerror A; \
2525      } \
2626   } while (0)
r30658r30659
5454#if 1
5555READ8_MEMBER( besta_state::mpcc_reg_r )
5656{
57   running_machine &machine = space.machine();
5857   UINT8 ret;
5958
6059   if (!(offset == 0 && !m_mpcc_regs[0])) {
6160   DBG_LOG(1,"mpcc_reg_r",("(%d) = %02X at %s\n", offset,
62      (offset > 31 ? -1 : m_mpcc_regs[offset]), machine.describe_context()));
61      (offset > 31 ? -1 : m_mpcc_regs[offset]), machine().describe_context()));
6362   }
6463
6564   switch (offset) {
r30658r30659
7675
7776WRITE8_MEMBER( besta_state::mpcc_reg_w )
7877{
79   running_machine &machine = space.machine();
80   device_t *devconf = space.machine().device(TERMINAL_TAG);
78   device_t *devconf = machine().device(TERMINAL_TAG);
8179
82   DBG_LOG(1,"mpcc_reg_w",("(%d) <- %02X at %s\n", offset, data, machine.describe_context()));
80   DBG_LOG(1,"mpcc_reg_w",("(%d) <- %02X at %s\n", offset, data, machine().describe_context()));
8381
8482   switch (offset) {
8583      case 2:
8684         m_term_data = data;
8785      case 10:
88         dynamic_cast<generic_terminal_device *>(devconf)->write(*devconf->machine().memory().first_space(), 0, data);
86         dynamic_cast<generic_terminal_device *>(devconf)->write(*machine().memory().first_space(), 0, data);
8987      default:
9088         m_mpcc_regs[offset] = data; break;
9189   }
trunk/src/mess/drivers/nakajies.c
r30658r30659
295295   virtual void machine_reset();
296296   UINT32 screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
297297
298   void nakajies_update_irqs( running_machine &machine );
298   void nakajies_update_irqs();
299299   DECLARE_READ8_MEMBER( irq_clear_r );
300300   DECLARE_WRITE8_MEMBER( irq_clear_w );
301301   DECLARE_READ8_MEMBER( irq_enable_r );
r30658r30659
405405  IRQ Handling
406406*********************************************/
407407
408void nakajies_state::nakajies_update_irqs( running_machine &machine )
408void nakajies_state::nakajies_update_irqs()
409409{
410410   // Hack: IRQ mask is temporarily disabled because doesn't allow the IRQ vector 0xFA
411411   // and 0xFB that are used for scan the kb, this need further investigation.
r30658r30659
442442WRITE8_MEMBER( nakajies_state::irq_clear_w )
443443{
444444   m_irq_active &= ~data;
445   nakajies_update_irqs(machine());
445   nakajies_update_irqs();
446446}
447447
448448
r30658r30659
455455WRITE8_MEMBER( nakajies_state::irq_enable_w )
456456{
457457   m_irq_enabled = data;
458   nakajies_update_irqs(machine());
458   nakajies_update_irqs();
459459}
460460
461461
r30658r30659
508508   UINT8 irqs = ioport( "debug" )->read();
509509
510510   m_irq_active |= irqs;
511   nakajies_update_irqs(machine());
511   nakajies_update_irqs();
512512}
513513
514514
r30658r30659
693693      m_irq_active |= 0x10;
694694   }
695695
696   nakajies_update_irqs(machine());
696   nakajies_update_irqs();
697697}
698698
699699
trunk/src/mess/drivers/x1.c
r30658r30659
229229   m_pal_4096 = auto_alloc_array_clear(machine(), UINT8, 0x1000*3);
230230}
231231
232void x1_state::x1_draw_pixel(running_machine &machine, bitmap_rgb32 &bitmap,int y,int x,UINT16 pen,UINT8 width,UINT8 height)
232void x1_state::x1_draw_pixel(bitmap_rgb32 &bitmap,int y,int x,UINT16 pen,UINT8 width,UINT8 height)
233233{
234   if(!machine.first_screen()->visible_area().contains(x, y))
234   if(!machine().first_screen()->visible_area().contains(x, y))
235235      return;
236236
237237   if(width && height)
r30658r30659
274274
275275
276276/* adjust tile index when we are under double height condition */
277UINT8 x1_state::check_prev_height(running_machine &machine,int x,int y,int x_size)
277UINT8 x1_state::check_prev_height(int x,int y,int x_size)
278278{
279279   UINT8 prev_tile = m_tvram[(x+((y-1)*x_size)+mc6845_start_addr) & 0x7ff];
280280   UINT8 cur_tile = m_tvram[(x+(y*x_size)+mc6845_start_addr) & 0x7ff];
r30658r30659
288288}
289289
290290/* Exoa II - Warroid: if double height isn't enabled on the first tile of the line then double height is disabled on everything else. */
291UINT8 x1_state::check_line_valid_height(running_machine &machine,int y,int x_size,int height)
291UINT8 x1_state::check_line_valid_height(int y,int x_size,int height)
292292{
293293   UINT8 line_attr = m_avram[(0+(y*x_size)+mc6845_start_addr) & 0x7ff];
294294
r30658r30659
298298   return height;
299299}
300300
301void x1_state::draw_fgtilemap(running_machine &machine, bitmap_rgb32 &bitmap,const rectangle &cliprect)
301void x1_state::draw_fgtilemap(bitmap_rgb32 &bitmap,const rectangle &cliprect)
302302{
303303   /*
304304       attribute table:
r30658r30659
364364
365365            dy = 0;
366366
367            height = check_line_valid_height(machine,y,x_size,height);
367            height = check_line_valid_height(y,x_size,height);
368368
369369            if(height && y)
370               dy = check_prev_height(machine,x,y,x_size);
370               dy = check_prev_height(x,y,x_size);
371371
372372            /* guess: assume that Kanji VRAM doesn't double the vertical size */
373373            if(knj_enable) { height = 0; }
r30658r30659
429429
430430                  pcg_pen = pen[2]<<2|pen[1]<<1|pen[0]<<0;
431431
432                  if(color & 0x10 && machine.first_screen()->frame_number() & 0x10) //reverse flickering
432                  if(color & 0x10 && machine().first_screen()->frame_number() & 0x10) //reverse flickering
433433                     pcg_pen^=7;
434434
435435                  if(pcg_pen == 0 && (!(color & 8)))
r30658r30659
447447                  if(res_y < cliprect.min_y || res_y > cliprect.max_y) // partial update, TODO: optimize
448448                     continue;
449449
450                  x1_draw_pixel(machine,bitmap,res_y,res_x,pcg_pen,width,0);
450                  x1_draw_pixel(bitmap,res_y,res_x,pcg_pen,width,0);
451451               }
452452            }
453453         }
r30658r30659
486486   return pri_mask_calc;
487487}
488488
489void x1_state::draw_gfxbitmap(running_machine &machine, bitmap_rgb32 &bitmap,const rectangle &cliprect, int plane,int pri)
489void x1_state::draw_gfxbitmap(bitmap_rgb32 &bitmap,const rectangle &cliprect, int plane,int pri)
490490{
491491   int xi,yi,x,y;
492492   int pen_r,pen_g,pen_b,color;
r30658r30659
530530               if(y*(mc6845_tile_height)+yi < cliprect.min_y || y*(mc6845_tile_height)+yi > cliprect.max_y) // partial update TODO: optimize
531531                  continue;
532532
533               x1_draw_pixel(machine,bitmap,y*(mc6845_tile_height)+yi,x*8+xi,color,0,0);
533               x1_draw_pixel(bitmap,y*(mc6845_tile_height)+yi,x*8+xi,color,0,0);
534534            }
535535         }
536536      }
r30658r30659
547547
548548//  popmessage("%d %d %d %d",mc6845_h_sync_pos,mc6845_v_sync_pos,mc6845_h_char_total,mc6845_v_char_total);
549549
550   draw_gfxbitmap(machine(),bitmap,cliprect,m_scrn_reg.disp_bank,m_scrn_reg.pri);
551   draw_fgtilemap(machine(),bitmap,cliprect);
552   draw_gfxbitmap(machine(),bitmap,cliprect,m_scrn_reg.disp_bank,m_scrn_reg.pri^0xff);
550   draw_gfxbitmap(bitmap,cliprect,m_scrn_reg.disp_bank,m_scrn_reg.pri);
551   draw_fgtilemap(bitmap,cliprect);
552   draw_gfxbitmap(bitmap,cliprect,m_scrn_reg.disp_bank,m_scrn_reg.pri^0xff);
553553
554554   return 0;
555555}

Previous 199869 Revisions Next


© 1997-2024 The MAME Team