Previous 199869 Revisions Next

r45049 Saturday 20th February, 2016 at 20:39:37 UTC by Roberto Fresca
New clones marked as NOT_WORKING
--------------------------------
Royal Poker '96 (set 4, C3 board) [Roberto Fresca, Ioannis Bampoulas]
[src/devices/bus/isa]3c505.cpp 3c505.h omti8621.cpp omti8621.h sc499.cpp sc499.h
[src/mame]arcade.lst
[src/mame/drivers]goldstar.cpp
[src/mame/video]apollo.cpp

trunk/src/devices/bus/isa/3c505.cpp
r253560r253561
2626#define LOG1(d,x) { if (verbose > 0) LOG(d,x)}
2727#define LOG2(d,x) { if (verbose > 1) LOG(d,x)}
2828
29#define  MAINCPU "maincpu"
30
2931#ifdef LSB_FIRST
3032static UINT16 uint16_to_le(UINT16 value)
3133{
r253560r253561
422424{
423425   static char statebuf[64]; /* string buffer containing state description */
424426
425   device_t *cpu = machine().firstcpu;
427   device_t *cpu = machine().device(MAINCPU);
426428   osd_ticks_t t = osd_ticks();
427429   int s = t / osd_ticks_per_second();
428430   int ms = (t % osd_ticks_per_second()) / 1000;
r253560r253561
440442   return statebuf;
441443}
442444
443/*-------------------------------------------------
444 logerror - log an error message (w/o device tags)
445 -------------------------------------------------*/
446
447void threecom3c505_device::logerror(const char *format, ...) const
448{
449   va_list arg;
450   va_start(arg, format);
451   machine().vlogerror(format, arg);
452   va_end(arg);
453}
454
455445//**************************************************************************
456446//  data_buffer
457447//**************************************************************************
r253560r253561
865855
866856void threecom3c505_device::set_command_pending(int state)
867857{
868   LOG2(this,("set_command_pending %d -> %d m_wait_for_ack=%d m_wait_for_nak=%d m_rx_pending=%d",
869               m_command_pending, state, m_wait_for_ack, m_wait_for_nak, m_rx_pending));
858   LOG2(this,("set_command_pending %d -> %d m_wait_for_ack=%d m_wait_for_nak=%d m_rx_pending=%d%s",
859               m_command_pending, state, m_wait_for_ack, m_wait_for_nak, m_rx_pending, state ? "" :"\n"));
870860
871861//- verbose = onoff ? 1 : 2;
872862
r253560r253561
16671657
16681658int threecom3c505_device::tx_data(device_t *device, const UINT8 data[], int length)
16691659{
1670   LOG1(this,("threecom3c505_device::tx_data length=%d", length));
1660   LOG1(device,("threecom3c505_device::tx_data length=%d", length));
16711661   return 1;
16721662}
16731663
trunk/src/devices/bus/isa/3c505.h
r253560r253561
143143   virtual int setfilter(device_t *, int);
144144
145145   const char *cpu_context();
146   void logerror(const char *format, ...) const;
147146
148147   // device-level overrides
149148   virtual void device_start() override;
trunk/src/devices/bus/isa/omti8621.cpp
r253560r253561
7373   virtual void device_reset() override;
7474
7575   void omti_disk_config(UINT16 disk_type);
76
77private:
78   void logerror(const char *format, ...) const;
79
8076public:
8177   UINT16 m_type;
8278   UINT16 m_cylinders;
r253560r253561
689685   memset(disk->m_esdi_defect_list+6, 0xff, 5); // end of defect list
690686}
691687
692/*-------------------------------------------------
693 logerror - log an error message (w/o device tags)
694 -------------------------------------------------*/
695
696void omti8621_device::logerror(const char *format, ...) const
697{
698   va_list arg;
699   va_start(arg, format);
700   machine().vlogerror(format, arg);
701   va_end(arg);
702}
703
704688/***************************************************************************
705689 log_command - log command from a command descriptor block
706690 ***************************************************************************/
r253560r253561
709693{
710694   if (verbose > 0) {
711695      int i;
712      logerror("%s: OMTI command ", cpu_context(this));
696      char sb[100];
697      std::string text(cpu_context(this));
698      text += ": OMTI command ";
713699      switch (cdb[0]) {
714700      case OMTI_CMD_TEST_DRIVE_READY: // 0x00
715         logerror("Test Drive Ready");
701         text += "Test Drive Ready";
716702         break;
717703      case OMTI_CMD_RECALIBRATE: // 0x01
718         logerror("Recalibrate");
704         text += "Recalibrate";
719705         break;
720706      case OMTI_CMD_REQUEST_SENSE: // 0x03
721         logerror("Request Sense");
707         text += "Request Sense";
722708         break;
723709      case OMTI_CMD_READ_VERIFY: // 0x05
724         logerror("Read Verify");
710         text += "Read Verify";
725711         break;
726712      case OMTI_CMD_FORMAT_TRACK: // 0x06
727         logerror("Format Track");
713         text += "Format Track";
728714         break;
729715      case OMTI_CMD_FORMAT_BAD_TRACK: // 0x07
730         logerror("Format Bad Track");
716         text += "Format Bad Track";
731717         break;
732718      case OMTI_CMD_READ: // 0x08
733         logerror("Read");
719         text += "Read";
734720         break;
735721      case OMTI_CMD_WRITE: // 0x0A
736         logerror("Write");
722         text += "Write";
737723         break;
738724      case OMTI_CMD_SEEK: // 0x0B
739         logerror("Seek");
725         text += "Seek";
740726         break;
741727      case OMTI_CMD_READ_SECTOR_BUFFER: // 0x0E
742         logerror("Read Sector Buffer");
728         text += "Read Sector Buffer";
743729         break;
744730      case OMTI_CMD_WRITE_SECTOR_BUFFER: // 0x0F
745         logerror("Write Sector Buffer");
731         text += "Write Sector Buffer";
746732         break;
747733      case OMTI_CMD_ASSIGN_ALTERNATE_TRACK: // 0x11
748         logerror("Assign Alternate Track");
734         text += "Assign Alternate Track";
749735         break;
750736      case OMTI_CMD_READ_DATA_TO_BUFFER: // 0x1E
751         logerror("Read Data to Buffer");
737         text += "Read Data to Buffer";
752738         break;
753739      case OMTI_CMD_WRITE_DATA_FROM_BUFFER: // 0x1F
754         logerror("Write Data from Buffer");
740         text += "Write Data from Buffer";
755741         break;
756742      case OMTI_CMD_COPY: // 0x20
757         logerror("Copy");
743         text += "Copy";
758744         break;
759745      case OMTI_CMD_READ_ESDI_DEFECT_LIST: // 0x37
760         logerror("Read ESDI Defect List");
746         text += "Read ESDI Defect List";
761747         break;
762748      case OMTI_CMD_RAM_DIAGNOSTICS: // 0xE0
763         logerror("RAM. Diagnostic");
749         text += "RAM. Diagnostic";
764750         break;
765751      case OMTI_CMD_CONTROLLER_INT_DIAGNOSTIC: // 0xE4
766         logerror("Controller Int. Diagnostic");
752         text += "Controller Int. Diagnostic";
767753         break;
768754      case OMTI_CMD_READ_LONG: // 0xE5
769         logerror("Read Long");
755         text += "Read Long";
770756         break;
771757      case OMTI_CMD_WRITE_LONG: // 0xE6
772         logerror("Write Long");
758         text += "Write Long";
773759         break;
774760      case OMTI_CMD_READ_CONFIGURATION: // 0xEC
775         logerror("Read Configuration");
761         text += "Read Configuration";
776762         break;
777763      case OMTI_CMD_INVALID_COMMAND: // 0xFF
778         logerror("Invalid Command");
764         text += "Invalid Command";
779765         break;
780766      default:
781         logerror("!!! Unexpected Command !!!");
767         text += "!!! Unexpected Command !!!";
782768      }
783769//      logerror(" (%02x, length=%02x)", cdb[0], cdb_length);
784770      for (i = 0; i < cdb_length; i++) {
785         logerror(" %02x", cdb[i]);
771         sprintf(sb, " %02x", cdb[i]);
772         text += sb;
786773      }
787774
788775      switch (cdb[0]) {
r253560r253561
793780      case OMTI_CMD_READ_DATA_TO_BUFFER: // 0x1E
794781      case OMTI_CMD_WRITE_DATA_FROM_BUFFER: // 0x1F
795782      case OMTI_CMD_COPY: // 0x20
796         logerror(" (diskaddr=%x count=%x)", get_disk_address(cdb), cdb[4]);
783         sprintf(sb, " (diskaddr=%x count=%x)", get_disk_address(cdb), cdb[4]);
784         text += sb;
797785         break;
798786      }
799      logerror("\n");
787      text += "\n";
788      logerror(text.c_str());
800789   }
801790}
802791
r253560r253561
806795
807796void omti8621_device::log_data()
808797{
809   if (verbose > 0) {
798   if (verbose > 0)
799   {
810800      int i;
811      logerror("%s: OMTI data (length=%02x)", cpu_context(this),
801      char sb[100];
802      sprintf(sb, "%s: OMTI data (length=%02x)", cpu_context(this),
812803            data_length);
813      for (i = 0; i < data_length && i < OMTI_DISK_SECTOR_SIZE; i++) {
814         logerror(" %02x", data_buffer[i]);
804      std::string text(sb);
805      for (i = 0; i < data_length && i < OMTI_DISK_SECTOR_SIZE; i++)
806      {
807         sprintf(sb, " %02x", data_buffer[i]);
808         text += sb;
815809      }
816810
817      if (i < data_length) {
818         logerror(" ...");
811      if (i < data_length)
812      {
813         text += " ...";
819814      }
820      logerror("\n");
815      text += "\n";
816      logerror(text.c_str());
821817   }
822818}
823819
r253560r253561
13551351}
13561352
13571353/*-------------------------------------------------
1358 logerror - log an error message (w/o device tags)
1359 -------------------------------------------------*/
1360
1361void omti_disk_image_device::logerror(const char *format, ...) const
1362{
1363   va_list arg;
1364   va_start(arg, format);
1365   machine().vlogerror(format, arg);
1366   va_end(arg);
1367}
1368
1369/*-------------------------------------------------
13701354    device start callback
13711355-------------------------------------------------*/
13721356
trunk/src/devices/bus/isa/omti8621.h
r253560r253561
114114   void copy_sectors(INT32 dst_addr, INT32 src_addr, UINT8 count, UINT8 lun);
115115   void format_track(const UINT8 * cdb);
116116   void set_esdi_defect_list(UINT8 lun, UINT8 head);
117
118   void logerror(const char *format, ...) const;
119
120117   void log_command(const UINT8 cdb[], const UINT16 cdb_length);
121118   void log_data();
122119   void do_command(const UINT8 cdb[], const UINT16 cdb_length);
trunk/src/devices/bus/isa/sc499.cpp
r253560r253561
409409{
410410   static char statebuf[64]; /* string buffer containing state description */
411411
412   device_t *cpu = machine().firstcpu;
413412   osd_ticks_t t = osd_ticks();
414413   int s = t / osd_ticks_per_second();
415414   int ms = (t % osd_ticks_per_second()) / 1000;
416415
417   /* if we have an executing CPU, output data */
418   if (cpu != nullptr)
419   {
420      sprintf(statebuf, "%d.%03d %s pc=%08x - %s", s, ms, cpu->tag(),
421            cpu->safe_pcbase(), tag());
422   }
423   else
424   {
425      sprintf(statebuf, "%d.%03d", s, ms);
426   }
416   sprintf(statebuf, "%d.%03d%s:", s, ms, tag());
417
427418   return statebuf;
428419}
429420
430421/*-------------------------------------------------
431 logerror - log an error message (w/o device tags)
432 -------------------------------------------------*/
433
434void sc499_device::logerror(const char *format, ...) const
435{
436   va_list arg;
437   va_start(arg, format);
438   machine().vlogerror(format, arg);
439   va_end(arg);
440}
441
442/*-------------------------------------------------
443422 tape_status_clear - clear bits in tape status
444423 -------------------------------------------------*/
445424
trunk/src/devices/bus/isa/sc499.h
r253560r253561
8080   virtual void eop_w(int state) override;
8181
8282   const char *cpu_context();
83   void logerror(const char *format, ...) const;
8483
8584   void tape_status_clear(UINT16 value);
8685   void tape_status_set(UINT16 value);
trunk/src/mame/arcade.lst
r253560r253561
1245712457roypok96        // (c) 1996 Amcoe
1245812458roypok96a       // (c) 1996 Amcoe
1245912459roypok96b       // (c) 1996 Amcoe
12460roypok96c       // (c) 1996 Amcoe
1246012461pokonl97        // (c) 1997 Amcoe
1246112462nc96            // (c) 1996 Amcoe
1246212463nc96a           // (c) 1996 Amcoe
trunk/src/mame/drivers/goldstar.cpp
r253560r253561
1099910999ROM_END
1100011000
1100111001
11002ROM_START( roypok96c )
11003   ROM_REGION( 0x10000, "maincpu", 0 )
11004   ROM_LOAD( "subboard.bin", 0x0000, 0x1000, CRC(5ce4bed1) SHA1(bd888fec4531157668d4b14a9439a3051e52b3ec) )
11005   ROM_CONTINUE(0x4000,0x1000)
11006   ROM_CONTINUE(0x3000,0x1000)
11007   ROM_CONTINUE(0x7000,0x1000)
11008   ROM_CONTINUE(0x1000,0x1000)
11009   ROM_CONTINUE(0x6000,0x1000)
11010   ROM_CONTINUE(0x2000,0x1000)
11011   ROM_CONTINUE(0x5000,0x1000)
11012   ROM_CONTINUE(0x8000,0x8000)
11013
11014   ROM_REGION( 0x20000, "graphics", 0 )
11015   ROM_LOAD( "rp35h.bin",  0x00000, 0x10000, CRC(664649ea) SHA1(7915ab31afd2a1bbb8f817f961e0e522d76f5c05) )
11016   ROM_LOAD( "rp35l.bin",  0x10000, 0x10000, CRC(ef416c4e) SHA1(5aac157ba15c66f79a7a68935095bef9a2636f7b) )
11017
11018   ROM_REGION( 0x10000, "user1", ROMREGION_ERASEFF )
11019
11020   ROM_REGION( 0x18000, "gfx1", 0 )
11021   ROM_COPY( "graphics", 0x18000, 0x00000, 0x4000 ) // 1
11022   ROM_COPY( "graphics", 0x08000, 0x08000, 0x4000 ) // 1
11023   ROM_COPY( "graphics", 0x04000, 0x10000, 0x4000 ) // 1
11024   ROM_COPY( "graphics", 0x1c000, 0x04000, 0x4000 ) // 2
11025   ROM_COPY( "graphics", 0x0c000, 0x0c000, 0x4000 ) // 2
11026   ROM_COPY( "graphics", 0x14000, 0x14000, 0x4000 ) // 2
11027
11028   ROM_REGION( 0x8000, "gfx2", 0 )
11029   ROM_COPY( "graphics", 0x02000, 0x00000, 0x2000 )
11030   ROM_COPY( "graphics", 0x12000, 0x02000, 0x2000 )
11031   ROM_COPY( "graphics", 0x00000, 0x04000, 0x2000 )
11032   ROM_COPY( "graphics", 0x10000, 0x06000, 0x2000 )
11033
11034   ROM_REGION( 0x200, "proms", 0 ) // palette
11035   ROM_LOAD( "rpu19.bin", 0x0000, 0x0100, CRC(deb9ae3c) SHA1(056ce4947244ade1ff70f167a998140745b5cffa) )
11036   ROM_LOAD( "rpu20.bin", 0x0100, 0x0100, CRC(b3e0a328) SHA1(f8990fcd1e90d3e9205ee81f1d7dd105dbdcfcd6) )
11037
11038   ROM_REGION( 0x100, "proms2", 0 ) // colours again?
11039   ROM_LOAD( "rpu1920.bin", 0x0000, 0x0100, CRC(e204e8f3) SHA1(9005fe9c72055af690701cd239f4b3665b2fae21) )
11040ROM_END
11041
11042
1100211043ROM_START( pokonl97 )
1100311044   ROM_REGION( 0x20000, "maincpu", 0 )
1100411045   ROM_LOAD( "po33.bin", 0x00000, 0x1000, CRC(55bdd5cf) SHA1(7fd9e5c63ab2439db33710d7684f5df5e7324325) )
r253560r253561
1377213813GAMEL( 1996, roypok96,  0,        amcoe2,   roypok96,  cmaster_state,  rp35,      ROT0, "Amcoe",   "Royal Poker '96 (set 1, v97-3.5)",                             0,                 layout_roypok96 )
1377313814GAMEL( 1996, roypok96a, roypok96, amcoe2,   roypok96a, cmaster_state,  rp36,      ROT0, "Amcoe",   "Royal Poker '96 (set 2, v98-3.6)",                             0,                 layout_roypok96 )
1377413815GAMEL( 1996, roypok96b, roypok96, amcoe2,   roypok96a, cmaster_state,  rp36c3,    ROT0, "Amcoe",   "Royal Poker '96 (set 3, v98-3.6?)",                            0,                 layout_roypok96 )
13816GAME(  1996, roypok96c, roypok96, amcoe2,   roypok96a, driver_device,  0,         ROT0, "Amcoe",   "Royal Poker '96 (set 4, C3 board)",                            MACHINE_NOT_WORKING )
1377513817
1377613818
1377713819/* these all appear to be graphic hacks of 'New Fruit Bonus '96', they can run with the same program rom
trunk/src/mame/video/apollo.cpp
r253560r253561
17111711   MCFG_SCREEN_ADD(VIDEO_SCREEN_TAG, RASTER)
17121712   MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
17131713   MCFG_SCREEN_REFRESH_RATE(76)
1714   MCFG_SCREEN_RAW_PARAMS(68000000, 1343, 0, 1024, 841, 0, 800)
1714   MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(657))
17151715   MCFG_SCREEN_SIZE(1024, 800)
17161716   MCFG_SCREEN_VISIBLE_AREA(0, 1023, 0, 799)
17171717   MCFG_SCREEN_UPDATE_DEVICE(APOLLO_SCREEN_TAG, apollo_graphics_15i, screen_update)
r253560r253561
18951895   MCFG_SCREEN_ADD(VIDEO_SCREEN_TAG, RASTER)
18961896   MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK)
18971897   MCFG_SCREEN_REFRESH_RATE(64)
1898   MCFG_SCREEN_RAW_PARAMS(120000000, 1728, 0, 1280, 1066, 0, 1024)
1898   MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(616))
18991899   MCFG_SCREEN_SIZE(1280, 1024)
19001900   MCFG_SCREEN_VISIBLE_AREA(0, 1279, 0, 1023)
19011901   MCFG_SCREEN_UPDATE_DEVICE(APOLLO_SCREEN_TAG, apollo_graphics_19i, screen_update)


Previous 199869 Revisions Next


© 1997-2024 The MAME Team