Difference between revisions of "83Plus:Software:usb8x/Error Codes"
From WikiTI
m (Two new error codes added) |
m (Clarifying errMSDCmdRefused) |
||
Line 96: | Line 96: | ||
|45 || CmdTimeout || Mass storage command timed out (no response from device at all) | |45 || CmdTimeout || Mass storage command timed out (no response from device at all) | ||
|- | |- | ||
− | |46 || CmdRefused || All communication attempts were refused ( | + | |46 || CmdRefused || All communication attempts were refused (drive has STALLed) |
|} | |} | ||
Be aware that the error codes listed on this page are in decimal, while the error codes displayed in USBInfo are in hexadecimal. | Be aware that the error codes listed on this page are in decimal, while the error codes displayed in USBInfo are in hexadecimal. |
Revision as of 03:14, 7 January 2007
Error codes may be returned via both the [[../Asm_Interface|assembly language interface]] and the [[../BASIC_Interface|BASIC interface]]. In the BASIC interface, the error code is returned in the first element of the return list. In the assembly language interface, an error is generally indicated by a return with the carry flag set. The error code can then be read via [[../Asm_Interface/GetErrorCode|GetErrorCode]]. Error code equates are located in usb8x.inc.
Error Codes
Error # | Name | Info |
---|---|---|
0 | OK | No error occured |
1 | Port82 | The previous command failed or did not terminate. This generally happens during initialization. |
2 | Port91Bit2 | An error condition was detected on an input pipe (Stall) |
3 | Port91Bit4 | An error condition was detected on an input pipe (NAK) |
4 | Port4C | Port 4C did not hold the expected value. This generally happens during initialization. |
5 | Port4D | Port 4D did not hold the expected value. This generally happens during initialization. |
6 | Port3A | Port 3A did not hold the expected value. This generally happens during initialization. |
7 | Port81 | Port 81 did not hold the expected value. This generally happens during initialization. |
8 | Port8C | The frame counter did not start. This often indicates low batteries. |
9 | Port8F | Port 8F did not hold the expected value. This generally happens during initialization. |
10 | EPIndex | A non existant entry point was called. Be sure to check for the minimum required version of usb8x before calling entry points. |
11 | EPGetDes | An unsupported descriptor was requested from [[../Asm_Interface/ReadDescriptor|ReadDescriptor]]. |
12 | NoDevice | No Device is connected. You'll get this error if you plug in a mini B cable instead of mini A. |
13 | FindDescriptor | An error occured in [[../Asm_Interface/FindDescriptor|FindDescriptor]]. This error may occasionally improperly be listed a sub error code, because AutoSetup generates a FindDescriptor error during normal operation. |
14 | BadClass | The attached device does not have the required class. (i.e. a keyboard is connected when [[../Asm_Interface/MouseInit|MouseInit]] is called). |
15 | Timeout | A timeout occured while waiting for data. This currently is only returned by [[../BASIC_Interface/MouseDo|MouseDo]]. |
16 | BadID | The attached device does not have the required vendor or device ID. |
17 | ReadDescriptor | An error occured in [[../Asm_Interface/ReadDescriptor|ReadDescriptor]]. Check sub error code for additional information. |
18 | Init | An error occured during initialization. Check sub error code for more information. |
19 | AutoSetup | An error occured during [[../Asm_Interface/AutoSetup|AutoSetup]]. Check sub error code for more information. |
20 | Demo | An error occured in demo code. This should not be returned via either of the programming interfaces. |
21 | FindPipe | An error occured in [[../Asm_Interface/FindPipe|FindPipe]]. |
22 | Stub | Returned by stub routines (not current used). |
23 | GetMaxPacketSize | An error occured while trying to determine the maximum supported packet size. |
24 | SetAddress | An error occured while trying to set the device address |
25 | SendCmd | There was a problem sending mass storage I/O commands |
26 | LargeSect | Bytes-per-sector is larger than 512 (not supported) |
27 | NoParts | There were no FAT16 partitions found on the connected mass storage device |
28 | NoMoreMemory | The previous function failed because there is no more free memory (this is a very bad thing) |
29 | InvalidPartition | The FAT16 partition found is invalid because it does not contain 0AA55h |
30 | NotFile | The path passed to a function is to a directory or volume label, not a file |
31 | NotValidPath | The path passed to a function is completely invalid |
32 | CorruptFile | A file is corrupted or otherwise not as expected |
33 | NotFound | File or directory was not found |
34 | DuplicateFound | Duplicate calculator variable was found and not overwritten |
35 | NotEnoughMem | There was not enough memory to create the new calculator variable |
36 | AlreadyExists | An 8x* file of the same name already exists in the current directory |
37 | StrNotFound | String variable from BASIC OpenLib/ExecLib function was not found |
38 | VarEmpty | Variable was empty and transfer was not completed (this is a bad thing; delete new, incomplete file) |
39 | NoParts32 | FAT32 partitions were found, but none were FAT16 (make sure you reformat your drive as FAT16) |
40 | NoData | There was no data to report. Returned by [[../BASIC_Interface/KBDGetKey|KBDGetKey]] |
41 | Version | A pre-2.30 version of TIOS is loaded on the calculator. |
42 | BadCmd | A requested command failed. Returned by Vernier driver. |
43 | FeatureDisabled | The feature/driver you tried to call is not compiled into the user's binary. |
44 | FailedCmd | Mass storage command sent successfully and failed to execute. This is bad. |
45 | CmdTimeout | Mass storage command timed out (no response from device at all) |
46 | CmdRefused | All communication attempts were refused (drive has STALLed) |
Be aware that the error codes listed on this page are in decimal, while the error codes displayed in USBInfo are in hexadecimal.