The upcase/uppercase situation is a bit convoluted because TP for very long didn't have anything but the upcase(char). So any codebase did its own enhancements (FPC with locase and later string versions), FV had an uppercase, and later Delphi compatibility added more. (sysutils and later strutils)
Afaik the only unicode one is the ansi* and the "sysutils.UnicodeUppercase" variants.
The sysutils.uppercase(unicodestring) are limited, probably to keep them fast.