Freeware port analyzer

Is there a freeware windows port analyzer that basicaly just lets you "record" the data off the parallel or serial port? (even if it just dumps it to a file it would be ok but ofcourse I'd rather have more functionality)

Thanks, Jon

Reply to
Abstract Dissonance
Loading thread data ...

If you used bsd-unix you could get away with:

#include #include #include #include #include

int main(int ac, char *av[]) { int io_fd; char *io_devname="/dev/io";

if( (io_fd=open(io_devname,O_RDWR)) !=-1 ) { for(;;) { printf("0x%02X\\n", inb( 0x378+2 ) ); } } return 0; }

Reply to
pbdelete

On Tue, 21 Mar 2006 13:15:45 -0600 in sci.electronics.basics, "Abstract Dissonance" wrote,

There is no electronics question in your post! A better newsgroup would be: alt.comp.freeware

Reply to
David Harmon

um... and are you the sci.electronics.basic police?

Reply to
Abstract Dissonance

Well, unfortunate/fortunately I use windows ;/

Jon

Reply to
Abstract Dissonance

Google for portmon.zip, which is freeware.

Reply to
Si Ballenger

On Tue, 21 Mar 2006 17:58:47 -0600 in sci.electronics.basics, "Abstract Dissonance" wrote,

Only if you usually need the police to help you find your way around.

Reply to
David Harmon

I tried that but for some reason it didn't work ;/ I'm not sure if it works for raw bits or what?

Basically I am trying to dump a serial data line to the parallel port and read it almost like a logical analyzer. This way I can make sure some devices are working right and such... The only thing that seems to work is parmon but it doesn't log the data ;/

Jon

Reply to
Abstract Dissonance

formatting link
*-communication-problems+from-a-Windows-system+serial-or-parallel-ports+portmon+Windows-application+zzzz+5-serial-channels+ComLite32+Windoze-app

Reply to
JeffM

formatting link
*-communication-problems+from-a-Windows-system+serial-or-parallel-ports+portmon+Windows-application+zzzz+5-serial-channels+ComLite32+Windoze-app

I didn't see anything in there about the parallel port ;/ The main thing I need is a parallel port... Surely there is one out there that works with it... if not I guess I will have to move to it(but its much more work that for the parallel port since I have the cables setup for it)

Jon

Reply to
Abstract Dissonance

Someone points you to what they beleive is a better place to ask your question and you attack them? What a guy.

--
Service to my country? Been there, Done that, and I\'ve got my DD214 to
prove it.
Member of DAV #85.

Michael A. Terrell
Central Florida
Reply to
Michael A. Terrell

Below is the portmon output for a program called jbasic.exe with the Tx and Rx lines connected together on the com1 port. In this case the jbasic program sent "hello world" (displayed in hex) to com1 and then read the com1 input buffer picking up the "hello world". The lines are probably word wrapped. You may need to have a device connected to the parallel port for it to see the traffic there. To setup portmon you have to go to "computer" and select local, then go to "capture" and select the ports to monitor. Check the help file for other setup and logging options and such.

0 0.00009191 jbasic.exe IRP_MJ_CREATE Serial0 SUCCESS Options: Open 1 0.00002486 jbasic.exe IOCTL_SERIAL_SET_QUEUE_SIZE Serial0 SUCCESS InSize: 8192 OutSize: 8192 2 0.00000531 jbasic.exe IOCTL_SERIAL_GET_BAUD_RATE Serial0 SUCCESS 3 0.00000363 jbasic.exe IOCTL_SERIAL_GET_LINE_CONTROL Serial0 SUCCESS 4 0.00000307 jbasic.exe IOCTL_SERIAL_GET_CHARS Serial0 SUCCESS 5 0.00000279 jbasic.exe IOCTL_SERIAL_GET_HANDFLOW Serial0 SUCCESS 6 0.00001509 jbasic.exe IOCTL_SERIAL_SET_BAUD_RATE Serial0 SUCCESS Rate: 9600 7 0.00000950 jbasic.exe IOCTL_SERIAL_SET_RTS Serial0 SUCCESS 8 0.00000950 jbasic.exe IOCTL_SERIAL_CLR_DTR Serial0 SUCCESS 9 0.00000922 jbasic.exe IOCTL_SERIAL_SET_LINE_CONTROL Serial0 SUCCESS StopBits: 1 Parity: NONE WordLength: 8 10 0.00000698 jbasic.exe IOCTL_SERIAL_SET_CHAR Serial0 SUCCESS EOF:0 ERR:0 BRK:0 EVT:0 XON:0 XOFF:0 11 0.00000894 jbasic.exe IOCTL_SERIAL_SET_HANDFLOW Serial0 SUCCESS Shake:0 Replace:40 XonLimit:0 XoffLimit:0 12 0.00004945 jbasic.exe IRP_MJ_WRITE Serial0 SUCCESS Length 1: 68 13 0.00102639 jbasic.exe IRP_MJ_WRITE Serial0 SUCCESS Length 1: 65 14 0.00090682 jbasic.exe IRP_MJ_WRITE Serial0 SUCCESS Length 1: 6C 15 0.00098113 jbasic.exe IRP_MJ_WRITE Serial0 SUCCESS Length 1: 6C 16 0.00098309 jbasic.exe IRP_MJ_WRITE Serial0 SUCCESS Length 1: 6F 17 0.00098085 jbasic.exe IRP_MJ_WRITE Serial0 SUCCESS Length 1: 20 18 0.00098448 jbasic.exe IRP_MJ_WRITE Serial0 SUCCESS Length 1: 77 19 0.00099985 jbasic.exe IRP_MJ_WRITE Serial0 SUCCESS Length 1: 6F 20 0.00005950 jbasic.exe IRP_MJ_WRITE Serial0 SUCCESS Length 1: 72 21 0.00096884 jbasic.exe IRP_MJ_WRITE Serial0 SUCCESS Length 1: 6C 22 0.00092470 jbasic.exe IRP_MJ_WRITE Serial0 SUCCESS Length 1: 64 23 0.00002291 jbasic.exe IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS 24 0.00000950 jbasic.exe IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS 25 0.00000810 jbasic.exe IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS 26 0.00001648 jbasic.exe IRP_MJ_READ Serial0 SUCCESS Length 11: 68 65 6C 6C 6F 20 77 6F 72 6C 64 27 0.00000698 jbasic.exe IRP_MJ_CLEANUP Serial0 SUCCESS 28 0.01878982 jbasic.exe IRP_MJ_CLOSE Serial0 SUCCESS
Reply to
Si Ballenger

formatting link
*-communication-problems+from-a-Windows-system+serial-or-parallel-ports+portmon+Windows-application+zzzz+5-serial-channels+ComLite32+Windoze-app

If you are using Win9x you can probably cobble together some code to read the parallel port directly. WinXP, NT, and 2K don't allow user-mode access to ports, so you'd need a special ring 0 driver like GIVEIO or USERPORT.

Unlike serial ports, parallel ports are not clocked devices. So you will have to decide how often you want to look at the port. Note that timing is definitely not Windoze strong suit, so expect a fair amount of jitter and don't expect to get fine resolution (high sample rate).

The hilarious part of all this, is that the earliest 8088 PC running DOS was orders of magnitude better than the fastest Windows system for this kind of stuff.

Best regards,

Bob Masta dqatechATdaqartaDOTcom D A Q A R T A Data AcQuisition And Real-Time Analysis

formatting link
Home of DaqGen, the FREEWARE signal generator

Reply to
Bob Masta

hmm, wasn't his first post sorta an attack too?

"There is no electronics question in your post!"

This maybe or may not be true but surely the parallel port is used indirectly with electronics? I am asking this question simply because I want to use some electronic devices and monitor there digital outputs... so indirectly it has everythign to do with electronics... and surely many people here in "sci.electronics.xxx" has messed with the parallel port in some fashion or another and probably has had the need to monitor/log the port?

The fact is this is probably the best place to ask this question since it is directly used for an electronics application... I could be wrong but he obviously thought that my OP didn't belong in here and he had to point it out.

He could have said something like

"You might find better luck asing in blah.blah".

Cause basicaly he's implying that I'm asking something that is completely off base in this group, which I think it isn't.

And I seriously doubt I would get any answeres in alt.comp.freeware that I couldn't get googling.

Reply to
Abstract Dissonance

formatting link
*-communication-problems+from-a-Windows-system+serial-or-parallel-ports+portmon+Windows-application+zzzz+5-serial-channels+ComLite32+Windoze-app

I'm just doing this for the keyboard so I just need it to run from 10khz to

20khz. Its not clocked but if the application could use one port for the clock to sample another port then it should work? Or even just set the speed at which to sample?

Basicaly what I want to do is hook the keyboard up to the parallel port and then hit keys and read the data being sent. I have the parallel port all setup to do this easy but it looks like I'm going to have to do it with a serial port since that seems to be the only one with the extensive applications.

Thanks, Jon

Reply to
Abstract Dissonance

If you have a win95/98 machine, you might check the software at the below site. It is for recording IR signals from remote controls for replay using the parallel port. It won't work well with win NT/2K/XP. You might be able to use a similar setup to record the output from the keyboard. You probably could make a similar recording setup using qbasic, but actual timing measurement would be dependent on the speed of the computer.

formatting link

Reply to
Si Ballenger

It looks like a simple statement that you don't seem to agree with.

If the port is defective, or you are designing the port, it is electronics. The rest is software related.

You seem to have a chip on your shoulder, and a bad attitude will get you very little help. Its your choice.

Then why are you here instead of "Googling"?

--
Service to my country? Been there, Done that, and I\'ve got my DD214 to
prove it.
Member of DAV #85.

Michael A. Terrell
Central Florida
Reply to
Michael A. Terrell

Yeah, the parallel port would be a bad idea for this anyway, since you would have to poll it at a high rate to be sure of not missing key scan codes. Note that the scan codes are not just a single byte per key press... there can be a whole stream of bytes from hitting a single key. If you want to have a look at what is going on, I have a little free utility you can download from

formatting link
called KEYCODE.EXE. (It's down near the bottom of the page under "Utilities".) HOWEVER, this is only for use under real-mode DOS, which you can't get under WinXP, 2k, or NT. From Win9x you have to use Start- Shutdown - Restart in MS-DOS Mode. This will write all the scan codes to the screen as they happen, which can be rather eye-opening.

There might be a way to use the parallel port under DOS if you can rig up the keyboard to generate an interrupt. The port does support interrupts, and that would save you having to poll for bytes.

Best regards,

Bob Masta dqatechATdaqartaDOTcom D A Q A R T A Data AcQuisition And Real-Time Analysis

formatting link
Home of DaqGen, the FREEWARE signal generator

Reply to
Bob Masta

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.