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 |
||
|---|---|---|
| .. | ||
| x1000 | ||
| bootloader.make | ||
| common.c | ||
| common.h | ||
| creativezvm.c | ||
| echoplayer.c | ||
| fat32format.c | ||
| format.c | ||
| format.h | ||
| gigabeat-s.c | ||
| gigabeat.c | ||
| hibyos_linux.c | ||
| iaudio_coldfire.c | ||
| imx233.c | ||
| ipod-s5l87xx.c | ||
| ipod.c | ||
| ipodnano2g.c | ||
| iriver_h1x0.c | ||
| iriver_h300.c | ||
| lyre_proto1.c | ||
| main-e200r-installer.c | ||
| main-pp.c | ||
| main-ppsansawipe.c | ||
| Makefile | ||
| meizu_m3.c | ||
| meizu_m6sl.c | ||
| meizu_m6sp.c | ||
| mini2440.c | ||
| mpio_hd200_hd300.c | ||
| mrobe500.c | ||
| nwz_linux.c | ||
| ondavx747.c | ||
| rk27xx.c | ||
| samsung_yps3.c | ||
| sansa_as3525.c | ||
| sansaconnect.c | ||
| sansaview.c | ||
| show_logo.c | ||
| snprintf.c | ||
| SOURCES | ||
| telechips.c | ||
| xduoox3.c | ||