Post Reply 
How do you determine a 71B memory-mapped I/O device address?
03-31-2021, 07:35 AM (This post was last modified: 03-31-2021 09:23 AM by J-F Garnier.)
Post: #8
RE: How do you determine a 71B memory-mapped I/O device address?
Hi Mark,
(I'm curious of what you have in mind to ask such a question - I may have an idea :-)

The soft-configuration MMIO address allocation is similar to memories. The MMIO are configured starting at 20000 and a system buffer is created to hold the configuration addresses and the MMIO class as reported by the C=ID opcode.
Then, when an application (the HP-IL ROM for instance) wants to address a MMIO device it can manage, it scans the buffer to find a MMIO device of the corresponding class (HP-IL mailbox is device class 0).
See the FNDMBX (find mailbox) routine in the HP-IL ROM.

A list of the MMIO classes is defined here pages 7-8.
BTW, I don't know what was the memory controller device, I thought it could be the device used in the HHP and CMT memory modules, but never found any evidence for it.
So if you plan to create a soft-configured MMIO device, use a MMIO class different from 0 and 2, and get its assigned address from the configuration buffer by looking at your class id.

Or, if you want to keep it simple, use a hard address like the card reader does, You can use the range 2C1xx-2CFxx for instance. Don't use any address in 2Dxxx, 2Exxx, 2Fxxx.

J-F
Visit this user's website Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
RE: How do you determine a 71B memory-mapped I/O device address? - J-F Garnier - 03-31-2021 07:35 AM



User(s) browsing this thread: 1 Guest(s)