Index: sid/include/sidcpuutil.h =================================================================== RCS file: /cvs/src/src/sid/include/sidcpuutil.h,v retrieving revision 1.27 diff -c -p -r1.27 sidcpuutil.h *** sid/include/sidcpuutil.h 21 Oct 2003 21:38:24 -0000 1.27 --- sid/include/sidcpuutil.h 22 Mar 2004 18:48:33 -0000 *************** *** 1,6 **** // sidcpuutil.h - Elements common to CPU models. -*- C++ -*- ! // Copyright (C) 1999, 2000, 2001, 2002, 2003 Red Hat. // This file is part of SID and is licensed under the GPL. // See the file COPYING.SID for conditions for redistribution. --- 1,6 ---- // sidcpuutil.h - Elements common to CPU models. -*- C++ -*- ! // Copyright (C) 1999-2004 Red Hat. // This file is part of SID and is licensed under the GPL. // See the file COPYING.SID for conditions for redistribution. *************** namespace sidutil *** 213,218 **** --- 213,219 ---- // tracing private: string trace_filename; + callback_pin trace_pin; class cpu_trace_stream: public std::ofstream { public: *************** namespace sidutil *** 244,249 **** --- 245,255 ---- template friend cpu_trace_stream& operator<< (cpu_trace_stream& s, T t); + void trace_pin_handler (sid::host_int_4 value) + { + trace_stream << static_cast (value); + } + public: bool trace_extract_p; bool trace_result_p; *************** public: *** 546,552 **** endian_set_pin (this, & basic_cpu::endian_set_pin_handler), debugger_bus (& this->data_bus), trace_stream (), ! trace_filename ("-") // standard output { // buses this->data_bus = 0; --- 552,559 ---- endian_set_pin (this, & basic_cpu::endian_set_pin_handler), debugger_bus (& this->data_bus), trace_stream (), ! trace_filename ("-"), // standard output ! trace_pin (this, & basic_cpu::trace_pin_handler) { // buses this->data_bus = 0; *************** public: *** 571,576 **** --- 578,584 ---- add_watchable_pin ("trap", & this->trap_type_pin); // output side add_watchable_pin ("trap-code", & this->trap_code_pin); add_pin ("trap", & this->trap_disposition_pin); // input side + add_pin ("trace", & this->trace_pin); // attributes this->step_insn_count = 1;