Previous 199869 Revisions Next

r32291 Monday 22nd September, 2014 at 18:12:04 UTC by David Haywood
less trampolines (nw)
[src/mame/drivers]legionna.c
[src/mame/machine]seicop.c

trunk/src/mame/drivers/legionna.c
r32290r32291
8181/*****************************************************************************/
8282
8383
84static ADDRESS_MAP_START( legionna_cop_mem, AS_PROGRAM, 16, legionna_state )
85//   AM_RANGE(0x10041c, 0x10041d) AM_WRITE(cop_angle_target_w) // angle target (for 0x6200 COP macro)
86//   AM_RANGE(0x10041e, 0x10041f) AM_WRITE(cop_angle_step_w)   // angle step   (for 0x6200 COP macro)
87//   AM_RANGE(0x100420, 0x100421) AM_WRITE(cop_itoa_low_w)
88//   AM_RANGE(0x100422, 0x100423) AM_WRITE(cop_itoa_high_w)
89//   AM_RANGE(0x100424, 0x100425) AM_WRITE(cop_itoa_digit_count_w)
90   AM_RANGE(0x100428, 0x100429) AM_DEVWRITE("raiden2cop", raiden2cop_device, cop_dma_v1_w)
91   AM_RANGE(0x10042a, 0x10042b) AM_DEVWRITE("raiden2cop", raiden2cop_device, cop_dma_v2_w)
92   AM_RANGE(0x100432, 0x100433) AM_DEVWRITE("raiden2cop", raiden2cop_device, cop_pgm_data_w)
93   AM_RANGE(0x100434, 0x100435) AM_DEVWRITE("raiden2cop", raiden2cop_device, cop_pgm_addr_w)
94//   AM_RANGE(0x100436, 0x100437) AM_WRITE(cop_hitbox_baseadr_w)
95   AM_RANGE(0x100438, 0x100439) AM_DEVWRITE("raiden2cop", raiden2cop_device, cop_pgm_value_w)
96   AM_RANGE(0x10043a, 0x10043b) AM_DEVWRITE("raiden2cop", raiden2cop_device, cop_pgm_mask_w)
97   AM_RANGE(0x10043c, 0x10043d) AM_DEVWRITE("raiden2cop", raiden2cop_device, cop_pgm_trigger_w)
98//   AM_RANGE(0x100444, 0x100445) AM_WRITE(cop_scale_w)
99//   AM_RANGE(0x100450, 0x100451) AM_WRITE(cop_sort_ram_addr_hi_w)
100//   AM_RANGE(0x100452, 0x100453) AM_WRITE(cop_sort_ram_addr_lo_w)
101//   AM_RANGE(0x100454, 0x100455) AM_WRITE(cop_sort_lookup_hi_w)
102//   AM_RANGE(0x100456, 0x100457) AM_WRITE(cop_sort_lookup_lo_w)
103//   AM_RANGE(0x100458, 0x100459) AM_WRITE(cop_sort_param_w)
104   AM_RANGE(0x10045a, 0x10045b) AM_DEVWRITE("raiden2cop", raiden2cop_device, cop_pal_brightness_val_w) //palette DMA brightness val, used by X Se Dae / Zero Team
105   AM_RANGE(0x10045c, 0x10045d) AM_DEVWRITE("raiden2cop", raiden2cop_device, cop_pal_brightness_mode_w)  //palette DMA brightness mode, used by X Se Dae / Zero Team (sets to 5)
106//   AM_RANGE(0x100470, 0x100471) AM_READWRITE(cop_tile_bank_2_r,cop_tile_bank_2_w)
107
108   AM_RANGE(0x100476, 0x100477) AM_DEVWRITE("raiden2cop", raiden2cop_device, cop_dma_adr_rel_w)
109   AM_RANGE(0x100478, 0x100479) AM_DEVWRITE("raiden2cop", raiden2cop_device,cop_dma_src_w)
110   AM_RANGE(0x10047a, 0x10047b) AM_DEVWRITE("raiden2cop", raiden2cop_device,cop_dma_size_w)
111   AM_RANGE(0x10047c, 0x10047d) AM_DEVWRITE("raiden2cop", raiden2cop_device,cop_dma_dst_w)
112   AM_RANGE(0x10047e, 0x10047f) AM_DEVREADWRITE("raiden2cop", raiden2cop_device, cop_dma_mode_r, cop_dma_mode_w)
113//   AM_RANGE(0x1004a0, 0x1004a9) AM_READWRITE(cop_reg_high_r, cop_reg_high_w)
114//   AM_RANGE(0x1004c0, 0x1004c9) AM_READWRITE(cop_reg_low_r, cop_reg_low_w)
115//   AM_RANGE(0x100500, 0x100505) AM_WRITE(cop_cmd_w)
116//   AM_RANGE(0x100580, 0x100581) AM_READ(cop_collision_status_r)
117//   AM_RANGE(0x100582, 0x100587) AM_READ(cop_collision_status_val_r)
118//   AM_RANGE(0x100588, 0x100589) AM_READ(cop_collision_status_stat_r)
119//   AM_RANGE(0x100590, 0x100599) AM_READ(cop_itoa_digits_r)
120//   AM_RANGE(0x1005b0, 0x1005b1) AM_READ(cop_status_r)
121//   AM_RANGE(0x1005b2, 0x1005b3) AM_READ(cop_dist_r)
122//   AM_RANGE(0x1005b4, 0x1005b5) AM_READ(cop_angle_r)
123
124   AM_RANGE(0x1006fc, 0x1006fd) AM_DEVWRITE("raiden2cop", raiden2cop_device,cop_dma_trigger_w)
125//   AM_RANGE(0x1006fe, 0x1006ff) AM_WRITE(cop_sort_dma_trig_w) // sort-DMA trigger
126ADDRESS_MAP_END
127
128
84129static ADDRESS_MAP_START( legionna_map, AS_PROGRAM, 16, legionna_state )
130   AM_IMPORT_FROM( legionna_cop_mem )
85131   AM_RANGE(0x000000, 0x07ffff) AM_ROM
86132   AM_RANGE(0x100000, 0x1003ff) AM_RAM
87133   AM_RANGE(0x100600, 0x10063f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)
r32290r32291
98144
99145
100146static ADDRESS_MAP_START( heatbrl_map, AS_PROGRAM, 16, legionna_state )
147   AM_IMPORT_FROM( legionna_cop_mem )
101148   AM_RANGE(0x000000, 0x07ffff) AM_ROM
102149   AM_RANGE(0x100000, 0x1003ff) AM_RAM
103150   AM_RANGE(0x100640, 0x10068f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)
r32290r32291
112159ADDRESS_MAP_END
113160
114161static ADDRESS_MAP_START( godzilla_map, AS_PROGRAM, 16, legionna_state )
162   AM_IMPORT_FROM( legionna_cop_mem )
115163   AM_RANGE(0x000000, 0x07ffff) AM_ROM
116164   AM_RANGE(0x100000, 0x1003ff) AM_RAM
117165   AM_RANGE(0x100600, 0x10063f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)
r32290r32291
140188
141189
142190static ADDRESS_MAP_START( denjinmk_map, AS_PROGRAM, 16, legionna_state )
191   AM_IMPORT_FROM( legionna_cop_mem )
143192   AM_RANGE(0x000000, 0x0fffff) AM_ROM
144193   AM_RANGE(0x100000, 0x1003ff) AM_RAM
145194   AM_RANGE(0x100600, 0x10063f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)
r32290r32291
158207ADDRESS_MAP_END
159208
160209static ADDRESS_MAP_START( grainbow_map, AS_PROGRAM, 16, legionna_state )
210   AM_IMPORT_FROM( legionna_cop_mem )
161211   AM_RANGE(0x000000, 0x0fffff) AM_ROM
162212   AM_RANGE(0x100000, 0x1003ff) AM_RAM
163213   AM_RANGE(0x100600, 0x10063f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)
r32290r32291
175225ADDRESS_MAP_END
176226
177227static ADDRESS_MAP_START( cupsoc_mem, AS_PROGRAM, 16, legionna_state )
228   AM_IMPORT_FROM( legionna_cop_mem )
178229   AM_RANGE(0x000000, 0x0fffff) AM_ROM
179230   AM_RANGE(0x100000, 0x1003ff) AM_RAM
180231   AM_RANGE(0x100600, 0x10063f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)
r32290r32291
195246ADDRESS_MAP_END
196247
197248static ADDRESS_MAP_START( cupsocs_mem, AS_PROGRAM, 16, legionna_state )
249   AM_IMPORT_FROM( legionna_cop_mem )
198250   AM_RANGE(0x000000, 0x0fffff) AM_ROM
199251   AM_RANGE(0x100000, 0x1003ff) AM_RAM
200252   AM_RANGE(0x100600, 0x10060f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)//?
r32290r32291
216268ADDRESS_MAP_END
217269
218270static ADDRESS_MAP_START( cupsocbl_mem, AS_PROGRAM, 16, legionna_state )
271   AM_IMPORT_FROM( legionna_cop_mem )
219272   AM_RANGE(0x000000, 0x0fffff) AM_ROM
220273   //AM_RANGE(0x100000, 0x1003ff) AM_RAM
221274   AM_RANGE(0x100600, 0x10060f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)//?
trunk/src/mame/machine/seicop.c
r32290r32291
22092209         */
22102210         break;
22112211
2212      // ram fill
2213      case (0x028 / 2) : m_raiden2cop->cop_dma_v1_w(space, offset, data, mem_mask); break;
2214      case (0x02a / 2) : m_raiden2cop->cop_dma_v2_w(space, offset, data, mem_mask); break;
22152212
22162213         
22172214         
r32290r32291
22192216      /* max possible value returned by the RNG at 0x5a*, trusted */
22202217      case (0x02c/2): m_cop_rng_max_value = m_cop_mcu_ram[0x2c/2] & 0xff; break;
22212218
2222      /* Command tables for 0x500 / 0x502 commands */
2223      case (0x032/2): { m_raiden2cop->cop_pgm_data_w(space,0,data,mem_mask); break; }
2224      case (0x034/2): { m_raiden2cop->cop_pgm_addr_w(space,0,data,mem_mask); break; }
2225      case (0x038/2): { m_raiden2cop->cop_pgm_value_w(space,0,data,mem_mask); break; }
2226      case (0x03a/2): { m_raiden2cop->cop_pgm_mask_w(space,0,data,mem_mask); break; }
2227      case (0x03c/2): { m_raiden2cop->cop_pgm_trigger_w(space,0,data,mem_mask); break; }
22282219      case (0x03e/2):
22292220         /*
22302221         0 in all 68k based games
r32290r32291
22392230      case (0x048/2): { m_cop_rom_addr_lo = data & 0xffff; break; }
22402231      case (0x04a/2): { m_cop_rom_addr_hi = data & 0xffff; break; }
22412232
2242      /* brightness control */
2243      case (0x05a / 2) : m_raiden2cop->cop_pal_brightness_val_w(space, offset, data, mem_mask); break;
2244      case (0x05c / 2) : m_raiden2cop->cop_pal_brightness_mode_w(space, offset, data, mem_mask); break;
22452233   
22462234      /* DMA / layer clearing section */
22472235      case (0x074/2):
r32290r32291
22572245         break;
22582246
22592247     
2260      case (0x076 / 2) : m_raiden2cop->cop_dma_adr_rel_w(space, offset, data, mem_mask); break; /* used in palette DMAs, for fading effects */
2261      case (0x078 / 2) : m_raiden2cop->cop_dma_src_w(space, offset, data, mem_mask); break; /* DMA source address */
2262      case (0x07a / 2) : m_raiden2cop->cop_dma_size_w(space, offset, data, mem_mask); break;/* DMA length */
2263      case (0x07c/2): m_raiden2cop->cop_dma_dst_w(space, offset, data, mem_mask); break; /* DMA destination */
2264      case (0x07e/2): m_raiden2cop->cop_dma_mode_w(space, offset, data, mem_mask); break; /* DMA parameter */
22652248
22662249
22672250

Previous 199869 Revisions Next


© 1997-2024 The MAME Team