For those intrested in using their PX-712/716 drives under Linux and take advantage of the advanced check functions, here is the very first draft of the port of pxscan to Linux. Be aware this version is just a draft and has rough edges. The output is still text based, but I wrote little Python scripts to display the results in Gnuplot.
So maybe there were people who wanted to play with it during the week-end. For the moment, I have ported the PISum8/PIF checks and the TA check.
1) Download pxlinux-latest.tar.gz and decompress it somewhere.
You'll get three executable files (you need the c++ compiler and development libraries)
3) Commands: Note: you need to be ROOT to send commands to the drive. Use sudo or su. I have to play with the setuid in the code in the future. There is no harmful code in the different programs but be aware that using programs under root is bad.
./pisum8 /dev/dvd [interval]
[interval] is equivalent to the accuracy under windows. By default, it is 1 (takes 30min to scan a DVD), the higher it is, the faster it is, because it swaps the test every [interval] blocks.
For a graphical output, use ./pisum8 /dev/dvd [interval] > pisumfile to save the result in the file pisumfile. Then use the python script:
./plotpisum8.py [-l] pisumfile
and then you'll get a graphical output. The X axis represents the number of blocks.
Note you need Python and Gnuplot installed. Usually they are available in many distros or even installed by default.
./pif /dev/dvd [interval]
The same than pisum8.
For a graphical output, use ./pif /dev/dvd [interval] > piffile to save the result in the file piffile. Then use the python script:
and then you'll get a graphical output.
./ta /dev/dvd [layers]
[layers] is the number of layers, 1 by default. Use 2 if you have a DVD+R DL (this will be automatised in the future).
For a graphical output, use ./ta /dev/dvd [interval] > tafile to save the result in the file tafile. Then use the python script:
./plotta.py [-l] tafile
and then you'll get a graphical output in this order : inner, middle, outer. If there is no -l switch, pits are displayed. If there is the -l switch, the land are displayed.
Note that the file tafile contains an analysis of the shift (cat tafile).
Finally, these are some pictures:
Here we see PoweRec in action at 80% of the length. Note the Y scale is logarithmic, so few errors are made more visible.
No PIF higher than 2.
TA pits and lands
OK, now the TODO:
- solve the root problem
- automatic support for DL
- tests for CD
- a real GUI
- a clean code
- the other stuff (jitter/beta, gigarec, varirec, powerec,...)
Also, the legal prints: In accordance with Alexander Noe, the code is under GPL. For people who don't know what it means:
- you can run, analyse, modify, copy, redistribute and even sell the code freely (this is FREE software)
- but any change in the code source MUST be made available FOR FREE (actually the cost of the media) to anyone receiving the binaries, and any derivative work has to be GPL. You cannot put the code in any proprietary application, the whole application has to be GPL.
In other terms: you don't pay with money, but with sharing the modifications you would do to this code. Everybody wins in that deal.
The code will be deposited to Sourceforge, but I thought some of you would like to try it this week-end Note also that the hyperlinks there won't be available after I put the code in Sourceforge. But you will know