19 class cl_hw_test: public cl_hw
22 cl_hw_test(void): cl_hw(0, HW_PORT, 0, "0") {}
23 virtual t_mem r(class cl_cell *cell, t_addr addr);
24 virtual void write(class cl_mem *mem, t_addr addr, t_mem *val);
28 cl_hw_test::r(class cl_cell *cell, t_addr addr)
34 cl_hw_test::write(class cl_mem *mem, t_addr addr, t_mem *val)
39 do_rw_test(class cl_mem *mem, int time)
49 for (a= 0; go && a < mem->size; a++)
52 for (d2= 0; go && d2 <= 255; d2++)
54 d2= mem->write(a, d2);
57 printf("%"_M_"d written to mem and %"_M_"d read back!\n", d2, d);
70 class cl_console_base *con;
72 signal(SIGALRM, alarmed);
73 con= new cl_console_base(stdin, stdout, 0);
75 mem= new cl_mem(MEM_SFR, "egy", 0x10000, 8, 0);
77 printf("%g operations on classic memory within 5 sec\n",
81 m2= new cl_m(MEM_TYPES, "test", 0x10000, 8, 0);
83 printf("%g operations on new memory within 5 sec\n",
86 class cl_hw_test *hw= new cl_hw_test();
87 for (i= 0; i < 0x10000; i++)
89 class cl_cell *c= m2->get_cell(i);
92 c->add_hw(hw, &dummy);
94 printf("%g operations on new memory within 5 sec with hw read\n",