forked from len0rd/rockbox
We used 16-bit variables to store the 'character code' everywhere but this won't let us represent anything beyond U+FFFF. This patch changes those variables to a custom type that can be 32 or 16 bits depending on the build, and adjusts numerous internal APIs and datastructures to match. This includes: * utf8decode() and friends * font manipulation, caching, rendering, and generation * on-screen keyboard * FAT filesystem (parsing and generating utf16 LFNs) * WIN32 simulator platform code Note that this patch doesn't _enable_ >16bit unicode support; a followup patch will turn that on for appropriate targets. Appears to work on: * hosted linux, native, linux simulator in both 16/32-bit modes. Needs testing on: * windows and macos simulator (16bit+32bit) Change-Id: Iba111b27d2433019b6bff937cf1ebd2c4353a0e8 |
||
|---|---|---|
| .. | ||
| audio | ||
| libertas | ||
| rtc | ||
| tuner | ||
| adc-as3514.c | ||
| ata-common.c | ||
| ata.c | ||
| axp-2101.c | ||
| axp-pmu.c | ||
| button.c | ||
| button_queue.c | ||
| cw2015.c | ||
| eeprom_24cxx.c | ||
| fat.c | ||
| ft6x06.c | ||
| generic_i2c.c | ||
| i2c-async.c | ||
| isp1362.c | ||
| isp1583.c | ||
| lcd-1bit-vert.c | ||
| lcd-2bit-horz.c | ||
| lcd-2bit-vert.c | ||
| lcd-2bit-vi.c | ||
| lcd-16bit-common.c | ||
| lcd-16bit-vert.c | ||
| lcd-16bit.c | ||
| lcd-24bit.c | ||
| lcd-bitmap-common.c | ||
| lcd-color-common.c | ||
| lcd-memframe.c | ||
| lcd-remote-1bit-v.c | ||
| lcd-remote-2bit-vi.c | ||
| lcd-scroll.c | ||
| led.c | ||
| m5636.c | ||
| m66591.c | ||
| nand_id.c | ||
| pca9555.c | ||
| pcf50605.c | ||
| pcf50606.c | ||
| pcf50635.c | ||
| qt1106.c | ||
| ramdisk.c | ||
| rds.c | ||
| sd.c | ||
| serial.c | ||
| sw_i2c.c | ||
| synaptics-mep.c | ||
| touchpad.c | ||
| touchscreen.c | ||
| tsc200x.c | ||
| tsc2100.c | ||
| usb-designware.c | ||