Previous 199869 Revisions Next

r32284 Monday 22nd September, 2014 at 14:49:38 UTC by Fabio Priuli
(MESS) consolidated generic socket / cartslot a bit more: removed
redundant cart_mounted() function since exists() from image device
already provides the required service, and added capability to
specify endianness of the rom region (otherwise not detectable from
fullpath). nw.
[src/emu/bus/generic]slot.c slot.h
[src/mess/drivers]advision.c aim65.c aquarius.c atarist.c atom.c bbcbc.c c128.c casloopy.c cc40.c ep64.c exelv.c fc100.c gamepock.c gmaster.c m5.c myvision.c pasogo.c pegasus.c pencil2.c pockstat.c pokemini.c portfoli.c pv2000.c rx78.c sorcerer.c supracan.c sv8000.c svi318.c tek405x.c ti74.c tutor.c tvc.c uzebox.c x1.c x1twin.c
[src/mess/machine]aim65.c gamepock.c sorcerer.c svi318.c

trunk/src/emu/bus/generic/slot.c
r32283r32284
4141//  rom_alloc - alloc the space for the cart
4242//-------------------------------------------------
4343
44void device_generic_cart_interface::rom_alloc(size_t size, int width, const char *tag)
44void device_generic_cart_interface::rom_alloc(size_t size, int width, endianness_t endian, const char *tag)
4545{
4646   if (m_rom == NULL)
4747   {
4848      astring tempstring(tag);
4949      tempstring.cat(GENERIC_ROM_REGION_TAG);
50      m_rom = device().machine().memory().region_alloc(tempstring, size, width, ENDIANNESS_LITTLE)->base();
50      m_rom = device().machine().memory().region_alloc(tempstring, size, width, endian)->base();
5151      m_rom_size = size;
5252   }
5353}
r32283r32284
8484                  m_extensions("bin"),
8585                  m_must_be_loaded(FALSE),
8686                  m_width(GENERIC_ROM8_WIDTH),
87                  m_empty(TRUE)
87                  m_endianness(ENDIANNESS_LITTLE)
8888{
8989}
9090
r32283r32284
128128   if (m_cart)
129129   {     
130130      if (!m_device_image_load.isnull())
131      {
132         int result = m_device_image_load(*this);
133         m_empty = (result == IMAGE_INIT_PASS) ? FALSE : TRUE;
134         return result;
135      }
131         return m_device_image_load(*this);
136132      else
137133      {
138134         UINT32 len = common_get_size("rom");
139135         
140         rom_alloc(len, m_width);
136         rom_alloc(len, m_width, m_endianness);
141137         common_load_rom(get_rom_base(), len, "rom");         
142         m_empty = FALSE;
143138
144139         return IMAGE_INIT_PASS;
145140      }
trunk/src/emu/bus/generic/slot.h
r32283r32284
2323   virtual DECLARE_READ8_MEMBER(read_ram) { return 0xff; }
2424   virtual DECLARE_WRITE8_MEMBER(write_ram) {};
2525
26   virtual void rom_alloc(size_t size, int width, const char *tag);
26   virtual void rom_alloc(size_t size, int width, endianness_t end, const char *tag);
2727   virtual void ram_alloc(UINT32 size);
2828
2929   UINT8* get_rom_base()  { return m_rom; }
r32283r32284
5656#define MCFG_GENERIC_WIDTH(_width)       \
5757   static_cast<generic_slot_device *>(device)->set_width(_width);
5858
59#define MCFG_GENERIC_ENDIAN(_endianness)       \
60   static_cast<generic_slot_device *>(device)->set_endian(_endianness);
61
5962#define MCFG_GENERIC_DEFAULT_CARD(_def_card)      \
6063   static_cast<generic_slot_device *>(device)->set_default_card(_def_card);
6164
r32283r32284
9295   void set_extensions(const char * exts) { m_extensions = exts; }
9396   void set_must_be_loaded(bool mandatory) { m_must_be_loaded = mandatory; }
9497   void set_width(int width) { m_width = width; }
98   void set_endian(endianness_t end) { m_endianness = end; }
9599   
96100   // device-level overrides
97101   virtual void device_start();
r32283r32284
102106   virtual void call_unload();
103107   virtual bool call_softlist_load(software_list_device &swlist, const char *swname, const rom_entry *start_entry);
104108
105   bool cart_mounted() { return !m_empty; }
106109   UINT32 common_get_size(const char *region);
107110   void common_load_rom(UINT8 *ROM, UINT32 len, const char *region);
108111
r32283r32284
127130   virtual DECLARE_READ8_MEMBER(read_ram);
128131   virtual DECLARE_WRITE8_MEMBER(write_ram);
129132
130   virtual void rom_alloc(size_t size, int width) { if (m_cart) m_cart->rom_alloc(size, width, tag()); }
133   virtual void rom_alloc(size_t size, int width, endianness_t end) { if (m_cart) m_cart->rom_alloc(size, width, end, tag()); }
131134   virtual void ram_alloc(UINT32 size)  { if (m_cart) m_cart->ram_alloc(size); }
132135
133136   UINT8* get_rom_base()  { if (m_cart) return m_cart->get_rom_base(); return NULL; }
r32283r32284
140143   const char *m_extensions;
141144   bool        m_must_be_loaded;
142145   int         m_width;
143   bool        m_empty;
146   endianness_t m_endianness;
144147   device_generic_cart_interface  *m_cart;
145148   device_image_load_delegate      m_device_image_load;
146149   device_image_func_delegate      m_device_image_unload;
r32283r32284
155158 DEVICE CONFIGURATION MACROS
156159 ***************************************************************************/
157160
158#define MCFG_GENERIC_CARTSLOT_ADD(_tag, _width, _slot_intf, _dev_intf) \
161#define MCFG_GENERIC_CARTSLOT_ADD(_tag, _slot_intf, _dev_intf) \
159162   MCFG_DEVICE_ADD(_tag, GENERIC_SOCKET, 0) \
160163   MCFG_DEVICE_SLOT_INTERFACE(_slot_intf, NULL, false) \
161164   MCFG_GENERIC_INTERFACE(_dev_intf) \
162   MCFG_GENERIC_WIDTH(_width)
163165
164#define MCFG_GENERIC_SOCKET_ADD(_tag, _width, _slot_intf, _dev_intf) \
166#define MCFG_GENERIC_SOCKET_ADD(_tag, _slot_intf, _dev_intf) \
165167   MCFG_DEVICE_ADD(_tag, GENERIC_SOCKET, 0) \
166168   MCFG_DEVICE_SLOT_INTERFACE(_slot_intf, NULL, false) \
167169   MCFG_GENERIC_INTERFACE(_dev_intf) \
168   MCFG_GENERIC_WIDTH(_width)
169170
170171#endif
trunk/src/mess/drivers/sv8000.c
r32283r32284
173173   m_intext = 0;
174174   m_inv = 0;
175175
176   if (m_cart->cart_mounted())
176   if (m_cart->exists())
177177      m_maincpu->space(AS_PROGRAM).install_read_handler(0x0000, 0x0fff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_cart));
178178
179179   save_item(NAME(m_column));
r32283r32284
204204      return IMAGE_INIT_FAIL;
205205   }
206206   
207   m_cart->rom_alloc(size, 1);
207   m_cart->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
208208   m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");         
209209   
210210   return IMAGE_INIT_PASS;
r32283r32284
398398   MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
399399
400400   /* cartridge */
401   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_plain_slot, "sv8000_cart")
401   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "sv8000_cart")
402402   MCFG_GENERIC_MANDATORY
403403   MCFG_GENERIC_LOAD(sv8000_state, cart)
404404
trunk/src/mess/drivers/bbcbc.c
r32283r32284
118118
119119void bbcbc_state::machine_start()
120120{
121   if (m_cart->cart_mounted())
121   if (m_cart->exists())
122122      m_maincpu->space(AS_PROGRAM).install_read_handler(0x4000, 0xbfff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_cart));
123123}
124124
r32283r32284
141141   MCFG_TMS9928A_SCREEN_ADD_PAL( "screen" )
142142   MCFG_SCREEN_UPDATE_DEVICE( "tms9129", tms9928a_device, screen_update )
143143
144   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_plain_slot, "bbcbc_cart")
144   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "bbcbc_cart")
145145
146146   /* Software lists */
147147   MCFG_SOFTWARE_LIST_ADD("cart_list","bbcbc")
trunk/src/mess/drivers/gamepock.c
r32283r32284
6565   MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
6666
6767   /* cartridge */
68   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_plain_slot, "gamepock_cart")
68   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "gamepock_cart")
6969
7070   /* Software lists */
7171   MCFG_SOFTWARE_LIST_ADD("cart_list","gamepock")
trunk/src/mess/drivers/uzebox.c
r32283r32284
6767{
6868   machine().first_screen()->register_screen_bitmap(m_bitmap);
6969
70   if (m_cart->cart_mounted())
70   if (m_cart->exists())
7171      m_maincpu->space(AS_PROGRAM).install_read_handler(0x0000, 0xffff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_cart));
7272}
7373
r32283r32284
274274{
275275   UINT32 size = m_cart->common_get_size("rom");
276276   
277   m_cart->rom_alloc(size, 1);
277   m_cart->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
278278
279279   if (image.software_entry() == NULL)
280280   {
r32283r32284
319319   MCFG_SOUND_ADD("dac", DAC, 0)
320320   MCFG_SOUND_ROUTE(0, "avr8", 1.00)
321321
322   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_plain_slot, "uzebox")
322   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "uzebox")
323323   MCFG_GENERIC_EXTENSIONS("bin,uze")
324324   MCFG_GENERIC_MANDATORY
325325   MCFG_GENERIC_LOAD(uzebox_state, uzebox_cart)
trunk/src/mess/drivers/aim65.c
r32283r32284
163163      return IMAGE_INIT_FAIL;
164164   }
165165
166   slot->rom_alloc(size, 1);
166   slot->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
167167   slot->common_load_rom(slot->get_rom_base(), size, slot_tag);
168168
169169   return IMAGE_INIT_PASS;
r32283r32284
225225   MCFG_CASSETTE_ADD( "cassette2" )
226226   MCFG_CASSETTE_DEFAULT_STATE(CASSETTE_RECORD | CASSETTE_MOTOR_DISABLED | CASSETTE_SPEAKER_MUTED)
227227
228   MCFG_GENERIC_SOCKET_ADD("z26", GENERIC_ROM8_WIDTH, generic_plain_slot, "aim65_cart")
228   MCFG_GENERIC_SOCKET_ADD("z26", generic_plain_slot, "aim65_cart")
229229   MCFG_GENERIC_EXTENSIONS("z26")
230230   MCFG_GENERIC_LOAD(aim65_state, z26_load)
231231
232   MCFG_GENERIC_SOCKET_ADD("z25", GENERIC_ROM8_WIDTH, generic_plain_slot, "aim65_cart")
232   MCFG_GENERIC_SOCKET_ADD("z25", generic_plain_slot, "aim65_cart")
233233   MCFG_GENERIC_EXTENSIONS("z25")
234234   MCFG_GENERIC_LOAD(aim65_state, z25_load)
235235
236   MCFG_GENERIC_SOCKET_ADD("z24", GENERIC_ROM8_WIDTH, generic_plain_slot, "aim65_cart")
236   MCFG_GENERIC_SOCKET_ADD("z24", generic_plain_slot, "aim65_cart")
237237   MCFG_GENERIC_EXTENSIONS("z24")
238238   MCFG_GENERIC_LOAD(aim65_state, z24_load)
239239
trunk/src/mess/drivers/ti74.c
r32283r32284
132132      return IMAGE_INIT_FAIL;
133133   }
134134   
135   m_cart->rom_alloc(size, 1);
135   m_cart->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
136136   m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");         
137137   
138138   return IMAGE_INIT_PASS;
r32283r32284
492492
493493void ti74_state::machine_start()
494494{
495   if (m_cart->cart_mounted())
495   if (m_cart->exists())
496496      m_maincpu->space(AS_PROGRAM).install_read_handler(0x4000, 0xbfff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_cart));
497497
498498   membank("sysbank")->configure_entries(0, 4, memregion("system")->base(), 0x2000);
r32283r32284
534534   MCFG_HD44780_PIXEL_UPDATE_CB(ti74_pixel_update)
535535
536536   /* cartridge */
537   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_plain_slot, "ti74_cart")
537   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "ti74_cart")
538538   MCFG_GENERIC_EXTENSIONS("bin,rom,256")
539539   MCFG_GENERIC_LOAD(ti74_state, ti74_cartridge)
540540
r32283r32284
568568   MCFG_HD44780_PIXEL_UPDATE_CB(ti95_pixel_update)
569569
570570   /* cartridge */
571   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_plain_slot, "ti95_cart")
571   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "ti95_cart")
572572   MCFG_GENERIC_EXTENSIONS("bin,rom,256")
573573   MCFG_GENERIC_LOAD(ti74_state, ti74_cartridge)
574574
trunk/src/mess/drivers/cc40.c
r32283r32284
165165      return IMAGE_INIT_FAIL;
166166   }
167167
168   m_cart->rom_alloc(size, 0x20000);   // allocate a larger ROM region to have 4x32K banks
168   m_cart->rom_alloc(0x20000, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);   // allocate a larger ROM region to have 4x32K banks
169169   m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");         
170170
171171   return IMAGE_INIT_PASS;
r32283r32284
614614   MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
615615
616616   /* cartridge */
617   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_plain_slot, "cc40_cart")
617   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "cc40_cart")
618618   MCFG_GENERIC_EXTENSIONS("bin,rom,256")
619619   MCFG_GENERIC_LOAD(cc40_state, cc40_cartridge)
620620
trunk/src/mess/drivers/aquarius.c
r32283r32284
172172READ8_MEMBER(aquarius_state::cartridge_r)
173173{
174174   UINT8 data = 0;
175   if (m_cart->cart_mounted())
175   if (m_cart->exists())
176176      data = m_cart->read_rom(space, offset);
177177
178178   return data ^ m_scrambler;
r32283r32284
376376   MCFG_CASSETTE_DEFAULT_STATE(CASSETTE_STOPPED | CASSETTE_MOTOR_ENABLED | CASSETTE_SPEAKER_MUTED)
377377
378378   /* cartridge */
379   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_linear_slot, "aquarius_cart")
379   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_linear_slot, "aquarius_cart")
380380
381381   /* internal ram */
382382   MCFG_RAM_ADD(RAM_TAG)
trunk/src/mess/drivers/c128.c
r32283r32284
190190   {
191191      data = m_vic->read(space, offset & 0x3f);
192192   }
193   if (!BIT(plaout, PLA_OUT_FROM1) && m_from->cart_mounted())
193   if (!BIT(plaout, PLA_OUT_FROM1) && m_from->exists())
194194   {
195195      data = m_from->read_rom(space, offset & 0x7fff);
196196   }
r32283r32284
15491549   MCFG_SOFTWARE_LIST_FILTER("from_list", "NTSC")
15501550
15511551   // function ROM
1552   MCFG_GENERIC_SOCKET_ADD("from", GENERIC_ROM8_WIDTH, generic_plain_slot, "c128_rom")
1552   MCFG_GENERIC_SOCKET_ADD("from", generic_plain_slot, "c128_rom")
15531553   MCFG_GENERIC_EXTENSIONS("bin,rom")
15541554
15551555   // internal ram
r32283r32284
17231723   MCFG_SOFTWARE_LIST_FILTER("from_list", "PAL")
17241724
17251725   // function ROM
1726   MCFG_GENERIC_SOCKET_ADD("from", GENERIC_ROM8_WIDTH, generic_plain_slot, "c128_rom")
1726   MCFG_GENERIC_SOCKET_ADD("from", generic_plain_slot, "c128_rom")
17271727   MCFG_GENERIC_EXTENSIONS("bin,rom")
17281728
17291729   // internal ram
trunk/src/mess/drivers/pencil2.c
r32283r32284
274274
275275void pencil2_state::machine_start()
276276{
277   if (m_cart->cart_mounted())
277   if (m_cart->exists())
278278      m_maincpu->space(AS_PROGRAM).install_read_handler(0x8000, 0xffff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_cart));
279279}
280280
r32283r32284
301301   MCFG_CASSETTE_ADD( "cassette" )
302302
303303   /* cartridge */
304   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_plain_slot, "pencil2_cart")
304   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "pencil2_cart")
305305
306306   /* printer */
307307   MCFG_CENTRONICS_ADD("centronics", centronics_printers, "printer")
trunk/src/mess/drivers/portfoli.c
r32283r32284
873873   MCFG_TIMER_DRIVER_ADD_PERIODIC("keyboard", portfolio_state, keyboard_tick, attotime::from_usec(2500))
874874
875875   /* cartridge */
876   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_plain_slot, "portfolio_cart")
876   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "portfolio_cart")
877877   MCFG_GENERIC_LOAD(portfolio_state, portfolio_cart)
878878
879879   /* memory card */
trunk/src/mess/drivers/tvc.c
r32283r32284
794794   MCFG_CENTRONICS_OUTPUT_LATCH_ADD("cent_data_out", "centronics")
795795
796796   /* cartridge */
797   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_plain_slot, "tvc_cart")
797   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "tvc_cart")
798798   MCFG_GENERIC_EXTENSIONS("bin,rom,crt")
799799
800800   /* expansion interface */
trunk/src/mess/drivers/tek405x.c
r32283r32284
10911091   MCFG_RAM_EXTRA_OPTIONS("16K,24K,32K")
10921092
10931093   // cartridge
1094   MCFG_GENERIC_CARTSLOT_ADD("cartslot1", GENERIC_ROM8_WIDTH, generic_plain_slot, "tek4050_cart")
1095   MCFG_GENERIC_CARTSLOT_ADD("cartslot2", GENERIC_ROM8_WIDTH, generic_plain_slot, "tek4050_cart")
1094   MCFG_GENERIC_CARTSLOT_ADD("cartslot1", generic_plain_slot, "tek4050_cart")
1095   MCFG_GENERIC_CARTSLOT_ADD("cartslot2", generic_plain_slot, "tek4050_cart")
10961096MACHINE_CONFIG_END
10971097
10981098
r32283r32284
11271127   MCFG_RAM_EXTRA_OPTIONS("64K")
11281128
11291129   // cartridge
1130   MCFG_GENERIC_CARTSLOT_ADD("cartslot1", GENERIC_ROM8_WIDTH, generic_plain_slot, "tek4050_cart")
1131   MCFG_GENERIC_CARTSLOT_ADD("cartslot2", GENERIC_ROM8_WIDTH, generic_plain_slot, "tek4050_cart")
1130   MCFG_GENERIC_CARTSLOT_ADD("cartslot1", generic_plain_slot, "tek4050_cart")
1131   MCFG_GENERIC_CARTSLOT_ADD("cartslot2", generic_plain_slot, "tek4050_cart")
11321132
11331133   // software lists
11341134   MCFG_SOFTWARE_LIST_ADD("cart_list", "tek4052_cart")
trunk/src/mess/drivers/pokemini.c
r32283r32284
15141514      return IMAGE_INIT_FAIL;
15151515   }
15161516
1517   m_cart->rom_alloc(size, 1);
1517   m_cart->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
15181518   m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");         
15191519
15201520   return IMAGE_INIT_PASS;
r32283r32284
17791779   MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
17801780
17811781   /* cartridge */
1782   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_plain_slot, "pokemini_cart")
1782   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "pokemini_cart")
17831783   MCFG_GENERIC_EXTENSIONS("bin,min")
17841784   MCFG_GENERIC_LOAD(pokemini_state, pokemini_cart)
17851785
trunk/src/mess/drivers/pv2000.c
r32283r32284
344344
345345void pv2000_state::machine_start()
346346{
347   if (m_cart->cart_mounted())
347   if (m_cart->exists())
348348      m_maincpu->space(AS_PROGRAM).install_read_handler(0xc000, 0xffff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_cart));
349349}
350350
r32283r32284
368368      return IMAGE_INIT_FAIL;
369369   }
370370   
371   m_cart->rom_alloc(size, 1);
371   m_cart->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
372372   m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");         
373373   
374374   return IMAGE_INIT_PASS;
r32283r32284
403403   MCFG_CASSETTE_DEFAULT_STATE(CASSETTE_STOPPED | CASSETTE_MOTOR_DISABLED)
404404
405405   /* cartridge */
406   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_plain_slot, "pv2000_cart")
406   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "pv2000_cart")
407407   MCFG_GENERIC_EXTENSIONS("bin,rom,col")
408408   MCFG_GENERIC_LOAD(pv2000_state, pv2000_cart)
409409
trunk/src/mess/drivers/exelv.c
r32283r32284
365365*/
366366READ8_MEMBER(exelv_state::rom_r)
367367{
368   if (m_cart && m_cart->cart_mounted())
368   if (m_cart && m_cart->exists())
369369      return m_cart->read_rom(space, offset + 0x200);
370370
371371   return 0;
r32283r32284
535535   MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
536536
537537   /* cartridge */
538   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_linear_slot, "exelvision_cart")
538   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_linear_slot, "exelvision_cart")
539539   MCFG_GENERIC_EXTENSIONS("bin,rom")
540540
541541   MCFG_SOFTWARE_LIST_ADD("cart_list", "exl100_cart")
trunk/src/mess/drivers/atom.c
r32283r32284
214214
215215READ8_MEMBER( atomeb_state::ext_r )
216216{
217   if (m_ext[m_eprom & 0x0f]->cart_mounted())
217   if (m_ext[m_eprom & 0x0f]->exists())
218218      return m_ext[m_eprom & 0x0f]->read_rom(space, offset);
219219   else
220220      return 0xff;
r32283r32284
226226
227227READ8_MEMBER( atomeb_state::dos_r )
228228{
229   if (m_e0->cart_mounted() && !BIT(m_eprom, 7))
229   if (m_e0->exists() && !BIT(m_eprom, 7))
230230      return m_e0->read_rom(space, offset);
231   else if (m_e1->cart_mounted() && BIT(m_eprom, 7))
231   else if (m_e1->exists() && BIT(m_eprom, 7))
232232      return m_e1->read_rom(space, offset);
233233   else
234234      return 0xff;
r32283r32284
652652   m_baseram[0x0a] = machine().rand() & 0x0ff;
653653   m_baseram[0x0b] = machine().rand() & 0x0ff;
654654
655   if (m_cart && m_cart->cart_mounted())
655   if (m_cart && m_cart->exists())
656656      m_maincpu->space(AS_PROGRAM).install_read_handler(0xa000, 0xafff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_cart));
657657}
658658
r32283r32284
679679      return IMAGE_INIT_FAIL;
680680   }
681681
682   slot->rom_alloc(size, 1);
682   slot->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
683683   slot->common_load_rom(slot->get_rom_base(), size, "rom");         
684684
685685   return IMAGE_INIT_PASS;
r32283r32284
738738   MCFG_QUICKLOAD_ADD("quickload", atom_state, atom_atm, "atm", 0)
739739
740740   /* cartridge */
741   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_linear_slot, "atom_cart")
741   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_linear_slot, "atom_cart")
742742   MCFG_GENERIC_EXTENSIONS("bin,rom")
743743   MCFG_GENERIC_LOAD(atom_state, cart_load)
744744
r32283r32284
756756-------------------------------------------------*/
757757
758758#define MCFG_ATOM_ROM_ADD(_tag, _load) \
759   MCFG_GENERIC_SOCKET_ADD(_tag, GENERIC_ROM8_WIDTH, generic_linear_slot, "atom_cart") \
759   MCFG_GENERIC_SOCKET_ADD(_tag, generic_linear_slot, "atom_cart") \
760760   MCFG_GENERIC_EXTENSIONS("bin,rom") \
761761   MCFG_GENERIC_LOAD(atomeb_state, _load)
762762
trunk/src/mess/drivers/atarist.c
r32283r32284
19371937   // configure RAM banking
19381938   configure_memory();
19391939
1940   if (m_cart->cart_mounted())
1940   if (m_cart->exists())
19411941      m_maincpu->space(AS_PROGRAM).install_read_handler(0xfa0000, 0xfbffff, read16_delegate(FUNC(generic_slot_device::read16_rom),(generic_slot_device*)m_cart));
19421942
19431943   // allocate timers
r32283r32284
19981998   /* configure RAM banking */
19991999   configure_memory();
20002000
2001   if (m_cart->cart_mounted())
2001   if (m_cart->exists())
20022002      m_maincpu->space(AS_PROGRAM).install_read_handler(0xfa0000, 0xfbffff, read16_delegate(FUNC(generic_slot_device::read16_rom),(generic_slot_device*)m_cart));
20032003
20042004   /* allocate timers */
r32283r32284
20432043      break;
20442044   }
20452045
2046   if (m_cart->cart_mounted())
2046   if (m_cart->exists())
20472047      m_maincpu->space(AS_PROGRAM).install_read_handler(0xfa0000, 0xfbffff, read16_delegate(FUNC(generic_slot_device::read16_rom),(generic_slot_device*)m_cart));
20482048
20492049   /* register for state saving */
r32283r32284
21422142   MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(st_state, write_acia_clock))
21432143
21442144   // cartridge
2145   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM16_WIDTH, generic_linear_slot, "st_cart")
2145   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_linear_slot, "st_cart")
21462146   MCFG_GENERIC_EXTENSIONS("bin,rom")
2147   MCFG_GENERIC_WIDTH(GENERIC_ROM16_WIDTH)
21472148   MCFG_SOFTWARE_LIST_ADD("cart_list", "st_cart")
21482149
21492150   // internal ram
r32283r32284
22312232   MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(st_state, write_acia_clock))
22322233
22332234   // cartridge
2234   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM16_WIDTH, generic_linear_slot, "st_cart")
2235   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_linear_slot, "st_cart")
22352236   MCFG_GENERIC_EXTENSIONS("bin,rom")
2237   MCFG_GENERIC_WIDTH(GENERIC_ROM16_WIDTH)
22362238   MCFG_SOFTWARE_LIST_ADD("cart_list", "st_cart")
22372239
22382240   // internal ram
r32283r32284
23272329   MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(st_state, write_acia_clock))
23282330
23292331   // cartridge
2330   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM16_WIDTH, generic_linear_slot, "st_cart")
2332   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_linear_slot, "st_cart")
23312333   MCFG_GENERIC_EXTENSIONS("bin,rom")
2334   MCFG_GENERIC_WIDTH(GENERIC_ROM16_WIDTH)
23322335//  MCFG_SOFTWARE_LIST_ADD("cart_list", "ste_cart")
23332336
23342337   // internal ram
r32283r32284
24312434   MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(st_state, write_acia_clock))
24322435
24332436   // cartridge
2434   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM16_WIDTH, generic_linear_slot, "st_cart")
2437   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_linear_slot, "st_cart")
24352438   MCFG_GENERIC_EXTENSIONS("bin,rom")
2439   MCFG_GENERIC_WIDTH(GENERIC_ROM16_WIDTH)
24362440   MCFG_SOFTWARE_LIST_ADD("cart_list", "st_cart")
24372441
24382442   /* internal ram */
trunk/src/mess/drivers/pockstat.c
r32283r32284
970970         return IMAGE_INIT_FAIL;
971971   }
972972
973   m_cart->rom_alloc(0x20000, GENERIC_ROM32_WIDTH);
973   m_cart->rom_alloc(0x20000, GENERIC_ROM32_WIDTH, ENDIANNESS_LITTLE);
974974   image.fread(m_cart->get_rom_base(), 0x20000);
975975
976976   return IMAGE_INIT_PASS;
r32283r32284
996996   MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
997997
998998   /* cartridge */
999   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM32_WIDTH, generic_plain_slot, "pockstat_cart")
999   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "pockstat_cart")
10001000   MCFG_GENERIC_EXTENSIONS("gme")
1001   MCFG_GENERIC_WIDTH(GENERIC_ROM32_WIDTH)
1002   MCFG_GENERIC_ENDIAN(ENDIANNESS_LITTLE)
10011003   MCFG_GENERIC_LOAD(pockstat_state, pockstat_flash)
10021004MACHINE_CONFIG_END
10031005
trunk/src/mess/drivers/casloopy.c
r32283r32284
479479   dynamic_buffer temp;
480480   temp.resize(0x200000);
481481   
482   m_cart->rom_alloc(size, GENERIC_ROM32_WIDTH);
482   m_cart->rom_alloc(size, GENERIC_ROM32_WIDTH, ENDIANNESS_LITTLE);
483483
484484   SRC = temp;
485485   DST = m_cart->get_rom_base();
r32283r32284
523523
524524   MCFG_GFXDECODE_ADD("gfxdecode", "palette", empty)
525525
526   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM32_WIDTH, generic_plain_slot, "loopy_cart")
526   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "loopy_cart")
527527   MCFG_GENERIC_EXTENSIONS("bin,ic1")
528   MCFG_GENERIC_WIDTH(GENERIC_ROM32_WIDTH)
529   MCFG_GENERIC_ENDIAN(ENDIANNESS_LITTLE)
528530   MCFG_GENERIC_MANDATORY
529531   MCFG_GENERIC_LOAD(casloopy_state, loopy_cart)
530532
trunk/src/mess/drivers/gmaster.c
r32283r32284
263263
264264void gmaster_state::machine_start()
265265{
266   if (m_cart->cart_mounted())
266   if (m_cart->exists())
267267      m_maincpu->space(AS_PROGRAM).install_read_handler(0x8000, 0xfeff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_cart));
268268
269269   save_item(NAME(m_video.data));
r32283r32284
303303   MCFG_SOUND_ADD("speaker", SPEAKER_SOUND, 0)
304304   MCFG_SOUND_ROUTE(0, "mono", 0.50)
305305
306   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_linear_slot, "gmaster_cart")
306   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_linear_slot, "gmaster_cart")
307307   MCFG_GENERIC_MANDATORY
308308
309309   MCFG_SOFTWARE_LIST_ADD("cart_list","gmaster")
trunk/src/mess/drivers/myvision.c
r32283r32284
128128
129129void myvision_state::machine_start()
130130{
131   if (m_cart->cart_mounted())
131   if (m_cart->exists())
132132      m_maincpu->space(AS_PROGRAM).install_read_handler(0x0000, 0x5fff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_cart));
133133
134134   save_item(NAME(m_column));
r32283r32284
151151      return IMAGE_INIT_FAIL;
152152   }
153153   
154   m_cart->rom_alloc(size, 1);
154   m_cart->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
155155   m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");         
156156
157157   return IMAGE_INIT_PASS;
r32283r32284
231231   MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
232232
233233   /* cartridge */
234   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_plain_slot, "myvision_cart")
234   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "myvision_cart")
235235   MCFG_GENERIC_LOAD(myvision_state, cart)
236236   //MCFG_GENERIC_MANDATORY
237237
trunk/src/mess/drivers/ep64.c
r32283r32284
470470
471471void ep64_state::machine_start()
472472{
473   if (m_cart->cart_mounted())
473   if (m_cart->exists())
474474      m_dave->space(AS_PROGRAM).install_read_handler(0x010000, 0x01ffff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_cart));
475475
476476   // state saving
r32283r32284
541541   MCFG_RAM_DEFAULT_SIZE("64K")
542542
543543   // cartridge
544   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_linear_slot, "ep64_cart")
544   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_linear_slot, "ep64_cart")
545545   MCFG_GENERIC_EXTENSIONS("bin,rom")
546546
547547   // software lists
trunk/src/mess/drivers/fc100.c
r32283r32284
464464   m_intext = 0;
465465   m_inv = 0;
466466
467   if (m_cart->cart_mounted())
467   if (m_cart->exists())
468468      m_maincpu->space(AS_PROGRAM).install_read_handler(0x6000, 0x6fff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_cart));
469469
470470   save_item(NAME(m_ag));
r32283r32284
550550   MCFG_TIMER_DRIVER_ADD_PERIODIC("timer_p", fc100_state, timer_p, attotime::from_hz(40000)) // cass read
551551   MCFG_TIMER_DRIVER_ADD_PERIODIC("timer_k", fc100_state, timer_k, attotime::from_hz(300)) // keyb scan
552552
553   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_plain_slot, "fc100_cart")
553   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "fc100_cart")
554554
555555   MCFG_CENTRONICS_ADD("centronics", centronics_printers, "printer")
556556   MCFG_CENTRONICS_ACK_HANDLER(DEVWRITELINE("cent_status_in", input_buffer_device, write_bit4))
trunk/src/mess/drivers/svi318.c
r32283r32284
251251};
252252
253253static MACHINE_CONFIG_FRAGMENT( svi318_cartslot )
254   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_plain_slot, "svi318_cart")
254   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "svi318_cart")
255255   MCFG_GENERIC_EXTENSIONS("bin,rom")
256256   MCFG_GENERIC_LOAD(svi318_state, svi318_cart)
257257
trunk/src/mess/drivers/supracan.c
r32283r32284
17611761      return IMAGE_INIT_FAIL;
17621762   }
17631763
1764   m_cart->rom_alloc(size, 2);
1764   m_cart->rom_alloc(size, GENERIC_ROM16_WIDTH, ENDIANNESS_BIG);
17651765   m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");         
17661766   
17671767   return IMAGE_INIT_PASS;
r32283r32284
17751775   m_line_on_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(supracan_state::supracan_line_on_callback),this));
17761776   m_line_off_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(supracan_state::supracan_line_off_callback),this));
17771777
1778   if (m_cart->cart_mounted())
1778   if (m_cart->exists())
17791779      m_maincpu->space(AS_PROGRAM).install_read_handler(0x000000, 0x3fffff, read16_delegate(FUNC(generic_slot_device::read16_rom),(generic_slot_device*)m_cart));
17801780}
17811781
r32283r32284
19211921
19221922   MCFG_GFXDECODE_ADD("gfxdecode", "palette", supracan)
19231923
1924   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM16_WIDTH, generic_plain_slot, "supracan_cart")
1924   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "supracan_cart")
1925   MCFG_GENERIC_WIDTH(GENERIC_ROM16_WIDTH)
1926   MCFG_GENERIC_ENDIAN(ENDIANNESS_BIG)
19251927   MCFG_GENERIC_LOAD(supracan_state, supracan_cart)
19261928
19271929   MCFG_SOFTWARE_LIST_ADD("cart_list","supracan")
trunk/src/mess/drivers/tutor.c
r32283r32284
728728   MCFG_CASSETTE_ADD( "cassette" )
729729
730730   /* cartridge */
731   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_linear_slot, "tutor_cart")
731   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_linear_slot, "tutor_cart")
732732
733733   /* software lists */
734734   MCFG_SOFTWARE_LIST_ADD("cart_list","tutor")
trunk/src/mess/drivers/x1.c
r32283r32284
961961READ8_MEMBER( x1_state::x1_rom_r )
962962{
963963//  printf("%06x\n",m_rom_index[0]<<16|m_rom_index[1]<<8|m_rom_index[2]<<0);
964   if (m_cart->cart_mounted())
964   if (m_cart->exists())
965965      return m_cart->read_rom(space, (m_rom_index[0] << 16) | (m_rom_index[1] << 8) | (m_rom_index[2] << 0));
966966   else
967967      return 0;
r32283r32284
24782478   MCFG_DEVICE_ADD("fdc", MB8877, 0)
24792479   MCFG_WD17XX_DEFAULT_DRIVE4_TAGS
24802480
2481   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_plain_slot, "x1_cart")
2481   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "x1_cart")
24822482   MCFG_GENERIC_EXTENSIONS("bin,rom")
24832483
24842484   MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
trunk/src/mess/drivers/pasogo.c
r32283r32284
967967   MCFG_SOUND_ADD("speaker", SPEAKER_SOUND, 0)
968968   MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
969969
970   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM16_WIDTH, generic_plain_slot, "pasogo_cart")
970   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "pasogo_cart")
971   MCFG_GENERIC_WIDTH(GENERIC_ROM16_WIDTH)
971972   MCFG_GENERIC_MANDATORY
972973
973974   MCFG_SOFTWARE_LIST_ADD("cart_list","pasogo")
trunk/src/mess/drivers/x1twin.c
r32283r32284
474474   MCFG_DEVICE_ADD("fdc", MB8877, 0)
475475   MCFG_WD17XX_DEFAULT_DRIVE4_TAGS
476476
477   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_plain_slot, "x1_cart")
477   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "x1_cart")
478478   MCFG_GENERIC_EXTENSIONS("bin,rom")
479479
480480   MCFG_SPEAKER_ADD("x1_l",-0.2, 0.0, 1.0)
trunk/src/mess/drivers/pegasus.c
r32283r32284
437437      }
438438   }
439439
440   slot->rom_alloc(0x1000, 1);   // we alloc 0x1000 also for smaller roms!
440   slot->rom_alloc(0x1000, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);   // we alloc 0x1000 also for smaller roms!
441441   slot->common_load_rom(slot->get_rom_base(), size, any_socket ? "rom" : reg_tag);
442442   
443443   // raw images have to be decrypted
r32283r32284
450450{
451451   m_p_pcgram = memregion("pcg")->base();
452452
453   if (m_exp_00->cart_mounted())
453   if (m_exp_00->exists())
454454      m_maincpu->space(AS_PROGRAM).install_read_handler(0x0000, 0x0fff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_exp_00));
455   if (m_exp_01->cart_mounted())
455   if (m_exp_01->exists())
456456      m_maincpu->space(AS_PROGRAM).install_read_handler(0x1000, 0x1fff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_exp_01));
457   if (m_exp_02->cart_mounted())
457   if (m_exp_02->exists())
458458      m_maincpu->space(AS_PROGRAM).install_read_handler(0x2000, 0x2fff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_exp_02));
459   if (m_exp_0c->cart_mounted())
459   if (m_exp_0c->exists())
460460      m_maincpu->space(AS_PROGRAM).install_read_handler(0xc000, 0xcfff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_exp_0c));
461   if (m_exp_0d->cart_mounted())
461   if (m_exp_0d->exists())
462462      m_maincpu->space(AS_PROGRAM).install_read_handler(0xd000, 0xdfff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_exp_0d));
463463}
464464
r32283r32284
515515   MCFG_PIA_IRQA_HANDLER(DEVWRITELINE("maincpu", m6809e_device, irq_line))
516516   MCFG_PIA_IRQB_HANDLER(DEVWRITELINE("maincpu", m6809e_device, irq_line))
517517
518   MCFG_GENERIC_SOCKET_ADD("exp00", GENERIC_ROM8_WIDTH, generic_plain_slot, "pegasus_cart")
518   MCFG_GENERIC_SOCKET_ADD("exp00", generic_plain_slot, "pegasus_cart")
519519   MCFG_GENERIC_LOAD(pegasus_state, exp00_load)
520520
521   MCFG_GENERIC_SOCKET_ADD("exp01", GENERIC_ROM8_WIDTH, generic_plain_slot, "pegasus_cart")
521   MCFG_GENERIC_SOCKET_ADD("exp01", generic_plain_slot, "pegasus_cart")
522522   MCFG_GENERIC_LOAD(pegasus_state, exp01_load)
523523
524   MCFG_GENERIC_SOCKET_ADD("exp02", GENERIC_ROM8_WIDTH, generic_plain_slot, "pegasus_cart")
524   MCFG_GENERIC_SOCKET_ADD("exp02", generic_plain_slot, "pegasus_cart")
525525   MCFG_GENERIC_LOAD(pegasus_state, exp02_load)
526526
527   MCFG_GENERIC_SOCKET_ADD("exp0c", GENERIC_ROM8_WIDTH, generic_plain_slot, "pegasus_cart")
527   MCFG_GENERIC_SOCKET_ADD("exp0c", generic_plain_slot, "pegasus_cart")
528528   MCFG_GENERIC_LOAD(pegasus_state, exp0c_load)
529529
530   MCFG_GENERIC_SOCKET_ADD("exp0d", GENERIC_ROM8_WIDTH, generic_plain_slot, "pegasus_cart")
530   MCFG_GENERIC_SOCKET_ADD("exp0d", generic_plain_slot, "pegasus_cart")
531531   MCFG_GENERIC_LOAD(pegasus_state, exp0d_load)
532532
533533   MCFG_CASSETTE_ADD("cassette")
trunk/src/mess/drivers/advision.c
r32283r32284
9494   MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
9595
9696   /* cartridge */
97   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_plain_slot, "advision_cart")
97   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "advision_cart")
9898   MCFG_GENERIC_MANDATORY
9999
100100   /* Software lists */
trunk/src/mess/drivers/rx78.c
r32283r32284
410410void rx78_state::machine_reset()
411411{
412412   address_space &prg = m_maincpu->space(AS_PROGRAM);   
413   if (m_cart->cart_mounted())
413   if (m_cart->exists())
414414      prg.install_read_handler(0x2000, 0x5fff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_cart));
415415}
416416
r32283r32284
424424      return IMAGE_INIT_FAIL;
425425   }
426426   
427   m_cart->rom_alloc(size, 1);
427   m_cart->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
428428   m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");         
429429   
430430   return IMAGE_INIT_PASS;
r32283r32284
468468   MCFG_PALETTE_ADD("palette", 16+1) //+1 for the background color
469469   MCFG_GFXDECODE_ADD("gfxdecode", "palette", rx78)
470470
471   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_plain_slot, "rx78_cart")
471   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "rx78_cart")
472472   MCFG_GENERIC_EXTENSIONS("bin,rom")
473473   MCFG_GENERIC_LOAD(rx78_state, rx78_cart)
474474
trunk/src/mess/drivers/m5.c
r32283r32284
547547      break;
548548   }
549549
550   if (m_cart->cart_mounted())
550   if (m_cart->exists())
551551      program.install_read_handler(0x2000, 0x6fff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_cart));
552552
553553   // register for state saving
r32283r32284
616616   MCFG_FLOPPY_DRIVE_ADD(UPD765_TAG ":0", m5_floppies, "525dd", m5_state::floppy_formats)
617617
618618   // cartridge
619   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_plain_slot, "m5_cart")
619   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "m5_cart")
620620   MCFG_GENERIC_EXTENSIONS("bin,rom")
621621   //MCFG_GENERIC_MANDATORY
622622
trunk/src/mess/drivers/sorcerer.c
r32283r32284
450450   MCFG_CASSETTE_INTERFACE("sorcerer_cass")
451451
452452   /* cartridge */
453   MCFG_GENERIC_CARTSLOT_ADD("cartslot", GENERIC_ROM8_WIDTH, generic_plain_slot, "sorcerer_cart")
453   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "sorcerer_cart")
454454   MCFG_GENERIC_EXTENSIONS("bin,rom")
455455
456456   /* software lists */
trunk/src/mess/machine/aim65.c
r32283r32284
143143   address_space &space = m_maincpu->space(AS_PROGRAM);
144144
145145   // Init ROM sockets
146   if (m_z24->cart_mounted())
146   if (m_z24->exists())
147147      space.install_read_handler(0xd000, 0xdfff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_z24));
148   if (m_z25->cart_mounted())
148   if (m_z25->exists())
149149      space.install_read_handler(0xc000, 0xcfff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_z25));
150   if (m_z26->cart_mounted())
150   if (m_z26->exists())
151151      space.install_read_handler(0xb000, 0xbfff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_z26));
152152   
153153   // Init RAM
trunk/src/mess/machine/sorcerer.c
r32283r32284
373373      break;
374374   }
375375
376   if (m_cart->cart_mounted())
376   if (m_cart->exists())
377377      space.install_read_handler(0xc000, 0xdfff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_cart));
378378}
379379
trunk/src/mess/machine/gamepock.c
r32283r32284
137137   hd44102ch_init( 1 );
138138   hd44102ch_init( 2 );
139139
140   if (m_cart->cart_mounted())
140   if (m_cart->exists())
141141      m_maincpu->space(AS_PROGRAM).install_read_handler(0x4000,0xbfff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_cart));
142142   
143143}
trunk/src/mess/machine/svi318.c
r32283r32284
5959      return IMAGE_INIT_FAIL;
6060   }
6161
62   m_cart->rom_alloc(size, 1);
62   m_cart->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
6363   m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");         
6464
6565   if (image.software_entry() == NULL && !cart_verify(m_cart->get_rom_base()))

Previous 199869 Revisions Next


© 1997-2024 The MAME Team