qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* Using parallel port on the Pegasos 2
@ 2024-07-28 14:59 quan
  2024-07-28 19:17 ` BALATON Zoltan
  0 siblings, 1 reply; 8+ messages in thread
From: quan @ 2024-07-28 14:59 UTC (permalink / raw)
  To: qemu-devel; +Cc: BALATON Zoltan, philmd

[-- Attachment #1: Type: text/plain, Size: 1095 bytes --]

I am playing around with the parallel port on the pegasos 2 and I noticed
the following issue:
The parallel port on startup is set to iobase 0x378, then later it gets
remapped to iobase 0x3bc.
When I tried writing to the 0x3bc location with
trace:memory_region_ops_write on, I get logs about writing to the location
'parallel', so far so good, but the writes don't make it through (it never
calls parallel_ioport_write* functions)

I traced it through where it calls portio_write, and inside the
portio_write code:
This line always fails for me:
 const MemoryRegionPortio *mrp = find_portio(mrpio, addr, size, true);
This is due to the mrpio has the offset of 0x44 (0x3bc-0x378) in the list,
and the 'addr' in the code ranges from (0-15) (address relative to 0x3bc),
so it can never match the parallel io function to execute.

This seems like a bug to me. I think there is some issue where the
portio_list is not getting updated properly after the remapping to 0x3bc.

The other devices (Serial, RTC, PM, VGA) responds properly for me, so it is
only the parallel port that has this issue.

Quan

[-- Attachment #2: Type: text/html, Size: 1270 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2025-05-26 11:48 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-28 14:59 Using parallel port on the Pegasos 2 quan
2024-07-28 19:17 ` BALATON Zoltan
2024-07-28 20:59   ` quan
2024-07-28 22:33     ` BALATON Zoltan
2024-07-28 22:43       ` quan
2025-05-25  0:03   ` BALATON Zoltan
2025-05-26  9:59     ` Bernhard Beschow
2025-05-26 11:47       ` BALATON Zoltan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).