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:
-rwxrwxrwx@ 1 kev staff 67646 Nov 2 2017 DS.ico
-rwxrwxrwx@ 1 kev staff 29404 Nov 2 2017 paperlikepro_1.0.5_amd64.deb
-rwxrwxrwx@ 1 kev staff 180 Nov 2 2017 readme
DS.ico
is an icon file of the Dasung logo
readme
is a text file explaining how to install the driver on Ubuntu systems
paperlikepro_1.0.5_amd64.deb
is a Debian package archive containing the compiled driver and other data. The
deb
file can be extracted to the following contents:
paperlikepro_1.0.5_amd64.deb contents
-rw-r--r--@ 1 kev staff 279 Aug 4 2017 control.tar.gz
-rw-r--r--@ 1 kev staff 28932 Aug 4 2017 data.tar.xz
-rw-r--r--@ 1 kev staff 4 Aug 4 2017 debian-binary
debian-binary
is a text file that contains a version number$ cat debian-binary 2.0
control.tar.gz
is an archive that can be extracted usingtar
it expands to a text filecontrol
with 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
data.tar.xz
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.
PaperLikePro
and 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 PaperlikePro
and 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.