Lines Matching defs:reg

55 static void end_scan_impl(Genesys_Device* dev, Genesys_Register_Set* reg, bool check_stop,
504 dev->reg.find_reg(0x02).value &= ~REG_0x02_ACDCDIS;
506 dev->reg.find_reg(0x02).value |= REG_0x02_ACDCDIS;
857 dev->reg.clear();
860 dev->reg.init_reg(addr, 0);
862 dev->reg.init_reg(addr, 0);
864 dev->reg.init_reg(addr, 0);
866 dev->reg.init_reg(addr, 0);
868 dev->reg.init_reg(addr, 0);
870 dev->reg.init_reg(addr, 0);
872 dev->reg.find_reg(0x01).value = 0x20 /*0x22 */ ; /* enable shading, CCD, color, 1M */
873 dev->reg.find_reg(0x02).value = 0x30 /*0x38 */ ; /* auto home, one-table-move, full step */
875 dev->reg.find_reg(0x02).value |= 0x01; // half-step
879 dev->reg.find_reg(0x02).value |= 0x01; /* half-step */
883 dev->reg.find_reg(0x02).value = 0x50;
888 dev->reg.find_reg(0x03).value = 0x1f /*0x17 */ ; /* lamp on */
889 dev->reg.find_reg(0x04).value = 0x13 /*0x03 */ ; /* 8 bits data, 16 bits A/D, color, Wolfson fe *//* todo: according to spec, 0x0 is reserved? */
893 dev->reg.find_reg(0x04).value = 0x12;
897 dev->reg.find_reg(0x04).value = 0x13;
903 dev->reg.find_reg(0x05).value = 0x00; /* 12 bits gamma, disable gamma, 24 clocks/pixel */
904 sanei_genesys_set_dpihw(dev->reg, sensor.full_resolution);
907 dev->reg.find_reg(0x05).value |= REG_0x05_GMM14BIT;
910 dev->reg.find_reg(0x05).value |= 0x01; /* 12 clocks/pixel */
914 dev->reg.find_reg(0x06).value = 0x00; // PWRBIT off, shading gain=4, normal AFE image capture
916 dev->reg.find_reg(0x06).value = 0x18; // PWRBIT on, shading gain=8, normal AFE image capture
919 scanner_setup_sensor(*dev, sensor, dev->reg);
921 dev->reg.find_reg(0x1e).value = 0xf0; /* watch-dog time */
926 dev->reg.find_reg(0x1e).value = 0xf0;
927 dev->reg.find_reg(0x1f).value = 0x10;
928 dev->reg.find_reg(0x20).value = 0x20;
931 dev->reg.find_reg(0x1e).value = 0x80;
932 dev->reg.find_reg(0x1f).value = 0x10;
933 dev->reg.find_reg(0x20).value = 0x20;
936 dev->reg.find_reg(0x19).value = 0x2a;
937 dev->reg.find_reg(0x1e).value = 0x80;
938 dev->reg.find_reg(0x1f).value = 0x10;
939 dev->reg.find_reg(0x20).value = 0x20;
942 dev->reg.find_reg(0x1e).value = 0x10;
943 dev->reg.find_reg(0x1f).value = 0x01;
944 dev->reg.find_reg(0x20).value = 0x50;
947 dev->reg.find_reg(0x1f).value = 0x01;
948 dev->reg.find_reg(0x20).value = 0x50;
952 dev->reg.find_reg(0x21).value = 0x08 /*0x20 */ ; /* table one steps number for forward slope curve of the acc/dec */
953 dev->reg.find_reg(0x22).value = 0x10 /*0x08 */ ; /* steps number of the forward steps for start/stop */
954 dev->reg.find_reg(0x23).value = 0x10 /*0x08 */ ; /* steps number of the backward steps for start/stop */
955 dev->reg.find_reg(0x24).value = 0x08 /*0x20 */ ; /* table one steps number backward slope curve of the acc/dec */
956 dev->reg.find_reg(0x25).value = 0x00; /* scan line numbers (7000) */
957 dev->reg.find_reg(0x26).value = 0x00 /*0x1b */ ;
958 dev->reg.find_reg(0x27).value = 0xd4 /*0x58 */ ;
959 dev->reg.find_reg(0x28).value = 0x01; /* PWM duty for lamp control */
960 dev->reg.find_reg(0x29).value = 0xff;
962 dev->reg.find_reg(0x2c).value = 0x02; /* set resolution (600 DPI) */
963 dev->reg.find_reg(0x2d).value = 0x58;
964 dev->reg.find_reg(0x2e).value = 0x78; /* set black&white threshold high level */
965 dev->reg.find_reg(0x2f).value = 0x7f; /* set black&white threshold low level */
967 dev->reg.find_reg(0x30).value = 0x00; /* begin pixel position (16) */
968 dev->reg.find_reg(0x31).value = sensor.dummy_pixel /*0x10 */ ; /* TGW + 2*TG_SHLD + x */
969 dev->reg.find_reg(0x32).value = 0x2a /*0x15 */ ; /* end pixel position (5390) */
970 dev->reg.find_reg(0x33).value = 0xf8 /*0x0e */ ; /* TGW + 2*TG_SHLD + y */
971 dev->reg.find_reg(0x34).value = sensor.dummy_pixel;
972 dev->reg.find_reg(0x35).value = 0x01 /*0x00 */ ; /* set maximum word size per line, for buffer full control (10800) */
973 dev->reg.find_reg(0x36).value = 0x00 /*0x2a */ ;
974 dev->reg.find_reg(0x37).value = 0x00 /*0x30 */ ;
975 dev->reg.find_reg(0x38).value = 0x2a; // line period (exposure time = 11000 pixels) */
976 dev->reg.find_reg(0x39).value = 0xf8;
977 dev->reg.find_reg(0x3d).value = 0x00; /* set feed steps number of motor move */
978 dev->reg.find_reg(0x3e).value = 0x00;
979 dev->reg.find_reg(0x3f).value = 0x01 /*0x00 */ ;
981 dev->reg.find_reg(0x60).value = 0x00; /* Z1MOD, 60h:61h:(6D b5:b3), remainder for start/stop */
982 dev->reg.find_reg(0x61).value = 0x00; /* (21h+22h)/LPeriod */
983 dev->reg.find_reg(0x62).value = 0x00; /* Z2MODE, 62h:63h:(6D b2:b0), remainder for start scan */
984 dev->reg.find_reg(0x63).value = 0x00; /* (3Dh+3Eh+3Fh)/LPeriod for one-table mode,(21h+1Fh)/LPeriod */
985 dev->reg.find_reg(0x64).value = 0x00; /* motor PWM frequency */
986 dev->reg.find_reg(0x65).value = 0x00; /* PWM duty cycle for table one motor phase (63 = max) */
989 dev->reg.find_reg(0x65).value = 0x02;
992 for (const auto& reg : dev->gpo.regs) {
993 dev->reg.set8(reg.address, reg.value);
999 dev->reg.find_reg(0x6a).value = 0x7f; /* table two steps number for acc/dec */
1000 dev->reg.find_reg(0x6b).value = 0x78; /* table two steps number for acc/dec */
1001 dev->reg.find_reg(0x6d).value = 0x7f;
1004 dev->reg.find_reg(0x6a).value = 0x42; /* table two fast moving step type, PWM duty for table two */
1005 dev->reg.find_reg(0x6b).value = 0xff; /* table two steps number for acc/dec */
1006 dev->reg.find_reg(0x6d).value = 0x41; /* select deceleration steps whenever go home (0), accel/decel stop time (31 * LPeriod) */
1009 dev->reg.find_reg(0x6a).value = 0x7f; /* table two fast moving step type, PWM duty for table two */
1010 dev->reg.find_reg(0x6b).value = 0x08; /* table two steps number for acc/dec */
1011 dev->reg.find_reg(0x6d).value = 0x01; /* select deceleration steps whenever go home (0), accel/decel stop time (31 * LPeriod) */
1014 dev->reg.find_reg(0x6a).value = 0x41; /* table two steps number for acc/dec */
1015 dev->reg.find_reg(0x6b).value = 0xc8; /* table two steps number for acc/dec */
1016 dev->reg.find_reg(0x6d).value = 0x7f;
1019 dev->reg.find_reg(0x6a).value = 0x40; /* table two fast moving step type, PWM duty for table two */
1020 dev->reg.find_reg(0x6b).value = 0xff; /* table two steps number for acc/dec */
1021 dev->reg.find_reg(0x6d).value = 0x01; /* select deceleration steps whenever go home (0), accel/decel stop time (31 * LPeriod) */
1024 dev->reg.find_reg(0x6c).value = 0x00; /* period times for LPeriod, expR,expG,expB, Z1MODE, Z2MODE (one period time) */
1053 dev->interface->write_fe_register(0x00, dev->frontend.reg[0] | 0x04);
1123 std::uint8_t frontend_type = dev->reg.find_reg(0x04).value & REG_0x04_FESET;
1243 local_reg.init_reg(0x01, dev->reg.get8(0x01)); // disable fastmode
1244 local_reg.init_reg(0x03, dev->reg.get8(0x03)); // Lamp power control
1245 local_reg.init_reg(0x05, dev->reg.get8(0x05) & ~REG_0x05_BASESEL); // 24 clocks/pixel
1562 Genesys_Register_Set* reg, bool start_motor) const
1569 local_reg.init_reg(0x03, reg->get8(0x03));
1570 local_reg.init_reg(0x01, reg->get8(0x01) | REG_0x01_SCAN);
1585 static void end_scan_impl(Genesys_Device* dev, Genesys_Register_Set* reg, bool check_stop,
1590 scanner_stop_action_no_move(*dev, *reg);
1621 void CommandSetGl646::end_scan(Genesys_Device* dev, Genesys_Register_Set* reg,
1624 end_scan_impl(dev, reg, check_stop, false);
1705 init_regs_for_scan_session(dev, sensor, &dev->reg, session);
1708 regs_set_optical_off(dev->model->asic_type, dev->reg);
1715 dev->interface->write_registers(dev->reg);
1727 // this is effectively the same as dev->cmd_set->begin_scan(dev, sensor, &dev->reg, true);
1733 scan_local_reg.init_reg(0x03, dev->reg.get8(0x03));
1734 scan_local_reg.init_reg(0x01, dev->reg.get8(0x01) | REG_0x01_SCAN);
1766 catch_all_exceptions(__func__, [&](){ end_scan_impl(dev, &dev->reg, true, false); });
1824 dev->cmd_set->init_regs_for_scan_session(dev, calib_sensor, &dev->reg, session);
1829 dev->reg.find_reg(0x02).value |= REG_0x02_ACDCDIS; /* ease backtracking */
1830 dev->reg.find_reg(0x02).value &= ~REG_0x02_FASTFED;
1831 sanei_genesys_set_motor_power(dev->reg, false);
1864 switch (dev->reg.find_reg(0x05).value >> 6)
1956 dev->cmd_set->init_regs_for_scan_session(dev, calib_sensor, &dev->reg, session);
2124 dev->cmd_set->init_regs_for_scan_session(dev, calib_sensor, &dev->reg, session);
2236 dev->cmd_set->init_regs_for_scan_session(dev, sensor, &dev->reg, session);
2252 dev->cmd_set->init_regs_for_scan_session(dev, calib_sensor, &dev->reg, session);
2278 dev->cmd_set->init_regs_for_scan_session(dev, calib_sensor, &dev->reg, session);
2394 dev->cmd_set->init_regs_for_scan_session(dev, calib_sensor, &dev->reg, session);
2490 dev->cmd_set->init_regs_for_scan_session(dev, local_sensor, &dev->reg, session);
2493 dev->reg.find_reg(0x02).value &= ~REG_0x02_FASTFED;
2496 *local_reg = dev->reg;
2546 dev->initial_regs = dev->reg;
2563 dev->interface->write_registers(dev->reg);
2664 dev->reg.find_reg(0x01).value &= ~REG_0x01_DOGENB;
2667 dev->reg.find_reg(0x02).value &= ~REG_0x02_FASTFED;
2670 sanei_genesys_set_motor_power(dev->reg, false);
2675 dev->reg.find_reg(0x02).value &= ~REG_0x02_AGOHOME;
2679 dev->interface->write_registers(dev->reg);
2682 dev->cmd_set->begin_scan(dev, sensor, &dev->reg, move);
2730 end_scan_impl(dev, &dev->reg, true, false);