I'm programming a POS (point of sale) in C (ANSI C)
I have this function
GetString(uchar *str,uchar mode,uchar minlen,uchar maxlen)
Is something like readln
but in the POS
In the API the mode
parameter is something like D1,D2,D3...
But in the example (of the API) i have this
if(!GetString(buf, 0x26, 0, 10))
{
buf[buf[0]+1]=0; amt=atol(buf+1);
} else {
/* user press CANCEL button */ }
So what is the relation betwen 0x26 (parameter mode
in the function) and
the binary numbers or bit flag or even, I dont know, hexadecimal.
In the API theres another thing explaining the mode
input parameter
1. Input mode definition: (priority order is bit3>bit4>bit5, and mode&0x38≠0);
2. When inputting, the digit will be displayed on the screen in turns as plaintext or cryptograph (according to bit3).
3. The initial cursor position is determined by ScrGotoxy(x, y).
4. If bit7 of mode =1, then this function could bring initial digit string, and the string is displayed on initial cursor position as input digit string.
5. Output string does not record and contain function keys.
6. Press CLEAR button, if it is plaintext display, then CLEAR is considered as BACKSPACE key; if it is cryptograph display, then CLEAR is considered as the key to clear all contents.
7. Use function key to switch to Capital mode. S80 uses Alpha key to select the corresponding character on a key, however SP30 uses UP and Down key, and T52 uses ―#‖ key, T620 uses key F2.
8. In MT30, the switch method between uppercase, lowercase and number characters is to keep pressing