
- Hardware
- A Linux based router/NAS/Plug Computer/PC with USB ports (e.g. Asus WL-500g Premium)
- USB keyboard (e.g. Keysonic ACK-3400 U)
- DisplayLink device (e.g. Samsung U70)
- Software
- Binaries (extract to /)
- Building for OpenWRT
- gcc 4.1.2 as 8.09 compiler (with libboost, gcc 3.4.6 and 7.09 I got defined in discarded section while linking, with gcc 4.2.4 and trunk can't resolve symbol '_Unwind_GetIPInfo' at runtime if an exception happens; the SVN trunk package gave some compile error, too.)
- packages: libstdcpp_4.1.2 (brcm*), libusb, libfreetype
- modules: 2.4: input.o, evdev.o, hid.o; 2.6: input-core.ko, evdev.ko, usbhid.ko (for brcm-2.4 a patch is necessary, but even then hid.o doesn't get built for me.)
- libboost_program_options-gcc41-mt-1_34_1.so.1.34.1, libboost_thread-gcc41-mt-1_34_1.so.1.34.1 from the Boost C++ library package from BTG
- ROTE-256
- SlugTerm and my modifications (based on tubecable; 26C3: Reverse-Engineering DisplayLink devices)
- font: I recommend FNTs (FON2FNT). BDFs. PCFs don't have line drawing characters and are slow; no cache yet. Scalable fonts are not layed out correctly yet.
Command line switch help
root@OpenWrt:~# slugterm --help Options: --help show help message -k [ --keyboard ] arg keyboard event source -p [ --pid ] arg USB product ID [4] -i [ --init ] arg initialization sequence [58] -f [ --fpath ] arg font -w [ --fwidth ] arg font width for scalable fonts -h [ --fheight ] arg font height for scalable fonts -c [ --commands ] arg command(s) to run in terminal You can grab the initialization sequence for yourself from the Windows driver with an USB sniffer and dldecrypt.c or use one of the dl_register_init_* in dldemo.c. Some modes I captured:| Samsung U70 | 800×480 | 00203c7ac9f26c48f97053ffff2127032091f3fffffff901e00102c819 |
| Samsung 244T @ Lenovo 45K5296 (DL-195) | 1920×1200 | 00ca2115426c15f466c536ffff6c150780a335ffffffca04b004025078 |
Example
root@OpenWrt:~# slugterm -k /dev/input/event0 -p 0103 -i 00203c7ac9f26c48f97053ffff2127032091f3fffffff901e00102c819 -f /usr/local/share/fonts/FON2FNT/dosapp_18.FNT -c "/bin/ash --login"4D Systems OLED version4-x64.








