Sunday, December 21, 2014

otf2bdf (self forked)

I forked otf2bdf for meeting my own needs as well. Changes:
* add `-A' switch for no-autohint
* add `-a' switch for force autohint
* add `-B' switch for no embedded bitmap
* add `-g x' switch for selecting hinting algorithm (x=0-4)
* Commented out Determine the actual bounding box of the glyph bitmap part, instead, use FT_Glyph_Get_CBox()
* Extends dump area to whole valid Unicode codepoints (U+10FFFF)

Download: (Win32 binary+source)

bdf2ttf (self forked)

Since MURAOKA Taro (KoRoN) has changed his website and no longer having a valid link to his bdf2ttf, I forked and enhanced bdf2ttf for meeting my own needs:
- added `-g' switch for multi-width (proportional) fonts
- added `-f' switch for generating TTF which has Unicode code points larger than U+FFFF

Download: (win32 binary+source)

Friday, September 26, 2014

bash with ShellShock (and variants) fix for MSYS and Cygwin-1.5

bash-3.1 with patch for CVE-2014-7169. Patch comes from + self-porting

for MSYS:
bash-3.1.22-4-msys-1.0.17-src.tar.lzma (Source+Patches)

for Cygwin-1.5:
bash-3.1.22-4-cygwin-1.5.25-bin.tar.lzma (Source is same as bash-3.1.22-4-msys-1.0.17-src.tar.lzma but without applying MSYS patch "01-bash-3.1-msys.patch")

for ClearOS 5 (CentOS 5): (SRPM)

official patched build for Cygwin-1.7 :

Updated 4 Oct 2014: Updated binaries patched for CVE-2014-6277 segfault

Friday, September 12, 2014


I made a little change so bmp2bdf with respect characters' DWIDTH.
and they are now compiled with TinyCC, so they are lots smaller than original one. :)

Download: (binary + source)

Monday, August 11, 2014

Japanese ASCII Art custom font

I modified some Japanese ASCII Art custom fonts from Free fonts.


Droid Sans Japanese AA化に調整してみた。
Droid Sans Japanese AA.7z
Droid Sans Legacyの英数字、記号とDroid Sans Japaneseの漢字を合せて、そしてAA化。

Noto Sans Japanese と Monapo を合せてみた。
Monapoの英数字、記号とNoto Japaneseを合せた。


Tuesday, July 29, 2014

16Edit custom edition

I made some minor changes to 16Edit 1.04 by Slangmgh, which is based on yoda's 16Edit module.
- HexEditWnd: add INI entries for Font name, height, quality
- DialogProc: fix Pressing Esc not closing Search/Replace Dialog
- rsrc: fix Replace dialog caption, fix Combo Box styles

Source(VC6)+binary: 16Edit.7z

xdelta win32 binaries

I just found that there is still some use of old xdelta-1.x, but there is no latest 1.x branch win32 binary on the web!
So I built one with gcc-4.8.1, glib-1.2.10:

And official xdelta3 win32 binary is XP or later required, so I rebuilt liblzma and xdelta-3.0.8 with MSVC 2005:

Tuesday, July 22, 2014

Universal IPS Patcher

In 2003, Steve Nickolas wrote an IPS Patcher in C and compiled AmigaOS binary.
I made some changes so it makes patches goes to new file but not writing to original file.

Source+binary(Win32 TCC compiled):

Change log:
[140722] Fixed "0x454F46 (EOF) offset bug"
[140722] Added IPS Maker (ported from IPSexe)
[140722] New IPS Patcher and Maker for beyond 16MB records (named "IPS2", same method as IPS, but incompatible with original IPS because of IPS specification limits)
 Modification details:
 - Changed Header to '_PATCH' (6 bytes) to avoid misdetection by other IPS patchers
 - Changed Offset to 4 Bytes (same encoding as IPS, but keeping Most Significant Byte which original IPS format drops)
 - Changed EOF mark to '_EOF' (4 bytes) to fit Offset size change

Thursday, March 27, 2014

bbvi (vi stripped from busybox)

In 2003, Stefan Koerner stripped vi from busybox-0.52 and called it virus - vi resembling utility skeleton.
But it is unmaintained since then, so I do that again and called it "bbvi".
Hopefully I will do it every busybox minor number changes, and sync bbvi version to busybox version.

Source: bbvi-0.1.23.tar.gz

Monday, March 24, 2014

touch utlity (public domain version by myc01)

myc01's public domain touch utility is good, but I really hate the mandatory '--' switch, and not creating files (as a bug). So I hack it up and fixed these 2 issues.

Source+Binary: touch.7z

Friday, March 14, 2014


dwing's ujpg is good, but it is not open-sourced, and ujpg will strip out Adobe APP14 marker from JPEG YCCK image, which is vital to those files.
So I wrote my own, modified from my own jpginfo.

Download source+binary:

- print filename in error messages
- treat ncomp=3 without RGB compid as YCbCr
- add YCCK marker fixing switch "-y"

Thursday, March 13, 2014


When I tried to debug why mozjpeg jpegtran segfault with certain files, I have a look on libjpeg and nanojpeg source code, and write a JPEG information tool which returns image resolution, number of color components, color space, and file type.

Download source+binary:

- print filename in error messages
- treat ncomp=3 without RGB compid as YCbCr

Tuesday, March 11, 2014

vnc2flv-20100207 Win32 mingw-python-2.7 build

Compiled with Py2Exe/Python 2.7 MinGW build with a modified
Download: vnc2flv-20100207-win32-mgwpy27.7z

Tuesday, March 4, 2014

XNU kernel built-in ISO font

After reading Ka-Ping Yee ISO Latin-1 Font in linux kernel, I converted the font to BDF for use.

But instead of using the patch he provided, I did conversion in my usual way:
- Add stub in iso_font.c so it writes font data binary array to binary file when runs.
- Use my raw2bdf-c_flip.php php CLI script from font2bdf-tools to convert raw binary font to BDF (The font data stored in iso_font.c is in flipped form)
- ???
- profit!

Download: xnu_iso_font.7z

And there is other converted font in BDF or TrueType form in my Font Drop.

Thursday, February 13, 2014

WinTTX 2.4 (behdad forked)

Getting TTX 2.4 behdad-forked git rev snapshot compiled with Python 2.7.3(MinGW build) py2exe 0.6.9.
modified included.

[20140317]: update snapshot to git rev 11580c55bb - Add isUnicode() and isSymbol() to cmap subtables
- update snapshot to git rev 319643ade2 - Fix up regression in promoting lookups to extensions
- uncompressed pyd DLLs since they can't be loaded correctly when compressed, may just throws "Fatal Python error: PyThreadState_Get: no current thread" or simply cannot import modules
- update snapshot to git rev 5080331251
- UPX compressed libpython2.7.dll and all pyd DLLs except zlib.pyd (py2exe run.exe loader wants zlib.pyd in uncompressed form)
- added ttx.html converted from share/man/man1/ttx.1 with groff -mandoc -Thtml < ttx.1 > ttx.html