This is a follow up to the Dasung teardown post in which I decompile the software drivers. Dasung ships their monitors with a Linux driver that is sadly limited to the Ubuntu amd64 architecture. The driver can be downloaded from: Dasung driver download page
I have decompiled the drivers and uploaded them to github at: Dasung linux drivers source code decompiled
I was naively hoping I could hack this to be ARM compatible so I could use the Dasung with a Raspberry PI. I have been told that is not feasible due to architecture differences and OS API compatibility concerns. However these Drivers can potentially be used to make mods for other AMD64 systems.
When looking at the ‘drivers’ provided by Dasung the contents of the Ubuntu folder are as follows:
[email protected] 1 kev staff 67646 Nov 2 2017 DS.ico [email protected] 1 kev staff 29404 Nov 2 2017 paperlikepro_1.0.5_amd64.deb [email protected] 1 kev staff 180 Nov 2 2017 readme
is an icon file of the Dasung logo
is a text file explaining how to install the driver on Ubuntu systems
is a Debian package archive containing the compiled driver and other data. The
debfile can be extracted to the following contents:
[email protected] 1 kev staff 279 Aug 4 2017 control.tar.gz [email protected] 1 kev staff 28932 Aug 4 2017 data.tar.xz [email protected] 1 kev staff 4 Aug 4 2017 debian-binary
debian-binaryis a text file that contains a version number
$ cat debian-binary 2.0
control.tar.gzis an archive that can be extracted using
tarit expands to a text file
controlwith the following content:
$ cat control Package: PaperlikePro Version: 1.0.5 Section: x11 Priority: standard Architecture: amd64 Depends: Installed-Size: 200 Maintainer: [email protected] Description: Paperlike Pro Software
This is where things get interesting. It is another tar archive which contains the executables of the driver. When extracted it produces the following:
$ tar -xzvf data.tar.xz x ./ x ./usr/ x ./usr/local/ x ./usr/local/sbin/ x ./usr/local/sbin/PaperlikePro x ./usr/local/sbin/DS.ico x ./usr/local/sbin/ResChange
This is meant to be installed at
/usr/local/sbin on Ubuntu. We have already seen
DS.ico and know it is the Dasung logo.
ResChange are both executables. I am assuming that
PaperlikePro is the UI management tool found on other platforms and that
ResChange is a resolution driving tool.
Converting amd64 binaries to other format
Using the Snowman decompiler tool against
ResChange binaries I was able to produce some C++ decompiled source code. I have not attempted to re compile them and see if they work as expected. I have uploaded the decompiled code to github at https://github.com/kevzettler/decompiled_dasung_drivers.