Question about WINE and adding the "low-level" CD access APIs...
jonwil at tpgi.com.au
Mon Jul 14 07:24:31 CDT 2003
Many copy protections use special tricks on the CDs (I dont know the
details). Presumably these protections use some kind of lower-level API to
access the data on the CD directly (instead of going through the file I/O
calls). Currently TransGaming does something specific for each kind of copy
protection to make it work. Would it be possible to implement these APIs in
WINE and have them redirect to whatever low level APIs are provided by
linux/x/whatever? That way (assuming the implementation was complete), any
copy protection would work (i.e. when the protection says "give me this bit
of data from the CD in this form", WINE hooks that, gets the relavent data
and returns it to the application. Same could be said for protections that
use the "boot blocks" to store licence data (such as CDilla Licence
Manager), for those you could hook the "read from boot block" and "write to
boot block" calls and store the data somewhere (preferably not the real
boot block :)
If someone can tell me what the low-level access that these protections use
is actually called (i.e. what search term to use in MSDN to look for
documentation etc) as well as info on whatever the relavent linux low-level
access stuff would be, I can look at drawing up some kind of "here is how
this could be done" document.
Similar low-level hooks could be used to allow things like AudioCatalyst
(program that converts audio-cd tracks to MP3 files) and anything else that
does lower level access to CDs/DVDs than the high-level file I/O APIs and
etc. (the day its possible to run Nero Burning Rom in WINE with no problems
will be a great day indeed for the project :)
If this isnt fesable for copy protection and so on, please explain why (I
know nothing about copy protection or how to program the CD-ROM in win32)
Basicly, I dont understand why there is a need for "protection-specific"
code in WineX when you could emulate whatever the protection uses and
appear just like real windows to the game...
More information about the wine-devel