As you are describing it, the program can run in "Windows 2000" and the access should work in the "Windows ME" way. I already has wrote that ViRuSTriNiTy has written a small test program with parport access. http://lcdhype.condense.de/index.php?act=Attach&type=post&id=25750&index=0 Here the shell output in "Windows ME" emulation: > > > wine ParPortTest.exe read 888 > Data read from parallel port is 255 > > > > > wine ParPortTest.exe write 888 255 > Data written to parallel port is 255 > And here the shell output in "Windows 2000" emulation: > > wine ParPortTest.exe read 888 > wine: Unhandled privileged instruction at address 0x401074 (thread 0025), starting debugger... > Unhandled exception: privileged instruction in 32-bit code (0x00401074). > Register dump: > CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b > EIP:00401074 ESP:0032fe90 EBP:0032fee8 EFLAGS:00010202( - 00 - -RI1) > EAX:00000378 EBX:7eddc156 ECX:00000000 EDX:00000378 > ESI:00000002 EDI:00521da0 > Stack dump: > 0x0032fe90: 00521dda 00000002 00000893 004013b4 > 0x0032fea0: 00000003 00521da0 00521df0 704467d0 > 0x0032feb0: 7bf012e0 001104d0 7ee4c7dc c0000096 > 0x0032fec0: 00000000 00000005 00000000 7bf012e0 > 0x0032fed0: 0032feac 0032f968 0032ff14 00402420 > 0x0032fee0: 70362dc8 00000000 0032ffe8 7ee07a5d > Backtrace: > =>0 0x00401074 in parporttest (+0x1074) (0x0032fee8) > 1 0x7ee07a5d start_process+0x158(arg=(nil)) [/mnt/ramdisk/wine-1.1.17~winehq1/dlls/kernel32/process.c:914] in kernel32 (0x0032ffe8) > 2 0xf7e5ad3f wine_switch_to_stack+0x17() in libwine.so.1 (0x00000000) > 0x00401074: inb %dx,%al > Modules: > Module Address Debug info Name (17 modules) > PE 400000- 410000 Export parporttest > ELF 7bf00000-7bf03000 Deferred <wine-loader> > ELF 7ed88000-7eed3000 Dwarf kernel32<elf> > \-PE 7eda0000-7eed3000 \ kernel32 > ELF 7eed3000-7eede000 Deferred libnss_files.so.2 > ELF 7eede000-7eee8000 Deferred libnss_nis.so.2 > ELF 7eee8000-7ef00000 Deferred libnsl.so.1 > ELF 7ef00000-7ef24000 Deferred libm.so.6 > ELF 7ef44000-7f000000 Deferred ntdll<elf> > \-PE 7ef60000-7f000000 \ ntdll > ELF f7cc5000-f7cc9000 Deferred libdl.so.2 > ELF f7cc9000-f7e1b000 Deferred libc.so.6 > ELF f7e1b000-f7e32000 Deferred libpthread.so.0 > ELF f7e34000-f7e37000 Deferred iso8859-1.so > ELF f7e37000-f7e40000 Deferred libnss_compat.so.2 > ELF f7e52000-f7f8f000 Dwarf libwine.so.1 > ELF f7f92000-f7fb1000 Deferred ld-linux.so.2 > Threads: > process tid prio (all id:s are in hex) > 00000008 > 00000009 0 > 0000000c > 00000019 0 > 0000000e 0 > 0000000d 0 > 00000016 > 0000001b 0 > 0000001a 0 > 00000018 0 > 00000017 0 > 0000001c > 0000001d 0 > 00000024 (D) E:\DL\ParPortTest.exe > 00000025 0 <== > Backtrace: > =>0 0x00401074 in parporttest (+0x1074) (0x0032fee8) > 1 0x7ee07a5d start_process+0x158(arg=(nil)) [/mnt/ramdisk/wine-1.1.17~winehq1/dlls/kernel32/process.c:914] in kernel32 (0x0032ffe8) > 2 0xf7e5ad3f wine_switch_to_stack+0x17() in libwine.so.1 (0x00000000) > > > wine ParPortTest.exe write 888 255 > wine: Unhandled privileged instruction at address 0x4010ee (thread 0029), starting debugger... > Unhandled exception: privileged instruction in 32-bit code (0x004010ee). > Register dump: > CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b > EIP:004010ee ESP:0032fe88 EBP:0032fee8 EFLAGS:00010216( - 00 -RIAP1) > EAX:000003ff EBX:000000ff ECX:00000000 EDX:00000378 > ESI:00000002 EDI:00521da0 > Stack dump: > 0x0032fe88: 0040b3d8 00521de0 00521de8 7eddc156 > 0x0032fe98: 00000893 004013b4 00000004 00521da0 > 0x0032fea8: 00521df8 7d71f02f 7bf012e0 001104e8 > 0x0032feb8: 7ee4c7dc c0000096 00000000 00000005 > 0x0032fec8: 00000000 7bf012e0 0032feac 0032f960 > 0x0032fed8: 0032ff14 00402420 7d03ba37 00000000 > Backtrace: > =>0 0x004010ee in parporttest (+0x10ee) (0x0032fee8) > 1 0x7ee07a5d start_process+0x158(arg=(nil)) [/mnt/ramdisk/wine-1.1.17~winehq1/dlls/kernel32/process.c:914] in kernel32 (0x0032ffe8) > 2 0xf7e0ad3f wine_switch_to_stack+0x17() in libwine.so.1 (0x00000000) > 0x004010ee: outb %al,%dx > Modules: > Module Address Debug info Name (17 modules) > PE 400000- 410000 Export parporttest > ELF 7bf00000-7bf03000 Deferred <wine-loader> > ELF 7ed88000-7eed3000 Dwarf kernel32<elf> > \-PE 7eda0000-7eed3000 \ kernel32 > ELF 7eed3000-7eede000 Deferred libnss_files.so.2 > ELF 7eede000-7eee8000 Deferred libnss_nis.so.2 > ELF 7eee8000-7ef00000 Deferred libnsl.so.1 > ELF 7ef00000-7ef24000 Deferred libm.so.6 > ELF 7ef44000-7f000000 Deferred ntdll<elf> > \-PE 7ef60000-7f000000 \ ntdll > ELF f7c75000-f7c79000 Deferred libdl.so.2 > ELF f7c79000-f7dcb000 Deferred libc.so.6 > ELF f7dcb000-f7de2000 Deferred libpthread.so.0 > ELF f7de4000-f7de7000 Deferred iso8859-1.so > ELF f7de7000-f7df0000 Deferred libnss_compat.so.2 > ELF f7e02000-f7f3f000 Dwarf libwine.so.1 > ELF f7f42000-f7f61000 Deferred ld-linux.so.2 > Threads: > process tid prio (all id:s are in hex) > 00000008 > 00000009 0 > 0000000c > 00000019 0 > 0000000e 0 > 0000000d 0 > 00000016 > 0000001b 0 > 0000001a 0 > 00000018 0 > 00000017 0 > 0000001c > 0000001d 0 > 00000028 (D) E:\DL\ParPortTest.exe > 00000029 0 <== > Backtrace: > =>0 0x004010ee in parporttest (+0x10ee) (0x0032fee8) > 1 0x7ee07a5d start_process+0x158(arg=(nil)) [/mnt/ramdisk/wine-1.1.17~winehq1/dlls/kernel32/process.c:914] in kernel32 (0x0032ffe8) > 2 0xf7e0ad3f wine_switch_to_stack+0x17() in libwine.so.1 (0x00000000) > Here it will not work. But my hope was to use "Windows 2000" emulation because LCDHype runs better there.