Previous 199869 Revisions Next

r17797 Tuesday 11th September, 2012 at 15:16:43 UTC by Aaron Giles
Don't use safe_pc[base] when you already have a
resolved device_state_interface. Added redundant
methods to device_state_interface to generate
errors when this is done.
[src/emu]distate.h
[src/emu/cpu/m6502]opsce02.h
[src/emu/cpu/tlcs90]tlcs90.c
[src/emu/cpu/tms34010]34010gfx.c
[src/mame/drivers]cyclemb.c eolithsp.c
[src/mess/audio]mea8000.c
[src/mess/devices]sonydriv.c
[src/mess/drivers]camplynx.c cxhumax.c gp2x.c next.c pasogo.c pasopia7.c vboy.c
[src/mess/machine]apple2.c coco.c compis.c gamecom.c isa_hdc.c mac.c macpci.c mc6843.c mc6846.c mc6854.c mos6530.c ncr5380.c pokemini.c
[src/mess/video]crtc_ega.c

trunk/src/mame/drivers/eolithsp.c
r17796r17797
117117// StealSee doesn't use interrupts, just the vblank
118118CUSTOM_INPUT_MEMBER(eolith_state::stealsee_speedup_getvblank)
119119{
120   int pc = m_maincpu->safe_pc();
120   int pc = m_maincpu->pc();
121121
122122   if (pc==0x400081ec)
123123      if(!eolith_vblank)
trunk/src/mame/drivers/cyclemb.c
r17796r17797
430430      //printf("%04x\n",m_maincpu->safe_pc());
431431
432432      /* TODO: internal state of this */
433      if(m_maincpu->safe_pc() == m_dsw_pc_hack)
433      if(m_maincpu->pc() == m_dsw_pc_hack)
434434         m_mcu[0].rxd = (ioport("DSW1")->read() & 0x1f) << 2;
435435      else if(m_mcu[0].rst)
436436      {
trunk/src/emu/cpu/tms34010/34010gfx.c
r17796r17797
8484      int diff, cycles = 3;
8585
8686      if (WINDOW_CHECKING(tms) == 2)
87         logerror("%08x: %s apply_window window mode %d not supported!\n", tms->device->safe_pc(), inst_name, WINDOW_CHECKING(tms));
87         logerror("%08x: %s apply_window window mode %d not supported!\n", tms->device->pc(), inst_name, WINDOW_CHECKING(tms));
8888
8989      CLR_V(tms);
9090      if (WINDOW_CHECKING(tms) == 1)
trunk/src/emu/cpu/tlcs90/tlcs90.c
r17796r17797
19671967            break;
19681968
19691969         default:
1970            fatalerror("%04x: unimplemented opcode, op=%02x\n",device->safe_pc(),cpustate->op);
1970            fatalerror("%04x: unimplemented opcode, op=%02x\n",device->pc(),cpustate->op);
19711971      }
19721972
19731973      if ( cpustate->op != EI )
trunk/src/emu/cpu/m6502/opsce02.h
r17796r17797
291291   t1=RDOPARG();                           \
292292   t2=RDOPARG();                           \
293293   t3=RDOPARG();                           \
294   logerror("m65ce02 at pc:%.4x reserved op aug %.2x %.2x %.2x\n", cpustate->device->safe_pc(),t1,t2,t3);
294   logerror("m65ce02 at pc:%.4x reserved op aug %.2x %.2x %.2x\n", cpustate->device->pc(),t1,t2,t3);
295295
296296/* 65ce02 ******************************************************
297297 *  BBR Branch if bit is reset
trunk/src/emu/distate.h
r17796r17797
162162   // state setters
163163   void set_state(int index, UINT64 value);
164164   void set_state_string(int index, const char *string);
165   
166   // deliberately ambiguous functions; if you have the state interface
167   // just use pc() and pcbase() directly
168   offs_t safe_pc() { return pc(); }
169   offs_t safe_pcbase() { return pcbase(); }
165170
166171public:   // protected eventually
167172
trunk/src/mess/devices/sonydriv.c
r17796r17797
271271   if (LOG_SONY_EXTRA)
272272   {
273273      printf("sony.status(): action=%x pc=0x%08x%s\n",
274         action, (int) device->machine().firstcpu->safe_pc(), sony.floppy_enable ? "" : " (no drive enabled)");
274         action, (int) device->machine().firstcpu->pc(), sony.floppy_enable ? "" : " (no drive enabled)");
275275   }
276276
277277   if ((! sony_enable2()) && sony.floppy_enable)
r17796r17797
333333         }
334334         break;
335335      case 0x0a:   /* At track 0: 0=track zero 1=not track zero */
336         logerror("sony.status(): reading Track 0 pc=0x%08x\n", (int) device->machine().firstcpu->safe_pc());
336         logerror("sony.status(): reading Track 0 pc=0x%08x\n", (int) device->machine().firstcpu->pc());
337337         if (cur_image)
338338            result = floppy_tk00_r(&cur_image->device());
339339         else
r17796r17797
407407   if (LOG_SONY)
408408   {
409409      logerror("sony_doaction(): action=%d pc=0x%08x%s\n",
410         action, (int) device->machine().firstcpu->safe_pc(), (sony.floppy_enable) ? "" : " (MOTOR OFF)");
410         action, (int) device->machine().firstcpu->pc(), (sony.floppy_enable) ? "" : " (MOTOR OFF)");
411411   }
412412
413413   if (sony.floppy_enable)
trunk/src/mess/audio/mea8000.c
r17796r17797
556556   case 1:
557557      /* ready to accept next frame */
558558#if 0
559      LOG(( "$%04x %f: mea8000_r ready=%i\n", device->machine().firstcpu ->safe_pcbase( ), machine.time().as_double(), mea8000_accept_byte( mea8000 ) ));
559      LOG(( "$%04x %f: mea8000_r ready=%i\n", device->machine().firstcpu->pcbase( ), machine.time().as_double(), mea8000_accept_byte( mea8000 ) ));
560560#endif
561561      return mea8000_accept_byte(mea8000) << 7;
562562
563563   default:
564      logerror( "$%04x mea8000_r invalid read offset %i\n",  device->machine().firstcpu ->safe_pcbase( ), offset );
564      logerror( "$%04x mea8000_r invalid read offset %i\n",  device->machine().firstcpu->pcbase( ), offset );
565565   }
566566   return 0;
567567}
r17796r17797
577577      {
578578         /* got pitch byte before first frame */
579579         mea8000->pitch = 2 * data;
580         LOG(( "$%04x %f: mea8000_w pitch %i\n", device->machine().firstcpu ->safe_pcbase( ), device->machine().time().as_double(), mea8000->pitch ));
580         LOG(( "$%04x %f: mea8000_w pitch %i\n", device->machine().firstcpu->pcbase( ), device->machine().time().as_double(), mea8000->pitch ));
581581         mea8000->state = MEA8000_WAIT_FIRST;
582582         mea8000->bufpos = 0;
583583      }
584584      else if (mea8000->bufpos == 4)
585585      {
586586         /* overflow */
587         LOG(( "$%04x %f: mea8000_w data overflow %02X\n", device->machine().firstcpu ->safe_pcbase( ), device->machine().time().as_double(), data ));
587         LOG(( "$%04x %f: mea8000_w data overflow %02X\n", device->machine().firstcpu->pcbase( ), device->machine().time().as_double(), data ));
588588      }
589589      else
590590      {
591591         /* enqueue frame byte */
592         LOG(( "$%04x %f: mea8000_w data %02X in frame pos %i\n", device->machine().firstcpu ->safe_pcbase( ), device->machine().time().as_double(),
592         LOG(( "$%04x %f: mea8000_w data %02X in frame pos %i\n", device->machine().firstcpu->pcbase( ), device->machine().time().as_double(),
593593               data, mea8000->bufpos ));
594594         mea8000->buf[mea8000->bufpos] = data;
595595         mea8000->bufpos++;
r17796r17797
623623         mea8000_stop_frame(device->machine(), mea8000);
624624
625625      LOG(( "$%04x %f: mea8000_w command %02X stop=%i cont=%i roe=%i\n",
626            device->machine().firstcpu->safe_pcbase(), device->machine().time().as_double(), data,
626            device->machine().firstcpu->pcbase(), device->machine().time().as_double(), data,
627627            stop, mea8000->cont, mea8000->roe ));
628628
629629      mea8000_update_req(device);
r17796r17797
631631   }
632632
633633   default:
634      logerror( "$%04x mea8000_w invalid write offset %i\n", device->machine().firstcpu ->safe_pcbase( ), offset );
634      logerror( "$%04x mea8000_w invalid write offset %i\n", device->machine().firstcpu->pcbase( ), offset );
635635   }
636636}
637637
trunk/src/mess/machine/pokemini.c
r17796r17797
409409   case 0x02:   /* CPU related?
410410               Bit 0-7 R/W Unknown
411411            */
412      logerror( "%0X: Write to unknown hardware address: %02X, %02X\n", device->machine().firstcpu ->safe_pc( ), offset, data );
412      logerror( "%0X: Write to unknown hardware address: %02X, %02X\n", device->machine().firstcpu->pc( ), offset, data );
413413      break;
414414   case 0x08:   /* Seconds-timer control
415415               Bit 0   R/W Timer enable
r17796r17797
441441               Bit 5   R   Battery status: 0 - battery OK, 1 - battery low
442442               Bit 6-7     Unused
443443            */
444      logerror( "%0X: Write to unknown hardware address: %02X, %02X\n", device->machine().firstcpu ->safe_pc( ), offset, data );
444      logerror( "%0X: Write to unknown hardware address: %02X, %02X\n", device->machine().firstcpu->pc( ), offset, data );
445445      break;
446446   case 0x18:   /* Timer 1 pre-scale + enable
447447               Bit 0-2 R/W low timer 1 prescaler select
r17796r17797
956956            */
957957   case 0x35:   /* Timer 1 sound-pivot (high, unused)
958958            */
959      logerror( "%0X: Write to unknown hardware address: %02X, %02X\n", device->machine().firstcpu ->safe_pc( ), offset, data );
959      logerror( "%0X: Write to unknown hardware address: %02X, %02X\n", device->machine().firstcpu->pc( ), offset, data );
960960      break;
961961   case 0x36:   /* Timer 1 counter (low), read only
962962            */
r17796r17797
10351035            */
10361036   case 0x3D:   /* Timer 2 sound-pivot (high, unused)
10371037            */
1038      logerror( "%0X: Write to unknown hardware address: %02X, %02X\n", device->machine().firstcpu ->safe_pc( ), offset, data );
1038      logerror( "%0X: Write to unknown hardware address: %02X, %02X\n", device->machine().firstcpu->pc( ), offset, data );
10391039      break;
10401040   case 0x3E:   /* Timer 2 counter (low), read only
10411041               Bit 0-7 R/W Timer 2 counter value bit 0-7
r17796r17797
13001300                           Map size 2: 0x00 to 0x60
13011301               Bit 7       Unused
13021302            */
1303      logerror( "%0X: Write to unknown hardware address: %02X, %02X\n", device->machine().firstcpu ->safe_pc( ), offset, data );
1303      logerror( "%0X: Write to unknown hardware address: %02X, %02X\n", device->machine().firstcpu->pc( ), offset, data );
13041304      break;
13051305   case 0x87:   /* Sprite tile data memory offset (low)
13061306               Bit 0-5     Always "0"
r17796r17797
13411341//      lcd_data_w( data );
13421342      break;
13431343   default:
1344      logerror( "%0X: Write to unknown hardware address: %02X, %02X\n", device->machine().firstcpu ->safe_pc( ), offset, data );
1344      logerror( "%0X: Write to unknown hardware address: %02X, %02X\n", device->machine().firstcpu->pc( ), offset, data );
13451345      break;
13461346   }
13471347   state->m_pm_reg[offset] = data;
trunk/src/mess/machine/mos6530.c
r17796r17797
227227         if (!port->out_port_func.isnull())
228228            port->out_port_func(0, data);
229229         else
230            logerror("6530MIOT chip %s: Port %c is being written to but has no handler.  PC: %08X - %02X\n", device->tag(), 'A' + (offset & 1), device->machine().firstcpu->safe_pc(), data);
230            logerror("6530MIOT chip %s: Port %c is being written to but has no handler.  PC: %08X - %02X\n", device->tag(), 'A' + (offset & 1), device->machine().firstcpu->pc(), data);
231231      }
232232   }
233233}
r17796r17797
289289            port->in = port->in_port_func(0);
290290         }
291291         else
292            logerror("6530MIOT chip %s: Port %c is being read but has no handler.  PC: %08X\n", device->tag(), 'A' + (offset & 1), device->machine().firstcpu->safe_pc());
292            logerror("6530MIOT chip %s: Port %c is being read but has no handler.  PC: %08X\n", device->tag(), 'A' + (offset & 1), device->machine().firstcpu->pc());
293293
294294         /* apply the DDR to the result */
295295         val = (out & port->ddr) | (port->in & ~port->ddr);
trunk/src/mess/machine/mc6854.c
r17796r17797
808808   case 0: /* status register 1 */
809809      mc6854_update_sr1( mc6854 );
810810      LOG(( "%f $%04x mc6854_r: get SR1=$%02X (rda=%i,s2rq=%i,fd=%i,cts=%i,tu=%i,tdra=%i,irq=%i)\n",
811            device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ), mc6854->sr1,
811            device->machine().time().as_double(), device->machine().firstcpu->pcbase( ), mc6854->sr1,
812812            ( mc6854->sr1 & RDA) ? 1 : 0, ( mc6854->sr1 & S2RQ) ? 1 : 0,
813813            ( mc6854->sr1 & FD ) ? 1 : 0, ( mc6854->sr1 & CTS ) ? 1 : 0,
814814            ( mc6854->sr1 & TU ) ? 1 : 0, ( mc6854->sr1 & TDRA) ? 1 : 0,
r17796r17797
818818   case 1: /* status register 2 */
819819      mc6854_update_sr2( mc6854 );
820820      LOG(( "%f $%04x mc6854_r: get SR2=$%02X (ap=%i,fv=%i,ridle=%i,rabt=%i,err=%i,dcd=%i,ovrn=%i,rda2=%i)\n",
821            device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ), mc6854->sr2,
821            device->machine().time().as_double(), device->machine().firstcpu->pcbase( ), mc6854->sr2,
822822            ( mc6854->sr2 & AP   ) ? 1 : 0, ( mc6854->sr2 & FV  ) ? 1 : 0,
823823            ( mc6854->sr2 & RIDLE) ? 1 : 0, ( mc6854->sr2 & RABT) ? 1 : 0,
824824            ( mc6854->sr2 & ERR  ) ? 1 : 0, ( mc6854->sr2 & DCD ) ? 1 : 0,
r17796r17797
830830   {
831831      UINT8 data = mc6854_rfifo_pop( device );
832832      LOG(( "%f $%04x mc6854_r: get data $%02X\n",
833            device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ), data ));
833            device->machine().time().as_double(), device->machine().firstcpu->pcbase( ), data ));
834834      return data;
835835   }
836836
837837   default:
838      logerror( "$%04x mc6854 invalid read offset %i\n", device->machine().firstcpu ->safe_pcbase( ), offset );
838      logerror( "$%04x mc6854 invalid read offset %i\n", device->machine().firstcpu->pcbase( ), offset );
839839   }
840840   return 0;
841841}
r17796r17797
851851   case 0: /* control register 1 */
852852      mc6854->cr1 = data;
853853      LOG(( "%f $%04x mc6854_w: set CR1=$%02X (ac=%i,irq=%c%c,%sreset=%c%c)\n",
854            device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ), mc6854->cr1,
854            device->machine().time().as_double(), device->machine().firstcpu->pcbase( ), mc6854->cr1,
855855            AC ? 1 : 0,
856856            RIE ? 'r' : '-', TIE ? 't' : '-',
857857            DISCONTINUE ? "discontinue," : "",
r17796r17797
859859             ));
860860      if ( mc6854->cr1 & 0xc )
861861         logerror( "$%04x mc6854 DMA not handled (CR1=$%02X)\n",
862              device->machine().firstcpu ->safe_pcbase( ), mc6854->cr1 );
862              device->machine().firstcpu->pcbase( ), mc6854->cr1 );
863863      if ( DISCONTINUE )
864864      {
865865         /* abort receive FIFO but keeps shift register & synchro */
r17796r17797
888888         /* control register 3 */
889889         mc6854->cr3 = data;
890890         LOG(( "%f $%04x mc6854_w: set CR3=$%02X (lcf=%i,aex=%i,idl=%i,fdse=%i,loop=%i,tst=%i,dtr=%i)\n",
891               device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ), mc6854->cr3,
891               device->machine().time().as_double(), device->machine().firstcpu->pcbase( ), mc6854->cr3,
892892               LCF ? (CEX ? 16 : 8) : 0,  AEX ? 1 : 0,
893893               IDL0 ? 0 : 1, FDSE ? 1 : 0, LOOP ? 1 : 0,
894894               TST ? 1 : 0, DTR ? 1 : 0
895895                ));
896896         if ( LOOP )
897            logerror( "$%04x mc6854 loop mode not handled (CR3=$%02X)\n", device->machine().firstcpu ->safe_pcbase( ), mc6854->cr3 );
897            logerror( "$%04x mc6854 loop mode not handled (CR3=$%02X)\n", device->machine().firstcpu->pcbase( ), mc6854->cr3 );
898898         if ( TST )
899            logerror( "$%04x mc6854 test mode not handled (CR3=$%02X)\n", device->machine().firstcpu ->safe_pcbase( ), mc6854->cr3 );
899            logerror( "$%04x mc6854 test mode not handled (CR3=$%02X)\n", device->machine().firstcpu->pcbase( ), mc6854->cr3 );
900900
901901         mc6854->out_dtr_func( DTR ? 1 : 0 );
902902
r17796r17797
906906         /* control register 2 */
907907         mc6854->cr2 = data;
908908         LOG(( "%f $%04x mc6854_w: set CR2=$%02X (pse=%i,bytes=%i,fmidle=%i,%s,tlast=%i,clr=%c%c,rts=%i)\n",
909               device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ), mc6854->cr2,
909               device->machine().time().as_double(), device->machine().firstcpu->pcbase( ), mc6854->cr2,
910910               PSE ? 1 : 0,  TWOBYTES ? 2 : 1,  FMIDLE ? 1 : 0,
911911               FCTDRA ? "fc" : "tdra", TLAST ? 1 : 0,
912912               data & 0x20 ? 'r' : '-',  data & 0x40 ? 't' : '-',
913913               RTS ? 1 : 0 ));
914914         if ( PSE )
915            logerror( "$%04x mc6854 status prioritization not handled (CR2=$%02X)\n", device->machine().firstcpu ->safe_pcbase( ), mc6854->cr2 );
915            logerror( "$%04x mc6854 status prioritization not handled (CR2=$%02X)\n", device->machine().firstcpu->pcbase( ), mc6854->cr2 );
916916         if ( TLAST )
917917            mc6854_tfifo_terminate( device );
918918         if ( data & 0x20 )
r17796r17797
936936      break;
937937
938938   case 2: /* transmitter data: continue data */
939      LOG(( "%f $%04xmc6854_w: push data=$%02X\n", device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ), data ));
939      LOG(( "%f $%04xmc6854_w: push data=$%02X\n", device->machine().time().as_double(), device->machine().firstcpu->pcbase( ), data ));
940940      mc6854_tfifo_push( device, data );
941941      break;
942942
r17796r17797
945945      {
946946         /* control register 4 */
947947         mc6854->cr4 = data;
948         LOG(( "%f $%04x mc6854_w: set CR4=$%02X (interframe=%i,tlen=%i,rlen=%i,%s%s)\n", device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ), mc6854->cr4,
948         LOG(( "%f $%04x mc6854_w: set CR4=$%02X (interframe=%i,tlen=%i,rlen=%i,%s%s)\n", device->machine().time().as_double(), device->machine().firstcpu->pcbase( ), mc6854->cr4,
949949               TWOINTER ? 2 : 1,
950950               TWL, RWL,
951951               ABT ? ( ABTEX ? "abort-ext," : "abort,") : "",
r17796r17797
960960      else
961961      {
962962         /* transmitter data: last data */
963         LOG(( "%f $%04x mc6854_w: push last-data=$%02X\n", device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ), data ));
963         LOG(( "%f $%04x mc6854_w: push last-data=$%02X\n", device->machine().time().as_double(), device->machine().firstcpu->pcbase( ), data ));
964964         mc6854_tfifo_push( device, data );
965965         mc6854_tfifo_terminate( device );
966966      }
967967      break;
968968
969969   default:
970      logerror( "$%04x mc6854 invalid write offset %i (data=$%02X)\n", device->machine().firstcpu ->safe_pcbase( ), offset, data );
970      logerror( "$%04x mc6854 invalid write offset %i (data=$%02X)\n", device->machine().firstcpu->pcbase( ), offset, data );
971971   }
972972}
973973
trunk/src/mess/machine/gamecom.c
r17796r17797
329329   case SM8521_55: case SM8521_56: case SM8521_57: case SM8521_58:
330330   case SM8521_59: case SM8521_5A: case SM8521_5B: case SM8521_5C:
331331   case SM8521_5D:
332      logerror( "%X: Write to reserved address (0x%02X). Value written: 0x%02X\n", m_maincpu->safe_pc(), offset, data );
332      logerror( "%X: Write to reserved address (0x%02X). Value written: 0x%02X\n", m_maincpu->pc(), offset, data );
333333      break;
334334   }
335335   m_p_ram[offset] = data;
trunk/src/mess/machine/mc6846.c
r17796r17797
267267   case 0:
268268   case 4:
269269      LOG (( "$%04x %f: mc6846 CSR read $%02X intr=%i (timer=%i, cp1=%i, cp2=%i)\n",
270             device->machine().firstcpu ->safe_pcbase( ), device->machine().time().as_double(),
270             device->machine().firstcpu->pcbase( ), device->machine().time().as_double(),
271271             mc6846->csr, (mc6846->csr >> 7) & 1,
272272             mc6846->csr & 1, (mc6846->csr >> 1) & 1, (mc6846->csr >> 2) & 1 ));
273273      mc6846->csr0_to_be_cleared = mc6846->csr & 1;
r17796r17797
276276      return mc6846->csr;
277277
278278   case 1:
279      LOG (( "$%04x %f: mc6846 PCR read $%02X\n", device->machine().firstcpu ->safe_pcbase( ), device->machine().time().as_double(), mc6846->pcr ));
279      LOG (( "$%04x %f: mc6846 PCR read $%02X\n", device->machine().firstcpu->pcbase( ), device->machine().time().as_double(), mc6846->pcr ));
280280      return mc6846->pcr;
281281
282282   case 2:
283      LOG (( "$%04x %f: mc6846 DDR read $%02X\n", device->machine().firstcpu ->safe_pcbase( ), device->machine().time().as_double(), mc6846->ddr ));
283      LOG (( "$%04x %f: mc6846 DDR read $%02X\n", device->machine().firstcpu->pcbase( ), device->machine().time().as_double(), mc6846->ddr ));
284284      return mc6846->ddr;
285285
286286   case 3:
287      LOG (( "$%04x %f: mc6846 PORT read $%02X\n", device->machine().firstcpu ->safe_pcbase( ), device->machine().time().as_double(), PORT ));
287      LOG (( "$%04x %f: mc6846 PORT read $%02X\n", device->machine().firstcpu->pcbase( ), device->machine().time().as_double(), PORT ));
288288      if ( ! (mc6846->pcr & 0x80) )
289289      {
290290         if ( mc6846->csr1_to_be_cleared )
r17796r17797
298298      return PORT;
299299
300300   case 5:
301      LOG (( "$%04x %f: mc6846 TCR read $%02X\n",device->machine().firstcpu ->safe_pcbase( ), device->machine().time().as_double(), mc6846->tcr ));
301      LOG (( "$%04x %f: mc6846 TCR read $%02X\n",device->machine().firstcpu->pcbase( ), device->machine().time().as_double(), mc6846->tcr ));
302302      return mc6846->tcr;
303303
304304   case 6:
305      LOG (( "$%04x %f: mc6846 COUNTER hi read $%02X\n", device->machine().firstcpu ->safe_pcbase( ), device->machine().time().as_double(), mc6846_counter( device ) >> 8 ));
305      LOG (( "$%04x %f: mc6846 COUNTER hi read $%02X\n", device->machine().firstcpu->pcbase( ), device->machine().time().as_double(), mc6846_counter( device ) >> 8 ));
306306      if ( mc6846->csr0_to_be_cleared )
307307      {
308308         mc6846->csr &= ~1;
r17796r17797
312312      return mc6846_counter( device ) >> 8;
313313
314314   case 7:
315      LOG (( "$%04x %f: mc6846 COUNTER low read $%02X\n", device->machine().firstcpu ->safe_pcbase( ), device->machine().time().as_double(), mc6846_counter( device ) & 0xff ));
315      LOG (( "$%04x %f: mc6846 COUNTER low read $%02X\n", device->machine().firstcpu->pcbase( ), device->machine().time().as_double(), mc6846_counter( device ) & 0xff ));
316316      if ( mc6846->csr0_to_be_cleared )
317317      {
318318         mc6846->csr &= ~1;
r17796r17797
322322      return mc6846_counter( device ) & 0xff;
323323
324324   default:
325      logerror( "$%04x mc6846 invalid read offset %i\n", device->machine().firstcpu ->safe_pcbase( ), offset );
325      logerror( "$%04x mc6846 invalid read offset %i\n", device->machine().firstcpu->pcbase( ), offset );
326326   }
327327   return 0;
328328}
r17796r17797
353353         "latcged,pos-edge", "latcged,pos-edge,intr"
354354      };
355355      LOG (( "$%04x %f: mc6846 PCR write $%02X reset=%i cp2=%s cp1=%s\n",
356             device->machine().firstcpu ->safe_pcbase( ), device->machine().time().as_double(), data,
356             device->machine().firstcpu->pcbase( ), device->machine().time().as_double(), data,
357357             (data >> 7) & 1, cp2[ (data >> 3) & 7 ], cp1[ data & 7 ] ));
358358
359359   }
r17796r17797
366366      mc6846_update_irq( device );
367367   }
368368   if ( data & 4 )
369      logerror( "$%04x mc6846 CP1 latching not implemented\n", device->machine().firstcpu ->safe_pcbase( ) );
369      logerror( "$%04x mc6846 CP1 latching not implemented\n", device->machine().firstcpu->pcbase( ) );
370370   if (data & 0x20)
371371   {
372372      if (data & 0x10)
r17796r17797
376376            mc6846->iface->out_cp2_func( device, 0, mc6846->cp2_cpu );
377377      }
378378      else
379         logerror( "$%04x mc6846 acknowledge not implemented\n", device->machine().firstcpu ->safe_pcbase( ) );
379         logerror( "$%04x mc6846 acknowledge not implemented\n", device->machine().firstcpu->pcbase( ) );
380380   }
381381   break;
382382
383383   case 2:
384      LOG (( "$%04x %f: mc6846 DDR write $%02X\n", device->machine().firstcpu ->safe_pcbase( ), device->machine().time().as_double(), data ));
384      LOG (( "$%04x %f: mc6846 DDR write $%02X\n", device->machine().firstcpu->pcbase( ), device->machine().time().as_double(), data ));
385385      if ( ! (mc6846->pcr & 0x80) )
386386      {
387387         mc6846->ddr = data;
r17796r17797
391391      break;
392392
393393   case 3:
394      LOG (( "$%04x %f: mc6846 PORT write $%02X (mask=$%02X)\n", device->machine().firstcpu ->safe_pcbase( ), device->machine().time().as_double(), data,mc6846->ddr ));
394      LOG (( "$%04x %f: mc6846 PORT write $%02X (mask=$%02X)\n", device->machine().firstcpu->pcbase( ), device->machine().time().as_double(), data,mc6846->ddr ));
395395      if ( ! (mc6846->pcr & 0x80) )
396396      {
397397         mc6846->pdr = data;
r17796r17797
400400         if ( mc6846->csr1_to_be_cleared && (mc6846->csr & 2) )
401401         {
402402            mc6846->csr &= ~2;
403            LOG (( "$%04x %f: mc6846 CP1 intr reset\n", device->machine().firstcpu ->safe_pcbase( ), device->machine().time().as_double() ));
403            LOG (( "$%04x %f: mc6846 CP1 intr reset\n", device->machine().firstcpu->pcbase( ), device->machine().time().as_double() ));
404404         }
405405         if ( mc6846->csr2_to_be_cleared && (mc6846->csr & 4) )
406406         {
407407            mc6846->csr &= ~4;
408            LOG (( "$%04x %f: mc6846 CP2 intr reset\n", device->machine().firstcpu ->safe_pcbase( ), device->machine().time().as_double() ));
408            LOG (( "$%04x %f: mc6846 CP2 intr reset\n", device->machine().firstcpu->pcbase( ), device->machine().time().as_double() ));
409409         }
410410         mc6846->csr1_to_be_cleared = 0;
411411         mc6846->csr2_to_be_cleared = 0;
r17796r17797
421421            "freq-cmp", "freq-cmp", "pulse-cmp", "pulse-cmp"
422422         };
423423      LOG (( "$%04x %f: mc6846 TCR write $%02X reset=%i clock=%s scale=%i mode=%s out=%s\n",
424             device->machine().firstcpu ->safe_pcbase( ), device->machine().time().as_double(), data,
424             device->machine().firstcpu->pcbase( ), device->machine().time().as_double(), data,
425425             (data >> 7) & 1, (data & 0x40) ? "extern" : "sys",
426426             (data & 0x40) ? 1 : 8, mode[ (data >> 1) & 7 ],
427427             (data & 1) ? "enabled" : "0" ));
r17796r17797
455455
456456   case 7:
457457      mc6846->latch = ( ((UINT16) mc6846->time_MSB) << 8 ) + data;
458      LOG (( "$%04x %f: mc6846 COUNT write %i\n", device->machine().firstcpu ->safe_pcbase( ), device->machine().time().as_double(), mc6846->latch  ));
458      LOG (( "$%04x %f: mc6846 COUNT write %i\n", device->machine().firstcpu->pcbase( ), device->machine().time().as_double(), mc6846->latch  ));
459459      if (!(mc6846->tcr & 0x38))
460460      {
461461         /* timer initialization */
r17796r17797
471471      break;
472472
473473   default:
474      logerror( "$%04x mc6846 invalid write offset %i\n", device->machine().firstcpu ->safe_pcbase( ), offset );
474      logerror( "$%04x mc6846 invalid write offset %i\n", device->machine().firstcpu->pcbase( ), offset );
475475   }
476476}
477477
trunk/src/mess/machine/isa_hdc.c
r17796r17797
796796   }
797797
798798   if (LOG_HDC_CALL)
799      logerror("pc_HDC_r(): pc=%06X offs=%d result=0x%02x\n", device->machine().firstcpu->safe_pc(), offset, data);
799      logerror("pc_HDC_r(): pc=%06X offs=%d result=0x%02x\n", device->machine().firstcpu->pc(), offset, data);
800800
801801   return data;
802802}
r17796r17797
805805{
806806   isa8_hdc_device   *hdc  = downcast<isa8_hdc_device *>(device);
807807   if (LOG_HDC_CALL)
808      logerror("pc_HDC_w(): pc=%06X offs=%d data=0x%02x\n", device->machine().firstcpu->safe_pc(), offset, data);
808      logerror("pc_HDC_w(): pc=%06X offs=%d data=0x%02x\n", device->machine().firstcpu->pc(), offset, data);
809809
810810   switch( offset )
811811   {
trunk/src/mess/machine/macpci.c
r17796r17797
5353{
5454//  macpci_state *mac = device->machine().driver_data<macpci_state>();
5555
56//    printf("VIA1 IN_A (PC %x)\n", mac->m_maincpu->safe_pc());
56//    printf("VIA1 IN_A (PC %x)\n", mac->m_maincpu->pc());
5757
5858   return 0x80;
5959}
r17796r17797
6565
6666    val |= mac->m_cuda->get_treq()<<3;
6767
68//    printf("VIA1 IN B = %02x (PC %x)\n", val, mac->m_maincpu->safe_pc());
68//    printf("VIA1 IN B = %02x (PC %x)\n", val, mac->m_maincpu->pc());
6969
7070    return val;
7171}
r17796r17797
7474{
7575//  macpci_state *mac = device->machine().driver_data<macpci_state>();
7676
77//    printf("VIA1 OUT A: %02x (PC %x)\n", data, mac->m_maincpu->safe_pc());
77//    printf("VIA1 OUT A: %02x (PC %x)\n", data, mac->m_maincpu->pc());
7878}
7979
8080static WRITE8_DEVICE_HANDLER(mac_via_out_b)
8181{
8282   macpci_state *mac = device->machine().driver_data<macpci_state>();
8383
84//    printf("VIA1 OUT B: %02x (PC %x)\n", data, mac->m_maincpu->safe_pc());
84//    printf("VIA1 OUT B: %02x (PC %x)\n", data, mac->m_maincpu->pc());
8585
8686    #if LOG_ADB
87    printf("PPC: New Cuda state: TIP %d BYTEACK %d (PC %x)\n", (data>>5)&1, (data>>4)&1, mac->m_maincpu->safe_pc());
87    printf("PPC: New Cuda state: TIP %d BYTEACK %d (PC %x)\n", (data>>5)&1, (data>>4)&1, mac->m_maincpu->pc());
8888    #endif
8989    mac->m_cuda->set_byteack((data&0x10) ? 1 : 0);
9090    mac->m_cuda->set_tip((data&0x20) ? 1 : 0);
r17796r17797
9898   offset &= 0x0f;
9999
100100   if (LOG_VIA)
101      printf("mac_via_r: offset=0x%02x (PC=%x)\n", offset, m_maincpu->safe_pc());
101      printf("mac_via_r: offset=0x%02x (PC=%x)\n", offset, m_maincpu->pc());
102102   data = m_via1->read(space, offset);
103103
104104   device_adjust_icount(m_maincpu, m_via_cycles);
r17796r17797
112112   offset &= 0x0f;
113113
114114   if (LOG_VIA)
115      printf("mac_via_w: offset=0x%02x data=0x%08x (PC=%x)\n", offset, data, m_maincpu->safe_pc());
115      printf("mac_via_w: offset=0x%02x data=0x%08x (PC=%x)\n", offset, data, m_maincpu->pc());
116116
117117   if (ACCESSING_BITS_0_7)
118118      m_via1->write(space, offset, data & 0xff);
r17796r17797
181181
182182READ32_MEMBER(macpci_state::mac_read_id)
183183{
184    printf("Mac read ID reg @ PC=%x\n", m_maincpu->safe_pc());
184    printf("Mac read ID reg @ PC=%x\n", m_maincpu->pc());
185185
186186   switch (m_model)
187187   {
trunk/src/mess/machine/ncr5380.c
r17796r17797
237237   }
238238
239239   if (VERBOSE)
240      logerror("NCR5380: read %s (reg %d) = %02x [PC=%x]\n", rnames[reg], reg, rv, machine().firstcpu->safe_pc());
240      logerror("NCR5380: read %s (reg %d) = %02x [PC=%x]\n", rnames[reg], reg, rv, machine().firstcpu->pc());
241241
242242   return rv;
243243}
r17796r17797
247247   int reg = offset & 7;
248248
249249   if (VERBOSE)
250      logerror("NCR5380: %02x to %s (reg %d) [PC=%x]\n", data, wnames[reg], reg, machine().firstcpu->safe_pc());
250      logerror("NCR5380: %02x to %s (reg %d) [PC=%x]\n", data, wnames[reg], reg, machine().firstcpu->pc());
251251
252252   switch( reg )
253253   {
r17796r17797
334334               if (get_cmd_len(m_5380_Command[0]) == m_cmd_ptr)
335335               {
336336                  if (VERBOSE)
337                     logerror("NCR5380: Command (to ID %d): %x %x %x %x %x %x %x %x %x %x (PC %x)\n", m_last_id, m_5380_Command[0], m_5380_Command[1], m_5380_Command[2], m_5380_Command[3], m_5380_Command[4], m_5380_Command[5], m_5380_Command[6], m_5380_Command[7], m_5380_Command[8], m_5380_Command[9], machine().firstcpu->safe_pc());
337                     logerror("NCR5380: Command (to ID %d): %x %x %x %x %x %x %x %x %x %x (PC %x)\n", m_last_id, m_5380_Command[0], m_5380_Command[1], m_5380_Command[2], m_5380_Command[3], m_5380_Command[4], m_5380_Command[5], m_5380_Command[6], m_5380_Command[7], m_5380_Command[8], m_5380_Command[9], machine().firstcpu->pc());
338338
339339                  m_scsi_devices[m_last_id]->SetCommand(&m_5380_Command[0], 16);
340340                  m_scsi_devices[m_last_id]->ExecCommand(&m_d_limit);
trunk/src/mess/machine/coco.c
r17796r17797
261261   address_space *program = m_maincpu->space(AS_PROGRAM);
262262
263263   // get the previous and current PC
264   UINT16 prev_pc = m_maincpu->safe_pcbase();
265   UINT16 pc = m_maincpu->safe_pc();
264   UINT16 prev_pc = m_maincpu->pcbase();
265   UINT16 pc = m_maincpu->pc();
266266
267267   // get the byte; and skip over header bytes
268268   byte = program->read_byte(prev_pc);
trunk/src/mess/machine/compis.c
r17796r17797
550550         case 0x0d:   m_i186.intr.in_service &= ~0x20;   break;
551551         case 0x0e:   m_i186.intr.in_service &= ~0x40;   break;
552552         case 0x0f:   m_i186.intr.in_service &= ~0x80;   break;
553         default:   logerror("%05X:ERROR - 80186 EOI with unknown vector %02X\n", m_maincpu->safe_pc(), data & 0x1f);
553         default:   logerror("%05X:ERROR - 80186 EOI with unknown vector %02X\n", m_maincpu->pc(), data & 0x1f);
554554      }
555555      if (LOG_INTERRUPTS) logerror("(%f) **** Got EOI for vector %02X\n", machine().time().as_double(), data & 0x1f);
556556   }
r17796r17797
718718      diff = new_control ^ t->control;
719719      if (diff & 0x001c)
720720         logerror("%05X:ERROR! -unsupported timer mode %04X\n",
721            m_maincpu->safe_pc(), new_control);
721            m_maincpu->pc(), new_control);
722722
723723      /* if we have real changes, update things */
724724      if (diff != 0)
r17796r17797
820820   diff = new_control ^ d->control;
821821   if (diff & 0x6811)
822822      logerror("%05X:ERROR! - unsupported DMA mode %04X\n",
823         m_maincpu->safe_pc(), new_control);
823         m_maincpu->pc(), new_control);
824824
825825   /* if we're going live, set a timer */
826826   if ((diff & 0x0002) && (new_control & 0x0002))
r17796r17797
877877   switch (offset)
878878   {
879879      case 0x11:
880         logerror("%05X:ERROR - read from 80186 EOI\n", m_maincpu->safe_pc());
880         logerror("%05X:ERROR - read from 80186 EOI\n", m_maincpu->pc());
881881         break;
882882
883883      case 0x12:
884         if (LOG_PORTS) logerror("%05X:read 80186 interrupt poll\n", m_maincpu->safe_pc());
884         if (LOG_PORTS) logerror("%05X:read 80186 interrupt poll\n", m_maincpu->pc());
885885         if (m_i186.intr.poll_status & 0x8000)
886886            int_callback(machine().device("maincpu"), 0);
887887         return m_i186.intr.poll_status;
888888
889889      case 0x13:
890         if (LOG_PORTS) logerror("%05X:read 80186 interrupt poll status\n", m_maincpu->safe_pc());
890         if (LOG_PORTS) logerror("%05X:read 80186 interrupt poll status\n", m_maincpu->pc());
891891         return m_i186.intr.poll_status;
892892
893893      case 0x14:
894         if (LOG_PORTS) logerror("%05X:read 80186 interrupt mask\n", m_maincpu->safe_pc());
894         if (LOG_PORTS) logerror("%05X:read 80186 interrupt mask\n", m_maincpu->pc());
895895         temp  = (m_i186.intr.timer  >> 3) & 0x01;
896896         temp |= (m_i186.intr.dma[0] >> 1) & 0x04;
897897         temp |= (m_i186.intr.dma[1] >> 0) & 0x08;
r17796r17797
902902         return temp;
903903
904904      case 0x15:
905         if (LOG_PORTS) logerror("%05X:read 80186 interrupt priority mask\n", m_maincpu->safe_pc());
905         if (LOG_PORTS) logerror("%05X:read 80186 interrupt priority mask\n", m_maincpu->pc());
906906         return m_i186.intr.priority_mask;
907907
908908      case 0x16:
909         if (LOG_PORTS) logerror("%05X:read 80186 interrupt in-service\n", m_maincpu->safe_pc());
909         if (LOG_PORTS) logerror("%05X:read 80186 interrupt in-service\n", m_maincpu->pc());
910910         return m_i186.intr.in_service;
911911
912912      case 0x17:
913         if (LOG_PORTS) logerror("%05X:read 80186 interrupt request\n", m_maincpu->safe_pc());
913         if (LOG_PORTS) logerror("%05X:read 80186 interrupt request\n", m_maincpu->pc());
914914         temp = m_i186.intr.request & ~0x0001;
915915         if (m_i186.intr.status & 0x0007)
916916            temp |= 1;
917917         return temp;
918918
919919      case 0x18:
920         if (LOG_PORTS) logerror("%05X:read 80186 interrupt status\n", m_maincpu->safe_pc());
920         if (LOG_PORTS) logerror("%05X:read 80186 interrupt status\n", m_maincpu->pc());
921921         return m_i186.intr.status;
922922
923923      case 0x19:
924         if (LOG_PORTS) logerror("%05X:read 80186 timer interrupt control\n", m_maincpu->safe_pc());
924         if (LOG_PORTS) logerror("%05X:read 80186 timer interrupt control\n", m_maincpu->pc());
925925         return m_i186.intr.timer;
926926
927927      case 0x1a:
928         if (LOG_PORTS) logerror("%05X:read 80186 DMA 0 interrupt control\n", m_maincpu->safe_pc());
928         if (LOG_PORTS) logerror("%05X:read 80186 DMA 0 interrupt control\n", m_maincpu->pc());
929929         return m_i186.intr.dma[0];
930930
931931      case 0x1b:
932         if (LOG_PORTS) logerror("%05X:read 80186 DMA 1 interrupt control\n", m_maincpu->safe_pc());
932         if (LOG_PORTS) logerror("%05X:read 80186 DMA 1 interrupt control\n", m_maincpu->pc());
933933         return m_i186.intr.dma[1];
934934
935935      case 0x1c:
936         if (LOG_PORTS) logerror("%05X:read 80186 INT 0 interrupt control\n", m_maincpu->safe_pc());
936         if (LOG_PORTS) logerror("%05X:read 80186 INT 0 interrupt control\n", m_maincpu->pc());
937937         return m_i186.intr.ext[0];
938938
939939      case 0x1d:
940         if (LOG_PORTS) logerror("%05X:read 80186 INT 1 interrupt control\n", m_maincpu->safe_pc());
940         if (LOG_PORTS) logerror("%05X:read 80186 INT 1 interrupt control\n", m_maincpu->pc());
941941         return m_i186.intr.ext[1];
942942
943943      case 0x1e:
944         if (LOG_PORTS) logerror("%05X:read 80186 INT 2 interrupt control\n", m_maincpu->safe_pc());
944         if (LOG_PORTS) logerror("%05X:read 80186 INT 2 interrupt control\n", m_maincpu->pc());
945945         return m_i186.intr.ext[2];
946946
947947      case 0x1f:
948         if (LOG_PORTS) logerror("%05X:read 80186 INT 3 interrupt control\n", m_maincpu->safe_pc());
948         if (LOG_PORTS) logerror("%05X:read 80186 INT 3 interrupt control\n", m_maincpu->pc());
949949         return m_i186.intr.ext[3];
950950
951951      case 0x28:
952952      case 0x2c:
953953      case 0x30:
954         if (LOG_PORTS) logerror("%05X:read 80186 Timer %d count\n", m_maincpu->safe_pc(), (offset - 0x28) / 4);
954         if (LOG_PORTS) logerror("%05X:read 80186 Timer %d count\n", m_maincpu->pc(), (offset - 0x28) / 4);
955955         which = (offset - 0x28) / 4;
956956         if (!(offset & 1))
957957            internal_timer_sync(which);
r17796r17797
960960      case 0x29:
961961      case 0x2d:
962962      case 0x31:
963         if (LOG_PORTS) logerror("%05X:read 80186 Timer %d max A\n", m_maincpu->safe_pc(), (offset - 0x29) / 4);
963         if (LOG_PORTS) logerror("%05X:read 80186 Timer %d max A\n", m_maincpu->pc(), (offset - 0x29) / 4);
964964         which = (offset - 0x29) / 4;
965965         return m_i186.timer[which].maxA;
966966
967967      case 0x2a:
968968      case 0x2e:
969         logerror("%05X:read 80186 Timer %d max B\n", m_maincpu->safe_pc(), (offset - 0x2a) / 4);
969         logerror("%05X:read 80186 Timer %d max B\n", m_maincpu->pc(), (offset - 0x2a) / 4);
970970         which = (offset - 0x2a) / 4;
971971         return m_i186.timer[which].maxB;
972972
973973      case 0x2b:
974974      case 0x2f:
975975      case 0x33:
976         if (LOG_PORTS) logerror("%05X:read 80186 Timer %d control\n", m_maincpu->safe_pc(), (offset - 0x2b) / 4);
976         if (LOG_PORTS) logerror("%05X:read 80186 Timer %d control\n", m_maincpu->pc(), (offset - 0x2b) / 4);
977977         which = (offset - 0x2b) / 4;
978978         return m_i186.timer[which].control;
979979
980980      case 0x50:
981         if (LOG_PORTS) logerror("%05X:read 80186 upper chip select\n", m_maincpu->safe_pc());
981         if (LOG_PORTS) logerror("%05X:read 80186 upper chip select\n", m_maincpu->pc());
982982         return m_i186.mem.upper;
983983
984984      case 0x51:
985         if (LOG_PORTS) logerror("%05X:read 80186 lower chip select\n", m_maincpu->safe_pc());
985         if (LOG_PORTS) logerror("%05X:read 80186 lower chip select\n", m_maincpu->pc());
986986         return m_i186.mem.lower;
987987
988988      case 0x52:
989         if (LOG_PORTS) logerror("%05X:read 80186 peripheral chip select\n", m_maincpu->safe_pc());
989         if (LOG_PORTS) logerror("%05X:read 80186 peripheral chip select\n", m_maincpu->pc());
990990         return m_i186.mem.peripheral;
991991
992992      case 0x53:
993         if (LOG_PORTS) logerror("%05X:read 80186 middle chip select\n", m_maincpu->safe_pc());
993         if (LOG_PORTS) logerror("%05X:read 80186 middle chip select\n", m_maincpu->pc());
994994         return m_i186.mem.middle;
995995
996996      case 0x54:
997         if (LOG_PORTS) logerror("%05X:read 80186 middle P chip select\n", m_maincpu->safe_pc());
997         if (LOG_PORTS) logerror("%05X:read 80186 middle P chip select\n", m_maincpu->pc());
998998         return m_i186.mem.middle_size;
999999
10001000      case 0x60:
10011001      case 0x68:
1002         if (LOG_PORTS) logerror("%05X:read 80186 DMA%d lower source address\n", m_maincpu->safe_pc(), (offset - 0x60) / 8);
1002         if (LOG_PORTS) logerror("%05X:read 80186 DMA%d lower source address\n", m_maincpu->pc(), (offset - 0x60) / 8);
10031003         which = (offset - 0x60) / 8;
10041004//          stream_update(dma_stream, 0);
10051005         return m_i186.dma[which].source;
10061006
10071007      case 0x61:
10081008      case 0x69:
1009         if (LOG_PORTS) logerror("%05X:read 80186 DMA%d upper source address\n", m_maincpu->safe_pc(), (offset - 0x61) / 8);
1009         if (LOG_PORTS) logerror("%05X:read 80186 DMA%d upper source address\n", m_maincpu->pc(), (offset - 0x61) / 8);
10101010         which = (offset - 0x61) / 8;
10111011//          stream_update(dma_stream, 0);
10121012         return m_i186.dma[which].source >> 16;
10131013
10141014      case 0x62:
10151015      case 0x6a:
1016         if (LOG_PORTS) logerror("%05X:read 80186 DMA%d lower dest address\n", m_maincpu->safe_pc(), (offset - 0x62) / 8);
1016         if (LOG_PORTS) logerror("%05X:read 80186 DMA%d lower dest address\n", m_maincpu->pc(), (offset - 0x62) / 8);
10171017         which = (offset - 0x62) / 8;
10181018//          stream_update(dma_stream, 0);
10191019         return m_i186.dma[which].dest;
10201020
10211021      case 0x63:
10221022      case 0x6b:
1023         if (LOG_PORTS) logerror("%05X:read 80186 DMA%d upper dest address\n", m_maincpu->safe_pc(), (offset - 0x63) / 8);
1023         if (LOG_PORTS) logerror("%05X:read 80186 DMA%d upper dest address\n", m_maincpu->pc(), (offset - 0x63) / 8);
10241024         which = (offset - 0x63) / 8;
10251025//          stream_update(dma_stream, 0);
10261026         return m_i186.dma[which].dest >> 16;
10271027
10281028      case 0x64:
10291029      case 0x6c:
1030         if (LOG_PORTS) logerror("%05X:read 80186 DMA%d transfer count\n", m_maincpu->safe_pc(), (offset - 0x64) / 8);
1030         if (LOG_PORTS) logerror("%05X:read 80186 DMA%d transfer count\n", m_maincpu->pc(), (offset - 0x64) / 8);
10311031         which = (offset - 0x64) / 8;
10321032//          stream_update(dma_stream, 0);
10331033         return m_i186.dma[which].count;
10341034
10351035      case 0x65:
10361036      case 0x6d:
1037         if (LOG_PORTS) logerror("%05X:read 80186 DMA%d control\n", m_maincpu->safe_pc(), (offset - 0x65) / 8);
1037         if (LOG_PORTS) logerror("%05X:read 80186 DMA%d control\n", m_maincpu->pc(), (offset - 0x65) / 8);
10381038         which = (offset - 0x65) / 8;
10391039//          stream_update(dma_stream, 0);
10401040         return m_i186.dma[which].control;
10411041
10421042      default:
1043         logerror("%05X:read 80186 port %02X\n", m_maincpu->safe_pc(), offset);
1043         logerror("%05X:read 80186 port %02X\n", m_maincpu->pc(), offset);
10441044         break;
10451045   }
10461046   return 0x00;
r17796r17797
10611061   switch (offset)
10621062   {
10631063      case 0x11:
1064         if (LOG_PORTS) logerror("%05X:80186 EOI = %04X\n", m_maincpu->safe_pc(), data16);
1064         if (LOG_PORTS) logerror("%05X:80186 EOI = %04X\n", m_maincpu->pc(), data16);
10651065         handle_eoi(0x8000);
10661066         update_interrupt_state(machine());
10671067         break;
10681068
10691069      case 0x12:
1070         logerror("%05X:ERROR - write to 80186 interrupt poll = %04X\n", m_maincpu->safe_pc(), data16);
1070         logerror("%05X:ERROR - write to 80186 interrupt poll = %04X\n", m_maincpu->pc(), data16);
10711071         break;
10721072
10731073      case 0x13:
1074         logerror("%05X:ERROR - write to 80186 interrupt poll status = %04X\n", m_maincpu->safe_pc(), data16);
1074         logerror("%05X:ERROR - write to 80186 interrupt poll status = %04X\n", m_maincpu->pc(), data16);
10751075         break;
10761076
10771077      case 0x14:
1078         if (LOG_PORTS) logerror("%05X:80186 interrupt mask = %04X\n", m_maincpu->safe_pc(), data16);
1078         if (LOG_PORTS) logerror("%05X:80186 interrupt mask = %04X\n", m_maincpu->pc(), data16);
10791079         m_i186.intr.timer  = (m_i186.intr.timer  & ~0x08) | ((data16 << 3) & 0x08);
10801080         m_i186.intr.dma[0] = (m_i186.intr.dma[0] & ~0x08) | ((data16 << 1) & 0x08);
10811081         m_i186.intr.dma[1] = (m_i186.intr.dma[1] & ~0x08) | ((data16 << 0) & 0x08);
r17796r17797
10871087         break;
10881088
10891089      case 0x15:
1090         if (LOG_PORTS) logerror("%05X:80186 interrupt priority mask = %04X\n", m_maincpu->safe_pc(), data16);
1090         if (LOG_PORTS) logerror("%05X:80186 interrupt priority mask = %04X\n", m_maincpu->pc(), data16);
10911091         m_i186.intr.priority_mask = data16 & 0x0007;
10921092         update_interrupt_state(machine());
10931093         break;
10941094
10951095      case 0x16:
1096         if (LOG_PORTS) logerror("%05X:80186 interrupt in-service = %04X\n", m_maincpu->safe_pc(), data16);
1096         if (LOG_PORTS) logerror("%05X:80186 interrupt in-service = %04X\n", m_maincpu->pc(), data16);
10971097         m_i186.intr.in_service = data16 & 0x00ff;
10981098         update_interrupt_state(machine());
10991099         break;
11001100
11011101      case 0x17:
1102         if (LOG_PORTS) logerror("%05X:80186 interrupt request = %04X\n", m_maincpu->safe_pc(), data16);
1102         if (LOG_PORTS) logerror("%05X:80186 interrupt request = %04X\n", m_maincpu->pc(), data16);
11031103         m_i186.intr.request = (m_i186.intr.request & ~0x00c0) | (data16 & 0x00c0);
11041104         update_interrupt_state(machine());
11051105         break;
11061106
11071107      case 0x18:
1108         if (LOG_PORTS) logerror("%05X:WARNING - wrote to 80186 interrupt status = %04X\n", m_maincpu->safe_pc(), data16);
1108         if (LOG_PORTS) logerror("%05X:WARNING - wrote to 80186 interrupt status = %04X\n", m_maincpu->pc(), data16);
11091109         m_i186.intr.status = (m_i186.intr.status & ~0x8007) | (data16 & 0x8007);
11101110         update_interrupt_state(machine());
11111111         break;
11121112
11131113      case 0x19:
1114         if (LOG_PORTS) logerror("%05X:80186 timer interrupt control = %04X\n", m_maincpu->safe_pc(), data16);
1114         if (LOG_PORTS) logerror("%05X:80186 timer interrupt control = %04X\n", m_maincpu->pc(), data16);
11151115         m_i186.intr.timer = data16 & 0x000f;
11161116         break;
11171117
11181118      case 0x1a:
1119         if (LOG_PORTS) logerror("%05X:80186 DMA 0 interrupt control = %04X\n", m_maincpu->safe_pc(), data16);
1119         if (LOG_PORTS) logerror("%05X:80186 DMA 0 interrupt control = %04X\n", m_maincpu->pc(), data16);
11201120         m_i186.intr.dma[0] = data16 & 0x000f;
11211121         break;
11221122
11231123      case 0x1b:
1124         if (LOG_PORTS) logerror("%05X:80186 DMA 1 interrupt control = %04X\n", m_maincpu->safe_pc(), data16);
1124         if (LOG_PORTS) logerror("%05X:80186 DMA 1 interrupt control = %04X\n", m_maincpu->pc(), data16);
11251125         m_i186.intr.dma[1] = data16 & 0x000f;
11261126         break;
11271127
11281128      case 0x1c:
1129         if (LOG_PORTS) logerror("%05X:80186 INT 0 interrupt control = %04X\n", m_maincpu->safe_pc(), data16);
1129         if (LOG_PORTS) logerror("%05X:80186 INT 0 interrupt control = %04X\n", m_maincpu->pc(), data16);
11301130         m_i186.intr.ext[0] = data16 & 0x007f;
11311131         break;
11321132
11331133      case 0x1d:
1134         if (LOG_PORTS) logerror("%05X:80186 INT 1 interrupt control = %04X\n", m_maincpu->safe_pc(), data16);
1134         if (LOG_PORTS) logerror("%05X:80186 INT 1 interrupt control = %04X\n", m_maincpu->pc(), data16);
11351135         m_i186.intr.ext[1] = data16 & 0x007f;
11361136         break;
11371137
11381138      case 0x1e:
1139         if (LOG_PORTS) logerror("%05X:80186 INT 2 interrupt control = %04X\n", m_maincpu->safe_pc(), data16);
1139         if (LOG_PORTS) logerror("%05X:80186 INT 2 interrupt control = %04X\n", m_maincpu->pc(), data16);
11401140         m_i186.intr.ext[2] = data16 & 0x001f;
11411141         break;
11421142
11431143      case 0x1f:
1144         if (LOG_PORTS) logerror("%05X:80186 INT 3 interrupt control = %04X\n", m_maincpu->safe_pc(), data16);
1144         if (LOG_PORTS) logerror("%05X:80186 INT 3 interrupt control = %04X\n", m_maincpu->pc(), data16);
11451145         m_i186.intr.ext[3] = data16 & 0x001f;
11461146         break;
11471147
11481148      case 0x28:
11491149      case 0x2c:
11501150      case 0x30:
1151         if (LOG_PORTS) logerror("%05X:80186 Timer %d count = %04X\n", m_maincpu->safe_pc(), (offset - 0x28) / 4, data16);
1151         if (LOG_PORTS) logerror("%05X:80186 Timer %d count = %04X\n", m_maincpu->pc(), (offset - 0x28) / 4, data16);
11521152         which = (offset - 0x28) / 4;
11531153         internal_timer_update(which, data16, -1, -1, -1);
11541154         break;
r17796r17797
11561156      case 0x29:
11571157      case 0x2d:
11581158      case 0x31:
1159         if (LOG_PORTS) logerror("%05X:80186 Timer %d max A = %04X\n", m_maincpu->safe_pc(), (offset - 0x29) / 4, data16);
1159         if (LOG_PORTS) logerror("%05X:80186 Timer %d max A = %04X\n", m_maincpu->pc(), (offset - 0x29) / 4, data16);
11601160         which = (offset - 0x29) / 4;
11611161         internal_timer_update(which, -1, data16, -1, -1);
11621162         break;
11631163
11641164      case 0x2a:
11651165      case 0x2e:
1166         if (LOG_PORTS) logerror("%05X:80186 Timer %d max B = %04X\n", m_maincpu->safe_pc(), (offset - 0x2a) / 4, data16);
1166         if (LOG_PORTS) logerror("%05X:80186 Timer %d max B = %04X\n", m_maincpu->pc(), (offset - 0x2a) / 4, data16);
11671167         which = (offset - 0x2a) / 4;
11681168         internal_timer_update(which, -1, -1, data16, -1);
11691169         break;
r17796r17797
11711171      case 0x2b:
11721172      case 0x2f:
11731173      case 0x33:
1174         if (LOG_PORTS) logerror("%05X:80186 Timer %d control = %04X\n", m_maincpu->safe_pc(), (offset - 0x2b) / 4, data16);
1174         if (LOG_PORTS) logerror("%05X:80186 Timer %d control = %04X\n", m_maincpu->pc(), (offset - 0x2b) / 4, data16);
11751175         which = (offset - 0x2b) / 4;
11761176         internal_timer_update(which, -1, -1, -1, data16);
11771177         break;
11781178
11791179      case 0x50:
1180         if (LOG_PORTS) logerror("%05X:80186 upper chip select = %04X\n", m_maincpu->safe_pc(), data16);
1180         if (LOG_PORTS) logerror("%05X:80186 upper chip select = %04X\n", m_maincpu->pc(), data16);
11811181         m_i186.mem.upper = data16 | 0xc038;
11821182         break;
11831183
11841184      case 0x51:
1185         if (LOG_PORTS) logerror("%05X:80186 lower chip select = %04X\n", m_maincpu->safe_pc(), data16);
1185         if (LOG_PORTS) logerror("%05X:80186 lower chip select = %04X\n", m_maincpu->pc(), data16);
11861186         m_i186.mem.lower = (data16 & 0x3fff) | 0x0038; //printf("%X\n",m_i186.mem.lower);
11871187         break;
11881188
11891189      case 0x52:
1190         if (LOG_PORTS) logerror("%05X:80186 peripheral chip select = %04X\n", m_maincpu->safe_pc(), data16);
1190         if (LOG_PORTS) logerror("%05X:80186 peripheral chip select = %04X\n", m_maincpu->pc(), data16);
11911191         m_i186.mem.peripheral = data16 | 0x0038;
11921192         break;
11931193
11941194      case 0x53:
1195         if (LOG_PORTS) logerror("%05X:80186 middle chip select = %04X\n", m_maincpu->safe_pc(), data16);
1195         if (LOG_PORTS) logerror("%05X:80186 middle chip select = %04X\n", m_maincpu->pc(), data16);
11961196         m_i186.mem.middle = data16 | 0x01f8;
11971197         break;
11981198
11991199      case 0x54:
1200         if (LOG_PORTS) logerror("%05X:80186 middle P chip select = %04X\n", m_maincpu->safe_pc(), data16);
1200         if (LOG_PORTS) logerror("%05X:80186 middle P chip select = %04X\n", m_maincpu->pc(), data16);
12011201         m_i186.mem.middle_size = data16 | 0x8038;
12021202
12031203         temp = (m_i186.mem.peripheral & 0xffc0) << 4;
r17796r17797
12211221
12221222      case 0x60:
12231223      case 0x68:
1224         if (LOG_PORTS) logerror("%05X:80186 DMA%d lower source address = %04X\n", m_maincpu->safe_pc(), (offset - 0x60) / 8, data16);
1224         if (LOG_PORTS) logerror("%05X:80186 DMA%d lower source address = %04X\n", m_maincpu->pc(), (offset - 0x60) / 8, data16);
12251225         which = (offset - 0x60) / 8;
12261226//          stream_update(dma_stream, 0);
12271227         m_i186.dma[which].source = (m_i186.dma[which].source & ~0x0ffff) | (data16 & 0x0ffff);
r17796r17797
12291229
12301230      case 0x61:
12311231      case 0x69:
1232         if (LOG_PORTS) logerror("%05X:80186 DMA%d upper source address = %04X\n", m_maincpu->safe_pc(), (offset - 0x61) / 8, data16);
1232         if (LOG_PORTS) logerror("%05X:80186 DMA%d upper source address = %04X\n", m_maincpu->pc(), (offset - 0x61) / 8, data16);
12331233         which = (offset - 0x61) / 8;
12341234//          stream_update(dma_stream, 0);
12351235         m_i186.dma[which].source = (m_i186.dma[which].source & ~0xf0000) | ((data16 << 16) & 0xf0000);
r17796r17797
12371237
12381238      case 0x62:
12391239      case 0x6a:
1240         if (LOG_PORTS) logerror("%05X:80186 DMA%d lower dest address = %04X\n", m_maincpu->safe_pc(), (offset - 0x62) / 8, data16);
1240         if (LOG_PORTS) logerror("%05X:80186 DMA%d lower dest address = %04X\n", m_maincpu->pc(), (offset - 0x62) / 8, data16);
12411241         which = (offset - 0x62) / 8;
12421242//          stream_update(dma_stream, 0);
12431243         m_i186.dma[which].dest = (m_i186.dma[which].dest & ~0x0ffff) | (data16 & 0x0ffff);
r17796r17797
12451245
12461246      case 0x63:
12471247      case 0x6b:
1248         if (LOG_PORTS) logerror("%05X:80186 DMA%d upper dest address = %04X\n", m_maincpu->safe_pc(), (offset - 0x63) / 8, data16);
1248         if (LOG_PORTS) logerror("%05X:80186 DMA%d upper dest address = %04X\n", m_maincpu->pc(), (offset - 0x63) / 8, data16);
12491249         which = (offset - 0x63) / 8;
12501250//          stream_update(dma_stream, 0);
12511251         m_i186.dma[which].dest = (m_i186.dma[which].dest & ~0xf0000) | ((data16 << 16) & 0xf0000);
r17796r17797
12531253
12541254      case 0x64:
12551255      case 0x6c:
1256         if (LOG_PORTS) logerror("%05X:80186 DMA%d transfer count = %04X\n", m_maincpu->safe_pc(), (offset - 0x64) / 8, data16);
1256         if (LOG_PORTS) logerror("%05X:80186 DMA%d transfer count = %04X\n", m_maincpu->pc(), (offset - 0x64) / 8, data16);
12571257         which = (offset - 0x64) / 8;
12581258//          stream_update(dma_stream, 0);
12591259         m_i186.dma[which].count = data16;
r17796r17797
12611261
12621262      case 0x65:
12631263      case 0x6d:
1264         if (LOG_PORTS) logerror("%05X:80186 DMA%d control = %04X\n", m_maincpu->safe_pc(), (offset - 0x65) / 8, data16);
1264         if (LOG_PORTS) logerror("%05X:80186 DMA%d control = %04X\n", m_maincpu->pc(), (offset - 0x65) / 8, data16);
12651265         which = (offset - 0x65) / 8;
12661266//          stream_update(dma_stream, 0);
12671267         update_dma_control(which, data16);
12681268         break;
12691269
12701270      case 0x7f:
1271         if (LOG_PORTS) logerror("%05X:80186 relocation register = %04X\n", m_maincpu->safe_pc(), data16);
1271         if (LOG_PORTS) logerror("%05X:80186 relocation register = %04X\n", m_maincpu->pc(), data16);
12721272
12731273         /* we assume here there that this doesn't happen too often */
12741274         /* plus, we can't really remove the old memory range, so we also assume that it's */
r17796r17797
12891289         break;
12901290
12911291      default:
1292         logerror("%05X:80186 port %02X = %04X\n", m_maincpu->safe_pc(), offset, data16);
1292         logerror("%05X:80186 port %02X = %04X\n", m_maincpu->pc(), offset, data16);
12931293         break;
12941294   }
12951295}
trunk/src/mess/machine/mac.c
r17796r17797
11581158   result = applefdc_r(fdc, (offset >> 8));
11591159
11601160   if (LOG_MAC_IWM)
1161      printf("mac_iwm_r: offset=0x%08x mem_mask %04x = %02x (PC %x)\n", offset, mem_mask, result, m_maincpu->safe_pc());
1161      printf("mac_iwm_r: offset=0x%08x mem_mask %04x = %02x (PC %x)\n", offset, mem_mask, result, m_maincpu->pc());
11621162
11631163   return (result << 8) | result;
11641164}
r17796r17797
11681168   device_t *fdc = space.machine().device("fdc");
11691169
11701170   if (LOG_MAC_IWM)
1171      printf("mac_iwm_w: offset=0x%08x data=0x%04x mask %04x (PC=%x)\n", offset, data, mem_mask, m_maincpu->safe_pc());
1171      printf("mac_iwm_w: offset=0x%08x data=0x%04x mask %04x (PC=%x)\n", offset, data, mem_mask, m_maincpu->pc());
11721172
11731173   if (ACCESSING_BITS_0_7)
11741174      applefdc_w(fdc, (offset >> 8), data & 0xff);
r17796r17797
15341534   else if (ADB_IS_EGRET)
15351535   {
15361536      #if LOG_ADB
1537      printf("68K: New Egret state: SS %d VF %d (PC %x)\n", (data>>5)&1, (data>>4)&1, mac->m_maincpu->safe_pc());
1537      printf("68K: New Egret state: SS %d VF %d (PC %x)\n", (data>>5)&1, (data>>4)&1, mac->m_maincpu->pc());
15381538      #endif
15391539        mac->m_egret->set_via_full((data&0x10) ? 1 : 0);
15401540        mac->m_egret->set_sys_session((data&0x20) ? 1 : 0);
r17796r17797
15421542   else if (ADB_IS_CUDA)
15431543   {
15441544      #if LOG_ADB
1545      printf("68K: New Cuda state: TIP %d BYTEACK %d (PC %x)\n", (data>>5)&1, (data>>4)&1, mac->m_maincpu->safe_pc());
1545      printf("68K: New Cuda state: TIP %d BYTEACK %d (PC %x)\n", (data>>5)&1, (data>>4)&1, mac->m_maincpu->pc());
15461546      #endif
15471547        mac->m_cuda->set_byteack((data&0x10) ? 1 : 0);
15481548        mac->m_cuda->set_tip((data&0x20) ? 1 : 0);
r17796r17797
20122012
20132013READ32_MEMBER(mac_state::mac_read_id)
20142014{
2015//    printf("Mac read ID reg @ PC=%x\n", m_maincpu->safe_pc());
2015//    printf("Mac read ID reg @ PC=%x\n", m_maincpu->pc());
20162016
20172017   switch (m_model)
20182018   {
trunk/src/mess/machine/mc6843.c
r17796r17797
427427      int cmd = mc6843->CMR & 0x0f;
428428
429429      LOG(( "%f $%04x mc6843_r: data input cmd=%s(%i), pos=%i/%i, GCR=%i, ",
430            device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ),
430            device->machine().time().as_double(), device->machine().firstcpu->pcbase( ),
431431            mc6843_cmd[cmd], cmd, mc6843->data_idx,
432432            mc6843->data_size, mc6843->GCR ));
433433
r17796r17797
480480      {
481481         /* XXX TODO: other read modes */
482482         data = mc6843->data[0];
483         logerror( "$%04x mc6843 read in unsupported command mode %i\n", device->machine().firstcpu ->safe_pcbase( ), cmd );
483         logerror( "$%04x mc6843 read in unsupported command mode %i\n", device->machine().firstcpu->pcbase( ), cmd );
484484      }
485485
486486      LOG(( "data=%02X\n", data ));
r17796r17797
491491   case 1: /* Current-Track Address Register (CTAR) */
492492      data = mc6843->CTAR;
493493      LOG(( "%f $%04x mc6843_r: read CTAR %i (actual=%i)\n",
494            device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ), data,
494            device->machine().time().as_double(), device->machine().firstcpu->pcbase( ), data,
495495            floppy_drive_get_current_track( mc6843_floppy_image( device ) ) ));
496496      break;
497497
498498   case 2: /* Interrupt Status Register (ISR) */
499499      data = mc6843->ISR;
500500      LOG(( "%f $%04x mc6843_r: read ISR %02X: cmd=%scomplete settle=%scomplete sense-rq=%i STRB=%i\n",
501            device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ), data,
501            device->machine().time().as_double(), device->machine().firstcpu->pcbase( ), data,
502502            (data & 1) ? "" : "not-" , (data & 2) ? "" : "not-",
503503            (data >> 2) & 1, (data >> 3) & 1 ));
504504
r17796r17797
524524
525525      data = mc6843->STRA;
526526      LOG(( "%f $%04x mc6843_r: read STRA %02X: data-rq=%i del-dta=%i ready=%i t0=%i wp=%i trk-dif=%i idx=%i busy=%i\n",
527            device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ), data,
527            device->machine().time().as_double(), device->machine().firstcpu->pcbase( ), data,
528528            data & 1, (data >> 1) & 1, (data >> 2) & 1, (data >> 3) & 1,
529529            (data >> 4) & 1, (data >> 5) & 1, (data >> 6) & 1, (data >> 7) & 1 ));
530530      break;
r17796r17797
533533   case 4: /* Status Register B (STRB) */
534534      data = mc6843->STRB;
535535      LOG(( "%f $%04x mc6843_r: read STRB %02X: data-err=%i CRC-err=%i dta--mrk-err=%i sect-mrk-err=%i seek-err=%i fi=%i wr-err=%i hard-err=%i\n",
536            device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ), data,
536            device->machine().time().as_double(), device->machine().firstcpu->pcbase( ), data,
537537            data & 1, (data >> 1) & 1, (data >> 2) & 1, (data >> 3) & 1,
538538            (data >> 4) & 1, (data >> 5) & 1, (data >> 6) & 1, (data >> 7) & 1 ));
539539
r17796r17797
545545   case 7: /* Logical-Track Address Register (LTAR) */
546546      data = mc6843->LTAR;
547547      LOG(( "%f $%04x mc6843_r: read LTAR %i (actual=%i)\n",
548            device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ), data,
548            device->machine().time().as_double(), device->machine().firstcpu->pcbase( ), data,
549549            floppy_drive_get_current_track( mc6843_floppy_image( device ) ) ));
550550      break;
551551
552552   default:
553      logerror( "$%04x mc6843 invalid read offset %i\n", device->machine().firstcpu ->safe_pcbase( ), offset );
553      logerror( "$%04x mc6843 invalid read offset %i\n", device->machine().firstcpu->pcbase( ), offset );
554554   }
555555
556556   return data;
r17796r17797
567567      int FWF = (mc6843->CMR >> 4) & 1;
568568
569569      LOG(( "%f $%04x mc6843_w: data output cmd=%s(%i), pos=%i/%i, GCR=%i, data=%02X\n",
570            device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ),
570            device->machine().time().as_double(), device->machine().firstcpu->pcbase( ),
571571            mc6843_cmd[cmd], cmd, mc6843->data_idx,
572572            mc6843->data_size, mc6843->GCR, data ));
573573
r17796r17797
584584            /* end of sector write */
585585            device_t* img = mc6843_floppy_image( device );
586586
587            LOG(( "%f $%04x mc6843_w: write sector %i\n", device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ), mc6843->data_id ));
587            LOG(( "%f $%04x mc6843_w: write sector %i\n", device->machine().time().as_double(), device->machine().firstcpu->pcbase( ), mc6843->data_id ));
588588
589589            floppy_drive_write_sector_data(
590590               img, mc6843->side, mc6843->data_id,
r17796r17797
648648               UINT8 track  = mc6843->data[1];
649649               UINT8 sector = mc6843->data[3];
650650               UINT8 filler = 0xe5; /* standard Thomson filler */
651               LOG(( "%f $%04x mc6843_w: address id detected track=%i sector=%i\n", device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ), track, sector));
651               LOG(( "%f $%04x mc6843_w: address id detected track=%i sector=%i\n", device->machine().time().as_double(), device->machine().firstcpu->pcbase( ), track, sector));
652652               floppy_drive_format_sector( img, mc6843->side, sector, track, 0, sector, 0, filler );
653653            }
654654            else
r17796r17797
670670      else
671671      {
672672         /* XXX TODO: other write modes */
673         logerror( "$%04x mc6843 write %02X in unsupported command mode %i (FWF=%i)\n", device->machine().firstcpu ->safe_pcbase( ), data, cmd, FWF );
673         logerror( "$%04x mc6843 write %02X in unsupported command mode %i (FWF=%i)\n", device->machine().firstcpu->pcbase( ), data, cmd, FWF );
674674      }
675675      break;
676676   }
r17796r17797
678678   case 1: /* Current-Track Address Register (CTAR) */
679679      mc6843->CTAR = data & 0x7f;
680680      LOG(( "%f $%04x mc6843_w: set CTAR to %i %02X (actual=%i) \n",
681            device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ), mc6843->CTAR, data,
681            device->machine().time().as_double(), device->machine().firstcpu->pcbase( ), mc6843->CTAR, data,
682682            floppy_drive_get_current_track( mc6843_floppy_image( device ) ) ));
683683      break;
684684
r17796r17797
687687      int cmd = data & 15;
688688
689689      LOG(( "%f $%04x mc6843_w: set CMR to $%02X: cmd=%s(%i) FWF=%i DMA=%i ISR3-intr=%i fun-intr=%i\n",
690            device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ),
690            device->machine().time().as_double(), device->machine().firstcpu->pcbase( ),
691691            data, mc6843_cmd[cmd], cmd, (data >> 4) & 1, (data >> 5) & 1,
692692            (data >> 6) & 1, (data >> 7) & 1 ));
693693
r17796r17797
734734
735735      /* assume CLK freq = 1MHz (IBM 3740 compatibility) */
736736      LOG(( "%f $%04x mc6843_w: set SUR to $%02X: head settling time=%fms, track-to-track seek time=%f\n",
737            device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ),
737            device->machine().time().as_double(), device->machine().firstcpu->pcbase( ),
738738            data, 4.096 * (data & 15), 1.024 * ((data >> 4) & 15) ));
739739      break;
740740
741741   case 4: /* Sector Address Register (SAR) */
742742      mc6843->SAR = data & 0x1f;
743      LOG(( "%f $%04x mc6843_w: set SAR to %i (%02X)\n", device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ), mc6843->SAR, data ));
743      LOG(( "%f $%04x mc6843_w: set SAR to %i (%02X)\n", device->machine().time().as_double(), device->machine().firstcpu->pcbase( ), mc6843->SAR, data ));
744744      break;
745745
746746   case 5: /* General Count Register (GCR) */
747747      mc6843->GCR = data & 0x7f;
748      LOG(( "%f $%04x mc6843_w: set GCR to %i (%02X)\n", device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ), mc6843->GCR, data ));
748      LOG(( "%f $%04x mc6843_w: set GCR to %i (%02X)\n", device->machine().time().as_double(), device->machine().firstcpu->pcbase( ), mc6843->GCR, data ));
749749      break;
750750
751751   case 6: /* CRC Control Register (CCR) */
752752      mc6843->CCR = data & 3;
753753      LOG(( "%f $%04x mc6843_w: set CCR to %02X: CRC=%s shift=%i\n",
754            device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ), data,
754            device->machine().time().as_double(), device->machine().firstcpu->pcbase( ), data,
755755            (data & 1) ? "enabled" : "disabled", (data >> 1) & 1 ));
756756      break;
757757
758758   case 7: /* Logical-Track Address Register (LTAR) */
759759      mc6843->LTAR = data & 0x7f;
760760      LOG(( "%f $%04x mc6843_w: set LTAR to %i %02X (actual=%i)\n",
761            device->machine().time().as_double(), device->machine().firstcpu ->safe_pcbase( ), mc6843->LTAR, data,
761            device->machine().time().as_double(), device->machine().firstcpu->pcbase( ), mc6843->LTAR, data,
762762            floppy_drive_get_current_track( mc6843_floppy_image( device ) ) ));
763763      break;
764764
765765   default:
766      logerror( "$%04x mc6843 invalid write offset %i (data=$%02X)\n", device->machine().firstcpu ->safe_pcbase( ), offset, data );
766      logerror( "$%04x mc6843 invalid write offset %i (data=$%02X)\n", device->machine().firstcpu->pcbase( ), offset, data );
767767   }
768768}
769769
trunk/src/mess/machine/apple2.c
r17796r17797
14501450            if (offset == 0xa)  // RAM
14511451            {
14521452                apple2_setvar(space.machine(), VAR_TK2000RAM, ~0);
1453                printf("TK2000: RAM (PC %x)\n", m_maincpu->safe_pc());
1453                printf("TK2000: RAM (PC %x)\n", m_maincpu->pc());
14541454            }
14551455            else if (offset == 0xb) // ROM
14561456            {
14571457                apple2_setvar(space.machine(), 0, ~VAR_TK2000RAM);
1458                printf("TK2000: ROM (PC %x)\n", m_maincpu->safe_pc());
1458                printf("TK2000: ROM (PC %x)\n", m_maincpu->pc());
14591459            }
14601460        }
14611461
trunk/src/mess/video/crtc_ega.c
r17796r17797
8080
8181WRITE8_MEMBER( crtc_ega_device::register_w )
8282{
83   if (LOG)  logerror("CRTC_EGA PC %04x: reg 0x%02x = 0x%02x\n", machine().firstcpu->safe_pc(), m_register_address_latch, data);
83   if (LOG)  logerror("CRTC_EGA PC %04x: reg 0x%02x = 0x%02x\n", machine().firstcpu->pc(), m_register_address_latch, data);
8484
8585   switch (m_register_address_latch)
8686   {
trunk/src/mess/drivers/vboy.c
r17796r17797
793793      case 0x42:   //XPCTRL
794794               return m_vip_regs.XPCTRL;
795795      case 0x44:   //VER
796               printf("%08x read VER\n",m_maincpu->safe_pc());
796               printf("%08x read VER\n",m_maincpu->pc());
797797               return m_vip_regs.VER;
798798      case 0x48:   //SPT0
799799               return m_vip_regs.SPT[0];
trunk/src/mess/drivers/camplynx.c
r17796r17797
121121   if (data & 4)
122122      membank("bank1")->set_entry(2);
123123   else
124      logerror("%04X: Cannot understand bankswitch command %X\n",m_maincpu->safe_pc(), data);
124      logerror("%04X: Cannot understand bankswitch command %X\n",m_maincpu->pc(), data);
125125}
126126
127127WRITE8_MEMBER( camplynx_state::lynx128k_bank_w )
r17796r17797
157157      membank("bank8")->set_base(base + 0x2e000);
158158   }
159159   else
160      logerror("%04X: Cannot understand bankswitch command %X\n",m_maincpu->safe_pc(), data);
160      logerror("%04X: Cannot understand bankswitch command %X\n",m_maincpu->pc(), data);
161161
162162   /* Set write banks */
163163   bank = data & 0xd0;
r17796r17797
186186      membank("bank18")->set_base(base + 0x2e000);
187187   }
188188   else
189      logerror("%04X: Cannot understand bankswitch command %X\n",m_maincpu->safe_pc(), data);
189      logerror("%04X: Cannot understand bankswitch command %X\n",m_maincpu->pc(), data);
190190}
191191
192192static ADDRESS_MAP_START( lynx48k_mem, AS_PROGRAM, 8, camplynx_state )
trunk/src/mess/drivers/gp2x.c
r17796r17797
250250            break;
251251
252252         default:
253            logerror("NAND: read unk command %x (PC %x)\n", m_nand_cmd, m_maincpu->safe_pc());
253            logerror("NAND: read unk command %x (PC %x)\n", m_nand_cmd, m_maincpu->pc());
254254            break;
255255      }
256256   }
r17796r17797
266266   {
267267      case 4:   // command
268268         m_nand_cmd = data;
269//          printf("NAND: command %x (PC %x0)\n", data, m_maincpu->safe_pc());
269//          printf("NAND: command %x (PC %x0)\n", data, m_maincpu->pc());
270270         m_nand_stage = 0;
271271         m_nand_subword_stage = 0;
272272         break;
trunk/src/mess/drivers/pasopia7.c
r17796r17797
615615      return pasopia7_fdc_r(space, offset & 7);
616616   else
617617   {
618      logerror("(PC=%06x) Read i/o address %02x\n",m_maincpu->safe_pc(),io_port);
618      logerror("(PC=%06x) Read i/o address %02x\n",m_maincpu->pc(),io_port);
619619   }
620620
621621   return 0xff;
r17796r17797
672672      pasopia7_fdc_w(space, offset & 7, data);
673673   else
674674   {
675      logerror("(PC=%06x) Write i/o address %02x = %02x\n",m_maincpu->safe_pc(),offset,data);
675      logerror("(PC=%06x) Write i/o address %02x = %02x\n",m_maincpu->pc(),offset,data);
676676   }
677677}
678678
trunk/src/mess/drivers/cxhumax.c
r17796r17797
150150   UINT32 data = m_scratch_reg;
151151   verboselog( machine(), 9, "(SCRATCH) %08X -> %08X\n", 0xE0400024 + (offset << 2), data);
152152
153   if((m_maincpu->safe_pc()==0xF0003BB8) || (m_maincpu->safe_pc()==0x01003724) || (m_maincpu->safe_pc()==0x00005d8c)) { // HDCI-2000
153   if((m_maincpu->pc()==0xF0003BB8) || (m_maincpu->pc()==0x01003724) || (m_maincpu->pc()==0x00005d8c)) { // HDCI-2000
154154      //we're in disabled debug_printf
155155      unsigned char* buf = (unsigned char *)alloca(200);
156156      unsigned char temp;
trunk/src/mess/drivers/next.c
r17796r17797
529529         data & DMA_INITBUFTURBO ? " initbufturbo" : "");
530530#endif
531531   if(data & DMA_SETENABLE)
532      logerror("dma enable %s %s %08x (%08x)\n", name, data & DMA_SETREAD ? "read" : "write", (dma_slots[slot].limit-dma_slots[slot].start) & 0x7fffffff, maincpu->safe_pc());
532      logerror("dma enable %s %s %08x (%08x)\n", name, data & DMA_SETREAD ? "read" : "write", (dma_slots[slot].limit-dma_slots[slot].start) & 0x7fffffff, maincpu->pc());
533533
534534   dma_slot &ds = dma_slots[slot];
535535   if(data & (DMA_RESET|DMA_INITBUF|DMA_INITBUFTURBO)) {
trunk/src/mess/drivers/pasogo.c
r17796r17797
177177      }
178178
179179      if (log)
180         logerror("%.5x vg230 %02x read %.2x\n",(int) m_maincpu->safe_pc(),vg230->index,data);
180         logerror("%.5x vg230 %02x read %.2x\n",(int) m_maincpu->pc(),vg230->index,data);
181181      //    data=machine.root_device().memregion("maincpu")->base()[0x4000+offset];
182182   }
183183   else
r17796r17797
221221      }
222222
223223      if (log)
224         logerror("%.5x vg230 %02x write %.2x\n",(int)m_maincpu->safe_pc(),vg230->index,data);
224         logerror("%.5x vg230 %02x write %.2x\n",(int)m_maincpu->pc(),vg230->index,data);
225225   }
226226   else
227227      vg230->index=data;
r17796r17797
288288      ems->mapper[ems->index].address=(ems->mapper[ems->index].data[0]<<14)|((ems->mapper[ems->index].data[1]&0xf)<<22);
289289      ems->mapper[ems->index].on=ems->mapper[ems->index].data[1]&0x80;
290290      ems->mapper[ems->index].type=(ems->mapper[ems->index].data[1]&0x70)>>4;
291      logerror("%.5x ems mapper %d(%05x)on:%d type:%d address:%07x\n",(int)m_maincpu->safe_pc(),ems->index, ems->data<<12,
291      logerror("%.5x ems mapper %d(%05x)on:%d type:%d address:%07x\n",(int)m_maincpu->pc(),ems->index, ems->data<<12,
292292         ems->mapper[ems->index].on, ems->mapper[ems->index].type, ems->mapper[ems->index].address );
293293
294294      switch (ems->mapper[ems->index].type)

Previous 199869 Revisions Next


© 1997-2024 The MAME Team