Question about WINE and adding the "low-level" CD access APIs...

Jonathan Wilson 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 mailing list