VOGONS

Common searches


First post, by mirekluza

User metadata
Rank DOSBox Moderator
Rank
DOSBox Moderator

This is not exactly a patch, I think that h-a-l-9000 has only patched binary on his web (hopefully sources will be added later).
However since it is a feature often asked for by DOSBOX users, I think it deservers its own thread here, so that it can be found without extensive search.
If h-a-l-9000 or any other developer/moderator disagrees then feel free to close/delete this thread. Also if the web traffic on hal's site should be a problem, maybe the binary can be uploaded directly here...

The windows binary containg the paralel passthrough is on:
http://home.arcor.de/h-a-l-9000/, below are some details of what it can do:

Parallel Port Passthrough Parallel port access through Dosbox. Emulates I/O-Access, BIOS access, DOS API access, DOS file (lpt […]
Show full quote

Parallel Port Passthrough
Parallel port access through Dosbox. Emulates I/O-Access, BIOS access, DOS API access, DOS file (lptx) access.
First you need to install the PortTalk driver from http://www.beyondlogic.org/porttalk/porttalk.htm, then set parallel1=reallpt like in the example dosbox.conf.
Although this ran fine on my system, using the I/O-Access driver could theoretically mess up your system, so use at your own risk.
Tested with Win3.11 (I/O Access), Simcity (BIOS access), Checkit(DOS file access), command line redirection, HP Laserjet 3p and 4, IBM Proprinter, Epson SQ 870.
Contains parts of Fizzban's printer patch.

I have just made this thread, otherwise I have nothing to do with this feature, all credits belong to h-a-l-9000.

Mirek

Reply 1 of 44, by eL_PuSHeR

User metadata
Rank l33t++
Rank
l33t++

A neat idea. Now some real life examples would come in handy. Provided instructions are somewhat vague.

PS - Woohoo! Tested and worked sending a PCL file directly to my Laserjet printer. Good Work HAL9000 and others.

I will make a brief example of the installation procedure:

- Download DOSBox with LPT passthrough from the link in the first post (HAL9000 webpage).

- Download the DLL package if needed (from same site).
- Download the Porttalk driver. (Link in the quote from first post)
- Unpack the Porttalk driver ZIP package to any folder you like and execute ALLOWIO.EXE
- Configure LPT port (only needed if different than default LPT1=378h) by editting dosbox.conf using notepad (look at the paralllel section)
- Run DOSBox.

Last edited by eL_PuSHeR on 2006-04-29, 14:53. Edited 3 times in total.

Intel i7 5960X
Gigabye GA-X99-Gaming 5
8 GB DDR4 (2100)
8 GB GeForce GTX 1070 G1 Gaming (Gigabyte)

Reply 3 of 44, by eL_PuSHeR

User metadata
Rank l33t++
Rank
l33t++

Hey, Mirek!

I editted your post because the Porttalk address link wasn't working because of a comma. I hope you don't mind. 😎

Intel i7 5960X
Gigabye GA-X99-Gaming 5
8 GB DDR4 (2100)
8 GB GeForce GTX 1070 G1 Gaming (Gigabyte)

Reply 5 of 44, by h-a-l-9000

User metadata
Rank DOSBox Author
Rank
DOSBox Author

Could somebody please test if it compiles with MinGW?

Attachments

  • Filename
    directlpt3.diff
    File size
    44.4 KiB
    Downloads
    119 downloads
    File license
    Fair use/fair dealing exception

Reply 6 of 44, by Dominus

User metadata
Rank DOSBox Moderator
Rank
DOSBox Moderator

Well, I could have reported about half an hour earlier if I weren't too stupid to use patch.exe correctly 🙁

if g++ -DHAVE_CONFIG_H -I. -I. -I../../..  -I../../../include -I/usr/local/include/SDL -D_GNU_SOURCE=1 -Dmain=SDL_main  -g -O2 -MT porttalk.o -MD -MP -MF ".deps/porttalk.Tpo" -c -o porttalk.o porttalk.cpp; \
then mv -f ".deps/porttalk.Tpo" ".deps/porttalk.Po"; else rm -f ".deps/porttalk.Tpo"; exit 1; fi
porttalk.cpp:13:20: ioctrl.h: No such file or directory
porttalk.cpp: In function `bool initPorttalk()':
porttalk.cpp:90: error: `METHOD_BUFFERED' was not declared in this scope
porttalk.cpp:90: error: `FILE_ANY_ACCESS' was not declared in this scope
porttalk.cpp:90: error: `CTL_CODE' was not declared in this scope
porttalk.cpp: In function `bool setPermissionList()':
porttalk.cpp:118: error: `METHOD_BUFFERED' was not declared in this scope
porttalk.cpp:118: error: `FILE_ANY_ACCESS' was not declared in this scope
porttalk.cpp:118: error: `CTL_CODE' was not declared in this scope
porttalk.cpp:128: error: `METHOD_BUFFERED' was not declared in this scope
porttalk.cpp:128: error: `FILE_ANY_ACCESS' was not declared in this scope
porttalk.cpp:128: error: `CTL_CODE' was not declared in this scope
make[4]: *** [porttalk.o] Error 1
make[4]: Leaving directory `/d/cvs/dosboxp/src/hardware/serialport'

Seems to miss the file "ioctrl.h" included in porttalk.cpp

Edit: should that be "winioctl.h"? (with that it compiles fine and runs, though I haven't tested if the passthrough works)

Reply 7 of 44, by h-a-l-9000

User metadata
Rank DOSBox Author
Rank
DOSBox Author

Thanks for testing. I must have misunderstood something with the ioctrl.h there... so <winioctl.h> is probably right.

If you type parallel1 reallpt it should say it can't find porttalk in the status window. Then it actually got compiled in.

1+1=10

Reply 8 of 44, by Dominus

User metadata
Rank DOSBox Moderator
Rank
DOSBox Moderator

hmm, it doesn't say that but that you notice it working and then you get the prompt again.
The console says (after executing the command) "Parallel Port: Assuming ECP port."

Windows 3.1x guide for DOSBox
60 seconds guide to DOSBox
DOSBox SVN snapshot for macOS (10.4-11.x ppc/intel 32/64bit) notarized for gatekeeper

Reply 10 of 44, by Dominus

User metadata
Rank DOSBox Moderator
Rank
DOSBox Moderator

well,that's the strange thing you actually assumed right. There is no porttalk on my windows (at least afaik). Something else must be working like that on my pc...

Windows 3.1x guide for DOSBox
60 seconds guide to DOSBox
DOSBox SVN snapshot for macOS (10.4-11.x ppc/intel 32/64bit) notarized for gatekeeper

Reply 11 of 44, by mf2hd

User metadata
Rank Newbie
Rank
Newbie

Could somebody please test if it compiles with MinGW?

Hi h-a-l,
I've tried your direct_lpt2.diff (is it a new one?) downloaded from your website with two new cvs downloaded from:
http://pcnwstage.phys.rug.nl/dosboxcvs.tgz
http://www.aep-emu.de/cvscompile/dosbox.htm

there are a lot of "Hunk FAILED" (see attachment).

The same diff but with an old cvs was compiled fine after added the missed things and the asm as we saw in other thread (stack segment).
I have tried with winioctl.h in place of ioctrl.h and mingw shows many errors like these ones:

include/winioctl.h:116: error: `WORD' does not name a type
include/winioctl.h:119: error: `LARGE_INTEGER' does not name a type
...

maybe the my winioctl.h is wrong...

_mf2hd_

Attachments

  • Filename
    err_patch_lpt_diff.rar
    File size
    761 Bytes
    Downloads
    104 downloads
    File license
    Fair use/fair dealing exception

Reply 12 of 44, by h-a-l-9000

User metadata
Rank DOSBox Author
Rank
DOSBox Author

I attached a directlpt3.diff here to be tested (you can only see it if logged in in the forum, see the can/cannot in the bottom right box). It is intended for latest CVS.

1+1=10

Reply 13 of 44, by mf2hd

User metadata
Rank Newbie
Rank
Newbie

you can only see it if logged in in the forum,

I'm sorry ,not refreshed the page after login...🙄

Test the new diff with cvs source from aep-emu.de :patch+compiled without problems (don't forget to copy "ioctrl.h" into ...\include dir).
I've tried it with "winioctl.h" and it seem compiled without error (but not tested if the passthrough works).

Great!

Reply 14 of 44, by h-a-l-9000

User metadata
Rank DOSBox Author
Rank
DOSBox Author

Ok thanks, this can be considered as "release" then I guess.

Attachments

  • Filename
    directlpt4.diff
    File size
    44.4 KiB
    Downloads
    144 downloads
    File license
    Fair use/fair dealing exception

Reply 15 of 44, by Dominus

User metadata
Rank DOSBox Moderator
Rank
DOSBox Moderator

I found out now that the software PTBSync installed porttalk on my system 😀
Interesting...

Windows 3.1x guide for DOSBox
60 seconds guide to DOSBox
DOSBox SVN snapshot for macOS (10.4-11.x ppc/intel 32/64bit) notarized for gatekeeper

Reply 16 of 44, by h-a-l-9000

User metadata
Rank DOSBox Author
Rank
DOSBox Author

This one?

Atomic Clock Synchronization
-- Adjusts the PC clock with an accuracy of 1/50 second!
-- Fetching date and time from Atomic clock via internet.
-- Runs as service unter Win NT / 2000 / XP.
-- Drift compensation of Windows clock.

Looks like they go for the clock hardware directly. At least they don't use the most primitive form of the hack (giveio.sys, ...).

1+1=10

Reply 17 of 44, by Dominus

User metadata
Rank DOSBox Moderator
Rank
DOSBox Moderator

yes, that one, I *used* to use that as a desktop calendar. Nowadays I don't use it anymore but have it still installed 😀

Windows 3.1x guide for DOSBox
60 seconds guide to DOSBox
DOSBox SVN snapshot for macOS (10.4-11.x ppc/intel 32/64bit) notarized for gatekeeper