Previous 199869 Revisions Next

r32594 Thursday 9th October, 2014 at 07:27:56 UTC by Fabio Priuli
and one more. nw.
[hash]pet_flop.xml
[src/mess/drivers]pet.c
[src/mess/includes]pet.h

trunk/hash/pet_flop.xml
r32593r32594
292292   <software name="hardbox">
293293      <description>HardBox Utilities</description>
294294      <year>1981</year>
295      <publisher>Small Systems Engineering"</publisher>
295      <publisher>Small Systems Engineering</publisher>
296296
297297      <part name="flop1" interface="floppy_5_25">
298298         <dataarea name="flop" size="533248">
trunk/src/mess/drivers/pet.c
r32593r32594
151151
152152#include "includes/pet.h"
153153#include "bus/ieee488/c2040.h"
154#include "imagedev/cartslot.h"
155154#include "machine/cbm_snqk.h"
156155
157156
r32593r32594
230229      data = m_video_ram[offset & (m_video_ram_size - 1)];
231230      break;
232231
233   case SEL9: case SELA: case SELB: case SELC: case SELD: case SELF:
232   case SEL9:
234233      if (norom)
235234      {
235         if (m_cart_9000 && m_cart_9000->exists())
236            data = m_cart_9000->read_rom(space, offset & 0xfff);
237         else
238            data = m_rom->base()[offset - 0x9000];
239      }
240      break;
241
242   case SELA:
243      if (norom)
244      {
245         if (m_cart_a000 && m_cart_a000->exists())
246            data = m_cart_a000->read_rom(space, offset & 0xfff);
247         else
248            data = m_rom->base()[offset - 0x9000];
249      }
250      break;
251         
252   case SELB:
253      if (norom)
254      {
255         if (m_cart_b000 && m_cart_b000->exists())
256            data = m_cart_b000->read_rom(space, offset & 0xfff);
257         else
258            data = m_rom->base()[offset - 0x9000];
259      }
260      break;
261         
262   case SELC: case SELD: case SELF:
263      if (norom)
264      {
236265         data = m_rom->base()[offset - 0x9000];
237266      }
238267      break;
r32593r32594
406435   }
407436   if (!cs9)
408437   {
409      data = m_rom->base()[offset & 0xfff];
438      if (m_cart_9000 && m_cart_9000->exists())
439         data = m_cart_9000->read_rom(space, offset & 0xfff);
440      else
441         data = m_rom->base()[offset & 0xfff];
410442   }
411443   if (!csa)
412444   {
413      data = m_rom->base()[0x1000 | (offset & 0xfff)];
445      if (m_cart_a000 && m_cart_a000->exists())
446         data = m_cart_a000->read_rom(space, offset & 0xfff);
447      else
448         data = m_rom->base()[0x1000 | (offset & 0xfff)];
414449   }
415450   if (!cse)
416451   {
r32593r32594
15011536//-------------------------------------------------
15021537
15031538static MACHINE_CONFIG_DERIVED( pet2001n, pet )
1504   MCFG_CARTSLOT_ADD("9000")
1505   MCFG_CARTSLOT_EXTENSION_LIST("bin,rom")
1506   MCFG_CARTSLOT_INTERFACE("pet_9000_rom")
1539   MCFG_GENERIC_CARTSLOT_ADD("cart_9000", generic_linear_slot, "pet_9000_rom")
1540   MCFG_GENERIC_EXTENSIONS("bin,rom")
15071541
1508   MCFG_CARTSLOT_ADD("a000")
1509   MCFG_CARTSLOT_EXTENSION_LIST("bin,rom")
1510   MCFG_CARTSLOT_INTERFACE("pet_a000_rom")
1542   MCFG_GENERIC_CARTSLOT_ADD("cart_a000", generic_linear_slot, "pet_a000_rom")
1543   MCFG_GENERIC_EXTENSIONS("bin,rom")
15111544
1512   MCFG_CARTSLOT_ADD("b000")
1513   MCFG_CARTSLOT_EXTENSION_LIST("bin,rom")
1514   MCFG_CARTSLOT_INTERFACE("pet_b000_rom")
1545   MCFG_GENERIC_CARTSLOT_ADD("cart_b000", generic_linear_slot, "pet_b000_rom")
1546   MCFG_GENERIC_EXTENSIONS("bin,rom")
15151547
15161548   MCFG_SOFTWARE_LIST_ADD("rom_list", "pet_rom")
15171549MACHINE_CONFIG_END
r32593r32594
16491681//-------------------------------------------------
16501682
16511683static MACHINE_CONFIG_DERIVED( pet4000, pet2001n )
1652   MCFG_DEVICE_REMOVE("b000")
1684   MCFG_DEVICE_REMOVE("cart_b000")
16531685MACHINE_CONFIG_END
16541686
16551687
r32593r32594
17211753   MCFG_DEVICE_REMOVE("sync_timer")
17221754   MCFG_TIMER_DRIVER_ADD_PERIODIC("sync_timer", pet_state, sync_tick, attotime::from_hz(100))
17231755
1724   MCFG_DEVICE_REMOVE("b000")
1756   MCFG_DEVICE_REMOVE("cart_b000")
17251757MACHINE_CONFIG_END
17261758
17271759
r32593r32594
17831815//-------------------------------------------------
17841816
17851817static MACHINE_CONFIG_DERIVED( pet4000b, pet2001b )
1786   MCFG_DEVICE_REMOVE("b000")
1818   MCFG_DEVICE_REMOVE("cart_b000")
17871819MACHINE_CONFIG_END
17881820
17891821
r32593r32594
18111843   MCFG_DEVICE_REMOVE("sync_timer")
18121844   MCFG_TIMER_DRIVER_ADD_PERIODIC("sync_timer", pet_state, sync_tick, attotime::from_hz(100))
18131845
1814   MCFG_DEVICE_REMOVE("b000")
1846   MCFG_DEVICE_REMOVE("cart_b000")
18151847MACHINE_CONFIG_END
18161848
18171849
r32593r32594
19081940
19091941   MCFG_QUICKLOAD_ADD("quickload", pet_state, cbm_pet, "p00,prg", CBM_QUICKLOAD_DELAY_SECONDS)
19101942
1911   MCFG_CARTSLOT_ADD("9000")
1912   MCFG_CARTSLOT_EXTENSION_LIST("bin,rom")
1913   MCFG_CARTSLOT_INTERFACE("pet_9000_rom")
1943   MCFG_GENERIC_CARTSLOT_ADD("cart_9000", generic_linear_slot, "pet_9000_rom")
1944   MCFG_GENERIC_EXTENSIONS("bin,rom")
19141945
1915   MCFG_CARTSLOT_ADD("a000")
1916   MCFG_CARTSLOT_EXTENSION_LIST("bin,rom")
1917   MCFG_CARTSLOT_INTERFACE("pet_a000_rom")
1946   MCFG_GENERIC_CARTSLOT_ADD("cart_a000", generic_linear_slot, "pet_a000_rom")
1947   MCFG_GENERIC_EXTENSIONS("bin,rom")
19181948
19191949   // software lists
19201950   MCFG_SOFTWARE_LIST_ADD("cass_list", "pet_cass")
r32593r32594
20392069
20402070ROM_START( pet2001n )
20412071   ROM_REGION( 0x7000, M6502_TAG, 0 )
2042   ROM_CART_LOAD( "9000", 0x0000, 0x1000, ROM_MIRROR )
2043   ROM_CART_LOAD( "a000", 0x1000, 0x1000, ROM_MIRROR )
2044   ROM_CART_LOAD( "b000", 0x2000, 0x1000, ROM_MIRROR )
20452072   ROM_LOAD( "901465-01.ud6", 0x3000, 0x1000, CRC(63a7fe4a) SHA1(3622111f486d0e137022523657394befa92bde44) )   // BASIC 2
20462073   ROM_LOAD( "901465-02.ud7", 0x4000, 0x1000, CRC(ae4cb035) SHA1(1bc0ebf27c9bb62ad71bca40313e874234cab6ac) )   // BASIC 2
20472074   ROM_LOAD( "901447-24.ud8", 0x5000, 0x0800, CRC(e459ab32) SHA1(5e5502ce32f5a7e387d65efe058916282041e54b) )   // Screen Editor (40 columns, no CRTC, Normal Keyb)
r32593r32594
20642091
20652092ROM_START( pet2001b )
20662093   ROM_REGION( 0x7000, M6502_TAG, 0 )
2067   ROM_CART_LOAD( "9000", 0x0000, 0x1000, ROM_MIRROR )
2068   ROM_CART_LOAD( "a000", 0x1000, 0x1000, ROM_MIRROR )
2069   ROM_CART_LOAD( "b000", 0x2000, 0x1000, ROM_MIRROR )
20702094   ROM_LOAD( "901465-01.ud6", 0x3000, 0x1000, CRC(63a7fe4a) SHA1(3622111f486d0e137022523657394befa92bde44) )   // BASIC 2
20712095   ROM_LOAD( "901465-02.ud7", 0x4000, 0x1000, CRC(ae4cb035) SHA1(1bc0ebf27c9bb62ad71bca40313e874234cab6ac) )   // BASIC 2
20722096   ROM_LOAD( "901474-01.ud8", 0x5000, 0x0800, CRC(05db957e) SHA1(174ace3a8c0348cd21d39cc864e2adc58b0101a9) )   // Screen Editor (40 columns, no CRTC, Business Keyb)
r32593r32594
20872111
20882112ROM_START( pet4016 )
20892113   ROM_REGION( 0x7000, M6502_TAG, 0 )
2090   ROM_CART_LOAD( "9000", 0x0000, 0x1000, ROM_MIRROR )
2091   ROM_CART_LOAD( "a000", 0x1000, 0x1000, ROM_MIRROR )
20922114   ROM_DEFAULT_BIOS( "basic4r" )
20932115   ROM_SYSTEM_BIOS( 0, "basic4", "Original" )
20942116   ROMX_LOAD( "901465-19.ud5", 0x2000, 0x1000, CRC(3a5f5721) SHA1(bc2b7c99495fea3eda950ee9e3d6cabe448a452b), ROM_BIOS(1) )
r32593r32594
21122134
21132135ROM_START( pet4032f )
21142136   ROM_REGION( 0x7000, M6502_TAG, 0 )
2115   ROM_CART_LOAD( "9000", 0x0000, 0x1000, ROM_MIRROR )
2116   ROM_CART_LOAD( "a000", 0x1000, 0x1000, ROM_MIRROR )
21172137   ROM_DEFAULT_BIOS( "basic4r" )
21182138   ROM_SYSTEM_BIOS( 0, "basic4", "Original" )
21192139   ROMX_LOAD( "901465-19.ud5", 0x2000, 0x1000, CRC(3a5f5721) SHA1(bc2b7c99495fea3eda950ee9e3d6cabe448a452b), ROM_BIOS(1) )
r32593r32594
21352155
21362156ROM_START( cbm4016 )
21372157   ROM_REGION( 0x7000, M6502_TAG, 0 )
2138   ROM_CART_LOAD( "9000", 0x0000, 0x1000, ROM_MIRROR )
2139   ROM_CART_LOAD( "a000", 0x1000, 0x1000, ROM_MIRROR )
21402158   ROM_DEFAULT_BIOS( "basic4r" )
21412159   ROM_SYSTEM_BIOS( 0, "basic4", "Original" )
21422160   ROMX_LOAD( "901465-19.ud5", 0x2000, 0x1000, CRC(3a5f5721) SHA1(bc2b7c99495fea3eda950ee9e3d6cabe448a452b), ROM_BIOS(1) )
r32593r32594
21602178
21612179ROM_START( cbm4032f )
21622180   ROM_REGION( 0x7000, M6502_TAG, 0 )
2163   ROM_CART_LOAD( "9000", 0x0000, 0x1000, ROM_MIRROR )
2164   ROM_CART_LOAD( "a000", 0x1000, 0x1000, ROM_MIRROR )
21652181   ROM_DEFAULT_BIOS( "basic4r" )
21662182   ROM_SYSTEM_BIOS( 0, "basic4", "Original" )
21672183   ROMX_LOAD( "901465-19.ud5", 0x2000, 0x1000, CRC(3a5f5721) SHA1(bc2b7c99495fea3eda950ee9e3d6cabe448a452b), ROM_BIOS(1) )
r32593r32594
21832199
21842200ROM_START( pet4032b )
21852201   ROM_REGION( 0x7000, M6502_TAG, 0 )
2186   ROM_CART_LOAD( "9000", 0x0000, 0x1000, ROM_MIRROR )
2187   ROM_CART_LOAD( "a000", 0x1000, 0x1000, ROM_MIRROR )
21882202   ROM_DEFAULT_BIOS( "basic4r" )
21892203   ROM_SYSTEM_BIOS( 0, "basic4", "Original" )
21902204   ROMX_LOAD( "901465-19.ud5", 0x2000, 0x1000, CRC(3a5f5721) SHA1(bc2b7c99495fea3eda950ee9e3d6cabe448a452b), ROM_BIOS(1) )
r32593r32594
22082222
22092223ROM_START( pet8032 )
22102224   ROM_REGION( 0x7000, M6502_TAG, 0 )
2211   ROM_CART_LOAD( "9000", 0x0000, 0x1000, ROM_MIRROR )
2212   ROM_CART_LOAD( "a000", 0x1000, 0x1000, ROM_MIRROR )
22132225   ROM_LOAD( "901465-23.ud10", 0x2000, 0x1000, CRC(ae3deac0) SHA1(975ee25e28ff302879424587e5fb4ba19f403adc) )  // BASIC 4
22142226   ROM_LOAD( "901465-20.ud9", 0x3000, 0x1000, CRC(0fc17b9c) SHA1(242f98298931d21eaacb55fe635e44b7fc192b0a) )   // BASIC 4
22152227   ROM_LOAD( "901465-21.ud8", 0x4000, 0x1000, CRC(36d91855) SHA1(1bb236c72c726e8fb029c68f9bfa5ee803faf0a8) )   // BASIC 4
r32593r32594
22272239
22282240ROM_START( cbm8032 )
22292241   ROM_REGION( 0x7000, M6502_TAG, 0 )
2230   ROM_CART_LOAD( "9000", 0x0000, 0x1000, ROM_MIRROR )
2231   ROM_CART_LOAD( "a000", 0x1000, 0x1000, ROM_MIRROR )
22322242   ROM_LOAD( "901465-23.ud10", 0x2000, 0x1000, CRC(ae3deac0) SHA1(975ee25e28ff302879424587e5fb4ba19f403adc) )  // BASIC 4
22332243   ROM_LOAD( "901465-20.ud9", 0x3000, 0x1000, CRC(0fc17b9c) SHA1(242f98298931d21eaacb55fe635e44b7fc192b0a) )   // BASIC 4
22342244   ROM_LOAD( "901465-21.ud8", 0x4000, 0x1000, CRC(36d91855) SHA1(1bb236c72c726e8fb029c68f9bfa5ee803faf0a8) )   // BASIC 4
r32593r32594
22482258
22492259ROM_START( cbm8032_de )
22502260   ROM_REGION( 0x7000, M6502_TAG, 0 )
2251   ROM_CART_LOAD( "9000", 0x0000, 0x1000, ROM_MIRROR )
2252   ROM_CART_LOAD( "a000", 0x1000, 0x1000, ROM_MIRROR )
22532261   ROM_LOAD( "901465-23.ud10", 0x2000, 0x1000, CRC(ae3deac0) SHA1(975ee25e28ff302879424587e5fb4ba19f403adc) )  // BASIC 4
22542262   ROM_LOAD( "901465-20.ud9", 0x3000, 0x1000, CRC(0fc17b9c) SHA1(242f98298931d21eaacb55fe635e44b7fc192b0a) )   // BASIC 4
22552263   ROM_LOAD( "901465-21.ud8", 0x4000, 0x1000, CRC(36d91855) SHA1(1bb236c72c726e8fb029c68f9bfa5ee803faf0a8) )   // BASIC 4
r32593r32594
22672275
22682276ROM_START( cbm8032_se )
22692277   ROM_REGION( 0x7000, M6502_TAG, 0 )
2270   ROM_CART_LOAD( "9000", 0x0000, 0x1000, ROM_MIRROR )
2271   ROM_CART_LOAD( "a000", 0x1000, 0x1000, ROM_MIRROR )
22722278   ROM_LOAD( "901465-23.ud10", 0x2000, 0x1000, CRC(ae3deac0) SHA1(975ee25e28ff302879424587e5fb4ba19f403adc) )  // BASIC 4
22732279   ROM_LOAD( "901465-20.ud9", 0x3000, 0x1000, CRC(0fc17b9c) SHA1(242f98298931d21eaacb55fe635e44b7fc192b0a) )   // BASIC 4
22742280   ROM_LOAD( "901465-21.ud8", 0x4000, 0x1000, CRC(36d91855) SHA1(1bb236c72c726e8fb029c68f9bfa5ee803faf0a8) )   // BASIC 4
r32593r32594
22862292
22872293ROM_START( superpet )
22882294   ROM_REGION( 0x7000, M6502_TAG, 0 )
2289   ROM_CART_LOAD( "9000", 0x0000, 0x1000, ROM_MIRROR )
2290   ROM_CART_LOAD( "a000", 0x1000, 0x1000, ROM_MIRROR )
22912295   ROM_LOAD( "901465-23.ud10", 0x2000, 0x1000, CRC(ae3deac0) SHA1(975ee25e28ff302879424587e5fb4ba19f403adc) )  // BASIC 4
22922296   ROM_LOAD( "901465-20.ud9", 0x3000, 0x1000, CRC(0fc17b9c) SHA1(242f98298931d21eaacb55fe635e44b7fc192b0a) )   // BASIC 4
22932297   ROM_LOAD( "901465-21.ud8", 0x4000, 0x1000, CRC(36d91855) SHA1(1bb236c72c726e8fb029c68f9bfa5ee803faf0a8) )   // BASIC 4
r32593r32594
23072311
23082312ROM_START( mmf9000_se )
23092313   ROM_REGION( 0x7000, M6502_TAG, 0 )
2310   ROM_CART_LOAD( "9000", 0x0000, 0x1000, ROM_MIRROR )
2311   ROM_CART_LOAD( "a000", 0x1000, 0x1000, ROM_MIRROR )
23122314   ROM_LOAD( "901465-23.ud10", 0x2000, 0x1000, CRC(ae3deac0) SHA1(975ee25e28ff302879424587e5fb4ba19f403adc) )  // BASIC 4
23132315   ROM_LOAD( "901465-20.ud9", 0x3000, 0x1000, CRC(0fc17b9c) SHA1(242f98298931d21eaacb55fe635e44b7fc192b0a) )   // BASIC 4
23142316   ROM_LOAD( "901465-21.ud8", 0x4000, 0x1000, CRC(36d91855) SHA1(1bb236c72c726e8fb029c68f9bfa5ee803faf0a8) )   // BASIC 4
r32593r32594
23252327//-------------------------------------------------
23262328
23272329ROM_START( cbm8296 )
2328   ROM_REGION( 0x2000, M6502_TAG, 0 )
2329   ROM_CART_LOAD( "9000", 0x0000, 0x1000, ROM_MIRROR )
2330   ROM_CART_LOAD( "a000", 0x1000, 0x1000, ROM_MIRROR )
2330   ROM_REGION( 0x2000, M6502_TAG, ROMREGION_ERASE00 )
23312331
23322332   ROM_REGION( 0x4000, "basic", 0 )
23332333   ROM_LOAD( "324746-01.ue7", 0x0000, 0x4000, CRC(7935b528) SHA1(5ab17ee70467152bf2130e3f48a2aa81e9df93c9) )   // BASIC 4
r32593r32594
23952395//-------------------------------------------------
23962396
23972397ROM_START( cbm8296d )
2398   ROM_REGION( 0x2000, M6502_TAG, 0 )
2399   ROM_CART_LOAD( "9000", 0x0000, 0x1000, ROM_MIRROR )
2400   ROM_CART_LOAD( "a000", 0x1000, 0x1000, ROM_MIRROR )
2398   ROM_REGION( 0x2000, M6502_TAG, ROMREGION_ERASE00 )
24012399
24022400   ROM_REGION( 0x4000, "basic", 0 )
24032401   ROM_LOAD( "324746-01.ue7", 0x0000, 0x4000, CRC(7935b528) SHA1(5ab17ee70467152bf2130e3f48a2aa81e9df93c9) )   // BASIC 4
r32593r32594
24302428//-------------------------------------------------
24312429
24322430ROM_START( cbm8296d_de )
2433   ROM_REGION( 0x2000, M6502_TAG, 0 )
2434   ROM_CART_LOAD( "9000", 0x0000, 0x1000, ROM_MIRROR )
2435   ROM_CART_LOAD( "a000", 0x1000, 0x1000, ROM_MIRROR )
2431   ROM_REGION( 0x2000, M6502_TAG, ROMREGION_ERASE00 )
24362432
24372433   ROM_REGION( 0x4000, "basic", 0 )
24382434   ROM_LOAD( "324746-01.ue7", 0x0000, 0x4000, CRC(7935b528) SHA1(5ab17ee70467152bf2130e3f48a2aa81e9df93c9) )   // BASIC 4
trunk/src/mess/includes/pet.h
r32593r32594
2020#include "sound/speaker.h"
2121#include "video/mc6845.h"
2222
23#include "bus/generic/slot.h"
24#include "bus/generic/carts.h"
25
2326#define M6502_TAG       "f3"
2427#define M6522_TAG       "a5"
2528#define M6520_1_TAG     "g8"
r32593r32594
4750      m_exp(*this, PET_EXPANSION_SLOT_TAG),
4851      m_user(*this, PET_USER_PORT_TAG),
4952      m_speaker(*this, "speaker"),
53      m_cart_9000(*this, "cart_9000"),
54      m_cart_a000(*this, "cart_a000"),
55      m_cart_b000(*this, "cart_b000"),
5056      m_ram(*this, RAM_TAG),
5157      m_rom(*this, M6502_TAG),
5258      m_char_rom(*this, "charom"),
r32593r32594
8793   required_device<pet_expansion_slot_device> m_exp;
8894   required_device<pet_user_port_device> m_user;
8995   optional_device<speaker_sound_device> m_speaker;
96   optional_device<generic_slot_device> m_cart_9000;
97   optional_device<generic_slot_device> m_cart_a000;
98   optional_device<generic_slot_device> m_cart_b000;
9099   required_device<ram_device> m_ram;
91100   required_memory_region m_rom;
92101   required_memory_region m_char_rom;

Previous 199869 Revisions Next


© 1997-2024 The MAME Team