SBCS OS/2 is DBCS─enabled to some extent as follows (but does not have DBCS I/O capability):
DosQueryDBCSEv (32 bit API) or DosGetDBCSEv (16 bit API, not supported from OS/2 version 2.0) call returns the DBCS environment vector (DBCS first byte code ranges) of the current process code page (if you specify zero to the code page and country─code parameters). You can also get the DBCS environment vector of a code page other than the current process code page if you explicitly specify the code page (and specify the country code if different from the default country code).
Check the DBCS environment vector until you reach the terminator (two bytes of binary 0) since the number of the ranges is different among code pages. For reference information of these APIs, see Control Program Programming Reference of SBCS OS/2 in See also Country Code and Code Page Support and Single Module for more discussion.
SBCS OS/2 supports country specific functions; for example, DosQueryCtryInfo (32 bit API) or DosGetCtryInfo (16 bit API, not supported from OS/2 version 2.0), which covers DBCS countries as well.
Most OS/2 APIs accept mixed SBCS/DBCS strings because the normal text data format is zero-terminated text string and DBCS character never has a zero value as its first byte or second byte. However, these APIs handle the character count as byte count, so the string length and data length are required to calculate in byte when you apply these APIs. See also the discussion in the Character vs. Byte.