Previous 199869 Revisions Next

r21969 Tuesday 19th March, 2013 at 11:39:56 UTC by Miodrag Milanović
run latest srcclean on rest of files (nw)
[src/mame/drivers]aristmk4.c bfm_sc2.c coolridr.c cyclemb.c deco_mlc.c dreambal.c gunpey.c ksys573.c mcr68.c metro.c namcos11.c rabbit.c seattle.c snk6502.c taito_l.c tmnt.c
[src/mame/machine]mexico86.c naomicrypt.c opwolf.c starwars.c tnzs.c toaplan1.c twincobr.c volfied.c
[src/mame/video]deco_mlc.c m10.c m58.c m62.c m92.c nmk16.c psikyo.c seta.c sidearms.c slapshot.c snk68.c ssv.c suna8.c system16.c taito_f2.c taitojc.c toaplan1.c toaplan2.c tumbleb.c twincobr.c vball.c
[src/mess/audio]channelf.c
[src/mess/drivers]apexc.c saturn.c supracan.c vtech1.c
[src/mess/machine]3c505.c sat_bram.h sat_dram.h sat_rom.c sat_rom.h sat_slot.c sat_slot.h

trunk/src/mess/audio/channelf.c
r21968r21969
1818      m_forced_ontime(0),
1919      m_min_ontime(0)
2020{
21
2221}
2322
2423//-------------------------------------------------
trunk/src/mess/machine/sat_bram.h
r21968r21969
1313public:
1414   // construction/destruction
1515   saturn_bram_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, UINT32 size);
16   
16
1717   // device-level overrides
1818   virtual void device_start();
1919   virtual void device_reset();
r21968r21969
2323   virtual void nvram_default() { }
2424   virtual void nvram_read(emu_file &file) { if (m_ext_bram != NULL) { file.read(m_ext_bram, m_ext_bram_size); } }
2525   virtual void nvram_write(emu_file &file) { if (m_ext_bram != NULL) { file.write(m_ext_bram, m_ext_bram_size); } }
26   
26
2727   // reading and writing
2828   virtual DECLARE_READ32_MEMBER(read_ext_bram);
2929   virtual DECLARE_WRITE32_MEMBER(write_ext_bram);
r21968r21969
3232   virtual DECLARE_WRITE8_MEMBER(write_ext_bram);
3333#endif
3434
35   UINT32 m_size;   // this is the size of Battery RAM in bytes
35   UINT32 m_size;  // this is the size of Battery RAM in bytes
3636};
3737
3838class saturn_bram4mb_device : public saturn_bram_device
r21968r21969
4040public:
4141   // construction/destruction
4242   saturn_bram4mb_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
43   
43
4444   // device-level overrides
4545   virtual void device_config_complete() { m_shortname = "sat_bram_4mb"; }
4646};
r21968r21969
5050public:
5151   // construction/destruction
5252   saturn_bram8mb_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
53   
53
5454   // device-level overrides
5555   virtual void device_config_complete() { m_shortname = "sat_bram_8mb"; }
5656};
r21968r21969
6060public:
6161   // construction/destruction
6262   saturn_bram16mb_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
63   
63
6464   // device-level overrides
6565   virtual void device_config_complete() { m_shortname = "sat_bram_16mb"; }
6666};
r21968r21969
7070public:
7171   // construction/destruction
7272   saturn_bram32mb_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
73   
73
7474   // device-level overrides
7575   virtual void device_config_complete() { m_shortname = "sat_bram_32mb"; }
7676};
trunk/src/mess/machine/sat_rom.c
r21968r21969
5151{
5252   return m_rom[offset & (m_rom_size - 1)];
5353}
54
trunk/src/mess/machine/sat_rom.h
r21968r21969
2020   virtual void device_start();
2121   virtual void device_reset();
2222   virtual void device_config_complete() { m_shortname = "sat_rom"; }
23   
23
2424   // reading and writing
2525   virtual DECLARE_READ32_MEMBER(read_rom);
2626};
trunk/src/mess/machine/sat_dram.h
r21968r21969
2424   virtual DECLARE_WRITE32_MEMBER(write_ext_dram0);
2525   virtual DECLARE_WRITE32_MEMBER(write_ext_dram1);
2626
27   UINT32 m_size;   // this is the size of DRAM0 + DRAM1 in dword units, so accesses to each bank go up to (m_size/2)-1
27   UINT32 m_size;  // this is the size of DRAM0 + DRAM1 in dword units, so accesses to each bank go up to (m_size/2)-1
2828};
2929
3030class saturn_dram8mb_device : public saturn_dram_device
r21968r21969
3232public:
3333   // construction/destruction
3434   saturn_dram8mb_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
35   
35
3636   // device-level overrides
3737   virtual void device_config_complete() { m_shortname = "sat_dram_8mb"; }
3838};
r21968r21969
4242public:
4343   // construction/destruction
4444   saturn_dram32mb_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
45   
45
4646   // device-level overrides
4747   virtual void device_config_complete() { m_shortname = "sat_dram_32mb"; }
4848};
trunk/src/mess/machine/3c505.c
r21968r21969
950950
951951void threecom3c505_device::recv_cb(UINT8 *data, int length)
952952{
953
954953   if (length < ETHERNET_ADDR_SIZE || !ethernet_packet_is_for_me(data))
955954   {
956955      // skip packet
trunk/src/mess/machine/sat_slot.c
r21968r21969
77    Despite the system having a single cart slot, 3 different kinds of cart can be inserted and
88    different memory areas are exposed to each of them
99    * ROM carts are accessed in range 0x02000000-0x023fffff and 0x22000000-0x24ffffff of both CPUs
10    * Data RAM carts are accessed in range 0x02400000-0x027fffff of both CPUs (each DRAM chip is
11     mapped independently, the 1st at 0x2400000, the second at 0x2600000)
10    * Data RAM carts are accessed in range 0x02400000-0x027fffff of both CPUs (each DRAM chip is
11      mapped independently, the 1st at 0x2400000, the second at 0x2600000)
1212    * Battery RAM carts are accessed in range 0x04000000-0x047fffff of both CPUs
13 
14    It is not clear what happens to accesses beyond the cart size (open bus? mirror of cart data?),
13
14    It is not clear what happens to accesses beyond the cart size (open bus? mirror of cart data?),
1515    e.g. if you have a 16Mbit battery cart inserted and the system tries to read/write above 0x04400000,
16    so for the moment the whole range is mapped and an error message is printed for out-of-bounds
16    so for the moment the whole range is mapped and an error message is printed for out-of-bounds
1717    accesses
18 
19 
18
19
2020 ***********************************************************************************************************/
2121
2222
r21968r21969
128128   {
129129      UINT32 *ROM;
130130      UINT32 len;
131     
131
132132      if (software_entry() != NULL)
133133         len = get_software_region_length("cart");
134134      else
r21968r21969
143143         fread(ROM, len);
144144
145145      // fix endianness....
146//      for (int i = 0; i < len; i += 4)
147//      {
148//         UINT8 tempa = ROM[i+0];
149//         UINT8 tempb = ROM[i+1];
150//         ROM[i+1] = ROM[i+2];
151//         ROM[i+0] = ROM[i+3];
152//         ROM[i+3] = tempa;
153//         ROM[i+2] = tempb;
154//      }
146//      for (int i = 0; i < len; i += 4)
147//      {
148//          UINT8 tempa = ROM[i+0];
149//          UINT8 tempb = ROM[i+1];
150//          ROM[i+1] = ROM[i+2];
151//          ROM[i+0] = ROM[i+3];
152//          ROM[i+3] = tempa;
153//          ROM[i+2] = tempb;
154//      }
155155      return IMAGE_INIT_PASS;
156156   }
157157
r21968r21969
242242{
243243   if (m_cart)
244244   {
245      return (m_cart->read_ext_bram(space, offset * 2) << 16)
245      return (m_cart->read_ext_bram(space, offset * 2) << 16)
246246               | m_cart->read_ext_bram(space, offset * 2 + 1);
247247   }
248248   else
trunk/src/mess/machine/sat_slot.h
r21968r21969
2929   virtual DECLARE_READ8_MEMBER(read_ext_bram) { return 0xff; }
3030   virtual DECLARE_WRITE8_MEMBER(write_ext_bram) {}
3131#endif
32   
32
3333   virtual int get_cart_type() { return m_cart_type; };
34   
35   
34
35
3636   void rom_alloc(running_machine &machine, UINT32 size);
3737   UINT32* get_rom_base() { return m_rom; }
3838   UINT32* get_ext_dram0_base() { return m_ext_dram0; }
r21968r21969
6161// ======================> sat_cart_slot_device
6262
6363class sat_cart_slot_device : public device_t,
64                      public device_image_interface,
65                      public device_slot_interface
64                        public device_image_interface,
65                        public device_slot_interface
6666{
6767public:
6868   // construction/destruction
r21968r21969
101101   virtual DECLARE_WRITE32_MEMBER(write_ext_dram1);
102102   virtual DECLARE_READ32_MEMBER(read_ext_bram);
103103   virtual DECLARE_WRITE32_MEMBER(write_ext_bram);
104   
104
105105//protected:
106106   device_sat_cart_interface*       m_cart;
107107};
r21968r21969
116116 ***************************************************************************/
117117
118118#define MCFG_SATURN_CARTRIDGE_ADD(_tag,_slot_intf,_def_slot,_def_inp) \
119   MCFG_DEVICE_ADD(_tag, SATURN_CART_SLOT, 0)   \
119   MCFG_DEVICE_ADD(_tag, SATURN_CART_SLOT, 0)  \
120120   MCFG_DEVICE_SLOT_INTERFACE(_slot_intf, _def_slot, _def_inp, false)
121121
122122
trunk/src/mess/drivers/supracan.c
r21968r21969
240240
241241int supracan_state::supracan_tilemap_get_region(int layer)
242242{
243
244243   // HACK!!!
245244   if (layer==2)
246245   {
r21968r21969
283282
284283void supracan_state::supracan_tilemap_get_info_common(int layer, tile_data &tileinfo, int count)
285284{
286
287285   UINT16* supracan_vram = m_vram;
288286
289287   UINT32 base = (m_tilemap_base_addr[layer]);
r21968r21969
337335// I wonder how different this really is.. my guess, not at all.
338336void supracan_state::supracan_tilemap_get_info_roz(int layer, tile_data &tileinfo, int count)
339337{
340
341338   UINT16* supracan_vram = m_vram;
342339
343340   UINT32 base = m_roz_base_addr;
trunk/src/mess/drivers/vtech1.c
r21968r21969
306306
307307void vtech1_state::vtech1_put_track()
308308{
309
310
311309   /* drive selected and image file ok? */
312310   if (m_drive >= 0 && floppy_get_device(machine(),m_drive) != NULL)
313311   {
trunk/src/mess/drivers/apexc.c
r21968r21969
630630
631631void apexc_state::apexc_teletyper_init()
632632{
633
634633   m_letters = FALSE;
635634   m_pos = 0;
636635}
trunk/src/mess/drivers/saturn.c
r21968r21969
8282            : saturn_state(mconfig, type, tag)
8383            , m_exp(*this, "exp")
8484   { }
85   
85
8686   DECLARE_INPUT_CHANGED_MEMBER(key_stroke);
8787   DECLARE_INPUT_CHANGED_MEMBER(nmi_reset);
8888   DECLARE_INPUT_CHANGED_MEMBER(tray_open);
r21968r21969
9090
9191   DECLARE_MACHINE_START(saturn);
9292   DECLARE_MACHINE_RESET(saturn);
93   
93
9494   DECLARE_READ8_MEMBER(saturn_cart_type_r);
9595   DECLARE_READ32_MEMBER( abus_dummy_r );
96   
96
9797   DECLARE_READ32_MEMBER(saturn_null_ram_r);
9898   DECLARE_WRITE32_MEMBER(saturn_null_ram_w);
9999
r21968r21969
101101   DECLARE_DRIVER_INIT(saturnus);
102102   DECLARE_DRIVER_INIT(saturneu);
103103   DECLARE_DRIVER_INIT(saturnjp);
104   
104
105105   required_device<sat_cart_slot_device> m_exp;
106106};
107107
r21968r21969
174174   AM_RANGE(0x00200000, 0x002fffff) AM_RAM AM_MIRROR(0x20100000) AM_SHARE("workram_l")
175175   AM_RANGE(0x01000000, 0x017fffff) AM_WRITE(saturn_minit_w)
176176   AM_RANGE(0x01800000, 0x01ffffff) AM_WRITE(saturn_sinit_w)
177//   AM_RANGE(0x02000000, 0x023fffff) AM_ROM // Cartridge area
177//  AM_RANGE(0x02000000, 0x023fffff) AM_ROM // Cartridge area
178178//  AM_RANGE(0x02400000, 0x027fffff) AM_RAM // External Data RAM area
179179//  AM_RANGE(0x04000000, 0x047fffff) AM_RAM // External Battery RAM area
180180   AM_RANGE(0x04fffffc, 0x04ffffff) AM_READ8(saturn_cart_type_r,0x000000ff)
r21968r21969
193193   AM_RANGE(0x05fe0000, 0x05fe00cf) AM_READWRITE(saturn_scu_r, saturn_scu_w)
194194   AM_RANGE(0x06000000, 0x060fffff) AM_RAM AM_MIRROR(0x21f00000) AM_SHARE("workram_h")
195195   AM_RANGE(0x20000000, 0x2007ffff) AM_ROM AM_SHARE("share6")  // bios mirror
196//   AM_RANGE(0x22000000, 0x24ffffff) AM_ROM // Cartridge area mirror
196//  AM_RANGE(0x22000000, 0x24ffffff) AM_ROM // Cartridge area mirror
197197   AM_RANGE(0x45000000, 0x46ffffff) AM_WRITENOP
198198   AM_RANGE(0x60000000, 0x600003ff) AM_WRITENOP // cache address array
199199   AM_RANGE(0xc0000000, 0xc00007ff) AM_RAM // cache data array, Dragon Ball Z sprites relies on this
r21968r21969
617617   m_audiocpu = downcast<legacy_cpu_device*>( machine().device<cpu_device>("audiocpu") );
618618
619619   scsp_set_ram_base(machine().device("scsp"), m_sound_ram);
620   
620
621621   machine().device("maincpu")->memory().space(AS_PROGRAM).install_readwrite_handler(0x02400000, 0x027fffff, read32_delegate(FUNC(sat_console_state::saturn_null_ram_r),this), write32_delegate(FUNC(sat_console_state::saturn_null_ram_w),this));
622622   machine().device("slave")->memory().space(AS_PROGRAM).install_readwrite_handler(0x02400000, 0x027fffff, read32_delegate(FUNC(sat_console_state::saturn_null_ram_r),this), write32_delegate(FUNC(sat_console_state::saturn_null_ram_w),this));
623   
623
624624   machine().device("maincpu")->memory().space(AS_PROGRAM).nop_readwrite(0x04000000, 0x047fffff);
625625   machine().device("slave")->memory().space(AS_PROGRAM).nop_readwrite(0x04000000, 0x047fffff);
626   
626
627627   if (m_exp)
628628   {
629629      switch (m_exp->get_cart_type())
630630      {
631         case 0x21:   // Battery RAM cart
631         case 0x21:  // Battery RAM cart
632632         case 0x22:
633633         case 0x23:
634634         case 0x24:
r21968r21969
637637            machine().device("slave")->memory().space(AS_PROGRAM).install_read_handler(0x04000000, 0x047fffff, read32_delegate(FUNC(device_sat_cart_interface::read_ext_bram), m_exp->m_cart));
638638            machine().device("slave")->memory().space(AS_PROGRAM).install_write_handler(0x04000000, 0x047fffff, write32_delegate(FUNC(device_sat_cart_interface::write_ext_bram), m_exp->m_cart));
639639            break;
640         case 0x5a:   // Data RAM cart
640         case 0x5a:  // Data RAM cart
641641         case 0x5c:
642642            machine().device("maincpu")->memory().space(AS_PROGRAM).install_read_handler(0x02400000, 0x025fffff, read32_delegate(FUNC(device_sat_cart_interface::read_ext_dram0), m_exp->m_cart));
643643            machine().device("maincpu")->memory().space(AS_PROGRAM).install_write_handler(0x02400000, 0x025fffff, write32_delegate(FUNC(device_sat_cart_interface::write_ext_dram0), m_exp->m_cart));
r21968r21969
648648            machine().device("slave")->memory().space(AS_PROGRAM).install_read_handler(0x02600000, 0x027fffff, read32_delegate(FUNC(device_sat_cart_interface::read_ext_dram1), m_exp->m_cart));
649649            machine().device("slave")->memory().space(AS_PROGRAM).install_write_handler(0x02600000, 0x027fffff, write32_delegate(FUNC(device_sat_cart_interface::write_ext_dram1), m_exp->m_cart));
650650            break;
651         case 0:   // ROM cart + mirror
651         case 0: // ROM cart + mirror
652652            machine().device("maincpu")->memory().space(AS_PROGRAM).install_read_handler(0x02000000, 0x023fffff, read32_delegate(FUNC(device_sat_cart_interface::read_rom), m_exp->m_cart));
653653            machine().device("maincpu")->memory().space(AS_PROGRAM).install_read_handler(0x22000000, 0x24ffffff, read32_delegate(FUNC(device_sat_cart_interface::read_rom), m_exp->m_cart));
654654            machine().device("slave")->memory().space(AS_PROGRAM).install_read_handler(0x02000000, 0x023fffff, read32_delegate(FUNC(device_sat_cart_interface::read_rom), m_exp->m_cart));
r21968r21969
656656            break;
657657      }
658658   }
659   
659
660660   // save states
661661   state_save_register_global_pointer(machine(), m_scu_regs, 0x100/4);
662662   state_save_register_global_pointer(machine(), m_scsp_regs,  0x1000/2);
trunk/src/mame/machine/volfied.c
r21968r21969
480480
481481void volfied_state::volfied_cchip_init(  )
482482{
483
484483   m_cchip_ram = auto_alloc_array_clear(machine(), UINT8, 0x400 * 8);
485484
486485   save_item(NAME(m_current_bank));
r21968r21969
492491
493492void volfied_state::volfied_cchip_reset(  )
494493{
495
496494   m_current_bank = 0;
497495   m_current_flag = 0;
498496   m_cc_port = 0;
trunk/src/mame/machine/naomicrypt.c
r21968r21969
2626
2727static const struct game_keys keys_table[] =
2828{
29
3029   // name             key              gameid #         year
3130// M2
3231   { "wldkicks",        0x00ae2901 }, // 25209801    2000
r21968r21969
111110
112111UINT32 get_naomi_key(running_machine &machine)
113112{
114
115113   const char *gamename = machine.system().name;
116114   const struct game_keys *k = &keys_table[0];
117115
trunk/src/mame/machine/toaplan1.c
r21968r21969
130130
131131void toaplan1_state::demonwld_dsp(int enable)
132132{
133
134133   m_dsp_on = enable;
135134   if (enable)
136135   {
r21968r21969
381380
382381void toaplan1_state::toaplan1_driver_savestate()
383382{
384
385383   save_item(NAME(m_intenable));
386384   save_item(NAME(m_coin_count));
387385   save_item(NAME(m_unk_reset_port));
r21968r21969
403401
404402void toaplan1_state::demonwld_driver_savestate()
405403{
406
407404   save_item(NAME(m_dsp_on));
408405   save_item(NAME(m_dsp_addr_w));
409406   save_item(NAME(m_main_ram_seg));
r21968r21969
422419
423420void toaplan1_state::vimana_driver_savestate()
424421{
425
426422   save_item(NAME(m_vimana_coins[0]));
427423   save_item(NAME(m_vimana_coins[1]));
428424   save_item(NAME(m_vimana_credits));
trunk/src/mame/machine/tnzs.c
r21968r21969
119119
120120void tnzs_state::mcu_reset(  )
121121{
122
123122   m_mcu_initializing = 3;
124123   m_mcu_coinage_init = 0;
125124   m_mcu_coinage[0] = 1;
r21968r21969
135134
136135void tnzs_state::mcu_handle_coins( int coin )
137136{
138
139137   /* The coin inputs and coin counters are managed by the i8742 mcu. */
140138   /* Here we simulate it. */
141139   /* Credits are limited to 9, so more coins should be rejected */
trunk/src/mame/machine/starwars.c
r21968r21969
199199
200200void starwars_state::run_mproc()
201201{
202
203202   int RAMWORD = 0;
204203   int MA_byte;
205204   int tmp;
trunk/src/mame/machine/twincobr.c
r21968r21969
320320
321321void twincobr_state::twincobr_driver_savestate()
322322{
323
324323   state_save_register_global(machine(), m_toaplan_main_cpu);
325324   state_save_register_global(machine(), m_intenable);
326325   state_save_register_global(machine(), m_dsp_on);
trunk/src/mame/machine/mexico86.c
r21968r21969
4343
4444void mexico86_state::mcu_simulate(  )
4545{
46
4746   if (!m_mcu_initialised)
4847   {
4948      if (m_protection_ram[0x01] == 0x00)
trunk/src/mame/machine/opwolf.c
r21968r21969
314314
315315void opwolf_state::updateDifficulty( int mode )
316316{
317
318317   // The game is made up of 6 rounds, when you complete the
319318   // sixth you return to the start but with harder difficulty.
320319   if (mode == 0)
r21968r21969
709708
710709void opwolf_state::opwolf_cchip_init(  )
711710{
712
713711   m_cchip_ram.allocate(0x400 * 8);
714712
715713   save_item(NAME(m_current_bank));
trunk/src/mame/video/snk68.c
r21968r21969
5050
5151void snk68_state::common_video_start()
5252{
53
5453   m_fg_tilemap->set_transparent_pen(0);
5554
5655   m_fg_tilemap->set_scrolldx(0, machine().primary_screen->width() - 256);
trunk/src/mame/video/slapshot.c
r21968r21969
377377
378378void slapshot_state::taito_handle_sprite_buffering(  )
379379{
380
381380   if (m_prepare_sprites)   /* no buffering */
382381   {
383382      memcpy(m_spriteram_buffered, m_spriteram, m_spriteram.bytes());
trunk/src/mame/video/sidearms.c
r21968r21969
318318
319319void sidearms_state::draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect)
320320{
321
322321   if (m_gameid == 2 || m_gameid == 3) // Dyger and Whizz have simple front-to-back sprite priority
323322      draw_sprites_region(bitmap, cliprect, 0x0000, 0x1000);
324323   else
trunk/src/mame/video/tumbleb.c
r21968r21969
284284
285285void tumbleb_state::tumbleb_draw_common(bitmap_ind16 &bitmap, const rectangle &cliprect, int pf1x_offs, int pf1y_offs, int pf2x_offs, int pf2y_offs)
286286{
287
288287   m_pf1_tilemap->set_scrollx(0, m_control_0[1] + pf1x_offs);
289288   m_pf1_tilemap->set_scrolly(0, m_control_0[2] + pf1y_offs);
290289   m_pf1_alt_tilemap->set_scrollx(0, m_control_0[1] + pf1x_offs);
trunk/src/mame/video/m92.c
r21968r21969
505505
506506void m92_state::m92_draw_tiles(bitmap_ind16 &bitmap,const rectangle &cliprect)
507507{
508
509508   if ((~m_pf_master_control[2] >> 4) & 1)
510509   {
511510      m_pf_layer[2].wide_tmap->draw(bitmap, cliprect, TILEMAP_DRAW_LAYER1, 0);
trunk/src/mame/video/m58.c
r21968r21969
267267
268268void m58_state::draw_panel( bitmap_ind16 &bitmap, const rectangle &cliprect )
269269{
270
271270   if (!*m_yard_score_panel_disabled)
272271   {
273272      const rectangle clippanel(26*8, 32*8-1, 1*8, 31*8-1);
trunk/src/mame/video/m10.c
r21968r21969
8686
8787inline void m10_state::plot_pixel_m10( bitmap_ind16 &bm, int x, int y, int col )
8888{
89
9089   if (!m_flip)
9190      bm.pix16(y, x) = col;
9291   else
trunk/src/mame/video/taito_f2.c
r21968r21969
817817
818818void taitof2_state::taitof2_handle_sprite_buffering(  )
819819{
820
821820   if (m_prepare_sprites)   /* no buffering */
822821   {
823822      memcpy(m_spriteram_buffered, m_spriteram, m_spriteram.bytes());
r21968r21969
10521051
10531052void taitof2_state::draw_roz_layer( bitmap_ind16 &bitmap, const rectangle &cliprect, UINT32 priority)
10541053{
1055
10561054   if (m_tc0280grd != NULL)
10571055      tc0280grd_zoom_draw(m_tc0280grd, bitmap, cliprect, m_pivot_xdisp, m_pivot_ydisp, priority);
10581056
trunk/src/mame/video/nmk16.c
r21968r21969
953953
954954void nmk16_state::redhawki_video_update(bitmap_ind16 &bitmap, const rectangle &cliprect )
955955{
956
957956   m_bg_tilemap0->set_scrollx(0, m_afega_scroll_1[0]&0xff);
958957   m_bg_tilemap0->set_scrolly(0, m_afega_scroll_1[1]&0xff);
959958
trunk/src/mame/video/deco_mlc.c
r21968r21969
4141      int transparent_color,int use8bpp,
4242      int scalex, int alpha, int srcline  )
4343{
44
4544   if (!scalex) return;
4645
4746   /*
r21968r21969
372371
373372         if (raster_select==1 || raster_select==2 || raster_select==3)
374373         {
375
376374            int irq_base_reg; /* 6, 9, 12  are possible */
377375            if (raster_select== 1) irq_base_reg = 6;    // OK upper screen.. left?
378376            else if (raster_select== 2) irq_base_reg = 9; // OK upper screen.. main / center
r21968r21969
455453
456454
457455      for (bx=0; bx<w; bx++) {
458
459456         int realxbase = xbase + bx * xinc;
460457         int count = 0;
461458         if (fx)
trunk/src/mame/video/twincobr.c
r21968r21969
146146
147147void twincobr_state::twincobr_display(int enable)
148148{
149
150149   m_display_on = enable;
151150   m_bg_tilemap->enable(enable);
152151   m_fg_tilemap->enable(enable);
r21968r21969
155154
156155void twincobr_state::twincobr_flipscreen(int flip)
157156{
158
159157   machine().tilemap().set_flip_all((flip ? (TILEMAP_FLIPY | TILEMAP_FLIPX) : 0));
160158   m_flip_screen = flip;
161159   if (flip) {
r21968r21969
350348
351349void twincobr_state::wardner_sprite_priority_hack()
352350{
353
354351   if (m_fgscrollx != m_bgscrollx) {
355352      UINT16 *buffered_spriteram16 = reinterpret_cast<UINT16 *>(m_spriteram8->buffer());
356353      if ((m_fgscrollx==0x1c9) || (m_flip_screen && (m_fgscrollx==0x17a))) { /* in the shop ? */
trunk/src/mame/video/suna8.c
r21968r21969
220220
221221void suna8_state::draw_normal_sprites(bitmap_ind16 &bitmap,const rectangle &cliprect, int which)
222222{
223
224223   UINT8 *spriteram = m_spriteram + which * 0x2000 * 2;
225224
226225   int i;
trunk/src/mame/video/system16.c
r21968r21969
3232
3333void segas1x_bootleg_state::setup_system16_bootleg_spritebanking(  )
3434{
35
3635   if (m_spritebank_type == 1)
3736   {
3837      static const UINT8 default_banklist[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 };
trunk/src/mame/video/ssv.c
r21968r21969
986986
987987void ssv_state::ssv_enable_video(int enable)
988988{
989
990989   m_enable_video = enable;
991990}
992991
trunk/src/mame/video/psikyo.c
r21968r21969
134134
135135void psikyo_state::psikyo_switch_banks( int tmap, int bank )
136136{
137
138137   if ((tmap == 0) && (bank != m_tilemap_0_bank))
139138   {
140139      m_tilemap_0_bank = bank;
r21968r21969
256255
257256void psikyo_state::draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect, int trans_pen )
258257{
259
260258   /* tile layers 0 & 1 have priorities 1 & 2 */
261259   static const int pri[] = { 0, 0xfc, 0xff, 0xff };
262260   int offs;
r21968r21969
374372// it might be a problem with the actual bootleg
375373void psikyo_state::draw_sprites_bootleg( bitmap_ind16 &bitmap, const rectangle &cliprect, int trans_pen )
376374{
377
378375   /* tile layers 0 & 1 have priorities 1 & 2 */
379376   static const int pri[] = { 0, 0xfc, 0xff, 0xff };
380377   int offs;
trunk/src/mame/video/taitojc.c
r21968r21969
753753
754754void taitojc_state::taitojc_clear_frame()
755755{
756
757756   m_framebuffer.fill(0, machine().primary_screen->visible_area());
758757   m_zbuffer.fill(0xffff, machine().primary_screen->visible_area());
759758}
trunk/src/mame/video/toaplan1.c
r21968r21969
208208
209209void toaplan1_state::toaplan1_create_tilemaps()
210210{
211
212211   m_pf1_tilemap = &machine().tilemap().create(tilemap_get_info_delegate(FUNC(toaplan1_state::get_pf1_tile_info),this), TILEMAP_SCAN_ROWS, 8, 8, 64, 64);
213212   m_pf2_tilemap = &machine().tilemap().create(tilemap_get_info_delegate(FUNC(toaplan1_state::get_pf2_tile_info),this), TILEMAP_SCAN_ROWS, 8, 8, 64, 64);
214213   m_pf3_tilemap = &machine().tilemap().create(tilemap_get_info_delegate(FUNC(toaplan1_state::get_pf3_tile_info),this), TILEMAP_SCAN_ROWS, 8, 8, 64, 64);
r21968r21969
225224
226225void toaplan1_state::toaplan1_paletteram_alloc()
227226{
228
229227   UINT32 bytes = (m_colorram1.bytes() + m_colorram2.bytes())/2;
230228   m_generic_paletteram_16.allocate(bytes);
231229}
232230
233231void toaplan1_state::toaplan1_vram_alloc()
234232{
235
236233   m_pf1_tilevram16 = auto_alloc_array_clear(machine(), UINT16, TOAPLAN1_TILEVRAM_SIZE/2);
237234   m_pf2_tilevram16 = auto_alloc_array_clear(machine(), UINT16, TOAPLAN1_TILEVRAM_SIZE/2);
238235   m_pf3_tilevram16 = auto_alloc_array_clear(machine(), UINT16, TOAPLAN1_TILEVRAM_SIZE/2);
r21968r21969
254251
255252void toaplan1_state::toaplan1_spritevram_alloc()
256253{
257
258254   m_spriteram.allocate(TOAPLAN1_SPRITERAM_SIZE/2);
259255   m_buffered_spriteram = auto_alloc_array_clear(machine(), UINT16, TOAPLAN1_SPRITERAM_SIZE/2);
260256   m_spritesizeram16 = auto_alloc_array_clear(machine(), UINT16, TOAPLAN1_SPRITESIZERAM_SIZE/2);
r21968r21969
267263
268264void toaplan1_state::toaplan1_set_scrolls()
269265{
270
271266   m_pf1_tilemap->set_scrollx(0, (m_pf1_scrollx >> 7) - (m_tiles_offsetx - m_scrollx_offs1));
272267   m_pf2_tilemap->set_scrollx(0, (m_pf2_scrollx >> 7) - (m_tiles_offsetx - m_scrollx_offs2));
273268   m_pf3_tilemap->set_scrollx(0, (m_pf3_scrollx >> 7) - (m_tiles_offsetx - m_scrollx_offs3));
r21968r21969
294289
295290void toaplan1_state::register_common()
296291{
297
298292   save_item(NAME(m_scrollx_offs1));
299293   save_item(NAME(m_scrollx_offs2));
300294   save_item(NAME(m_scrollx_offs3));
trunk/src/mame/video/toaplan2.c
r21968r21969
5757
5858void toaplan2_state::truxton2_create_tx_tilemap()
5959{
60
6160   m_tx_tilemap = &machine().tilemap().create(tilemap_get_info_delegate(FUNC(toaplan2_state::get_text_tile_info),this), TILEMAP_SCAN_ROWS, 8, 8, 64, 32);
6261   m_tx_tilemap->set_scroll_rows(8*32); /* line scrolling */
6362   m_tx_tilemap->set_scroll_cols(1);
r21968r21969
6665
6766void toaplan2_state::register_state_save()
6867{
69
7068   save_item(NAME(m_tx_flip));
7169}
7270
trunk/src/mame/video/seta.c
r21968r21969
508508
509509int setac_gfxbank_callback( running_machine &machine, UINT16 code, UINT8 color )
510510{
511
512511   int bank    =   (color & 0x06) >> 1;
513512   code = (code & 0x3fff) + (bank * 0x4000);
514513
trunk/src/mame/video/vball.c
r21968r21969
8383
8484void vball_state::vb_spprombank_w( int bank )
8585{
86
8786   int i;
8887   UINT8* color_prom;
8988
trunk/src/mame/video/m62.c
r21968r21969
285285
286286void m62_state::register_savestate(  )
287287{
288
289288   save_item(NAME(m_flipscreen));
290289   save_item(NAME(m_m62_background_hscroll));
291290   save_item(NAME(m_m62_background_vscroll));
trunk/src/mame/drivers/mcr68.c
r21968r21969
15361536
15371537void mcr68_state::mcr68_common_init(int clip, int xoffset)
15381538{
1539
15401539   m_sprite_clip = clip;
15411540   m_sprite_xoffset = xoffset;
15421541
trunk/src/mame/drivers/aristmk4.c
r21968r21969
343343
344344void aristmk4_state::uBackgroundColour()
345345{
346
347346   /* SW7 can be set when the main door is open, this allows the colours for the background
348347   to be adjusted whilst the machine is running.
349348
trunk/src/mame/drivers/coolridr.c
r21968r21969
319319      m_io_an7(*this, "AN7"),
320320      m_io_config(*this, "CONFIG")
321321   {
322
323322   }
324323
325324   // Blitter state
r21968r21969
521520};
522521
523522#define PRINT_BLIT_STUFF \
524   printf("type blit %08x %08x(%d, %03x) %08x(%02x, %03x) %08x(%06x) %08x(%08x, %d, %d, %d) %08x(%d,%d) %04x %04x %04x %04x %08x %08x %d %d\n", blit0, blit1_unused,b1mode,b1colorNumber, blit2_unused,b2tpen,b2colorNumber, blit3_unused,b3romoffset, blit4_unused, blit4blendlevel, blit_flipy,blit_rotate, blit_flipx, blit5_unused, indirect_tile_enable, indirect_zoom_enable, vCellCount, hCellCount, vZoom, hZoom, blit10, textlookup, vPosition, hPosition); \
523   printf("type blit %08x %08x(%d, %03x) %08x(%02x, %03x) %08x(%06x) %08x(%08x, %d, %d, %d) %08x(%d,%d) %04x %04x %04x %04x %08x %08x %d %d\n", blit0, blit1_unused,b1mode,b1colorNumber, blit2_unused,b2tpen,b2colorNumber, blit3_unused,b3romoffset, blit4_unused, blit4blendlevel, blit_flipy,blit_rotate, blit_flipx, blit5_unused, indirect_tile_enable, indirect_zoom_enable, vCellCount, hCellCount, vZoom, hZoom, blit10, textlookup, vPosition, hPosition);
525524
526525
527
528526/* video */
529527
530528#define VRAM_SIZE 0x100000
r21968r21969
10141012            /* if (object->screen==0) printf("marking offset %04x as decoded (sprite number %08x ptr %08x)\n", v*used_hCellCount + h, spriteNumber, ((UINT64)(void*)tempshape)&0xffffffff);*/ \
10151013         } \
10161014      } \
1017   } \
1015   }
10181016
10191017
1020
10211018#define CHECK_DECODE \
10221019   if (used_flipy) \
10231020   { \
r21968r21969
10461043            continue; \
10471044   } \
10481045   else \
1049      if (blankcount==0) continue; \
1046      if (blankcount==0) continue;
10501047
10511048
1052
10531049#define GET_SPRITE_NUMBER \
10541050   int lookupnum; \
10551051   /* with this bit enabled the tile numbers gets looked up using 'data' (which would be blit11) (eg 03f40000 for startup text) */ \
r21968r21969
10961092         } \
10971093      } \
10981094   } \
1099   UINT32 spriteNumber = (expanded_10bit_gfx[ (b3romoffset) + (lookupnum<<1) +0 ] << 10) | (expanded_10bit_gfx[ (b3romoffset) + (lookupnum<<1) + 1 ]); \
1095   UINT32 spriteNumber = (expanded_10bit_gfx[ (b3romoffset) + (lookupnum<<1) +0 ] << 10) | (expanded_10bit_gfx[ (b3romoffset) + (lookupnum<<1) + 1 ]);
11001096
1101
11021097#define DO_XCLIP_REAL \
11031098   if (drawx>clipmaxX) { break; } \
1104   if (drawx<clipminX) { drawx++; continue; } \
1099   if (drawx<clipminX) { drawx++; continue; }
1100#define DO_XCLIP_NONE
11051101
1106#define DO_XCLIP_NONE \
1107
1108
11091102#define GET_CURRENT_LINESCROLLZOOM \
11101103   UINT32 dword = object->indirect_zoom[v*16+realy]; \
11111104   UINT16 hZoomTable = hZoom + (dword>>16); \
r21968r21969
11321125   case 3: \
11331126      /* invalid? */ \
11341127      break; \
1135   } \
1128   }
11361129
11371130
11381131
1139
11401132#define YXLOOP \
11411133   int drawy = pixelOffsetY; \
11421134   for (int y = 0; y < blockhigh; y++) \
r21968r21969
11791171         } \
11801172      } \
11811173      drawy++; \
1182   } \
1174   }
11831175
1184
11851176#define YXLOOP_NO_LINEZOOM \
11861177   for (int y = 0; y < blockhigh; y++) \
11871178   { \
r21968r21969
11981189         GET_PIX; \
11991190         DRAW_PIX \
12001191      } \
1201   } \
1192   }
12021193
12031194
1204
12051195#define YXLOOP_NO_ZOOM \
12061196   for (int realy = 0; realy < 16; realy++) \
12071197   { \
r21968r21969
12161206         GET_PIX; \
12171207         DRAW_PIX \
12181208      } \
1219   } \
1209   }
12201210
12211211
1222
12231212/* the two tables that the patent claims are located at:
12241213    0x1ec800
12251214    0x1f0000
r21968r21969
12711260         } \
12721261      } \
12731262   } \
1274   drawx++; \
1263   drawx++;
12751264
12761265
1277
12781266//object->rearranged_16bit_gfx
12791267//object->expanded_10bit_gfx
12801268
12811269#define GET_PIX_ROTATED \
1282      UINT16 pix = tempshape[realx*16+realy]; \
1283
1270      UINT16 pix = tempshape[realx*16+realy];
12841271#define GET_PIX_NORMAL \
1285      UINT16 pix = tempshape[realy*16+realx]; \
1272      UINT16 pix = tempshape[realy*16+realx];
12861273
1287
12881274void *coolridr_state::draw_object_threaded(void *param, int threadid)
12891275{
12901276   cool_render_object *object = reinterpret_cast<cool_render_object *>(param);
r21968r21969
18921878   // Splat some sprites
18931879   for (int v = 0; v < used_vCellCount; v++)
18941880   {
1895
1896
18971881      const int pixelOffsetY = ((vPosition) + (v* 16 * vZoom)) / 0x40;
18981882      const int pixelOffsetnextY = ((vPosition) + ((v+1)* 16 * vZoom)) / 0x40;
18991883
r21968r21969
19211905
19221906      if (!indirect_zoom_enable)
19231907      {
1924
19251908         int sizex = used_hCellCount * 16 * hZoom;
19261909
19271910         hPosition = hPositionx * 0x40;
r21968r21969
19481931      UINT32 lastSpriteNumber = 0xffffffff;
19491932      UINT16 blankcount = 0;
19501933      int color_offs = (0x7b20 + (b1colorNumber & 0x7ff))*0x40 * 5; /* yes, * 5 */ \
1951      int color_offs2 = (0x7b20 + (b2colorNumber & 0x7ff))*0x40 * 5; \
1952
1934      int color_offs2 = (0x7b20 + (b2colorNumber & 0x7ff))*0x40 * 5;
19531935      for (int h = 0; h < used_hCellCount; h++)
19541936      {
1955
19561937         int current_decoded = false;
19571938
19581939         if (!indirect_tile_enable && size < DECODECACHE_NUMSPRITETILES)
r21968r21969
21872168   }
21882169   else if (blit0==1)
21892170   {
2190
2191
2192
21932171      if (m_blitterMode&0x80)
21942172      {
21952173         // HACK...
r21968r21969
27102688
27112689      case 0x02:
27122690      {
2713
27142691         // writes 3d0dxxxx / 3d0exxxx before a level start.. offset for a transfer read at 0x400000c, stored in work RAM H
27152692
27162693         //printf("sysh1_unk_blit_w unhandled offset %04x %08x %08x\n", offset, data, mem_mask);
r21968r21969
34303407
34313408
34323409#define READ_COMPRESSED_ROM(chip) \
3433   m_compressedgfx[(chip)*0x400000 + romoffset] << 8 | m_compressedgfx[(chip)*0x0400000 + romoffset +1]; \
3434
3410   m_compressedgfx[(chip)*0x400000 + romoffset] << 8 | m_compressedgfx[(chip)*0x0400000 + romoffset +1];
34353411// this helps you feth the 20bit words from an address in the compressed data
34363412UINT32 coolridr_state::get_20bit_data(UINT32 romoffset, int _20bitwordnum)
34373413{
trunk/src/mame/drivers/gunpey.c
r21968r21969
10931093      {
10941094         if(rle == 8)
10951095         {
1096
10971096            // compressed stream format:
10981097            //
10991098            // byte 0 = source width   (data is often stored in fairly narrow columns)
r21968r21969
11261125
11271126            for (;;)
11281127            {
1129
11301128               int test = gunpey_state_get_stream_bits(2);
11311129               int data;
11321130               int getbits = 1;
r21968r21969
11631161                  //if (count<512)
11641162                  {
11651163                     {
1166
11671164                        if (test==0x0)
11681165                        {
11691166                           printf("00");
r21968r21969
15071504
15081505DRIVER_INIT_MEMBER(gunpey_state,gunpey)
15091506{
1510
15111507   m_blit_rom = memregion("blit_data")->base();
15121508   m_blit_rom2 = memregion("blit_data2")->base();
15131509
trunk/src/mame/drivers/namcos11.c
r21968r21969
871871
872872void namcos11_state::namcos11_init_common(int n_daughterboard)
873873{
874
875874   // C76 idle skipping, large speedboost
876875   if (C76_SPEEDUP)
877876   {
trunk/src/mame/drivers/snk6502.c
r21968r21969
305305
306306void snk6502_state::sasuke_start_counter()
307307{
308
309308   m_sasuke_counter = 0;
310309}
311310
trunk/src/mame/drivers/dreambal.c
r21968r21969
6565
6666UINT32 dreambal_state::screen_update_dreambal(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
6767{
68
6968   address_space &space = generic_space();
7069   UINT16 flip = deco16ic_pf_control_r(m_deco_tilegen1, space, 0, 0xffff);
7170
r21968r21969
291290
292291void dreambal_state::machine_reset()
293292{
294
295293}
296294
297295// xtals = 28.000, 9.8304
trunk/src/mame/drivers/metro.c
r21968r21969
62656265
62666266void metro_state::metro_common(  )
62676267{
6268
62696268   memset(m_requested_int, 0, ARRAY_LENGTH(m_requested_int));
62706269   m_vblank_bit = 0;
62716270   m_blitter_bit = 2;
trunk/src/mame/drivers/taito_l.c
r21968r21969
109109
110110void taitol_state::state_register(  )
111111{
112
113112   save_item(NAME(m_irq_adr_table));
114113   save_item(NAME(m_irq_enable));
115114   save_item(NAME(m_cur_rambank));
trunk/src/mame/drivers/cyclemb.c
r21968r21969
405405
406406void cyclemb_state::skydest_i8741_reset()
407407{
408
409408   m_mcu[0].rxd = 0;
410409   m_mcu[0].txd = 0;
411410   m_mcu[0].rst = 0;
trunk/src/mame/drivers/bfm_sc2.c
r21968r21969
22652265
22662266void bfm_sc2_state::sc2_common_init(int decrypt)
22672267{
2268
22692268   if (decrypt) bfm_decode_mainrom(machine(), "maincpu", m_codec_data);         // decode main rom
22702269
22712270   memset(m_sc2_Inputs, 0, sizeof(m_sc2_Inputs));  // clear all inputs
r21968r21969
38333832
38343833void bfm_sc2_state::sc2awp_common_init(int reels, int decrypt)
38353834{
3836
38373835   int n;
38383836   sc2_common_init(decrypt);
38393837   /* setup n default 96 half step reels */
r21968r21969
38483846
38493847void bfm_sc2_state::sc2awpdmd_common_init(int reels, int decrypt)
38503848{
3851
38523849   int n;
38533850   BFM_dm01_config(machine(), &dm01_interface);
38543851   sc2_common_init(decrypt);
trunk/src/mame/drivers/tmnt.c
r21968r21969
744744#if 1
745745inline UINT32 tmnt_state::tmnt2_get_word( UINT32 addr )
746746{
747
748747   if (addr <= 0x07ffff / 2)
749748      return(m_tmnt2_rom[addr]);
750749   else if (addr >= 0x104000 / 2 && addr <= 0x107fff / 2)
trunk/src/mame/drivers/deco_mlc.c
r21968r21969
148148
149149WRITE32_MEMBER(deco_mlc_state::mlc_44001c_w)
150150{
151
152151}
153152
154153READ32_MEMBER(deco_mlc_state::mlc_200070_r)
r21968r21969
298297{
299298   if (mem_mask & 0xffff0000)
300299   {
301
302300   }
303301
304302   if (mem_mask & 0x0000ffff)
trunk/src/mame/drivers/seattle.c
r21968r21969
28422842
28432843void seattle_state::init_common(int ioasic, int serialnum, int yearoffs, int config)
28442844{
2845
28462845   /* initialize the subsystems */
28472846   midway_ioasic_init(machine(),ioasic, serialnum, yearoffs, ioasic_irq);
28482847
trunk/src/mame/drivers/rabbit.c
r21968r21969
340340/* todo: fix zoom, its inaccurate and this code is ugly */
341341void rabbit_state::draw_sprite_bitmap( bitmap_ind16 &bitmap, const rectangle &cliprect )
342342{
343
344343   UINT32 x,y;
345344   UINT16 *srcline;
346345   UINT16 *dstline;
trunk/src/mame/drivers/ksys573.c
r21968r21969
12021202
12031203void ksys573_state::atapi_init()
12041204{
1205
12061205   m_atapi_regs[ATAPI_REG_CMDSTATUS] = 0;
12071206   m_atapi_regs[ATAPI_REG_ERRFEAT] = 1;
12081207   m_atapi_regs[ATAPI_REG_COUNTLOW] = 0x14;
r21968r21969
16331632
16341633void ksys573_state::gx700pwbf_output( int offset, UINT8 data )
16351634{
1636
16371635   if( m_gx700pwfbf_output_callback != NULL )
16381636   {
16391637      int i;
r21968r21969
16941692
16951693void ksys573_state::gx700pwfbf_init( void (ksys573_state::*output_callback_func)( int offset, int data ) )
16961694{
1697
16981695   memset( m_gx700pwbf_output_data, 0, sizeof( m_gx700pwbf_output_data ) );
16991696
17001697   m_gx700pwfbf_output_callback = output_callback_func;
r21968r21969
17271724
17281725void ksys573_state::gn845pwbb_do_w( int offset, int data )
17291726{
1730
17311727   m_stage[ offset ].DO = !data;
17321728}
17331729
r21968r21969
20582054
20592055void ksys573_state::gx894pwbba_output( int offset, UINT8 data )
20602056{
2061
20622057   if( m_gx894pwbba_output_callback != NULL )
20632058   {
20642059      int i;

Previous 199869 Revisions Next


© 1997-2024 The MAME Team