| Automatic probing of hand-held model

### ticalcs_probe_calc_2

static int ticalcs_probe_calc_2(CalcHandle* handle, CalcModel* model)

This function tries and detect the calculator type for non-silent models by requesting a screedump and analyzing the Machine ID. It supposes your calc is on and plugged.

handle : | a previously allocated handle
type : | the calculator model
Return value : | 08 6D 00 00 PC request a screen dump TI: MId 56 00 00 TI reply OK Beware: the call sequence is very important: 86, 85, 73, 83, 82 !!! Return value: 0 if successful, an error code otherwise.

### ticalcs_probe_calc_1

static int ticalcs_probe_calc_1(CalcHandle* handle, CalcModel* model)

Check if the calculator is ready and detect the type. Works only on FLASH calculators with an AMS2.08 or OS2.00 by requesting the version. A previous version was based on MID but TI83+/84+, TI89/TI89t, TI92+/V200 could not be distinguished ;-(

handle : | a previously allocated handle
type : | the calculator model
Return value : | 0 if successful, an error code otherwise.

### ticalcs_probe_calc

TIEXPORT3 int TICALL ticalcs_probe_calc (CableHandle* cable, CalcModel* model)

This function attempts to detect the calculator model plugged onto the cable. It works in a heuristic fashion.

cable : | a valid (=opened/attached) link cable handle
model : | the calculator model which have been detected
Return value : | 0 if successful, an error code otherwise.

### ticalcs_probe_usb_calc

TIEXPORT3 int TICALL ticalcs_probe_usb_calc(CableHandle* cable, CalcModel* model)

This function attempts to detect the calculator model plugged onto the cable. It works in a heuristic fashion and with FLASH hand-helds only.

cable : | a valid (=opened/attached) link cable handle
model : | the calculator model which have been detected
Return value : | 0 if successful, an error code otherwise.

### ticalcs_probe

TIEXPORT3 int TICALL ticalcs_probe(CableModel c_model, CablePort c_port, CalcModel* model, int all)

This function attempts to detect the calculator model plugged onto a given link cable model/port. It works in a heuristic fashion. This function handles device opening/closing for you.

c_model : | link cable model
c_port : | link cable port
model : | hand-held model detected/found [out]
all : | which hand-helds to detect (FLASH only or all)
Return value : | 0 if successful, an error code otherwise.

### Return to the main index