构建标准的中文转换程序GB&WS 以along当时写的code.c即cnfont.dat为基础。严重感谢along1976大侠。 我的设想如下: cnfont.dat直接刷入flash。 gb2ws,ws2gb(原along用ascii2ws,ws2ascii,由于这两个函数俄国人用过了,在65上被用作了API函数,0xAD,0xAE)这两个也让它用作为swilib的函数,序号大约为0x242,0x243,我去和俄国人商量一下,应该没什么大问题。 补丁和cnfont.dat占用的空白地址我差不多找到了。 NEWSGOLD/ELKA,0x01568000-0x015681FF用作补丁数据,0x01568200-0x0157A24F用作cnfont.dat SGOLD,0x00FE0000-0x00FE01FF用作补丁数据,0x00FE0200-0x00FF224F用作cnfont.dat 补丁的工程文件已经传到了http://sieelf.googlecode.com/svn/SieELF/gb2ws VKP补丁下载:http://sieelf.googlecode.com/svn/SieELF/gb2ws/vkp 还请各路高手来观摩观摩,操刀操刀。 我们要让代码尽量简洁,而效率又要是是尽量的高。 补丁代码用的是16位的THUMB模式,比起32位的ARM模式代码简短,效率相对较高。 但是由于调用到了序号为0x126的CutWSTR,超出了THUMB模式的SWI调用范围(0-0xFF) 于是我直接用汇编代码写了一个ARM模式的函数CutWSTRT来做调用。THUMB模式和ARM模式是可以无缝切换的,还好还好^_^。